blob: 976db1507b7bc7d238fbc778546472c546b28698 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#include <stdio.h>
const char *abi(void)
{
#if defined(__amd64__) || defined(__x86_64__) || defined(__AMD64__) || defined(_M_X64) || defined(__amd64)
return "amd64";
#elif defined(__i386__) || defined(__x86__) || defined(__X86__) || defined(_M_IX86) || defined(__i386)
return "x86";
#elif defined(__ia64__) || defined(__IA64__) || defined(__M_IA64)
return "ia64";
#elif defined(__SPU__)
return "cellspu";
#elif defined(__powerpc64__) || defined(__ppc64__) || defined(__PPC64__) || defined(_ARCH_PPC64)
return "ppc64";
#elif defined(__powerpc__) || defined(__ppc__) || defined(__PPC__) || defined(_ARCH_PPC)
return "ppc32";
#elif defined(__sparcv9__) || defined(__sparcv9)
return "sparcv9";
#elif defined(__sparc_v8__)
return "sparcv8";
#elif defined(__sparc__) || defined(__sparc)
if (sizeof(long) == 4)
return "sparcv8";
return "sparcv9";
#elif defined(__ARM_EABI__)
return "armeabi";
#elif defined(__arm__)
return "arm";
#elif defined(__mips__) || defined(__mips) || defined(__MIPS__)
# if defined(_ABIO32)
return "mipso32";
# elif defined(_ABIN32)
return "mips32";
# else
return "mips64";
# endif
#else
return "default";
#endif
}
int main(void)
{
printf("%s\n", abi());
return 0;
}
|