mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
[libevmasm] Add support to import evm assembly json.
This commit is contained in:
@@ -1567,7 +1567,8 @@ EVM assembly:
|
||||
"name": "JUMP",
|
||||
"source": 1
|
||||
}
|
||||
]
|
||||
],
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"sourceList":
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
--strict-assembly - --asm-json --pretty-json
|
||||
@@ -0,0 +1,388 @@
|
||||
|
||||
======= <stdin> (EVM) =======
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 37,
|
||||
"end": 51,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 34,
|
||||
"end": 35,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 27,
|
||||
"end": 52,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 67,
|
||||
"end": 81,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 64,
|
||||
"end": 65,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "1"
|
||||
},
|
||||
{
|
||||
"begin": 57,
|
||||
"end": 82,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 97,
|
||||
"end": 114,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 94,
|
||||
"end": 95,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "2"
|
||||
},
|
||||
{
|
||||
"begin": 87,
|
||||
"end": 115,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 130,
|
||||
"end": 152,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 127,
|
||||
"end": 128,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "3"
|
||||
},
|
||||
{
|
||||
"begin": 120,
|
||||
"end": 153,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 168,
|
||||
"end": 190,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 165,
|
||||
"end": 166,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "4"
|
||||
},
|
||||
{
|
||||
"begin": 158,
|
||||
"end": 191,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 206,
|
||||
"end": 228,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffc"
|
||||
},
|
||||
{
|
||||
"begin": 203,
|
||||
"end": 204,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "5"
|
||||
},
|
||||
{
|
||||
"begin": 196,
|
||||
"end": 229,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 21,
|
||||
"end": 233,
|
||||
"name": "STOP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 278,
|
||||
"end": 292,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 275,
|
||||
"end": 276,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "6"
|
||||
},
|
||||
{
|
||||
"begin": 268,
|
||||
"end": 293,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 310,
|
||||
"end": 324,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 307,
|
||||
"end": 308,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "7"
|
||||
},
|
||||
{
|
||||
"begin": 300,
|
||||
"end": 325,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 342,
|
||||
"end": 361,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 339,
|
||||
"end": 340,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "8"
|
||||
},
|
||||
{
|
||||
"begin": 332,
|
||||
"end": 362,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 379,
|
||||
"end": 398,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 376,
|
||||
"end": 377,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "9"
|
||||
},
|
||||
{
|
||||
"begin": 369,
|
||||
"end": 399,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 417,
|
||||
"end": 436,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 413,
|
||||
"end": 415,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "A"
|
||||
},
|
||||
{
|
||||
"begin": 406,
|
||||
"end": 437,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 260,
|
||||
"end": 443,
|
||||
"name": "STOP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 494,
|
||||
"end": 508,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 490,
|
||||
"end": 492,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "B"
|
||||
},
|
||||
{
|
||||
"begin": 483,
|
||||
"end": 509,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 529,
|
||||
"end": 545,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 525,
|
||||
"end": 527,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "C"
|
||||
},
|
||||
{
|
||||
"begin": 518,
|
||||
"end": 546,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 566,
|
||||
"end": 582,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000001"
|
||||
},
|
||||
{
|
||||
"begin": 562,
|
||||
"end": 564,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "D"
|
||||
},
|
||||
{
|
||||
"begin": 555,
|
||||
"end": 583,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 603,
|
||||
"end": 619,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000002"
|
||||
},
|
||||
{
|
||||
"begin": 599,
|
||||
"end": 601,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "E"
|
||||
},
|
||||
{
|
||||
"begin": 592,
|
||||
"end": 620,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 473,
|
||||
"end": 628,
|
||||
"name": "STOP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 676,
|
||||
"end": 685,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
},
|
||||
"1":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 751,
|
||||
"end": 760,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 1
|
||||
},
|
||||
"2":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 826,
|
||||
"end": 835,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 2
|
||||
}
|
||||
},
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"<stdin>"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
object "L0" {
|
||||
code {
|
||||
sstore(0, datasize("L0"))
|
||||
sstore(1, datasize("L1"))
|
||||
sstore(2, datasize("L1.L2"))
|
||||
sstore(3, datasize("L1.L2.L2_0"))
|
||||
sstore(4, datasize("L1.L2.L2_1"))
|
||||
sstore(5, datasize("L1.L2.L2_2"))
|
||||
}
|
||||
|
||||
object "L1" {
|
||||
code {
|
||||
sstore(6, datasize("L1"))
|
||||
sstore(7, datasize("L2"))
|
||||
sstore(8, datasize("L2.L2_0"))
|
||||
sstore(9, datasize("L2.L2_1"))
|
||||
sstore(10, datasize("L2.L2_2"))
|
||||
}
|
||||
object "L2" {
|
||||
code {
|
||||
sstore(11, datasize("L2"))
|
||||
sstore(12, datasize("L2_0"))
|
||||
sstore(13, datasize("L2_1"))
|
||||
sstore(14, datasize("L2_2"))
|
||||
}
|
||||
object "L2_0" {
|
||||
code {
|
||||
invalid()
|
||||
}
|
||||
}
|
||||
object "L2_1" {
|
||||
code {
|
||||
invalid()
|
||||
}
|
||||
}
|
||||
object "L2_2" {
|
||||
code {
|
||||
invalid()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--strict-assembly - --asm-json --pretty-json
|
||||
@@ -0,0 +1,437 @@
|
||||
|
||||
======= <stdin> (EVM) =======
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 36,
|
||||
"end": 51,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 33,
|
||||
"end": 34,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 26,
|
||||
"end": 52,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 67,
|
||||
"end": 80,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 64,
|
||||
"end": 65,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "1"
|
||||
},
|
||||
{
|
||||
"begin": 57,
|
||||
"end": 81,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 96,
|
||||
"end": 111,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 93,
|
||||
"end": 94,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "2"
|
||||
},
|
||||
{
|
||||
"begin": 86,
|
||||
"end": 112,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 127,
|
||||
"end": 140,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 124,
|
||||
"end": 125,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "3"
|
||||
},
|
||||
{
|
||||
"begin": 117,
|
||||
"end": 141,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 156,
|
||||
"end": 173,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 153,
|
||||
"end": 154,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "4"
|
||||
},
|
||||
{
|
||||
"begin": 146,
|
||||
"end": 174,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 189,
|
||||
"end": 204,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 186,
|
||||
"end": 187,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "5"
|
||||
},
|
||||
{
|
||||
"begin": 179,
|
||||
"end": 205,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 220,
|
||||
"end": 237,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 217,
|
||||
"end": 218,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "6"
|
||||
},
|
||||
{
|
||||
"begin": 210,
|
||||
"end": 238,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 253,
|
||||
"end": 268,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 250,
|
||||
"end": 251,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "7"
|
||||
},
|
||||
{
|
||||
"begin": 243,
|
||||
"end": 269,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 284,
|
||||
"end": 303,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 281,
|
||||
"end": 282,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "8"
|
||||
},
|
||||
{
|
||||
"begin": 274,
|
||||
"end": 304,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 319,
|
||||
"end": 336,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 316,
|
||||
"end": 317,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "9"
|
||||
},
|
||||
{
|
||||
"begin": 309,
|
||||
"end": 337,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 20,
|
||||
"end": 341,
|
||||
"name": "STOP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 418,
|
||||
"end": 433,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 414,
|
||||
"end": 416,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "A"
|
||||
},
|
||||
{
|
||||
"begin": 407,
|
||||
"end": 434,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 452,
|
||||
"end": 465,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 448,
|
||||
"end": 450,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "B"
|
||||
},
|
||||
{
|
||||
"begin": 441,
|
||||
"end": 466,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 484,
|
||||
"end": 499,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000001"
|
||||
},
|
||||
{
|
||||
"begin": 480,
|
||||
"end": 482,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "C"
|
||||
},
|
||||
{
|
||||
"begin": 473,
|
||||
"end": 500,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 518,
|
||||
"end": 531,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000001"
|
||||
},
|
||||
{
|
||||
"begin": 514,
|
||||
"end": 516,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "D"
|
||||
},
|
||||
{
|
||||
"begin": 507,
|
||||
"end": 532,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 550,
|
||||
"end": 567,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 546,
|
||||
"end": 548,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "E"
|
||||
},
|
||||
{
|
||||
"begin": 539,
|
||||
"end": 568,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 586,
|
||||
"end": 601,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 582,
|
||||
"end": 584,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "F"
|
||||
},
|
||||
{
|
||||
"begin": 575,
|
||||
"end": 602,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 399,
|
||||
"end": 608,
|
||||
"name": "STOP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 658,
|
||||
"end": 673,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 654,
|
||||
"end": 656,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "10"
|
||||
},
|
||||
{
|
||||
"begin": 647,
|
||||
"end": 674,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 694,
|
||||
"end": 707,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 690,
|
||||
"end": 692,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "11"
|
||||
},
|
||||
{
|
||||
"begin": 683,
|
||||
"end": 708,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 637,
|
||||
"end": 716,
|
||||
"name": "STOP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 761,
|
||||
"end": 770,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"index": 0
|
||||
},
|
||||
"1":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 833,
|
||||
"end": 842,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 1
|
||||
}
|
||||
},
|
||||
"index": 0
|
||||
},
|
||||
"ACAF3289D7B601CBD114FB36C4D29C85BBFD5E133F14CB355C3FD8D99367964F": "48656c6c6f2c20576f726c6421"
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"<stdin>"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
object "A" {
|
||||
code {
|
||||
sstore(0, dataoffset("A"))
|
||||
sstore(1, datasize("A"))
|
||||
sstore(2, dataoffset("B"))
|
||||
sstore(3, datasize("B"))
|
||||
sstore(4, dataoffset("B.C"))
|
||||
sstore(5, datasize("B.C"))
|
||||
sstore(6, dataoffset("B.E"))
|
||||
sstore(7, datasize("B.E"))
|
||||
sstore(8, dataoffset("B.C.D"))
|
||||
sstore(9, datasize("B.C.D"))
|
||||
}
|
||||
|
||||
data "data1" "Hello, World!"
|
||||
|
||||
object "B" {
|
||||
code {
|
||||
sstore(10, dataoffset("C"))
|
||||
sstore(11, datasize("C"))
|
||||
sstore(12, dataoffset("E"))
|
||||
sstore(13, datasize("E"))
|
||||
sstore(14, dataoffset("C.D"))
|
||||
sstore(15, datasize("C.D"))
|
||||
}
|
||||
object "C" {
|
||||
code {
|
||||
sstore(16, dataoffset("D"))
|
||||
sstore(17, datasize("D"))
|
||||
}
|
||||
object "D" {
|
||||
code {
|
||||
invalid()
|
||||
}
|
||||
}
|
||||
}
|
||||
object "E" {
|
||||
code {
|
||||
invalid()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--strict-assembly - --asm-json
|
||||
@@ -0,0 +1,3 @@
|
||||
|
||||
======= <stdin> (EVM) =======
|
||||
{".code":[{"begin":28,"end":29,"name":"PUSH","source":0,"value":"0"},{"begin":15,"end":30,"name":"CALLDATALOAD","source":0},{"begin":44,"end":46,"name":"PUSH","source":0,"value":"14"},{"begin":61,"end":62,"name":"DUP1","source":0},{"begin":58,"end":59,"name":"DUP3","source":0},{"begin":51,"end":63,"name":"SSTORE","source":0},{"begin":84,"end":86,"name":"PUSH","source":0,"value":"20"},{"begin":71,"end":87,"name":"CALLDATALOAD","source":0},{"begin":68,"end":188,"name":"ISZERO","source":0},{"begin":68,"end":188,"name":"PUSH [tag]","source":0,"value":"1"},{"begin":68,"end":188,"name":"JUMPI","source":0},{"begin":108,"end":109,"name":"DUP1","source":0},{"begin":105,"end":106,"name":"DUP3","source":0},{"begin":98,"end":110,"name":"SSTORE","source":0},{"begin":149,"end":150,"name":"PUSH","source":0,"value":"0"},{"begin":146,"end":147,"name":"DUP1","source":0},{"begin":143,"end":144,"name":"PUSH","source":0,"value":"0"},{"begin":140,"end":141,"name":"DUP1","source":0},{"begin":137,"end":138,"name":"PUSH","source":0,"value":"0"},{"begin":134,"end":135,"name":"DUP1","source":0},{"begin":123,"end":151,"name":"STATICCALL","source":0},{"begin":119,"end":152,"name":"POP","source":0},{"begin":161,"end":182,"name":"VERBATIM","source":0,"value":"78797a"},{"begin":68,"end":188,"name":"tag","source":0,"value":"1"},{"begin":68,"end":188,"name":"JUMPDEST","source":0},{"begin":203,"end":204,"name":"DUP1","source":0},{"begin":200,"end":201,"name":"DUP3","source":0},{"begin":193,"end":205,"name":"SSTORE","source":0},{"begin":0,"end":207,"name":"POP","source":0},{"begin":0,"end":207,"name":"POP","source":0}],"sourceList":["<stdin>"]}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
let a := calldataload(0)
|
||||
let b := 20
|
||||
sstore(a, b)
|
||||
if calldataload(32) {
|
||||
sstore(a, b)
|
||||
pop(staticcall(0, 0, 0, 0, 0, 0))
|
||||
verbatim_0i_0o("xyz")
|
||||
}
|
||||
sstore(a, b)
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--strict-assembly - --asm-json
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,50 @@
|
||||
/// @use-src 0:"state_var_initialization.sol"
|
||||
object "C_23" {
|
||||
code {
|
||||
{
|
||||
/// @src 0:0:125 "contract C {..."
|
||||
let _1 := memoryguard(0x80)
|
||||
mstore(64, _1)
|
||||
if callvalue() { revert(0, 0) }
|
||||
sstore(/** @src 0:33:34 "1" */ 0x00, /** @src 0:56:57 "2" */ 0x02)
|
||||
/// @src 0:0:125 "contract C {..."
|
||||
sstore(/** @src 0:33:34 "1" */ 0x01, 0x00)
|
||||
/// @src 0:0:125 "contract C {..."
|
||||
let _2 := datasize("C_23_deployed")
|
||||
codecopy(_1, dataoffset("C_23_deployed"), _2)
|
||||
return(_1, _2)
|
||||
}
|
||||
}
|
||||
/// @use-src 0:"state_var_initialization.sol"
|
||||
object "C_23_deployed" {
|
||||
code {
|
||||
{
|
||||
/// @src 0:0:125 "contract C {..."
|
||||
let _1 := memoryguard(0x80)
|
||||
mstore(64, _1)
|
||||
if iszero(lt(calldatasize(), 4))
|
||||
{
|
||||
let _2 := 0
|
||||
switch shr(224, calldataload(_2))
|
||||
case 0xb4f40c61 {
|
||||
if callvalue() { revert(_2, _2) }
|
||||
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
||||
mstore(_1, sload(/** @src 0:40:57 "uint public k = 2" */ 1))
|
||||
/// @src 0:0:125 "contract C {..."
|
||||
return(_1, 32)
|
||||
}
|
||||
case 0xe5aa3d58 {
|
||||
if callvalue() { revert(_2, _2) }
|
||||
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
||||
let _3 := sload(_2)
|
||||
let memPos := mload(64)
|
||||
mstore(memPos, _3)
|
||||
return(memPos, 32)
|
||||
}
|
||||
}
|
||||
revert(0, 0)
|
||||
}
|
||||
}
|
||||
data ".metadata" hex"a2646970667358221220f04f800086d1bd95dea7e66c53d041963124c118e4dc70bc4b39a50865c2483f64736f6c63430008130033"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--strict-assembly - --asm-json
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,43 @@
|
||||
object "C_23" {
|
||||
code {
|
||||
{
|
||||
let _1 := memoryguard(0x80)
|
||||
mstore(64, _1)
|
||||
if callvalue() { revert(0, 0) }
|
||||
sstore(0x00, 0x02)
|
||||
sstore(0x01, 0x00)
|
||||
let _2 := datasize("C_23_deployed")
|
||||
codecopy(_1, dataoffset("C_23_deployed"), _2)
|
||||
return(_1, _2)
|
||||
}
|
||||
}
|
||||
object "C_23_deployed" {
|
||||
code {
|
||||
{
|
||||
let _1 := memoryguard(0x80)
|
||||
mstore(64, _1)
|
||||
if iszero(lt(calldatasize(), 4))
|
||||
{
|
||||
let _2 := 0
|
||||
switch shr(224, calldataload(_2))
|
||||
case 0xb4f40c61 {
|
||||
if callvalue() { revert(_2, _2) }
|
||||
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
||||
mstore(_1, sload(/** @src 0:40:57 "uint public k = 2" */ 1))
|
||||
return(_1, 32)
|
||||
}
|
||||
case 0xe5aa3d58 {
|
||||
if callvalue() { revert(_2, _2) }
|
||||
if slt(add(calldatasize(), not(3)), _2) { revert(_2, _2) }
|
||||
let _3 := sload(_2)
|
||||
let memPos := mload(64)
|
||||
mstore(memPos, _3)
|
||||
return(memPos, 32)
|
||||
}
|
||||
}
|
||||
revert(0, 0)
|
||||
}
|
||||
}
|
||||
data ".metadata" hex"a2646970667358221220f04f800086d1bd95dea7e66c53d041963124c118e4dc70bc4b39a50865c2483f64736f6c63430008130033"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--pretty-json --json-indent 4 --combined-json bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime --asm --bin --bin-runtime --asm-json --import-asm-json -
|
||||
@@ -0,0 +1,93 @@
|
||||
{
|
||||
"contracts":
|
||||
{
|
||||
"<stdin>":
|
||||
{
|
||||
"asm":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 0,
|
||||
"end": 0,
|
||||
"name": "PUSH",
|
||||
"source": -1,
|
||||
"value": "0"
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 0,
|
||||
"end": 0,
|
||||
"name": "PUSH",
|
||||
"source": -1,
|
||||
"value": "1"
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"contract.sol",
|
||||
"#utility.yul"
|
||||
]
|
||||
},
|
||||
"bin": "5ffe",
|
||||
"bin-runtime": "6001",
|
||||
"opcodes": "PUSH0 INVALID ",
|
||||
"srcmap": "0:0::-:0",
|
||||
"srcmap-runtime": "0:0::-:0"
|
||||
}
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"contract.sol",
|
||||
"#utility.yul"
|
||||
],
|
||||
"version": "<VERSION REMOVED>"
|
||||
}
|
||||
Binary:
|
||||
5ffe
|
||||
Binary of the runtime part:
|
||||
6001
|
||||
EVM assembly:
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 0,
|
||||
"end": 0,
|
||||
"name": "PUSH",
|
||||
"source": -1,
|
||||
"value": "0"
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 0,
|
||||
"end": 0,
|
||||
"name": "PUSH",
|
||||
"source": -1,
|
||||
"value": "1"
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"contract.sol",
|
||||
"#utility.yul"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "0"
|
||||
}
|
||||
],
|
||||
".data": {
|
||||
"0": {
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "1"
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
}
|
||||
},
|
||||
"sourceList": [
|
||||
"contract.sol",
|
||||
"#utility.yul"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1,6 @@
|
||||
Opcodes:
|
||||
PREVRANDAO PREVRANDAO
|
||||
EVM assembly:
|
||||
/* */
|
||||
prevrandao
|
||||
prevrandao
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
".code": [
|
||||
{ "name": "DIFFICULTY" },
|
||||
{ "name": "PREVRANDAO" }
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Member '.data' contains a value for '0' that is not a valid hexadecimal string.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "0"
|
||||
}
|
||||
],
|
||||
".data": {
|
||||
"0": "no-hex-string"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Key inside '.data' '0' can only be a valid hex-string or an object.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "0"
|
||||
}
|
||||
],
|
||||
".data": {
|
||||
"0": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Member 'jumpType' set on instruction different from JUMP or JUMPI (was set on instruction 'PUSH')
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "0",
|
||||
"jumpType": "[in]"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Member 'value' defined for instruction 'DIFFICULTY', but the instruction does not need a value.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "DIFFICULTY",
|
||||
"value": "0"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--optimize --import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Option --optimize is not supported with --import-asm-json.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
".code": [
|
||||
{ "name": "DIFFICULTY" },
|
||||
{ "name": "PREVRANDAO" }
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Member 'value' was not defined for instruction 'PUSH', but the instruction needs a value.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
".code": [
|
||||
{ "name": "PUSH" }
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--asm-json --import-asm-json -
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Items in 'sourceList' array are not unique.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "0"
|
||||
}
|
||||
],
|
||||
".data": {
|
||||
"0": {
|
||||
".code": [
|
||||
{
|
||||
"name": "PUSH",
|
||||
"value": "1"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"sourceList": [
|
||||
"contract.sol",
|
||||
"contract.sol",
|
||||
"#utility.yul"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: Unknown member '_name'. Valid members are begin, end, jumpType, modifierDepth, name, source, value.
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
".code": [
|
||||
{ "_name": "DIFFICULTY" }
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1 @@
|
||||
Assembly Import Error: JUMPDEST instruction without a tag
|
||||
@@ -0,0 +1 @@
|
||||
1
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"name": "tag",
|
||||
"value": "0x00"
|
||||
},
|
||||
{ "name": "JUMPDEST" },
|
||||
{ "name": "JUMPDEST" }
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes --asm
|
||||
@@ -0,0 +1,58 @@
|
||||
Opcodes:
|
||||
PUSH0 CALLDATALOAD PUSH1 0x14 DUP1 DUP3 SSTORE PUSH1 0x20 CALLDATALOAD ISZERO PUSH1 0x1C JUMPI DUP1 DUP3 SSTORE PUSH0 DUP1 PUSH0 DUP1 PUSH0 DUP1 STATICCALL POP PUSH25 0x797A5B80825550500000000000000000000000000000000000
|
||||
EVM assembly:
|
||||
/* "<stdin>":28:29 b */
|
||||
0x00
|
||||
/* "<stdin>":15:30 {... */
|
||||
calldataload
|
||||
/* "<stdin>":44:46 */
|
||||
0x14
|
||||
/* "<stdin>":61:62 */
|
||||
dup1
|
||||
/* "<stdin>":58:59 */
|
||||
dup3
|
||||
/* "<stdin>":51:63 : 29,... */
|
||||
sstore
|
||||
/* "<stdin>":84:86 " */
|
||||
0x20
|
||||
/* "<stdin>":71:87 "PUSH",... */
|
||||
calldataload
|
||||
/* "<stdin>":68:188 ": "PUSH",... */
|
||||
iszero
|
||||
tag_1
|
||||
jumpi
|
||||
/* "<stdin>":108:109 u */
|
||||
dup1
|
||||
/* "<stdin>":105:106 v */
|
||||
dup3
|
||||
/* "<stdin>":98:110 "value */
|
||||
sstore
|
||||
/* "<stdin>":149:150 */
|
||||
0x00
|
||||
/* "<stdin>":146:147 5 */
|
||||
dup1
|
||||
/* "<stdin>":143:144 : */
|
||||
0x00
|
||||
/* "<stdin>":140:141 i */
|
||||
dup1
|
||||
/* "<stdin>":137:138 b */
|
||||
0x00
|
||||
/* "<stdin>":134:135 */
|
||||
dup1
|
||||
/* "<stdin>":123:151 ... */
|
||||
staticcall
|
||||
/* "<stdin>":119:152 },... */
|
||||
pop
|
||||
/* "<stdin>":161:182 30,... */
|
||||
verbatimbytecode_78797a
|
||||
/* "<stdin>":68:188 ": "PUSH",... */
|
||||
tag_1:
|
||||
/* "<stdin>":203:204 s */
|
||||
dup1
|
||||
/* "<stdin>":200:201 */
|
||||
dup3
|
||||
/* "<stdin>":193:205 ",... */
|
||||
sstore
|
||||
/* "<stdin>":0:207 {... */
|
||||
pop
|
||||
pop
|
||||
@@ -0,0 +1,196 @@
|
||||
{
|
||||
".code": [
|
||||
{
|
||||
"begin": 28,
|
||||
"end": 29,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 15,
|
||||
"end": 30,
|
||||
"name": "CALLDATALOAD",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 44,
|
||||
"end": 46,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "14"
|
||||
},
|
||||
{
|
||||
"begin": 61,
|
||||
"end": 62,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 58,
|
||||
"end": 59,
|
||||
"name": "DUP3",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 51,
|
||||
"end": 63,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 84,
|
||||
"end": 86,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "20"
|
||||
},
|
||||
{
|
||||
"begin": 71,
|
||||
"end": 87,
|
||||
"name": "CALLDATALOAD",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 68,
|
||||
"end": 188,
|
||||
"name": "ISZERO",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 68,
|
||||
"end": 188,
|
||||
"name": "PUSH [tag]",
|
||||
"source": 0,
|
||||
"value": "1"
|
||||
},
|
||||
{
|
||||
"begin": 68,
|
||||
"end": 188,
|
||||
"name": "JUMPI",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 108,
|
||||
"end": 109,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 105,
|
||||
"end": 106,
|
||||
"name": "DUP3",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 98,
|
||||
"end": 110,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 149,
|
||||
"end": 150,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 146,
|
||||
"end": 147,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 143,
|
||||
"end": 144,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 140,
|
||||
"end": 141,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 137,
|
||||
"end": 138,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 134,
|
||||
"end": 135,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 123,
|
||||
"end": 151,
|
||||
"name": "STATICCALL",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 119,
|
||||
"end": 152,
|
||||
"name": "POP",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 161,
|
||||
"end": 182,
|
||||
"name": "VERBATIM",
|
||||
"source": 0,
|
||||
"value": "78797a"
|
||||
},
|
||||
{
|
||||
"begin": 68,
|
||||
"end": 188,
|
||||
"name": "tag",
|
||||
"source": 0,
|
||||
"value": "1"
|
||||
},
|
||||
{
|
||||
"begin": 68,
|
||||
"end": 188,
|
||||
"name": "JUMPDEST",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 203,
|
||||
"end": 204,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 200,
|
||||
"end": 201,
|
||||
"name": "DUP3",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 193,
|
||||
"end": 205,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 0,
|
||||
"end": 207,
|
||||
"name": "POP",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 0,
|
||||
"end": 207,
|
||||
"name": "POP",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"sourceList": [
|
||||
"<stdin>"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes
|
||||
@@ -0,0 +1,2 @@
|
||||
Opcodes:
|
||||
PUSH1 0x1E PUSH0 SSTORE PUSH1 0x1A PUSH1 0x1 SSTORE PUSH1 0x15 PUSH1 0x2 SSTORE PUSH1 0x1 PUSH1 0x3 SSTORE PUSH1 0x1 PUSH1 0x4 SSTORE PUSH1 0x1 PUSH1 0x5 SSTORE INVALID
|
||||
@@ -0,0 +1,368 @@
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 37,
|
||||
"end": 51,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 34,
|
||||
"end": 35,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 27,
|
||||
"end": 52,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 67,
|
||||
"end": 81,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 64,
|
||||
"end": 65,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "1"
|
||||
},
|
||||
{
|
||||
"begin": 57,
|
||||
"end": 82,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 97,
|
||||
"end": 114,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 94,
|
||||
"end": 95,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "2"
|
||||
},
|
||||
{
|
||||
"begin": 87,
|
||||
"end": 115,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 130,
|
||||
"end": 152,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 127,
|
||||
"end": 128,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "3"
|
||||
},
|
||||
{
|
||||
"begin": 120,
|
||||
"end": 153,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 168,
|
||||
"end": 190,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 165,
|
||||
"end": 166,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "4"
|
||||
},
|
||||
{
|
||||
"begin": 158,
|
||||
"end": 191,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 206,
|
||||
"end": 228,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffc"
|
||||
},
|
||||
{
|
||||
"begin": 203,
|
||||
"end": 204,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "5"
|
||||
},
|
||||
{
|
||||
"begin": 196,
|
||||
"end": 229,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 278,
|
||||
"end": 292,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 275,
|
||||
"end": 276,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "6"
|
||||
},
|
||||
{
|
||||
"begin": 268,
|
||||
"end": 293,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 310,
|
||||
"end": 324,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 307,
|
||||
"end": 308,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "7"
|
||||
},
|
||||
{
|
||||
"begin": 300,
|
||||
"end": 325,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 342,
|
||||
"end": 361,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 339,
|
||||
"end": 340,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "8"
|
||||
},
|
||||
{
|
||||
"begin": 332,
|
||||
"end": 362,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 379,
|
||||
"end": 398,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 376,
|
||||
"end": 377,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "9"
|
||||
},
|
||||
{
|
||||
"begin": 369,
|
||||
"end": 399,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 417,
|
||||
"end": 436,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 413,
|
||||
"end": 415,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "A"
|
||||
},
|
||||
{
|
||||
"begin": 406,
|
||||
"end": 437,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0,
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 494,
|
||||
"end": 508,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 490,
|
||||
"end": 492,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "B"
|
||||
},
|
||||
{
|
||||
"begin": 483,
|
||||
"end": 509,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 529,
|
||||
"end": 545,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 525,
|
||||
"end": 527,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "C"
|
||||
},
|
||||
{
|
||||
"begin": 518,
|
||||
"end": 546,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 566,
|
||||
"end": 582,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000001"
|
||||
},
|
||||
{
|
||||
"begin": 562,
|
||||
"end": 564,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "D"
|
||||
},
|
||||
{
|
||||
"begin": 555,
|
||||
"end": 583,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 603,
|
||||
"end": 619,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000002"
|
||||
},
|
||||
{
|
||||
"begin": 599,
|
||||
"end": 601,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "E"
|
||||
},
|
||||
{
|
||||
"begin": 592,
|
||||
"end": 620,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0,
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 676,
|
||||
"end": 685,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
},
|
||||
"1":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 751,
|
||||
"end": 760,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 1
|
||||
},
|
||||
"2":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 826,
|
||||
"end": 835,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 2
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"<stdin>"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--import-asm-json - --opcodes
|
||||
@@ -0,0 +1,2 @@
|
||||
Opcodes:
|
||||
PUSH0 DUP1 SSTORE PUSH1 0x6A PUSH1 0x1 SSTORE PUSH1 0x31 PUSH1 0x2 SSTORE PUSH1 0x2C PUSH1 0x3 SSTORE PUSH1 0x5E PUSH1 0x4 SSTORE PUSH1 0xC PUSH1 0x5 SSTORE PUSH1 0x5D PUSH1 0x6 SSTORE PUSH1 0x1 PUSH1 0x7 SSTORE PUSH1 0x5D PUSH1 0x8 SSTORE PUSH1 0x1 PUSH1 0x9 SSTORE INVALID PUSH1 0x1F PUSH1 0xA SSTORE PUSH1 0xC PUSH1 0xB SSTORE PUSH1 0x2B PUSH1 0xC SSTORE PUSH1 0x1 PUSH1 0xD SSTORE PUSH1 0x2B PUSH1 0xE SSTORE PUSH1 0x1 PUSH1 0xF SSTORE INVALID PUSH1 0xB PUSH1 0x10 SSTORE PUSH1 0x1 PUSH1 0x11 SSTORE INVALID INVALID INVALID INVALID PUSH1 0xB PUSH1 0x10 SSTORE PUSH1 0x1 PUSH1 0x11 SSTORE INVALID INVALID
|
||||
@@ -0,0 +1,417 @@
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 36,
|
||||
"end": 51,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "0"
|
||||
},
|
||||
{
|
||||
"begin": 33,
|
||||
"end": 34,
|
||||
"name": "DUP1",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 26,
|
||||
"end": 52,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 67,
|
||||
"end": 80,
|
||||
"name": "PUSHSIZE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 64,
|
||||
"end": 65,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "1"
|
||||
},
|
||||
{
|
||||
"begin": 57,
|
||||
"end": 81,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 96,
|
||||
"end": 111,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 93,
|
||||
"end": 94,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "2"
|
||||
},
|
||||
{
|
||||
"begin": 86,
|
||||
"end": 112,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 127,
|
||||
"end": 140,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 124,
|
||||
"end": 125,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "3"
|
||||
},
|
||||
{
|
||||
"begin": 117,
|
||||
"end": 141,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 156,
|
||||
"end": 173,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 153,
|
||||
"end": 154,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "4"
|
||||
},
|
||||
{
|
||||
"begin": 146,
|
||||
"end": 174,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 189,
|
||||
"end": 204,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 186,
|
||||
"end": 187,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "5"
|
||||
},
|
||||
{
|
||||
"begin": 179,
|
||||
"end": 205,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 220,
|
||||
"end": 237,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 217,
|
||||
"end": 218,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "6"
|
||||
},
|
||||
{
|
||||
"begin": 210,
|
||||
"end": 238,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 253,
|
||||
"end": 268,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffe"
|
||||
},
|
||||
{
|
||||
"begin": 250,
|
||||
"end": 251,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "7"
|
||||
},
|
||||
{
|
||||
"begin": 243,
|
||||
"end": 269,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 284,
|
||||
"end": 303,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 281,
|
||||
"end": 282,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "8"
|
||||
},
|
||||
{
|
||||
"begin": 274,
|
||||
"end": 304,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 319,
|
||||
"end": 336,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000fffffffffffffffd"
|
||||
},
|
||||
{
|
||||
"begin": 316,
|
||||
"end": 317,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "9"
|
||||
},
|
||||
{
|
||||
"begin": 309,
|
||||
"end": 337,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 418,
|
||||
"end": 433,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 414,
|
||||
"end": 416,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "A"
|
||||
},
|
||||
{
|
||||
"begin": 407,
|
||||
"end": 434,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 452,
|
||||
"end": 465,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 448,
|
||||
"end": 450,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "B"
|
||||
},
|
||||
{
|
||||
"begin": 441,
|
||||
"end": 466,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 484,
|
||||
"end": 499,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000001"
|
||||
},
|
||||
{
|
||||
"begin": 480,
|
||||
"end": 482,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "C"
|
||||
},
|
||||
{
|
||||
"begin": 473,
|
||||
"end": 500,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 518,
|
||||
"end": 531,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000001"
|
||||
},
|
||||
{
|
||||
"begin": 514,
|
||||
"end": 516,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "D"
|
||||
},
|
||||
{
|
||||
"begin": 507,
|
||||
"end": 532,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 550,
|
||||
"end": 567,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 546,
|
||||
"end": 548,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "E"
|
||||
},
|
||||
{
|
||||
"begin": 539,
|
||||
"end": 568,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 586,
|
||||
"end": 601,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "000000000000000000000000000000000000000000000000ffffffffffffffff"
|
||||
},
|
||||
{
|
||||
"begin": 582,
|
||||
"end": 584,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "F"
|
||||
},
|
||||
{
|
||||
"begin": 575,
|
||||
"end": 602,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0,
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 658,
|
||||
"end": 673,
|
||||
"name": "PUSH [$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 654,
|
||||
"end": 656,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "10"
|
||||
},
|
||||
{
|
||||
"begin": 647,
|
||||
"end": 674,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
},
|
||||
{
|
||||
"begin": 694,
|
||||
"end": 707,
|
||||
"name": "PUSH #[$]",
|
||||
"source": 0,
|
||||
"value": "0000000000000000000000000000000000000000000000000000000000000000"
|
||||
},
|
||||
{
|
||||
"begin": 690,
|
||||
"end": 692,
|
||||
"name": "PUSH",
|
||||
"source": 0,
|
||||
"value": "11"
|
||||
},
|
||||
{
|
||||
"begin": 683,
|
||||
"end": 708,
|
||||
"name": "SSTORE",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0,
|
||||
".data":
|
||||
{
|
||||
"0":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 761,
|
||||
"end": 770,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"1":
|
||||
{
|
||||
".code":
|
||||
[
|
||||
{
|
||||
"begin": 833,
|
||||
"end": 842,
|
||||
"name": "INVALID",
|
||||
"source": 0
|
||||
}
|
||||
],
|
||||
"index": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"ACAF3289D7B601CBD114FB36C4D29C85BBFD5E133F14CB355C3FD8D99367964F": "48656c6c6f2c20576f726c6421"
|
||||
},
|
||||
"sourceList":
|
||||
[
|
||||
"<stdin>"
|
||||
]
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
The following outputs are not supported in assembler mode: --abi, --asm-json, --bin-runtime, --devdoc, --hashes, --ir, --metadata, --opcodes, --storage-layout, --userdoc.
|
||||
The following outputs are not supported in assembler mode: --abi, --bin-runtime, --devdoc, --hashes, --ir, --metadata, --opcodes, --storage-layout, --userdoc.
|
||||
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# shellcheck source=scripts/common.sh
|
||||
source "${REPO_ROOT}/scripts/common.sh"
|
||||
|
||||
SOLTMPDIR=$(mktemp -d -t "cmdline-test-evmasm-import-export-XXXXXX")
|
||||
(
|
||||
cd "$SOLTMPDIR"
|
||||
if ! "$REPO_ROOT/scripts/ASTImportTest.sh" evm-assembly
|
||||
then
|
||||
rm -r "$SOLTMPDIR"
|
||||
fail
|
||||
fi
|
||||
)
|
||||
rm -r "$SOLTMPDIR"
|
||||
Reference in New Issue
Block a user