Skip to content

Commit 383053e

Browse files
committed
Enable outline-atomics by default on AArch64 FreeBSD
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
1 parent 31010ca commit 383053e

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

compiler/rustc_target/src/spec/targets/aarch64_unknown_freebsd.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ pub(crate) fn target() -> Target {
1515
data_layout: "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32".into(),
1616
arch: Arch::AArch64,
1717
options: TargetOptions {
18-
features: "+v8a".into(),
18+
features: "+v8a,+outline-atomics".into(),
1919
max_atomic_width: Some(128),
2020
stack_probes: StackProbeType::Inline,
2121
supported_sanitizers: SanitizerSet::ADDRESS

0 commit comments

Comments
 (0)