1 // RUN: %clang -ccc-print-bindings -c %s -fembed-bitcode 2>&1 | FileCheck %s
2 // CHECK: clang
3 // CHECK: clang
4 
5 // RUN: %clang %s -c -fembed-bitcode -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-CC
6 // CHECK-CC: -cc1
7 // CHECK-CC: -emit-llvm-bc
8 // CHECK-CC: -cc1
9 // CHECK-CC: -emit-obj
10 // CHECK-CC: -fembed-bitcode=all
11 
12 // RUN: %clang %s -c -fembed-bitcode=bitcode -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-BITCODE
13 // CHECK-BITCODE: -cc1
14 // CHECK-BITCODE: -emit-llvm-bc
15 // CHECK-BITCODE: -cc1
16 // CHECK-BITCODE: -emit-obj
17 // CHECK-BITCODE: -fembed-bitcode=bitcode
18 //
19 // RUN: %clang %s -c -save-temps -fembed-bitcode -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-SAVE-TEMP
20 // CHECK-SAVE-TEMP: -cc1
21 // CHECK-SAVE-TEMP: -E
22 // CHECK-SAVE-TEMP: -cc1
23 // CHECK-SAVE-TEMP: -emit-llvm-bc
24 // CHECK-SAVE-TEMP: -cc1
25 // CHECK-SAVE-TEMP: -S
26 // CHECK-SAVE-TEMP: -fembed-bitcode=all
27 // CHECK-SAVE-TEMP: -cc1as
28 
29 // RUN: %clang -c %s -flto -fembed-bitcode 2>&1 -### | FileCheck %s -check-prefix=CHECK-LTO
30 // RUN: %clang -c %s -flto=full -fembed-bitcode 2>&1 -### | FileCheck %s -check-prefix=CHECK-LTO
31 // RUN: %clang -c %s -flto=thin -fembed-bitcode 2>&1 -### | FileCheck %s -check-prefix=CHECK-LTO
32 // CHECK-LTO: -cc1
33 // CHECK-LTO: -emit-llvm-bc
34 // CHECK-LTO-NOT: warning: argument unused during compilation: '-fembed-bitcode'
35 // CHECK-LTO-NOT: -cc1
36 // CHECK-LTO-NOT: -fembed-bitcode=all
37 
38 // RUN: %clang -c %s -fembed-bitcode-marker -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-MARKER
39 // CHECK-MARKER: -cc1
40 // CHECK-MARKER: -emit-obj
41 // CHECK-MARKER: -fembed-bitcode=marker
42 // CHECK-MARKER-NOT: -cc1
43 
44 // 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
45 // 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
46 // 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
47 // 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
48 // 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
49 // CHECK-LINKER: ld
50 // CHECK-LINKER: -bitcode_bundle
51 // CHECK-NO-LINKER-NOT: -bitcode_bundle
52 
53 // RUN: %clang -target armv7-apple-darwin -miphoneos-version-min=5.0 %s -fembed-bitcode -### 2>&1 | \
54 // RUN:   FileCheck %s -check-prefix=CHECK-PLATFORM-UNSUPPORTED
55 // CHECK-PLATFORM-UNSUPPORTED: -fembed-bitcode is not supported on versions of iOS prior to 6.0
56