Skip to content

Commit 26dd5ec

Browse files
Add SYCL --offload-arch tests for AMD targets.
1 parent 9acfa69 commit 26dd5ec

File tree

1 file changed

+170
-0
lines changed

1 file changed

+170
-0
lines changed
Lines changed: 170 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,170 @@
1+
// SYCL AOT compilation to AMD GPUs and CPUs using --offload-arch
2+
3+
// AMD GPUs
4+
5+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx900 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
6+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx900 -DMAC_STR=GFX900
7+
8+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx902 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
9+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx902 -DMAC_STR=GFX902
10+
11+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx904 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
12+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx904 -DMAC_STR=GFX904
13+
14+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx906 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
15+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx906 -DMAC_STR=GFX906
16+
17+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx908 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
18+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx908 -DMAC_STR=GFX908
19+
20+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx909 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
21+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx909 -DMAC_STR=GFX909
22+
23+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx90a -nogpulib -fno-sycl-libspirv %s 2>&1 | \
24+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx90a -DMAC_STR=GFX90A
25+
26+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx90c -nogpulib -fno-sycl-libspirv %s 2>&1 | \
27+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx90c -DMAC_STR=GFX90C
28+
29+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx940 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
30+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx940 -DMAC_STR=GFX940
31+
32+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx941 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
33+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx941 -DMAC_STR=GFX941
34+
35+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx942 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
36+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx942 -DMAC_STR=GFX942
37+
38+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1010 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
39+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1010 -DMAC_STR=GFX1010
40+
41+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1011 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
42+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1011 -DMAC_STR=GFX1011
43+
44+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1012 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
45+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1012 -DMAC_STR=GFX1012
46+
47+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1013 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
48+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1013 -DMAC_STR=GFX1013
49+
50+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1013 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
51+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1013 -DMAC_STR=GFX1013
52+
53+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1030 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
54+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1030 -DMAC_STR=GFX1030
55+
56+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1031 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
57+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1031 -DMAC_STR=GFX1031
58+
59+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1032 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
60+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1032 -DMAC_STR=GFX1032
61+
62+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1033 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
63+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1033 -DMAC_STR=GFX1033
64+
65+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1034 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
66+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1034 -DMAC_STR=GFX1034
67+
68+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1035 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
69+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1035 -DMAC_STR=GFX1035
70+
71+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1036 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
72+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1036 -DMAC_STR=GFX1036
73+
74+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1100 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
75+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1100 -DMAC_STR=GFX1100
76+
77+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1101 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
78+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1101 -DMAC_STR=GFX1101
79+
80+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1102 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
81+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1102 -DMAC_STR=GFX1102
82+
83+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1103 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
84+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1103 -DMAC_STR=GFX1103
85+
86+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1150 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
87+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1150 -DMAC_STR=GFX1150
88+
89+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1151 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
90+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-GPU,CLANG-OFFLOAD-PACKAGER-AMD -DDEV_STR=gfx1151 -DMAC_STR=GFX1151
91+
92+
// AMD CPUs
93+
94+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx600 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
95+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx600
96+
97+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx601 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
98+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx601
99+
100+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx602 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
101+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx602
102+
103+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx700 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
104+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx700
105+
106+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx701 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
107+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx701
108+
109+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx702 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
110+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx702
111+
112+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx702 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
113+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx702
114+
115+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx703 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
116+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx703
117+
118+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx704 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
119+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx704
120+
121+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx705 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
122+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx705
123+
124+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx801 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
125+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx801
126+
127+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx802 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
128+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx802
129+
130+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx803 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
131+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx803
132+
133+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx805 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
134+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx805
135+
136+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx810 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
137+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx810
138+
139+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx9-generic -nogpulib -fno-sycl-libspirv %s 2>&1 | \
140+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx9-generic
141+
142+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1152 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
143+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx1152
144+
145+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1200 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
146+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx1200
147+
148+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx1201 -nogpulib -fno-sycl-libspirv %s 2>&1 | \
149+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx1201
150+
151+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=gfx12-generic -nogpulib -fno-sycl-libspirv %s 2>&1 | \
152+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-CPU,CLANG-OFFLOAD-PACKAGER-AMD-CPU -DDEV_STR=gfx12-generic
153+
154+
// RUN: %clangxx -### --offload-new-driver -fsycl --offload-arch=amdgcnspirv -nogpulib -fno-sycl-libspirv %s 2>&1 | \
155+
// RUN: FileCheck %s --check-prefixes=TARGET-TRIPLE-AMD-SPIRV,CLANG-OFFLOAD-PACKAGER-AMD-SPIRV -DDEV_STR=amdgcnspirv
156+
157+
// TARGET-TRIPLE-AMD-GPU: clang{{.*}} "-triple" "amdgcn-amd-amdhsa"
158+
// TARGET-TRIPLE-AMD-GPU: "-D__SYCL_TARGET_AMD_GPU_[[MAC_STR]]__"
159+
// CLANG-OFFLOAD-PACKAGER-AMD: clang-offload-packager{{.*}} "--image={{.*}}triple=amdgcn-amd-amdhsa,arch=[[DEV_STR]],kind=sycl"
160+
161+
// TARGET-TRIPLE-AMD-CPU: clang{{.*}} "-triple" "amdgcn-amd-amdhsa"
162+
// TARGET-TRIPLE-AMD-CPU: "-target-cpu" "[[DEV_STR]]"
163+
// CLANG-OFFLOAD-PACKAGER-AMD-CPU: clang-offload-packager{{.*}} "--image={{.*}}triple=amdgcn-amd-amdhsa,arch=[[DEV_STR]],kind=sycl"
164+
165+
// TARGET-TRIPLE-AMD-SPIRV: clang{{.*}} "-triple" "spirv64-amd-amdhsa"
166+
// CLANG-OFFLOAD-PACKAGER-AMD-SPIRV: clang-offload-packager{{.*}} "--image={{.*}}triple=spirv64-amd-amdhsa,arch=[[DEV_STR]],kind=sycl,{{.*}}"
167+
168+
// TARGET-TRIPLE-AMD-GENERIC: clang{{.*}} "-triple" "spirv64-amd-amdhsa"
169+
// CLANG-OFFLOAD-PACKAGER-AMD-GENERIC: clang-offload-packager{{.*}} "--image={{.*}}triple=spirv64-amd-amdhsa,arch=[[DEV_STR]],kind=sycl,{{.*}}"
170+

0 commit comments

Comments
 (0)