-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Add a single-threaded stdlib mode, use it for the 'minimal' stdlib #33437
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
Add a single-threaded stdlib mode, use it for the 'minimal' stdlib #33437
Conversation
d46ad0a
to
6e35f92
Compare
@swift-ci please test |
@kubamracek Are you sure that all rr operations will be non-atomic? I wouldn't rely on the current support in the compiler for emitting non-atomic rr. The compiler only attempts to keep things non-atomic as a "best effort". Better in your case to just add a flag to the runtime to ensure that ARC operations always go to the non-atomic variant. |
@kubamracek or you could leave everything alone and just have them forward to the non-atomic implementation if the flag is set that way we aren't changing the external ABI interface of the library. |
No, and actually I'm pretty sure some will stay as atomic. However, my motivation here is just an "optimization", and if I discover places that are still using atomics when they don't need to, I plan to fix them up with separate PRs.
That sounds reasonable. Let me try to prepare this in a separate PR. |
@swift-ci please test |
Build failed |
Build failed |
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.
The change looks reasonable to me. I really like the idea that @gottesmm has to use shims, and if the shims are static I think that could be an interesting approach as well. Since this form hasn't shipped yet it does make sense to simply do the more straightforward changes that @kubamracek has proposed.
LGTM, but please make sure that @gottesmm is okay with it as well before merging.
5f5b61f
to
121c763
Compare
@gottesmm Are you okay with the state of this PR? |
@swift-ci please test |
Build failed |
Build failed |
@swift-ci please test |
@swift-ci please test |
I talked with Kuba offline. I asked him in follow on 1-2 follow on PRs to:
becomes
Thanks for your work here Kuba! |
@swift-ci Please test Windows platform |
No description provided.