aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRask Ingemann Lambertsen <rask@sygehus.dk>2007-12-18 16:30:57 +0100
committerRask Ingemann Lambertsen <rask@gcc.gnu.org>2007-12-18 15:30:57 +0000
commit86636093d479670acc5c5758eea3ff3b534ca541 (patch)
treef898731ed70c076bf921ff6fe727c262e3786c13
parent0741e2aff181cddb7235b45dc3102ebc76815aa3 (diff)
downloadgcc-86636093d479670acc5c5758eea3ff3b534ca541.zip
gcc-86636093d479670acc5c5758eea3ff3b534ca541.tar.gz
gcc-86636093d479670acc5c5758eea3ff3b534ca541.tar.bz2
re PR target/33474 (bfin: ICE: RTL check: expected code 'set' or 'clobber', have 'parallel' in bfin_adjust_cost, at config/bfin/bfin.c:3120)
PR target/33474 * config/bfin/bfin.c (bfin_adjust_cost): Dig into PARALLELs to find the SET. From-SVN: r131037
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/bfin/bfin.c2
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ee3304e..56d1305 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-12-18 Rask Ingemann Lambertsen <rask@sygehus.dk>
+
+ PR target/33474
+ * config/bfin/bfin.c (bfin_adjust_cost): Dig into PARALLELs to find
+ the SET.
+
2007-12-18 Razya Ladelsky <razya@il.ibm.com>
* tree-parloops.c (reduiction_info): Change documentation of
diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c
index e5f867b..ce67301 100644
--- a/gcc/config/bfin/bfin.c
+++ b/gcc/config/bfin/bfin.c
@@ -3376,6 +3376,8 @@ bfin_adjust_cost (rtx insn, rtx link, rtx dep_insn, int cost)
if (dep_insn_type == TYPE_MOVE || dep_insn_type == TYPE_MCLD)
{
rtx pat = PATTERN (dep_insn);
+ if (GET_CODE (pat) == PARALLEL)
+ pat = XVECEXP (pat, 0, 0);
rtx dest = SET_DEST (pat);
rtx src = SET_SRC (pat);
if (! ADDRESS_REGNO_P (REGNO (dest))