| Index: libffi/ChangeLog.libffi |
| =================================================================== |
| --- libffi.orig/ChangeLog.libffi |
| +++ libffi/ChangeLog.libffi |
| @@ -1,3 +1,10 @@ |
| +2009-12-26 Andreas Tobler <a.tobler@schweiz.org> |
| + Anthony Green <green@redhat.com> |
| + |
| + * testsuite/libffi.call/huge_struct.c (test_large_fn): Replace |
| + format code %p with %#lx because %p does not add a leading 0x on |
| + Solaris. Also change relevant arguments to unsigned long. |
| + |
| 2009-12-25 Samuli Suominen <ssuominen@gentoo.org> |
| |
| * configure.ac: Undefine _AC_ARG_VAR_PRECIOUS for autoconf 2.64. |
| Index: libffi/testsuite/libffi.call/huge_struct.c |
| =================================================================== |
| --- libffi.orig/testsuite/libffi.call/huge_struct.c |
| +++ libffi/testsuite/libffi.call/huge_struct.c |
| @@ -131,26 +131,26 @@ test_large_fn( |
| ui64_4 + 4, si64_4 + 4, f_4 + 4, d_4 + 4, ld_4 + 4, (char*)((intptr_t)p_4 + 4), |
| ui8_5 + 5, si8_5 + 5}; |
| |
| - printf("%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p %hhu %hhd: " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p %hhu %hhd\n", |
| - ui8_1, si8_1, ui16_1, si16_1, ui32_1, si32_1, ui64_1, si64_1, f_1, d_1, ld_1, p_1, |
| - ui8_2, si8_2, ui16_2, si16_2, ui32_2, si32_2, ui64_2, si64_2, f_2, d_2, ld_2, p_2, |
| - ui8_3, si8_3, ui16_3, si16_3, ui32_3, si32_3, ui64_3, si64_3, f_3, d_3, ld_3, p_3, |
| - ui8_4, si8_4, ui16_4, si16_4, ui32_4, si32_4, ui64_4, si64_4, f_4, d_4, ld_4, p_4, ui8_5, si8_5, |
| + printf("%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx %hhu %hhd: " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx %hhu %hhd\n", |
| + ui8_1, si8_1, ui16_1, si16_1, ui32_1, si32_1, ui64_1, si64_1, f_1, d_1, ld_1, (unsigned long)p_1, |
| + ui8_2, si8_2, ui16_2, si16_2, ui32_2, si32_2, ui64_2, si64_2, f_2, d_2, ld_2, (unsigned long)p_2, |
| + ui8_3, si8_3, ui16_3, si16_3, ui32_3, si32_3, ui64_3, si64_3, f_3, d_3, ld_3, (unsigned long)p_3, |
| + ui8_4, si8_4, ui16_4, si16_4, ui32_4, si32_4, ui64_4, si64_4, f_4, d_4, ld_4, (unsigned long)p_4, ui8_5, si8_5, |
| retVal.a, retVal.b, retVal.c, retVal.d, retVal.e, retVal.f, |
| - retVal.g, retVal.h, retVal.i, retVal.j, retVal.k, retVal.l, |
| + retVal.g, retVal.h, retVal.i, retVal.j, retVal.k, (unsigned long)retVal.l, |
| retVal.m, retVal.n, retVal.o, retVal.p, retVal.q, retVal.r, |
| - retVal.s, retVal.t, retVal.u, retVal.v, retVal.w, retVal.x, |
| + retVal.s, retVal.t, retVal.u, retVal.v, retVal.w, (unsigned long)retVal.x, |
| retVal.y, retVal.z, retVal.aa, retVal.bb, retVal.cc, retVal.dd, |
| - retVal.ee, retVal.ff, retVal.gg, retVal.hh, retVal.ii, retVal.jj, |
| + retVal.ee, retVal.ff, retVal.gg, retVal.hh, retVal.ii, (unsigned long)retVal.jj, |
| retVal.kk, retVal.ll, retVal.mm, retVal.nn, retVal.oo, retVal.pp, |
| - retVal.qq, retVal.rr, retVal.ss, retVal.tt, retVal.uu, retVal.vv, retVal.ww, retVal.xx); |
| + retVal.qq, retVal.rr, retVal.ss, retVal.tt, retVal.uu, (unsigned long)retVal.vv, retVal.ww, retVal.xx); |
| |
| return retVal; |
| } |
| @@ -298,18 +298,18 @@ main(int argc __UNUSED__, const char** a |
| |
| ffi_call(&cif, FFI_FN(test_large_fn), &retVal, argValues); |
| // { dg-output "1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2: 2 3 4 5 6 7 8 9 10 11 12 0x12345679 3 4 5 6 7 8 9 10 11 12 13 0x1234567a 4 5 6 7 8 9 10 11 12 13 14 0x1234567b 5 6 7 8 9 10 11 12 13 14 15 0x1234567c 6 7" } |
| - printf("res: %hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p %hhu %hhd\n", |
| + printf("res: %hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx %hhu %hhd\n", |
| retVal.a, retVal.b, retVal.c, retVal.d, retVal.e, retVal.f, |
| - retVal.g, retVal.h, retVal.i, retVal.j, retVal.k, retVal.l, |
| + retVal.g, retVal.h, retVal.i, retVal.j, retVal.k, (unsigned long)retVal.l, |
| retVal.m, retVal.n, retVal.o, retVal.p, retVal.q, retVal.r, |
| - retVal.s, retVal.t, retVal.u, retVal.v, retVal.w, retVal.x, |
| + retVal.s, retVal.t, retVal.u, retVal.v, retVal.w, (unsigned long)retVal.x, |
| retVal.y, retVal.z, retVal.aa, retVal.bb, retVal.cc, retVal.dd, |
| - retVal.ee, retVal.ff, retVal.gg, retVal.hh, retVal.ii, retVal.jj, |
| + retVal.ee, retVal.ff, retVal.gg, retVal.hh, retVal.ii, (unsigned long)retVal.jj, |
| retVal.kk, retVal.ll, retVal.mm, retVal.nn, retVal.oo, retVal.pp, |
| - retVal.qq, retVal.rr, retVal.ss, retVal.tt, retVal.uu, retVal.vv, retVal.ww, retVal.xx); |
| + retVal.qq, retVal.rr, retVal.ss, retVal.tt, retVal.uu, (unsigned long)retVal.vv, retVal.ww, retVal.xx); |
| // { dg-output "\nres: 2 3 4 5 6 7 8 9 10 11 12 0x12345679 3 4 5 6 7 8 9 10 11 12 13 0x1234567a 4 5 6 7 8 9 10 11 12 13 14 0x1234567b 5 6 7 8 9 10 11 12 13 14 15 0x1234567c 6 7" } |
| |
| CHECK(ffi_prep_closure_loc(pcl, &cif, cls_large_fn, NULL, code) == FFI_OK); |
| @@ -326,18 +326,18 @@ main(int argc __UNUSED__, const char** a |
| ui8, si8, ui16, si16, ui32, si32, ui64, si64, f, d, ld, p, |
| ui8, si8); |
| // { dg-output "\n1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2 3 4 5 6 7 8 9 10 11 0x12345678 1 2: 2 3 4 5 6 7 8 9 10 11 12 0x12345679 3 4 5 6 7 8 9 10 11 12 13 0x1234567a 4 5 6 7 8 9 10 11 12 13 14 0x1234567b 5 6 7 8 9 10 11 12 13 14 15 0x1234567c 6 7" } |
| - printf("res: %hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p " |
| - "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %p %hhu %hhd\n", |
| + printf("res: %hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx " |
| + "%hhu %hhd %hu %hd %u %d %" PRIu64 " %" PRId64 " %.0f %.0f %.0Lf %#lx %hhu %hhd\n", |
| retVal.a, retVal.b, retVal.c, retVal.d, retVal.e, retVal.f, |
| - retVal.g, retVal.h, retVal.i, retVal.j, retVal.k, retVal.l, |
| + retVal.g, retVal.h, retVal.i, retVal.j, retVal.k, (unsigned long)retVal.l, |
| retVal.m, retVal.n, retVal.o, retVal.p, retVal.q, retVal.r, |
| - retVal.s, retVal.t, retVal.u, retVal.v, retVal.w, retVal.x, |
| + retVal.s, retVal.t, retVal.u, retVal.v, retVal.w, (unsigned long)retVal.x, |
| retVal.y, retVal.z, retVal.aa, retVal.bb, retVal.cc, retVal.dd, |
| - retVal.ee, retVal.ff, retVal.gg, retVal.hh, retVal.ii, retVal.jj, |
| + retVal.ee, retVal.ff, retVal.gg, retVal.hh, retVal.ii, (unsigned long)retVal.jj, |
| retVal.kk, retVal.ll, retVal.mm, retVal.nn, retVal.oo, retVal.pp, |
| - retVal.qq, retVal.rr, retVal.ss, retVal.tt, retVal.uu, retVal.vv, retVal.ww, retVal.xx); |
| + retVal.qq, retVal.rr, retVal.ss, retVal.tt, retVal.uu, (unsigned long)retVal.vv, retVal.ww, retVal.xx); |
| // { dg-output "\nres: 2 3 4 5 6 7 8 9 10 11 12 0x12345679 3 4 5 6 7 8 9 10 11 12 13 0x1234567a 4 5 6 7 8 9 10 11 12 13 14 0x1234567b 5 6 7 8 9 10 11 12 13 14 15 0x1234567c 6 7" } |
| |
| return 0; |