re PR target/33474 (bfin: ICE: RTL check: expected code 'set' or 'clobber', have...
authorRask Ingemann Lambertsen <rask@sygehus.dk>
Tue, 18 Dec 2007 15:30:57 +0000 (16:30 +0100)
committerRask Ingemann Lambertsen <rask@gcc.gnu.org>
Tue, 18 Dec 2007 15:30:57 +0000 (15:30 +0000)
PR target/33474
* config/bfin/bfin.c (bfin_adjust_cost): Dig into PARALLELs to find
the SET.

From-SVN: r131037

gcc/ChangeLog
gcc/config/bfin/bfin.c

index ee3304e3023f037ea2d456c5ba3b71f3c1c60188..56d1305c980f258c5bc8cdcdd8086f6c9a7332a4 100644 (file)
@@ -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
index e5f867ba7aa3153af1df00bcaa8cb8edc0b828b5..ce6730131d6d73204b8b99948639f4dcbdb2330d 100644 (file)
@@ -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))