Skip to content

Conversation

@aykevl
Copy link
Member

@aykevl aykevl commented Mar 24, 2020

This is a combination of two commits that allows a significant number of packages to compile (perhaps most importantly math/big):

  • crypto/dsa
  • crypto/ed25519
  • crypto/elliptic
  • crypto/rand
  • go/constant
  • 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.isnil mechanism which appears to cause this problem.

@aykevl aykevl force-pushed the interp-load-bitcast branch from 6ced0e3 to e4e48ee Compare March 24, 2020 21:53
@aykevl aykevl marked this pull request as ready for review March 24, 2020 21:55
@aykevl
Copy link
Member Author

aykevl commented Mar 24, 2020

This is now ready for review.

@aykevl aykevl requested a review from niaow March 24, 2020 21:55
@aykevl
Copy link
Member Author

aykevl commented Mar 24, 2020

Well not quite, CI broke. I think it will be fixed with the removal of runtime.isnil which is close to finished (but depends on #746).

@niaow
Copy link
Member

niaow commented Mar 27, 2020

Looks good. Will put in a final review once this is rebased and CI passes.

@deadprogram
Copy link
Member

@aykevl I think you can now rebase this PR, as the dependencies are merged.

@aykevl aykevl force-pushed the interp-load-bitcast branch from e4e48ee to 2e24271 Compare March 27, 2020 18:37
@aykevl
Copy link
Member Author

aykevl commented Mar 27, 2020

Rebased, and now it doesn't regress for image/color/palette.

@deadprogram
Copy link
Member

Hmm somethingn went wrong there:

# runtime
src/device/arm/arm.go:173:7: interp: branch on a non-constant
make: *** [Makefile:186: smoketest] Error 1

@aykevl
Copy link
Member Author

aykevl commented Mar 27, 2020

Well that's unfortunate. I'll need to look into that.

@deadprogram
Copy link
Member

Can this PR now be worked on again?

aykevl added 2 commits August 25, 2020 16:51
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
@aykevl aykevl force-pushed the interp-load-bitcast branch from 2e24271 to b446ca5 Compare August 25, 2020 14:53
@aykevl
Copy link
Member Author

aykevl commented Jan 13, 2021

This PR is no longer relevant since #1430 has been merged.

@aykevl aykevl closed this Jan 13, 2021
@aykevl aykevl deleted the interp-load-bitcast branch January 13, 2021 11:15
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.

4 participants