mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Update tests
This commit is contained in:
parent
1e3596ec71
commit
b5c340cd66
@ -58,7 +58,7 @@ object "D_13" {
|
|||||||
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
||||||
let _3 := datasize("C_2")
|
let _3 := datasize("C_2")
|
||||||
let _4 := add(_1, _3)
|
let _4 := add(_1, _3)
|
||||||
if or(gt(_4, 0xffffffffffffffff), lt(_4, _1)) { revert(_2, _2) }
|
if or(gt(_4, 0xffffffffffffffff), lt(_4, _1)) { invalid() }
|
||||||
datacopy(_1, dataoffset("C_2"), _3)
|
datacopy(_1, dataoffset("C_2"), _3)
|
||||||
pop(create(_2, _1, sub(_4, _1)))
|
pop(create(_2, _1, sub(_4, _1)))
|
||||||
return(allocateMemory(_2), _2)
|
return(allocateMemory(_2), _2)
|
||||||
@ -70,7 +70,7 @@ object "D_13" {
|
|||||||
{
|
{
|
||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { invalid() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,7 @@ object "D_11" {
|
|||||||
{
|
{
|
||||||
if callvalue() { revert(_2, _2) }
|
if callvalue() { revert(_2, _2) }
|
||||||
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
||||||
if gt(_1, 0xffffffffffffffff) { revert(_2, _2) }
|
if gt(_1, 0xffffffffffffffff) { invalid() }
|
||||||
mstore(64, _1)
|
mstore(64, _1)
|
||||||
return(_1, _2)
|
return(_1, _2)
|
||||||
}
|
}
|
||||||
|
@ -33,7 +33,7 @@ object "C_56" {
|
|||||||
if gt(offset, _3) { revert(_1, _1) }
|
if gt(offset, _3) { revert(_1, _1) }
|
||||||
if iszero(slt(add(offset, 35), calldatasize())) { revert(_1, _1) }
|
if iszero(slt(add(offset, 35), calldatasize())) { revert(_1, _1) }
|
||||||
let length := calldataload(add(4, offset))
|
let length := calldataload(add(4, offset))
|
||||||
if gt(length, _3) { revert(_1, _1) }
|
if gt(length, _3) { invalid() }
|
||||||
let _4 := mul(length, _2)
|
let _4 := mul(length, _2)
|
||||||
let dst := allocateMemory(add(_4, _2))
|
let dst := allocateMemory(add(_4, _2))
|
||||||
let dst_1 := dst
|
let dst_1 := dst
|
||||||
@ -58,8 +58,12 @@ object "C_56" {
|
|||||||
function abi_decode_t_struct$_S(headStart, end) -> value
|
function abi_decode_t_struct$_S(headStart, end) -> value
|
||||||
{
|
{
|
||||||
if slt(sub(end, headStart), 0x20) { revert(value, value) }
|
if slt(sub(end, headStart), 0x20) { revert(value, value) }
|
||||||
value := allocateMemory(0x20)
|
let memPtr := mload(64)
|
||||||
mstore(value, calldataload(headStart))
|
let newFreePtr := add(memPtr, 0x20)
|
||||||
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { invalid() }
|
||||||
|
mstore(64, newFreePtr)
|
||||||
|
value := memPtr
|
||||||
|
mstore(memPtr, calldataload(headStart))
|
||||||
}
|
}
|
||||||
function abi_encode_uint256_t_string(headStart, value0, value1) -> tail
|
function abi_encode_uint256_t_string(headStart, value0, value1) -> tail
|
||||||
{
|
{
|
||||||
@ -83,17 +87,21 @@ object "C_56" {
|
|||||||
{
|
{
|
||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { invalid() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
function convert_t_stringliteral_6490_to_t_string() -> converted
|
function convert_t_stringliteral_6490_to_t_string() -> converted
|
||||||
{
|
{
|
||||||
converted := allocateMemory(160)
|
let memPtr := mload(64)
|
||||||
mstore(converted, 100)
|
let newFreePtr := add(memPtr, 160)
|
||||||
mstore(add(converted, 32), "longstringlongstringlongstringlo")
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { invalid() }
|
||||||
mstore(add(converted, 64), "ngstringlongstringlongstringlong")
|
mstore(64, newFreePtr)
|
||||||
mstore(add(converted, 96), "stringlongstringlongstringlongst")
|
converted := memPtr
|
||||||
mstore(add(converted, 128), "ring")
|
mstore(memPtr, 100)
|
||||||
|
mstore(add(memPtr, 32), "longstringlongstringlongstringlo")
|
||||||
|
mstore(add(memPtr, 64), "ngstringlongstringlongstringlong")
|
||||||
|
mstore(add(memPtr, 96), "stringlongstringlongstringlongst")
|
||||||
|
mstore(add(memPtr, 128), "ring")
|
||||||
}
|
}
|
||||||
function extract_from_storage_value_dynamict_uint256(slot_value, offset) -> value
|
function extract_from_storage_value_dynamict_uint256(slot_value, offset) -> value
|
||||||
{
|
{
|
||||||
|
@ -33,13 +33,13 @@ object "Arraysum_33" {
|
|||||||
for { }
|
for { }
|
||||||
lt(vloc_i, _2)
|
lt(vloc_i, _2)
|
||||||
{
|
{
|
||||||
if gt(vloc_i, not(1)) { revert(_1, _1) }
|
if gt(vloc_i, not(1)) { invalid() }
|
||||||
vloc_i := add(vloc_i, 1)
|
vloc_i := add(vloc_i, 1)
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
mstore(_1, _1)
|
mstore(_1, _1)
|
||||||
let _3 := sload(add(keccak256(_1, 0x20), vloc_i))
|
let _3 := sload(add(keccak256(_1, 0x20), vloc_i))
|
||||||
if gt(vloc_sum, not(_3)) { revert(_1, _1) }
|
if gt(vloc_sum, not(_3)) { invalid() }
|
||||||
vloc_sum := add(vloc_sum, _3)
|
vloc_sum := add(vloc_sum, _3)
|
||||||
}
|
}
|
||||||
let memPos := allocateMemory(_1)
|
let memPos := allocateMemory(_1)
|
||||||
@ -57,7 +57,7 @@ object "Arraysum_33" {
|
|||||||
{
|
{
|
||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { invalid() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
File diff suppressed because one or more lines are too long
@ -44,11 +44,13 @@ object \"C_6\" {
|
|||||||
{
|
{
|
||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
function fun_f_5()
|
function fun_f_5()
|
||||||
{ }
|
{ }
|
||||||
|
function panic_error()
|
||||||
|
{ invalid() }
|
||||||
function shift_right_224_unsigned(value) -> newValue
|
function shift_right_224_unsigned(value) -> newValue
|
||||||
{ newValue := shr(224, value) }
|
{ newValue := shr(224, value) }
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ object \"C_6\" {
|
|||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
// protect against overflow
|
// protect against overflow
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,6 +69,10 @@ object \"C_6\" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function panic_error() {
|
||||||
|
invalid()
|
||||||
|
}
|
||||||
|
|
||||||
function shift_right_224_unsigned(value) -> newValue {
|
function shift_right_224_unsigned(value) -> newValue {
|
||||||
newValue :=
|
newValue :=
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -71,7 +71,7 @@ object \"C_10\" {
|
|||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
// protect against overflow
|
// protect against overflow
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,6 +116,10 @@ object \"C_10\" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function panic_error() {
|
||||||
|
invalid()
|
||||||
|
}
|
||||||
|
|
||||||
function round_up_to_mul_of_32(value) -> result {
|
function round_up_to_mul_of_32(value) -> result {
|
||||||
result := and(add(value, 31), not(31))
|
result := and(add(value, 31), not(31))
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ object \"C_10\" {
|
|||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
// protect against overflow
|
// protect against overflow
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,6 +88,10 @@ object \"C_10\" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function panic_error() {
|
||||||
|
invalid()
|
||||||
|
}
|
||||||
|
|
||||||
function shift_right_224_unsigned(value) -> newValue {
|
function shift_right_224_unsigned(value) -> newValue {
|
||||||
newValue :=
|
newValue :=
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ object \"C_10\" {
|
|||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
// protect against overflow
|
// protect against overflow
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,6 +93,10 @@ object \"C_10\" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function panic_error() {
|
||||||
|
invalid()
|
||||||
|
}
|
||||||
|
|
||||||
function shift_left_224(value) -> newValue {
|
function shift_left_224(value) -> newValue {
|
||||||
newValue :=
|
newValue :=
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ object \"C_10\" {
|
|||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
// protect against overflow
|
// protect against overflow
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -120,6 +120,10 @@ object \"C_10\" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function panic_error() {
|
||||||
|
invalid()
|
||||||
|
}
|
||||||
|
|
||||||
function round_up_to_mul_of_32(value) -> result {
|
function round_up_to_mul_of_32(value) -> result {
|
||||||
result := and(add(value, 31), not(31))
|
result := and(add(value, 31), not(31))
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ object \"C_10\" {
|
|||||||
memPtr := mload(64)
|
memPtr := mload(64)
|
||||||
let newFreePtr := add(memPtr, size)
|
let newFreePtr := add(memPtr, size)
|
||||||
// protect against overflow
|
// protect against overflow
|
||||||
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { revert(0, 0) }
|
if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error() }
|
||||||
mstore(64, newFreePtr)
|
mstore(64, newFreePtr)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,6 +93,10 @@ object \"C_10\" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function panic_error() {
|
||||||
|
invalid()
|
||||||
|
}
|
||||||
|
|
||||||
function shift_left_224(value) -> newValue {
|
function shift_left_224(value) -> newValue {
|
||||||
newValue :=
|
newValue :=
|
||||||
|
|
||||||
|
@ -14,9 +14,9 @@ contract C {
|
|||||||
}
|
}
|
||||||
// ----
|
// ----
|
||||||
// creation:
|
// creation:
|
||||||
// codeDepositCost: 1094400
|
// codeDepositCost: 1106800
|
||||||
// executionCost: 1134
|
// executionCost: 1147
|
||||||
// totalCost: 1095534
|
// totalCost: 1107947
|
||||||
// external:
|
// external:
|
||||||
// a(): 1130
|
// a(): 1130
|
||||||
// b(uint256): infinite
|
// b(uint256): infinite
|
||||||
|
@ -17,9 +17,9 @@ contract C {
|
|||||||
// optimize-yul: true
|
// optimize-yul: true
|
||||||
// ----
|
// ----
|
||||||
// creation:
|
// creation:
|
||||||
// codeDepositCost: 597000
|
// codeDepositCost: 604400
|
||||||
// executionCost: 632
|
// executionCost: 638
|
||||||
// totalCost: 597632
|
// totalCost: 605038
|
||||||
// external:
|
// external:
|
||||||
// a(): 1029
|
// a(): 1029
|
||||||
// b(uint256): 2084
|
// b(uint256): 2084
|
||||||
|
Loading…
Reference in New Issue
Block a user