-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Fixing the strong imported async frame pointer flags #40035
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
Fixing the strong imported async frame pointer flags #40035
Conversation
@swift-ci please test |
Build failed |
63599b7
to
9258f3b
Compare
@swift-ci please test |
9258f3b
to
5ffd77e
Compare
@swift-ci please test |
Build failed |
Linux failures are due to the compile module being created by an older version of the compiler. |
@swift-ci please clean test Linux |
Build failed |
@swift-ci please test macOS |
Build failed |
The macOS failure is due to other symbols being included in the used list. I really just want to verify that The full list on the bot is
compared to the following list that I had in the test
|
The weakly-imported symbol was getting optimized out, then put back in as a strongly-imported symbol. This is no good. The symbol is a declaration though, so it can't be "used" directly. Instead, we assign it to another global and "use" it. That avoids the optimizations and should be fine. Even if that symbol is a nullptr because it doesn't exist, we are taking the pointer to it, which should be fine for all situations.
Make the little variable LinkOnceODRLinkage so that it doesn't take up as much space.
5ffd77e
to
3e2c5a6
Compare
@swift-ci please test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Build failed |
@swift-ci please clean test Linux |
Build failed |
Build failed |
@swift-ci please test |
Build failed |
Build failed |
@swift-ci please test |
The macOS bot may be signal. I'm trying to reproduce the
The only way I can see for that particular test to fail is if something fails to import. |
Build failed |
@swift-ci please test macOS |
Build failed |
@swift-ci please test macOS |
The weakly-imported symbol was getting optimized out, then put back in
as a strongly-imported symbol. This is no good. The symbol is a
declaration though, so it can't be "used" directly. Instead, we assign
it to another global and "use" it. That avoids the optimizations and
should be fine. Even if that symbol is a nullptr because it doesn't
exist, we are taking the pointer to it, which should be fine for all
situations.
Fixes rdar://84877644.