diff --git a/test/libsolidity/gasTests/abiv2.sol b/test/libsolidity/gasTests/abiv2.sol index 17e42cf1b..e09f06884 100644 --- a/test/libsolidity/gasTests/abiv2.sol +++ b/test/libsolidity/gasTests/abiv2.sol @@ -14,9 +14,9 @@ contract C { } // ---- // creation: -// codeDepositCost: 1170600 +// codeDepositCost: 1167800 // executionCost: 1214 -// totalCost: 1171814 +// totalCost: 1169014 // external: // a(): 1130 // b(uint256): infinite diff --git a/test/libsolidity/gasTests/abiv2_optimised.sol b/test/libsolidity/gasTests/abiv2_optimised.sol index 5ad314f59..ece5cb214 100644 --- a/test/libsolidity/gasTests/abiv2_optimised.sol +++ b/test/libsolidity/gasTests/abiv2_optimised.sol @@ -17,9 +17,9 @@ contract C { // optimize-yul: true // ---- // creation: -// codeDepositCost: 626600 +// codeDepositCost: 626200 // executionCost: 657 -// totalCost: 627257 +// totalCost: 626857 // external: // a(): 985 // b(uint256): 2052 diff --git a/test/libyul/CompilabilityChecker.cpp b/test/libyul/CompilabilityChecker.cpp index b27f7ab54..65a102742 100644 --- a/test/libyul/CompilabilityChecker.cpp +++ b/test/libyul/CompilabilityChecker.cpp @@ -86,7 +86,7 @@ BOOST_AUTO_TEST_CASE(many_variables_few_uses) x := add(add(add(add(add(add(add(add(add(x, r9), r8), r7), r6), r5), r4), r3), r2), r1) } })"); - BOOST_CHECK_EQUAL(out, "f: 4 "); + BOOST_CHECK_EQUAL(out, "f: 3 "); } BOOST_AUTO_TEST_CASE(many_variables_many_uses) @@ -114,7 +114,7 @@ BOOST_AUTO_TEST_CASE(many_variables_many_uses) x := add(add(add(add(add(add(add(add(add(add(add(add(x, r12), r11), r10), r9), r8), r7), r6), r5), r4), r3), r2), r1) } })"); - BOOST_CHECK_EQUAL(out, "f: 10 "); + BOOST_CHECK_EQUAL(out, "f: 9 "); } BOOST_AUTO_TEST_CASE(many_return_variables_unused_arguments) diff --git a/test/libyul/evmCodeTransform/stackReuse/function_many_arguments.yul b/test/libyul/evmCodeTransform/stackReuse/function_many_arguments.yul index aa4567a90..0972318d0 100644 --- a/test/libyul/evmCodeTransform/stackReuse/function_many_arguments.yul +++ b/test/libyul/evmCodeTransform/stackReuse/function_many_arguments.yul @@ -109,8 +109,8 @@ // SWAP1 // POP // JUMPDEST -// SWAP2 // SWAP1 // POP +// SWAP1 // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams.yul b/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams.yul index 3228637dc..7e949875b 100644 --- a/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams.yul +++ b/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams.yul @@ -8,7 +8,7 @@ // ==== // stackOptimization: true // ---- -// PUSH1 0x10 +// PUSH1 0xF // JUMP // JUMPDEST // POP @@ -18,7 +18,6 @@ // PUSH1 0x0 // PUSH1 0x0 // JUMPDEST -// SWAP1 // SWAP2 // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams_partly_used.yul b/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams_partly_used.yul index 089892a66..79ae9c411 100644 --- a/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams_partly_used.yul +++ b/test/libyul/evmCodeTransform/stackReuse/function_params_and_retparams_partly_used.yul @@ -4,7 +4,7 @@ // ==== // stackOptimization: true // ---- -// PUSH1 0x1E +// PUSH1 0x1D // JUMP // JUMPDEST // POP @@ -18,14 +18,13 @@ // PUSH1 0x0 // PUSH1 0x9 // PUSH1 0x2 -// SWAP2 +// SWAP3 // POP -// DUP2 +// DUP3 // DUP2 // MSTORE // POP // JUMPDEST -// SWAP1 // SWAP2 // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/function_retparam.yul b/test/libyul/evmCodeTransform/stackReuse/function_retparam.yul index 4dde5208b..f04099903 100644 --- a/test/libyul/evmCodeTransform/stackReuse/function_retparam.yul +++ b/test/libyul/evmCodeTransform/stackReuse/function_retparam.yul @@ -4,13 +4,12 @@ // ==== // stackOptimization: true // ---- -// PUSH1 0xC +// PUSH1 0xB // JUMP // JUMPDEST // PUSH1 0x0 // PUSH1 0x0 // JUMPDEST -// SWAP1 // SWAP2 // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/function_retparam_unassigned_multiple.yul b/test/libyul/evmCodeTransform/stackReuse/function_retparam_unassigned_multiple.yul index d9e80547e..be96037d0 100644 --- a/test/libyul/evmCodeTransform/stackReuse/function_retparam_unassigned_multiple.yul +++ b/test/libyul/evmCodeTransform/stackReuse/function_retparam_unassigned_multiple.yul @@ -4,7 +4,7 @@ // ==== // stackOptimization: true // ---- -// PUSH1 0x11 +// PUSH1 0xF // JUMP // JUMPDEST // CALLVALUE @@ -13,8 +13,6 @@ // PUSH1 0x0 // PUSH1 0x0 // JUMPDEST -// SWAP1 -// SWAP2 // SWAP3 // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/functions_multi_return.yul b/test/libyul/evmCodeTransform/stackReuse/functions_multi_return.yul index 6189e1614..ebd20f2c1 100644 --- a/test/libyul/evmCodeTransform/stackReuse/functions_multi_return.yul +++ b/test/libyul/evmCodeTransform/stackReuse/functions_multi_return.yul @@ -10,7 +10,7 @@ // ==== // stackOptimization: true // ---- -// PUSH1 0x14 +// PUSH1 0x13 // JUMP // JUMPDEST // POP @@ -23,17 +23,16 @@ // PUSH1 0x0 // PUSH1 0x0 // JUMPDEST -// SWAP1 // SWAP2 // JUMP // JUMPDEST -// PUSH1 0x1E +// PUSH1 0x1D // PUSH1 0x2 // PUSH1 0x1 // PUSH1 0x3 // JUMP // JUMPDEST -// PUSH1 0x28 +// PUSH1 0x27 // PUSH1 0x4 // PUSH1 0x3 // PUSH1 0x3 @@ -42,11 +41,11 @@ // SWAP1 // POP // POP -// PUSH1 0x31 +// PUSH1 0x30 // PUSH1 0xB // JUMP // JUMPDEST -// PUSH1 0x37 +// PUSH1 0x36 // PUSH1 0xB // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function.yul b/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function.yul index f5e855a46..6e8d2a74a 100644 --- a/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function.yul +++ b/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function.yul @@ -5,7 +5,7 @@ // ==== // stackOptimization: true // ---- -// PUSH1 0x12 +// PUSH1 0xF // JUMP // JUMPDEST // PUSH1 0x0 @@ -13,13 +13,10 @@ // PUSH1 0x0 // PUSH1 0x0 // JUMPDEST -// SWAP1 -// SWAP2 -// SWAP3 // SWAP4 // JUMP // JUMPDEST -// PUSH1 0x18 +// PUSH1 0x15 // PUSH1 0x3 // JUMP // JUMPDEST diff --git a/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function_with_gaps.yul b/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function_with_gaps.yul index 36800b204..27ac62139 100644 --- a/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function_with_gaps.yul +++ b/test/libyul/evmCodeTransform/stackReuse/reuse_slots_function_with_gaps.yul @@ -15,7 +15,7 @@ // DUP2 // DUP4 // MSTORE -// PUSH1 0x1B +// PUSH1 0x18 // JUMP // JUMPDEST // PUSH1 0x0 @@ -23,13 +23,10 @@ // PUSH1 0x0 // PUSH1 0x0 // JUMPDEST -// SWAP1 -// SWAP2 -// SWAP3 // SWAP4 // JUMP // JUMPDEST -// PUSH1 0x21 +// PUSH1 0x1E // PUSH1 0xC // JUMP // JUMPDEST