| 
							
							
								 fnatic | 5b6ed7a97c | Removing scope rules for pre block in 'For Loops' | 2019-04-17 05:58:40 +05:30 |  | 
			
				
					| 
							
							
								 chriseth | fb06451f45 | Add assertion that DeadCodeEliminator needs ForLoopInitRewriter. | 2019-04-15 23:26:56 +02:00 |  | 
			
				
					| 
							
							
								 mingchuan | d49733dfc3 | Fix variable decl scope issue in DeadCodeEliminator FoorLoopInitRewriter needs to be run before DeadCodeEliminator. | 2019-04-10 19:00:29 +08:00 |  | 
			
				
					| 
							
							
								 chriseth | d20b3c9f9f | Function grouper is a requirement for the VarNameCleaner. | 2019-04-05 13:41:38 +02:00 |  | 
			
				
					| 
							
							
								 chriseth | 887112b1b0 | Fix SSA for multi-assignments. | 2019-04-04 12:06:04 +02:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | d46f29e128 | Add bitshift optimizer tests | 2019-04-03 22:38:31 +02:00 |  | 
			
				
					| 
							
							
								 chriseth | e3d7a34c2c | Make yul a setting. | 2019-04-03 14:58:20 +02:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | e20acf5d0a | Yul Optimizer: Remove dead code | 2019-04-01 17:16:04 +02:00 |  | 
			
				
					| 
							
							
								 chriseth | 91f96c299e | More logic about control flow with continue and about finalize. Remove BlockScope. | 2019-03-27 22:16:31 +01:00 |  | 
			
				
					| 
							
							
								 Christian Parpart | a1ec49409d | Yul] RedundantAssignEliminator: Implements break/continue handling within ForLoop. | 2019-03-26 17:36:43 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 57f99247c8 | Update tests. | 2019-03-20 15:07:05 +01:00 |  | 
			
				
					| 
							
							
								 Christian Parpart | 82ced641e5 | [Yul] Adds another test case for multiple continue statements within a for-loop | 2019-03-18 12:43:20 +01:00 |  | 
			
				
					| 
							
							
								 Christian Parpart | 57bcb8ba83 | [yul] Ensures DataFlowAnalyzer works fine with break/continue statements just like without. | 2019-03-14 16:18:45 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 791fde953d | First simplify switch with known constant expression. | 2019-03-06 21:32:55 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 21115f8050 | Fix visitation order bug for structural simplifier. | 2019-03-06 19:34:07 +01:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | 21322dae29 | YulOpt: Remove empty cases | 2019-03-06 19:02:23 +01:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | 3ce7069766 | YulOpt: Remove empty cases | 2019-03-06 18:39:44 +01:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | f6e09d6368 | YulOpt: Extend StructuralSimplifier to work with all types | 2019-03-05 18:39:27 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 3f784d6e00 | Do not prepend function name to all variables when inlining. | 2019-03-04 18:07:00 +01:00 |  | 
			
				
					| 
							
							
								 Christian Parpart | 609855546e | Yul: Adds optimizer pass to make variable names suffix-canonical. | 2019-03-04 17:26:56 +01:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | c686a65876 | Yul Optimizer: reduce switches with const arguments | 2019-02-28 15:43:10 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 477c53a46f | Fix expression simplifying by moving from SSAValueTracker to DataFlowAnalyzer as a base. | 2019-02-27 16:14:39 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 83083d2208 | Stack compressor. | 2019-02-11 15:48:29 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 5a34743d88 | Allow optimizer steps to run on FunctionDefinition and group suite. | 2019-02-11 15:48:29 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 12e2187661 | Some tuning. | 2019-01-24 23:06:01 +01:00 |  | 
			
				
					| 
							
							
								 Daniel Kirchner | 29f66b2674 | Stabilize SSAReverser. | 2019-01-17 21:05:32 +01:00 |  | 
			
				
					| 
							
							
								 Daniel Kirchner | fd16585724 | Undo second SSA transformation and add more tests. | 2019-01-17 20:37:43 +01:00 |  | 
			
				
					| 
							
							
								 Daniel Kirchner | 6de2d92f20 | Add SSAReverser to the yul optimiser. | 2019-01-17 20:37:43 +01:00 |  | 
			
				
					| 
							
							
								 Daniel Kirchner | 81f24f24e6 | Add equivalent function combiner as Yul optimizer step. | 2019-01-15 17:21:03 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | b7ef850955 | Update tests. | 2019-01-09 16:57:33 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 9244b8ea5a | More code for optimizer tuning. | 2019-01-08 18:07:14 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 5b8b016fae | Use the block flattener. | 2019-01-08 16:02:14 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 884d51c1f2 | Merge pull request #5759 from ethereum/anotherBigTest Another ABI test case for the optimizer. | 2019-01-08 16:01:41 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 2d19903d1a | Another ABI test case for the optimizer. | 2019-01-08 15:14:45 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | f5b24a38b8 | Make function grouper idempotent. | 2019-01-08 15:05:09 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 6414d63906 | Merge pull request #5716 from ethereum/fixDataSizeOffset Fix data size offset and properly provide builtins. | 2019-01-08 00:07:42 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | ace601b8f6 | Tests. | 2019-01-07 17:23:38 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | b604b87272 | Add AZTEK code as test. | 2019-01-07 16:23:35 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 2e9c70add0 | Use rematerializer if variable is unreferenced or value is "cheap". | 2019-01-07 14:03:32 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | bc22a25a60 | Remove VarDeclPropagator. | 2018-12-13 16:51:10 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 6c6a53a439 | Do not create unassigned variables. | 2018-12-13 16:51:10 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 11209ec48a | Add variable declaration initializer. | 2018-12-13 16:49:04 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | b11d413720 | Consider return variables to be zero initially. | 2018-12-13 16:02:30 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 60a368244a | Do not inline into already big functions. | 2018-12-13 12:12:54 +01:00 |  | 
			
				
					| 
							
							
								 chriseth | 9557dd7e74 | Support unassigned variables in the SSA value tracker and the data flow analyzer. | 2018-12-12 18:06:28 +01:00 |  | 
			
				
					| 
							
							
								 Daniel Kirchner | 1eb60cbb39 | Add structural simplifier as optimization step for Yul. | 2018-12-06 18:37:35 +01:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | f4e9c70ecc | Tests for SSAValueTracker ignoring function call on rhs | 2018-12-05 18:01:41 +01:00 |  | 
			
				
					| 
							
							
								 Mathias Baumann | 5d31ad2daf | Test for unhandled default values in expression simplifier | 2018-12-05 11:43:02 +01:00 |  | 
			
				
					| 
							
							
								 Daniel Kirchner | 1b8a013d4a | Properly recurse in ForLoopInitRewriter | 2018-12-04 13:36:25 +01:00 |  | 
			
				
					| 
							
							
								 Christian Parpart | f705a45d43 | [Yul] Implements a pass to rewrite for-loop's pre block into the parent's Block. | 2018-11-16 13:15:41 +01:00 |  |