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

Optimise load and bit manipulation instructions applied to constant structures #465

Open
pschachte opened this issue Aug 14, 2024 · 0 comments
Labels
enhancement New feature or request performance Issues related to performance of generated code research project

Comments

@pschachte
Copy link
Owner

For example, Wybe string constants always have the cstring constructor, so an instruction that masks and compares a string constant pointer should know what the tag will be. The following instruction that loads the cstring pointer can also know what the value will be.

This can also work when an instruction is applied to a constant construction, such as [1,2,3]. In that case, there will be a sequence of instructions to create that structure, but the tags and values in that structure are known ahead, so we can know what bit manipulation and load instructions will do to parts of that structure. That even applies to partially constant structures, like [1,2,x].

@pschachte pschachte added enhancement New feature or request research project performance Issues related to performance of generated code labels Aug 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request performance Issues related to performance of generated code research project
Projects
None yet
Development

No branches or pull requests

1 participant