combine.c (can_combine_p): Don't substitute an ASM_OPERANDS into anything.
authorGeoff Keating <geoffk@cygnus.com>
Tue, 19 Sep 2000 04:49:44 +0000 (04:49 +0000)
committerGeoffrey Keating <geoffk@gcc.gnu.org>
Tue, 19 Sep 2000 04:49:44 +0000 (04:49 +0000)
* combine.c (can_combine_p): Don't substitute an ASM_OPERANDS
into anything.

From-SVN: r36525

gcc/ChangeLog
gcc/combine.c

index 29ba53e461b7032edccde0b026bb280dbc2b131d..279b78072e2eb877c16d97972641c011b5c8c661 100644 (file)
@@ -1,3 +1,8 @@
+2000-09-18  Geoff Keating  <geoffk@cygnus.com>
+
+       * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS
+       into anything.
+
 2000-09-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * Makefile.in (c-common.o): Depend on diagnostic.h.
index a498b580d772df5d7182a9d8c9bfdb0247590f91..9f59837cceea68084561721b46fa369bc52195df 100644 (file)
@@ -1058,6 +1058,8 @@ can_combine_p (insn, i3, pred, succ, pdest, psrc)
       /* Don't combine with an insn that sets a register to itself if it has
         a REG_EQUAL note.  This may be part of a REG_NO_CONFLICT sequence.  */
       || (rtx_equal_p (src, dest) && find_reg_note (insn, REG_EQUAL, NULL_RTX))
+      /* Can't merge an ASM_OPERANDS.  */
+      || GET_CODE (src) == ASM_OPERANDS
       /* Can't merge a function call.  */
       || GET_CODE (src) == CALL
       /* Don't eliminate a function call argument.  */