From b78f0a7360fe1011dcf49e42bf4fb0c110f17c96 Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 22 Jun 2016 18:04:52 +0000 Subject: [PATCH] Make this test a bit more strict and fix it. We do pass -pic-level to cc1 when targeting darwin. Given that codegen itself doesn't use it, the only difference is whether __PIE__ and __pie__ are defined. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@273450 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Driver/pic.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/test/Driver/pic.c b/test/Driver/pic.c index aeb2ee3311..d8af19a6d0 100644 --- a/test/Driver/pic.c +++ b/test/Driver/pic.c @@ -7,9 +7,11 @@ // // CHECK-PIC1: "-mrelocation-model" "pic" // CHECK-PIC1: "-pic-level" "1" +// CHECK-PIC1-NOT: "-pie-level" // // CHECK-PIC2: "-mrelocation-model" "pic" // CHECK-PIC2: "-pic-level" "2" +// CHECK-PIC2-NOT: "-pie-level" // // CHECK-STATIC: "-static" // CHECK-NO-STATIC-NOT: "-static" @@ -151,10 +153,9 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIE // // Darwin is a beautiful and unique snowflake when it comes to these flags. -// When targeting a 32-bit darwin system, the -fno-* flag variants work and -// disable PIC, but any other flag enables PIC (*not* PIE) even if the flag -// specifies PIE. On 64-bit targets, there is simply nothing you can do, there -// is no PIE, there is only PIC when it comes to compilation. +// When targeting a 32-bit darwin system, only level 2 is supported. On 64-bit +// targets, there is simply nothing you can do, there is no PIE, there is only +// PIC when it comes to compilation. // RUN: %clang -c %s -target i386-apple-darwin -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 // RUN: %clang -c %s -target i386-apple-darwin -fpic -### 2>&1 \ @@ -162,9 +163,9 @@ // RUN: %clang -c %s -target i386-apple-darwin -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 // RUN: %clang -c %s -target i386-apple-darwin -fpie -### 2>&1 \ -// RUN: | FileCheck %s --check-prefix=CHECK-PIC2 +// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target i386-apple-darwin -fPIE -### 2>&1 \ -// RUN: | FileCheck %s --check-prefix=CHECK-PIC2 +// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target i386-apple-darwin -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target i386-apple-darwin -fno-PIE -### 2>&1 \ @@ -172,7 +173,7 @@ // RUN: %clang -c %s -target i386-apple-darwin -fno-PIC -fpic -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 // RUN: %clang -c %s -target i386-apple-darwin -fno-PIC -fPIE -### 2>&1 \ -// RUN: | FileCheck %s --check-prefix=CHECK-PIC2 +// RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target x86_64-apple-darwin -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 // RUN: %clang -c %s -target x86_64-apple-darwin -fno-PIE -### 2>&1 \ -- 2.40.0