Daniel Kirchner
aaba5c408a
Remove obsolete main function yul optimiser step.
2023-08-16 17:28:32 +02:00
Martin Blicha
29041c8101
Remove ReasoningBasedSimplifier from libyul
...
Due to a design decision to move away from a bundled SMT solver,
ReasoningBasedSimplifier in its current form cannot be use any longer.
This is a necessary step to allow a unified way to call solvers using
only SMTLIB interface.
Since this optimization pass has always been marked as highly
experimental and never turned on by default, it should be OK to remove
it.
2023-06-28 14:38:36 +02:00
Alexander Arlt
c5673278a7
Remove EWASM backend.
2023-05-11 10:56:55 -05:00
Joshua Quinones
e1a59397c6
Renamed AssemblyStack to YulStack
...
All files, references, variables, comments, etc. were renamed to YulStack.
2022-04-08 20:28:55 +02:00
chriseth
4f02be110c
Unused store eliminator.
2022-03-10 18:25:28 +01:00
chriseth
772e100813
Equal store eliminator.
2022-01-03 15:52:05 +01:00
chriseth
bd321b9f1f
Rename RedundantAssignEliminator to UnusedAssignEliminator.
2021-11-23 10:38:36 +01:00
chriseth
25c41546ee
Function reference resolver.
2021-11-04 16:31:18 +01:00
chriseth
dd8f12760b
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
chriseth
9417d6775f
Control flow side-effects for user-defined functions.
2021-10-14 17:46:07 +02:00
Christian Parpart
3f08b2269a
Adds fmtlib as 3rdparty dependency for easier string composition.
2021-10-11 13:35:08 +02:00
Daniel Kirchner
75c3286311
Optimized EVM Code Transform.
2021-09-14 13:37:04 +02:00
Daniel Kirchner
f881409ea4
Stack layout generator for new code generation.
2021-09-02 17:47:19 +02:00
chriseth
3622b30a1d
Refactor RedundantAssignEliminator.
2021-08-13 14:25:14 +02:00
Daniel Kirchner
f3707f2ab0
Control flow graph for Yul.
2021-07-15 15:24:12 +02:00
Daniel Kirchner
cc0169ad68
Function definition collector.
2021-06-28 18:11:57 +02:00
chriseth
fe35512feb
Remove EVMAssembly.
2021-06-08 18:41:22 +02:00
hrkrshnn
39b23420ec
Extracted the class SMT Solver from ReasoningBasedSimplifier
2021-05-06 11:26:26 +02:00
Alex Beregszaszi
176ce4edf7
Split EthAssemblyAdapter from AsmCodeGen
2021-04-27 11:31:15 +01:00
Daniel Kirchner
5bebbca273
Extract VariableReferenceCounter and StackTooDeep error from EVMCodeTransform.
2021-04-13 10:41:16 +02:00
hrkrshnn
22ebdc7438
Implemented FunctionSpecializer
...
Optimiser step that specializes the function with its literal arguments.
2021-03-29 11:02:18 +02:00
Alex Beregszaszi
0425936c8a
Rename AsmScope* to Scope*
2020-12-18 11:55:17 +00:00
chriseth
d75821e068
Merge pull request #10536 from ethereum/fix-createlinkingfunction-to-cpp
...
Move the implementation of createLinkingFunction into a cpp file
2020-12-09 17:49:16 +01:00
hrkrshnn
7ea96c5583
Move the implementation of createLinkingFunction into a cpp file
2020-12-09 11:13:27 +01:00
Alexander Arlt
90623d9507
Fix recompilation of polyfills.
2020-12-08 20:02:25 -05:00
Alex Beregszaszi
7e88ba8da0
Enable the -Wconversion warning
2020-12-08 16:45:24 +00:00
Alex Beregszaszi
a22077f736
Rename AsmData -> AST
...
Also attempt to only include ASTForward where appropriate.
2020-11-25 17:58:02 +00:00
Alexander Arlt
19f764bf65
Split ewasm polyfill functions into different files.
2020-11-17 19:27:44 -05:00
Alex Beregszaszi
1ab6340828
Move AsmJsonImporter from libsolidity to libyul
...
It is next to AsmJsonConverter now and interdependencies are shrunk.
2020-10-29 14:06:34 +00:00
Daniel Kirchner
f4b42d1c72
Add stack limit evader.
2020-09-17 22:13:27 +02:00
chriseth
f73fb726af
Reasoning based optimizer.
2020-09-15 15:57:58 +02:00
chriseth
6101bdf7e2
Name simplifier.
2020-09-10 16:23:29 +02:00
Harikrishnan Mulackal
e2fd41f097
Implemented UnusedFunctionArgumentPruner
2020-09-03 13:15:38 +02:00
chriseth
915cb65106
Collect types together with names.
2020-02-24 15:05:19 +01:00
Gaith Hallak
24d6702986
[Yul] Prune functions that call each other but are otherwise unreferenced
2020-02-11 20:39:32 +03:00
chriseth
123ea0a250
Remove asm flavour.
2020-01-14 17:16:09 +01:00
Christian Parpart
abb9f1eed7
CMake: Renaming devcore static library to solutil (to match source code paths)
2020-01-13 15:52:46 +01:00
Alex Beregszaszi
7effc94f24
Rename EVMToEWasmTranslator to EVMToEwasmTranslator
2019-12-18 16:57:45 +00:00
Alex Beregszaszi
018960ebb1
Rename EWasmObjectCompiler to WasmObjectCompiler
2019-12-18 15:59:31 +00:00
Alex Beregszaszi
cec45a7df5
Rename EWasmCodeTransform to WasmCodeTransform
2019-12-18 15:59:31 +00:00
Alex Beregszaszi
ae7cc58b55
Rename EWasmToText to TextTransform
2019-12-11 12:08:38 +00:00
chriseth
f7fc42d8c3
Merge pull request #7826 from ethereum/develop
...
Merge develop into develop_060
2019-11-28 13:37:19 +01:00
mingchuan
db60d123d0
[YulOpt] Implement loop-invariant code motion
2019-11-28 11:59:29 +01:00
djudjuu
e437443645
Inline assembly to AST json export
2019-11-13 12:13:22 +01:00
chriseth
081845d775
EWasm binary transform.
2019-11-05 19:58:55 +01:00
chriseth
61a2d44f38
Conditional unsimplifier
2019-11-01 14:01:56 +01:00
chriseth
5d6e983be3
Conditional simplifier.
2019-11-01 14:01:56 +01:00
chriseth
9ce1ca2340
Refactor Optimiser Steps Interface.
2019-09-24 14:52:01 +02:00
chriseth
7a79742f3d
Out of body again.
2019-09-17 12:30:15 +02:00
mingchuan
53af4e082e
Callgraph generator.
2019-08-13 12:49:32 +02:00