1//===-- GCNProcessors.td - GCN Processor definitions ----------------------===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8 9// The code produced for "generic" is only useful for tests and cannot 10// reasonably be expected to execute on any particular target. 11def : ProcessorModel<"generic", NoSchedModel, 12 [FeatureGDS, FeatureGWS] 13>; 14 15def : ProcessorModel<"generic-hsa", NoSchedModel, 16 [FeatureGDS, FeatureGWS, FeatureFlatAddressSpace] 17>; 18 19//===------------------------------------------------------------===// 20// GCN GFX6 (Southern Islands (SI)). 21//===------------------------------------------------------------===// 22 23def : ProcessorModel<"gfx600", SIFullSpeedModel, 24 FeatureISAVersion6_0_0.Features 25>; 26 27def : ProcessorModel<"tahiti", SIFullSpeedModel, 28 FeatureISAVersion6_0_0.Features 29>; 30 31def : ProcessorModel<"gfx601", SIQuarterSpeedModel, 32 FeatureISAVersion6_0_1.Features 33>; 34 35def : ProcessorModel<"pitcairn", SIQuarterSpeedModel, 36 FeatureISAVersion6_0_1.Features 37>; 38 39def : ProcessorModel<"verde", SIQuarterSpeedModel, 40 FeatureISAVersion6_0_1.Features 41>; 42 43def : ProcessorModel<"gfx602", SIQuarterSpeedModel, 44 FeatureISAVersion6_0_2.Features 45>; 46 47def : ProcessorModel<"hainan", SIQuarterSpeedModel, 48 FeatureISAVersion6_0_2.Features 49>; 50 51def : ProcessorModel<"oland", SIQuarterSpeedModel, 52 FeatureISAVersion6_0_2.Features 53>; 54 55//===------------------------------------------------------------===// 56// GCN GFX7 (Sea Islands (CI)). 57//===------------------------------------------------------------===// 58 59def : ProcessorModel<"gfx700", SIQuarterSpeedModel, 60 FeatureISAVersion7_0_0.Features 61>; 62 63def : ProcessorModel<"kaveri", SIQuarterSpeedModel, 64 FeatureISAVersion7_0_0.Features 65>; 66 67def : ProcessorModel<"gfx701", SIFullSpeedModel, 68 FeatureISAVersion7_0_1.Features 69>; 70 71def : ProcessorModel<"hawaii", SIFullSpeedModel, 72 FeatureISAVersion7_0_1.Features 73>; 74 75def : ProcessorModel<"gfx702", SIQuarterSpeedModel, 76 FeatureISAVersion7_0_2.Features 77>; 78 79def : ProcessorModel<"gfx703", SIQuarterSpeedModel, 80 FeatureISAVersion7_0_3.Features 81>; 82 83def : ProcessorModel<"kabini", SIQuarterSpeedModel, 84 FeatureISAVersion7_0_3.Features 85>; 86 87def : ProcessorModel<"mullins", SIQuarterSpeedModel, 88 FeatureISAVersion7_0_3.Features 89>; 90 91def : ProcessorModel<"gfx704", SIQuarterSpeedModel, 92 FeatureISAVersion7_0_4.Features 93>; 94 95def : ProcessorModel<"bonaire", SIQuarterSpeedModel, 96 FeatureISAVersion7_0_4.Features 97>; 98 99def : ProcessorModel<"gfx705", SIQuarterSpeedModel, 100 FeatureISAVersion7_0_5.Features 101>; 102 103//===------------------------------------------------------------===// 104// GCN GFX8 (Volcanic Islands (VI)). 105//===------------------------------------------------------------===// 106 107def : ProcessorModel<"gfx801", SIQuarterSpeedModel, 108 FeatureISAVersion8_0_1.Features 109>; 110 111def : ProcessorModel<"carrizo", SIQuarterSpeedModel, 112 FeatureISAVersion8_0_1.Features 113>; 114 115def : ProcessorModel<"gfx802", SIQuarterSpeedModel, 116 FeatureISAVersion8_0_2.Features 117>; 118 119def : ProcessorModel<"iceland", SIQuarterSpeedModel, 120 FeatureISAVersion8_0_2.Features 121>; 122 123def : ProcessorModel<"tonga", SIQuarterSpeedModel, 124 FeatureISAVersion8_0_2.Features 125>; 126 127def : ProcessorModel<"gfx803", SIQuarterSpeedModel, 128 FeatureISAVersion8_0_3.Features 129>; 130 131def : ProcessorModel<"fiji", SIQuarterSpeedModel, 132 FeatureISAVersion8_0_3.Features 133>; 134 135def : ProcessorModel<"polaris10", SIQuarterSpeedModel, 136 FeatureISAVersion8_0_3.Features 137>; 138 139def : ProcessorModel<"polaris11", SIQuarterSpeedModel, 140 FeatureISAVersion8_0_3.Features 141>; 142 143def : ProcessorModel<"gfx805", SIQuarterSpeedModel, 144 FeatureISAVersion8_0_5.Features 145>; 146 147def : ProcessorModel<"tongapro", SIQuarterSpeedModel, 148 FeatureISAVersion8_0_5.Features 149>; 150 151def : ProcessorModel<"gfx810", SIQuarterSpeedModel, 152 FeatureISAVersion8_1_0.Features 153>; 154 155def : ProcessorModel<"stoney", SIQuarterSpeedModel, 156 FeatureISAVersion8_1_0.Features 157>; 158 159//===------------------------------------------------------------===// 160// GCN GFX9. 161//===------------------------------------------------------------===// 162 163def : ProcessorModel<"gfx900", SIQuarterSpeedModel, 164 FeatureISAVersion9_0_0.Features 165>; 166 167def : ProcessorModel<"gfx902", SIQuarterSpeedModel, 168 FeatureISAVersion9_0_2.Features 169>; 170 171def : ProcessorModel<"gfx904", SIQuarterSpeedModel, 172 FeatureISAVersion9_0_4.Features 173>; 174 175def : ProcessorModel<"gfx906", SIQuarterSpeedModel, 176 FeatureISAVersion9_0_6.Features 177>; 178 179def : ProcessorModel<"gfx908", SIQuarterSpeedModel, 180 FeatureISAVersion9_0_8.Features 181>; 182 183def : ProcessorModel<"gfx909", SIQuarterSpeedModel, 184 FeatureISAVersion9_0_9.Features 185>; 186 187def : ProcessorModel<"gfx90a", SIDPFullSpeedModel, 188 FeatureISAVersion9_0_A.Features 189>; 190 191def : ProcessorModel<"gfx90c", SIQuarterSpeedModel, 192 FeatureISAVersion9_0_C.Features 193>; 194 195def : ProcessorModel<"gfx940", SIDPGFX940FullSpeedModel, 196 FeatureISAVersion9_4_0.Features 197>; 198 199def : ProcessorModel<"gfx941", SIDPGFX940FullSpeedModel, 200 FeatureISAVersion9_4_1.Features 201>; 202 203def : ProcessorModel<"gfx942", SIDPGFX940FullSpeedModel, 204 FeatureISAVersion9_4_2.Features 205>; 206 207def : ProcessorModel<"gfx950", SIDPGFX950FullSpeedModel, 208 FeatureISAVersion9_5_0.Features 209>; 210 211// [gfx900, gfx902, gfx904, gfx906, gfx909, gfx90c] 212def : ProcessorModel<"gfx9-generic", SIQuarterSpeedModel, 213 FeatureISAVersion9_Generic.Features 214>; 215 216// [gfx940, gfx941, gfx942] 217def : ProcessorModel<"gfx9-4-generic", SIDPGFX940FullSpeedModel, 218 FeatureISAVersion9_4_Generic.Features 219>; 220 221//===----------------------------------------------------------------------===// 222// GCN GFX10. 223//===----------------------------------------------------------------------===// 224 225def : ProcessorModel<"gfx1010", GFX10SpeedModel, 226 FeatureISAVersion10_1_0.Features 227>; 228 229def : ProcessorModel<"gfx1011", GFX10SpeedModel, 230 FeatureISAVersion10_1_1.Features 231>; 232 233def : ProcessorModel<"gfx1012", GFX10SpeedModel, 234 FeatureISAVersion10_1_2.Features 235>; 236 237def : ProcessorModel<"gfx1013", GFX10SpeedModel, 238 FeatureISAVersion10_1_3.Features 239>; 240 241def : ProcessorModel<"gfx1030", GFX10SpeedModel, 242 FeatureISAVersion10_3_0.Features 243>; 244 245def : ProcessorModel<"gfx1031", GFX10SpeedModel, 246 FeatureISAVersion10_3_0.Features 247>; 248 249def : ProcessorModel<"gfx1032", GFX10SpeedModel, 250 FeatureISAVersion10_3_0.Features 251>; 252 253def : ProcessorModel<"gfx1033", GFX10SpeedModel, 254 FeatureISAVersion10_3_0.Features 255>; 256 257def : ProcessorModel<"gfx1034", GFX10SpeedModel, 258 FeatureISAVersion10_3_0.Features 259>; 260 261def : ProcessorModel<"gfx1035", GFX10SpeedModel, 262 FeatureISAVersion10_3_0.Features 263>; 264 265def : ProcessorModel<"gfx1036", GFX10SpeedModel, 266 FeatureISAVersion10_3_0.Features 267>; 268 269// [gfx1010, gfx1011, gfx1012, gfx1013] 270def : ProcessorModel<"gfx10-1-generic", GFX10SpeedModel, 271 FeatureISAVersion10_1_Generic.Features 272>; 273 274// [gfx1030, gfx1031, gfx1032, gfx1033, gfx1034, gfx1035, gfx1036] 275def : ProcessorModel<"gfx10-3-generic", GFX10SpeedModel, 276 FeatureISAVersion10_3_Generic.Features 277>; 278 279//===----------------------------------------------------------------------===// 280// GCN GFX11. 281//===----------------------------------------------------------------------===// 282 283def : ProcessorModel<"gfx1100", GFX11SpeedModel, 284 FeatureISAVersion11_0_0.Features 285>; 286 287def : ProcessorModel<"gfx1101", GFX11SpeedModel, 288 FeatureISAVersion11_0_1.Features 289>; 290 291def : ProcessorModel<"gfx1102", GFX11SpeedModel, 292 FeatureISAVersion11_0_2.Features 293>; 294 295def : ProcessorModel<"gfx1103", GFX11SpeedModel, 296 FeatureISAVersion11_0_3.Features 297>; 298 299def : ProcessorModel<"gfx1150", GFX11SpeedModel, 300 FeatureISAVersion11_5_0.Features 301>; 302 303def : ProcessorModel<"gfx1151", GFX11SpeedModel, 304 FeatureISAVersion11_5_1.Features 305>; 306 307def : ProcessorModel<"gfx1152", GFX11SpeedModel, 308 FeatureISAVersion11_5_2.Features 309>; 310 311def : ProcessorModel<"gfx1153", GFX11SpeedModel, 312 FeatureISAVersion11_5_3.Features 313>; 314 315// [gfx1100, gfx1101, gfx1102, gfx1103, gfx1150, gfx1151, gfx1152, gfx1153] 316def : ProcessorModel<"gfx11-generic", GFX11SpeedModel, 317 FeatureISAVersion11_Generic.Features 318>; 319 320//===----------------------------------------------------------------------===// 321// GCN GFX12. 322//===----------------------------------------------------------------------===// 323 324def : ProcessorModel<"gfx1200", GFX12SpeedModel, 325 FeatureISAVersion12.Features 326>; 327 328def : ProcessorModel<"gfx1201", GFX12SpeedModel, 329 FeatureISAVersion12.Features 330>; 331 332// [gfx1200, gfx1201] 333def : ProcessorModel<"gfx12-generic", GFX12SpeedModel, 334 FeatureISAVersion12_Generic.Features 335>; 336