diff options
author | Andrew Haley <aph@redhat.com> | 2002-10-01 12:19:36 +0000 |
---|---|---|
committer | Andrew Haley <aph@gcc.gnu.org> | 2002-10-01 12:19:36 +0000 |
commit | a646f6ccc1113db8d1faeb1a902b44c1c7774e8c (patch) | |
tree | 150e6abd5f8f691ae4cd7d2c2f60135ff3b9682d /gcc/cse.c | |
parent | 3f7967e390a7cb0a06527a5ebf8a7f6a040b047b (diff) | |
download | gcc-a646f6ccc1113db8d1faeb1a902b44c1c7774e8c.tar.gz |
flow.c (insn_dead_p): When using non-call-exceptions, don't eliminate insns that may trap.
2002-09-30 Andrew Haley <aph@redhat.com>
* flow.c (insn_dead_p): When using non-call-exceptions, don't
eliminate insns that may trap.
* cse.c (insn_live_p): Likewise.
From-SVN: r57688
Diffstat (limited to 'gcc/cse.c')
-rw-r--r-- | gcc/cse.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/cse.c b/gcc/cse.c index 706fe80f4eb..29c771b93f6 100644 --- a/gcc/cse.c +++ b/gcc/cse.c @@ -7582,7 +7582,9 @@ insn_live_p (insn, counts) int *counts; { int i; - if (GET_CODE (PATTERN (insn)) == SET) + if (flag_non_call_exceptions && may_trap_p (insn)) + return true; + else if (GET_CODE (PATTERN (insn)) == SET) return set_live_p (PATTERN (insn), insn, counts); else if (GET_CODE (PATTERN (insn)) == PARALLEL) { |