ethereumjs-monorepo icon indicating copy to clipboard operation
ethereumjs-monorepo copied to clipboard

VM, EVM, Common: Implement EIP-2330 Extsload Opcode

Open zemse opened this issue 2 years ago • 4 comments

This PR implements EIP-2330 Extsload at 0x5c opcode.

If the opcode is supported as an experimental opcode, it would help with easier experimentation and research on the EIP.

Currently, there is a clash at the same opcode 0x5c BEGINSUB from EIP-2315, hence currently either EIP could be activated at a time. I'll discuss with EIP-2330 authors if there can be another candidate for the opcode number.

Please let me know of any changes that are needed.

zemse avatar Aug 07 '22 16:08 zemse

Codecov Report

Merging #2116 (b218660) into master (f6c12b9) will decrease coverage by 0.17%. The diff coverage is 17.39%.

Impacted file tree graph

Flag Coverage Δ
block 83.81% <ø> (ø)
blockchain 80.54% <ø> (ø)
client 76.67% <ø> (ø)
common 95.31% <ø> (ø)
devp2p 82.44% <ø> (-0.26%) :arrow_down:
ethash 90.81% <ø> (ø)
evm 40.59% <17.39%> (-0.36%) :arrow_down:
statemanager 84.55% <ø> (ø)
trie 81.22% <ø> (-0.60%) :arrow_down:
tx 92.20% <ø> (ø)
util 87.22% <ø> (ø)
vm 78.16% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

codecov[bot] avatar Aug 07 '22 16:08 codecov[bot]

Hi Soham, that's pretty impressive work here, cool! 👍

I guess we need some discussion if we want to integrate and if the EIP is relevant and up-to-date enough to integrate (or bear with me if we had this discussion already? I sometimes forget these kind of things.)

Thing is that we can't integrate all sorts of EIPs into the main code base, otherwise our code base would get too fragmented.

holgerd77 avatar Aug 08 '22 11:08 holgerd77

Very cool zemse! I have checked the EIP and I think the EIP is rather outdated. For instance, it does not mention gas costs like how much gas it would cost if one tries to extsload a cold account / cold slot (See EIP 2930 for warm/cold definitions). But on the other hand it now matches the spec, so I guess that is OK.

jochem-brouwer avatar Aug 09 '22 19:08 jochem-brouwer

Just wanted to add to the conversation here that this EIP was recently updated. Please view the latest version here: https://eips.ethereum.org/EIPS/eip-2330. Also, some community members see the value from EIP (e.g. discord link).

zemse avatar Aug 13 '22 10:08 zemse