summaryrefslogtreecommitdiffstats
path: root/clang/test/Driver/embed-bitcode.c
diff options
context:
space:
mode:
authorSteven Wu <stevenwu@apple.com>2016-11-16 06:06:44 +0000
committerSteven Wu <stevenwu@apple.com>2016-11-16 06:06:44 +0000
commit844ab6a0126a6379712e1db5c3c3a93653022f99 (patch)
tree9b5edc092751ecc24b6fd605ccf3c0d2c35686fb /clang/test/Driver/embed-bitcode.c
parent6910fa0ef4218ab1ec7c36a2b44b48f9ba7193a6 (diff)
downloadbcm5719-llvm-844ab6a0126a6379712e1db5c3c3a93653022f99.tar.gz
bcm5719-llvm-844ab6a0126a6379712e1db5c3c3a93653022f99.zip
[Driver] Infer the correct option to ld64 for -fembed-bitcode
Summary: -fembed-bitcode infers -bitcode_bundle to ld64 but it is not correctly passed when using LTO. LTO is a special case of -fembed-bitcode which it doesn't require embed the bitcode in a special section in the object file but it requires linker to save that as part of the final executable. rdar://problem/29274226 Reviewers: mehdi_amini Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D26690 llvm-svn: 287084
Diffstat (limited to 'clang/test/Driver/embed-bitcode.c')
-rw-r--r--clang/test/Driver/embed-bitcode.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/Driver/embed-bitcode.c b/clang/test/Driver/embed-bitcode.c
index da60da3fff7..36314e66409 100644
--- a/clang/test/Driver/embed-bitcode.c
+++ b/clang/test/Driver/embed-bitcode.c
@@ -41,3 +41,15 @@
// CHECK-MARKER: -fembed-bitcode=marker
// CHECK-MARKER-NOT: -cc1
+// RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=6.0 %s -fembed-bitcode=all -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-LINKER
+// RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=6.0 %s -fembed-bitcode=marker -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-LINKER
+// RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=6.0 %s -flto=full -fembed-bitcode=bitcode -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-LINKER
+// RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=6.0 %s -flto=thin -fembed-bitcode=bitcode -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-LINKER
+// RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=6.0 %s -fembed-bitcode=off -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-NO-LINKER
+// CHECK-LINKER: ld
+// CHECK-LINKER: -bitcode_bundle
+// CHECK-NO-LINKER-NOT: -bitcode_bundle
+
+// RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=5.0 %s -fembed-bitcode -### 2>&1 | \
+// RUN: FileCheck %s -check-prefix=CHECK-PLATFORM-UNSUPPORTED
+// CHECK-PLATFORM-UNSUPPORTED: -fembed-bitcode is not supported on versions of iOS prior to 6.0
OpenPOWER on IntegriCloud