xref: /aosp_15_r20/external/llvm/lib/Target/AMDGPU/Processors.td (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker//===-- Processors.td - R600 Processor definitions ------------------------===//
2*9880d681SAndroid Build Coastguard Worker//
3*9880d681SAndroid Build Coastguard Worker//                     The LLVM Compiler Infrastructure
4*9880d681SAndroid Build Coastguard Worker//
5*9880d681SAndroid Build Coastguard Worker// This file is distributed under the University of Illinois Open Source
6*9880d681SAndroid Build Coastguard Worker// License. See LICENSE.TXT for details.
7*9880d681SAndroid Build Coastguard Worker//
8*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
9*9880d681SAndroid Build Coastguard Worker
10*9880d681SAndroid Build Coastguard Workerclass Proc<string Name, ProcessorItineraries itin, list<SubtargetFeature> Features>
11*9880d681SAndroid Build Coastguard Worker: Processor<Name, itin, Features>;
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
14*9880d681SAndroid Build Coastguard Worker// R600
15*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
16*9880d681SAndroid Build Coastguard Workerdef : Proc<"r600",       R600_VLIW5_Itin,
17*9880d681SAndroid Build Coastguard Worker    [FeatureR600, FeatureVertexCache, FeatureWavefrontSize64]>;
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard Workerdef : Proc<"r630",       R600_VLIW5_Itin,
20*9880d681SAndroid Build Coastguard Worker    [FeatureR600, FeatureVertexCache, FeatureWavefrontSize32]>;
21*9880d681SAndroid Build Coastguard Worker
22*9880d681SAndroid Build Coastguard Workerdef : Proc<"rs880",      R600_VLIW5_Itin,
23*9880d681SAndroid Build Coastguard Worker    [FeatureR600, FeatureWavefrontSize16]>;
24*9880d681SAndroid Build Coastguard Worker
25*9880d681SAndroid Build Coastguard Workerdef : Proc<"rv670",      R600_VLIW5_Itin,
26*9880d681SAndroid Build Coastguard Worker    [FeatureR600, FeatureFP64, FeatureVertexCache, FeatureWavefrontSize64]>;
27*9880d681SAndroid Build Coastguard Worker
28*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
29*9880d681SAndroid Build Coastguard Worker// R700
30*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
31*9880d681SAndroid Build Coastguard Worker
32*9880d681SAndroid Build Coastguard Workerdef : Proc<"rv710",      R600_VLIW5_Itin,
33*9880d681SAndroid Build Coastguard Worker    [FeatureR700, FeatureVertexCache, FeatureWavefrontSize32]>;
34*9880d681SAndroid Build Coastguard Worker
35*9880d681SAndroid Build Coastguard Workerdef : Proc<"rv730",      R600_VLIW5_Itin,
36*9880d681SAndroid Build Coastguard Worker    [FeatureR700, FeatureVertexCache, FeatureWavefrontSize32]>;
37*9880d681SAndroid Build Coastguard Worker
38*9880d681SAndroid Build Coastguard Workerdef : Proc<"rv770",      R600_VLIW5_Itin,
39*9880d681SAndroid Build Coastguard Worker    [FeatureR700, FeatureFP64, FeatureVertexCache, FeatureWavefrontSize64]>;
40*9880d681SAndroid Build Coastguard Worker
41*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
42*9880d681SAndroid Build Coastguard Worker// Evergreen
43*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
44*9880d681SAndroid Build Coastguard Worker
45*9880d681SAndroid Build Coastguard Workerdef : Proc<"cedar",      R600_VLIW5_Itin,
46*9880d681SAndroid Build Coastguard Worker    [FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize32,
47*9880d681SAndroid Build Coastguard Worker     FeatureCFALUBug]>;
48*9880d681SAndroid Build Coastguard Worker
49*9880d681SAndroid Build Coastguard Workerdef : Proc<"redwood",    R600_VLIW5_Itin,
50*9880d681SAndroid Build Coastguard Worker    [FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize64,
51*9880d681SAndroid Build Coastguard Worker     FeatureCFALUBug]>;
52*9880d681SAndroid Build Coastguard Worker
53*9880d681SAndroid Build Coastguard Workerdef : Proc<"sumo",       R600_VLIW5_Itin,
54*9880d681SAndroid Build Coastguard Worker    [FeatureEvergreen, FeatureWavefrontSize64, FeatureCFALUBug]>;
55*9880d681SAndroid Build Coastguard Worker
56*9880d681SAndroid Build Coastguard Workerdef : Proc<"juniper",    R600_VLIW5_Itin,
57*9880d681SAndroid Build Coastguard Worker    [FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize64]>;
58*9880d681SAndroid Build Coastguard Worker
59*9880d681SAndroid Build Coastguard Workerdef : Proc<"cypress",    R600_VLIW5_Itin,
60*9880d681SAndroid Build Coastguard Worker    [FeatureEvergreen, FeatureFP64, FeatureVertexCache,
61*9880d681SAndroid Build Coastguard Worker     FeatureWavefrontSize64]>;
62*9880d681SAndroid Build Coastguard Worker
63*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
64*9880d681SAndroid Build Coastguard Worker// Northern Islands
65*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
66*9880d681SAndroid Build Coastguard Worker
67*9880d681SAndroid Build Coastguard Workerdef : Proc<"barts",      R600_VLIW5_Itin,
68*9880d681SAndroid Build Coastguard Worker    [FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]>;
69*9880d681SAndroid Build Coastguard Worker
70*9880d681SAndroid Build Coastguard Workerdef : Proc<"turks",      R600_VLIW5_Itin,
71*9880d681SAndroid Build Coastguard Worker    [FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]>;
72*9880d681SAndroid Build Coastguard Worker
73*9880d681SAndroid Build Coastguard Workerdef : Proc<"caicos",     R600_VLIW5_Itin,
74*9880d681SAndroid Build Coastguard Worker    [FeatureNorthernIslands, FeatureCFALUBug]>;
75*9880d681SAndroid Build Coastguard Worker
76*9880d681SAndroid Build Coastguard Workerdef : Proc<"cayman",     R600_VLIW4_Itin,
77*9880d681SAndroid Build Coastguard Worker    [FeatureNorthernIslands, FeatureFP64, FeatureCaymanISA]>;
78*9880d681SAndroid Build Coastguard Worker
79*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
80*9880d681SAndroid Build Coastguard Worker// Southern Islands
81*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
82*9880d681SAndroid Build Coastguard Worker
83*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"SI", SIFullSpeedModel,
84*9880d681SAndroid Build Coastguard Worker  [FeatureSouthernIslands, FeatureFastFMAF32, HalfRate64Ops]
85*9880d681SAndroid Build Coastguard Worker>;
86*9880d681SAndroid Build Coastguard Worker
87*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"tahiti", SIFullSpeedModel,
88*9880d681SAndroid Build Coastguard Worker  [FeatureSouthernIslands, FeatureFastFMAF32, HalfRate64Ops]
89*9880d681SAndroid Build Coastguard Worker>;
90*9880d681SAndroid Build Coastguard Worker
91*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"pitcairn", SIQuarterSpeedModel, [FeatureSouthernIslands]>;
92*9880d681SAndroid Build Coastguard Worker
93*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"verde",    SIQuarterSpeedModel, [FeatureSouthernIslands]>;
94*9880d681SAndroid Build Coastguard Worker
95*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"oland",    SIQuarterSpeedModel, [FeatureSouthernIslands]>;
96*9880d681SAndroid Build Coastguard Worker
97*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"hainan",   SIQuarterSpeedModel, [FeatureSouthernIslands]>;
98*9880d681SAndroid Build Coastguard Worker
99*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
100*9880d681SAndroid Build Coastguard Worker// Sea Islands
101*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
102*9880d681SAndroid Build Coastguard Worker
103*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"bonaire",    SIQuarterSpeedModel,
104*9880d681SAndroid Build Coastguard Worker  [FeatureSeaIslands, FeatureLDSBankCount32, FeatureISAVersion7_0_0]
105*9880d681SAndroid Build Coastguard Worker>;
106*9880d681SAndroid Build Coastguard Worker
107*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"kabini",     SIQuarterSpeedModel,
108*9880d681SAndroid Build Coastguard Worker  [FeatureSeaIslands, FeatureLDSBankCount16]
109*9880d681SAndroid Build Coastguard Worker>;
110*9880d681SAndroid Build Coastguard Worker
111*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"kaveri",     SIQuarterSpeedModel,
112*9880d681SAndroid Build Coastguard Worker  [FeatureSeaIslands, FeatureLDSBankCount32, FeatureISAVersion7_0_0]
113*9880d681SAndroid Build Coastguard Worker>;
114*9880d681SAndroid Build Coastguard Worker
115*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"hawaii", SIFullSpeedModel,
116*9880d681SAndroid Build Coastguard Worker  [FeatureSeaIslands, FeatureFastFMAF32, HalfRate64Ops,
117*9880d681SAndroid Build Coastguard Worker   FeatureLDSBankCount32, FeatureISAVersion7_0_1]
118*9880d681SAndroid Build Coastguard Worker>;
119*9880d681SAndroid Build Coastguard Worker
120*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"mullins",    SIQuarterSpeedModel,
121*9880d681SAndroid Build Coastguard Worker  [FeatureSeaIslands, FeatureLDSBankCount16]>;
122*9880d681SAndroid Build Coastguard Worker
123*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
124*9880d681SAndroid Build Coastguard Worker// Volcanic Islands
125*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
126*9880d681SAndroid Build Coastguard Worker
127*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"tonga",   SIQuarterSpeedModel,
128*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureSGPRInitBug, FeatureISAVersion8_0_0,
129*9880d681SAndroid Build Coastguard Worker   FeatureLDSBankCount32]
130*9880d681SAndroid Build Coastguard Worker>;
131*9880d681SAndroid Build Coastguard Worker
132*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"iceland", SIQuarterSpeedModel,
133*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureSGPRInitBug, FeatureISAVersion8_0_0,
134*9880d681SAndroid Build Coastguard Worker   FeatureLDSBankCount32]
135*9880d681SAndroid Build Coastguard Worker>;
136*9880d681SAndroid Build Coastguard Worker
137*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"carrizo", SIQuarterSpeedModel,
138*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureISAVersion8_0_1, FeatureLDSBankCount32]
139*9880d681SAndroid Build Coastguard Worker>;
140*9880d681SAndroid Build Coastguard Worker
141*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"fiji", SIQuarterSpeedModel,
142*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureISAVersion8_0_3, FeatureLDSBankCount32]
143*9880d681SAndroid Build Coastguard Worker>;
144*9880d681SAndroid Build Coastguard Worker
145*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"stoney", SIQuarterSpeedModel,
146*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureISAVersion8_0_1, FeatureLDSBankCount16]
147*9880d681SAndroid Build Coastguard Worker>;
148*9880d681SAndroid Build Coastguard Worker
149*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"polaris10", SIQuarterSpeedModel,
150*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureISAVersion8_0_1, FeatureLDSBankCount32]
151*9880d681SAndroid Build Coastguard Worker>;
152*9880d681SAndroid Build Coastguard Worker
153*9880d681SAndroid Build Coastguard Workerdef : ProcessorModel<"polaris11", SIQuarterSpeedModel,
154*9880d681SAndroid Build Coastguard Worker  [FeatureVolcanicIslands, FeatureISAVersion8_0_1, FeatureLDSBankCount32]
155*9880d681SAndroid Build Coastguard Worker>;
156