solidity/test/libsolidity/gasTests/dispatch_large_optimised.sol

56 lines
2.3 KiB
Solidity

contract Large {
uint public a;
uint[] public b;
function f1(uint x) public returns (uint) { a = x; b[uint8(msg.data[0])] = x; }
function f2(uint x) public returns (uint) { b[uint8(msg.data[1])] = x; }
function f3(uint x) public returns (uint) { b[uint8(msg.data[2])] = x; }
function f4(uint x) public returns (uint) { b[uint8(msg.data[3])] = x; }
function f5(uint x) public returns (uint) { b[uint8(msg.data[4])] = x; }
function f6(uint x) public returns (uint) { b[uint8(msg.data[5])] = x; }
function f7(uint x) public returns (uint) { b[uint8(msg.data[6])] = x; }
function f8(uint x) public returns (uint) { b[uint8(msg.data[7])] = x; }
function f9(uint x) public returns (uint) { b[uint8(msg.data[8])] = x; }
function f0(uint x) public pure returns (uint) { require(x > 10); }
function g1(uint x) public payable returns (uint) { a = x; b[uint8(msg.data[0])] = x; }
function g2(uint x) public payable returns (uint) { b[uint8(msg.data[1])] = x; }
function g3(uint x) public payable returns (uint) { b[uint8(msg.data[2])] = x; }
function g4(uint x) public payable returns (uint) { b[uint8(msg.data[3])] = x; }
function g5(uint x) public payable returns (uint) { b[uint8(msg.data[4])] = x; }
function g6(uint x) public payable returns (uint) { b[uint8(msg.data[5])] = x; }
function g7(uint x) public payable returns (uint) { b[uint8(msg.data[6])] = x; }
function g8(uint x) public payable returns (uint) { b[uint8(msg.data[7])] = x; }
function g9(uint x) public payable returns (uint) { b[uint8(msg.data[8])] = x; }
function g0(uint x) public payable returns (uint) { require(x > 10); }
}
// ====
// optimize: true
// optimize-runs: 2
// ----
// creation:
// codeDepositCost: 260400
// executionCost: 300
// totalCost: 260700
// external:
// a(): 398
// b(uint256): 1105
// f0(uint256): 334
// f1(uint256): 40874
// f2(uint256): 20940
// f3(uint256): 21028
// f4(uint256): 21006
// f5(uint256): 20984
// f6(uint256): 20896
// f7(uint256): 20676
// f8(uint256): 20808
// f9(uint256): 20830
// g0(uint256): 574
// g1(uint256): 40586
// g2(uint256): 20674
// g3(uint256): 20762
// g4(uint256): 20740
// g5(uint256): 20828
// g6(uint256): 20608
// g7(uint256): 20718
// g8(uint256): 20696
// g9(uint256): 20542