]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* function.c (fixup_var_refs_insns): Handle CLOBBER of a CONCAT.
authorJim Wilson <wilson@cygnus.com>
Mon, 20 Jul 1998 00:15:34 +0000 (00:15 +0000)
committerJeff Law <law@gcc.gnu.org>
Mon, 20 Jul 1998 00:15:34 +0000 (18:15 -0600)
From-SVN: r21298

gcc/ChangeLog
gcc/function.c

index ebbb1bdd39f670cc73ae78de75e3a7df7de974a2..8f94ec1d9d5410295b137497563c8dfd944221a3 100644 (file)
@@ -1,3 +1,7 @@
+Mon Jul 20 01:13:19 1998  Jim Wilson  <wilson@cygnus.com>
+
+       * function.c (fixup_var_refs_insns): Handle CLOBBER of a CONCAT.
+
 Sat Jul 18 15:20:19 1998  Mark Mitchell  <mark@markmitchell.com>
 
        * loop.c (maybe_eliminate_biv_1): Avoid signed/unsigned comparison
index 67bbc698cfe8473a4faaab5feb2eff900a24e234..cf9542bfe9bc7ae6e87ea2e480c1428a8d044512 100644 (file)
@@ -1661,7 +1661,10 @@ fixup_var_refs_insns (var, promoted_mode, unsignedp, insn, toplevel)
             If it has a REG_LIBCALL note, delete the REG_LIBCALL
             and REG_RETVAL notes too.  */
          if (GET_CODE (PATTERN (insn)) == CLOBBER
-             && XEXP (PATTERN (insn), 0) == var)
+             && (XEXP (PATTERN (insn), 0) == var
+                 || (GET_CODE (XEXP (PATTERN (insn), 0)) == CONCAT
+                     && (XEXP (XEXP (PATTERN (insn), 0), 0) == var
+                         || XEXP (XEXP (PATTERN (insn), 0), 1) == var))))
            {
              if ((note = find_reg_note (insn, REG_LIBCALL, NULL_RTX)) != 0)
                /* The REG_LIBCALL note will go away since we are going to