mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-13 23:18:58 +00:00
AMDGPU/NFC: Split Processors.td into GCNProcessors.td and R600Processors.td
Differential Revision: https://reviews.llvm.org/D39880 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@317920 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6850d9138b
commit
8f4df2fc0b
@ -769,8 +769,9 @@ class AMDGPUPat<dag pattern, dag result> : Pat<pattern, result>,
|
||||
|
||||
// Include AMDGPU TD files
|
||||
include "R600Schedule.td"
|
||||
include "R600Processors.td"
|
||||
include "SISchedule.td"
|
||||
include "Processors.td"
|
||||
include "GCNProcessors.td"
|
||||
include "AMDGPUInstrInfo.td"
|
||||
include "AMDGPUIntrinsics.td"
|
||||
include "AMDGPURegisterInfo.td"
|
||||
|
162
lib/Target/AMDGPU/GCNProcessors.td
Normal file
162
lib/Target/AMDGPU/GCNProcessors.td
Normal file
@ -0,0 +1,162 @@
|
||||
//===-- GCNProcessors.td - GCN Processor definitions ----------------------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// The code produced for "generic" is only useful for tests and cannot
|
||||
// reasonably be expected to execute on any particular target.
|
||||
def : ProcessorModel<"generic", NoSchedModel,
|
||||
[FeatureGCN, FeatureWavefrontSize64]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// GCN GFX6 (Southern Islands (SI)).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx600", SIFullSpeedModel,
|
||||
[FeatureISAVersion6_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"tahiti", SIFullSpeedModel,
|
||||
[FeatureISAVersion6_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx601", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"hainan", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"oland", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"pitcairn", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"verde", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// GCN GFX7 (Sea Islands (CI)).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx700", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"bonaire", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"kaveri", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx701", SIFullSpeedModel,
|
||||
[FeatureISAVersion7_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"hawaii", SIFullSpeedModel,
|
||||
[FeatureISAVersion7_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx702", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx703", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"kabini", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"mullins", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_3]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// GCN GFX8 (Volcanic Islands (VI)).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx800", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"iceland", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx801", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"carrizo", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx802", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"tonga", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx803", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"fiji", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"polaris10", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"polaris11", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx804", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_4]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx810", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_1_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"stoney", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_1_0]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// GCN GFX9.
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx900", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx901", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx902", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx903", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_3]
|
||||
>;
|
@ -1,4 +1,4 @@
|
||||
//===-- Processors.td - R600 Processor definitions ------------------------===//
|
||||
//===-- Processors.td - AMDGPU Processor definitions ----------------------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
@ -7,219 +7,6 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
class Proc<string Name, ProcessorItineraries itin, list<SubtargetFeature> Features>
|
||||
: Processor<Name, itin, Features>;
|
||||
|
||||
// The code produced for "generic" is only useful for tests and cannot
|
||||
// reasonably be expected to execute on any particular target.
|
||||
def : ProcessorModel<"generic", NoSchedModel, [
|
||||
FeatureGCN, FeatureWavefrontSize64
|
||||
]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// R600
|
||||
//===----------------------------------------------------------------------===//
|
||||
def : Proc<"r600", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureVertexCache, FeatureWavefrontSize64]>;
|
||||
|
||||
def : Proc<"r630", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureVertexCache, FeatureWavefrontSize32]>;
|
||||
|
||||
def : Proc<"rs880", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureWavefrontSize16]>;
|
||||
|
||||
def : Proc<"rv670", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureFP64, FeatureVertexCache, FeatureWavefrontSize64]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// R700
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Proc<"rv710", R600_VLIW5_Itin,
|
||||
[FeatureR700, FeatureVertexCache, FeatureWavefrontSize32]>;
|
||||
|
||||
def : Proc<"rv730", R600_VLIW5_Itin,
|
||||
[FeatureR700, FeatureVertexCache, FeatureWavefrontSize32]>;
|
||||
|
||||
def : Proc<"rv770", R600_VLIW5_Itin,
|
||||
[FeatureR700, FeatureFP64, FeatureVertexCache, FeatureWavefrontSize64]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Evergreen
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Proc<"cedar", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize32,
|
||||
FeatureCFALUBug]>;
|
||||
|
||||
def : Proc<"redwood", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize64,
|
||||
FeatureCFALUBug]>;
|
||||
|
||||
def : Proc<"sumo", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureWavefrontSize64, FeatureCFALUBug]>;
|
||||
|
||||
def : Proc<"juniper", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize64]>;
|
||||
|
||||
def : Proc<"cypress", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureFP64, FeatureVertexCache,
|
||||
FeatureWavefrontSize64]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Northern Islands
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Proc<"barts", R600_VLIW5_Itin,
|
||||
[FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]>;
|
||||
|
||||
def : Proc<"turks", R600_VLIW5_Itin,
|
||||
[FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]>;
|
||||
|
||||
def : Proc<"caicos", R600_VLIW5_Itin,
|
||||
[FeatureNorthernIslands, FeatureCFALUBug]>;
|
||||
|
||||
def : Proc<"cayman", R600_VLIW4_Itin,
|
||||
[FeatureNorthernIslands, FeatureFP64, FeatureCaymanISA]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Southern Islands
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx600", SIFullSpeedModel,
|
||||
[FeatureISAVersion6_0_0]>;
|
||||
|
||||
def : ProcessorModel<"tahiti", SIFullSpeedModel,
|
||||
[FeatureISAVersion6_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx601", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"pitcairn", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]>;
|
||||
|
||||
def : ProcessorModel<"verde", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]>;
|
||||
|
||||
def : ProcessorModel<"oland", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion6_0_1]>;
|
||||
|
||||
def : ProcessorModel<"hainan", SIQuarterSpeedModel, [FeatureISAVersion6_0_1]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Sea Islands
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx700", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"bonaire", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"kaveri", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx701", SIFullSpeedModel,
|
||||
[FeatureISAVersion7_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"hawaii", SIFullSpeedModel,
|
||||
[FeatureISAVersion7_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx702", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx703", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"kabini", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"mullins", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion7_0_3]>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Volcanic Islands
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"tonga", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"iceland", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"carrizo", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"fiji", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"stoney", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_1_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"polaris10", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"polaris11", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx800", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx801", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx802", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx803", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_3]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx804", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_0_4]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx810", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion8_1_0]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// GFX9
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : ProcessorModel<"gfx900", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_0]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx901", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_1]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx902", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_2]
|
||||
>;
|
||||
|
||||
def : ProcessorModel<"gfx903", SIQuarterSpeedModel,
|
||||
[FeatureISAVersion9_0_3]
|
||||
>;
|
||||
|
||||
FIXME: Deleting this file broke buildbots that don't do full rebuilds. This
|
||||
file is no longer used by the backend, so it can be deleted once all
|
||||
the buildbots update there dependencies.
|
||||
|
90
lib/Target/AMDGPU/R600Processors.td
Normal file
90
lib/Target/AMDGPU/R600Processors.td
Normal file
@ -0,0 +1,90 @@
|
||||
//===-- R600Processors.td - R600 Processor definitions --------------------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Radeon HD 2000/3000 Series (R600).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Processor<"r600", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureWavefrontSize64, FeatureVertexCache]
|
||||
>;
|
||||
|
||||
def : Processor<"r630", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureWavefrontSize32, FeatureVertexCache]
|
||||
>;
|
||||
|
||||
def : Processor<"rs880", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureWavefrontSize16]
|
||||
>;
|
||||
|
||||
def : Processor<"rv670", R600_VLIW5_Itin,
|
||||
[FeatureR600, FeatureWavefrontSize64, FeatureVertexCache, FeatureFP64]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Radeon HD 4000 Series (R700).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Processor<"rv710", R600_VLIW5_Itin,
|
||||
[FeatureR700, FeatureWavefrontSize32, FeatureVertexCache]
|
||||
>;
|
||||
|
||||
def : Processor<"rv730", R600_VLIW5_Itin,
|
||||
[FeatureR700, FeatureWavefrontSize32, FeatureVertexCache]
|
||||
>;
|
||||
|
||||
def : Processor<"rv770", R600_VLIW5_Itin,
|
||||
[FeatureR700, FeatureWavefrontSize64, FeatureVertexCache, FeatureFP64]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Radeon HD 5000 Series (Evergreen).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Processor<"cedar", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureWavefrontSize32, FeatureVertexCache,
|
||||
FeatureCFALUBug]
|
||||
>;
|
||||
|
||||
def : Processor<"cypress", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureWavefrontSize64, FeatureVertexCache, FeatureFP64]
|
||||
>;
|
||||
|
||||
def : Processor<"juniper", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureWavefrontSize64, FeatureVertexCache]
|
||||
>;
|
||||
|
||||
def : Processor<"redwood", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureWavefrontSize64, FeatureVertexCache,
|
||||
FeatureCFALUBug]
|
||||
>;
|
||||
|
||||
def : Processor<"sumo", R600_VLIW5_Itin,
|
||||
[FeatureEvergreen, FeatureWavefrontSize64, FeatureCFALUBug]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Radeon HD 6000 Series (Northern Islands).
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : Processor<"barts", R600_VLIW5_Itin,
|
||||
[FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]
|
||||
>;
|
||||
|
||||
def : Processor<"caicos", R600_VLIW5_Itin,
|
||||
[FeatureNorthernIslands, FeatureCFALUBug]
|
||||
>;
|
||||
|
||||
def : Processor<"cayman", R600_VLIW4_Itin,
|
||||
[FeatureNorthernIslands, FeatureFP64, FeatureCaymanISA]
|
||||
>;
|
||||
|
||||
def : Processor<"turks", R600_VLIW5_Itin,
|
||||
[FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]
|
||||
>;
|
Loading…
Reference in New Issue
Block a user