Skip to content

Commit cdea666

Browse files
authored
Merge pull request #7811 from tautschnig/bugfixes/big-endian
Fix big endian compatibility
2 parents b2900b9 + bdd42d3 commit cdea666

File tree

28 files changed

+213
-79
lines changed

28 files changed

+213
-79
lines changed

regression/cbmc-incr-smt2/bitvector-bitwise-operators/array-misalign-between.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ int main()
99
x[2] = 0;
1010
uint8_t *c = x;
1111
c[1] = 1;
12-
assert(x[0] == 256);
12+
assert(x[0] == 256 || x[0] == 1);
1313
assert(x[0] == 0);
1414
assert(x[1] == 0);
1515
assert(x[2] == 0);

regression/cbmc-incr-smt2/bitvector-bitwise-operators/array-misalign-between.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
CORE
22
array-misalign-between.c
33

4-
\[main\.assertion\.1\] line \d+ assertion x\[0\] == 256: SUCCESS
4+
\[main\.assertion\.1\] line \d+ assertion x\[0\] == 256 \|\| x\[0\] == 1: SUCCESS
55
\[main\.assertion\.2\] line \d+ assertion x\[0\] == 0: FAILURE
66
\[main\.assertion\.3\] line \d+ assertion x\[1\] == 0: SUCCESS
77
\[main\.assertion\.4\] line \d+ assertion x\[2\] == 0: SUCCESS

regression/cbmc-incr-smt2/bitvector-bitwise-operators/array-misalign.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ int main()
99
x[2] = 0;
1010
uint8_t *c = x;
1111
c[1] = 1;
12-
assert(x[0] == 256ul);
12+
assert(x[0] == 256ul || x[0] == 1ul);
1313
assert(x[0] == 0ul);
1414
assert(x[1] == 0ul);
1515
assert(x[2] == 0ul);

regression/cbmc-incr-smt2/bitvector-bitwise-operators/array-misalign.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
CORE
22
array-misalign.c
33

4-
\[main.assertion\.1\] line \d+ assertion x\[0\] == 256ul: SUCCESS
4+
\[main.assertion\.1\] line \d+ assertion x\[0\] == 256ul \|\| x\[0\] == 1ul: SUCCESS
55
\[main.assertion\.2\] line \d+ assertion x\[0\] == 0ul: FAILURE
66
\[main.assertion\.3\] line \d+ assertion x\[1\] == 0ul: SUCCESS
77
\[main.assertion\.4\] line \d+ assertion x\[2\] == 0ul: SUCCESS

regression/cbmc-incr-smt2/bitvector-bitwise-operators/byte-update-small.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ int main()
88
x[1] = 0;
99
uint16_t *y = x;
1010
*y = 258;
11-
assert(x[0] == 2);
12-
assert(x[1] == 1);
11+
assert(x[0] == 2 || x[1] == 2);
12+
assert(x[1] == 1 || x[0] == 1);
1313
}

regression/cbmc-incr-smt2/bitvector-bitwise-operators/byte-update-small.desc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
CORE
22
byte-update-small.c
33

4-
\[main\.assertion\.1\] line \d+ assertion x\[0\] == 2: SUCCESS
5-
\[main\.assertion\.2\] line \d+ assertion x\[1\] == 1: SUCCESS
4+
\[main\.assertion\.1\] line \d+ assertion x\[0\] == 2 \|\| x\[1\] == 2: SUCCESS
5+
\[main\.assertion\.2\] line \d+ assertion x\[1\] == 1 \|\| x\[0\] == 1: SUCCESS
66
^EXIT=0$
77
^SIGNAL=0$
88
--

regression/cbmc-incr-smt2/bitvector-bitwise-operators/byte-update.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ int main()
66
uint16_t x = 0;
77
uint8_t *y = &x;
88
y[1] = 1;
9-
assert(x == 256);
9+
assert(x == 256 || x == 1);
1010
}

regression/cbmc-incr-smt2/bitvector-bitwise-operators/byte-update.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
CORE
22
byte-update.c
33

4-
\[main\.assertion\.1\] line \d+ assertion x == 256: SUCCESS
4+
\[main\.assertion\.1\] line \d+ assertion x == 256 \|\| x == 1: SUCCESS
55
^EXIT=0$
66
^SIGNAL=0$
77
--

regression/cbmc-incr-smt2/pointers-conversions/byte_extract.desc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ Running incremental SMT2 solving via
55
Building error trace
66
\[main\.assertion\.\d+\] line \d+ assertion \*ptr != 42: FAILURE
77
\[main\.assertion\.\d+\] line \d+ assertion input != original: SUCCESS
8-
input=42ul? \(00000000 00000000 00000000 00101010\)
9-
original=42ul? \(00000000 00000000 00000000 00101010\)
8+
input=(42|704643072)ul? \((00000000|00101010) 00000000 00000000 (00101010|00000000)\)
9+
original=(42|704643072)ul? \((00000000|00101010) 00000000 00000000 (00101010|00000000)\)
1010
Violated property:
1111
file byte_extract.c function main line \d+ thread \d+
1212
assertion \*ptr != 42

regression/cbmc-incr-smt2/pointers-conversions/byte_update.desc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ Running incremental SMT2 solving via
55
Building error trace
66
\[main\.assertion\.\d+\] line \d+ assertion x != 256u: FAILURE
77
State \d+ file byte_update\.c function main line \d+ thread \d
8-
offset=1ul? \(00000000 00000000 00000000 00000001\)
8+
offset=(1|2)ul? \(00000000 00000000 00000000 000000(01|10)\)
99
Assumption:
1010
file byte_update\.c line \d+ function main
1111
offset >= 0u && offset < 4u
1212
State \d+ file byte_update\.c function main line \d+ thread \d+
13-
byte_extract_little_endian\(x, \(.*\)offset, uint8_t\)=1 \(00000001\)
13+
byte_extract_(little|big)_endian\(x, \(.*\)offset, uint8_t\)=1 \(00000001\)
1414
Violated property:
1515
file byte_update.c function main line \d+ thread \d+
1616
assertion x != 256u

0 commit comments

Comments
 (0)