Commit Graph
412 Commits
Author SHA1 Message Date
Nikola Matić b205fe8494 Merge pull request #13501 from ethereum/document-unused-store-eliminator
Document UnusedStoreEliminator
2022-10-21 07:06:20 -05:00
Nikola Matic 9e505bd128 Document UnusedStoreEliminator
Update comment in header file

Address review comments
2022-10-21 13:19:56 +02:00
Marenz 9e674ba047 Forward declare Instruction enum in EVMVersion 2022-09-29 13:41:58 +02:00
Alex Beregszaszi 0f484ec93b Replace use of boost::algorithm::all_of with ranges::all_of 2022-09-27 03:33:13 +02:00
Nikola Matic e37dc8e975 Address review comments 2022-09-13 17:23:31 +02:00
Nikola Matic 314a1cc92f Command line tests and minor touch ups 2022-09-12 11:13:49 +02:00
Nikola Matic f6f0d6a360 Make hardcoded parts of the optimizer sequence configurable 2022-09-12 10:57:36 +02:00
Daniel KirchnerandKamil Śliwak a33da17300 Bugfix and tests.
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-09-08 11:54:14 +02:00
Marenz f7cc29bec1 Add std:: qualifier to move() calls 2022-08-30 11:12:15 +02:00
Daniel Kirchner e996fe6247 Yul Optimizer: Simplify start offset of zero-length operations. 2022-08-15 15:42:51 +02:00
Leonid Pospelov 32aa000378 Update FullInliner.cpp 2022-08-14 03:14:15 +03:00
chriseth c12d151834 Only analyze memory in DataFlowAnalyzer if it is needed in the optimizer step. 2022-07-11 15:51:25 +02:00
chriseth 51ef6a62da Fix removal of memory stores in inline assembly blocks. 2022-06-10 17:32:28 +02:00
Daniel Kirchner 7168c27f0d Relax inliner heuristics. 2022-05-23 13:37:50 +02:00
Daniel Kirchner 9fa907aac2 Do not remove potentially reverting returndatacopy cases. 2022-05-23 11:01:03 +02:00
a3d4 048b253a93 Refix MSVC Debug crash 2022-04-26 01:52:56 +02:00
a3d4 44093f2ed6 Fix MSVC Debug crash 2022-04-06 01:34:58 +02:00
chriseth a054285f31 Simplify rematerialization candidates. 2022-03-16 16:43:21 +01:00
chriseth 75abe92eb2 Refactor stack compressor. 2022-03-15 21:28:47 +01:00
chriseth 5afa2adec2 Merge pull request #12775 from ethereum/refactorDataFlowAnalyzer
Refactor data flow analyzer state access.
2022-03-15 15:52:40 +01:00
chriseth 28593839d9 Add helper to see if a switch has a default case. 2022-03-15 14:29:54 +01:00
chriseth afdf22f5c7 Create a state struct. 2022-03-14 19:32:33 +01:00
chriseth eab4ca906c Refactor data flow analyzer state access. 2022-03-14 19:32:33 +01:00
Tyler 1c58b91075 Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations 2022-03-10 17:39:29 -05:00
chriseth 4f02be110c Unused store eliminator. 2022-03-10 18:25:28 +01:00
chriseth 6ab31420af Remove unneeded header files. 2022-03-10 09:55:05 +01:00
Tyler 047034544e Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations 2022-03-09 18:55:22 -05:00
Tyler 519e1c9402 Specify namespaces
Fix references into solidity::util
2022-03-08 00:09:17 -05:00
wechman 52dfccca98 Replace all locale-dependent operations with locale-agnostic counterparts 2022-03-07 17:23:08 +01:00
chriseth d118f21417 Merge pull request #12729 from ethereum/splitOutDisassemble
Split out disassemble to remove numeric from instruction includes.
2022-03-02 16:18:17 +01:00
chriseth b0dcd7b915 Split out disassemble to remove numeric from instruction includes. 2022-03-02 15:30:41 +01:00
chriseth 63f0a22c5d Also save and restore the nesting depth. 2022-03-02 13:49:40 +01:00
hrkrshnn 85d1a57e65 Added more tests. Updated chromosome. Remove unused headers. 2022-01-04 13:27:39 +05:30
chriseth 772e100813 Equal store eliminator. 2022-01-03 15:52:05 +01:00
chriseth 0e7a065a78 Enhance documentation. 2021-11-23 14:58:04 +01:00
chriseth bd321b9f1f Rename RedundantAssignEliminator to UnusedAssignEliminator. 2021-11-23 10:38:36 +01:00
Daniel Kirchner 9fb77b139c Keep canonical form of Yul code at all times. 2021-11-09 13:29:10 +01:00
Daniel Kirchner b4f98b41bc Minor fix to forEach on Yul AST nodes. 2021-11-05 13:24:30 +01:00
chriseth 776ae466bc Control flow side effects on non-disambiguated source. 2021-11-04 16:32:11 +01:00
chriseth dd8f12760b Introduce forEach for yul ast nodes. 2021-11-04 16:14:43 +01:00
Daniel Kirchner 95c973d6c2 Refactoring of optimiser suite and yulopti. 2021-11-03 19:33:01 +01:00
Daniel Kirchner 4229369180 Compatibility with StackCompressor and StackLimitEvader. 2021-11-03 12:39:55 +01:00
chriseth d6c461ed61 Use side effects of user-defined functions in other optimizer steps. 2021-11-02 11:59:01 +01:00
chriseth 9417d6775f Control flow side-effects for user-defined functions. 2021-10-14 17:46:07 +02:00
Kamil Śliwak 620ec47efb OptimizerSuite: Rewrite runSequence() with support for nested brackets 2021-10-06 19:15:02 +02:00
Kamil Śliwak 2fb8f1be5b OptimiserSuite: Use string_view instead of string for step sequences 2021-10-06 18:48:41 +02:00
Sreekesh V 79d9d5bf0d Change optimizer sequence validations to allow nested brackets 2021-10-06 18:46:53 +02:00
chriseth 1531863835 Split Common.h into Numeric.h. 2021-09-23 15:27:29 +02:00
chriseth 280ff8cbd4 Use iterateReplacing in StatementRemover. 2021-09-16 15:34:48 +02:00
Daniel Kirchner c499f27a63 Change RematCandidateSelector to not depend on variable name sorting. 2021-09-08 15:41:40 +02:00