Commit Graph

20833 Commits

Author SHA1 Message Date
Daniel Kirchner
9ed428912c tmp 2021-09-09 11:34:01 +02:00
Daniel Kirchner
078d1ef39f Test updates. 2021-09-08 12:51:56 +02:00
Daniel Kirchner
106e0101bf Some more tests. 2021-09-08 12:51:56 +02:00
Daniel Kirchner
980192374e Use index into m_asm->items() to modify free memory push. 2021-09-08 12:51:56 +02:00
Daniel Kirchner
7dbea33b59 Allow stack limit evasion in system yul routines during old code generation. 2021-09-08 10:30:41 +02:00
Daniel Kirchner
bdddb845b0 Compatibility with StackCompressor and StackLimitEvader. 2021-09-08 10:30:41 +02:00
Daniel Kirchner
b8bf8da514 Enable the new code generator for "system" inline assembly routines. 2021-09-08 10:30:41 +02:00
Daniel Kirchner
7f50e58dbf A first stack shuffling unit test. 2021-09-08 10:30:41 +02:00
Daniel Kirchner
07cc0981b7 Update code transform tests. 2021-09-08 10:30:41 +02:00
Daniel Kirchner
978b540cae Enable for IR code generation with stack optimization > homestead. 2021-09-08 10:30:41 +02:00
Daniel Kirchner
06b44f31f2 Optimized EVM Code Transform. 2021-09-08 10:29:08 +02:00
Daniel Kirchner
d512f7a4fd
Merge pull request #11890 from ethereum/stackLayoutGeneratorReportTooDeep
Report stack too deep and conditional stack compression in StackLayoutGenerator.
2021-09-08 10:28:30 +02:00
Leonardo
6feed460cf
Merge pull request #11905 from ethereum/smt_cleanup_typetype
[SMTChecker] Cleanup spurious messages about TypeTypes
2021-09-07 17:46:57 +02:00
chriseth
c9360ef80d
Merge pull request #11908 from ethereum/preventOptimizerRunningMultipleTimes
Run the optimizer only once.
2021-09-07 17:37:54 +02:00
Leo Alt
6e2fe1e340 [SMTChecker] Cleanup spurious messages about TypeTypes 2021-09-07 16:55:25 +02:00
chriseth
3fe52d9869 Run the optimizer only once. 2021-09-07 15:06:31 +02:00
Leonardo
11a8505990
Merge pull request #11904 from ethereum/removing-soljson-js-no-longer-needed-after-npm-install
Don't try to remove `soljson.js` after running `npm install` in cloned `solc-js` repo
2021-09-06 23:46:26 +02:00
Leonardo
1d6eb2e248
Merge pull request #11880 from ethereum/circle-ci-config-cleanup-and-deduplication
CircleCI config cleanup and deduplication
2021-09-06 23:44:02 +02:00
chriseth
a7b85d3a41
Merge pull request #11865 from ethereum/compressSourceIndices
Only list used source names.
2021-09-06 22:13:27 +02:00
Kamil Śliwak
f4d1044331 Don't try to remove soljson.js after running npm install in cloned solc-js repo 2021-09-06 21:04:36 +02:00
chriseth
5093cff7ae Rename source location function. 2021-09-06 18:33:36 +02:00
chriseth
f14b7598c7 Only list used source names. 2021-09-06 18:33:05 +02:00
chriseth
4615e62514
Merge pull request #11902 from ethereum/addHelperForContext
Refactor: Add helper for context.
2021-09-06 18:28:17 +02:00
chriseth
5d2931cba3 Refactor: Add helper for context. 2021-09-06 18:18:33 +02:00
chriseth
b8eb2a0d38
Merge pull request #11901 from ethereum/fix-changelog
Move changelog item to bugfix.
2021-09-06 18:03:55 +02:00
Daniel Kirchner
d0ce6433d9
Merge pull request #11894 from ethereum/builtinExpressionVisit
Remove expression visit function from Yul Builtins.
2021-09-06 17:49:40 +02:00
hrkrshnn
4d52e873e7 Move changelog item to bugfix. 2021-09-06 17:44:45 +02:00
Daniel Kirchner
a683ea7646 Remove the expression callback from the code generator functions of Yul builtins. 2021-09-06 17:07:53 +02:00
chriseth
be95a8172b
Merge pull request #11891 from ethereum/guidedRematerializer
Allow the Rematerializer to be restricted to an exact set of variables.
2021-09-06 16:22:14 +02:00
Harikrishnan Mulackal
e9b70b168a
Merge pull request #11899 from ethereum/move-check-keccak-gas
Resolving Keccak-256: check if arguments are identifiers early.
2021-09-06 14:28:42 +02:00
hrkrshnn
2cdd3b2081 Resolving Keccak-256: check if arguments are identifiers early.
Previously, the check on whether the optimization was useful gas wise was done before checking if
the keccak256 opcode had identifier as arguments. Since the gas meter crashes when encountering
certain Yul opcodes (create, dataoffset, etc.), this optimizer step crashed.
2021-09-06 13:48:07 +02:00
Harikrishnan Mulackal
3da3ffee5f
Merge pull request #11897 from paulrberg/develop
docs: delete stale note about reading code
2021-09-06 10:01:57 +02:00
Daniel Kirchner
e022ba1bfb Report stack too deep and conditionally aggressively compress stack in StackLayoutGenerator. 2021-09-06 09:08:04 +02:00
Paul Razvan Berg
8d1331a081
docs: delete stale note about reading code 2021-09-04 22:40:36 +03:00
yatharthagoenka
5a02384233 Cleanup/Deduplication in .circleci/config 2021-09-03 22:56:19 +02:00
Daniel Kirchner
646421fee1 Allow the Rematerializer to be restricted to an exact set of variables. 2021-09-03 15:29:51 +02:00
Daniel Kirchner
8447b32d52
Merge pull request #11861 from ethereum/smt_value
[SMTChecker] Support `value` in CHC for external function calls
2021-09-03 14:00:21 +02:00
Daniel Kirchner
d384664dcb
Merge pull request #11615 from ethereum/yulStackLayoutGenerator
Yul Stack Layout Generator (New Code Transform Step 2)
2021-09-03 13:13:18 +02:00
chriseth
7f137d352a
Merge pull request #11869 from ethereum/remodelUseSrc
Allow and require use-src to be repeated for each object.
2021-09-02 18:34:07 +02:00
Daniel Kirchner
f881409ea4 Stack layout generator for new code generation. 2021-09-02 17:47:19 +02:00
chriseth
9c2ab1ff2f
Merge pull request #11881 from ethereum/unsuable-symbol-11855
Properly export symbols from aliased imports.
2021-09-02 16:39:16 +02:00
chriseth
5caa15879b Allow and require use-src to be repeated for each object. 2021-09-02 11:29:42 +02:00
Kamil Śliwak
70fe0c65d5
Merge pull request #11883 from ethereum/remove-archlinux-ci-workarounds
Remove CI workarounds for archlinux
2021-09-01 20:58:03 +02:00
Bhargava Shastry
6f8f58ebb7
Merge pull request #11874 from ethereum/remove-unsigned-overflow-ubsan-nightly
Fix UBSan CI
2021-09-01 20:29:42 +02:00
Leo Alt
106c591dde Support the external call option 2021-09-01 20:18:37 +02:00
Marenz
4700c2b973 Properly export symbols from aliased imports. 2021-09-01 19:55:30 +02:00
Kamil Śliwak
4e76914622 Switch back to using the latest ArchLinux docker image 2021-09-01 19:00:03 +02:00
Kamil Śliwak
5849e0c16e Re-enable SMT tests on Arch Linux
- Z3 4.8.12 has already been released
2021-09-01 18:59:13 +02:00
Bhargava Shastry
7b05d3bc70 CMake: Remove unsigned-integer-overflow check from UBSan compiler flags because it is too noisy. 2021-09-01 16:47:06 +02:00
chriseth
29cc7aa951
Merge pull request #11847 from ethereum/enum-min-max-11469
Add type().min/max for enums
2021-09-01 15:43:05 +02:00