Commit Graph

18266 Commits

Author SHA1 Message Date
Martin Blicha
c1a57ffbfe [SMTChecker] More precise creation of verification targets. 2020-10-30 19:11:28 +01:00
chriseth
be02db4950
Merge pull request #10083 from ethereum/copyByteArray
Copy byte array
2020-10-29 19:14:55 +01:00
chriseth
ef503f180c New test. 2020-10-29 18:53:15 +01:00
chriseth
6ec5612f35 Enable more tests. 2020-10-29 18:53:15 +01:00
chriseth
1066af3b98 Copy byte array to storage. 2020-10-29 18:53:15 +01:00
chriseth
14d7ca49c0 Rename function. 2020-10-29 18:53:15 +01:00
chriseth
b6f7640801
Merge pull request #10146 from ethereum/stop-after-parsing-script
Fix test/stopAfterParseTests.sh for macos.
2020-10-29 18:15:22 +01:00
chriseth
ace810b078
Merge pull request #10137 from ethereum/fixedBytesOps
[Sol->Yul] Bit operations for fixed bytes types.
2020-10-29 18:04:07 +01:00
chriseth
f215042cf6 Fix style. 2020-10-29 17:35:55 +01:00
chriseth
26e3954d5c
Merge pull request #10153 from ethereum/yul-move-astimport
Move AsmJsonImporter from libsolidity to libyul
2020-10-29 16:42:27 +01:00
Alex Beregszaszi
1e7dcb0bbf Use yulAssert instead of astAssert 2020-10-29 14:21:12 +00:00
Alex Beregszaszi
e4133815e9 Remove explicit yul:: namespacing in AsmJsonImporter 2020-10-29 14:07:43 +00:00
Alex Beregszaszi
1ab6340828 Move AsmJsonImporter from libsolidity to libyul
It is next to AsmJsonConverter now and interdependencies are shrunk.
2020-10-29 14:06:34 +00:00
Đorđe Mijović
3bb35d80ff
Merge pull request #10150 from ethereum/isoltestStorageEmpty
Empty storage option for isoltest.
2020-10-29 15:02:36 +01:00
chriseth
3b8c038647 Empty storage option for isoltest. 2020-10-29 13:55:07 +01:00
chriseth
80071d59c5
Merge pull request #10135 from ethereum/ewasm-oob
[ewasm] Terminate on out-of-bounds access in EwasmInterpreter
2020-10-29 11:55:47 +01:00
Alex Beregszaszi
bcd31daf94 [ewasm] Terminate on out-of-bounds access in EwasmInterpreter 2020-10-29 10:26:41 +00:00
Alexander Arlt
ff7c47a1f3 Fix test/stopAfterParseTests.sh for macos. 2020-10-28 17:59:56 -05:00
chriseth
f42280f5c9
Merge pull request #10140 from ethereum/isoltestfunctioncallkind
Refactor isoltest function call kind.
2020-10-28 19:56:26 +01:00
chriseth
d00ef95a72 Refactor isoltest function call kind. 2020-10-28 19:04:24 +01:00
chriseth
d190c4f1d4
Merge pull request #10130 from ethereum/docs-abi-encoding-interval-corrections
[docs] Interval corrections in ABI encoding spec
2020-10-28 18:13:42 +01:00
chriseth
0c12b2e53a Bit operations for fixed bytes types. 2020-10-28 18:04:54 +01:00
chriseth
2dbb283ff5
Merge pull request #10136 from ethereum/fixMoveBug
Fix move bug.
2020-10-28 18:00:30 +01:00
chriseth
b18d5ab257 Fix move bug. 2020-10-28 17:21:08 +01:00
Đorđe Mijović
cfc1eb0029
Merge pull request #10132 from ethereum/smt_docs_types
Update SMT types docs
2020-10-28 16:30:58 +01:00
Leonardo Alt
7d9c080050 Update SMT types docs 2020-10-28 13:31:33 +00:00
Kamil Śliwak
cfc878f8a5 docs/abi-spec.rst: There are 256 possible values for uint8 enums 2020-10-28 13:33:30 +01:00
Kamil Śliwak
bc85439576 docs/abi-spec.rst: Note about zero-length fixed-size arrays 2020-10-28 13:33:17 +01:00
chriseth
7b26c099b3
Merge pull request #10122 from ethereum/ewasm-interpreter
[ewasm] Fix EwasmBuiltinInterpreter to follow the specs
2020-10-28 13:11:44 +01:00
chriseth
fb40f29594
Merge pull request #10133 from ethereum/asm-error-codes
Split error codes for EVM opcodes
2020-10-28 13:00:23 +01:00
Alex Beregszaszi
6b2942e7f0 [ewasm] Properly touch memory in EwasmInterpreter 2020-10-28 11:57:18 +00:00
Alex Beregszaszi
9dc5ceae94 [ewasm] Implement "create" properly in EwasmInterpreter 2020-10-28 11:57:18 +00:00
Alex Beregszaszi
62028c90f0 [ewasm] Overhaul memory handling in EwasmInterpreter
Introduce writeMemory and read/writeBytes32/Address helpers.
Fix read/writeU128/U256 to be little-endian.
Update each instruction to follow the specification.
2020-10-28 11:57:18 +00:00
Alex Beregszaszi
24d8c2ed90 Split error codes for EVM opcodes 2020-10-28 11:45:46 +00:00
chriseth
9b353103b4
Merge pull request #10121 from ethereum/ewasm-stop
[ewasm] Implement stop() in EVM->Ewasm translator
2020-10-28 12:41:17 +01:00
Đorđe Mijović
1f50b86aad
Merge pull request #10073 from ethereum/smt_format_array_cex
Format array cex
2020-10-28 12:39:19 +01:00
chriseth
b2e268ae13
Merge pull request #10129 from ethereum/asm-push1
Make use of pushInstruction() helper in libevmasm
2020-10-28 12:33:14 +01:00
Leonardo Alt
25f75ce547 Remove nondet tests 2020-10-28 11:03:42 +00:00
chriseth
cc4b44058d
Merge pull request #10126 from ethereum/fixIceStructCalldataToStorageSol2Yul
[Sol->Yul] Fixing ice when copying struct that contains nested array to storage
2020-10-28 11:46:22 +01:00
Alex Beregszaszi
e5faea5f35 Make use of pushInstruction() helper in libevmasm 2020-10-28 10:11:54 +00:00
Leonardo
07c454949f
Merge pull request #10127 from ethereum/fixIceSmtBitwise
[SMTChecker] Fix ICE when using >>>
2020-10-28 09:28:18 +00:00
Djordje Mijovic
28f92064b9 [Sol->Yul] Fixing ice when copying struct that contains nested array to storage 2020-10-28 09:28:40 +01:00
Djordje Mijovic
9cc37c3fa4 [SMTChecker] Fix ICE when using >>> 2020-10-28 09:25:14 +01:00
Alex Beregszaszi
13652bd4a9 [ewasm] Add assertion for datasize/dataoffset in BinaryTransform 2020-10-27 17:43:31 +00:00
Alex Beregszaszi
6d79a8885f [ewasm] Implement stop() in EVM->Ewasm translator 2020-10-27 17:09:30 +00:00
Leonardo Alt
f2f84a7f97 Format array cex 2020-10-27 16:32:43 +00:00
Leonardo
f1ed510045
Merge pull request #10068 from ethereum/smt_from_z3_expr
Refactor SMT cex graph
2020-10-27 12:49:15 +00:00
Leonardo Alt
446e46fe06 Use Expression instead of plain strings for counterexamples 2020-10-27 12:04:51 +00:00
Leonardo Alt
72b052eae7 Convert z3::expr to smtutil::Expression 2020-10-27 12:04:51 +00:00
Leonardo
96c188be9d
Merge pull request #10111 from ethereum/smt_fix_assignment
[SMTChecker] Fix assignment to contract member access
2020-10-26 15:13:41 +00:00