1 // RUN: %clang_cc1 -dM -E -o - %s \ 2 // RUN: | FileCheck %s 3 // CHECK-NOT: #define __PIC__ 4 // CHECK-NOT: #define __PIE__ 5 // CHECK-NOT: #define __pic__ 6 // CHECK-NOT: #define __pie__ 7 // 8 // RUN: %clang_cc1 -pic-level 1 -dM -E -o - %s \ 9 // RUN: | FileCheck --check-prefix=CHECK-PIC1 %s 10 // CHECK-PIC1: #define __PIC__ 1 11 // CHECK-PIC1-NOT: #define __PIE__ 12 // CHECK-PIC1: #define __pic__ 1 13 // CHECK-PIC1-NOT: #define __pie__ 14 // 15 // RUN: %clang_cc1 -pic-level 2 -dM -E -o - %s \ 16 // RUN: | FileCheck --check-prefix=CHECK-PIC2 %s 17 // CHECK-PIC2: #define __PIC__ 2 18 // CHECK-PIC2-NOT: #define __PIE__ 19 // CHECK-PIC2: #define __pic__ 2 20 // CHECK-PIC2-NOT: #define __pie__ 21 // 22 // RUN: %clang_cc1 -pic-level 1 -pic-is-pie -dM -E -o - %s \ 23 // RUN: | FileCheck --check-prefix=CHECK-PIE1 %s 24 // CHECK-PIE1: #define __PIC__ 1 25 // CHECK-PIE1: #define __PIE__ 1 26 // CHECK-PIE1: #define __pic__ 1 27 // CHECK-PIE1: #define __pie__ 1 28 // 29 // RUN: %clang_cc1 -pic-level 2 -pic-is-pie -dM -E -o - %s \ 30 // RUN: | FileCheck --check-prefix=CHECK-PIE2 %s 31 // CHECK-PIE2: #define __PIC__ 2 32 // CHECK-PIE2: #define __PIE__ 2 33 // CHECK-PIE2: #define __pic__ 2 34 // CHECK-PIE2: #define __pie__ 2 35