Alex Beregszaszi
a22077f736
Rename AsmData -> AST
...
Also attempt to only include ASTForward where appropriate.
2020-11-25 17:58:02 +00:00
Alex Beregszaszi
6f6bcdd526
[ewasm] Display custom sections as hex string in the text output
2020-11-10 23:48:24 +01:00
Alex Beregszaszi
e5396e42c3
Add wasm support to libyul/ObjectCompilerTest
2020-11-10 23:24:49 +01:00
Alex Beregszaszi
1536e49b3d
Add more syntax tests for uncovered cases
2020-11-05 10:30:09 +00:00
Christian Parpart
1a9a3b115c
Moving the surplus_input
inline assembly test to yulSyntaxTests.
2020-11-04 12:03:33 +01:00
Christian Parpart
f55844e0f2
InlineAssembly: Extracting remaining tests.
2020-11-04 12:03:33 +01:00
Christian Parpart
3597c8343d
InlineAssembly: Extracting tests for name clashes.
2020-11-04 12:03:33 +01:00
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
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
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