diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-25 19:34:06 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-25 19:34:06 +0000 |
commit | 4f63c6d14c3d425580ddac5e4c3cfe77b6482699 (patch) | |
tree | a22f2c2daa5bc0393efc4ea2dec8b6e6c7f035d8 /gcc/rtlanal.c | |
parent | 2349b57a351c9904dc2cca52ca1504fdb1208a55 (diff) | |
download | gcc-4f63c6d14c3d425580ddac5e4c3cfe77b6482699.tar.gz |
* ifcvt.c (struct noce_if_info): Add test_bb.
(noce_get_alt_condition): New.
(noce_try_minmax, noce_try_abs): New.
(noce_operand_ok): New.
(noce_process_if_block): Use them.
* rtlanal.c (may_trap_p): NEG and ABS can never trap.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40060 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r-- | gcc/rtlanal.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 6e6ed8e7b2b..237382f9072 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -2020,6 +2020,11 @@ may_trap_p (x) return 1; break; + case NEG: + case ABS: + /* These operations don't trap even with floating point. */ + break; + default: /* Any floating arithmetic may trap. */ if (GET_MODE_CLASS (GET_MODE (x)) == MODE_FLOAT) |