-
Notifications
You must be signed in to change notification settings - Fork 91
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
build,ir,printer: add InternalFunction #443
base: master
Are you sure you want to change the base?
Conversation
Adds support for internal assembly functions. The new InternalFunction() call outputs a TEXT directive sans the pesky unicode dot used in Go assembly. This allows Avo to generate an internal assembly function that is not linked to any symbols in the corresponding package. Closes mmcloughlin#442
It might be worth making these always static (ending in |
There are a number of internal functions in Making all internal functions static in Avo would result in a diff on those lines when I port that file to Avo, but maybe that is desirable? If those symbols are non-static for a reason then we should leave the PR as is. I'm fine with either option just wanted to flag that before a decision was made. If we make all internal functions Static:Could make sense to make the Lines 172 to 190 in 13668f4
The Lines 14 to 31 in 13668f4
Happy to add that to this PR @mmcloughlin do you have thoughts? Examples of non-static internal functions:https://github.com/golang/go/blob/27093581b2828a2752a6d2711def09517eb2513b/src/crypto/internal/nistec/p256_asm_amd64.s#L1318 |
Adds support for internal assembly functions. The new InternalFunction() call outputs a TEXT directive sans the pesky unicode dot used in Go assembly. This allows Avo to generate an internal assembly function that is not linked to any symbols in the corresponding package.
Closes #442