From aecdf6d919b4f769478212ff7cf5bd6a264ddf5a Mon Sep 17 00:00:00 2001 From: Kyrylo Tkachov Date: Fri, 30 Oct 2015 14:43:11 +0000 Subject: [PATCH] [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 --- gcc/ChangeLog | 5 +++++ gcc/config/arm/arm.c | 4 +--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index adbd98e64ed..c7e7fe1ef92 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-10-30 Kyrylo Tkachov + + * config/arm/arm.c (cortex_a9_sched_adjust_cost): Use reg_set_p to + check for dependencies. + 2015-10-30 Richard Sandiford * 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 7c72a81ece0..43106387c1a 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 -- 2.30.2