aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn David Anglin <dave@hiauly1.hia.nrc.ca>2001-03-28 00:25:25 +0000
committerAlan Modra <amodra@gcc.gnu.org>2001-03-28 09:55:25 +0930
commit055c77597b8913a078bc3ca7373edb0d00f19ba9 (patch)
treee7f78a620291029a07d46ea7e67759d63928c54a
parentad0fc6987804eb16dccee061dc63fdd6ca07be48 (diff)
downloadgcc-055c77597b8913a078bc3ca7373edb0d00f19ba9.zip
gcc-055c77597b8913a078bc3ca7373edb0d00f19ba9.tar.gz
gcc-055c77597b8913a078bc3ca7373edb0d00f19ba9.tar.bz2
* reload1.c (eliminate_regs): Don't abort on MEM USEs.
From-SVN: r40887
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/reload1.c6
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7aa2bde..131fa9b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2001-03-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * reload1.c (eliminate_regs): Don't abort on MEM USEs.
+
2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (SYSTEM_H): Define.
diff --git a/gcc/reload1.c b/gcc/reload1.c
index bdcc7c5..6194b87 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -2586,6 +2586,12 @@ eliminate_regs (x, mem_mode, insn)
return x;
case USE:
+ /* Handle insn_list USE that a call to a pure function may generate. */
+ new = eliminate_regs (XEXP (x, 0), 0, insn);
+ if (new != XEXP (x, 0))
+ return gen_rtx_USE (GET_MODE (x), new);
+ return x;
+
case CLOBBER:
case ASM_OPERANDS:
case SET: