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 
							
						 
					 
					
						
						
						
						
							
						
						
							26c693aa92 
							
						 
					 
					
						
						
							
							Change library placeholder to __$<hash>$__.  
						
						
						
					 
					
						2018-10-12 15:15:02 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							4d6d224cf8 
							
						 
					 
					
						
						
							
							Prefix "0x" to library placeholder.  
						
						
						
					 
					
						2018-10-12 15:15:01 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							6daeb39ecc 
							
						 
					 
					
						
						
							
							Use hash for library placeholders.  
						
						
						
					 
					
						2018-10-12 15:15:01 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							d76bfcd935 
							
						 
					 
					
						
						
							
							Fix typos.  
						
						
						
					 
					
						2018-10-04 13:28:16 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7609710d4f 
							
						 
					 
					
						
						
							
							Merge pull request  #5110  from codemascot/libevmasm/Assembly.cpp  
						
						... 
						
						
						
						Use 'switch' instead of 'else if' 
						
					 
					
						2018-10-02 13:18:22 +02:00 
						 
				 
			
				
					
						
							
							
								Khan M Rashedun-Naby 
							
						 
					 
					
						
						
						
						
							
						
						
							14738d05e4 
							
						 
					 
					
						
						
							
							Use 'switch' instead of 'else if'  
						
						
						
					 
					
						2018-09-27 17:46:53 +06:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							6a1e79a8e3 
							
						 
					 
					
						
						
							
							Set the price of EXTCODEHASH properly  
						
						
						
					 
					
						2018-09-26 16:11:02 +01:00 
						 
				 
			
				
					
						
							
							
								Jared Wasinger 
							
						 
					 
					
						
						
						
						
							
						
						
							c6bd2979b1 
							
						 
					 
					
						
						
							
							Add assembly support for EXTCODEHASH (EIP-1052)  
						
						
						
					 
					
						2018-09-26 16:11:02 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							410d94c498 
							
						 
					 
					
						
						
							
							Merge pull request  #5089  from ethereum/gasmeter  
						
						... 
						
						
						
						Small pathgasmeter cleanups 
						
					 
					
						2018-09-26 15:16:38 +01:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2c860b7d74 
							
						 
					 
					
						
						
							
							Merge pull request  #5094  from ethereum/evmasm-grouping  
						
						... 
						
						
						
						Group LLL only assembly features in libevmasm 
						
					 
					
						2018-09-26 15:51:20 +02:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							d7c3f197c4 
							
						 
					 
					
						
						
							
							Some cleanups in GasMeter  
						
						
						
					 
					
						2018-09-26 14:25:40 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							d64be90497 
							
						 
					 
					
						
						
							
							Add PathGasMeter.estimateMax helper  
						
						
						
					 
					
						2018-09-26 14:25:40 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							9be058eb70 
							
						 
					 
					
						
						
							
							Add explanation to GasMeter::dataGas  
						
						
						
					 
					
						2018-09-26 14:25:40 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							913ddf158f 
							
						 
					 
					
						
						
							
							Group LLL only assembly features in libevmasm  
						
						
						
					 
					
						2018-09-26 12:46:03 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							535026b492 
							
						 
					 
					
						
						
							
							Group append() functions in libevmasm  
						
						
						
					 
					
						2018-09-26 11:14:40 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							21beba76e2 
							
						 
					 
					
						
						
							
							Add helpers for the LOG instruction  
						
						
						
					 
					
						2018-09-25 20:39:35 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							0db76a01da 
							
						 
					 
					
						
						
							
							CREATE2 opcode has been moved from 0xfb to 0xf5  
						
						
						
					 
					
						2018-09-18 23:04:57 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c42dfc5b10 
							
						 
					 
					
						
						
							
							Merge pull request  #4967  from ethereum/const-opt-cost  
						
						... 
						
						
						
						Move dataGas calculation helper to GasMeter 
						
					 
					
						2018-09-18 15:46:15 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							0b68d093b4 
							
						 
					 
					
						
						
							
							Move dataGas calculation helper to GasMeter  
						
						
						
					 
					
						2018-09-18 14:47:53 +01:00 
						 
				 
			
				
					
						
							
							
								Daniel Kirchner 
							
						 
					 
					
						
						
						
						
							
						
						
							a1d73a7bef 
							
						 
					 
					
						
						
							
							Split simplification rules into two functions.  
						
						
						
					 
					
						2018-09-18 14:28:21 +02:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							0b6a26f854 
							
						 
					 
					
						
						
							
							Calculate the dataGas correctly in the constant optimiser  
						
						... 
						
						
						
						This may cause a wrong decision about cost (and as a result choosing the least efficient code),
