[testsuite] Add missing fenv effective target to fp-int-convert-timode* tests.
authorChristophe Lyon <christophe.lyon@linaro.org>
Fri, 25 Jan 2019 13:36:37 +0000 (13:36 +0000)
committerChristophe Lyon <clyon@gcc.gnu.org>
Fri, 25 Jan 2019 13:36:37 +0000 (14:36 +0100)
2019-01-25  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
* doc/sourcebuild.texi (Environment attributes): Add fenv and
fenv_exceptions description.

2019-01-25  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/testsuite/
* lib/target-supports.exp (check_effective_target_fenv): New.
* gcc.dg/torture/fp-int-convert-float128-timode-3.c: Add missing
fenv effective target.
* gcc.dg/torture/fp-int-convert-timode-1.c: Likewise.
* gcc.dg/torture/fp-int-convert-timode-2.c: Likewise.
* gcc.dg/torture/fp-int-convert-timode-3.c: Likewise.
* gcc.dg/torture/fp-int-convert-timode-4.c: Likewise.

From-SVN: r268266

gcc/ChangeLog
gcc/doc/sourcebuild.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/fp-int-convert-float128-timode-3.c
gcc/testsuite/gcc.dg/torture/fp-int-convert-timode-1.c
gcc/testsuite/gcc.dg/torture/fp-int-convert-timode-2.c
gcc/testsuite/gcc.dg/torture/fp-int-convert-timode-3.c
gcc/testsuite/gcc.dg/torture/fp-int-convert-timode-4.c
gcc/testsuite/lib/target-supports.exp

index 87794469c3bf7b855554d4ebe7429b9054c82180..ff46540a0857c0cca06454fa09bbaaadecdcd89f 100644 (file)
@@ -1,3 +1,8 @@
+2019-01-25  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       * doc/sourcebuild.texi (Environment attributes): Add fenv and
+       fenv_exceptions description.
+
 2019-01-25  Wilco Dijkstra  <wdijkstr@arm.com>
 
        PR rtl-optimization/87763
index 32a8f6aa12a71bc280cce0e5e22225dad6b11683..a6704569d505284eec2f31aa78dbd2d7d478e3c2 100644 (file)
@@ -2128,6 +2128,13 @@ Target can truncate a file from a file descriptor, as used by
 @file{libgfortran/io/unix.c:fd_truncate}; i.e.@: @code{ftruncate} or
 @code{chsize}.
 
+@item fenv
+Target provides @file{fenv.h} include file.
+
+@item fenv_exceptions
+Target supports @file{fenv.h} with all the standard IEEE exceptions
+and floating-point exceptions are raised by arithmetic operations.
+
 @item freestanding
 Target is @samp{freestanding} as defined in section 4 of the C99 standard.
 Effectively, it is a target which supports no extra headers or libraries
index 9803c91e40bc261f23ec2e9f5e1d7240568fe047..10536c9b2204b08bd90bebdf00bc78b661601b92 100644 (file)
@@ -1,3 +1,13 @@
+2019-01-25  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       * lib/target-supports.exp (check_effective_target_fenv): New.
+       * gcc.dg/torture/fp-int-convert-float128-timode-3.c: Add missing
+       fenv effective target.
+       * gcc.dg/torture/fp-int-convert-timode-1.c: Likewise.
+       * gcc.dg/torture/fp-int-convert-timode-2.c: Likewise.
+       * gcc.dg/torture/fp-int-convert-timode-3.c: Likewise.
+       * gcc.dg/torture/fp-int-convert-timode-4.c: Likewise.
+
 2019-01-25  Richard Biener  <rguenther@suse.de>
 
        PR tree-optimization/86865
index fa6eb6b72bf3b0eb0fec67be67ecb1e4b0101199..c445d10522ef44940aaba94307dc9bdc0ab1adab 100644 (file)
@@ -4,6 +4,7 @@
 /* { dg-require-effective-target __float128 } */
 /* { dg-require-effective-target base_quadfloat_support } */
 /* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target fenv } */
 /* { dg-options "-frounding-math" } */
 /* { dg-add-options __float128 } */
 
index d6454fada7202d8e38e0d6f4a0343a9481bcd135..0c524a8c4782b6197bc0247a7f66340ca7d9579c 100644 (file)
@@ -2,6 +2,7 @@
    float.  */
 /* { dg-do run } */
 /* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target fenv } */
 /* { dg-options "-frounding-math" } */
 
 #include <fenv.h>
index dbfa481b4fbae118c96a0d835e335c620e3d8455..a82f03d079cce2d01b7694eb068fca484f5cb649 100644 (file)
@@ -2,6 +2,7 @@
    float.  */
 /* { dg-do run } */
 /* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target fenv } */
 /* { dg-options "-frounding-math" } */
 
 #include <fenv.h>
index 63a305ec3c208a65338849ca70122100d2891a68..707d539335fe43788e9e6b4803f211b9ca4f4f58 100644 (file)
@@ -2,6 +2,7 @@
    float.  */
 /* { dg-do run } */
 /* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target fenv } */
 /* { dg-options "-frounding-math" } */
 
 #include <fenv.h>
index e71610995cd34432907c4c9edf46b83873b8ca19..09600f9090312bb4690ba9dab24caac82897f98f 100644 (file)
@@ -2,6 +2,7 @@
    float.  */
 /* { dg-do run } */
 /* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target fenv } */
 /* { dg-options "-frounding-math" } */
 
 #include <fenv.h>
index c0df467e0175cd92c688cedebb97fd4ae87e985e..92202ffcbf01e4ca0c0affadb46d6172744ce585 100644 (file)
@@ -8536,6 +8536,14 @@ proc check_effective_target_avr_tiny { } {
     }
 }
 
+# Return 1 if <fenv.h> is available.
+
+proc check_effective_target_fenv {} {
+    return [check_no_compiler_messages fenv object {
+       #include <fenv.h>
+    } [add_options_for_ieee "-std=gnu99"]]
+}
+
 # Return 1 if <fenv.h> is available with all the standard IEEE
 # exceptions and floating-point exceptions are raised by arithmetic
 # operations.  (If the target requires special options for "inexact"