2020-11-23 18:06:44 +00:00
|
|
|
pragma abicoder v2;
|
2020-09-25 15:05:15 +00:00
|
|
|
|
|
|
|
contract C {
|
|
|
|
function exp_neg_one(uint exponent) public returns(int) {
|
2020-09-15 14:16:30 +00:00
|
|
|
unchecked { return (-1)**exponent; }
|
2020-09-25 15:05:15 +00:00
|
|
|
}
|
|
|
|
function exp_two(uint exponent) public returns(uint) {
|
2020-09-15 14:16:30 +00:00
|
|
|
unchecked { return 2**exponent; }
|
2020-09-25 15:05:15 +00:00
|
|
|
}
|
|
|
|
function exp_zero(uint exponent) public returns(uint) {
|
2020-09-15 14:16:30 +00:00
|
|
|
unchecked { return 0**exponent; }
|
2020-09-25 15:05:15 +00:00
|
|
|
}
|
|
|
|
function exp_one(uint exponent) public returns(uint) {
|
2020-09-15 14:16:30 +00:00
|
|
|
unchecked { return 1**exponent; }
|
2020-09-25 15:05:15 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
// ====
|
|
|
|
// optimize: false
|
|
|
|
// optimize-yul: false
|
|
|
|
// ----
|
|
|
|
// creation:
|
2023-04-26 11:03:17 +00:00
|
|
|
// codeDepositCost: 107000
|
|
|
|
// executionCost: 151
|
|
|
|
// totalCost: 107151
|
2020-09-25 15:05:15 +00:00
|
|
|
// external:
|
2023-04-26 11:03:17 +00:00
|
|
|
// exp_neg_one(uint256): 2250
|
2020-09-25 15:05:15 +00:00
|
|
|
// exp_one(uint256): infinite
|
|
|
|
// exp_two(uint256): infinite
|
|
|
|
// exp_zero(uint256): infinite
|