aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Law <law@gcc.gnu.org>1996-12-12 11:05:55 -0700
committerJeff Law <law@gcc.gnu.org>1996-12-12 11:05:55 -0700
commita0a7cb3547fe9852a5fbefc0f668e6d5417a6b45 (patch)
tree9ea2f98ee376b9220220c4c0008d0b63be496023
parente4565aff52709053e9f132d88e82187009c00f55 (diff)
downloadgcc-a0a7cb3547fe9852a5fbefc0f668e6d5417a6b45.zip
gcc-a0a7cb3547fe9852a5fbefc0f668e6d5417a6b45.tar.gz
gcc-a0a7cb3547fe9852a5fbefc0f668e6d5417a6b45.tar.bz2
reorg.c (fill_slots_from_thread): Don't call eligible_for_delay with an insn with asm operands.
* reorg.c (fill_slots_from_thread): Don't call eligible_for_delay with an insn with asm operands. From-SVN: r13297
-rw-r--r--gcc/reorg.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c
index beec168..637830b 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -3696,7 +3696,10 @@ fill_slots_from_thread (insn, condition, thread, opposite_thread, likely,
depend on the destination register. If so, try to place the opposite
arithmetic insn after the jump insn and put the arithmetic insn in the
delay slot. If we can't do this, return. */
- if (delay_list == 0 && likely && new_thread && GET_CODE (new_thread) == INSN)
+ if (delay_list == 0 && likely && new_thread
+ && GET_CODE (new_thread) == INSN
+ && GET_CODE (PATTERN (new_thread)) != ASM_INPUT
+ && asm_noperands (PATTERN (new_thread)) < 0)
{
rtx pat = PATTERN (new_thread);
rtx dest;