Rebase.
[official-gcc.git] / gcc / testsuite / g++.dg / torture / stackalign / check.h
blobaf1988512740960e1e1f9c2a751aa6e0e8331b60
1 #include <stddef.h>
2 #ifdef DEBUG
3 #include <stdio.h>
4 #endif
6 #ifdef __cplusplus
7 extern "C" void abort (void);
8 #else
9 extern void abort (void);
10 #endif
12 int
13 check_int (int *i, int align)
15 *i = 20;
16 if ((((ptrdiff_t) i) & (align - 1)) != 0)
18 #ifdef DEBUG
19 printf ("\nUnalign address (%d): %p!\n", align, i);
20 #endif
21 abort ();
23 return *i;
26 void
27 check (void *p, int align)
29 if ((((ptrdiff_t) p) & (align - 1)) != 0)
31 #ifdef DEBUG
32 printf ("\nUnalign address (%d): %p!\n", align, p);
33 #endif
34 abort ();