You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As per instructions.go in go-ethereum, the instructions CALLDATACOPY, CODECOPY, EXTCODECOPY, and RETURNDATACOPY may to do something other than what we do? In particular, they try to force the offset for these copy operations to be 64b and if they overflow, they set it to 0xffffffffffffffff, i.e. the largest 64b value and continue (and potentially fail later).
Nope, geth is basically incomplete, and that code is not meant to be executed with larger than 64b values, hence the roll-around. This issue is better tracked here: #401
As per
instructions.go
in go-ethereum, the instructionsCALLDATACOPY
,CODECOPY
,EXTCODECOPY
, andRETURNDATACOPY
may to do something other than what we do? In particular, they try to force theoffset
for these copy operations to be 64b and if they overflow, they set it to0xffffffffffffffff
, i.e. the largest 64b value and continue (and potentially fail later).For go-ethereum behaviour see instructions.go line here: https://github.com/ethereum/go-ethereum/blob/master/core/vm/instructions.go#L307
The text was updated successfully, but these errors were encountered: