aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2015-10-30 14:43:11 +0000
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>2015-10-30 14:43:11 +0000
commitaecdf6d919b4f769478212ff7cf5bd6a264ddf5a (patch)
tree793ca6ce6cd20ba1991fd7c62f837d7bdf7e9e3f
parenta52380e99db36781c7471c0ab6634ae6b80874f3 (diff)
downloadgcc-aecdf6d919b4f769478212ff7cf5bd6a264ddf5a.zip
gcc-aecdf6d919b4f769478212ff7cf5bd6a264ddf5a.tar.gz
gcc-aecdf6d919b4f769478212ff7cf5bd6a264ddf5a.tar.bz2
[ARM] Fix checking RTL error in cortex_a9_sched_adjust_cost
* config/arm/arm.c (cortex_a9_sched_adjust_cost): Use reg_set_p to check for dependencies. From-SVN: r229583
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/arm/arm.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index adbd98e..c7e7fe1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-10-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/arm/arm.c (cortex_a9_sched_adjust_cost): Use reg_set_p to
+ check for dependencies.
+
2015-10-30 Richard Sandiford <richard.sandiford@arm.com>
* tree-ssa-math-opts.c (pass_cse_sincos::execute): Don't free
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 7c72a81..4310638 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -11610,9 +11610,7 @@ cortex_a9_sched_adjust_cost (rtx_insn *insn, rtx link, rtx_insn *dep, int * cost
case. However this gets modeled as an true
dependency and hence all these checks. */
if (REG_P (SET_DEST (PATTERN (insn)))
- && REG_P (SET_DEST (PATTERN (dep)))
- && reg_overlap_mentioned_p (SET_DEST (PATTERN (insn)),
- SET_DEST (PATTERN (dep))))
+ && reg_set_p (SET_DEST (PATTERN (insn)), dep))
{
/* FMACS is a special case where the dependent
instruction can be issued 3 cycles before