gcc.c-torture/execute/ieee/pr108540-1.c obviously requires that double
is a 64-bit type, hence add pr108540-1.x as an according filter.
Ok for trunk?
And is there a reason for why we are still putting test cases in
these old parts of the testsuite that don't support dg-magic-comments
like
/* { dg-require-effective-target double64 } */
?
Johann
--
testsuite - Fix gcc.c-torture/execute/ieee/pr108540-1.c
PR testsuite/108540
gcc/testsuite/
* gcc.c-torture/execute/ieee/pr108540-1.c: Un-preprocess
__SIZE_TYPE__ and __INT64_TYPE__.
* gcc.c-torture/execute/ieee/pr108540-1.x: New file, requires double64. testsuite - Fix gcc.c-torture/execute/ieee/pr108540-1.c
PR testsuite/108540
gcc/testsuite/
* gcc.c-torture/execute/ieee/pr108540-1.c: Un-preprocess
__SIZE_TYPE__ and __INT64_TYPE__.
* gcc.c-torture/execute/ieee/pr108540-1.x: New file, requires double64.
diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.c b/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.c
index ebd4c502ee5..db094418a79 100644
--- a/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.c
+++ b/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.c
@@ -1,7 +1,7 @@
/* PR tree-optimization/108540 */
__attribute__((noipa)) void
-bar (const char *cp, unsigned long size, char sign, int dsgn)
+bar (const char *cp, __SIZE_TYPE__ size, char sign, int dsgn)
{
if (__builtin_strcmp (cp, "ZERO") != 0 || size != 4 || sign != '-' || dsgn != 1)
__builtin_abort ();
@@ -11,7 +11,7 @@ __attribute__((noipa)) void
foo (int x, int ch, double d)
{
const char *cp = "";
- unsigned long size = 0;
+ __SIZE_TYPE__ size = 0;
char sign = '\0';
switch (x)
{
@@ -41,7 +41,7 @@ foo (int x, int ch, double d)
sign = '\0';
if (ch == 'a' || ch == 'A')
{
- union U { long long l; double d; } u;
+ union U { __INT64_TYPE__ l; double d; } u;
int dsgn;
u.d = d;
if (u.l < 0)
diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.x b/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.x
new file mode 100644
index 00000000000..06d93efeb99
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/ieee/pr108540-1.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_double64] } {
+ return 1
+}
+
+return 0