@@ -28,139 +28,84 @@ using namespace clang;
2828using namespace llvm ::opt;
2929
3030// Struct that relates an AOT target value with
31- // Intel CPUs, Intel GPUs, AMD and NVidia GPUs.
31+ // Intel CPUs and Intel GPUs.
3232struct StringToOffloadArchSYCLMap {
3333 const char *ArchName;
34- SYCLSupportedOffloadArchs IntelArch;
34+ SYCLSupportedIntelArchs IntelArch;
3535};
3636
3737// Mapping of supported SYCL offloading architectures.
3838static const StringToOffloadArchSYCLMap StringToArchNamesMap[] = {
3939 // Intel CPU mapping.
40- {" skylake-avx512" , SYCLSupportedOffloadArchs ::SKYLAKEAVX512},
41- {" core-avx2" , SYCLSupportedOffloadArchs ::COREAVX2},
42- {" corei7-avx" , SYCLSupportedOffloadArchs ::COREI7AVX},
43- {" corei7" , SYCLSupportedOffloadArchs ::COREI7},
44- {" westmere" , SYCLSupportedOffloadArchs ::WESTMERE},
45- {" sandybridge" , SYCLSupportedOffloadArchs ::SANDYBRIDGE},
46- {" ivybridge" , SYCLSupportedOffloadArchs ::IVYBRIDGE},
47- {" broadwell" , SYCLSupportedOffloadArchs ::BROADWELL},
48- {" coffeelake" , SYCLSupportedOffloadArchs ::COFFEELAKE},
49- {" alderlake" , SYCLSupportedOffloadArchs ::ALDERLAKE},
50- {" skylake" , SYCLSupportedOffloadArchs ::SKYLAKE},
51- {" skx" , SYCLSupportedOffloadArchs ::SKX},
52- {" cascadelake" , SYCLSupportedOffloadArchs ::CASCADELAKE},
53- {" icelake-client" , SYCLSupportedOffloadArchs ::ICELAKECLIENT},
54- {" icelake-server" , SYCLSupportedOffloadArchs ::ICELAKESERVER},
55- {" sapphirerapids" , SYCLSupportedOffloadArchs ::SAPPHIRERAPIDS},
56- {" graniterapids" , SYCLSupportedOffloadArchs ::GRANITERAPIDS},
40+ {" skylake-avx512" , SYCLSupportedIntelArchs ::SKYLAKEAVX512},
41+ {" core-avx2" , SYCLSupportedIntelArchs ::COREAVX2},
42+ {" corei7-avx" , SYCLSupportedIntelArchs ::COREI7AVX},
43+ {" corei7" , SYCLSupportedIntelArchs ::COREI7},
44+ {" westmere" , SYCLSupportedIntelArchs ::WESTMERE},
45+ {" sandybridge" , SYCLSupportedIntelArchs ::SANDYBRIDGE},
46+ {" ivybridge" , SYCLSupportedIntelArchs ::IVYBRIDGE},
47+ {" broadwell" , SYCLSupportedIntelArchs ::BROADWELL},
48+ {" coffeelake" , SYCLSupportedIntelArchs ::COFFEELAKE},
49+ {" alderlake" , SYCLSupportedIntelArchs ::ALDERLAKE},
50+ {" skylake" , SYCLSupportedIntelArchs ::SKYLAKE},
51+ {" skx" , SYCLSupportedIntelArchs ::SKX},
52+ {" cascadelake" , SYCLSupportedIntelArchs ::CASCADELAKE},
53+ {" icelake-client" , SYCLSupportedIntelArchs ::ICELAKECLIENT},
54+ {" icelake-server" , SYCLSupportedIntelArchs ::ICELAKESERVER},
55+ {" sapphirerapids" , SYCLSupportedIntelArchs ::SAPPHIRERAPIDS},
56+ {" graniterapids" , SYCLSupportedIntelArchs ::GRANITERAPIDS},
5757 // Intel GPU mapping.
58- {" bdw" , SYCLSupportedOffloadArchs::BDW},
59- {" skl" , SYCLSupportedOffloadArchs::SKL},
60- {" kbl" , SYCLSupportedOffloadArchs::KBL},
61- {" cfl" , SYCLSupportedOffloadArchs::CFL},
62- {" apl" , SYCLSupportedOffloadArchs::APL},
63- {" bxt" , SYCLSupportedOffloadArchs::BXT},
64- {" glk" , SYCLSupportedOffloadArchs::GLK},
65- {" whl" , SYCLSupportedOffloadArchs::WHL},
66- {" aml" , SYCLSupportedOffloadArchs::AML},
67- {" cml" , SYCLSupportedOffloadArchs::CML},
68- {" icllp" , SYCLSupportedOffloadArchs::ICLLP},
69- {" icl" , SYCLSupportedOffloadArchs::ICL},
70- {" ehl" , SYCLSupportedOffloadArchs::EHL},
71- {" jsl" , SYCLSupportedOffloadArchs::JSL},
72- {" tgllp" , SYCLSupportedOffloadArchs::TGLLP},
73- {" tgl" , SYCLSupportedOffloadArchs::TGL},
74- {" rkl" , SYCLSupportedOffloadArchs::RKL},
75- {" adl_s" , SYCLSupportedOffloadArchs::ADL_S},
76- {" rpl_s" , SYCLSupportedOffloadArchs::RPL_S},
77- {" adl_p" , SYCLSupportedOffloadArchs::ADL_P},
78- {" adl_n" , SYCLSupportedOffloadArchs::ADL_N},
79- {" dg1" , SYCLSupportedOffloadArchs::DG1},
80- {" acm_g10" , SYCLSupportedOffloadArchs::ACM_G10},
81- {" dg2_g10" , SYCLSupportedOffloadArchs::DG2_G10},
82- {" acm_g11" , SYCLSupportedOffloadArchs::ACM_G11},
83- {" dg2_g10" , SYCLSupportedOffloadArchs::DG2_G10},
84- {" dg2_g11" , SYCLSupportedOffloadArchs::DG2_G11},
85- {" acm_g12" , SYCLSupportedOffloadArchs::ACM_G12},
86- {" dg2_g12" , SYCLSupportedOffloadArchs::DG2_G12},
87- {" pvc" , SYCLSupportedOffloadArchs::PVC},
88- {" pvc_vg" , SYCLSupportedOffloadArchs::PVC_VG},
89- {" mtl_u" , SYCLSupportedOffloadArchs::MTL_U},
90- {" mtl_s" , SYCLSupportedOffloadArchs::MTL_S},
91- {" arl_u" , SYCLSupportedOffloadArchs::ARL_U},
92- {" arl_s" , SYCLSupportedOffloadArchs::ARL_S},
93- {" mtl_h" , SYCLSupportedOffloadArchs::MTL_H},
94- {" arl_h" , SYCLSupportedOffloadArchs::ARL_H},
95- {" bmg_g21" , SYCLSupportedOffloadArchs::BMG_G21},
96- {" lnl_m" , SYCLSupportedOffloadArchs::LNL_M},
97- // AMD GPU Mapping
98- {" gfx700" , SYCLSupportedOffloadArchs::GFX700},
99- {" gfx701" , SYCLSupportedOffloadArchs::GFX701},
100- {" gfx702" , SYCLSupportedOffloadArchs::GFX702},
101- {" gfx801" , SYCLSupportedOffloadArchs::GFX801},
102- {" gfx802" , SYCLSupportedOffloadArchs::GFX802},
103- {" gfx803" , SYCLSupportedOffloadArchs::GFX803},
104- {" gfx805" , SYCLSupportedOffloadArchs::GFX805},
105- {" gfx810" , SYCLSupportedOffloadArchs::GFX810},
106- {" gfx900" , SYCLSupportedOffloadArchs::GFX900},
107- {" gfx902" , SYCLSupportedOffloadArchs::GFX902},
108- {" gfx904" , SYCLSupportedOffloadArchs::GFX904},
109- {" gfx906" , SYCLSupportedOffloadArchs::GFX906},
110- {" gfx908" , SYCLSupportedOffloadArchs::GFX908},
111- {" gfx909" , SYCLSupportedOffloadArchs::GFX909},
112- {" gfx90a" , SYCLSupportedOffloadArchs::GFX90A},
113- {" gfx90c" , SYCLSupportedOffloadArchs::GFX90C},
114- {" gfx940" , SYCLSupportedOffloadArchs::GFX940},
115- {" gfx941" , SYCLSupportedOffloadArchs::GFX941},
116- {" gfx942" , SYCLSupportedOffloadArchs::GFX942},
117- {" gfx1010" , SYCLSupportedOffloadArchs::GFX1010},
118- {" gfx1011" , SYCLSupportedOffloadArchs::GFX1011},
119- {" gfx1012" , SYCLSupportedOffloadArchs::GFX1012},
120- {" gfx1013" , SYCLSupportedOffloadArchs::GFX1013},
121- {" gfx1030" , SYCLSupportedOffloadArchs::GFX1030},
122- {" gfx1031" , SYCLSupportedOffloadArchs::GFX1031},
123- {" gfx1032" , SYCLSupportedOffloadArchs::GFX1032},
124- {" gfx1033" , SYCLSupportedOffloadArchs::GFX1033},
125- {" gfx1034" , SYCLSupportedOffloadArchs::GFX1034},
126- {" gfx1035" , SYCLSupportedOffloadArchs::GFX1035},
127- {" gfx1036" , SYCLSupportedOffloadArchs::GFX1036},
128- {" gfx1100" , SYCLSupportedOffloadArchs::GFX1100},
129- {" gfx1101" , SYCLSupportedOffloadArchs::GFX1101},
130- {" gfx1102" , SYCLSupportedOffloadArchs::GFX1102},
131- {" gfx1103" , SYCLSupportedOffloadArchs::GFX1103},
132- {" gfx1150" , SYCLSupportedOffloadArchs::GFX1150},
133- {" gfx1151" , SYCLSupportedOffloadArchs::GFX1151},
134- {" gfx1200" , SYCLSupportedOffloadArchs::GFX1200},
135- {" gfx1201" , SYCLSupportedOffloadArchs::GFX1201},
136- // NVidia GPU Mapping.
137- {" sm_50" , SYCLSupportedOffloadArchs::SM_50},
138- {" sm_52" , SYCLSupportedOffloadArchs::SM_52},
139- {" sm_53" , SYCLSupportedOffloadArchs::SM_53},
140- {" sm_60" , SYCLSupportedOffloadArchs::SM_60},
141- {" sm_61" , SYCLSupportedOffloadArchs::SM_61},
142- {" sm_62" , SYCLSupportedOffloadArchs::SM_62},
143- {" sm_70" , SYCLSupportedOffloadArchs::SM_70},
144- {" sm_72" , SYCLSupportedOffloadArchs::SM_72},
145- {" sm_75" , SYCLSupportedOffloadArchs::SM_75},
146- {" sm_80" , SYCLSupportedOffloadArchs::SM_80},
147- {" sm_86" , SYCLSupportedOffloadArchs::SM_86},
148- {" sm_87" , SYCLSupportedOffloadArchs::SM_87},
149- {" sm_89" , SYCLSupportedOffloadArchs::SM_89},
150- {" sm_90" , SYCLSupportedOffloadArchs::SM_90},
151- {" sm_90a" , SYCLSupportedOffloadArchs::SM_90A}};
58+ {" bdw" , SYCLSupportedIntelArchs::BDW},
59+ {" skl" , SYCLSupportedIntelArchs::SKL},
60+ {" kbl" , SYCLSupportedIntelArchs::KBL},
61+ {" cfl" , SYCLSupportedIntelArchs::CFL},
62+ {" apl" , SYCLSupportedIntelArchs::APL},
63+ {" bxt" , SYCLSupportedIntelArchs::BXT},
64+ {" glk" , SYCLSupportedIntelArchs::GLK},
65+ {" whl" , SYCLSupportedIntelArchs::WHL},
66+ {" aml" , SYCLSupportedIntelArchs::AML},
67+ {" cml" , SYCLSupportedIntelArchs::CML},
68+ {" icllp" , SYCLSupportedIntelArchs::ICLLP},
69+ {" icl" , SYCLSupportedIntelArchs::ICL},
70+ {" ehl" , SYCLSupportedIntelArchs::EHL},
71+ {" jsl" , SYCLSupportedIntelArchs::JSL},
72+ {" tgllp" , SYCLSupportedIntelArchs::TGLLP},
73+ {" tgl" , SYCLSupportedIntelArchs::TGL},
74+ {" rkl" , SYCLSupportedIntelArchs::RKL},
75+ {" adl_s" , SYCLSupportedIntelArchs::ADL_S},
76+ {" rpl_s" , SYCLSupportedIntelArchs::RPL_S},
77+ {" adl_p" , SYCLSupportedIntelArchs::ADL_P},
78+ {" adl_n" , SYCLSupportedIntelArchs::ADL_N},
79+ {" dg1" , SYCLSupportedIntelArchs::DG1},
80+ {" acm_g10" , SYCLSupportedIntelArchs::ACM_G10},
81+ {" dg2_g10" , SYCLSupportedIntelArchs::DG2_G10},
82+ {" acm_g11" , SYCLSupportedIntelArchs::ACM_G11},
83+ {" dg2_g10" , SYCLSupportedIntelArchs::DG2_G10},
84+ {" dg2_g11" , SYCLSupportedIntelArchs::DG2_G11},
85+ {" acm_g12" , SYCLSupportedIntelArchs::ACM_G12},
86+ {" dg2_g12" , SYCLSupportedIntelArchs::DG2_G12},
87+ {" pvc" , SYCLSupportedIntelArchs::PVC},
88+ {" pvc_vg" , SYCLSupportedIntelArchs::PVC_VG},
89+ {" mtl_u" , SYCLSupportedIntelArchs::MTL_U},
90+ {" mtl_s" , SYCLSupportedIntelArchs::MTL_S},
91+ {" arl_u" , SYCLSupportedIntelArchs::ARL_U},
92+ {" arl_s" , SYCLSupportedIntelArchs::ARL_S},
93+ {" mtl_h" , SYCLSupportedIntelArchs::MTL_H},
94+ {" arl_h" , SYCLSupportedIntelArchs::ARL_H},
95+ {" bmg_g21" , SYCLSupportedIntelArchs::BMG_G21},
96+ {" lnl_m" , SYCLSupportedIntelArchs::LNL_M}};
15297
15398// Check if the user provided value for --offload-arch is a valid
154- // SYCL supported AOT target.
155- SYCLSupportedOffloadArchs
99+ // SYCL supported Intel AOT target.
100+ SYCLSupportedIntelArchs
156101clang::driver::StringToOffloadArchSYCL (llvm::StringRef ArchNameAsString) {
157102 auto result = std::find_if (
158103 std::begin (StringToArchNamesMap), std::end (StringToArchNamesMap),
159104 [ArchNameAsString](const StringToOffloadArchSYCLMap &map) {
160105 return ArchNameAsString == map.ArchName ;
161106 });
162107 if (result == std::end (StringToArchNamesMap))
163- return SYCLSupportedOffloadArchs ::UNKNOWN;
108+ return SYCLSupportedIntelArchs ::UNKNOWN;
164109 return result->IntelArch ;
165110}
166111
0 commit comments