======= optimizer_inliner_dynamic_reference/input.sol:C ======= EVM assembly: /* "optimizer_inliner_dynamic_reference/input.sol":60:367 contract C {... */ mstore(0x40, 0x80) callvalue dup1 iszero tag_1 jumpi 0x00 dup1 revert tag_1: pop dataSize(sub_0) dup1 dataOffset(sub_0) 0x00 codecopy 0x00 return stop sub_0: assembly { /* "optimizer_inliner_dynamic_reference/input.sol":60:367 contract C {... */ mstore(0x40, 0x80) callvalue dup1 iszero tag_1 jumpi 0x00 dup1 revert tag_1: pop jumpi(tag_2, lt(calldatasize, 0x04)) shr(0xe0, calldataload(0x00)) dup1 0x0dbe671f eq tag_3 jumpi dup1 0xb8c9d365 eq tag_4 jumpi dup1 0xe2179b8e eq tag_5 jumpi tag_2: 0x00 dup1 revert /* "optimizer_inliner_dynamic_reference/input.sol":160:215 function a() public pure returns (uint) { return f(); } */ tag_3: /* "optimizer_inliner_dynamic_reference/input.sol":361:362 6 */ 0x06 /* "optimizer_inliner_dynamic_reference/input.sol":160:215 function a() public pure returns (uint) { return f(); } */ tag_6: mload(0x40) /* "#utility.yul":160:185 */ swap1 dup2 mstore /* "#utility.yul":148:150 */ 0x20 /* "#utility.yul":133:151 */ add /* "optimizer_inliner_dynamic_reference/input.sol":160:215 function a() public pure returns (uint) { return f(); } */ mload(0x40) dup1 swap2 sub swap1 return /* "optimizer_inliner_dynamic_reference/input.sol":246:305 function h() public view returns (uint) { return x() + 1; } */ tag_4: tag_6 tag_11 jump // in /* "optimizer_inliner_dynamic_reference/input.sol":125:155 function g() public { x = f; } */ tag_5: /* "optimizer_inliner_dynamic_reference/input.sol":147:148 x */ 0x00 /* "optimizer_inliner_dynamic_reference/input.sol":147:152 x = f */ dup1 sload not(0xffffffffffffffff) and /* "optimizer_inliner_dynamic_reference/input.sol":151:152 f */ tag_17 /* "optimizer_inliner_dynamic_reference/input.sol":147:152 x = f */ or swap1 sstore /* "optimizer_inliner_dynamic_reference/input.sol":125:155 function g() public { x = f; } */ stop /* "optimizer_inliner_dynamic_reference/input.sol":209:212 f() */ tag_16: /* "optimizer_inliner_dynamic_reference/input.sol":202:212 return f() */ swap1 pop /* "optimizer_inliner_dynamic_reference/input.sol":160:215 function a() public pure returns (uint) { return f(); } */ swap1 jump // out /* "optimizer_inliner_dynamic_reference/input.sol":246:305 function h() public view returns (uint) { return x() + 1; } */ tag_11: /* "optimizer_inliner_dynamic_reference/input.sol":280:284 uint */ 0x00 /* "optimizer_inliner_dynamic_reference/input.sol":295:296 x */ dup1 sload /* "optimizer_inliner_dynamic_reference/input.sol":295:298 x() */ tag_19 swap1 /* "optimizer_inliner_dynamic_reference/input.sol":295:296 x */ dup1 iszero tag_20 mul or /* "optimizer_inliner_dynamic_reference/input.sol":295:298 x() */ 0xffffffff and jump // in tag_19: /* "optimizer_inliner_dynamic_reference/input.sol":295:302 x() + 1 */ tag_16 swap1 /* "optimizer_inliner_dynamic_reference/input.sol":301:302 1 */ 0x01 /* "optimizer_inliner_dynamic_reference/input.sol":295:302 x() + 1 */ tag_22 jump // in /* "optimizer_inliner_dynamic_reference/input.sol":310:365 function f() internal pure returns (uint) { return 6; } */ tag_17: /* "optimizer_inliner_dynamic_reference/input.sol":361:362 6 */ 0x06 swap1 /* "optimizer_inliner_dynamic_reference/input.sol":310:365 function f() internal pure returns (uint) { return 6; } */ jump // out tag_20: tag_25 tag_26 jump // in tag_25: jump // out /* "#utility.yul":196:418 */ tag_22: /* "#utility.yul":261:270 */ dup1 dup3 add /* "#utility.yul":282:292 */ dup1 dup3 gt /* "#utility.yul":279:412 */ iszero tag_30 jumpi /* "#utility.yul":334:344 */ 0x4e487b71 /* "#utility.yul":329:332 */ 0xe0 /* "#utility.yul":325:345 */ shl /* "#utility.yul":322:323 */ 0x00 /* "#utility.yul":315:346 */ mstore /* "#utility.yul":369:373 */ 0x11 /* "#utility.yul":366:367 */ 0x04 /* "#utility.yul":359:374 */ mstore /* "#utility.yul":397:401 */ 0x24 /* "#utility.yul":394:395 */ 0x00 /* "#utility.yul":387:402 */ revert /* "#utility.yul":279:412 */ tag_30: /* "#utility.yul":196:418 */ swap3 swap2 pop pop jump // out /* "#utility.yul":423:550 */ tag_26: /* "#utility.yul":484:494 */ 0x4e487b71 /* "#utility.yul":479:482 */ 0xe0 /* "#utility.yul":475:495 */ shl /* "#utility.yul":472:473 */ 0x00 /* "#utility.yul":465:496 */ mstore /* "#utility.yul":515:519 */ 0x51 /* "#utility.yul":512:513 */ 0x04 /* "#utility.yul":505:520 */ mstore /* "#utility.yul":539:543 */ 0x24 /* "#utility.yul":536:537 */ 0x00 /* "#utility.yul":529:544 */ revert auxdata: }