1 | // A basic clang -cc1 command-line, and simple environment check. |
2 | |
3 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 2>&1 \ |
4 | // RUN: | FileCheck -check-prefix=CC1 %s |
5 | // CC1: clang{{.*}} "-cc1" "-triple" "msp430" |
6 | |
7 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 \ |
8 | // RUN: --gcc-toolchain=%S/Inputs/basic_msp430_tree 2>&1 \ |
9 | // RUN: | FileCheck -check-prefix=MSP430 %s |
10 | |
11 | // MSP430: "{{.*}}Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}bin{{/|\\\\}}msp430-elf-ld" |
12 | // MSP430: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430" |
13 | // MSP430: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430" |
14 | // MSP430: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430{{/|\\\\}}crt0.o" |
15 | // MSP430: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430{{/|\\\\}}crtbegin.o" |
16 | // MSP430: "--start-group" "-lmul_none" "-lgcc" "-lc" "-lcrt" "-lnosys" "--end-group" |
17 | // MSP430: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430{{/|\\\\}}crtend.o" |
18 | // MSP430: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430{{/|\\\\}}crtn.o" |
19 | |
20 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -nodefaultlibs \ |
21 | // RUN: --gcc-toolchain=%S/Inputs/basic_msp430_tree 2>&1 \ |
22 | // RUN: | FileCheck -check-prefix=MSP430-NO-DFT-LIB %s |
23 | |
24 | // MSP430-NO-DFT-LIB: "{{.*}}Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}bin{{/|\\\\}}msp430-elf-ld" |
25 | // MSP430-NO-DFT-LIB: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430" |
26 | // MSP430-NO-DFT-LIB: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430" |
27 | // MSP430-NO-DFT-LIB: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430{{/|\\\\}}crt0.o" |
28 | // MSP430-NO-DFT-LIB: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430{{/|\\\\}}crtbegin.o" |
29 | // MSP430-NO-DFT-LIB: "--start-group" "-lmul_none" "-lgcc" "--end-group" |
30 | // MSP430-NO-DFT-LIB: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430{{/|\\\\}}crtend.o" |
31 | // MSP430-NO-DFT-LIB: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430{{/|\\\\}}crtn.o" |
32 | |
33 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -nostartfiles \ |
34 | // RUN: --gcc-toolchain=%S/Inputs/basic_msp430_tree 2>&1 \ |
35 | // RUN: | FileCheck -check-prefix=MSP430-NO-START %s |
36 | |
37 | // MSP430-NO-START: "{{.*}}Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}bin{{/|\\\\}}msp430-elf-ld" |
38 | // MSP430-NO-START: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430" |
39 | // MSP430-NO-START: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430" |
40 | // MSP430-NO-START: "--start-group" "-lmul_none" "-lgcc" "-lc" "-lcrt" "-lnosys" "--end-group" |
41 | |
42 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -nostdlib \ |
43 | // RUN: --gcc-toolchain=%S/Inputs/basic_msp430_tree 2>&1 \ |
44 | // RUN: | FileCheck -check-prefix=MSP430-NO-STD-LIB %s |
45 | |
46 | // MSP430-NO-STD-LIB: "{{.*}}Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}bin{{/|\\\\}}msp430-elf-ld" |
47 | // MSP430-NO-STD-LIB: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/430" |
48 | // MSP430-NO-STD-LIB: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/7.3.1/../../..{{/|\\\\}}..{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430" |
49 | // MSP430-NO-STD-LIB: "--start-group" "-lmul_none" "-lgcc" "--end-group" |
50 | |
51 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mmcu=msp430f147 2>&1 \ |
52 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-16BIT %s |
53 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mmcu=msp430f147 -mhwmult=auto 2>&1 \ |
54 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-16BIT %s |
55 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mhwmult=16bit 2>&1 \ |
56 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-16BIT %s |
57 | |
58 | // MSP430-HWMult-16BIT: "--start-group" "-lmul_16" |
59 | |
60 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mmcu=msp430f4783 2>&1 \ |
61 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-32BIT %s |
62 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mmcu=msp430f4783 -mhwmult=auto 2>&1 \ |
63 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-32BIT %s |
64 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mhwmult=32bit 2>&1 \ |
65 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-32BIT %s |
66 | |
67 | // MSP430-HWMult-32BIT: "--start-group" "-lmul_32" |
68 | |
69 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mhwmult=f5series 2>&1 \ |
70 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-F5 %s |
71 | // MSP430-HWMult-F5: "--start-group" "-lmul_f5" |
72 | |
73 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mhwmult=none 2>&1 \ |
74 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-NONE %s |
75 | // RUN: %clang %s -### -no-canonical-prefixes -target msp430 -mhwmult=none -mmcu=msp430f4783 2>&1 \ |
76 | // RUN: | FileCheck -check-prefix=MSP430-HWMult-NONE %s |
77 | |
78 | // MSP430-HWMult-NONE: "--start-group" "-lmul_none" |
79 | |