This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
More test suite cleanups
- From: Andrew Haley <aph at redhat dot com>
- To: libffi-discuss at sourceware dot org, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 16 Jun 2009 10:58:20 +0100
- Subject: More test suite cleanups
Fixed a couple of mistakes and sorted out the printf specifiers chaos.
(I hope.)
Andrew.
2009-06-16 Andrew Haley <aph@redhat.com>
* testsuite/libffi.call/cls_align_sint64.c,
testsuite/libffi.call/cls_align_uint64.c,
testsuite/libffi.call/cls_longdouble_va.c,
testsuite/libffi.call/cls_ulonglong.c,
testsuite/libffi.call/return_ll1.c,
testsuite/libffi.call/stret_medium2.c: Fix printf format
specifiers.
* testsuite/libffi.call/huge_struct.c: Ad x86 XFAILs.
* testsuite/libffi.call/float2.c: Fix dg-excess-errors.
* testsuite/libffi.call/ffitest.h,
testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.
Index: testsuite/libffi.call/cls_align_sint64.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/cls_align_sint64.c,v
retrieving revision 1.5
diff -u -r1.5 cls_align_sint64.c
--- testsuite/libffi.call/cls_align_sint64.c 12 Jun 2009 14:21:28 -0000 1.5
+++ testsuite/libffi.call/cls_align_sint64.c 16 Jun 2009 09:37:58 -0000
@@ -22,7 +22,7 @@
result.b = a1.b + a2.b;
result.c = a1.c + a2.c;
- printf("%d %lld %d %d %lld %d: %d %lld %d\n", a1.a, a1.b, a1.c, a2.a, a2.b, a2.c, result.a, result.b, result.c);
+ printf("%d %" PRIdLL " %d %d %" PRIdLL " %d: %d %" PRIdLL " %d\n", a1.a, a1.b, a1.c, a2.a, a2.b, a2.c, result.a, result.b, result.c);
return result;
}
@@ -77,14 +77,14 @@
ffi_call(&cif, FFI_FN(cls_struct_align_fn), &res_dbl, args_dbl);
/* { dg-output "12 4951 127 1 9320 13: 13 14271 140" } */
- printf("res: %d %lld %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
+ printf("res: %d %" PRIdLL " %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
/* { dg-output "\nres: 13 14271 140" } */
CHECK(ffi_prep_closure_loc(pcl, &cif, cls_struct_align_gn, NULL, code) == FFI_OK);
res_dbl = ((cls_struct_align(*)(cls_struct_align, cls_struct_align))(code))(g_dbl, f_dbl);
/* { dg-output "\n12 4951 127 1 9320 13: 13 14271 140" } */
- printf("res: %d %lld %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
+ printf("res: %d %" PRIdLL " %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
/* { dg-output "\nres: 13 14271 140" } */
exit(0);
Index: testsuite/libffi.call/cls_align_uint64.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/cls_align_uint64.c,v
retrieving revision 1.5
diff -u -r1.5 cls_align_uint64.c
--- testsuite/libffi.call/cls_align_uint64.c 12 Jun 2009 14:21:28 -0000 1.5
+++ testsuite/libffi.call/cls_align_uint64.c 16 Jun 2009 09:37:58 -0000
@@ -23,7 +23,7 @@
result.b = a1.b + a2.b;
result.c = a1.c + a2.c;
- printf("%d %llu %d %d %llu %d: %d %llu %d\n", a1.a, a1.b, a1.c, a2.a, a2.b, a2.c, result.a, result.b, result.c);
+ printf("%d %" PRIdLL " %d %d %" PRIdLL " %d: %d %" PRIdLL " %d\n", a1.a, a1.b, a1.c, a2.a, a2.b, a2.c, result.a, result.b, result.c);
return result;
}
@@ -78,14 +78,14 @@
ffi_call(&cif, FFI_FN(cls_struct_align_fn), &res_dbl, args_dbl);
/* { dg-output "12 4951 127 1 9320 13: 13 14271 140" } */
- printf("res: %d %llu %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
+ printf("res: %d %" PRIdLL " %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
/* { dg-output "\nres: 13 14271 140" } */
CHECK(ffi_prep_closure_loc(pcl, &cif, cls_struct_align_gn, NULL, code) == FFI_OK);
res_dbl = ((cls_struct_align(*)(cls_struct_align, cls_struct_align))(code))(g_dbl, f_dbl);
/* { dg-output "\n12 4951 127 1 9320 13: 13 14271 140" } */
- printf("res: %d %llu %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
+ printf("res: %d %" PRIdLL " %d\n", res_dbl.a, res_dbl.b, res_dbl.c);
/* { dg-output "\nres: 13 14271 140" } */
exit(0);
Index: testsuite/libffi.call/cls_longdouble_va.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/cls_longdouble_va.c,v
retrieving revision 1.6
diff -u -r1.6 cls_longdouble_va.c
--- testsuite/libffi.call/cls_longdouble_va.c 12 Jun 2009 15:29:20 -0000 1.6
+++ testsuite/libffi.call/cls_longdouble_va.c 16 Jun 2009 09:37:58 -0000
@@ -42,9 +42,9 @@
args[2] = NULL;
ffi_call(&cif, FFI_FN(printf), &res, args);
- // { dg-output "7.0" { xfail i*86-*-linux-* x86_64-*-linux-* sh*-*-linux-* } }
+ // { dg-output "7.0" { xfail i*86-*-linux-* x86_64-*-linux-* } }
printf("res: %d\n", (int) res);
- // { dg-output "\nres: 4" { xfail i*86-*-linux-* x86_64-*-linux-* sh*-*-linux-* } }
+ // { dg-output "\nres: 4" { xfail i*86-*-linux-* x86_64-*-linux-* } }
CHECK(ffi_prep_closure_loc(pcl, &cif, cls_longdouble_va_fn, NULL, code) == FFI_OK);
Index: testsuite/libffi.call/cls_ulonglong.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/cls_ulonglong.c,v
retrieving revision 1.5
diff -u -r1.5 cls_ulonglong.c
--- testsuite/libffi.call/cls_ulonglong.c 12 Jun 2009 14:21:28 -0000 1.5
+++ testsuite/libffi.call/cls_ulonglong.c 16 Jun 2009 09:37:58 -0000
@@ -12,7 +12,7 @@
{
*(unsigned long long *)resp= *(unsigned long long *)args[0];
- printf("%llu: %llu\n",*(unsigned long long *)args[0],
+ printf("%" PRIuLL ": %" PRIuLL "\n",*(unsigned long long *)args[0],
*(unsigned long long *)(resp));
}
typedef unsigned long long (*cls_ret_ulonglong)(unsigned long long);
@@ -34,12 +34,12 @@
CHECK(ffi_prep_closure_loc(pcl, &cif, cls_ret_ulonglong_fn, NULL, code) == FFI_OK);
res = (*((cls_ret_ulonglong)code))(214LL);
/* { dg-output "214: 214" } */
- printf("res: %llu\n", res);
+ printf("res: %" PRIdLL "\n", res);
/* { dg-output "\nres: 214" } */
res = (*((cls_ret_ulonglong)code))(9223372035854775808LL);
/* { dg-output "\n9223372035854775808: 9223372035854775808" } */
- printf("res: %llu\n", res);
+ printf("res: %" PRIdLL "\n", res);
/* { dg-output "\nres: 9223372035854775808" } */
exit(0);
Index: testsuite/libffi.call/ffitest.h
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/ffitest.h,v
retrieving revision 1.5
diff -u -r1.5 ffitest.h
--- testsuite/libffi.call/ffitest.h 22 Dec 2008 15:21:15 -0000 1.5
+++ testsuite/libffi.call/ffitest.h 16 Jun 2009 09:37:58 -0000
@@ -45,6 +45,15 @@
#endif
+/* MinGW kludge. */
+#ifdef WIN64
+#define PRIdLL "PRId64"
+#define PRIuLL "PRIu64"
+#else
+#define PRIdLL "lld"
+#define PRIuLL "llu"
+#endif
+
#ifdef USING_MMAP
static inline void *
allocate_mmap (size_t size)
Index: testsuite/libffi.call/float2.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/float2.c,v
retrieving revision 1.4
diff -u -r1.4 float2.c
--- testsuite/libffi.call/float2.c 11 Jun 2009 14:27:28 -0000 1.4
+++ testsuite/libffi.call/float2.c 16 Jun 2009 09:37:58 -0000
@@ -4,7 +4,7 @@
PR: none.
Originator: From the original ffitest.c */
-/* { dg-excess-errors { target x86_64-*-mingw* x86_64-*-cygwin* } } */
+/* { dg-excess-errors "" { target x86_64-*-mingw* x86_64-*-cygwin* } } */
/* { dg-do run { xfail x86_64-*-mingw* x86_64-*-cygwin* } } */
#include "ffitest.h"
Index: testsuite/libffi.call/huge_struct.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/huge_struct.c,v
retrieving revision 1.2
diff -u -r1.2 huge_struct.c
--- testsuite/libffi.call/huge_struct.c 11 Jun 2009 14:27:28 -0000 1.2
+++ testsuite/libffi.call/huge_struct.c 16 Jun 2009 09:37:58 -0000
@@ -5,10 +5,10 @@
Originator: Blake Chaffin 6/18/2007
*/
-/* { dg-excess-errors { target x86_64-*-mingw* x86_64-*-cygwin* } } */
+/* { dg-excess-errors "" { target x86_64-*-mingw* x86_64-*-cygwin* i*86-*-linux-* x86_64-*-linux-* } } */
/* { dg-do run { xfail mips*-*-* arm*-*-* strongarm*-*-* xscale*-*-* } } */
/* { dg-options -mlong-double-128 { target powerpc64*-*-* } } */
-/* { dg-output "" { xfail x86_64-*-mingw* x86_64-*-cygwin* } } */
+/* { dg-output "" { xfail x86_64-*-mingw* x86_64-*-cygwin* i*86-*-linux-* x86_64-*-linux-* } } */
#include <stdint.h>
Index: testsuite/libffi.call/return_ll1.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/return_ll1.c,v
retrieving revision 1.4
diff -u -r1.4 return_ll1.c
--- testsuite/libffi.call/return_ll1.c 12 Jun 2009 14:21:28 -0000 1.4
+++ testsuite/libffi.call/return_ll1.c 16 Jun 2009 09:37:58 -0000
@@ -36,7 +36,7 @@
ll2 = 11111111;
ffi_call(&cif, FFI_FN(return_ll), &rlonglong, values);
- printf("res: %lld, %lld\n", rlonglong, ll0 + ll1 + ll2);
+ printf("res: %" PRIdLL ", %" PRIdLL "\n", rlonglong, ll0 + ll1 + ll2);
/* { dg-output "res: 11111133333222, 11111133333222" } */
exit(0);
}
Index: testsuite/libffi.call/stret_medium2.c
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.call/stret_medium2.c,v
retrieving revision 1.4
diff -u -r1.4 stret_medium2.c
--- testsuite/libffi.call/stret_medium2.c 12 Jun 2009 14:21:28 -0000 1.4
+++ testsuite/libffi.call/stret_medium2.c 16 Jun 2009 09:37:58 -0000
@@ -39,7 +39,7 @@
result.h = b0.h + b1.h + b2.h + b3.h;
result.i = b0.i + b1.i + b2.i + b3.i;
- printf("%g %g %g %g %g %g %g %g %lld\n", result.a, result.b, result.c,
+ printf("%g %g %g %g %g %g %g %g %" PRIdLL "\n", result.a, result.b, result.c,
result.d, result.e, result.f, result.g, result.h, result.i);
return result;
@@ -107,7 +107,7 @@
ffi_call(&cif, FFI_FN(cls_struct_72byte_fn), &res_dbl, args_dbl);
/* { dg-output "22 15 17 25 6 13 19 18 16" } */
- printf("res: %g %g %g %g %g %g %g %g %lld\n", res_dbl.a, res_dbl.b, res_dbl.c,
+ printf("res: %g %g %g %g %g %g %g %g %" PRIdLL "\n", res_dbl.a, res_dbl.b, res_dbl.c,
res_dbl.d, res_dbl.e, res_dbl.f, res_dbl.g, res_dbl.h, res_dbl.i);
/* { dg-output "\nres: 22 15 17 25 6 13 19 18 16" } */
@@ -116,7 +116,7 @@
res_dbl = ((struct_72byte(*)(struct_72byte, struct_72byte,
struct_72byte, struct_72byte))(code))(e_dbl, f_dbl, g_dbl, h_dbl);
/* { dg-output "\n22 15 17 25 6 13 19 18 16" } */
- printf("res: %g %g %g %g %g %g %g %g %lld\n", res_dbl.a, res_dbl.b, res_dbl.c,
+ printf("res: %g %g %g %g %g %g %g %g %" PRIdLL "\n", res_dbl.a, res_dbl.b, res_dbl.c,
res_dbl.d, res_dbl.e, res_dbl.f, res_dbl.g, res_dbl.h, res_dbl.i);
/* { dg-output "\nres: 22 15 17 25 6 13 19 18 16" } */
Index: testsuite/libffi.special/ffitestcxx.h
===================================================================
RCS file: /cvs/libffi/libffi/testsuite/libffi.special/ffitestcxx.h,v
retrieving revision 1.3
diff -u -r1.3 ffitestcxx.h
--- testsuite/libffi.special/ffitestcxx.h 29 Jan 2008 15:15:20 -0000 1.3
+++ testsuite/libffi.special/ffitestcxx.h 16 Jun 2009 09:37:58 -0000
@@ -43,6 +43,16 @@
#endif
+
+/* MinGW kludge. */
+#ifdef WIN64
+#define PRIdLL "PRId64"
+#define PRIuLL "PRIu64"
+#else
+#define PRIdLL "lld"
+#define PRIuLL "llu"
+#endif
+
#ifdef USING_MMAP
static inline void *
allocate_mmap (size_t size)