From: rth Date: Tue, 11 Feb 2003 20:43:06 +0000 (+0000) Subject: PR optimization/9651 X-Git-Url: http://git.sourceforge.jp/view?a=commitdiff_plain;h=d0a099f8bbd1392f86ee084dbd472cbf7b2df934;p=pf3gnuchains%2Fgcc-fork.git PR optimization/9651 * rtlanal.c (may_trap_p): Handle FIX. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@62717 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f6669b06743..4cbfcb6eb0b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-02-11 Falk Hueffner + + PR optimization/9651 + * rtlanal.c (may_trap_p): Handle FIX. + 2003-02-11 Dave Jones * config/i386/i386.c (override_options): Define c3-2 as a 686 with SSE. diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 5e0677066a8..4c6024a63f5 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -2517,6 +2517,18 @@ may_trap_p (x) return 1; break; + case FIX: + /* Conversion of floating point might trap. */ + if (flag_trapping_math && HONOR_NANS (GET_MODE (XEXP (x, 0)))) + return 1; + break; + + case FIX: + /* Conversion of floating point might trap. */ + if (flag_trapping_math && HONOR_NANS (GET_MODE (XEXP (x, 0)))) + return 1; + break; + case NEG: case ABS: /* These operations don't trap even with floating point. */