diff options
Diffstat (limited to 'libmudflap/testsuite/libmudflap.c/pass64-frag.c')
-rw-r--r-- | libmudflap/testsuite/libmudflap.c/pass64-frag.c | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/libmudflap/testsuite/libmudflap.c/pass64-frag.c b/libmudflap/testsuite/libmudflap.c/pass64-frag.c deleted file mode 100644 index 856eec0f..0000000 --- a/libmudflap/testsuite/libmudflap.c/pass64-frag.c +++ /dev/null @@ -1,38 +0,0 @@ -/* PR libmudflap/36397 */ -/* { dg-do run } */ -/* { dg-options "-O -fmudflap -fno-strict-aliasing -lmudflap" } */ - -struct A -{ - int a[2]; -}; - -long long int x; - -int __attribute__ ((noinline)) -baz (long long int *x) -{ - return *x; -} - -int __attribute__ ((noinline)) -foo (int i) -{ - if (i > 10) - return baz (&x); - return ((struct A *) &x)->a[i]; -} - -int -main (void) -{ - if (sizeof (long long) == 2 * sizeof (int) - && sizeof (long long) == sizeof (struct A)) - { - struct A a = { .a[0] = 10, .a[1] = 20 }; - __builtin_memcpy (&x, &a, sizeof (x)); - if (foo (0) != 10 || foo (1) != 20) - __builtin_abort (); - } - return 0; -} |