84 lines · c
1// RUN: %clang -O2 %s -E -o %t.i2//3// RUN: %clang -O2 %s -c -o a.o -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=SRC4// 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-SAVE13// 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"|"[^"]*/as"}}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=PRE29// 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-SAVE35// PRE-SAVE-NOT: "-E"36// PRE-SAVE: "-emit-llvm-bc"37// PRE-SAVE-SAME: "-o" "[[BITCODE:.*.bc]]"38// PRE-SAVE-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"39//40// PRE-SAVE-NEXT: "-S"41// PRE-SAVE-SAME: "-o" "[[ASM:.*.s]]"42// PRE-SAVE-SAME: "-x" "ir" "[[BITCODE]]"43//44// PRE-SAVE-NEXT: {{"-cc1as"|"[^"]*/as"}}45// PRE-SAVE-SAME: "-o" "a.o" "[[ASM]]"46//47// RUN: %clang -O2 %s -c -emit-llvm -o a.bc -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=LLVM48// LLVM: "-E"49// LLVM-SAME: "-o" "[[PREPROC:.*.i]]"50// LLVM-SAME: "-x" "c" "{{.*}}no-integrated-cpp.c"51//52// LLVM-NEXT: "-emit-llvm-bc"53// LLVM-SAME: "-o" "a.bc"54// LLVM-SAME: "-x" "cpp-output" "[[PREPROC]]"55//56// RUN: %clang -O2 %s -c -emit-llvm -o a.bc -no-integrated-cpp -save-temps -### 2>&1 | FileCheck %s --check-prefixes=LLVM-SAVE57// LLVM-SAVE: "-E"58// LLVM-SAVE-SAME: "-o" "[[PREPROC:.*.i]]"59// LLVM-SAVE-SAME: "-x" "c" "{{.*}}no-integrated-cpp.c"60//61// LLVM-SAVE-NEXT: "-emit-llvm-bc"62// LLVM-SAVE-SAME: "-o" "[[BITCODE:.*.bc]]"63// LLVM-SAVE-SAME: "-x" "cpp-output" "[[PREPROC]]"64//65// LLVM-SAVE-NEXT: "-emit-llvm-bc"66// LLVM-SAVE-SAME: "-o" "a.bc"67// LLVM-SAVE-SAME: "-x" "ir" "[[BITCODE]]"68//69// RUN: %clang -O2 %t.i -c -emit-llvm -o a.bc -no-integrated-cpp -### 2>&1 | FileCheck %s --check-prefixes=PRE-LLVM70// PRE-LLVM-NOT: "-E"71// PRE-LLVM: "-emit-llvm-bc"72// PRE-LLVM-SAME: "-o" "a.bc"73// PRE-LLVM-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"74//75// RUN: %clang -O2 %t.i -c -emit-llvm -o a.bc -no-integrated-cpp -save-temps -### 2>&1 | FileCheck %s --check-prefixes=PRE-LLVM-SAVE76// PRE-LLVM-SAVE-NOT: "-E"77// PRE-LLVM-SAVE: "-emit-llvm-bc"78// PRE-LLVM-SAVE-SAME: "-o" "[[BITCODE:.*.bc]]"79// PRE-LLVM-SAVE-SAME: "-x" "cpp-output" "{{.*}}no-integrated-cpp.c.tmp.i"80 81// PRE-LLVM-SAVE-NEXT: "-emit-llvm-bc"82// PRE-LLVM-SAVE-SAME: "-o" "a.bc"83// PRE-LLVM-SAVE-SAME: "-x" "ir" "[[BITCODE]]"84