-
Notifications
You must be signed in to change notification settings - Fork 24
[EVM] Support non-precise memory locations in VM AliasAnalysis #900
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 #900 +/- ##
=======================================
Coverage 30.91% 30.92%
=======================================
Files 2430 2430
Lines 806272 806284 +12
Branches 176487 176492 +5
=======================================
+ Hits 249280 249364 +84
+ Misses 513104 513008 -96
- Partials 43888 43912 +24 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
📊 Excel Report Available Benchmarks measured for:
|
a8a2610
to
c00e1e6
Compare
c00e1e6
to
6ede725
Compare
📊 evm compiler-tester excel report Benchmarks measured for:
|
|
|
|
||
// If one of the locations is imprecise, they don’t alias as long as | ||
// the other location is precise and ends before the first one begins. | ||
if (LocB.Size == LocationSize::afterPointer()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maintainability: I suggest to refactor that code (including DoesOverlap
lambda). We have code duplication right below this if
, and returning NoAlias, PartialAlias based on a predicate is also become a duplicate.
call void @llvm.evm.extcodecopy(i256 0, ptr addrspace(1) null, ptr addrspace(4) null, i256 32) | ||
ret void | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Redundant
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?