Mathias Baumann 
							
						 
					 
					
						
						
						
						
							
						
						
							d0204eef2f 
							
						 
					 
					
						
						
							
							SSAValueTracker should only use nullptr for default values  
						
						
						
					 
					
						2018-12-05 18:01:41 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							32c9da9419 
							
						 
					 
					
						
						
							
							Merge pull request  #5593  from ethereum/issue-5384  
						
						... 
						
						
						
						Fix expression simplifier asserting on default values 
						
					 
					
						2018-12-05 17:58:23 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1e6c368bba 
							
						 
					 
					
						
						
							
							Merge pull request  #5594  from ethereum/fullInlinerNoHoister  
						
						... 
						
						
						
						[Yul] Relax dependency of FullInliner on FunctionHoister. 
						
					 
					
						2018-12-05 12:25:03 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							538d707439 
							
						 
					 
					
						
						
							
							Relax dependency of FullInliner on FunctionHoister.  
						
						
						
					 
					
						2018-12-05 11:53:31 +01:00 
						 
				 
			
				
					
						
							
							
								Mathias Baumann 
							
						 
					 
					
						
						
						
						
							
						
						
							54846ed0a7 
							
						 
					 
					
						
						
							
							Fix expression simplifier asserting on default values  
						
						
						
					 
					
						2018-12-05 11:43:02 +01:00 
						 
				 
			
				
					
						
							
							
								Mathias Baumann 
							
						 
					 
					
						
						
						
						
							
						
						
							6e5160efa0 
							
						 
					 
					
						
						
							
							Relax assertion about jumps in loose mode  
						
						
						
					 
					
						2018-12-05 10:25:59 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8b38cf3ed4 
							
						 
					 
					
						
						
							
							Merge pull request  #5586  from ethereum/refactorEVMAssembly  
						
						... 
						
						
						
						Refactor evm assembly 
						
					 
					
						2018-12-04 15:55:53 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							0ec7a0e72c 
							
						 
					 
					
						
						
							
							Move AsmCodeGen.  
						
						
						
					 
					
						2018-12-04 15:20:23 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							852297fa2f 
							
						 
					 
					
						
						
							
							Builtin functions for yul analysis.  
						
						
						
					 
					
						2018-12-04 14:50:00 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							1746366bb6 
							
						 
					 
					
						
						
							
							Use builtin functions in the yul parser.  
						
						
						
					 
					
						2018-12-04 14:49:16 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8654f8f6d4 
							
						 
					 
					
						
						
							
							Merge pull request  #5573  from ethereum/builtins  
						
						... 
						
						
						
						[Yul] Introduce the concept of builtin functions. 
						
					 
					
						2018-12-04 14:11:49 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							1b8a013d4a 
							
						 
					 
					
						
						
							
							Properly recurse in ForLoopInitRewriter  
						
						
						
					 
					
						2018-12-04 13:36:25 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							99db4e3ff4 
							
						 
					 
					
						
						
							
							Introduce the concept of builtin functions.  
						
						
						
					 
					
						2018-12-04 12:06:33 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							d829794737 
							
						 
					 
					
						
						
							
							Improve yul error messages around number of arguments and variables.  
						
						
						
					 
					
						2018-12-04 11:37:03 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							e5582ffea0 
							
						 
					 
					
						
						
							
							Use YulString also in expectAsmIdentifier.  
						
						
						
					 
					
						2018-12-03 17:54:25 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c48a5264be 
							
						 
					 
					
						
						
							
							liblangutil: SourceLocation: adds (shared) pointer to underlying CharStream source, eliminating sourceName  
						
						... 
						
						
						
						Also, adapted affecting code to those changes. 
						
					 
					
						2018-11-30 17:07:12 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							e016cb99e6 
							
						 
					 
					
						
						
							
							Yul objects.  
						
						
						
					 
					
						2018-11-27 15:59:57 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							8dd0338d12 
							
						 
					 
					
						
						
							
							Remove superfluous libyul/ASTDataForward.h and include libyul/AsmDataForward directly instead.  
						
						
						
					 
					
						2018-11-23 14:29:05 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ec47c8946b 
							
						 
					 
					
						
						
							
							Isolating libyul library API into its own namespace yul.  
						
						
						
					 
					
						2018-11-23 14:29:00 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							3734f40d31 
							
						 
					 
					
						
						
							
							CMake: Isolate libyul into its own static library  
						
						
						
					 
					
						2018-11-23 12:37:37 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							713d94476e 
							
						 
					 
					
						
						
							
							Reorder some include files and group <libyul/>'s together (as much as possible)  
						
						
						
					 
					
						2018-11-23 12:37:19 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0f4ed52a71 
							
						 
					 
					
						
						
							
							Rewrite header paths to adapt to recent git mv of libsolidity/inlineasm to libyul  
						
						
						
					 
					
						2018-11-23 11:18:57 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							10e6d2897d 
							
						 
					 
					
						
						
							
							Moving files from libsolidity/inlineasm/*.{cpp,h} to libyul/.  
						
						
						
					 
					
						2018-11-23 11:16:52 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							d67322a186 
							
						 
					 
					
						
						
							
							Introduce namespace langutil in liblangutil directory.  
						
						... 
						
						
						
						Also:
- Use {}-style list initialisation for SourceLocation construction
- Introduce new system includes
- Changes the API of the Scanner to take source as value (with move) as opposed to as a reference 
						
					 
					
						2018-11-21 19:13:44 +00:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							87821c53c3 
							
						 
					 
					
						
						
							
							Isolating files shared between Yul- and Solidity language frontend.  
						
						
						
					 
					
						2018-11-21 18:58:12 +00:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c9ee30294c 
							
						 
					 
					
						
						
							
							Merge pull request  #5444  from Mordax/issue-5168-rmvirtual  
						
						... 
						
						
						
						Removing redundant virtual from override function declaration 
						
					 
					
						2018-11-21 15:16:08 +00:00 
						 
				 
			
				
					
						
							
							
								mordax 
							
						 
					 
					
						
						
						
						
							
						
						
							ea8b7d803e 
							
						 
					 
					
						
						
							
							Removing redundant virtual from override function declaration  
						
						... 
						
						
						
						Remove trailing whitespace
Remove changelog change 
						
					 
					
						2018-11-21 14:37:32 +00: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 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							9c6048b0b8 
							
						 
					 
					
						
						
							
							Merge pull request  #5333  from ethereum/joinPerformance  
						
						... 
						
						
						
						[Yul] Use map join algorithm for performance. 
						
					 
					
						2018-11-13 12:15:11 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							74557ceb0e 
							
						 
					 
					
						
						
							
							Deterministic YulStringRepository using string hashes.  
						
						
						
					 
					
						2018-11-12 23:43:16 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							b1454433b2 
							
						 
					 
					
						
						
							
							Remove variables that go out of scope from data structure.  
						
						
						
					 
					
						2018-11-12 23:00:37 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							faa7b61d76 
							
						 
					 
					
						
						
							
							Use map join algorithm for performance.  
						
						
						
					 
					
						2018-11-12 23:00:37 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							0f2ba3522f 
							
						 
					 
					
						
						
							
							Reset yul string repository.  
						
						
						
					 
					
						2018-11-09 15:40:36 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							fa44d20721 
							
						 
					 
					
						
						
							
							Remove side-effect-free statements.  
						
						
						
					 
					
						2018-11-08 18:14:36 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							cd11f7cfac 
							
						 
					 
					
						
						
							
							Merge pull request  #5325  from ethereum/fixDataFlow  
						
						... 
						
						
						
						[Yul] Fix data flow analyzer for function definitions. 
						
					 
					
						2018-11-08 12:52:51 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b801e61611 
							
						 
					 
					
						
						
							
							Merge pull request  #5365  from ethereum/improveNameDispenser  
						
						... 
						
						
						
						[Yul] Use single counter for name dispenser for performance reasons. 
						
					 
					
						2018-11-08 12:24:21 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							37766ee8e4 
							
						 
					 
					
						
						
							
							Add VarDeclPropagator to full suite and interactive optimizer.  
						
						
						
					 
					
						2018-11-07 23:19:42 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							845899e305 
							
						 
					 
					
						
						
							
							Use single counter for name dispenser for performance reasons.  
						
						
						
					 
					
						2018-11-07 23:09:33 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							b2b11eaa00 
							
						 
					 
					
						
						
							
							Fix data flow analyzer for function definitions.  
						
						
						
					 
					
						2018-11-07 20:32:55 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							674e17c2a8 
							
						 
					 
					
						
						
							
							Performance: Replace string by special single-copy YulString class.  
						
						
						
					 
					
						2018-11-07 19:30:27 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ab0de38f16 
							
						 
					 
					
						
						
							
							Eliminate byte-typedef and use uint8_t in all their places instead.  
						
						... 
						
						
						
						This change is made to (easily) be forward compatible with future C++
standards, in order to allow compiling the code with newer standards at
some point in the future.
* Removed the `using byte = uint8_t;` line from Common.h
* Mechanically change all uses of `byte` to `uint8_t`.
Tested with GCC 7.3 in C++11/14/17 modes :-) 
						
					 
					
						2018-11-07 12:17:57 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							acf92930ba 
							
						 
					 
					
						
						
							
							Merge pull request  #5247  from ethereum/yul-vardecl-propagation  
						
						... 
						
						
						
						Yul: Implements empty-var-decl-propagation 
						
					 
					
						2018-10-28 20:46:34 +01:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							1264290d57 
							
						 
					 
					
						
						
							
							[Yul] ExpressionJoiner: code cleanup  
						
						... 
						
						
						
						* ensure public API is only containing `run(Block&)`, all the rest is private API / implementation details
* adding some comments to class data members to quicker understand their meaning
* eliminate unnecessary `operator()(If&)` as it's not changing default behaviour of `ASTModifier`
* simplify readability of `visit(Expression&)`'s impl, also moving assert's into "isLatestStatementVarDeclOf", as this one is already ensuring exactly that.
* ctor impl's use of ReferenceCounter use shortened.
* renamed and improved `isLatestStatementVarDeclOf` to better match its meaning (especially since it's only used once) 
						
					 
					
						2018-10-26 13:53:37 +02:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f08ab77249 
							
						 
					 
					
						
						
							
							Yul: Implements empty-var-decl-propagation  
						
						
						
					 
					
						2018-10-26 13:13:57 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f714b0dd7c 
							
						 
					 
					
						
						
							
							Merge pull request  #5242  from ethereum/someChecks  
						
						... 
						
						
						
						Some well-formedness checks for the Yul AST. 
						
					 
					
						2018-10-25 12:44:28 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							60f1d52f59 
							
						 
					 
					
						
						
							
							Full suite tests.  
						
						
						
					 
					
						2018-10-24 18:02:08 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							b3911798b3 
							
						 
					 
					
						
						
							
							Redundant assign eliminator.  
						
						
						
					 
					
						2018-10-24 13:24:25 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							19be6cd818 
							
						 
					 
					
						
						
							
							Some well-formedness checks for the Yul AST.  
						
						
						
					 
					
						2018-10-22 15:52:26 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c676b009e1 
							
						 
					 
					
						
						
							
							Merge pull request  #5267  from ethereum/ssatransform  
						
						... 
						
						
						
						SSA transform - first step. 
						
					 
					
						2018-10-19 11:10:08 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7dffb0f3ee 
							
						 
					 
					
						
						
							
							Merge pull request  #5270  from ethereum/inlineFlexible  
						
						... 
						
						
						
						Make full inliner more flexible. 
						
					 
					
						2018-10-18 19:02:04 +02:00