solidity/test/libsolidity/gasTests/dispatch_large_optimised.sol

56 lines
2.3 KiB
Solidity
Raw Normal View History

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: 261200
// executionCost: 300
// totalCost: 261500
// external:
2019-12-04 10:41:42 +00:00
// a(): 998
// b(uint256): 2305
// f0(uint256): 334
2019-12-04 10:41:42 +00:00
// f1(uint256): 41474
// f2(uint256): 21540
// f3(uint256): 21628
// f4(uint256): 21606
// f5(uint256): 21584
// f6(uint256): 21496
// f7(uint256): 21276
// f8(uint256): 21408
// f9(uint256): 21430
// g0(uint256): 574
2019-12-04 10:41:42 +00:00
// g1(uint256): 41186
// g2(uint256): 21274
// g3(uint256): 21362
// g4(uint256): 21340
// g5(uint256): 21428
// g6(uint256): 21208
// g7(uint256): 21318
// g8(uint256): 21296
// g9(uint256): 21142