Commit Graph

2932 Commits

Author SHA1 Message Date
Leonardo Alt
3cb4ed83c1 [SMTChecker] Split SMTChecker into SMTEncoder and BMC 2019-07-01 15:05:03 +02:00
chriseth
3be21800ac
Merge pull request #6683 from ethereum/updateSwarm
Update swarm hash.
2019-06-27 13:18:29 +02:00
chriseth
53f37f487f
Merge pull request #6994 from ethereum/smt_refactor_targets
[SMTChecker] Delay all checks
2019-06-27 12:56:34 +02:00
chriseth
89f0e1e6da Use updated swarm hash. 2019-06-27 12:49:06 +02:00
chriseth
aa11ad7d0a Update swarm hash. 2019-06-27 12:48:51 +02:00
chriseth
8d18003808
Merge pull request #6716 from ethereum/wasmTranslation
[Yul] EVM to Wasm translation
2019-06-27 12:31:35 +02:00
Leonardo Alt
a28b84fdc3 [SMTChecker] Add a more general VerificationTarget 2019-06-27 10:31:50 +02:00
chriseth
b4a0a79398
Merge pull request #6993 from ethereum/smt_false_positives
[SMTChecker] Remove overflow check for assignments
2019-06-26 13:06:31 +02:00
chriseth
c6f7f5b2b0 Enable EWasm output. 2019-06-25 19:07:38 +02:00
chriseth
fe9aa59b8f Fix conversion during storing. 2019-06-25 13:00:02 +02:00
Leonardo Alt
48d6729164 [SMTChecker] Remove overflow check for assignments 2019-06-24 17:58:56 +02:00
chriseth
efd8d8fe5e
Merge pull request #6991 from ethereum/check_style-no-space-before-range-based-for-loop-colon
Adds a test to check_style.sh to check for spaces before colon (:) in range based for loops.
2019-06-24 17:42:06 +02:00
Christian Parpart
7b3aba81fb Adds a test to check_style.sh to check for spaces before colon (:) in range based for loops. 2019-06-24 17:32:58 +02:00
chriseth
2563178a0a
Merge pull request #6990 from ethereum/sol-yul-storage-array-index
Enable yul for more end to end tests
2019-06-24 16:30:33 +02:00
Leonardo Alt
ed275fd760 [SMTChecker] Collect assertions in EncodingContext 2019-06-24 15:03:00 +02:00
Mathias Baumann
0e812b16c2 Minor indent fix 2019-06-24 14:51:04 +02:00
chriseth
9c129a4087
Merge pull request #6984 from ethereum/yul-reindent
yul: adds reindent() function to reindent yul source code and makes us of it in IRGenerator
2019-06-24 12:54:40 +02:00
Christian Parpart
0fd1db533e yul: adds reindent() function to reindent yul source code and makes use of it in IRGenerator.
This function does count curly and round braces and reindents
accordingly the beginning of each line.

