mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	LLL: ensure assembly tests have the correct arguments
This commit is contained in:
		
							parent
							
								
									e82917d4e6
								
							
						
					
					
						commit
						90e4d24407
					
				| @ -373,59 +373,59 @@ BOOST_AUTO_TEST_CASE(valid_opcodes_asm) | |||||||
| { | { | ||||||
| 	vector<string> opcodes_bytecode { | 	vector<string> opcodes_bytecode { | ||||||
| 		"0000", | 		"0000", | ||||||
| 		"0100", | 		"600060000100", | ||||||
| 		"0200", | 		"600060000200", | ||||||
| 		"0300", | 		"600060000300", | ||||||
| 		"0400", | 		"600060000400", | ||||||
| 		"0500", | 		"600060000500", | ||||||
| 		"0600", | 		"600060000600", | ||||||
| 		"0700", | 		"600060000700", | ||||||
| 		"0800", | 		"6000600060000800", | ||||||
| 		"0900", | 		"6000600060000900", | ||||||
| 		"0a00", | 		"600060000a00", | ||||||
| 		"0b00", | 		"600060000b00", | ||||||
| 		"1000", | 		"600060001000", | ||||||
| 		"1100", | 		"600060001100", | ||||||
| 		"1200", | 		"600060001200", | ||||||
| 		"1300", | 		"600060001300", | ||||||
| 		"1400", | 		"600060001400", | ||||||
| 		"1500", | 		"60001500", | ||||||
| 		"1600", | 		"600060001600", | ||||||
| 		"1700", | 		"600060001700", | ||||||
| 		"1800", | 		"600060001800", | ||||||
| 		"1900", | 		"60001900", | ||||||
| 		"1a00", | 		"600060001a00", | ||||||
| 		"2000", | 		"600060002000", | ||||||
| 		"3000", | 		"3000", | ||||||
| 		"3100", | 		"60003100", | ||||||
| 		"3200", | 		"3200", | ||||||
| 		"3300", | 		"3300", | ||||||
| 		"3400", | 		"3400", | ||||||
| 		"3500", | 		"60003500", | ||||||
| 		"3600", | 		"3600", | ||||||
| 		"3700", | 		"6000600060003700", | ||||||
| 		"3800", | 		"3800", | ||||||
| 		"3900", | 		"6000600060003900", | ||||||
| 		"3a00", | 		"3a00", | ||||||
| 		"3b00", | 		"60003b00", | ||||||
| 		"3c00", | 		"60006000600060003c00", | ||||||
| 		"3d00", | 		"3d00", | ||||||
| 		"3e00", | 		"6000600060003e00", | ||||||
| 		"3f00", | 		"60003f00", | ||||||
| 		"4000", | 		"4000", | ||||||
| 		"4100", | 		"4100", | ||||||
| 		"4200", | 		"4200", | ||||||
| 		"4300", | 		"4300", | ||||||
| 		"4400", | 		"4400", | ||||||
| 		"4500", | 		"4500", | ||||||
| 		"5000", | 		"60005000", | ||||||
| 		"5100", | 		"60005100", | ||||||
| 		"5200", | 		"600060005200", | ||||||
| 		"5300", | 		"600060005300", | ||||||
| 		"5400", | 		"60005400", | ||||||
| 		"5500", | 		"600060005500", | ||||||
| 		"5600", | 		"60005600", | ||||||
| 		"5700", | 		"600060005700", | ||||||
| 		"5800", | 		"5800", | ||||||
| 		"5900", | 		"5900", | ||||||
| 		"5a00", | 		"5a00", | ||||||
| @ -462,109 +462,109 @@ BOOST_AUTO_TEST_CASE(valid_opcodes_asm) | |||||||
| 		"7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", | 		"7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", | ||||||
| 		"7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", | 		"7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", | ||||||
| 		"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", | 		"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", | ||||||
| 		"8000", | 		"60006000600060006000600060006000600060006000600060006000600060008000", | ||||||
| 		"8100", | 		"60006000600060006000600060006000600060006000600060006000600060008100", | ||||||
| 		"8200", | 		"60006000600060006000600060006000600060006000600060006000600060008200", | ||||||
| 		"8300", | 		"60006000600060006000600060006000600060006000600060006000600060008300", | ||||||
| 		"8400", | 		"60006000600060006000600060006000600060006000600060006000600060008400", | ||||||
| 		"8500", | 		"60006000600060006000600060006000600060006000600060006000600060008500", | ||||||
| 		"8600", | 		"60006000600060006000600060006000600060006000600060006000600060008600", | ||||||
| 		"8700", | 		"60006000600060006000600060006000600060006000600060006000600060008700", | ||||||
| 		"8800", | 		"60006000600060006000600060006000600060006000600060006000600060008800", | ||||||
| 		"8900", | 		"60006000600060006000600060006000600060006000600060006000600060008900", | ||||||
| 		"8a00", | 		"60006000600060006000600060006000600060006000600060006000600060008a00", | ||||||
| 		"8b00", | 		"60006000600060006000600060006000600060006000600060006000600060008b00", | ||||||
| 		"8c00", | 		"60006000600060006000600060006000600060006000600060006000600060008c00", | ||||||
| 		"8d00", | 		"60006000600060006000600060006000600060006000600060006000600060008d00", | ||||||
| 		"8e00", | 		"60006000600060006000600060006000600060006000600060006000600060008e00", | ||||||
| 		"8f00", | 		"60006000600060006000600060006000600060006000600060006000600060008f00", | ||||||
| 		"9000", | 		"60006000600060006000600060006000600060006000600060006000600060009000", | ||||||
| 		"9100", | 		"60006000600060006000600060006000600060006000600060006000600060009100", | ||||||
| 		"9200", | 		"60006000600060006000600060006000600060006000600060006000600060009200", | ||||||
| 		"9300", | 		"60006000600060006000600060006000600060006000600060006000600060009300", | ||||||
| 		"9400", | 		"60006000600060006000600060006000600060006000600060006000600060009400", | ||||||
| 		"9500", | 		"60006000600060006000600060006000600060006000600060006000600060009500", | ||||||
| 		"9600", | 		"60006000600060006000600060006000600060006000600060006000600060009600", | ||||||
| 		"9700", | 		"60006000600060006000600060006000600060006000600060006000600060009700", | ||||||
| 		"9800", | 		"60006000600060006000600060006000600060006000600060006000600060009800", | ||||||
| 		"9900", | 		"60006000600060006000600060006000600060006000600060006000600060009900", | ||||||
| 		"9a00", | 		"60006000600060006000600060006000600060006000600060006000600060009a00", | ||||||
| 		"9b00", | 		"60006000600060006000600060006000600060006000600060006000600060009b00", | ||||||
| 		"9c00", | 		"60006000600060006000600060006000600060006000600060006000600060009c00", | ||||||
| 		"9d00", | 		"60006000600060006000600060006000600060006000600060006000600060009d00", | ||||||
| 		"9e00", | 		"60006000600060006000600060006000600060006000600060006000600060009e00", | ||||||
| 		"9f00", | 		"60006000600060006000600060006000600060006000600060006000600060009f00", | ||||||
| 		"a000", | 		"60006000a000", | ||||||
| 		"a100", | 		"600060006000a100", | ||||||
| 		"a200", | 		"6000600060006000a200", | ||||||
| 		"a300", | 		"60006000600060006000a300", | ||||||
| 		"a400", | 		"600060006000600060006000a400", | ||||||
| 		"f000", | 		"600060006000f000", | ||||||
| 		"f100", | 		"600060006000600060006000f100", | ||||||
| 		"f200", | 		"600060006000600060006000f200", | ||||||
| 		"f300", | 		"60006000f300", | ||||||
| 		"f400", | 		"60006000600060006000f400", | ||||||
| 		"fa00", | 		"60006000600060006000fa00", | ||||||
| 		"fd00", | 		"60006000fd00", | ||||||
| 		"fe00", | 		"fe00", | ||||||
| 		"ff00" | 		"6000ff00" | ||||||
| 	}; | 	}; | ||||||
| 
 | 
 | ||||||
| 	vector<string> opcodes_lll { | 	vector<string> opcodes_lll { | ||||||
| 		"(asm STOP)", | 		"(asm STOP)", | ||||||
| 		"(asm ADD)", | 		"(asm 0 0 ADD)", | ||||||
| 		"(asm MUL)", | 		"(asm 0 0 MUL)", | ||||||
| 		"(asm SUB)", | 		"(asm 0 0 SUB)", | ||||||
| 		"(asm DIV)", | 		"(asm 0 0 DIV)", | ||||||
| 		"(asm SDIV )", | 		"(asm 0 0 SDIV)", | ||||||
| 		"(asm MOD)", | 		"(asm 0 0 MOD)", | ||||||
| 		"(asm SMOD)", | 		"(asm 0 0 SMOD)", | ||||||
| 		"(asm ADDMOD)", | 		"(asm 0 0 0 ADDMOD)", | ||||||
| 		"(asm MULMOD)", | 		"(asm 0 0 0 MULMOD)", | ||||||
| 		"(asm EXP)", | 		"(asm 0 0 EXP)", | ||||||
| 		"(asm SIGNEXTEND)", | 		"(asm 0 0 SIGNEXTEND)", | ||||||
| 		"(asm LT)", | 		"(asm 0 0 LT)", | ||||||
| 		"(asm GT)", | 		"(asm 0 0 GT)", | ||||||
| 		"(asm SLT)", | 		"(asm 0 0 SLT)", | ||||||
| 		"(asm SGT)", | 		"(asm 0 0 SGT)", | ||||||
| 		"(asm EQ)", | 		"(asm 0 0 EQ)", | ||||||
| 		"(asm ISZERO)", | 		"(asm 0 ISZERO)", | ||||||
| 		"(asm AND)", | 		"(asm 0 0 AND)", | ||||||
| 		"(asm OR)", | 		"(asm 0 0 OR)", | ||||||
| 		"(asm XOR)", | 		"(asm 0 0 XOR)", | ||||||
| 		"(asm NOT)", | 		"(asm 0 NOT)", | ||||||
| 		"(asm BYTE)", | 		"(asm 0 0 BYTE)", | ||||||
| 		"(asm KECCAK256)", | 		"(asm 0 0 KECCAK256)", | ||||||
| 		"(asm ADDRESS)", | 		"(asm ADDRESS)", | ||||||
| 		"(asm BALANCE)", | 		"(asm 0 BALANCE)", | ||||||
| 		"(asm ORIGIN)", | 		"(asm ORIGIN)", | ||||||
| 		"(asm CALLER)", | 		"(asm CALLER)", | ||||||
| 		"(asm CALLVALUE)", | 		"(asm CALLVALUE)", | ||||||
| 		"(asm CALLDATALOAD)", | 		"(asm 0 CALLDATALOAD)", | ||||||
| 		"(asm CALLDATASIZE)", | 		"(asm CALLDATASIZE)", | ||||||
| 		"(asm CALLDATACOPY)", | 		"(asm 0 0 0 CALLDATACOPY)", | ||||||
| 		"(asm CODESIZE)", | 		"(asm CODESIZE)", | ||||||
| 		"(asm CODECOPY)", | 		"(asm 0 0 0 CODECOPY)", | ||||||
| 		"(asm GASPRICE)", | 		"(asm GASPRICE)", | ||||||
| 		"(asm EXTCODESIZE)}", | 		"(asm 0 EXTCODESIZE)", | ||||||
| 		"(asm EXTCODECOPY)", | 		"(asm 0 0 0 0 EXTCODECOPY)", | ||||||
| 		"(asm RETURNDATASIZE)", | 		"(asm RETURNDATASIZE)", | ||||||
| 		"(asm RETURNDATACOPY)", | 		"(asm 0 0 0 RETURNDATACOPY)", | ||||||
| 		"(asm EXTCODEHASH)", | 		"(asm 0 EXTCODEHASH)", | ||||||
| 		"(asm BLOCKHASH)", | 		"(asm BLOCKHASH)", | ||||||
| 		"(asm COINBASE)", | 		"(asm COINBASE)", | ||||||
| 		"(asm TIMESTAMP)", | 		"(asm TIMESTAMP)", | ||||||
| 		"(asm NUMBER)", | 		"(asm NUMBER)", | ||||||
| 		"(asm DIFFICULTY)", | 		"(asm DIFFICULTY)", | ||||||
| 		"(asm GASLIMIT)", | 		"(asm GASLIMIT)", | ||||||
| 		"(asm POP)", | 		"(asm 0 POP)", | ||||||
| 		"(asm MLOAD)", | 		"(asm 0 MLOAD)", | ||||||
| 		"(asm MSTORE)", | 		"(asm 0 0 MSTORE)", | ||||||
| 		"(asm MSTORE8)", | 		"(asm 0 0 MSTORE8)", | ||||||
| 		"(asm SLOAD)", | 		"(asm 0 SLOAD)", | ||||||
| 		"(asm SSTORE)", | 		"(asm 0 0 SSTORE)", | ||||||
| 		"(asm JUMP )", | 		"(asm 0 JUMP)", | ||||||
| 		"(asm JUMPI )", | 		"(asm 0 0 JUMPI)", | ||||||
| 		"(asm PC)", | 		"(asm PC)", | ||||||
| 		"(asm MSIZE)", | 		"(asm MSIZE)", | ||||||
| 		"(asm GAS)", | 		"(asm GAS)", | ||||||
| @ -601,52 +601,52 @@ BOOST_AUTO_TEST_CASE(valid_opcodes_asm) | |||||||
| 		"(asm 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)", | 		"(asm 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)", | ||||||
| 		"(asm 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)", | 		"(asm 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)", | ||||||
| 		"(asm 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)", | 		"(asm 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)", | ||||||
| 		"(asm DUP1)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP1)", | ||||||
| 		"(asm DUP2)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP2)", | ||||||
| 		"(asm DUP3)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP3)", | ||||||
| 		"(asm DUP4)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP4)", | ||||||
| 		"(asm DUP5)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP5)", | ||||||
| 		"(asm DUP6)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP6)", | ||||||
| 		"(asm DUP7)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP7)", | ||||||
| 		"(asm DUP8)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP8)", | ||||||
| 		"(asm DUP9)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP9)", | ||||||
| 		"(asm DUP10)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP10)", | ||||||
| 		"(asm DUP11)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP11)", | ||||||
| 		"(asm DUP12)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP12)", | ||||||
| 		"(asm DUP13)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP13)", | ||||||
| 		"(asm DUP14)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP14)", | ||||||
| 		"(asm DUP15)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP15)", | ||||||
| 		"(asm DUP16)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DUP16)", | ||||||
| 		"(asm SWAP1)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP1)", | ||||||
| 		"(asm SWAP2)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP2)", | ||||||
| 		"(asm SWAP3)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP3)", | ||||||
| 		"(asm SWAP4)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP4)", | ||||||
| 		"(asm SWAP5)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP5)", | ||||||
| 		"(asm SWAP6)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP6)", | ||||||
| 		"(asm SWAP7)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP7)", | ||||||
| 		"(asm SWAP8)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP8)", | ||||||
| 		"(asm SWAP9)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP9)", | ||||||
| 		"(asm SWAP10)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP10)", | ||||||
| 		"(asm SWAP11)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP11)", | ||||||
| 		"(asm SWAP12)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP12)", | ||||||
| 		"(asm SWAP13)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP13)", | ||||||
| 		"(asm SWAP14)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP14)", | ||||||
| 		"(asm SWAP15)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP15)", | ||||||
| 		"(asm SWAP16)", | 		"(asm 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SWAP16)", | ||||||
| 		"(asm LOG0)", | 		"(asm 0 0 LOG0)", | ||||||
| 		"(asm LOG1)", | 		"(asm 0 0 0 LOG1)", | ||||||
| 		"(asm LOG2)", | 		"(asm 0 0 0 0 LOG2)", | ||||||
| 		"(asm LOG3)", | 		"(asm 0 0 0 0 0 LOG3)", | ||||||
| 		"(asm LOG4)", | 		"(asm 0 0 0 0 0 0 LOG4)", | ||||||
| 		"(asm CREATE)", | 		"(asm 0 0 0 CREATE)", | ||||||
| 		"(asm CALL)", | 		"(asm 0 0 0 0 0 0 CALL)", | ||||||
| 		"(asm CALLCODE)", | 		"(asm 0 0 0 0 0 0 CALLCODE)", | ||||||
| 		"(asm RETURN)", | 		"(asm 0 0 RETURN)", | ||||||
| 		"(asm DELEGATECALL)", | 		"(asm 0 0 0 0 0 DELEGATECALL)", | ||||||
| 		"(asm STATICCALL)", | 		"(asm 0 0 0 0 0 STATICCALL)", | ||||||
| 		"(asm REVERT)", | 		"(asm 0 0 REVERT)", | ||||||
| 		"(asm INVALID)", | 		"(asm INVALID)", | ||||||
| 		"(asm SELFDESTRUCT)" | 		"(asm 0 SELFDESTRUCT)" | ||||||
| 	}; | 	}; | ||||||
| 
 | 
 | ||||||
| 	for (size_t i = 0; i < opcodes_bytecode.size(); i++) | 	for (size_t i = 0; i < opcodes_bytecode.size(); i++) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user