1// RUN: %clang -target x86_64-unknown-nacl -### %s -emit-llvm-only -c -o %t.o 2>&1 | FileCheck %s -check-prefix=ECHO
2// RUN: %clang -target x86_64-unknown-nacl %s -emit-llvm -S -c -o - | FileCheck %s
3// RUN: %clang -target x86_64-unknown-nacl %s -emit-llvm -S -c -pthread -o - | FileCheck %s -check-prefix=THREADS
4
5// ECHO: {{.*}} "-cc1" {{.*}}x86_64-nacl-defines.c
6
7// Check platform defines
8
9// CHECK: __LITTLE_ENDIAN__defined
10#ifdef __LITTLE_ENDIAN__
11void __LITTLE_ENDIAN__defined() {}
12#endif
13
14// CHECK: __native_client__defined
15#ifdef __native_client__
16void __native_client__defined() {}
17#endif
18
19// CHECK: __x86_64__defined
20#ifdef __x86_64__
21void __x86_64__defined() {}
22#endif
23
24// CHECK: unixdefined
25#ifdef unix
26void unixdefined() {}
27#endif
28
29// CHECK: __ELF__defined
30#ifdef __ELF__
31void __ELF__defined() {}
32#endif
33
34// CHECK: _GNU_SOURCEdefined
35#ifdef _GNU_SOURCE
36void _GNU_SOURCEdefined() {}
37#endif
38
39// THREADS: _REENTRANTdefined
40// CHECK: _REENTRANTundefined
41#ifdef _REENTRANT
42void _REENTRANTdefined() {}
43#else
44void _REENTRANTundefined() {}
45#endif
46