Jun Zhang 
							
						 
					 
					
						
						
						
						
							
						
						
							1ebdab43d8 
							
						 
					 
					
						
						
							
							Purge using namespace std from libyul/backends  
						
						... 
						
						
						
						Signed-off-by: Jun Zhang <jun@junz.org> 
						
					 
					
						2023-08-24 11:12:52 +08:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							aa01223398 
							
						 
					 
					
						
						
							
							Account for unassigned return variables in stack layout generation.  
						
						
						
					 
					
						2023-06-14 11:43:46 +02:00 
						 
				 
			
				
					
						
							
							
								Vectorized 
							
						 
					 
					
						
						
						
						
							
						
						
							050927b026 
							
						 
					 
					
						
						
							
							Optimize multiplicity map  
						
						
						
					 
					
						2023-05-08 14:01:47 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							3458da9df3 
							
						 
					 
					
						
						
							
							Emit PUSH0 as junk in evm code transform, if available.  
						
						
						
					 
					
						2023-04-17 16:26:07 +02:00 
						 
				 
			
				
					
						
							
							
								Rodrigo Q. Saramago 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ef6ff2f055 
							
						 
					 
					
						
						
							
							Adds support for the EVM version "Paris".  
						
						... 
						
						
						
						Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399 ).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org> 
						
					 
					
						2023-01-23 18:50:36 +00:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							826ada0b96 
							
						 
					 
					
						
						
							
							Merge pull request  #13705  from ethereum/onlyCountVariables  
						
						... 
						
						
						
						Only count variables if only variables are needed. 
						
					 
					
						2022-11-25 14:20:07 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							bf26d3be5a 
							
						 
					 
					
						
						
							
							Add experimental EOF options for CLI and Standard JSON.  
						
						... 
						
						
						
						Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it> 
						
					 
					
						2022-11-23 19:53:44 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							5ba8c109f4 
							
						 
					 
					
						
						
							
							Use side-effects of user defined functions in evm code transform.  
						
						
						
					 
					
						2022-11-14 21:26:36 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							f1febf69d0 
							
						 
					 
					
						
						
							
							Only count variables if only variables are needed.  
						
						
						
					 
					
						2022-11-14 10:24:28 +01:00 
						 
				 
			
				
					
						
							
							
								Marenz 
							
						 
					 
					
						
						
						
						
							
						
						
							9e674ba047 
							
						 
					 
					
						
						
							
							Forward declare Instruction enum in EVMVersion  
						
						
						
					 
					
						2022-09-29 13:41:58 +02:00 
						 
				 
			
				
					
						
							
							
								Nikola Matic 
							
						 
					 
					
						
						
						
						
							
						
						
							1f6a299062 
							
						 
					 
					
						
						
							
							Add a check for unqualified move  
						
						
						
					 
					
						2022-09-05 16:05:14 +02:00 
						 
				 
			
				
					
						
							
							
								Marenz 
							
						 
					 
					
						
						
						
						
							
						
						
							f7cc29bec1 
							
						 
					 
					
						
						
							
							Add std:: qualifier to move() calls  
						
						
						
					 
					
						2022-08-30 11:12:15 +02:00 
						 
				 
			
				
					
						
							
							
								Marenz 
							
						 
					 
					
						
						
						
						
							
						
						
							f508494f52 
							
						 
					 
					
						
						
							
							Fix undefined order of evaluation  
						
						
						
					 
					
						2022-08-29 15:33:25 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							0b2a670a94 
							
						 
					 
					
						
						
							
							Improved stack too deep message when compiled without --optimize  
						
						
						
					 
					
						2022-07-03 14:03:00 +02:00 
						 
				 
			
				
					
						
							
							
								Kamil Śliwak 
							
						 
					 
					
						
						
						
						
							
						
						
							539e139555 
							
						 
					 
					
						
						
							
							Add explicit throws after some assertions to work around a spurious warning in GCC 12.1  
						
						
						
					 
					
						2022-06-01 20:37:48 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							5ae17c8e65 
							
						 
					 
					
						
						
							
							Recommend via-ir whenever a stack too deep error is encountered.  
						
						
						
					 
					
						2022-05-05 19:22:03 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							5cd98006d4 
							
						 
					 
					
						
						
							
							Fill in junk in stack layouts on terminating control flow paths.  
						
						
						
					 
					
						2022-03-15 18:36:55 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							9410e125da 
							
						 
					 
					
						
						
							
							Change memory-safe assembly annotation suggestion during stack too deep errors.  
						
						
						
					 
					
						2022-03-14 11:54:09 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							ce0a3e93f2 
							
						 
					 
					
						
						
							
							Store whether an evmasm Assembly is creation code.  
						
						
						
					 
					
						2022-03-09 17:42:29 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							77c40cd2af 
							
						 
					 
					
						
						
							
							Merge pull request  #12740  from ethereum/remove-locale-dependent-operations  
						
						... 
						
						
						
						Replace all locale-dependent operations with locale-agnostic counterparts 
						
					 
					
						2022-03-07 17:56:58 +01:00 
						 
				 
			
				
					
						
							
							
								wechman 
							
						 
					 
					
						
						
						
						
							
						
						
							52dfccca98 
							
						 
					 
					
						
						
							
							Replace all locale-dependent operations with locale-agnostic counterparts  
						
						
						
					 
					
						2022-03-07 17:23:08 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4f19d68ee9 
							
						 
					 
					
						
						
							
							Merge pull request  #12620  from ethereum/assemblyAnnotation  
						
						... 
						
						
						
						Memory-safety annotation for inline assembly. 
						
					 
					
						2022-03-07 12:48:41 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							dfb7bf2853 
							
						 
					 
					
						
						
							
							Report memoryguard in stack too deep error.  
						
						
						
					 
					
						2022-03-02 16:42:28 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							b0dcd7b915 
							
						 
					 
					
						
						
							
							Split out disassemble to remove numeric from instruction includes.  
						
						
						
					 
					
						2022-03-02 15:30:41 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							de28f31716 
							
						 
					 
					
						
						
							
							Improved stack shuffling in corner cases.  
						
						
						
					 
					
						2022-01-21 15:41:30 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							9a0821f2c3 
							
						 
					 
					
						
						
							
							Fix warning about reference.  
						
						
						
					 
					
						2021-12-16 00:12:19 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							929ed094ce 
							
						 
					 
					
						
						
							
							Register functions earlier.  
						
						
						
					 
					
						2021-11-04 13:48:11 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							99aa18c4f3 
							
						 
					 
					
						
						
							
							Refactor: Only return output.  
						
						
						
					 
					
						2021-11-04 13:42:50 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							28ae316556 
							
						 
					 
					
						
						
							
							Named function labels.  
						
						
						
					 
					
						2021-11-03 12:42:07 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							b2c9b69de2 
							
						 
					 
					
						
						
							
							Enable for IR code generation with stack optimization > homestead.  
						
						
						
					 
					
						2021-11-03 12:39:55 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							9f48b7419c 
							
						 
					 
					
						
						
							
							Do not use named function labels if function names are not unique.  
						
						
						
					 
					
						2021-10-19 18:33:00 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							9417d6775f 
							
						 
					 
					
						
						
							
							Control flow side-effects for user-defined functions.  
						
						
						
					 
					
						2021-10-14 17:46:07 +02:00 
						 
				 
			
				
					
						
							
							
								Kamil Śliwak 
							
						 
					 
					
						
						
						
						
							
						
						
							2cd1c644b6 
							
						 
					 
					
						
						
							
							Remove unused includes and sort existing includes in a few places  
						
						
						
					 
					
						2021-10-11 20:34:48 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							1531863835 
							
						 
					 
					
						
						
							
							Split Common.h into Numeric.h.  
						
						
						
					 
					
						2021-09-23 15:27:29 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c8e6ef9657 
							
						 
					 
					
						
						
							
							Merge pull request  #12004  from ethereum/disambiguateBytesRequired  
						
						... 
						
						
						
						Disambiguate bytesRequired 
						
					 
					
						2021-09-23 15:25:44 +02:00 
						 
				 
			
				
					
						
							
							
								Kamil Śliwak 
							
						 
					 
					
						
						
						
						
							
						
						
							ce4420f857 
							
						 
					 
					
						
						
							
							Separate DebugData fields for Solidity and Yul source locations  
						
						
						
					 
					
						2021-09-22 13:11:39 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							50ce1f5ddd 
							
						 
					 
					
						
						
							
							Disambiguate bytesRequired  
						
						
						
					 
					
						2021-09-22 11:22:07 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							e6f0fe8ae3 
							
						 
					 
					
						
						
							
							Use source id in yul to evm code transform.  
						
						
						
					 
					
						2021-09-22 11:11:51 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a66e6f08c0 
							
						 
					 
					
						
						
							
							Merge pull request  #11951  from ethereum/scopeFillerNullptr  
						
						... 
						
						
						
						Use locationOf helper instead of accessing debugData directly. 
						
					 
					
						2021-09-14 15:43:01 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							854b8b65b5 
							
						 
					 
					
						
						
							
							Better source locations in Yul ControlFlowGraph and OptimizedEVMCodeTransform.  
						
						
						
					 
					
						2021-09-14 13:43:16 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							75c3286311 
							
						 
					 
					
						
						
							
							Optimized EVM Code Transform.  
						
						
						
					 
					
						2021-09-14 13:37:04 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							7abc55d89a 
							
						 
					 
					
						
						
							
							Use locationOf helper instead of accessing debugData directly.  
						
						
						
					 
					
						2021-09-14 10:04:09 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d512f7a4fd 
							
						 
					 
					
						
						
							
							Merge pull request  #11890  from ethereum/stackLayoutGeneratorReportTooDeep  
						
						... 
						
						
						
						Report stack too deep and conditional stack compression in StackLayoutGenerator. 
						
					 
					
						2021-09-08 10:28:30 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							a683ea7646 
							
						 
					 
					
						
						
							
							Remove the expression callback from the code generator functions of Yul builtins.  
						
						
						
					 
					
						2021-09-06 17:07:53 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							e022ba1bfb 
							
						 
					 
					
						
						
							
							Report stack too deep and conditionally aggressively compress stack in StackLayoutGenerator.  
						
						
						
					 
					
						2021-09-06 09:08:04 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							f881409ea4 
							
						 
					 
					
						
						
							
							Stack layout generator for new code generation.  
						
						
						
					 
					
						2021-09-02 17:47:19 +02:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							c82f9b9fab 
							
						 
					 
					
						
						
							
							Mark recursive calls in yul control flow graph.  
						
						
						
					 
					
						2021-08-19 16:54:43 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							a4c94a1b5b 
							
						 
					 
					
						
						
							
							Fixed inline assembly external identifier access.  
						
						
						
					 
					
						2021-08-11 18:18:29 +02:00 
						 
				 
			
				
					
						
							
							
								hrkrshnn 
							
						 
					 
					
						
						
						
						
							
						
						
							7f1a2be0fe 
							
						 
					 
					
						
						
							
							Allow basefee as Yul identifier for EVMVersion < london  
						
						... 
						
						
						
						This was done to prevent basefee from being a breaking change. This change will be removed in 0.9.0.
TODO revert this commit in breaking. 
						
					 
					
						2021-08-11 10:46:08 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							467cbf92bc 
							
						 
					 
					
						
						
							
							Only provide code generator to CodeTransform.  
						
						
						
					 
					
						2021-08-04 18:38:10 +02:00