Skip to content
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

EIP-3860: Limit and meter initcode #808

Merged
merged 17 commits into from
Dec 15, 2022
Merged

EIP-3860: Limit and meter initcode #808

merged 17 commits into from
Dec 15, 2022

Conversation

yperbasis
Copy link
Member

@yperbasis yperbasis commented Nov 23, 2022

This PR implements EIP-3860. Prerequisite: ethereum/evmone#525.

@yperbasis yperbasis added the shanghai The Shanghai protocol upgrade label Nov 23, 2022
@codecov
Copy link

codecov bot commented Nov 29, 2022

Codecov Report

Merging #808 (ab77389) into master (947cdd0) will increase coverage by 0.03%.
The diff coverage is 92.10%.

@@            Coverage Diff             @@
##           master     #808      +/-   ##
==========================================
+ Coverage   73.89%   73.93%   +0.03%     
==========================================
  Files         204      204              
  Lines       15005    15011       +6     
  Branches     2354     2356       +2     
==========================================
+ Hits        11088    11098      +10     
+ Misses       2956     2955       -1     
+ Partials      961      958       -3     
Impacted Files Coverage Δ
core/silkworm/consensus/engine.cpp 95.08% <40.00%> (-4.92%) ⬇️
core/silkworm/chain/intrinsic_gas.cpp 100.00% <100.00%> (ø)
core/silkworm/consensus/ethash/engine.cpp 94.73% <100.00%> (ø)
core/silkworm/execution/evm.cpp 93.50% <100.00%> (-0.10%) ⬇️
core/silkworm/execution/processor.cpp 85.71% <100.00%> (+2.38%) ⬆️
core/silkworm/consensus/pos/engine.cpp 66.66% <0.00%> (-16.67%) ⬇️
node/silkworm/rpc/server/server_context_pool.cpp 53.90% <0.00%> (-1.42%) ⬇️
core/silkworm/consensus/base/engine.cpp 92.04% <0.00%> (-0.57%) ⬇️
core/silkworm/types/transaction.cpp 82.10% <0.00%> (+0.31%) ⬆️
core/silkworm/state/in_memory_state.cpp 93.22% <0.00%> (+1.56%) ⬆️
... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@yperbasis yperbasis marked this pull request as ready for review December 7, 2022 11:05
.gas = message.gas,
.recipient = contract_addr,
.sender = message.sender,
.value = message.value,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👏

.input_data = txn.data.data(),
.input_size = txn.data.size(),
.value = intx::be::store<evmc::uint256be>(txn.value),
.code_address = destination,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👏

@yperbasis yperbasis merged commit 41a92bb into master Dec 15, 2022
@yperbasis yperbasis deleted the eip-3860 branch December 15, 2022 16:30
canepat pushed a commit that referenced this pull request Dec 16, 2022
* tiny optimization

* EIP-3860 intrinsic gas

* Switch to eip-3860 evmone

* Update tests to v11.2

* Rule 1 of EIP-3860 spec

* Move Rule 3 to Silkworm

* Update evmone

* Update according to ethereum/EIPs/pull/6040

* cosmetic reshuffling

* small clarifications

* Update evmone

* small comment update

* Update evmone

* New header in evmone
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
shanghai The Shanghai protocol upgrade
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants