From f54104df4e03a710acc8b1789d5719bbcf981ff0 Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Sun, 15 Apr 2001 16:50:51 +0000 Subject: [PATCH] gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable. * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable. (find_moveable_store): Likewise. From-SVN: r41363 --- gcc/ChangeLog | 5 +++++ gcc/gcse.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1057c8b0d54..7fd793704a8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-04-15 Alexandre Oliva + + * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable. + (find_moveable_store): Likewise. + 2001-04-15 Jim Wilson * function.c (expand_function_end): Handle PARALLEL real_decl_rtl. diff --git a/gcc/gcse.c b/gcc/gcse.c index 402e85e787e..56117f9a170 100644 --- a/gcc/gcse.c +++ b/gcc/gcse.c @@ -6264,7 +6264,8 @@ compute_ld_motion_mems () { ptr = ldst_entry (dest); - if (GET_CODE (src) != MEM) + if (GET_CODE (src) != MEM + && GET_CODE (src) != ASM_OPERANDS) ptr->stores = alloc_INSN_LIST (insn, ptr->stores); else ptr->invalid = 1; @@ -6521,7 +6522,8 @@ find_moveable_store (insn) struct ls_expr * ptr; rtx dest = PATTERN (insn); - if (GET_CODE (dest) != SET) + if (GET_CODE (dest) != SET + || GET_CODE (SET_SRC (dest)) == ASM_OPERANDS) return; dest = SET_DEST (dest); -- 2.30.2