aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/config/aarch64/aarch64.h
diff options
context:
space:
mode:
authorRong Xu <xur@google.com>2014-10-13 15:06:37 -0700
committerRong Xu <xur@google.com>2014-10-13 15:06:37 -0700
commitc16bf8984b9f89eeb79abd9a3789151f5c98d02f (patch)
treef4f01e14d95a1d713169e3064537758e1d594197 /gcc-4.9/gcc/config/aarch64/aarch64.h
parentc5748954561f492fe1c4ea772e0290079af9960b (diff)
downloadtoolchain_gcc-c16bf8984b9f89eeb79abd9a3789151f5c98d02f.tar.gz
toolchain_gcc-c16bf8984b9f89eeb79abd9a3789151f5c98d02f.tar.bz2
toolchain_gcc-c16bf8984b9f89eeb79abd9a3789151f5c98d02f.zip
[gcc-4.9] fix for for cortex-a53 erratum 835769
This patch cherry picks r216116 from google/gcc-4_9 branch (which is r216077 and r216079 from upstream gcc-4_9 branch). Tested the built compiler with aarch64 devicde. Change-Id: I75745fe35aae83bc3b64135a2efc7f8ffd9cfb1f
Diffstat (limited to 'gcc-4.9/gcc/config/aarch64/aarch64.h')
-rw-r--r--gcc-4.9/gcc/config/aarch64/aarch64.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/config/aarch64/aarch64.h b/gcc-4.9/gcc/config/aarch64/aarch64.h
index 2fd6df4af..77b2bb9b4 100644
--- a/gcc-4.9/gcc/config/aarch64/aarch64.h
+++ b/gcc-4.9/gcc/config/aarch64/aarch64.h
@@ -481,6 +481,15 @@ enum target_cpus
(TARGET_CPU_generic | (AARCH64_CPU_DEFAULT_FLAGS << 6))
#endif
+/* If inserting NOP before a mult-accumulate insn remember to adjust the
+ length so that conditional branching code is updated appropriately. */
+#define ADJUST_INSN_LENGTH(insn, length) \
+ if (aarch64_madd_needs_nop (insn)) \
+ length += 4;
+
+#define FINAL_PRESCAN_INSN(INSN, OPVEC, NOPERANDS) \
+ aarch64_final_prescan_insn (INSN); \
+
/* The processor for which instructions should be scheduled. */
extern enum aarch64_processor aarch64_tune;