-
-
Notifications
You must be signed in to change notification settings - Fork 413
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
[Merged by Bors] - Store call frames in Vec
instead of singly-linked list
#2164
Conversation
Test262 conformance changesVM implementation
Fixed tests (2):
|
Codecov Report
@@ Coverage Diff @@
## main #2164 +/- ##
==========================================
+ Coverage 42.43% 42.69% +0.26%
==========================================
Files 226 225 -1
Lines 20996 20790 -206
==========================================
- Hits 8909 8877 -32
+ Misses 12087 11913 -174
Continue to review full report at Codecov.
|
Benchmark for 23444adClick to view benchmark
|
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.
Looks good. Makes working with frames much more straight forward.
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.
Great changes!
bors r+ |
This storage method should be more cache friendly since we store in contiguous memory, besides that it should make #2157 a bit easier. Will work on that next after this gets merged :) It changes the following: - Remove the unneeded `prev` field in `CallFrame` - Preallocate some space for future calls (16 slots)
Build failed: |
- Remove the unneeded `prev` field in `CallFrame` - Preallocate some space for future calls (16 slots) - Rename Vm::frame => Vm::frames
Benchmark for ba0aa7eClick to view benchmark
|
bors r+ |
This storage method should be more cache friendly since we store in contiguous memory, besides that it should make #2157 a bit easier. Will work on that next after this gets merged :) It changes the following: - Remove the unneeded `prev` field in `CallFrame` - Preallocate some space for future calls (16 slots)
Pull request successfully merged into main. Build succeeded: |
Vec
instead of singly-linked listVec
instead of singly-linked list
@HalidOdat I think you accidentally changed to an outdated version of the 262 submodule in the last push here right? |
yes... I mistakingly committed it 😅 , created a PR #2166 that updates the test262 to the latest |
This storage method should be more cache friendly since we store in contiguous memory, besides that it should make boa-dev#2157 a bit easier. Will work on that next after this gets merged :) It changes the following: - Remove the unneeded `prev` field in `CallFrame` - Preallocate some space for future calls (16 slots)
This storage method should be more cache friendly since we store in contiguous memory, besides that it should make #2157 a bit easier. Will work on that next after this gets merged :)
It changes the following:
prev
field inCallFrame