aboutsummaryrefslogtreecommitdiffstats
path: root/src/GeneralStateTestsFiller/stDelegatecallTestHomestead
diff options
context:
space:
mode:
authorDimitry <dimitry@ethdev.com>2016-12-05 19:12:05 +0800
committerDimitry <dimitry@ethdev.com>2016-12-05 19:12:05 +0800
commite2a69159c863d810a368eda8aa417290d95dc52e (patch)
tree75da52555f6c077fdf580b24bcd8268c968da62e /src/GeneralStateTestsFiller/stDelegatecallTestHomestead
parent35cfcf16190fc3e56ee11ead23452c633e2fca28 (diff)
downloaddexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.gz
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.zst
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.zip
Test Fillers (Sources for the tests)
Diffstat (limited to 'src/GeneralStateTestsFiller/stDelegatecallTestHomestead')
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024BalanceTooLowFiller.json82
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024OOGFiller.json86
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024PreCallsFiller.json86
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallLoseGasOOGFiller.json84
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallRecursiveBombPreCallFiller.json102
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallcodeLoseGasOOGFiller.json84
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024Filler.json82
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024OOGFiller.json86
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput1Filler.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput2Filler.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3FailFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3Filler.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFailFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callWithHighValueAndGasOOGFiller.json80
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput1Filler.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput2Filler.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3FailFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3Filler.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFailFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeWithHighValueAndGasOOGFiller.json80
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/deleagateCallAfterValueTransferFiller.json100
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallAndOOGatTxLevelFiller.json86
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallBasicFiller.json84
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallEmptycontractFiller.json75
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToEmptyContractFiller.json74
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractFiller.json91
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractOOGFiller.json78
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallOOGinCallFiller.json50
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallSenderCheckFiller.json84
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallValueCheckFiller.json84
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCode2SelfCallFiller.json75
-rw-r--r--src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCodeFiller.json83
34 files changed, 2416 insertions, 0 deletions
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024BalanceTooLowFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024BalanceTooLowFiller.json
new file mode 100644
index 000000000..eaebdd879
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024BalanceTooLowFiller.json
@@ -0,0 +1,82 @@
+{
+ "Call1024BalanceTooLow" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1024",
+ "code" : "{ [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL 0xfffffffffff 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "17592186099592"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024OOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024OOGFiller.json
new file mode 100644
index 000000000..7d903a475
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024OOGFiller.json
@@ -0,0 +1,86 @@
+{
+ "Call1024OOG" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x0401",
+ "0x01" : "0x01",
+ "0x02" : "0x0fa3e9"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1024",
+ "code" : "{ [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL (MUL (SUB (GAS) 10000) (SUB 1 (DIV @@0 1025))) 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) [[ 2 ]] (ADD 1(MUL @@0 1000)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "15720826"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024PreCallsFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024PreCallsFiller.json
new file mode 100644
index 000000000..b7b96bcf7
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Call1024PreCallsFiller.json
@@ -0,0 +1,86 @@
+{
+ "Call1024PreCalls" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x01",
+ "0x02" : "0x01",
+ "0x03" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xfffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "2024",
+ "code" : "{ [[ 2 ]] (CALL 0xffff 0xaaaf5374fce5edbc8e2a8697c15331677e6ebf0b 1 0 0 0 0) [[ 3 ]] (CALL 0xffff 0xaaaf5374fce5edbc8e2a8697c15331677e6ebf0b 1 0 0 0 0) [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL 0xfffffffffff 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "0x7ffffffffffffff0"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallLoseGasOOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallLoseGasOOGFiller.json
new file mode 100644
index 000000000..0f7b5d847
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallLoseGasOOGFiller.json
@@ -0,0 +1,84 @@
+{
+ "CallLoseGasOOG" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x01",
+ "0x02" : "0x03e9"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1024",
+ "code" : "{ [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL (ADD 1(MUL @@0 100000)) 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) [[ 2 ]] (ADD 1(MUL @@0 1000)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "0x7ffffffffffffff0"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallRecursiveBombPreCallFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallRecursiveBombPreCallFiller.json
new file mode 100644
index 000000000..eaed0bf0a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallRecursiveBombPreCallFiller.json
@@ -0,0 +1,102 @@
+{
+ "CallRecursiveBombPreCall" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "storage" : {
+ "0x00" : "0x03ff",
+ "0x01" : "0x01"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "1"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "0xfffffffffffffffffffffffffffffff",
+ "code" : "{ (CALL 100000 0xbad304eb96065b2a98b57a48a06ae28d285a71b5 23 0 0 0 0) (DELEGATECALL 0x7ffffffffffffff 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 0 0 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (+ (SLOAD 0) 1) [[ 1 ]] (CALL (- (GAS) 224000) 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 0 0 0 0) } ",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xfffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "0x7ffffffffffffff0"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallcodeLoseGasOOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallcodeLoseGasOOGFiller.json
new file mode 100644
index 000000000..5ba071334
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/CallcodeLoseGasOOGFiller.json
@@ -0,0 +1,84 @@
+{
+ "CallcodeLoseGasOOG" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x01",
+ "0x02" : "0x03e9"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1024",
+ "code" : "{ [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL (ADD 1(MUL @@0 100000)) 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) [[ 2 ]] (ADD 1(MUL @@0 1000)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "166262"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024Filler.json
new file mode 100644
index 000000000..16885ad4f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024Filler.json
@@ -0,0 +1,82 @@
+{
+ "Delegatecall1024" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1024",
+ "code" : "{ [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL 0xfffffffffff 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "0x7ffffffffffffff0"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024OOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024OOGFiller.json
new file mode 100644
index 000000000..35ae35897
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/Delegatecall1024OOGFiller.json
@@ -0,0 +1,86 @@
+{
+ "Delegatecall1024OOG" : {
+ "env" : {
+ "currentCoinbase" : "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "0x7fffffffffffffff",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x" : "0x0401",
+ "0x01" : "0x01",
+ "0x02" : "0x0fa3e9"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "0xffffffffffffffffffffffffffffffff",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaaf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "7000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1024",
+ "code" : "{ [[ 0 ]] (ADD @@0 1) [[ 1 ]] (DELEGATECALL (MUL (SUB (GAS) 10000) (SUB 1 (DIV @@0 1025))) 0xbbbf5374fce5edbc8e2a8697c15331677e6ebf0b 0 0 0 0) [[ 2 ]] (ADD 1(MUL @@0 1000)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "15720826"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "bbbf5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "value" : [
+ "10"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput1Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput1Filler.json
new file mode 100644
index 000000000..4ec659df5
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput1Filler.json
@@ -0,0 +1,50 @@
+{
+ "callOutput1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 0) [[ 0 ]] (MLOAD 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput2Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput2Filler.json
new file mode 100644
index 000000000..6ba074484
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput2Filler.json
@@ -0,0 +1,50 @@
+{
+ "callOutput2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 32 0 0) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3FailFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3FailFiller.json
new file mode 100644
index 000000000..a31bb5909
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3FailFiller.json
@@ -0,0 +1,50 @@
+{
+ "callOutput3Fail" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x016001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3Filler.json
new file mode 100644
index 000000000..0cfacc707
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3Filler.json
@@ -0,0 +1,50 @@
+{
+ "callOutput3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFailFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFailFiller.json
new file mode 100644
index 000000000..5878679a3
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFailFiller.json
@@ -0,0 +1,50 @@
+{
+ "callOutput3partialFail" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 10) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x016001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFiller.json
new file mode 100644
index 000000000..4d55f90c8
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callOutput3partialFiller.json
@@ -0,0 +1,50 @@
+{
+ "callOutput3partial" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 10) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callWithHighValueAndGasOOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callWithHighValueAndGasOOGFiller.json
new file mode 100644
index 000000000..afbd9fe31
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callWithHighValueAndGasOOGFiller.json
@@ -0,0 +1,80 @@
+{
+ "callWithHighValueAndGasOOG" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) (MSTORE 32 0xaaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa ) [[ 0 ]] (DELEGATECALL 0xffffffffffffffffffffffff 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 64 0 2 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "0x6001600155603760005360026000f3",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput1Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput1Filler.json
new file mode 100644
index 000000000..8948f993e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput1Filler.json
@@ -0,0 +1,50 @@
+{
+ "callcodeOutput1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 0) [[ 0 ]] (MLOAD 0) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput2Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput2Filler.json
new file mode 100644
index 000000000..773f324d0
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput2Filler.json
@@ -0,0 +1,50 @@
+{
+ "callcodeOutput2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 32 0 0) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3FailFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3FailFiller.json
new file mode 100644
index 000000000..20fa9ba59
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3FailFiller.json
@@ -0,0 +1,50 @@
+{
+ "callcodeOutput3Fail" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (CALLCODE 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x016001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3Filler.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3Filler.json
new file mode 100644
index 000000000..7fc5f0f22
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3Filler.json
@@ -0,0 +1,50 @@
+{
+ "callcodeOutput3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFailFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFailFiller.json
new file mode 100644
index 000000000..8d5b5aae9
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFailFiller.json
@@ -0,0 +1,50 @@
+{
+ "callcodeOutput3partialFail" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 10) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x016001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFiller.json
new file mode 100644
index 000000000..07637dea1
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeOutput3partialFiller.json
@@ -0,0 +1,50 @@
+{
+ "callcodeOutput3partial" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6) (DELEGATECALL 50000 0xaaae7baea6a6c7c4c2dfeb977efac326af552d87 0 0 0 10) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "aaae7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "0x6001600101600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "1100000"
+ ],
+ "gasPrice" : "0",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeWithHighValueAndGasOOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeWithHighValueAndGasOOGFiller.json
new file mode 100644
index 000000000..ccbcce94d
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/callcodeWithHighValueAndGasOOGFiller.json
@@ -0,0 +1,80 @@
+{
+ "callcodeWithHighValueAndGasOOG" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) (MSTORE 32 0xaaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa ) [[ 0 ]] (DELEGATECALL 0xffffffffffffffffffffffff 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 64 0 2 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "0x6001600155603760005360026000f3",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/deleagateCallAfterValueTransferFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/deleagateCallAfterValueTransferFiller.json
new file mode 100644
index 000000000..b22d2023c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/deleagateCallAfterValueTransferFiller.json
@@ -0,0 +1,100 @@
+{
+ "deleagateCallAfterValueTransfer" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x02" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1100000",
+ "code" : "{ (MSTORE 0 0x01) (DELEGATECALL 100000 0x1000000000000000000000000000000000000001 0 64 0 64) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "",
+ "code" : "{ (SSTORE 0 (CALLVALUE)) (SSTORE 1 (CALLER)) (SSTORE 2 (CALLDATALOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "10000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "453081"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallAndOOGatTxLevelFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallAndOOGatTxLevelFiller.json
new file mode 100644
index 000000000..565884e83
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallAndOOGatTxLevelFiller.json
@@ -0,0 +1,86 @@
+{
+ "delegatecallAndOOGatTxLevel" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "3000000"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "3000000"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "100000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 3000001 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 0 0 0 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "0x6001600155603760005360026000f3",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallBasicFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallBasicFiller.json
new file mode 100644
index 000000000..8d5e80ed9
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallBasicFiller.json
@@ -0,0 +1,84 @@
+{
+ "delegatecallBasic" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 500000 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 64 0 2 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "0x6001600155603760005360026000f3",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallEmptycontractFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallEmptycontractFiller.json
new file mode 100644
index 000000000..7492db961
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallEmptycontractFiller.json
@@ -0,0 +1,75 @@
+{
+ "delegatecallEmptycontract" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 50000 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 64 0 64 )}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1100000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "105044"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToEmptyContractFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToEmptyContractFiller.json
new file mode 100644
index 000000000..3a405262f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToEmptyContractFiller.json
@@ -0,0 +1,74 @@
+{
+ "delegatecallInInitcodeToEmptyContract" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "shouldnotexist" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "balance" : "0x01",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "10000",
+ "code" : "{ (MSTORE 0 0x604060006040600073945304eb96065b2a98b57a48a06ae28d285a71b5620186) (MSTORE 32 0xa0f4600055000000000000000000000000000000000000000000000000000000) (CREATE 1 0 64) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "10000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "453081"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractFiller.json
new file mode 100644
index 000000000..5cf92eb76
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractFiller.json
@@ -0,0 +1,91 @@
+{
+ "delegatecallInInitcodeToExistingContract" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "shouldnotexist" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "balance" : "0x01",
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x1000000000000000000000000000000000000000",
+ "0x02" : "0x01",
+ "0x0b" : "0x1000000000000000000000000000000000000000"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "10000",
+ "code" : "{ (MSTORE 0 0x604060006040600073945304eb96065b2a98b57a48a06ae28d285a71b5620186) (MSTORE 32 0xa0f4600055336001550000000000000000000000000000000000000000000000) (CREATE 1 0 64) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000",
+ "code" : "{ (MSTORE 0 0x6001600055) (CREATE 1 27 5) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) [[ 11 ]] (CALLER) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "10000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "453081"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractOOGFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractOOGFiller.json
new file mode 100644
index 000000000..99d34439c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallInInitcodeToExistingContractOOGFiller.json
@@ -0,0 +1,78 @@
+{
+ "delegatecallInInitcodeToExistingContractOOG" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "shouldnotexist" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "shouldnotexist" : "1"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "10000",
+ "code" : "{ (MSTORE 0 0x604060006040600073945304eb96065b2a98b57a48a06ae28d285a71b5620186) (MSTORE 32 0xa0f4600a5533600b550000000000000000000000000000000000000000000000) (CREATE 5 0 64) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "10000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "153096"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallOOGinCallFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallOOGinCallFiller.json
new file mode 100644
index 000000000..b652e09cf
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallOOGinCallFiller.json
@@ -0,0 +1,50 @@
+{
+ "delegatecallOOGinCall" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "100000",
+ "code" : "{ [[ 0 ]] (ADD (DELEGATECALL 10000 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 0 0 0 ) 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "0x6001600155603760005360026000f3",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallSenderCheckFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallSenderCheckFiller.json
new file mode 100644
index 000000000..bd37a449e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallSenderCheckFiller.json
@@ -0,0 +1,84 @@
+{
+ "delegatecallSenderCheck" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 500000 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 64 0 2 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "{[[ 1 ]] (CALLER)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallValueCheckFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallValueCheckFiller.json
new file mode 100644
index 000000000..586d559b1
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecallValueCheckFiller.json
@@ -0,0 +1,84 @@
+{
+ "delegatecallValueCheck" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x80"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 500000 0x945304eb96065b2a98b57a48a06ae28d285a71b5 0 64 0 2 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "945304eb96065b2a98b57a48a06ae28d285a71b5" : {
+ "balance" : "23",
+ "code" : "{[[ 1 ]] CALLVALUE}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "23"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCode2SelfCallFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCode2SelfCallFiller.json
new file mode 100644
index 000000000..e8901b1be
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCode2SelfCallFiller.json
@@ -0,0 +1,75 @@
+{
+ "delegatecodeDynamicCode2SelfCall" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "shouldnotexist" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "balance" : "0x01",
+ "storage" : {
+ "0x0b" : "0x01",
+ "0x0c" : "0x1000000000000000000000000000000000000000"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1100000",
+ "code" : " {(MSTORE 0 0x60406000604060007313136008b64ff592819b2fa6d43f2835c452020e620186) (MSTORE 32 0xa0f4600b5533600c550000000000000000000000000000000000000000000000) \t\t\t\t (CREATE 1 0 64) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "10000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "453081"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCodeFiller.json b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCodeFiller.json
new file mode 100644
index 000000000..79cee2441
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stDelegatecallTestHomestead/delegatecodeDynamicCodeFiller.json
@@ -0,0 +1,83 @@
+{
+ "delegatecodeDynamicCode" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "45678256",
+ "currentGasLimit" : "1000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : "1",
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "0xffe4ebd2a68c02d9dcb0a17283d13346beb2d8b6" : {
+ "shouldnotexist" : "1"
+ },
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "shouldnotexist" : "1"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "0xffe4ebd2a68c02d9dcb0a17283d13346beb2d8b6" : {
+ "balance" : "0x01"
+ },
+ "13136008b64ff592819b2fa6d43f2835c452020e" : {
+ "balance" : "0x00",
+ "storage" : {
+ "0x00" : "0x01",
+ "0x0a" : "0xffe4ebd2a68c02d9dcb0a17283d13346beb2d8b6",
+ "0x0b" : "0x01",
+ "0x14" : "0x1000000000000000000000000000000000000000"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "10000",
+ "code" : "{ (MSTORE 0 0x716860016000553360145560005260096017f36000526012600e6001f0600a55) (MSTORE 32 0x604060006040600073ffe4ebd2a68c02d9dcb0a17283d13346beb2d8b6620186) \t\t\t\t (MSTORE 64 0xa0f4600b55000000000000000000000000000000000000000000000000000000) (CREATE 1 0 96) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "10000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "453081"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ ""
+ ]
+ }
+ }
+}