Skip to content

Commit 1acf00c

Browse files
committed
Pre-commit test: [Clang][Driver] Fix condition in combineBackendCompile when using -no-integrated-cpp
1 parent 8832a59 commit 1acf00c

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed

clang/test/Driver/no-integrated-cpp.c

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
// RUN: %clang -O2 %s -E -o %t.i
2+
//
3+
// RUN: %clang -O2 %s -c -o a.o -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=SRC
4+
// SRC: "-E"
5+
// SRC-SAME: "-o" "[[PREPROC:.*.i]]"
6+
// SRC-SAME: "-x" "c" "{{.*}}no-integrated-cpp.c"
7+
//
8+
// SRC-NEXT: "-emit-obj"
9+
// SRC-SAME: "-o" "a.o"
10+
// SRC-SAME: "-x" "cpp-output" "[[PREPROC]]"
11+
//
12+
// RUN: %clang -O2 %s -c -o a.o -no-integrated-cpp -save-temps -### 2>&1 | FileCheck %s --check-prefixes=SRC-SAVE
13+
// SRC-SAVE: "-E"
14+
// SRC-SAVE-SAME: "-o" "[[PREPROC:.*.i]]"
15+
// SRC-SAVE-SAME: "-x" "c" "{{.*}}no-integrated-cpp.c"
16+
//
17+
// SRC-SAVE-NEXT: "-emit-llvm-bc"
18+
// SRC-SAVE-SAME: "-o" "[[BITCODE:.*.bc]]"
19+
// SRC-SAVE-SAME: "-x" "cpp-output" "[[PREPROC]]"
20+
//
21+
// SRC-SAVE-NEXT: "-S"
22+
// SRC-SAVE-SAME: "-o" "[[ASM:.*.s]]"
23+
// SRC-SAVE-SAME: "-x" "ir" "[[BITCODE]]"
24+
//
25+
// SRC-SAVE-NEXT: "-cc1as"
26+
// SRC-SAVE-SAME: "-o" "a.o" "[[ASM]]"
27+
//
28+
// RUN: %clang -O2 %t.i -c -o a.o -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=PRE
29+
// PRE-NOT: "-E"
30+
// PRE: "-emit-obj"
31+
// PRE-SAME: "-o" "a.o"
32+
// PRE-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"
33+
//
34+
// RUN: %clang -O2 %t.i -c -o a.o -no-integrated-cpp -save-temps -### 2>&1 | FileCheck %s --check-prefixes=PRE-SAVE
35+
// PRE-SAVE-NOT: "-E"
36+
// PRE-SAVE-NOT: "-emit-llvm-bc"
37+
// PRE-SAVE: "-S"
38+
// PRE-SAVE-SAME: "-o" "[[ASM:.*.s]]"
39+
// PRE-SAVE-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"
40+
//
41+
// PRE-SAVE-NEXT: "-cc1as"
42+
// PRE-SAVE-SAME: "-o" "a.o" "[[ASM]]"
43+
//
44+
// RUN: %clang -O2 %s -c -emit-llvm -o a.bc -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=LLVM
45+
// LLVM: "-E"
46+
// LLVM-SAME: "-o" "[[PREPROC:.*.i]]"
47+
// LLVM-SAME: "-x" "c" "{{.*}}no-integrated-cpp.c"
48+
//
49+
// LLVM-NEXT: "-emit-llvm-bc"
50+
// LLVM-SAME: "-o" "[[BITCODE:.*.bc]]"
51+
// LLVM-SAME: "-x" "cpp-output" "[[PREPROC]]"
52+
//
53+
// LLVM-NEXT: "-emit-llvm-bc"
54+
// LLVM-SAME: "-o" "a.bc"
55+
// LLVM-SAME: "-x" "ir" "[[BITCODE]]"
56+
//
57+
// RUN: %clang -O2 %s -c -emit-llvm -o a.bc -no-integrated-cpp -save-temps -### 2>&1 | FileCheck %s --check-prefixes=LLVM-SAVE
58+
// LLVM-SAVE: "-E"
59+
// LLVM-SAVE-SAME: "-o" "[[PREPROC:.*.i]]"
60+
// LLVM-SAVE-SAME: "-x" "c" "{{.*}}no-integrated-cpp.c"
61+
//
62+
// LLVM-SAVE-NEXT: "-emit-llvm-bc"
63+
// LLVM-SAVE-SAME: "-o" "[[BITCODE:.*.bc]]"
64+
// LLVM-SAVE-SAME: "-x" "cpp-output" "[[PREPROC]]"
65+
//
66+
// LLVM-SAVE-NEXT: "-emit-llvm-bc"
67+
// LLVM-SAVE-SAME: "-o" "a.bc"
68+
// LLVM-SAVE-SAME: "-x" "ir" "[[BITCODE]]"
69+
//
70+
// RUN: %clang -O2 %t.i -c -emit-llvm -o a.bc -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=PRE-LLVM
71+
// PRE-LLVM-NOT: "-E"
72+
// PRE-LLVM: "-emit-llvm-bc"
73+
// PRE-LLVM-SAME: "-o" "a.bc"
74+
// PRE-LLVM-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"
75+
//
76+
// RUN: %clang -O2 %t.i -c -emit-llvm -o a.bc -no-integrated-cpp -save-temps -### 2>&1 | FileCheck %s --check-prefixes=PRE-LLVM-SAVE
77+
// PRE-LLVM-SAVE-NOT: "-E"
78+
// PRE-LLVM-SAVE: "-emit-llvm-bc"
79+
// PRE-LLVM-SAVE-SAME: "-o" "a.bc"
80+
// PRE-LLVM-SAVE-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"

0 commit comments

Comments
 (0)