150
|
1 // REQUIRES: clang-driver
|
|
2 // REQUIRES: x86-registered-target
|
|
3 // REQUIRES: amdgpu-registered-target
|
|
4
|
221
|
5 // -fno-gpu-rdc without -o with -c
|
|
6 // RUN: %clang -### -target x86_64-linux-gnu -nogpulib -save-temps \
|
|
7 // RUN: --cuda-gpu-arch=gfx900 -c %s 2>&1 | \
|
|
8 // RUN: FileCheck -check-prefixes=CHECK,NORDC %s
|
|
9
|
150
|
10 // -fno-gpu-rdc without -o
|
|
11 // RUN: %clang -### -target x86_64-linux-gnu -nogpulib -save-temps \
|
173
|
12 // RUN: --cuda-gpu-arch=gfx900 %s 2>&1 | \
|
150
|
13 // RUN: FileCheck -check-prefixes=CHECK,NORDC,NOUT %s
|
|
14
|
|
15 // -fno-gpu-rdc with -o
|
|
16 // RUN: %clang -### -target x86_64-linux-gnu -nogpulib -save-temps \
|
173
|
17 // RUN: -o executable --cuda-gpu-arch=gfx900 %s 2>&1 | \
|
150
|
18 // RUN: FileCheck -check-prefixes=CHECK,NORDC,WOUT %s
|
|
19
|
221
|
20 // -fgpu-rdc without -o with -c
|
|
21 // RUN: %clang -### -target x86_64-linux-gnu -nogpulib -save-temps \
|
|
22 // RUN: -fgpu-rdc --cuda-gpu-arch=gfx900 -c %s 2>&1 | \
|
|
23 // RUN: FileCheck -check-prefixes=CHECK,RDC,RDCC %s
|
|
24
|
150
|
25 // -fgpu-rdc without -o
|
|
26 // RUN: %clang -### -target x86_64-linux-gnu -nogpulib -save-temps \
|
173
|
27 // RUN: -fgpu-rdc --cuda-gpu-arch=gfx900 %s 2>&1 | \
|
221
|
28 // RUN: FileCheck -check-prefixes=CHECK,RDC,RDCL,NOUT %s
|
150
|
29
|
|
30 // -fgpu-rdc with -o
|
221
|
31 // UN: %clang -### -target x86_64-linux-gnu -nogpulib -save-temps \
|
|
32 // UN: -o executable -fgpu-rdc --cuda-gpu-arch=gfx900 %s 2>&1 | \
|
|
33 // UN: FileCheck -check-prefixes=CHECK,RDC,RDCL,WOUT %s
|
|
34
|
|
35 // -fgpu-rdc host object path
|
|
36 // RDCL: "{{.*clang.*}}" "-cc1" {{.*}} "-E" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.cui"
|
|
37 // RDCL: "{{.*clang.*}}" "-cc1" {{.*}} "-emit-llvm-bc" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.bc"
|
|
38 // RDCL: "{{.*clang.*}}" "-cc1" {{.*}} "-S" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.s"
|
|
39 // RDCL: "{{.*clang.*}}" "-cc1as" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.o"
|
|
40
|
|
41 // device object paths
|
|
42 // CHECK: {{".*clang.*"}} "-cc1" {{.*}} "-E" {{.*}} [[CPU:"-target-cpu" "gfx900"]] {{.*}} "-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.cui"
|
|
43 // NORDC: {{".*clang.*"}} "-cc1" {{.*}} "-emit-llvm-bc" {{.*}} [[CPU]] {{.*}} "-disable-llvm-passes" {{.*}} "-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.bc"
|
|
44 // RDC: {{".*clang.*"}} "-cc1" {{.*}} "-emit-llvm-bc" {{.*}} [[CPU]] {{.*}} "-disable-llvm-passes" {{.*}} "-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.tmp.bc"
|
|
45
|
|
46 // NORDC: {{".*clang.*"}} "-cc1" {{.*}} "-S"
|
|
47 // NORDC-SAME: "-mllvm" "-amdgpu-internalize-symbols"
|
|
48 // NORDC-SAME: [[CPU]]
|
|
49 // NORDC-SAME: "-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.s"
|
150
|
50
|
221
|
51 // RDC: {{".*clang.*"}} "-cc1" {{.*}} "-emit-llvm-bc" {{.*}} [[CPU]] {{.*}} "-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.bc"
|
|
52 // NORDC: {{".*clang.*"}} "-cc1as" {{.*}} "-filetype" "obj" {{.*}} [[CPU]] {{.*}} "-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.o"
|
|
53 // CHECK-NOT: "{{.*}}llvm-link"
|
|
54 // CHECK-NOT: "{{.*}}opt"
|
|
55 // CHECK-NOT: "{{.*}}llc"
|
|
56 // NORDC: {{.*lld.*}}"-o" "hip-save-temps-hip-amdgcn-amd-amdhsa-gfx900.out"
|
|
57 // RDCL: "{{.*lld.*}}" {{.*}} "-plugin-opt=-amdgpu-internalize-symbols" {{.*}}"-save-temps"
|
|
58 // RDCL-SAME: "-o" "a.out-hip-amdgcn-amd-amdhsa-gfx900"
|
|
59 // RDCC: "{{.*clang.*}}" "-cc1" {{.*}} "-E" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.cui"
|
|
60 // RDCC: "{{.*clang.*}}" "-cc1" {{.*}} "-emit-llvm-bc" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.bc"
|
|
61 // RDCC: "{{.*clang.*}}" "-cc1" {{.*}} "-S" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.s"
|
|
62 // RDCC: "{{.*clang.*}}" "-cc1as" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.o"
|
|
63 // RDCC: "{{.*clang-offload-bundler.*}}" {{.*}} "-outputs=hip-save-temps.o"
|
|
64 // RDCL: "{{.*clang-offload-bundler.*}}" {{.*}} "-outputs=hip-save-temps-hip-amdgcn-amd-amdhsa.hipfb"
|
|
65 // RDCL: {{.*}}llvm-mc{{.*}}"-o" "hip-save-temps-hip-amdgcn-amd-amdhsa.o" "hip-save-temps-hip-amdgcn-amd-amdhsa.mcin" "--filetype=obj"
|
|
66
|
|
67 // -fno-gpu-rdc host object path
|
|
68 // NORDC: "{{.*clang.*}}" "-cc1" {{.*}} "-E" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.cui"
|
|
69 // NORDC: "{{.*clang.*}}" "-cc1" {{.*}} "-emit-llvm-bc" {{.*}} "-fcuda-include-gpubinary" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.bc"
|
|
70 // NORDC: "{{.*clang.*}}" "-cc1" {{.*}} "-S" {{.*}} "-o" "hip-save-temps-host-x86_64-unknown-linux-gnu.s"
|
|
71 // NORDC: "{{.*clang.*}}" "-cc1as" {{.*}} "-o" "hip-save-temps{{.*}}.o"
|
|
72
|
|
73 // output to default a.out or -o specified file name
|
150
|
74 // NOUT: {{.*}}ld{{.*}}"-o" "a.out"
|
|
75 // WOUT: {{.*}}ld{{.*}}"-o" "executable"
|