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

vm: improve aliasing of slots under ORC #297

Merged
merged 1 commit into from
May 4, 2022

Conversation

zerbina
Copy link
Collaborator

@zerbina zerbina commented May 3, 2022

Indirectly accessing slots via a TStackFrame pointer was done to
work around shallowCopy not being available for seq with ORC.

The shallow copy is now replicated with the cursor pragma, saving
one pointer indirection


I ran the test suite with an ORC enabled compiler and there were no (VM related) failures. This change allows to get rid of SlotStorage in the VM refactoring PR

Indirectly accessing `slots` via a `TStackFrame` pointer was done to
work around `shallowCopy` not being available for `seq` with ORC.

The shallow copy is now replicated with the `cursor` pragma, saving
one pointer indirection
@saem
Copy link
Collaborator

saem commented May 3, 2022

It's a good sign when we're seeing a few lines for a win.

Bors r+

@bors
Copy link
Contributor

bors bot commented May 4, 2022

Build succeeded:

@bors bors bot merged commit d6c0ba0 into nim-works:devel May 4, 2022
@zerbina zerbina deleted the vm-slot-cursor branch May 4, 2022 16:26
@haxscramper haxscramper added this to the VM backend refactoring milestone Nov 21, 2022
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