but will not cause any miscompilation or invalid output. 
						
					 
					
						2018-08-14 17:45:43 +02:00 
						 
				 
			
				
					
						
							
							
								Leonardo Alt 
							
						 
					 
					
						
						
						
						
							
						
						
							17cac588d0 
							
						 
					 
					
						
						
							
							Replace safety stop by invalid  
						
						
						
					 
					
						2018-08-14 12:32:47 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							7d9692c31d 
							
						 
					 
					
						
						
							
							Explicitly use std::next to avoid boost version.  
						
						
						
					 
					
						2018-08-09 01:12:55 +02:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							d3c3fd2079 
							
						 
					 
					
						
						
							
							Use dev::toString() in Assembly instead of misusing string{} for u256  
						
						
						
					 
					
						2018-08-08 20:52:19 +01:00 
						 
				 
			
				
					
						
							
							
								Leo Arias 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c4a3c48aea 
							
						 
					 
					
						
						
							
							Fix typo  
						
						
						
					 
					
						2018-08-07 13:35:15 -06:00 
						 
				 
			
				
					
						
							
							
								Augusto F. Hack 
							
						 
					 
					
						
						
						
						
							
						
						
							6c3b48ddfc 
							
						 
					 
					
						
						
							
							Added guards for unknown pragmas  
						
						... 
						
						
						
						Removed push/pop if there was no change to the warnings *in the same
file* for a given compiler. This assumes the imported boost headers use
a warning stack themselves.
The pragmas don't seem to be required anymore, but were not removed to
mantain compatibility with older versions of the boost library.
Compiled with
- clang version 6.0.1 (tags/RELEASE_601/final)
- gcc (GCC) 8.1.1 20180531
 against:
