aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/rtlanal.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4b7e955..6ad054e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-05-08 Richard Henderson <rth@cygnus.com>
+
+ * rtlanal.c (may_trap_p): Consider old-style and volatile
+ asms to trap.
+
Mon May 8 17:16:48 2000 Jim Wilson <wilson@cygnus.com>
* config/ia64/ia64.h (RETURN_ADDR_RTX): Use COUNT not count.
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 8a3eb62..891799b 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -1743,11 +1743,14 @@ may_trap_p (x)
case SCRATCH:
return 0;
- /* Conditional trap can trap! */
+ case ASM_INPUT:
case UNSPEC_VOLATILE:
case TRAP_IF:
return 1;
+ case ASM_OPERANDS:
+ return MEM_VOLATILE_P (x);
+
/* Memory ref can trap unless it's a static var or a stack slot. */
case MEM:
return rtx_addr_can_trap_p (XEXP (x, 0));