Alexander Arlt 
							
						 
					 
					
						
						
						
						
							
						
						
							c5673278a7 
							
						 
					 
					
						
						
							
							Remove EWASM backend.  
						
						
						
					 
					
						2023-05-11 10:56:55 -05:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							fac5666dc9 
							
						 
					 
					
						
						
							
							Re-implement unused assign / unused store eliminator.  
						
						
						
					 
					
						2023-03-20 13:49:37 +01:00 
						 
				 
			
				
					
						
							
							
								Bhargava Shastry 
							
						 
					 
					
						
						
						
						
							
						
						
							5c6e12b2c0 
							
						 
					 
					
						
						
							
							Update existing and add new test cases.  
						
						
						
					 
					
						2023-02-02 11:40:39 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							79c52b3c9e 
							
						 
					 
					
						
						
							
							Re-use knowledge about keccak calls.  
						
						... 
						
						
						
						Re-use knowledge about keccak calls.
Update gas cost.
More tests.
Fix bug.
Update libyul/optimiser/DataFlowAnalyzer.cpp
Remove util prefixes
fix test
More test cases.
Add Changelog entry 
						
					 
					
						2022-12-07 14:16:13 +01:00 
						 
				 
			
				
					
						
							
							
								nishant-sachdeva 
							
						 
					 
					
						
						
						
						
							
						
						
							efbd3666a7 
							
						 
					 
					
						
						
							
							added optimization. shl comes out from being distributed over and  
						
						
						
					 
					
						2022-11-11 01:16:14 +05:30 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							cffacac9de 
							
						 
					 
					
						
						
							
							Hash number literals according to their value instead of their string representation.  
						
						
						
					 
					
						2022-11-08 20:34:10 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							a33da17300 
							
						 
					 
					
						
						
							
							Bugfix and tests.  
						
						... 
						
						
						
						Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it> 
						
					 
					
						2022-09-08 11:54:14 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							d5e2925326 
							
						 
					 
					
						
						
							
							broken yul optimizer test  
						
						
						
					 
					
						2022-09-07 16:49:58 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							e996fe6247 
							
						 
					 
					
						
						
							
							Yul Optimizer: Simplify start offset of zero-length operations.  
						
						
						
					 
					
						2022-08-15 15:42:51 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Lupu 
							
						 
					 
					
						
						
						
						
							
						
						
							8c5f5c7db0 
							
						 
					 
					
						
						
							
							add rules for mod(mul(X, Y), A) & mod(add(X, Y), A)  
						
						
						
					 
					
						2022-06-22 09:26:09 +02:00 
						 
				 
			
				
					
						
							
							
								Kamil Śliwak 
							
						 
					 
					
						
						
						
						
							
						
						
							f08d349791 
							
						 
					 
					
						
						
							
							Separate some inlining tests into pre- and post-homestead  
						
						
						
					 
					
						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 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							75abe92eb2 
							
						 
					 
					
						
						
							
							Refactor stack compressor.  
						
						
						
					 
					
						2022-03-15 21:28:47 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							4f02be110c 
							
						 
					 
					
						
						
							
							Unused store eliminator.  
						
						
						
					 
					
						2022-03-10 18:25:28 +01:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							85d1a57e65 
							
						 
					 
					
						
						
							
							Added more tests. Updated chromosome. Remove unused headers.  
						
						
						
					 
					
						2022-01-04 13:27:39 +05:30 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							e7fc2a176a 
							
						 
					 
					
						
						
							
							Test updates.  
						
						
						
					 
					
						2022-01-03 15:52:05 +01:00 
						 
				 
			
				
					
						
							
							
								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 
							
						 
					 
					
						
						
						
						
							
						
						
							10618188dd 
							
						 
					 
					
						
						
							
							Update tests.  
						
						
						
					 
					
						2021-11-09 14:34:05 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							1a0605c594 
							
						 
					 
					
						
						
							
							Update tests.  
						
						
						
					 
					
						2021-11-03 12:39:55 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							7f7c5ca171 
							
						 
					 
					
						
						
							
							New tests.  
						
						
						
					 
					
						2021-11-02 11:59:01 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							3996d0a343 
							
						 
					 
					
						
						
							
							Update tests.  
						
						
						
					 
					
						2021-11-02 11:59:01 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							95dbbdae22 
							
						 
					 
					
						
						
							
							Prepare tests to be meaningful.  
						
						
						
					 
					
						2021-10-13 17:56:43 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							c499f27a63 
							
						 
					 
					
						
						
							
							Change RematCandidateSelector to not depend on variable name sorting.  
						
						
						
					 
					
						2021-09-08 15:41:40 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							2cdd3b2081 
							
						 
					 
					
						
						
							
							Resolving Keccak-256: check if arguments are identifiers early.  
						
						... 
						
						
						
						Previously, the check on whether the optimization was useful gas wise was done before checking if