It does consider line-comments (// and ///) but not multiline comments (/* ... */).
2019-06-24 12:53:50 +02:00
chriseth
350631ae0d
Merge pull request #6940 from ethereum/sol-yul-storage-array-index
[Sol->Yul] Implement index access for storage arrays
2019-06-24 12:49:19 +02:00
Mathias Baumann
1dd63f416e [Sol->Yul] Implement index access for storage arrays 2019-06-20 16:14:51 +02:00
Mathias Baumann
346c512cd7 [Sol->Yul] Implement _slot/_offset suffix for storage variables 2019-06-20 14:50:52 +02:00
chriseth
9bb7160c4c
Merge pull request #6958 from sifmelcara/fix-abiencoderv2-codegen
Fix incorrect abi encoding of storage array of data type that occupy multiple storage slots
2019-06-20 13:08:42 +02:00
Daniel Kirchner
fcd3410f26 Implement checked mod for sol->yul code generation. 2019-06-20 12:30:32 +02:00
Daniel Kirchner
a5b9f634ef Implement signed multiplication for sol->yul code generation. 2019-06-20 12:30:30 +02:00
Daniel Kirchner
e4c884ae13 Unify style of checked integer division for sol->yul code generation. 2019-06-20 12:18:18 +02:00
Daniel Kirchner
5f6af8b374 Implement signed subtraction for sol->yul code generation. 2019-06-20 12:16:56 +02:00
Daniel Kirchner
88988af561 Implement signed addition for sol->yul code generation. 2019-06-20 11:42:50 +02:00
Mathias Baumann
b03cb2bce6 YulUtilFuncs: Add missing/adjust existing documentation 2019-06-19 18:09:23 +02:00
Mathias Baumann
910cb8d329 [Sol->Yul] Implement .length for storage arrays 2019-06-19 18:09:23 +02:00
Mathias Baumann
c5b50039d2 [Sol->Yul] Report error after Ir code
this way less scrolling is required
2019-06-19 18:09:23 +02:00
mingchuan
ae273ff3bd
Move code that access calldata array element to separate function 2019-06-19 17:26:35 +08:00
mingchuan
492f945973
Coding style fix 2019-06-19 17:26:34 +08:00
chriseth
53f26d9719
Merge pull request #6963 from ethereum/runOptimizerOnAllDialects
[Yul] Run optimizer on all dialects.
2019-06-19 10:51:24 +02:00
chriseth
cc5045a56e [Yul] Run optimizer on all dialects. 2019-06-19 10:01:16 +02:00
mingchuan
bfe074b2b1
Fix storage array abi encoding
Fix incorrect abi encoding of storage array of data type that occupy multiple storage slots
2019-06-19 10:46:05 +08:00
chriseth
56db792ad9
Merge pull request #6876 from rocky/recoveringParser1-StandardCompiler
Add parser errorRecovery (including StandardCompiler)
2019-06-18 22:40:35 +02:00
rocky
1a7e09ab7a Add errorRecovery boolean to StandardCompiler 2019-06-18 15:54:05 -04:00
chriseth
05a67c486e Use "what" in exception reports. 2019-06-18 17:34:10 +02:00
chriseth
6cb6fe35ef Make Yul optimizer not fail for wasm. 2019-06-17 18:42:47 +02:00
chriseth
d7211c17e9
Merge pull request #6953 from ethereum/fix-comments-in-pr
[Sol->Yul] Style fixes
2019-06-17 17:29:05 +02:00
Mathias Baumann
8ca27c2bb0 [Sol->Yul] Style fixes
addresses the points @chriseth mentioned in #6909
2019-06-17 15:26:40 +02:00
rocky
ca3afea1d7 Add Steve Johnson-style parser recovery rules:
SourceUnit = Error $
    Block = '{' Error '}'
    ContractDefinition = '{' Error '}'
    Statement = Error ';'

Co-Authored-By: chriseth <chris@ethereum.org>
2019-06-17 14:47:07 +02:00
Daniel Kirchner
4d38df6920 Set state mutability of function type members `gas and value` to pure. 2019-06-13 18:27:53 +02:00
Leonardo
7a42ae2b7b
Merge pull request #6894 from ethereum/smt_catch_expr
[SMTChecker] Catch malformed expressions
2019-06-12 21:17:10 +02:00
Leonardo
d2019f49ea
Merge pull request #6906 from ethereum/delegatecall_value_msg
Improve error message for delegatecall.value
2019-06-12 21:14:54 +02:00
Daniel Kirchner
2849169bff
Merge pull request #6909 from ethereum/yul-delete-operation
[Sol->Yul] Make IRStorageItem work with dynamic offsets
2019-06-12 16:46:00 +02:00
Mathias Baumann
6a0976ed5e [Sol->Yul] Refactor shift functions to be consistent 2019-06-11 17:44:36 +02:00
Mathias Baumann
89c435a167 [Sol->Yul] Make IRStorageItem work with dynamic offsets 2019-06-11 17:44:36 +02:00
Daniel Kirchner
226f8bb64d Use imported cmake targets for boost. 2019-06-06 18:49:34 +02:00
Daniel Kirchner
2dbdddc7e5 Fix argument count for require with message and string literals. 2019-06-06 13:17:08 +02:00