summaryrefslogtreecommitdiff
path: root/gcc/ifcvt.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2002-03-28 12:25:21 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2002-03-28 12:25:21 +0000
commit350b17ef4ffedff588e2c5ff04c4220ef2729bc8 (patch)
treec975b4080bd3d5dadf4179b7b9ad2f7233bac1f2 /gcc/ifcvt.c
parent57132eee5c43009828515c533c86f7c2e712ecda (diff)
downloadgcc-350b17ef4ffedff588e2c5ff04c4220ef2729bc8.tar.gz
* rtlanal.c: Include flags.h
(may_trap_p): Do not mark FP operations if trapping if !flag_trapping_math * Makefile.in (rtlanal.o): Add dependency on flag.h * ifcvt.c (noce_operand_ok): Avoid the lameness. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51508 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ifcvt.c')
-rw-r--r--gcc/ifcvt.c29
1 files changed, 0 insertions, 29 deletions
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index 989fa5cdd44..f912654da21 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -1554,35 +1554,6 @@ noce_operand_ok (op)
if (side_effects_p (op))
return FALSE;
- /* ??? Unfortuantely may_trap_p can't look at flag_trapping_math, due to
- being linked into the genfoo programs. This is probably a mistake.
- With finite operands, most fp operations don't trap. */
- if (!flag_trapping_math && FLOAT_MODE_P (GET_MODE (op)))
- switch (GET_CODE (op))
- {
- case DIV:
- case MOD:
- case UDIV:
- case UMOD:
- /* ??? This is kinda lame -- almost every target will have forced
- the constant into a register first. But given the expense of
- division, this is probably for the best. */
- return (CONSTANT_P (XEXP (op, 1))
- && XEXP (op, 1) != CONST0_RTX (GET_MODE (op))
- && ! may_trap_p (XEXP (op, 0)));
-
- default:
- switch (GET_RTX_CLASS (GET_CODE (op)))
- {
- case '1':
- return ! may_trap_p (XEXP (op, 0));
- case 'c':
- case '2':
- return ! may_trap_p (XEXP (op, 0)) && ! may_trap_p (XEXP (op, 1));
- }
- break;
- }
-
return ! may_trap_p (op);
}