|
1 |
| -! Test the -Xoffload-linker flag that forwards link commands to the clang-linker-wrapper used |
2 |
| -! to help link offloading device libraries |
| 1 | +! RUN: %flang -### --target=ppc64le-linux-gnu -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 2 | +! RUN: %flang -### --target=aarch64-apple-darwin -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 3 | +! RUN: %flang -### --target=sparc-sun-solaris2.11 -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 4 | +! RUN: %flang -### --target=x86_64-unknown-freebsd -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 5 | +! RUN: %flang -### --target=x86_64-unknown-netbsd -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 6 | +! RUN: %flang -### --target=x86_64-unknown-openbsd -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 7 | +! RUN: %flang -### --target=x86_64-unknown-dragonfly -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 8 | +! RUN: %flang -### --target=x86_64-unknown-haiku %s -Xlinker -rpath -Xlinker /not/a/real/path 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 9 | +! RUN: %flang -### --target=x86_64-windows-gnu -Xlinker -rpath -Xlinker /not/a/real/path %s 2>&1 | FileCheck %s --check-prefixes=UNIX |
| 10 | +! RUN: %flang -### --target=aarch64-windows-msvc -Xlinker -rpath -Xlinker /not/a/real/path -o obscure.exe %s 2>&1 | FileCheck %s --check-prefixes=MSVC |
3 | 11 |
|
4 |
| -! RUN: %flang -### --target=x86_64-unknown-linux-gnu -fopenmp --offload-arch=gfx90a -Xoffload-linker a %s 2>&1 | FileCheck %s --check-prefixes=CHECK-XLINKER |
| 12 | +! UNIX-LABEL: "{{.*}}ld{{(\.exe)?}}" |
| 13 | +! UNIX-SAME: "-rpath" "/not/a/real/path" |
5 | 14 |
|
6 |
| -! CHECK-XLINKER: -device-linker=a{{.*}}- |
| 15 | +! The name of this file contains the word "link" which results in a match on |
| 16 | +! the compiler line as well. Instead look for the final name of the executable |
| 17 | +! to be created since that will only appear in the linker line. |
| 18 | +! MSVC: -out:obscure.exe |
| 19 | +! MSVC-SAME: "-rpath" "/not/a/real/path" |
7 | 20 |
|
8 |
| -! RUN: %flang -### --target=x86_64-unknown-linux-gnu -fopenmp --offload-arch=gfx90a -Xoffload-linker a -Xoffload-linker-amdgcn-amd-amdhsa b %s 2>&1 | FileCheck %s --check-prefixes=CHECK-XLINKER-AMDGCN |
9 |
| - |
10 |
| -! CHECK-XLINKER-AMDGCN: -device-linker=a{{.*}}-device-linker=amdgcn-amd-amdhsa=b{{.*}}-- |
| 21 | +end program |
0 commit comments