aboutsummaryrefslogtreecommitdiff
path: root/libffi/testsuite/libffi.call/problem1.c
diff options
context:
space:
mode:
authorAndreas Tobler <a.tobler@schweiz.ch>2003-09-19 21:21:53 +0200
committerAndreas Tobler <andreast@gcc.gnu.org>2003-09-19 21:21:53 +0200
commit9e3bfa9b751ba8eeb11c0494c29df532fe3f91cb (patch)
tree50047fa5abbdabba0a9bfd84d3caee76ba77604b /libffi/testsuite/libffi.call/problem1.c
parente08737dc0ea1175988212f3cb36fec6d4b948bfb (diff)
downloadgcc-9e3bfa9b751ba8eeb11c0494c29df532fe3f91cb.zip
gcc-9e3bfa9b751ba8eeb11c0494c29df532fe3f91cb.tar.gz
gcc-9e3bfa9b751ba8eeb11c0494c29df532fe3f91cb.tar.bz2
closure_fn0.c: Xfail mips, arm, strongarm, xscale.
2003-09-19 Andreas Tobler <a.tobler@schweiz.ch> * testsuite/libffi.call/closure_fn0.c: Xfail mips, arm, strongarm, xscale. Cleanup whitespaces. * testsuite/libffi.call/closure_fn1.c: Likewise. * testsuite/libffi.call/closure_fn2.c: Likewise. * testsuite/libffi.call/closure_fn3.c: Likewise. * testsuite/libffi.call/cls_12byte.c: Likewise. * testsuite/libffi.call/cls_16byte.c: Likewise. * testsuite/libffi.call/cls_1_1byte.c: Likewise. * testsuite/libffi.call/cls_20byte.c: Likewise. * testsuite/libffi.call/cls_24byte.c: Likewise. * testsuite/libffi.call/cls_2byte.c: Likewise. * testsuite/libffi.call/cls_3_1byte.c: Likewise. * testsuite/libffi.call/cls_3byte1.c: Likewise. * testsuite/libffi.call/cls_3byte2.c: Likewise. * testsuite/libffi.call/cls_4_1byte.c: Likewise. * testsuite/libffi.call/cls_4byte.c: Likewise. * testsuite/libffi.call/cls_5byte.c: Likewise. * testsuite/libffi.call/cls_6byte.c: Likewise. * testsuite/libffi.call/cls_7byte.c: Likewise. * testsuite/libffi.call/cls_8byte.c: Likewise. * testsuite/libffi.call/cls_double.c: Likewise. * testsuite/libffi.call/cls_float.c: Likewise. * testsuite/libffi.call/cls_uchar.c: Likewise. * testsuite/libffi.call/cls_uint.c: Likewise. * testsuite/libffi.call/cls_ulonglong.c: Likewise. * testsuite/libffi.call/cls_ushort.c: Likewise. * testsuite/libffi.call/nested_struct.c: Likewise. * testsuite/libffi.call/nested_struct1.c: Likewise. * testsuite/libffi.call/problem1.c: Likewise. * testsuite/libffi.special/unwindtest.cc: Likewise. * testsuite/libffi.call/pyobjc-tc.c: Cleanup whitespaces. From-SVN: r71584
Diffstat (limited to 'libffi/testsuite/libffi.call/problem1.c')
-rw-r--r--libffi/testsuite/libffi.call/problem1.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/libffi/testsuite/libffi.call/problem1.c b/libffi/testsuite/libffi.call/problem1.c
index 6088be5..6cbdb2c 100644
--- a/libffi/testsuite/libffi.call/problem1.c
+++ b/libffi/testsuite/libffi.call/problem1.c
@@ -4,7 +4,7 @@
PR: none.
Originator: <andreast@gcc.gnu.org> 20030828 */
-/* { dg-do run } */
+/* { dg-do run { xfail mips*-*-* arm*-*-* strongarm*-*-* xscale*-*-* } } */
#include "ffitest.h"
typedef struct my_ffi_struct {
@@ -19,19 +19,19 @@ my_ffi_struct callee(struct my_ffi_struct a1, struct my_ffi_struct a2)
result.a = a1.a + a2.a;
result.b = a1.b + a2.b;
result.c = a1.c + a2.c;
-
- printf("%g %g %g %g %g %g: %g %g %g\n", a1.a, a1.b, a1.c,
+
+ printf("%g %g %g %g %g %g: %g %g %g\n", a1.a, a1.b, a1.c,
a2.a, a2.b, a2.c, result.a, result.b, result.c);
-
+
return result;
}
void stub(ffi_cif* cif, void* resp, void** args, void* userdata)
-{
+{
struct my_ffi_struct a1;
struct my_ffi_struct a2;
-
+
a1 = *(struct my_ffi_struct*)(args[0]);
a2 = *(struct my_ffi_struct*)(args[1]);
@@ -48,7 +48,7 @@ int main(void)
ffi_closure *pcl = &cl;
void* args[4];
ffi_type* arg_types[3];
-
+
struct my_ffi_struct g = { 1.0, 2.0, 3.0 };
struct my_ffi_struct f = { 1.0, 2.0, 3.0 };
struct my_ffi_struct res;
@@ -67,7 +67,7 @@ int main(void)
arg_types[1] = &my_ffi_struct_type;
arg_types[2] = NULL;
- CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 2, &my_ffi_struct_type,
+ CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 2, &my_ffi_struct_type,
arg_types) == FFI_OK);
args[0] = &g;
@@ -79,15 +79,15 @@ int main(void)
CHECK(res.a == 2.0);
CHECK(res.b == 4.0);
CHECK(res.c == 6.0);
-
+
CHECK(ffi_prep_closure(pcl, &cif, stub, NULL) == FFI_OK);
-
+
res = ((my_ffi_struct(*)(struct my_ffi_struct, struct my_ffi_struct))(pcl))(g, f);
/* { dg-output "\n1 2 3 1 2 3: 2 4 6" } */
-
+
CHECK(res.a == 2.0);
CHECK(res.b == 4.0);
CHECK(res.c == 6.0);
exit(0);;
-}
+}