- libboost 1.67.0-5 
						
					 
					
						2018-08-05 19:21:33 -03:00 
						 
				 
			
				
					
						
							
							
								Christian Parpart 
							
						 
					 
					
						
						
						
						
							
						
						
							fb4857abed 
							
						 
					 
					
						
						
							
							evmasm/Instruction: fixes undefined behavior of advancing iterator beyond the end of a container.  
						
						... 
						
						
						
						Usually the STL doesn't check whether or not the developer advances beyond its container's end, but MSVC does (found out by running soltest in debug mode on Win32 / VS2017). 
						
					 
					
						2018-08-02 19:53:46 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							28ac3f0a6c 
							
						 
					 
					
						
						
							
							Merge pull request  #4473  from ethereum/fixGasTuple  
						
						... 
						
						
						
						Fix comparison operator for GasConsumption. 
						
					 
					
						2018-07-11 11:55:19 +02:00 
						 
				 
			
				
					
						
							
							
								Cryptomental 
							
						 
					 
					
						
						
						
						
							
						
						
							140dbfdbd8 
							
						 
					 
					
						
						
							
							Code, Changelog, ReleaseChecklist: Fix typos.  
						
						... 
						
						
						
						Refs: #4442  
						
					 
					
						2018-07-11 00:26:23 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							1fed3519e1 
							
						 
					 
					
						
						
							
							Fix comparison operator for GasConsumption.  
						
						
						
					 
					
						2018-07-10 21:36:47 +02:00 
						 
				 
			
				
					
						
							
							
								Khan M Rashedun-Naby 
							
						 
					 
					
						
						
						
						
							
						
						
							0e5b97446a 
							
						 
					 
					
						
						
							
							As SWITCH..CASE is better than ELSE..IF  
						
						
						
					 
					
						2018-07-02 15:42:30 +06:00 
						 
				 
			
				
					
						
							
							
								Nicolás Venturo 
							
						 
					 
					
						
						
						
						
							
						
						
							172e208c6a 
							
						 
					 
					
						
						
							
							Add TruthyAnd Peephole optimization  
						
						
						
					 
					
						2018-06-15 11:27:39 -03:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							fba7e055d9 
							
						 
					 
					
						
						
							
							Follow highest gas usage only for gas estimation.  
						
						
						
					 
					
						2018-05-09 10:53:30 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e681f4ee79 
							
						 
					 
					
						
						
							
							Merge pull request  #4028  from ethereum/asm-tags-32bit  
						
						... 
						
						
						
						Restrict assembly tags to 32-bit 
						
					 
					
						2018-05-02 17:34:13 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Arlt 
							
						 
					 
					
						
						
						
						
							
						
						
							f94b793472 
							
						 
					 
					
						
						
							
							Add virtual destructors on base classes.  
						
						
						
					 
					
						2018-05-02 13:29:16 +02:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							d569ad91e4 
							
						 
					 
					
						
						
							
							Restrict assembly tags to 32-bit  
						
						
						
					 
					
						2018-04-30 18:47:57 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							3ac3018e1d 
							
						 
					 
					
						
						
							
							Ensure that subId and tag handling is correct on all compilers in AssemblyItem  
						
						
						
					 
					
						2018-04-30 15:57:17 +01:00 
						 
				 
			
				
					
						
							
							
								Omar Boukli-Hacene 
							
						 
					 
					
						
						
						
						
							
						
						
							090f9995f2 
							
						 
					 
					
						
						
							
							Fix comment typos  
						
						
						
					 
					
						2018-04-27 19:31:30 +04:00 
						 
				 
			
				
					
						
							
							
								Alexander Arlt 
							
						 
					 
					
						
						
						
						
							
						
						
							70fcf1a8e0 
							
						 
					 
					
						
						
							
							CMake: remove direct jsoncpp dependency in libevmasm  
						
						
						
					 
					
						2018-04-20 20:37:26 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							38460d8b47 
							
						 
					 
					
						
						
							
							Remove unnecessary masking of the result of known short instructions  
						
						
						
					 
					
						2018-04-19 23:59:06 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							cb352edd26 
							
						 
					 
					
						
						
							
							Add constant optimiser for SHR/SHL instructions  
						
						
						
					 
					
						2018-04-09 20:07:44 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							02ea0e547f 
							
						 
					 
					
						
						
							
							Replace comparison operators with opposites if preceded by SWAP1  
						
						
						
					 
					
						2018-04-04 17:47:58 +02:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							17bcabb6cf 
							
						 
					 
					
						
						
							
							Remove useless SWAP1 in front of commutative operations  
						
						
						
					 
					
						2018-04-03 18:57:07 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							6777f7a57f 
							
						 
					 
					
						
						
							
							Optimize across MLOAD if MSIZE is not used.  
						
						
						
					 
					
						2018-04-03 14:34:32 +02:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							6ec4517929 
							
						 
					 
					
						
						
							
							Use EVM version in gas meter and optimizer.  
						
						
						
					 
					
						2018-03-05 11:36:33 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							afa4a48e37 
							
						 
					 
					
						
						
							
							Remove ROL/ROR as they are not part of EIP145 anymore  
						
						
						
					 
					
						2018-02-27 13:42:41 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							59e6ea601b 
							
						 
					 
					
						
						
							
							Add bitwise shift operators to libevmasm (EIP145)  
						
						
						
					 
					
						2018-02-27 12:03:18 +01:00 
						 
				 
			
				
					
						
							
							
								Alex Beregszaszi 
							
						 
					 
					
						
						
						
						
							
						
						
							037b97ef4a 
							
						 
					 
					
						
						
							
							Replace MOD with AND if constant is power of 2  
						
						
						
					 
					
						2018-02-12 22:47:04 +00:00 
						 
				 
			
				
					
						
							
							
								chriseth 
							
						 
					 
					
						
						
						
						
							
						
						
							c961a3079d 
							
						 
					 
					
						
						
							
							Turn simplification rule tuple into struct.  
						
						
						
					 
					
						2018-02-06 22:51:30 +01:00