aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2007-03-19 04:14:59 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2007-03-19 04:14:59 +0000
commitc6ac6e82ac1102dcf53bed70010e385fdbe8041a (patch)
treec9c92b6329f0e22d3244d24c72a578289ccc33d8
parentecc418c4f94915b0b8bfb57e8074c71fc1c05e3f (diff)
downloadgcc-c6ac6e82ac1102dcf53bed70010e385fdbe8041a.zip
gcc-c6ac6e82ac1102dcf53bed70010e385fdbe8041a.tar.gz
gcc-c6ac6e82ac1102dcf53bed70010e385fdbe8041a.tar.bz2
re PR target/31022 ([SH4] internal compiler error with inline)
PR target/31022 * config/sh/sh.c (sh_adjust_cost): Use the result of single_set instead of PATTERN. From-SVN: r123049
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/sh/sh.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9702ebb..bfa802b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-03-19 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/31022
+ * config/sh/sh.c (sh_adjust_cost): Use the result of single_set
+ instead of PATTERN.
+
2007-03-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* pa.c (output_deferred_plabels, output_bb, output_millicode_call,
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 68f8ec1..0aeb764 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -8966,7 +8966,7 @@ sh_adjust_cost (rtx insn, rtx link ATTRIBUTE_UNUSED, rtx dep_insn, int cost)
by 1 cycle. */
if (get_attr_type (insn) == TYPE_DYN_SHIFT
&& get_attr_any_int_load (dep_insn) == ANY_INT_LOAD_YES
- && reg_overlap_mentioned_p (SET_DEST (PATTERN (dep_insn)),
+ && reg_overlap_mentioned_p (SET_DEST (dep_set),
XEXP (SET_SRC (single_set (insn)),
1)))
cost++;