Fix 61441 [5/5] Disable various transformations for signaling NaN operands
Saraswati, Sujoy (OSTL)
sujoy.saraswati@hpe.com
Fri Jan 8 08:35:00 GMT 2016
Hi,
> If you have access to x86_64-linux, you can easily test it yourself with:
> make -C gcc check-gcc RUNTESTFLAGS='--target_board=unix\{-m64,-m32/-
> march=i386\} dg.exp=pr61441.c'
>
> Your patch does help.
Thanks, I tested the changes and it worked fine.
> issignalling is a GNU extension of glibc, so supposedly you should limit the
> test to the targets that use glibc, so either
> /* { dg-do run { target { *-*-linux* *-*-gnu* } } } */
> or perhaps specific target-supports.exp test for this (I wonder if android
> and/or uclibc support it).
I am making the change to limit it to Linux and gnu targets as you mentioned above. The Github for android/uclibc seems to indicate they don't support it.
I checked in the changed test case as -
Index: gcc/testsuite/gcc.dg/pr61441.c
===================================================================
--- gcc/testsuite/gcc.dg/pr61441.c (revision 232151)
+++ gcc/testsuite/gcc.dg/pr61441.c (working copy)
@@ -1,5 +1,5 @@
-/* { dg-do run } */
-/* { dg-options "-O1 -lm" } */
+/* { dg-do run { target { *-*-linux* *-*-gnu* } } } */
+/* { dg-options "-O1 -lm -fexcess-precision=standard" } */
#define _GNU_SOURCE
#include <stdio.h>
@@ -56,6 +56,8 @@ int main (void)
operation(Add);
operation(Mult);
operation(Div);
+#if __FLT_EVAL_METHOD__ == 0
operation(Abs);
+#endif
return 0;
}
Regards,
Sujoy
More information about the Gcc-patches
mailing list