..
ASTCopier.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
ASTCopier.h
Added a helper class FunctionCopier in ASTCopier
2021-03-29 11:02:18 +02:00
ASTWalker.cpp
Replaced keys, values and reverse with ranges
2021-03-31 23:33:04 +05:30
ASTWalker.h
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
BlockFlattener.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
BlockFlattener.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
BlockHasher.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
BlockHasher.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
CallGraphGenerator.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
CallGraphGenerator.h
Implement cxx20 polyfill and replace InvertibleMap entirely.
2021-01-12 21:40:40 +01:00
CircularReferencesPruner.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
CircularReferencesPruner.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
CommonSubexpressionEliminator.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
CommonSubexpressionEliminator.h
Add test.
2021-04-22 17:23:56 +02:00
ConditionalSimplifier.cpp
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
ConditionalSimplifier.h
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
ConditionalUnsimplifier.cpp
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
ConditionalUnsimplifier.h
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
ControlFlowSimplifier.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
ControlFlowSimplifier.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
DataFlowAnalyzer.cpp
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
DataFlowAnalyzer.h
Evaluate keccak(a, const)
if value at memory location a
is known
2021-04-22 18:19:47 +02:00
DeadCodeEliminator.cpp
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
DeadCodeEliminator.h
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
Disambiguator.cpp
Rename AsmScope* to Scope*
2020-12-18 11:55:17 +00:00
Disambiguator.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
EquivalentFunctionCombiner.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
EquivalentFunctionCombiner.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
EquivalentFunctionDetector.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
EquivalentFunctionDetector.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ExpressionInliner.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ExpressionInliner.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ExpressionJoiner.cpp
Split Common.h into Numeric.h.
2021-09-23 15:27:29 +02:00
ExpressionJoiner.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ExpressionSimplifier.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
ExpressionSimplifier.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ExpressionSplitter.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
ExpressionSplitter.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ForLoopConditionIntoBody.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
ForLoopConditionIntoBody.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
ForLoopConditionOutOfBody.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
ForLoopConditionOutOfBody.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
ForLoopInitRewriter.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
ForLoopInitRewriter.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
FullInliner.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
FullInliner.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
FunctionCallFinder.cpp
Enable more C++ compiler warnings
2020-12-10 21:03:58 +00:00
FunctionCallFinder.h
Add stack limit evader.
2020-09-17 22:13:27 +02:00
FunctionGrouper.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
FunctionGrouper.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
FunctionHoister.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
FunctionHoister.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
FunctionSpecializer.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
FunctionSpecializer.h
FunctionSpecializer: skip specializing recursive functions
2021-03-29 11:02:31 +02:00
InlinableExpressionFunctionFinder.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
InlinableExpressionFunctionFinder.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
KnowledgeBase.cpp
Fix recursion protection.
2021-08-19 12:51:54 +02:00
KnowledgeBase.h
Split Common.h into Numeric.h.
2021-09-23 15:27:29 +02:00
LoadResolver.cpp
Resolving Keccak-256: check if arguments are identifiers early.
2021-09-06 13:48:07 +02:00
LoadResolver.h
Skip resolving Keccak if AST contains msize.
2021-04-22 18:19:47 +02:00
LoopInvariantCodeMotion.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
LoopInvariantCodeMotion.h
Extended LoopInvariantCodeMotion for storage and state
2020-08-19 12:41:29 +02:00
MainFunction.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
MainFunction.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
Metrics.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
Metrics.h
Adjust cost of literal zero.
2021-04-22 11:42:42 +02:00
NameCollector.cpp
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
NameCollector.h
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
NameDispenser.cpp
Merge pull request #10419 from ethereum/bug-namesimplifier
2020-12-03 17:52:40 +01:00
NameDispenser.h
Merge pull request #10419 from ethereum/bug-namesimplifier
2020-12-03 17:52:40 +01:00
NameDisplacer.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
NameDisplacer.h
Implemented UnusedFunctionArgumentPruner
2020-09-03 13:15:38 +02:00
NameSimplifier.cpp
Refined cleanup.
2021-02-16 14:20:27 +01:00
NameSimplifier.h
Merge pull request #10419 from ethereum/bug-namesimplifier
2020-12-03 17:52:40 +01:00
OptimiserStep.h
Optimizer context has parameter expectedExecutionsPerDeployment
2021-04-22 17:27:57 +02:00
OptimizerUtilities.cpp
Merge pull request #11311 from anurag-git/issue_10738-3
2021-04-26 14:18:15 +02:00
OptimizerUtilities.h
Add toEVMInstruction helper
2021-04-23 22:56:50 +01:00
README.md
DOCS: update optimizer docs, harmonize spelling and add Yul-based optimizer module
2021-05-04 17:37:02 +02:00
ReasoningBasedSimplifier.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
ReasoningBasedSimplifier.h
Extracted the class SMT Solver from ReasoningBasedSimplifier
2021-05-06 11:26:26 +02:00
RedundantAssignEliminator.cpp
Refactor RedundantAssignEliminator.
2021-08-13 14:25:14 +02:00
RedundantAssignEliminator.h
Refactor RedundantAssignEliminator.
2021-08-13 14:25:14 +02:00
RedundantStoreBase.cpp
Use iterateReplacing in StatementRemover.
2021-09-16 15:34:48 +02:00
RedundantStoreBase.h
Refactor RedundantAssignEliminator.
2021-08-13 14:25:14 +02:00
Rematerialiser.cpp
Allow the Rematerializer to be restricted to an exact set of variables.
2021-09-03 15:29:51 +02:00
Rematerialiser.h
Allow the Rematerializer to be restricted to an exact set of variables.
2021-09-03 15:29:51 +02:00
Semantics.cpp
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
Semantics.h
Use side effects of user-defined functions in other optimizer steps.
2021-11-02 11:59:01 +01:00
SimplificationRules.cpp
Split Common.h into Numeric.h.
2021-09-23 15:27:29 +02:00
SimplificationRules.h
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
SMTSolver.cpp
Extracted the class SMT Solver from ReasoningBasedSimplifier
2021-05-06 11:26:26 +02:00
SMTSolver.h
Extracted the class SMT Solver from ReasoningBasedSimplifier
2021-05-06 11:26:26 +02:00
SSAReverser.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
SSAReverser.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
SSATransform.cpp
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
SSATransform.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
SSAValueTracker.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
SSAValueTracker.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
StackCompressor.cpp
Compatibility with StackCompressor and StackLimitEvader.
2021-11-03 12:39:55 +01:00
StackCompressor.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
StackLimitEvader.cpp
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
StackLimitEvader.h
Compatibility with StackCompressor and StackLimitEvader.
2021-11-03 12:39:55 +01:00
StackToMemoryMover.cpp
Introduce forEach for yul ast nodes.
2021-11-04 16:14:43 +01:00
StackToMemoryMover.h
Split Common.h into Numeric.h.
2021-09-23 15:27:29 +02:00
StructuralSimplifier.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
StructuralSimplifier.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
Substitution.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
Substitution.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
Suite.cpp
Refactoring of optimiser suite and yulopti.
2021-11-03 19:33:01 +01:00
Suite.h
Refactoring of optimiser suite and yulopti.
2021-11-03 19:33:01 +01:00
SyntacticalEquality.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
SyntacticalEquality.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
TypeInfo.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
TypeInfo.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
UnusedFunctionParameterPruner.cpp
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
UnusedFunctionParameterPruner.h
Implemented UnusedFunctionArgumentPruner
2020-09-03 13:15:38 +02:00
UnusedFunctionsCommon.cpp
Remove unneeded include files
2021-06-07 12:53:18 -04:00
UnusedFunctionsCommon.h
Move filter to CommonData.h
2020-12-09 11:13:27 +01:00
UnusedPruner.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
UnusedPruner.h
Add SPDX license identifier if not present already in source file
2020-07-17 20:24:12 +05:30
VarDeclInitializer.cpp
Refactoring yul source locations.
2021-05-04 16:05:23 +02:00
VarDeclInitializer.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00
VarNameCleaner.cpp
Split Common.h into Numeric.h.
2021-09-23 15:27:29 +02:00
VarNameCleaner.h
Rename AsmData -> AST
2020-11-25 17:58:02 +00:00