-
Notifications
You must be signed in to change notification settings - Fork 20.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
core/vm: implement EIP-5656, mcopy instruction #26181
Conversation
mentioning: ethereum/EIPs#5656 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, but please also add the unit-tests from the EIP: https://eips.ethereum.org/EIPS/eip-5656#test-cases
You got pretty far for not knowing go, but I can take from you on adding the testcases if you want. |
thanks! also updated the opcode location per ethereum/EIPs#7155 in 3fb5a5d |
@holiman anything else needed from me at this time? |
This PR now passes this test:https://github.com/ipsilon/tests/blob/2379e3335868f9c1c68dcf2eed0b404121369126/EIPTests/StateTests/stEIP5656-MCOPY/MCOPY_memory_hash.json , via |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - was also able to verify the PR is passing a few of the Ipsilon test cases.
Cherry pick ethereum/go-ethereum#26181 Co-authored-by: Charles Cooper <cooper.charles.m@gmail.com>
Cherry pick ethereum/go-ethereum#26181 Co-authored-by: Charles Cooper <cooper.charles.m@gmail.com>
Implements [EIP 5656](https://eips.ethereum.org/EIPS/eip-5656), MCOPY instruction, and enables it for Cancun. --------- Co-authored-by: Martin Holst Swende <martin@swende.se>
This reverts commit b0a5097.
This reverts commit b0a5097.
Implements [EIP 5656](https://eips.ethereum.org/EIPS/eip-5656), MCOPY instruction, and enables it for Cancun. --------- Co-authored-by: Martin Holst Swende <martin@swende.se>
* core/vm: implement EIP-5656, mcopy instruction (ethereum#26181) Implements [EIP 5656](https://eips.ethereum.org/EIPS/eip-5656), MCOPY instruction, and enables it for Cancun. --------- Co-authored-by: Martin Holst Swende <martin@swende.se> * update version * goimports --------- Co-authored-by: Charles Cooper <cooper.charles.m@gmail.com> Co-authored-by: Martin Holst Swende <martin@swende.se> Co-authored-by: Péter Garamvölgyi <peter@scroll.io> Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
first attempt at implementing the MCOPY instruction.
I don't actually know Go, so I mostly adopted the
opCallDataCopy
implementation.