//===-- Processors.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. // //===----------------------------------------------------------------------===// class Proc Features> : Processor; //===----------------------------------------------------------------------===// // 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<"SI", 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] >;