summaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
diff options
context:
space:
mode:
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-04 22:50:53 +0000
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-04 22:50:53 +0000
commit8e97b01776aa48f2b1e4120d65d4b2aaaa484668 (patch)
tree580801882cf8a84ce5d18bc451fb32a0356dfeb0 /gcc/rtlanal.c
parent281bff32ec9ab0da6891b0092d8efefe78bccb84 (diff)
downloadgcc-8e97b01776aa48f2b1e4120d65d4b2aaaa484668.tar.gz
2005-04-02 David Edelsohn <edelsohn@gnu.org>
Daniel Jacobowitz <dan@codesourcery.com> * tree-eh.c (tree_could_trap_p): Allow non-constant floating point trapping divide. * rtlanal.c (may_trap_p): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97582 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r--gcc/rtlanal.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 0686af8c65b..da9774e488b 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -2105,11 +2105,9 @@ may_trap_p (rtx x)
case UMOD:
if (HONOR_SNANS (GET_MODE (x)))
return 1;
- if (! CONSTANT_P (XEXP (x, 1))
- || (GET_MODE_CLASS (GET_MODE (x)) == MODE_FLOAT
- && flag_trapping_math))
- return 1;
- if (XEXP (x, 1) == const0_rtx)
+ if (GET_MODE_CLASS (GET_MODE (x)) == MODE_FLOAT)
+ return flag_trapping_math;
+ if (!CONSTANT_P (XEXP (x, 1)) || (XEXP (x, 1) == const0_rtx))
return 1;
break;