Fix PR 101683: FP exceptions for float->unsigned
authorAndrew Pinski <apinski@marvell.com>
Fri, 30 Jul 2021 02:48:46 +0000 (19:48 -0700)
committerAndrew Pinski <apinski@marvell.com>
Mon, 2 Aug 2021 14:47:03 +0000 (14:47 +0000)
Just like the old bug PR9651, unsigned_fix rtl should
also be handled as a trapping instruction.

OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.

gcc/ChangeLog:

PR rtl-optimization/101683
* rtlanal.c (may_trap_p_1): Handle UNSIGNED_FIX.

gcc/rtlanal.c

index 3b8d88a..f7f3acb 100644 (file)
@@ -3261,6 +3261,7 @@ may_trap_p_1 (const_rtx x, unsigned flags)
       break;
 
     case FIX:
+    case UNSIGNED_FIX:
       /* Conversion of floating point might trap.  */
       if (flag_trapping_math && HONOR_NANS (XEXP (x, 0)))
        return 1;