pic.c 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  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 -pie-level 1 -dM -E -o - %s \
  23. // RUN: | FileCheck --check-prefix=CHECK-PIE1 %s
  24. // CHECK-PIE1-NOT: #define __PIC__
  25. // CHECK-PIE1: #define __PIE__ 1
  26. // CHECK-PIE1-NOT: #define __pic__
  27. // CHECK-PIE1: #define __pie__ 1
  28. //
  29. // RUN: %clang_cc1 -pie-level 2 -dM -E -o - %s \
  30. // RUN: | FileCheck --check-prefix=CHECK-PIE2 %s
  31. // CHECK-PIE2-NOT: #define __PIC__
  32. // CHECK-PIE2: #define __PIE__ 2
  33. // CHECK-PIE2-NOT: #define __pic__
  34. // CHECK-PIE2: #define __pie__ 2