-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
Enable outline-atomics by default on AArch64 FreeBSD
#149633
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
base: main
Are you sure you want to change the base?
Conversation
fbeeee2 to
baebc7a
Compare
|
This will make FreeBSD act the same as most other targets after #144938, which also has some more details (as does the Zulip discussion). Cc target maintainers @asomers @MikaelUrankar, I split this off in case you would like to verify that this works since Clang doesn't have this enabled. Basically that means running some atomic ops with a debugger and making sure it uses the LSE fast path (details). Might be worth pinging some FreeBSD arm maintainers even if they don't work on Rust, in case they want to verify this or consider doing the same in Clang? @bors2 try |
|
These commits modify compiler targets. |
|
r? @ibraheemdev rustbot has assigned @ibraheemdev. Use |
Enable `outline-atomics` by default on AArch64 FreeBSD try-job: dist-x86_64-freebsd
This comment has been minimized.
This comment has been minimized.
This comment is not true. I commited this 3 months ago. |
Many aarch64 targets without LSE in the baseline enable the `outline-atomics` feature, which uses runtime detection of LSE for its faster atomic ops. This provides nontrivial performance improvements on most hardware from the past decade, at a small cost to anything pre-LSE. This matches what Clang does [1]. [1]: llvm/llvm-project@e24f901
baebc7a to
383053e
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
Thanks for the link. This was split from #144938, the commit message predates the LLVM commit. Any objections here then? |
|
r? @davidtwco as you handled the others |
Many aarch64 targets without LSE in the baseline enable the
outline-atomicsfeature, which uses runtime detection of LSE for itsfaster atomic ops. This provides nontrivial performance improvements on
most hardware from the past decade, at a small cost to anything pre-LSE.
This matches what Clang does 1.
Context: #144938
try-job: dist-x86_64-freebsd