Commit Graph
3760 Commits
Author SHA1 Message Date
Daniel Kirchner 91a2a9a9c3 Implement ABI encoding of calldata arrays and structs. 2019-04-04 13:05:32 +02:00
Bhargava Shastry f15cedad7a yulInterpreter: More fine-grained exception handling 2019-04-04 13:02:55 +02:00
chriseth 887112b1b0 Fix SSA for multi-assignments. 2019-04-04 12:06:04 +02:00
chriseth 8c570f31c5 Merge pull request #6442 from ethereum/smt_unary_inc_dec
[SMTChecker] Support unary inc/dec for array/mapping access
2019-04-04 11:45:13 +02:00
chriseth ee2f566207 Merge pull request #5815 from ethereum/strict-abi-decoder
Strict abi decoder (validate incoming data instead of cleaning it)
2019-04-04 11:13:44 +02:00
Mathias Baumann d46f29e128 Add bitshift optimizer tests 2019-04-03 22:38:31 +02:00
Daniel Kirchner 5ff1f85231 Adjust semantics tests. 2019-04-03 17:59:04 +02:00
chriseth e3d7a34c2c Make yul a setting. 2019-04-03 14:58:20 +02:00
chriseth aeb260cde1 Add settings framework for interactive tests. 2019-04-03 14:58:20 +02:00
chriseth 3282c72a21 Update tests. 2019-04-03 11:32:03 +02:00
Alex Beregszaszi 43008dd08e Validate value types in decoder of ABIEncoderV2. 2019-04-03 11:32:02 +02:00
chriseth 1b7878cfde Merge pull request #6445 from ethereum/circularStorageMemoryCopy
Implemented copying recursive structs from storage to memory.
2019-04-03 10:20:23 +02:00
Leonardo Alt aa9b9aa87e [SMTChecker] Support unary inc/dec for array/mapping access 2019-04-02 16:53:19 +02:00
Daniel Kirchner ab8dfed144 Implement copying recursive structs from storage to memory. 2019-04-02 16:01:44 +02:00
chriseth 7c880a26c0 Merge pull request #6431 from ethereum/external-tests-split
Split up external tests
2019-04-02 14:39:00 +02:00
Erik Kundt 79e74b75d1 Splits up external tests into separate files. 2019-04-02 13:42:58 +02:00
Bhargava Shastry 0cc6e1cb08 Use default EVMVersion instead of a hard coded one 2019-04-02 11:40:59 +02:00
chriseth e894e0b967 Merge pull request #6410 from ethereum/eliminate-dead-code
Yul Optimizer: Remove dead code
2019-04-01 18:12:47 +02:00
chriseth 862ad28edd Merge pull request #6433 from ethereum/fuzzhelp
Run several instances of solfuzzer in parallel
2019-04-01 17:49:58 +02:00
Mathias Baumann 3216e5d846 Run several instances of solfuzzer in parallel 2019-04-01 17:18:15 +02:00
Mathias Baumann e20acf5d0a Yul Optimizer: Remove dead code 2019-04-01 17:16:04 +02:00
Mathias Baumann 30820dda99 Support multiple input files with solfuzzer 2019-04-01 16:57:32 +02:00
chriseth e7340f2126 Merge pull request #6430 from ethereum/fuzzhelp
Fix --help parameter for solfuzzer
2019-04-01 16:51:15 +02:00
Mathias Baumann 101ca5c120 Fix --help parameter for solfuzzer
the `readStandardInput()` branch would be taken if "input-file" was not
given and only "help", thus never reaching the check for "help"
2019-04-01 15:50:34 +02:00
chriseth 45e3cce765 Force-activate ABIEncoderV2 in external tests. 2019-04-01 15:36:03 +02:00
Erik Kundt c72686b343 Fixes forced optimizer settings in external tests. 2019-04-01 14:53:21 +02:00
Mathias Baumann 5c66ccc179 Optimize obsolete ANDs in combination with certain SHIFTs 2019-03-29 10:08:05 +01:00
Alex Beregszaszi 84fbf605aa Replace shifts by larger than 255 with 0 2019-03-29 10:07:54 +01:00
chriseth f9820adb5e Merge pull request #6396 from ethereum/optSetForAsmStack
Make optimiser settings available to assembly stack.
2019-03-28 19:03:23 +01:00
chriseth 84251e5a22 Merge pull request #6405 from ethereum/smt_compound_assignment
[SMTChecker] Support arithmetic compound assignment operators.
2019-03-28 18:27:25 +01:00
chriseth 3264e9abf0 Make optimiser settings available to assembly stack. 2019-03-28 18:24:13 +01:00
Leonardo Alt dadafed022 Short circuit tests 2019-03-28 16:08:30 +01:00
Leonardo Alt a7e826a224 [SMTChecker] Implement short circuit 2019-03-28 16:08:30 +01:00
chriseth a1d59dfb4c Merge pull request #6371 from ethereum/smt_variable_usage_function_calls
[SMTChecker] Merge SSA state vars properly
2019-03-28 15:54:31 +01:00
chriseth 30da62aa2c Merge pull request #6408 from ethereum/includeCleanup
Include cleanup
2019-03-28 15:31:07 +01:00
Leonardo Alt c7e5468505 Arithmetic compound assignment operators tests 2019-03-28 15:27:52 +01:00
chriseth 2b0c653f57 Merge pull request #6241 from ethereum/yul-bc-codegen
Yul codegen for break & continue statements
2019-03-28 14:48:50 +01:00
chriseth 20ae3ad555 Remove "using namespace". 2019-03-28 14:32:48 +01:00
Leonardo Alt 2764d2f525 Tests that used to give false negatives 2019-03-28 14:32:47 +01:00
chriseth 529aca5cbd Merge pull request #6407 from ethereum/changeNamespace
Remove "using namespace" from header and move Instruction to dev::eth.
2019-03-28 14:32:07 +01:00
Christian Parpart b8c6274179 [yul] Implements EVM codegen for break/continue plus respective tests & ChangeLog entry. 2019-03-28 14:09:25 +01:00
chriseth 2308904f68 Remove "using namespace" from header and move Instruction to dev::eth. 2019-03-28 13:48:11 +01:00
chriseth 6d8e84c93e Merge pull request #6315 from ethereum/yul-for-continue-tests
[Yul] RedundantAssignEliminator adoptions for continue/break AST nodes
2019-03-28 12:18:02 +01:00
chriseth ff1e5c2298 Merge pull request #6372 from ethereum/update-external-tests
Update external tests
2019-03-28 11:26:38 +01:00
Erik Kundt 3e6de8904b Reactivates external gnosis-safe tests. 2019-03-28 10:31:08 +01:00
Erik Kundt 7808af79ae Modularize external test setup. 2019-03-28 10:31:03 +01:00
chriseth 91f96c299e More logic about control flow with continue and about finalize. Remove BlockScope. 2019-03-27 22:16:31 +01:00
Bhargava Shastry 10c3b31fa4 yulInterpreter: Add timeout based on the number of interpreted statements. 2019-03-27 12:06:02 +01:00
Christian Parpart a1ec49409d Yul] RedundantAssignEliminator: Implements break/continue handling within ForLoop. 2019-03-26 17:36:43 +01:00
Bhargava Shastry b3c3a1f9cd Use visitor pattern for proto converter. 2019-03-26 16:39:44 +01:00