go-ethereum/core/vm
Chris Ziogas b0cd8c4a5c
core/vm: set tracer-observable value of a delegatecall to match parent value (#26632)
This is a breaking change in the tracing hooks API as well as semantics of the callTracer:

- CaptureEnter hook provided a nil value argument in case of DELEGATECALL. However to stay consistent with how delegate calls behave in EVM this hook is changed to pass in the value of the parent call.
- callTracer will return parent call's value for DELEGATECALL frames.

---------

Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2023-02-10 10:26:43 +01:00
..
runtime all: implement withdrawals (EIP-4895) (#26484) 2023-01-25 15:32:25 +01:00
testdata core/vm: add bn256ScalarMul testcase for zero scalar value (#26607) 2023-02-06 07:41:29 -05:00
analysis_test.go core/vm: reverse bit order in bytes of code bitmap (#24120) 2021-12-17 10:32:00 +01:00
analysis.go core/vm: optimize jumpdest analysis (#23500) 2022-06-03 10:40:14 +02:00
common.go core/vm: use uint256 in EVM implementation (#20787) 2020-06-08 15:24:40 +03:00
contract.go core/vm: simplify op lookup in contract (#23974) 2021-11-25 20:10:01 +01:00
contracts_test.go all: replace uses of ioutil with io and os (#24869) 2022-05-16 11:59:35 +02:00
contracts.go core/vm: use optimized bigint (#26021) 2022-10-27 10:39:01 +02:00
doc.go core/vm: remove JIT VM codes (#16362) 2018-03-26 13:48:04 +03:00
eips.go core/vm: implement EIP-3860: Limit and meter initcode (#23847) 2023-01-11 04:05:47 -05:00
errors.go core/vm: implement EIP-3860: Limit and meter initcode (#23847) 2023-01-11 04:05:47 -05:00
evm.go core/vm: set tracer-observable value of a delegatecall to match parent value (#26632) 2023-02-10 10:26:43 +01:00
gas_table_test.go core/vm: implement EIP-3860: Limit and meter initcode (#23847) 2023-01-11 04:05:47 -05:00
gas_table.go core/vm: implement EIP-3860: Limit and meter initcode (#23847) 2023-01-11 04:05:47 -05:00
gas.go core/vm: use uint256 in EVM implementation (#20787) 2020-06-08 15:24:40 +03:00
instructions_test.go core/vm: improve EVM instance reusability (#26341) 2023-02-05 15:11:25 +01:00
instructions.go core/vm: improve EVM instance reusability (#26341) 2023-02-05 15:11:25 +01:00
interface.go core: implement EIP-3651, warm coinbase (#25819) 2022-11-22 22:39:52 +01:00
interpreter_test.go all: add whitespace linter (#25312) 2022-07-25 13:14:03 +03:00
interpreter.go core/vm: improve EVM instance reusability (#26341) 2023-02-05 15:11:25 +01:00
jump_table_test.go core/vm: deepcopy jumptable when enabling extra eips (#26137) 2022-11-09 07:52:13 +01:00
jump_table.go core/vm: enable EIP-3855 (PUSH0) in Shanghai (#26475) 2023-01-12 11:00:08 +01:00
logger.go eth/tracers, core/vm: remove time from trace output and tracing interface (#26291) 2022-12-05 16:57:47 +01:00
memory_table.go core/vm: Rename SHA3 instruction to KECCAK256 (#23976) 2021-11-30 10:34:34 +01:00
memory.go core/vm: optimize Memory.Set32 (#24847) 2022-05-11 11:00:29 +02:00
opcodes.go all: implement EIP-1153 transient storage (#26003) 2022-11-16 10:18:52 +01:00
operations_acl.go core/vm: fix sstore gas comment type (#24583) 2022-03-29 11:21:11 +03:00
stack_table.go core/vm: 64 bit memory and gas calculations (#19210) 2019-03-12 11:40:05 +02:00
stack.go core/vm: clean up some dead functions (#24851) 2022-05-11 08:03:35 +03:00