Future-proof the ARM64 ABI by not reserving the entire top byte#21453
Merged
rjmccall merged 1 commit intoswiftlang:masterfrom Dec 20, 2018
Merged
Future-proof the ARM64 ABI by not reserving the entire top byte#21453rjmccall merged 1 commit intoswiftlang:masterfrom
rjmccall merged 1 commit intoswiftlang:masterfrom
Conversation
Targets that want to use armv8.5a memory tagging will need this. Hopefully nobody comes up with a brilliant reason they need to use anything else.
41ccda9 to
6936ce7
Compare
Contributor
Author
|
@swift-ci Please test. |
Contributor
|
Build failed |
Contributor
|
Build failed |
Contributor
Author
|
@swift-ci Please clean test. |
Contributor
Author
|
Both test-suite failures were LLDB failures involving |
Contributor
|
Build failed |
Contributor
|
Build failed |
Contributor
Author
|
@swift-ci Please test. |
Contributor
Author
|
Apparently my latest test run might have just not included apple/swift-lldb#1168. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Targets that want to use armv8.5a memory tagging will need this. Hopefully nobody comes up with a brilliant reason they need to use anything else.
I considered whether to push this to other 64-bit targets and decided that it was pretty architecture-specific. If somehow x86-64 adds a similar feature, there's no reason to think it'll look exactly the same down to the range of bits it claims. (Intel is probably also less likely to be willing to sacrifice address space, whereas ARM already made that decision due to TBI.)
This is a re-submission of #21000 now that
Stringis no longer assuming that it can use the entire top 8 bits (#21310). I've also added a test that the behavior changes on ARM64.