aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/arm/unspecs.md
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/arm/unspecs.md')
-rw-r--r--gcc/config/arm/unspecs.md14
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/config/arm/unspecs.md b/gcc/config/arm/unspecs.md
index 46ac8b3..f5f4d15 100644
--- a/gcc/config/arm/unspecs.md
+++ b/gcc/config/arm/unspecs.md
@@ -591,6 +591,10 @@
VADDLVQ_U
VCTP
VCTP_M
+ LETP8
+ LETP16
+ LETP32
+ LETP64
VPNOT
VCREATEQ_F
VCVTQ_N_TO_F_S
@@ -1259,6 +1263,14 @@
UQRSHLL_48
SQRSHRL_64
SQRSHRL_48
- VSHLCQ_M_
REINTERPRET
])
+
+; DLSTP unspecs must be volatile to guarantee the scheduler does not reschedule
+; these instructions within the loop preheader.
+(define_c_enum "unspecv" [
+ DLSTP8
+ DLSTP16
+ DLSTP32
+ DLSTP64
+])