Commit Graph
488 Commits
Author SHA1 Message Date
Christian Parpart 55f9eab51f InlineAssembly: Extracting tests for function definition and calls. 2020-11-04 12:03:33 +01:00
Christian Parpart f2117b87f7 InlineAssembly: Extracting tests for for-statements. 2020-11-04 12:03:33 +01:00
Christian Parpart 671b1c950e InlineAssembly: Extracting function expression tests 2020-11-04 12:03:33 +01:00
Christian Parpart 616f03f577 InlineAssembly: Extracting tests for variable declaration 2020-11-04 12:03:33 +01:00
Christian Parpart cc230ddda3 InlineAssembly: Extracting tests for switch statement 2020-11-04 12:03:33 +01:00
Christian Parpart 6f872dbebf InlineAssembly: Extracting tests for if statement 2020-11-04 12:03:33 +01:00
chriseth e93a84ccd4 Merge remote-tracking branch 'origin/develop' into HEAD 2020-10-28 18:19:31 +01: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
Daniel Kirchner 0dca223b45 Add another argument to setimmutable and the AssignImmutable opcode, allowing to modify code at any memory offset. 2020-10-15 18:14:41 +02:00
Christian Parpart 626b7cdb09 Extract yul syntax tests: invalid use of builtin identifiers 2020-10-14 12:18:33 +02:00
Christian Parpart 5d40494ed2 Extract yul syntax tests: function 2020-10-14 12:05:46 +02:00
Christian Parpart 5b799b01ab Extract yul syntax tests: multiple assignment expression 2020-10-14 11:50:25 +02:00
Christian Parpart 99d18336a0 Extract yul syntax tests: recursion depth 2020-10-14 11:45:54 +02:00
Christian Parpart b1b2d3ef62 Extract yul syntax tests: switch statement 2020-10-14 11:39:10 +02:00
Christian Parpart c63265ff03 Extract yul syntax tests: for statement 2020-10-14 11:23:10 +02:00
Christian Parpart 2accbbe251 Extract yul syntax tests: if statement 2020-10-14 10:54:18 +02:00
Harikrishnan Mulackal 2b9f040c48 Optimize exp when base is -1 2020-09-29 17:44:09 +02:00
Daniel Kirchner 7fa9a9d312 Merge pull request #9162 from ethereum/memoryEscalator
Memory Escalator
2020-09-21 20:03:38 +02:00
chriseth 306fef334b Merge pull request #9546 from ethereum/expToShift
Optimization rule: Replace exp by shl.
2020-09-21 12:21:47 +02:00
Daniel Kirchner 48f620fb50 Reverse the order of the memory offsets assigned to variables. 2020-09-17 22:13:27 +02:00
Daniel Kirchner f4b42d1c72 Add stack limit evader. 2020-09-17 22:13:27 +02:00
chriseth 684fff34a9 Replace exp by shl. 2020-09-17 16:06:52 +02:00
chriseth 6e4205e445 Do not run reasoning test if no SMT Solver is available. 2020-09-17 13:43:35 +02:00
chriseth 2d7e28769a Skip smt optimizer tests if smt is disabled. 2020-09-15 15:57:59 +02:00
chriseth f73fb726af Reasoning based optimizer. 2020-09-15 15:57:58 +02:00
chriseth 768e0e96e4 Extract yul syntax tests. 2020-09-15 12:13:30 +02:00
chriseth 552a5f0913 Merge pull request #9314 from ethereum/inlineStartingFromLeaves
Handle "leaf functions" first in full inliner.
2020-09-14 20:22:48 +02:00
Harikrishnan Mulackal b7944477a1 Update UnusedFunctionParameterPruner tests to avoid getting inlined 2020-09-14 17:59:50 +02:00
chriseth 8e39110a30 Remove flag. 2020-09-14 17:35:04 +02:00
chriseth 42c26e0bf5 Inline tiny functions first. 2020-09-10 17:01:20 +02:00
chriseth f102feaf09 Handle "leaf functions" first in full inliner. 2020-09-10 17:01:19 +02:00
chriseth 6101bdf7e2 Name simplifier. 2020-09-10 16:23:29 +02:00
Harikrishnan Mulackal 974e35d09c Tests and changelog 2020-09-03 13:15:38 +02:00
Harikrishnan Mulackal e2fd41f097 Implemented UnusedFunctionArgumentPruner 2020-09-03 13:15:38 +02:00
Alex Beregszaszi 7ef9591e64 Expose hex literal to the Yul parser
This allows nicer error messages.
2020-08-28 19:34:52 +01:00
Alex Beregszaszi 26a76c18d4 Add Yul syntax test for every Solidity keyword 2020-08-28 19:34:52 +01:00
Alex Beregszaszi caa329066e Do not emit Solidity-only tokens in the Scanner for Yul
And simplfiy AsmParser greatly.
2020-08-28 19:34:52 +01:00
Alex Beregszaszi 4e5b403c37 Introduce RightArrow (->) token in the scanner 2020-08-27 12:28:27 +01:00
chriseth e72afcba47 Fix inlining order to correspond to source order. 2020-08-26 10:20:18 +02:00
Harikrishnan Mulackal bbf15c9af3 Tests and Changelog 2020-08-19 12:41:29 +02:00
Harikrishnan Mulackal 3cbe65e4f3 Refactor SideEffects struct 2020-08-18 14:53:59 +02:00
Harikrishnan Mulackal 58bfe0b0d2 Tests for refactor-SideEffects 2020-08-14 17:44:19 +02:00
Alex Beregszaszi babb175d86 Add more syntax tests for Yul 2020-08-13 14:20:52 +01:00
Daniel Kirchner 5d670aaa18 Merge pull request #9614 from ethereum/yul-hex
Update tests/documentation to show that hex literals are not supported in Yul
2020-08-13 03:11:45 +02:00
Alex Beregszaszi b752551ebd Add test case for string literals in switch statements in Yul 2020-08-13 00:27:41 +01:00
Alex Beregszaszi acb1e8c280 Add tests showing hex literals are not allowed in Yul 2020-08-13 00:27:19 +01:00
Alex Beregszaszi bb29307b02 Add/Update tests for Yul function definition 2020-08-12 23:53:08 +01:00
chriseth 0226d104b7 Fix literal arguments in interpreter. 2020-08-06 14:16:59 +02:00
chriseth ebd512cef6 Merge pull request #9576 from ethereum/test-cleanup
Rename libsolidity/SolidityScanner to liblangutil/Scanner in tests
2020-08-06 00:49:33 +02:00
chriseth 488fd5a27a Merge pull request #9575 from ethereum/yul-optim-check
Parse optimiser output in yulOptimiserTests
2020-08-06 00:40:45 +02:00