the keccak256 opcode had identifier as arguments. Since the gas meter crashes when encountering
certain Yul opcodes (create, dataoffset, etc.), this optimizer step crashed. 
						
					 
					
						2021-09-06 13:48:07 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							4480662a58 
							
						 
					 
					
						
						
							
							Test.  
						
						
						
					 
					
						2021-08-16 18:54:33 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							c341445f8e 
							
						 
					 
					
						
						
							
							Maintain disambiguation when generating new functions in StackToMemoryMover.  
						
						
						
					 
					
						2021-06-28 18:11:57 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							dfce7b667d 
							
						 
					 
					
						
						
							
							Move function arguments and return values.  
						
						
						
					 
					
						2021-06-28 18:11:57 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							284e8a103f 
							
						 
					 
					
						
						
							
							Remove potentially non-deterministic test case.  
						
						
						
					 
					
						2021-06-09 14:42:16 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							8b4eaeabbf 
							
						 
					 
					
						
						
							
							Added a few optimizer tests for Verbatim  
						
						
						
					 
					
						2021-04-28 09:56:45 +02:00 
						 
				 
			
				
					
						
							
							
								Harikrishnan Mulackal 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f162c484ca 
							
						 
					 
					
						
						
							
							Merge pull request  #11026  from ethereum/resolve-keccak  
						
						... 
						
						
						
						Evaluate ``keccak256(a, const)``, when the value at memory location ``a`` is known at compile time and ``const <= 32`` 
						
					 
					
						2021-04-22 19:18:19 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							b599235b8d 
							
						 
					 
					
						
						
							
							Skip resolving Keccak if AST contains msize.  
						
						... 
						
						
						
						Also a refactoring changing `m_optimizeMLoad` to `m_containsMSize`. 
						
					 
					
						2021-04-22 18:19:47 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							221292c278 
							
						 
					 
					
						
						
							
							Tests and changelog  
						
						
						
					 
					
						2021-04-22 18:19:47 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							a6a3af58a0 
							
						 
					 
					
						
						
							
							Add test.  
						
						
						
					 
					
						2021-04-22 17:23:56 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							00fb2d390b 
							
						 
					 
					
						
						
							
							Do not replace zeros by return variable.  
						
						
						
					 
					
						2021-04-22 16:54:02 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							0100f48e05 
							
						 
					 
					
						
						
							
							FunctionSpecializer: skip specializing recursive functions  
						
						... 
						
						
						
						This avoids potential pathological behaviour, like in Ackermann function. 
						
					 
					
						2021-03-29 11:02:31 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							2c75d1dfe4 
							
						 
					 
					
						
						
							
							Isoltest gas update for FunctionSpecializer  
						
						
						
					 
					
						2021-03-29 11:02:31 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							09998ceb0c 
							
						 
					 
					
						
						
							
							Tests for FunctionSpecializer  
						
						
						
					 
					
						2021-03-29 11:02:18 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							2c8540b1f9 
							
						 
					 
					
						
						
							
							Yul optimizer test updates.  
						
						
						
					 
					
						2021-03-18 08:42:49 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							40c27ccc22 
							
						 
					 
					
						
						
							
							Move AND with constant inside OR.  
						
						
						
					 
					
						2021-03-09 15:26:19 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							612d8184d1 
							
						 
					 
					
						
						
							
							Update tests.  
						
						
						
					 
					
						2021-02-16 15:50:48 +01:00 
						 
				 
			
				
					
						
							
							
								Leonardo Alt 
							
						 
					 
					
						
						
						
						
							
						
						
							40221a90c4 
							
						 
					 
					
						
						
							
							Update smtCheckerTests for z3 4.8.10  
						
						
						
					 
					
						2021-01-26 10:18:52 +01:00 
						 
				 
			
				
					
						
							
							
								Bhargava Shastry 
							
						 
					 
					
						
						
						
						
							
						
						
							02b28b42e8 
							
						 
					 
					
						
						
							
							Remove fuzzer mode from yul optimizer unit test framework.  
						
						
						
					 
					
						2021-01-18 10:27:58 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							308549f950 
							
						 
					 
					
						
						
							
							Simplify test and add Changelog entry.  
						
						
						
					 
					
						2021-01-06 11:33:08 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							d46da8e53c 
							
						 
					 
					
						
						
							
							Optimize iszero(sub(x, y)) to eq(x, y).  
						
						
						
					 
					
						2020-12-22 15:11:48 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							f7a7e2928b 
							
						 
					 
					
						
						
							
							New test.  
						
						
						
					 
					
						2020-12-10 18:35:13 +01: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 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							48f620fb50 
							
						 
					 
					
						
						
							
							Reverse the order of the memory offsets assigned to variables.  
						
						
						
					 
					
						2020-09-17 22:13:27 +02:00