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

precompiles: Implement EIP-2537's bls12_g2add #995

Merged
merged 1 commit into from
Sep 13, 2024
Merged

Conversation

rodiazet
Copy link
Collaborator

Implementation of the bls12_g2add precompile: E2 affine points' addition from BLS12-381 curve according to the EIP-2537 spec https://eips.ethereum.org/EIPS/eip-2537#abi-for-g2-addition.

Depends on #994

@rodiazet rodiazet added precompiles Related to EVM precompiles Prague Changes for Prague upgrade labels Sep 10, 2024
@rodiazet rodiazet force-pushed the bls-g2-add branch 2 times, most recently from ef84a69 to 0ec33e3 Compare September 10, 2024 14:41
Copy link

codecov bot commented Sep 10, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 93.94%. Comparing base (1004496) to head (d871d23).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #995      +/-   ##
==========================================
+ Coverage   93.89%   93.94%   +0.04%     
==========================================
  Files         147      147              
  Lines       15507    15553      +46     
==========================================
+ Hits        14561    14611      +50     
+ Misses        946      942       -4     
Flag Coverage Δ
eof_execution_spec_tests 17.44% <0.00%> (-0.06%) ⬇️
ethereum_tests 27.64% <0.00%> (-0.09%) ⬇️
ethereum_tests_silkpre 19.36% <0.00%> (-0.07%) ⬇️
execution_spec_tests 19.20% <83.33%> (+0.20%) ⬆️
unittests 88.97% <80.00%> (-0.03%) ⬇️

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

Files with missing lines Coverage Δ
lib/evmone_precompiles/bls.cpp 100.00% <100.00%> (ø)
test/state/precompiles.cpp 89.23% <100.00%> (+2.08%) ⬆️
test/unittests/precompiles_bls_test.cpp 100.00% <100.00%> (ø)

lib/evmone_precompiles/bls.cpp Outdated Show resolved Hide resolved
lib/evmone_precompiles/bls.cpp Outdated Show resolved Hide resolved
lib/evmone_precompiles/bls.cpp Outdated Show resolved Hide resolved
lib/evmone_precompiles/bls.cpp Outdated Show resolved Hide resolved
lib/evmone_precompiles/bls.cpp Outdated Show resolved Hide resolved
Change `store` helpers naming
@rodiazet rodiazet merged commit 39aec66 into master Sep 13, 2024
25 checks passed
@rodiazet rodiazet deleted the bls-g2-add branch September 13, 2024 13:15
chfast pushed a commit that referenced this pull request Sep 13, 2024
Implementation of the `bls12_g2mul` precompile: E2 affine point's
multiplication from BLS12-381 curve according to the EIP-2537 spec
https://eips.ethereum.org/EIPS/eip-2537#abi-for-g2-multiplication.

Depends on #995
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Prague Changes for Prague upgrade precompiles Related to EVM precompiles
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants