1 // RUN: %clangxx -no-canonical-prefixes -target x86_64--netbsd \
2 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
3 // RUN: | FileCheck -check-prefix=X86_64 %s
4 // RUN: %clangxx -no-canonical-prefixes -target x86_64--netbsd7.0.0 \
5 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
6 // RUN: | FileCheck -check-prefix=X86_64-7 %s
7 // RUN: %clangxx -no-canonical-prefixes -target x86_64--netbsd6.0.0 \
8 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
9 // RUN: | FileCheck -check-prefix=X86_64-6 %s
10 // RUN: %clangxx -no-canonical-prefixes -target aarch64--netbsd \
11 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
12 // RUN: | FileCheck -check-prefix=AARCH64 %s
13 // RUN: %clangxx -no-canonical-prefixes -target aarch64--netbsd7.0.0 \
14 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
15 // RUN: | FileCheck -check-prefix=AARCH64-7 %s
16 // RUN: %clangxx -no-canonical-prefixes -target arm64--netbsd \
17 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
18 // RUN: | FileCheck -check-prefix=ARM64 %s
19 // RUN: %clangxx -no-canonical-prefixes -target arm64--netbsd7.0.0 \
20 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
21 // RUN: | FileCheck -check-prefix=ARM64-7 %s
22 // RUN: %clangxx -no-canonical-prefixes -target sparc--netbsd \
23 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
24 // RUN: | FileCheck -check-prefix=SPARC %s
25 // RUN: %clangxx -no-canonical-prefixes -target sparc64--netbsd \
26 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
27 // RUN: | FileCheck -check-prefix=SPARC64 %s
28 
29 // RUN: %clangxx -no-canonical-prefixes -target x86_64--netbsd -static \
30 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
31 // RUN: | FileCheck -check-prefix=S-X86_64 %s
32 // RUN: %clangxx -no-canonical-prefixes -target x86_64--netbsd7.0.0 -static \
33 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
34 // RUN: | FileCheck -check-prefix=S-X86_64-7 %s
35 // RUN: %clangxx -no-canonical-prefixes -target x86_64--netbsd6.0.0 -static \
36 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
37 // RUN: | FileCheck -check-prefix=S-X86_64-6 %s
38 // RUN: %clangxx -no-canonical-prefixes -target aarch64--netbsd -static \
39 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
40 // RUN: | FileCheck -check-prefix=S-AARCH64 %s
41 // RUN: %clangxx -no-canonical-prefixes -target aarch64--netbsd7.0.0 -static \
42 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
43 // RUN: | FileCheck -check-prefix=S-AARCH64-7 %s
44 // RUN: %clangxx -no-canonical-prefixes -target arm64--netbsd -static \
45 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
46 // RUN: | FileCheck -check-prefix=S-ARM64 %s
47 // RUN: %clangxx -no-canonical-prefixes -target arm64--netbsd7.0.0 -static \
48 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
49 // RUN: | FileCheck -check-prefix=S-ARM64-7 %s
50 // RUN: %clangxx -no-canonical-prefixes -target sparc--netbsd -static \
51 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
52 // RUN: | FileCheck -check-prefix=S-SPARC %s
53 // RUN: %clangxx -no-canonical-prefixes -target sparc64--netbsd -static \
54 // RUN: --sysroot=%S/Inputs/basic_netbsd_tree %s -### 2>&1 \
55 // RUN: | FileCheck -check-prefix=S-SPARC64 %s
56 
57 // X86_64: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd"
58 // X86_64: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
59 // X86_64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
60 // X86_64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc++"
61 // X86_64: "-lm" "-lc" "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
62 
63 // X86_64-7: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd7.0.0"
64 // X86_64-7: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
65 // X86_64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
66 // X86_64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc++"
67 // X86_64-7: "-lm" "-lc" "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
68 
69 // X86_64-6: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd6.0.0"
70 // X86_64-6: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
71 // X86_64-6: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
72 // X86_64-6: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
73 // X86_64-6: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
74 // X86_64-6: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
75 
76 // AARCH64: clang{{.*}}" "-cc1" "-triple" "aarch64--netbsd"
77 // AARCH64: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
78 // AARCH64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
79 // AARCH64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
80 // AARCH64: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
81 // AARCH64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
82 
83 // AARCH64-7: clang{{.*}}" "-cc1" "-triple" "aarch64--netbsd7.0.0"
84 // AARCH64-7: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
85 // AARCH64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
86 // AARCH64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
87 // AARCH64-7: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
88 // AARCH64-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
89 
90 // ARM64: clang{{.*}}" "-cc1" "-triple" "arm64--netbsd"
91 // ARM64: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
92 // ARM64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
93 // ARM64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
94 // ARM64: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
95 // ARM64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
96 
97 // ARM64-7: clang{{.*}}" "-cc1" "-triple" "arm64--netbsd7.0.0"
98 // ARM64-7: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
99 // ARM64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
100 // ARM64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
101 // ARM64-7: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
102 // ARM64-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
103 
104 // SPARC: clang{{.*}}" "-cc1" "-triple" "sparc--netbsd"
105 // SPARC: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
106 // SPARC: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o"
107 // SPARC: "{{.*}}/usr/lib{{/|\\\\}}sparc{{/|\\\\}}crti.o"
108 // SPARC: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
109 // SPARC: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
110 // SPARC: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
111 
112 // SPARC64: clang{{.*}}" "-cc1" "-triple" "sparc64--netbsd"
113 // SPARC64: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "/libexec/ld.elf_so"
114 // SPARC64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
115 // SPARC64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
116 // SPARC64: "-lm" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed"
117 // SPARC64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
118 
119 // S-X86_64: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd"
120 // S-X86_64: ld{{.*}}" "-Bstatic"
121 // S-X86_64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
122 // S-X86_64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc++"
123 // S-X86_64: "-lm" "-lc" "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
124 
125 // S-X86_64-7: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd7.0.0"
126 // S-X86_64-7: ld{{.*}}" "-Bstatic"
127 // S-X86_64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
128 // S-X86_64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc++"
129 // S-X86_64-7: "-lm" "-lc" "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
130 
131 // S-X86_64-6: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd6.0.0"
132 // S-X86_64-6: ld{{.*}}" "-Bstatic"
133 // S-X86_64-6: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
134 // S-X86_64-6: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
135 // S-X86_64-6: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
136 // S-X86_64-6: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
137 
138 // S-AARCH64: clang{{.*}}" "-cc1" "-triple" "aarch64--netbsd"
139 // S-AARCH64: ld{{.*}}" "-Bstatic"
140 // S-AARCH64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
141 // S-AARCH64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
142 // S-AARCH64: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
143 // S-AARCH64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
144 
145 // S-AARCH64-7: clang{{.*}}" "-cc1" "-triple" "aarch64--netbsd7.0.0"
146 // S-AARCH64-7: ld{{.*}}" "-Bstatic"
147 // S-AARCH64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
148 // S-AARCH64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
149 // S-AARCH64-7: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
150 // S-AARCH64-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
151 
152 // S-ARM64: clang{{.*}}" "-cc1" "-triple" "arm64--netbsd"
153 // S-ARM64: ld{{.*}}" "-Bstatic"
154 // S-ARM64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
155 // S-ARM64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
156 // S-ARM64: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
157 // S-ARM64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
158 
159 // S-ARM64-7: clang{{.*}}" "-cc1" "-triple" "arm64--netbsd7.0.0"
160 // S-ARM64-7: ld{{.*}}" "-Bstatic"
161 // S-ARM64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
162 // S-ARM64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
163 // S-ARM64-7: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
164 // S-ARM64-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
165 
166 // S-SPARC: clang{{.*}}" "-cc1" "-triple" "sparc--netbsd"
167 // S-SPARC: ld{{.*}}" "-Bstatic"
168 // S-SPARC: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o"
169 // S-SPARC: "{{.*}}/usr/lib{{/|\\\\}}sparc{{/|\\\\}}crti.o"
170 // S-SPARC: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
171 // S-SPARC: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
172 // S-SPARC: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
173 
174 // S-SPARC64: clang{{.*}}" "-cc1" "-triple" "sparc64--netbsd"
175 // S-SPARC64: ld{{.*}}" "-Bstatic"
176 // S-SPARC64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o"
177 // S-SPARC64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lstdc++"
178 // S-SPARC64: "-lm" "-lc" "-lgcc_eh" "-lc" "-lgcc"
179 // S-SPARC64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o"
180