diff options
author | Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> | 2003-02-11 20:43:06 +0000 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2003-02-11 12:43:06 -0800 |
commit | 22fd5743d9a6c0e283a69250011685e58dcc2993 (patch) | |
tree | 96905a7451aa979ca5cde08cd5d521d3dcf2a326 /gcc/rtlanal.c | |
parent | 3462df62821b4ca26261c9dd64f4183cd4cd9fb9 (diff) | |
download | gcc-22fd5743d9a6c0e283a69250011685e58dcc2993.zip gcc-22fd5743d9a6c0e283a69250011685e58dcc2993.tar.gz gcc-22fd5743d9a6c0e283a69250011685e58dcc2993.tar.bz2 |
re PR rtl-optimization/9651 ([Alpha] FPE with NAN in spite of isnan protection)
PR optimization/9651
* rtlanal.c (may_trap_p): Handle FIX.
From-SVN: r62717
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r-- | gcc/rtlanal.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 5e06770..4c6024a 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. */ |