solidity/test/libsolidity/gasTests/dispatch_large.sol

50 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); }
}
// ----
// creation: 670 + 635000 = 635670
// external:
// a(): 451
// b(uint256): 846
// f0(uint256): 427
// f1(uint256): 40752
// f2(uint256): 20693
// f3(uint256): 20781
// f4(uint256): 20759
// f5(uint256): 20737
// f6(uint256): 20760
// f7(uint256): 20672
// f8(uint256): 20672
// f9(uint256): 20694
// g0(uint256): 313
// g1(uint256): 40707
// g2(uint256): 20670
// g3(uint256): 20758
// g4(uint256): 20736
// g5(uint256): 20692
// g6(uint256): 20715
// g7(uint256): 20714
// g8(uint256): 20692
// g9(uint256): 20649