libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / torture / stackalign / thiscall-1.c
blob27b71b60ceac8bb6851c878f7e7248272ae76405
1 /* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3 #include "check.h"
5 #ifndef ALIGNMENT
6 #define ALIGNMENT 64
7 #endif
9 typedef int aligned __attribute__((aligned(ALIGNMENT)));
11 int global;
13 __attribute__ ((thiscall))
14 void
15 foo (int j, int k, int m, int n, int o)
17 aligned i;
19 if (check_int (&i, __alignof__(i)) != i)
20 abort ();
22 if (i != 20 || j != 1 || k != 2 || m != 3 || n != 4 || o != 5)
23 abort ();
26 int
27 main()
29 foo (1, 2, 3, 4, 5);
30 return 0;