Skip to content

Conversation

@chfast
Copy link
Member

@chfast chfast commented May 22, 2024

This is more correct C++ because it avoids the "bottom" pointer (one below the stack space base pointer). In C++ only pointers to the elements of an array and the "end" pointers are well defined.

This also potentially helps with the "overaligned" stack space optimization. To be continued...

@codecov
Copy link

codecov bot commented May 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 94.54%. Comparing base (53bcba6) to head (e9bb059).
Report is 1 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #895   +/-   ##
=======================================
  Coverage   94.54%   94.54%           
=======================================
  Files         175      175           
  Lines       19673    19674    +1     
=======================================
+ Hits        18599    18600    +1     
  Misses       1074     1074           
Flag Coverage Δ
eest_gmp 15.28% <59.09%> (-0.01%) ⬇️
eof_execution_spec_tests 19.77% <83.33%> (-0.01%) ⬇️
ethereum_tests 21.34% <58.33%> (-0.01%) ⬇️
ethereum_tests_silkpre 18.29% <59.09%> (-0.01%) ⬇️
execution_spec_tests 18.44% <58.33%> (-0.01%) ⬇️
unittests 91.95% <100.00%> (+<0.01%) ⬆️

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

Files with missing lines Coverage Δ
lib/evmone/advanced_analysis.hpp 96.15% <100.00%> (ø)
lib/evmone/baseline_execution.cpp 100.00% <100.00%> (ø)
lib/evmone/execution_state.hpp 95.52% <100.00%> (-0.07%) ⬇️
lib/evmone/instructions.hpp 100.00% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@chfast
Copy link
Member Author

chfast commented May 22, 2024

Seems no performance regressions:

Zen2, clang-18:

baseline/execute/main/blake2b_huff/empty_mean                                +0.0013         +0.0013            10            10            10            10
baseline/execute/main/blake2b_huff/8415nulls_mean                            -0.0105         -0.0105           603           597           603           597
baseline/execute/main/blake2b_shifts/8415nulls_mean                          -0.0268         -0.0268          5650          5498          5650          5498
baseline/execute/main/sha1_divs/empty_mean                                   -0.0080         -0.0080            42            42            42            42
baseline/execute/main/sha1_divs/5311_mean                                    +0.0010         +0.0010          3335          3338          3335          3338
baseline/execute/main/sha1_shifts/empty_mean                                 -0.0070         -0.0070            22            21            22            21
baseline/execute/main/sha1_shifts/5311_mean                                  -0.0081         -0.0081          1776          1761          1776          1761
baseline/execute/main/snailtracer/benchmark_mean                             -0.0088         -0.0088         29799         29538         29799         29538
baseline/execute/main/structarray_alloc/nfts_rank_mean                       -0.0136         -0.0136           396           391           396           391
baseline/execute/main/swap_math/spent_mean                                   -0.0081         -0.0081             2             2             2             2
baseline/execute/main/swap_math/received_mean                                -0.0133         -0.0133             2             2             2             2
baseline/execute/main/swap_math/insufficient_liquidity_mean                  -0.0034         -0.0034             1             1             1             1
baseline/execute/main/weierstrudel/1_mean                                    -0.0019         -0.0019           139           139           139           139
baseline/execute/main/weierstrudel/15_mean                                   -0.0119         -0.0119          1387          1370          1387          1370
OVERALL_GEOMEAN                                                              -0.0085         -0.0085             0             0             0             0

@chfast chfast force-pushed the stack_space_end branch 3 times, most recently from 35df236 to fdfdaaa Compare May 15, 2025 21:05
@chfast chfast requested review from gumb0, pdobacz and rodiazet May 15, 2025 21:05
@chfast chfast force-pushed the stack_space_end branch from fdfdaaa to e9bb059 Compare May 15, 2025 21:52
Copy link
Member

@pdobacz pdobacz left a comment

Choose a reason for hiding this comment

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

codewise LGTM, but what does this accomplish? (put in the pr description too)

@chfast chfast merged commit d9b77e5 into master May 16, 2025
26 checks passed
@chfast chfast deleted the stack_space_end branch May 16, 2025 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants