-
Couldn't load subscription status.
- Fork 23
[EVM] Support for spilling constants to memory #885
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
base: main
Are you sure you want to change the base?
Conversation
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #885 +/- ##
===========================================
- Coverage 30.94% 30.01% -0.94%
===========================================
Files 2430 2431 +1
Lines 806322 704192 -102130
Branches 176496 176519 +23
===========================================
- Hits 249490 211330 -38160
+ Misses 512928 448950 -63978
- Partials 43904 43912 +8 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
f14e6fc to
293b9ef
Compare
|
📊 Excel Report Available Benchmarks measured for:
|
293b9ef to
fc6d80a
Compare
|
✅ With the latest revision this PR passed the C/C++ code formatter. |
2dd2ebb to
c4fb743
Compare
c4fb743 to
a5d2fa1
Compare
a5d2fa1 to
91de0ee
Compare
|
📊 evm compiler-tester excel report Benchmarks measured for:
|
|
|
5a40615 to
7098b6d
Compare
7098b6d to
9c8da3c
Compare
…pipeline This allows other passes to modify or adjust frame indexes before finalization.
The constant spilling mechanism is divided between two components:
- ConstantUnfolder
Determines which constants are profitable to spill. For these constants,
it emits codegen-only 'IMM_RELOAD Imm' instructions.
- ConstantSpiller
Inserts spills at the beginning of the entry machine function and replaces
IMM_RELOAD instructions with the actual reloads. It also calculates the
required size of the constants’ spill area in the heap. ConstantSpiller
is called from EVMFinalizeStackFrames so that the actual offsets to the
spill area can be computed.
9c8da3c to
3a2fa00
Compare
Code Review Checklist
Purpose
Ticket Number
Requirements
Implementation
Logic Errors and Bugs
code does not behave as intended?
that could break the code?
Error Handling and Logging
be added or removed?
written in a way that allows for easy
debugging?
Maintainability
Dependencies
Security
Performance
system performance?
performance of the code significantly?
Testing and Testability
that should be tested in addition?
Readability
smaller methods?
different function, method or variable names?
file/folder/package?
restructured to have a more intuitive control
flow?
better?
understandable?
Documentation
Best Practices
Experts' Opinion
expert or a usability expert, should look over
the code before it can be accepted?