+2019-10-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * doc/sourcebuild.texi (Test Directives, Add Options): Remove
+ c99_runtime.
+
2019-10-12 Jan Hubicka <hubicka@ucw.cz>
* lto-streamer-out.c (collect_block_tree_leafs): Renumber statements
Add the target-specific flags needed to enable functions to bind
locally when using pic/PIC passes in the testsuite.
-@item c99_runtime
-Add the target-specific flags needed to access the C99 runtime.
-
@item float@var{n}
Add the target-specific flags needed to use the @code{_Float@var{n}} type.
+2019-10-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * lib/target-supports.exp (add_options_for_c99_runtime): Remove.
+ (check_effective_target_c99_runtime): Remove call to
+ add_options_for_c99_runtime.
+
+ * gcc.dg/builtins-18.c: Remove dg-add-options c99_runtime.
+ * gcc.dg/builtins-20.c: Likewise.
+ * gcc.dg/builtins-53.c: Likewise.
+ * gcc.dg/builtins-55.c: Likewise.
+ * gcc.dg/builtins-67.c: Likewise.
+ * gcc.dg/c99-tgmath-1.c: Likewise.
+ * gcc.dg/c99-tgmath-2.c: Likewise.
+ * gcc.dg/c99-tgmath-3.c: Likewise.
+ * gcc.dg/c99-tgmath-4.c: Likewise.
+ * gcc.dg/ipa/inline-8.c: Likewise.
+ * gcc.dg/ipa/ipa-icf-5.c: Likewise.
+ * gcc.dg/ipa/ipa-icf-7.c: Likewise.
+ * gcc.dg/nextafter-2.c: Likewise.
+ * gcc.dg/pr42427.c: Likewise.
+ * gcc.dg/pr78965.c: Likewise.
+ * gcc.dg/single-precision-constant.c: Likewise.
+ * gcc.dg/torture/builtin-convert-1.c: Likewise.
+ * gcc.dg/torture/builtin-convert-2.c: Likewise.
+ * gcc.dg/torture/builtin-convert-3.c: Likewise.
+ * gcc.dg/torture/builtin-convert-4.c: Likewise.
+ * gcc.dg/torture/builtin-fp-int-inexact.c: Likewise.
+ * gcc.dg/torture/builtin-fp-int-inexact-c2x.c: Likewise.
+ * gcc.dg/torture/builtin-integral-1.c: Likewise.
+ * gcc.dg/torture/builtin-power-1.c: Likewise.
+ * gcc.dg/tree-ssa/copy-sign-1.c: Likewise.
+ * gcc.dg/tree-ssa/minmax-2.c: Likewise.
+ * gcc.dg/tree-ssa/mult-abs-2.c: Likewise.
+ * gcc.target/i386/387-builtin-fp-int-inexact.c: Likewise.
+ * gcc.target/i386/387-rint-inline-1.c: Likewise.
+ * gcc.target/i386/387-rint-inline-2.c: Likewise.
+ * gcc.target/i386/conversion.c: Likewise.
+ * gcc.target/i386/pr47312.c: Likewise.
+ * gcc.target/i386/sse2-builtin-fp-int-inexact.c: Likewise.
+ * gcc.target/i386/sse2-rint-inline-1.c: Likewise.
+ * gcc.target/i386/sse2-rint-inline-2.c: Likewise.
+ * gcc.target/i386/sse4_1-builtin-fp-int-inexact.c: Likewise.
+ * gcc.target/i386/sse4_1-rint-inline.c: Likewise.
+
2019-10-12 Jakub Jelinek <jakub@redhat.com>
PR middle-end/92063
/* { dg-do link } */
/* { dg-options "-O2 -ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "builtins-config.h"
/* { dg-do link } */
/* { dg-options "-O2 -ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "builtins-config.h"
/* { dg-do compile } */
/* { dg-options "-O2 -ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "builtins-config.h"
/* { dg-do link } */
/* { dg-options "-O2 -ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "builtins-config.h"
/* { dg-do link } */
/* { dg-options "-ffast-math -lm" } */
-/* { dg-add-options c99_runtime } */
/* Bionic doesn't have rintl */
/* { dg-require-effective-target non_bionic } */
/* Origin: Matt Austern <austern@apple.com>
/* { dg-do preprocess { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target tgmath_h } */
/* Test that tgmath defines the macros it's supposed to. */
/* Origin: Matt Austern <austern@apple.com>
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target tgmath_h } */
/* Test that invoking type-generic sin on a float invokes sinf. */
/* Origin: Matt Austern <austern@apple.com>
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target tgmath_h } */
/* Test that invoking type-generic exp on a complex invokes cexp. */
/* Origin: Matt Austern <austern@apple.com>
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-std=iso9899:1999" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target tgmath_h } */
/* Test that invoking type-generic pow on complex float invokes cpowf. */
/* { dg-do run } */
/* { dg-require-effective-target c99_runtime } */
/* { dg-options "-O2" } */
-/* { dg-add-options c99_runtime } */
#include <math.h>
extern int isnanf (float);
/* Can't be inlined because isnanf will be optimized out. */
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-O2 -fdump-ipa-icf-optimized" } */
-/* { dg-add-options c99_runtime } */
#include <complex.h>
/* { dg-do compile { target c99_runtime } } */
/* { dg-options "-O2 -fdump-ipa-icf-optimized" } */
-/* { dg-add-options c99_runtime } */
#include <complex.h>
/* { dg-require-effective-target c99_runtime } */
/* { dg-options "-O2 -fno-builtin" } */
/* { dg-add-options ieee } */
-/* { dg-add-options c99_runtime } */
#include <stdlib.h>
/* { dg-do assemble { target c99_runtime } } */
/* { dg-options "-O2 -fexceptions -fnon-call-exceptions -fpeel-loops" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target exceptions } */
/* PR tree-optimization/78965 */
/* { dg-do run { target c99_runtime } } */
/* { dg-options "-O2" } */
-/* { dg-add-options c99_runtime } */
int
main ()
/* { dg-do run } */
/* { dg-options "-fsingle-precision-constant" } */
-/* { dg-add-options c99_runtime } */
#include <math.h>
#include <float.h>
/* { dg-do link } */
/* { dg-options "-ffast-math" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target c99_runtime } */
#include "../builtins-config.h"
/* { dg-do link } */
/* { dg-options "-ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "../builtins-config.h"
/* { dg-do link } */
/* { dg-options "-ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "../builtins-config.h"
/* { dg-do compile } */
/* { dg-options "-ftrapping-math -fdump-tree-original" } */
-/* { dg-add-options c99_runtime } */
#include "../builtins-config.h"
/* Test C2X enables -fno-fp-int-builtin-inexact. */
/* { dg-do run } */
/* { dg-options "-std=c2x" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target fenv_exceptions } */
#include "builtin-fp-int-inexact.c"
/* Test -fno-fp-int-builtin-inexact. */
/* { dg-do run } */
/* { dg-options "-fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target fenv_exceptions } */
#include <fenv.h>
that various math functions are marked const/pure and can be
folded. */
/* { dg-options "-ffinite-math-only -fno-math-errno" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target c99_runtime } */
/* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
/* { dg-do link } */
/* { dg-options "-ffast-math" } */
-/* { dg-add-options c99_runtime } */
/* { dg-skip-if "PR44214" { *-*-* } { "-O0" } { "" } } */
#include "../builtins-config.h"
/* { dg-do compile } */
/* { dg-require-effective-target c99_runtime } */
/* { dg-options "-O2 -ffast-math -fdump-tree-gimple" } */
-/* { dg-add-options c99_runtime } */
float f(float x)
{
return (x > 0.f ? -1.f : 1.f);
/* { dg-do compile } */
/* { dg-options "-O -fstrict-overflow -fdump-tree-optimized" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target c99_runtime } */
static int max(int a,int b){return (a<b)?b:a;}
/* { dg-do compile } */
/* { dg-require-effective-target c99_runtime } */
/* { dg-options "-O2 -ffast-math -fdump-tree-gimple" } */
-/* { dg-add-options c99_runtime } */
float f(float x)
{
/* Test -fno-fp-int-builtin-inexact for 387. */
/* { dg-do run } */
/* { dg-options "-O2 -mfancy-math-387 -mfpmath=387 -fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target fenv_exceptions } */
#include "../../gcc.dg/torture/builtin-fp-int-inexact.c"
should be expanded when spurious "inexact" allowed. */
/* { dg-do compile } */
/* { dg-options "-O2 -mfancy-math-387 -mfpmath=387 -ffp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
#define TEST(FN, TYPE) \
do \
should be expanded even when spurious "inexact" not allowed. */
/* { dg-do compile } */
/* { dg-options "-O2 -mfancy-math-387 -mfpmath=387 -fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
#define TEST(FN, TYPE) \
do \
/* { dg-do link } */
/* { dg-options "-ffast-math" } */
-/* { dg-add-options c99_runtime } */
#include "../../gcc.dg/builtins-config.h"
/* { dg-require-effective-target xop } */
/* { dg-require-effective-target c99_runtime } */
/* { dg-options "-O -flto -mno-sse3 -mxop" } */
-/* { dg-add-options c99_runtime } */
extern double fma (double, double, double);
extern float fmaf (float, float, float);
/* Test -fno-fp-int-builtin-inexact for SSE 2. */
/* { dg-do run } */
/* { dg-options "-O2 -msse2 -mfpmath=sse -fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target fenv_exceptions } */
/* { dg-require-effective-target sse2 } */
should be expanded when spurious "inexact" allowed. */
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -mfpmath=sse -ffp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target sse2 } */
#define TEST(FN, TYPE) \
should be expanded even when spurious "inexact" not allowed. */
/* { dg-do compile } */
/* { dg-options "-O2 -msse2 -mfpmath=sse -fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target sse2 } */
#define TEST(FN, TYPE) \
/* Test -fno-fp-int-builtin-inexact for SSE 4.1. */
/* { dg-do run } */
/* { dg-options "-O2 -msse4.1 -mfpmath=sse -fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target fenv_exceptions } */
/* { dg-require-effective-target sse4 } */
when spurious "inexact" not allowed. */
/* { dg-do compile } */
/* { dg-options "-O2 -msse4.1 -mfpmath=sse -fno-fp-int-builtin-inexact" } */
-/* { dg-add-options c99_runtime } */
/* { dg-require-effective-target sse4 } */
#define TEST(FN, TYPE) \
return [check_runtime chsize $prog]
}
-# Add to FLAGS all the target-specific flags needed to access the c99 runtime.
-
-proc add_options_for_c99_runtime { flags } {
- if { [istarget *-*-solaris2*] } {
- return "$flags -std=c99"
- }
- if { [istarget powerpc-*-darwin*] } {
- return "$flags -mmacosx-version-min=10.3"
- }
- return $flags
-}
-
# Add to FLAGS all the target-specific flags needed to enable
# full IEEE compliance mode.
#error !HAVE_C99_RUNTIME
#endif
}
- check_no_compiler_messages_nocache c99_runtime assembly \
- $contents [add_options_for_c99_runtime ""]
+ check_no_compiler_messages_nocache c99_runtime assembly $contents
}]
}