Skip to content

Commit 5621b3d

Browse files
committed
Add Windows toolchain tests.
1 parent cb42c03 commit 5621b3d

File tree

5 files changed

+47
-3
lines changed

5 files changed

+47
-3
lines changed

test/Driver/linker-autolink-extract.swift

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-linux-gnu -g %s | %FileCheck -check-prefix DEBUG_LINUX %s
2+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-windows-msvc -g %s | %FileCheck -check-prefix DEBUG_WINDOWS %s
23

34
// REQUIRES: autolink-extract
45

@@ -10,3 +11,9 @@
1011
// DEBUG_LINUX: -o main
1112
// DEBUG_LINUX-NOT: dsymutil
1213

14+
// DEBUG_WINDOWS: bin/swift
15+
// DEBUG_WINDOWS-NEXT: bin/swift-autolink-extract
16+
// DEBUG_WINDOWS-NEXT: bin/swift
17+
// DEBUG_WINDOWS-NEXT: bin/swift -modulewrap
18+
// DEBUG_WINDOWS-NEXT: bin/clang++{{"? }}
19+
// DEBUG_WINDOWS: -o main

test/Driver/linker.swift

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@
3333
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-windows-cygnus -Ffoo -Fsystem car -F cdr -framework bar -Lbaz -lboo -Xlinker -undefined %s 2>&1 > %t.cygwin.txt
3434
// RUN: %FileCheck -check-prefix CYGWIN-x86_64 %s < %t.cygwin.txt
3535

36+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-windows-msvc -Ffoo -Fsystem car -F cdr -framework bar -Lbaz -lboo -Xlinker -undefined %s 2>&1 > %t.windows.txt
37+
// RUN: %FileCheck -check-prefix WINDOWS-x86_64 %s < %t.windows.txt
38+
3639
// RUN: %swiftc_driver -driver-print-jobs -emit-library -target x86_64-unknown-linux-gnu %s -Lbar -o dynlib.out 2>&1 > %t.linux.dynlib.txt
3740
// RUN: %FileCheck -check-prefix LINUX_DYNLIB-x86_64 %s < %t.linux.dynlib.txt
3841

@@ -61,6 +64,7 @@
6164
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-apple-macosx10.9 -emit-library %s -module-name LINKER | %FileCheck -check-prefix INFERRED_NAME_DARWIN %s
6265
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-linux-gnu -emit-library %s -module-name LINKER | %FileCheck -check-prefix INFERRED_NAME_LINUX %s
6366
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-windows-cygnus -emit-library %s -module-name LINKER | %FileCheck -check-prefix INFERRED_NAME_WINDOWS %s
67+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-windows-msvc -emit-library %s -module-name LINKER | %FileCheck -check-prefix INFERRED_NAME_WINDOWS %s
6468

6569
// Here we specify an output file name using '-o'. For ease of writing these
6670
// tests, we happen to specify the same file name as is inferred in the
@@ -240,6 +244,20 @@
240244
// CYGWIN-x86_64-DAG: -Xlinker -undefined
241245
// CYGWIN-x86_64: -o linker
242246

247+
// WINDOWS-x86_64: swift
248+
// WINDOWS-x86_64: -o [[OBJECTFILE:.*]]
249+
250+
// WINDOWS-x86_64: clang++{{"? }}
251+
// WINDOWS-x86_64-DAG: [[OBJECTFILE]]
252+
// WINDOWS-x86_64-DAG: -L [[STDLIB_PATH:[^ ]+/lib/swift/windows/x86_64]]
253+
// WINDOWS-x86_64-DAG: -F foo -iframework car -F cdr
254+
// WINDOWS-x86_64-DAG: -framework bar
255+
// WINDOWS-x86_64-DAG: -L baz
256+
// WINDOWS-x86_64-DAG: -lboo
257+
// WINDOWS-x86_64-DAG: -Xlinker -undefined
258+
// WINDOWS-x86_64: -o linker
259+
260+
243261
// COMPLEX: bin/ld{{"? }}
244262
// COMPLEX-DAG: -dylib
245263
// COMPLEX-DAG: -syslibroot {{.*}}/Inputs/clang-importer-sdk

test/Driver/profiling.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
// RUN: %swiftc_driver -driver-print-jobs -profile-generate -target armv7k-apple-watchos2.0 -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ %s | %FileCheck -check-prefix=CHECK -check-prefix=watchOS %s
1919

2020
// RUN: %swiftc_driver -driver-print-jobs -profile-generate -target x86_64-unknown-linux-gnu %s | %FileCheck -check-prefix=CHECK -check-prefix=LINUX %s
21+
// RUN: %swiftc_driver -driver-print-jobs -profile-generate -target x86_64-unknown-windows-msvc %s | %FileCheck -check-prefix=CHECK -check-prefix=WINDOWS %s
2122

2223
// CHECK: swift
2324
// CHECK: -profile-generate
@@ -47,6 +48,10 @@
4748
// LINUX: lib/swift/clang/lib/linux/libclang_rt.profile-x86_64.a
4849
// LINUX: -u__llvm_profile_runtime
4950

51+
// LINUX: clang++{{"? }}
52+
// LINUX: lib/swift/clang/lib/windows/clang_rt.profile-x86_64.lib
53+
// LINUX: -u__llvm_profile_runtime
54+
5055
// RUN: not %swiftc_driver -driver-print-jobs -profile-generate -profile-use=/dev/null %s 2>&1 | %FileCheck -check-prefix=MIX_GEN_USE %s
5156
// MIX_GEN_USE: conflicting options '-profile-generate' and '-profile-use'
5257

