#if (__SIZEOF_INT__ == 4) | |
typedef int int32; | |
#elif (__SIZEOF_LONG__ == 4) | |
typedef long int32; | |
#else | |
#error Add target support for int32 | |
#endif | |
static int32 ref(void) | |
{ | |
union { | |
char c[5]; | |
int32 i; | |
} u; | |
__builtin_memset (&u, 0, sizeof(u)); | |
u.c[0] = 1; | |
u.c[1] = 2; | |
u.c[2] = 3; | |
u.c[3] = 4; | |
return u.i; | |
} | |
int main() | |
{ | |
int32 b = ref(); | |
if (b != 0x01020304 | |
&& b != 0x04030201) | |
abort (); | |
return 0; | |
} |