solidity/test/libsolidity/gasTests/dispatch_large_optimised.sol

53 lines
2.2 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: 300 + 260000 = 260300
// external:
// a(): 398
// b(uint256): 1105
// f0(uint256): 334
// f1(uint256): 40886
// f2(uint256): 20952
// f3(uint256): 21040
// f4(uint256): 21018
// f5(uint256): 20996
// f6(uint256): 20908
// f7(uint256): 20688
// f8(uint256): 20820
// f9(uint256): 20842
// g0(uint256): 574
// g1(uint256): 40598
// g2(uint256): 20686
// g3(uint256): 20774
// g4(uint256): 20752
// g5(uint256): 20840
// g6(uint256): 20620
// g7(uint256): 20730
// g8(uint256): 20708
// g9(uint256): 20554