test/Driver/sanitizers.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
// RUN: %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=address -target i386-apple-watchos2.0 %s | %FileCheck -check-prefix=ASAN -check-prefix=ASAN_watchOS_SIM %s
77
// RUN: %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=address -target armv7k-apple-watchos2.0 %s | %FileCheck -check-prefix=ASAN -check-prefix=ASAN_watchOS %s
88
// RUN: %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=address -target x86_64-unknown-linux-gnu %s 2>&1 | %FileCheck -check-prefix=ASAN_LINUX %s
9+
// RUN: %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=address -target x86_64-unknown-windows-msvc %s 2>&1 | %FileCheck -check-prefix=ASAN_WINDOWS %s
910

1011
// RUN: %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target x86_64-apple-macosx10.9 %s | %FileCheck -check-prefix=TSAN -check-prefix=TSAN_OSX %s
1112
// RUN: not %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target x86-apple-macosx10.9 %s 2>&1 | %FileCheck -check-prefix=TSAN_OSX_32 %s
@@ -15,6 +16,7 @@
1516
// RUN: not %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target arm64-apple-tvos9.0 %s 2>&1 | %FileCheck -check-prefix=TSAN_tvOS %s
1617
// RUN: not %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target i386-apple-watchos2.0 %s 2>&1 | %FileCheck -check-prefix=TSAN_watchOS_SIM %s
1718
// RUN: not %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target armv7k-apple-watchos2.0 %s 2>&1 | %FileCheck -check-prefix=TSAN_watchOS %s
19+
// RUN: not %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target x86_64-unknown-windows-msvc %s 2>&1 | %FileCheck -check-prefix=TSAN_WINDOWS %s
1820
// RUN: %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=thread -target x86_64-unknown-linux-gnu %s 2>&1 | %FileCheck -check-prefix=TSAN_LINUX %s
1921

2022
// RUN: not %swiftc_driver -resource-dir %S/Inputs/fake-resource-dir/lib/swift/ -driver-print-jobs -sanitize=address,unknown %s 2>&1 | %FileCheck -check-prefix=BADARG %s
@@ -40,6 +42,7 @@
4042
// ASAN_watchOS_SIM: lib/swift/clang/lib/darwin/libclang_rt.asan_watchossim_dynamic.dylib
4143
// ASAN_watchOS: lib/swift/clang/lib/darwin/libclang_rt.asan_watchos_dynamic.dylib
4244
// ASAN_LINUX: lib/swift/clang/lib/linux/libclang_rt.asan-x86_64.a
45+
// ASAN_WINDOWS: lib/swift/clang/lib/windows/clang_rt.asan-x86_64.lib
4346

4447
// ASAN: -rpath @executable_path
4548

@@ -55,6 +58,7 @@
5558
// TSAN_watchOS_SIM: unsupported option '-sanitize=thread' for target 'i386-apple-watchos2.0'
5659
// TSAN_watchOS: unsupported option '-sanitize=thread' for target 'armv7k-apple-watchos2.0'
5760
// TSAN_LINUX: lib/swift/clang/lib/linux/libclang_rt.tsan-x86_64.a
61+
// TSAN_WINDOWS: unsupported option '-sanitize=thread' for target 'x86_64-unknown-windows-msvc'
5862

5963
// TSAN: -rpath @executable_path
6064

test/Driver/sdk.swift

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-apple-macosx10.9 -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix OSX
2-
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-linux-gnu -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix LINUX
3-
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-freebsd -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix FREEBSD
1+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-apple-macosx10.9 -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix OSX
2+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-linux-gnu -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix LINUX
3+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-freebsd -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix FREEBSD
4+
// RUN: %swiftc_driver -driver-print-jobs -target x86_64-unknown-windows-msvc -g -sdk %S/../Inputs/clang-importer-sdk %s 2>&1 | %FileCheck %s --check-prefix WINDOWS
45

56
// RUN: env SDKROOT=%S/../Inputs/clang-importer-sdk %swiftc_driver_plain -target x86_64-apple-macosx10.9 -g -driver-print-jobs %s 2>&1 | %FileCheck %s --check-prefix OSX
67
// RUN: env SDKROOT=%S/../Inputs/clang-importer-sdk %swiftc_driver_plain -target x86_64-unknown-linux-gnu -g -driver-print-jobs %s 2>&1 | %FileCheck %s --check-prefix LINUX
@@ -33,6 +34,15 @@
3334
// FREEBSD: bin/{{.+}} {{.*}}swiftrt.o
3435
// FREEBSD: {{-syslibroot|--sysroot}} {{.*}}/Inputs/clang-importer-sdk
3536

37+
// WINDOWS-NOT: warning: no such SDK:
38+
// WINDOWS: bin/swift
39+
// WINDOWS: Driver/sdk.swift
40+
// WINDOWS: -sdk {{.*}}/Inputs/clang-importer-sdk
41+
// WINDOWS-NEXT: bin/swift
42+
// WINDOWS: -sdk {{.*}}/Inputs/clang-importer-sdk
43+
// WINDOWS: bin/{{.+}} {{.*}}.o{{[ "]}}
44+
// WINDOWS: {{-syslibroot|--sysroot}} {{.*}}/Inputs/clang-importer-sdk
45+
3646
// RUN: %swift_driver -driver-print-jobs -repl -sdk %S/Inputs/nonexistent-sdk 2>&1 | %FileCheck %s --check-prefix=SDKWARNING
3747
// RUN: %swift_driver -driver-print-jobs -sdk %S/Inputs/nonexistent-sdk 2>&1 | %FileCheck %s --check-prefix=SDKWARNING
3848
// RUN: env SDKROOT=%S/Inputs/nonexistent-sdk %swift_driver_plain -driver-print-jobs -repl 2>&1 | %FileCheck %s --check-prefix=SDKWARNING

0 commit comments

Comments
 (0)