Skip to content

[5.0] Future-proof the ARM64 ABI by not reserving the entire top byte #21474

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

Merged

Conversation

rjmccall
Copy link
Contributor

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 the 5.0 version of #21453, which means it is a re-submission of #21015, the 5.0 version of #21000. It is contingent on a fix to String to no longer assume that that it can use the entire top 8 bits (master #21310, 5.0 #21392) and a corresponding fix to LLDB (master apple/swift-lldb#1168, 5.0 apple/swift-lldb#1169).

This is ABI-affecting.

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.
@rjmccall rjmccall requested a review from a team as a code owner December 20, 2018 22:30
@rjmccall
Copy link
Contributor Author

@swift-ci Please test

@swift-ci
Copy link
Contributor

Build failed
Swift Test Linux Platform
Git Sha - 43723a1

@rjmccall
Copy link
Contributor Author

Please test with following pull request:
apple/swift-lldb#1169

@swift-ci please test

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 43723a1

@AnnaZaks
Copy link
Contributor

@swift-ci please test

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 43723a1

@swift-ci
Copy link
Contributor

Build failed
Swift Test Linux Platform
Git Sha - 43723a1

@dcci
Copy link
Member

dcci commented Dec 21, 2018

@AnnaZaks this is now failing for a different reason:

20:23:14 /Users/buildnode/jenkins/workspace/swift-PR-osx/branch-swift-5.0-branch/llvm/tools/clang/include/clang/Driver/DarwinSDKInfo.h:16:10: fatal error: 'llvm/Support/VirtualFileSystem.h' file not found
20:23:14 #include "llvm/Support/VirtualFileSystem.h"
20:23:14          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20:23:14 1 error generated.

@AnnaZaks
Copy link
Contributor

@swift-ci please test

@AnnaZaks AnnaZaks merged commit e8bcb40 into swiftlang:swift-5.0-branch Dec 21, 2018
@rjmccall rjmccall deleted the future-proof-arm64-5.0 branch December 21, 2018 20:35
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