Commit Graph
553 Commits
Author SHA1 Message Date
Harikrishnan Mulackal f162c484ca Merge pull request #11026 from ethereum/resolve-keccak
Evaluate ``keccak256(a, const)``, when the value at memory location ``a`` is known at compile time and ``const <= 32``
2021-04-22 19:18:19 +02:00
hrkrshnn b599235b8d Skip resolving Keccak if AST contains msize.
Also a refactoring changing `m_optimizeMLoad` to `m_containsMSize`.
2021-04-22 18:19:47 +02:00
hrkrshnn 221292c278 Tests and changelog 2021-04-22 18:19:47 +02:00
hrkrshnn 1f5b874eaf Optimizer context has parameter expectedExecutionsPerDeployment 2021-04-22 17:27:57 +02:00
chriseth a6a3af58a0 Add test. 2021-04-22 17:23:56 +02:00
chriseth 00fb2d390b Do not replace zeros by return variable. 2021-04-22 16:54:02 +02:00
chriseth e408b708ac Use "for objects" dialect for function side effects test. 2021-04-22 14:37:51 +02:00
chriseth 35b651103d Adjust cost of literal zero. 2021-04-22 11:42:42 +02:00
Alex Beregszaszi 1be07c2b36 Trivial isoltest updates: missing // ---- at the end 2021-04-20 17:38:29 +02:00
Alex Beregszaszi 84c05d35f3 Trivial isoltest updates: normalized whitespace 2021-04-20 17:38:29 +02:00
chriseth 2856f56525 Merge pull request #10942 from ethereum/returnSlotAllocation
Delayed return slot allocation.
2021-04-08 16:42:07 +02:00
chriseth f04adde664 Allow hex string literals in Yul. 2021-04-08 15:03:33 +02:00
Daniel Kirchner 6fc4b04d1d Update test expectations. 2021-04-06 13:41:26 +02:00
Daniel Kirchner 4b0f8383a6 Reuse function argument slots and defer allocation of return variable slots in EVMCodeTransform. 2021-04-06 13:38:05 +02:00
Daniel Kirchner 04a051d380 Add test cases for return slot allocation. 2021-04-06 13:31:22 +02:00
hrkrshnn 0100f48e05 FunctionSpecializer: skip specializing recursive functions
This avoids potential pathological behaviour, like in Ackermann function.
2021-03-29 11:02:31 +02:00
hrkrshnn 2c75d1dfe4 Isoltest gas update for FunctionSpecializer 2021-03-29 11:02:31 +02:00
hrkrshnn 09998ceb0c Tests for FunctionSpecializer 2021-03-29 11:02:18 +02:00
chriseth 2c8540b1f9 Yul optimizer test updates. 2021-03-18 08:42:49 +01:00
chriseth 5c2cd8d553 Merge pull request #11073 from ethereum/extractStackReuseTests
Extract StackReuseCodegen tests.
2021-03-09 15:52:23 +01:00
Daniel Kirchner e99da7e015 Extract StackReuseCodegen tests. 2021-03-09 15:47:24 +01:00
chriseth 40c27ccc22 Move AND with constant inside OR. 2021-03-09 15:26:19 +01:00
chriseth 7d0ecd9406 Merge pull request #10535 from ethereum/removeNumbers
Improve generated names.
2021-02-23 13:29:18 +01:00
Bhargava Shastry 91b7d60301 Optimiser fuzzer: Disable reasoning based simplifier runs. 2021-02-18 10:48:49 +01:00
chriseth 612d8184d1 Update tests. 2021-02-16 15:50:48 +01:00
hrkrshnn 8167029dc1 Updating tests after improving Yul error reporting 2021-02-09 16:55:33 +01:00
chriseth c7d1e1911e Merge pull request #10369 from ethereum/ewasm-polyfill-address-balance
[ewasm] Polyfill: balance, address.
2021-02-01 16:19:23 +01:00
Leonardo Alt 40221a90c4 Update smtCheckerTests for z3 4.8.10 2021-01-26 10:18:52 +01:00
Alexander Arlt f928107181 [ewasm] Polyfill: balance & address: Update Tests. 2021-01-19 13:04:45 -05:00
Bhargava Shastry b3dd83a20b Enable fine grained yul optimizer fuzzing 2021-01-19 18:22:59 +01:00
Bhargava Shastry 7c24074909 Minor refactor yul optimizer test framework to make it easier to fuzz 2021-01-19 11:45:27 +01:00
Bhargava Shastry 02b28b42e8 Remove fuzzer mode from yul optimizer unit test framework. 2021-01-18 10:27:58 +01:00
Bhargava Shastry 3e7659596e Header cleanup 2021-01-18 10:27:58 +01:00
Bhargava Shastry 42c05df0a9 Yul optimizer test: Separate test parsing and optimisation 2021-01-18 10:27:58 +01:00
Daniel Kirchner 308549f950 Simplify test and add Changelog entry. 2021-01-06 11:33:08 +01:00
chriseth d46da8e53c Optimize iszero(sub(x, y)) to eq(x, y). 2020-12-22 15:11:48 +01:00
chriseth 8f833f4e8f Merge pull request #10618 from ethereum/develop
Merge develop into breaking.
2020-12-16 12:34:41 +01:00
chriseth 5c40fb060c Report illegal tokens in the Yul parser. 2020-12-16 12:20:07 +01:00
Christian Parpart 381c63ec99 Scanner: Generate error on inbalanced RLO/LRO/PDF override markers. 2020-12-15 18:40:51 +01:00
chriseth 6c7e6a3c9f Merge pull request #10615 from ethereum/develop
Merge develop into breaking.
2020-12-15 18:34:01 +01:00
Bhargava Shastry b45a5d7605 Asmanalysis: Add test case that demonstrates bug 2020-12-15 17:57:19 +01:00
Bhargava Shastry 9b38176c77 AsmAnalysis: Fix out of bounds read due to incorrect bounds checking on literal arguments 2020-12-15 15:38:59 +01:00
chriseth f7a7e2928b New test. 2020-12-10 18:35:13 +01:00
Alex Beregszaszi c032ad3379 Update tests 2020-12-10 17:18:15 +01:00
chriseth 329b8f2a60 Merge remote-tracking branch 'origin/develop' into breaking 2020-12-07 13:04:14 +01:00
Bhargava Shastry 32fd692c51 Yul interpreter: Introduce expression evaluation maximum nesting depth 2020-12-04 17:27:03 +01:00
chriseth d56a7bb89e Merge pull request #10489 from ethereum/develop
Merge develop into breaking.
2020-12-03 18:11:12 +01:00
Alex Beregszaszi a9be2e4bb8 update tests 2020-12-03 17:15:45 +01:00
Alex Beregszaszi 6c0a3bd043 Ensure that builtins must be executed 2020-12-03 17:15:44 +01:00
Alex Beregszaszi 43353bb6ca update tests 2020-12-03 17:15:43 +01:00