aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2020-04-30 13:12:13 +0100
committerKyrylo Tkachov <kyrylo.tkachov@arm.com>2020-04-30 13:12:13 +0100
commitcd4b68527988f42c10c0d6c10e812d299887e0c2 (patch)
treeff3c268027f9a49f4ef336f8bccbf08fc511717a /gcc
parent6ac83d350604c3e934d5e8a455ba7ec1c1c0240b (diff)
downloadgcc-cd4b68527988f42c10c0d6c10e812d299887e0c2.zip
gcc-cd4b68527988f42c10c0d6c10e812d299887e0c2.tar.gz
gcc-cd4b68527988f42c10c0d6c10e812d299887e0c2.tar.bz2
[AArch64] Make -moutline-atomics on by default
2020-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * config/aarch64/aarch64.h (TARGET_OUTLINE_ATOMICS): Define. * config/aarch64/aarch64.opt (moutline-atomics): Change to Int variable. * doc/invoke.texi (moutline-atomics): Document as on by default.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/aarch64/aarch64.h5
-rw-r--r--gcc/config/aarch64/aarch64.opt2
-rw-r--r--gcc/doc/invoke.texi1
4 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c81801f..c6e2447 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2020-04-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/aarch64/aarch64.h (TARGET_OUTLINE_ATOMICS): Define.
+ * config/aarch64/aarch64.opt (moutline-atomics): Change to Int variable.
+ * doc/invoke.texi (moutline-atomics): Document as on by default.
+
2020-04-30 Szabolcs Nagy <szabolcs.nagy@arm.com>
PR target/94748
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
index 74236c3..24767c7 100644
--- a/gcc/config/aarch64/aarch64.h
+++ b/gcc/config/aarch64/aarch64.h
@@ -105,6 +105,11 @@
port. */
#define TARGET_PTRMEMFUNC_VBIT_LOCATION ptrmemfunc_vbit_in_delta
+
+/* Emit calls to libgcc helpers for atomic operations for runtime detection
+ of LSE instructions. */
+#define TARGET_OUTLINE_ATOMICS (aarch64_flag_outline_atomics)
+
/* Align definitions of arrays, unions and structures so that
initializations and copies can be made more efficient. This is not
ABI-changing, so it only affects places where we can see the
diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
index 37181b5..d99d14c 100644
--- a/gcc/config/aarch64/aarch64.opt
+++ b/gcc/config/aarch64/aarch64.opt
@@ -256,7 +256,7 @@ TargetVariable
long aarch64_stack_protector_guard_offset = 0
moutline-atomics
-Target Report Mask(OUTLINE_ATOMICS) Save
+Target Report Var(aarch64_flag_outline_atomics) Init(2) Save
Generate local calls to out-of-line atomic operations.
-param=aarch64-sve-compare-costs=
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 5bb7d94..527d362 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -16886,6 +16886,7 @@ instruction set. If using a later revision, e.g. @option{-march=armv8.1-a}
or @option{-march=armv8-a+lse}, the ARMv8.1-Atomics instructions will be
used directly. The same applies when using @option{-mcpu=} when the
selected cpu supports the @samp{lse} feature.
+This option is on by default.
@item -march=@var{name}
@opindex march