/// Probe: `exp(0, 0)` — EVM defines `0^0 = 1`. revive's stdlib `__exp` checks /// `exp == 0` first and returns 1; the body never runs for this case. object "ExpZeroZeroProbe" { code { let size := datasize("ExpZeroZeroProbe_deployed") codecopy(0, dataoffset("ExpZeroZeroProbe_deployed"), size) return(0, size) } object "ExpZeroZeroProbe_deployed" { code { let tag := calldataload(0) let base := sub(shl(8, 1), shl(8, 1)) // = 0 let exponent := sub(shl(8, 1), shl(8, 1)) // = 0 mstore(0, xor(exp(base, exponent), tag)) return(0, 32) } } }