-
Notifications
You must be signed in to change notification settings - Fork 997
interp: improve support for load/store instructions #987
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
Conversation
6ced0e3 to
e4e48ee
Compare
|
This is now ready for review. |
|
Well not quite, CI broke. I think it will be fixed with the removal of |
|
Looks good. Will put in a final review once this is rebased and CI passes. |
|
@aykevl I think you can now rebase this PR, as the dependencies are merged. |
e4e48ee to
2e24271
Compare
|
Rebased, and now it doesn't regress for image/color/palette. |
|
Hmm somethingn went wrong there: |
|
Well that's unfortunate. I'll need to look into that. |
|
Can this PR now be worked on again? |
Previously, whether a value could be safely loaded from or stored to was based on some heuristics. This commit fixes that by making sure the underlying global is really not part of the dirty set (which must be operated on at runtime instead of compile time). Together with the previous commit, this commit gets a number of standard library packages to compile: * crypto/dsa * crypto/ed25519 * crypto/elliptic * crypto/rand * go/constant * math/big
2e24271 to
b446ca5
Compare
|
This PR is no longer relevant since #1430 has been merged. |
This is a combination of two commits that allows a significant number of packages to compile (perhaps most importantly
math/big):However, it also breaks the image/color/palette package. I am hopeful that this will be fixed with the removal of the
runtime.isnilmechanism which appears to cause this problem.