2013-05-03 17:21:14 +00:00
|
|
|
//===-- Processors.td - R600 Processor definitions ------------------------===//
|
2012-12-11 21:25:42 +00:00
|
|
|
//
|
|
|
|
// The LLVM Compiler Infrastructure
|
|
|
|
//
|
|
|
|
// This file is distributed under the University of Illinois Open Source
|
|
|
|
// License. See LICENSE.TXT for details.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
class Proc<string Name, ProcessorItineraries itin, list<SubtargetFeature> Features>
|
|
|
|
: Processor<Name, itin, Features>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// R600
|
|
|
|
//===----------------------------------------------------------------------===//
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"", R600_VLIW5_Itin,
|
2013-06-07 20:37:48 +00:00
|
|
|
[FeatureR600, FeatureVertexCache]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"r600", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureR600 , FeatureVertexCache, FeatureWavefrontSize64]>;
|
|
|
|
|
|
|
|
def : Proc<"r630", R600_VLIW5_Itin,
|
|
|
|
[FeatureR600, FeatureVertexCache, FeatureWavefrontSize32]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"rs880", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureR600, FeatureWavefrontSize16]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"rv670", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureR600, FeatureFP64, FeatureVertexCache, FeatureWavefrontSize64]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// R700
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"rv710", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureR700, FeatureVertexCache, FeatureWavefrontSize32]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"rv730", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureR700, FeatureVertexCache, FeatureWavefrontSize32]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"rv770", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureR700, FeatureFP64, FeatureVertexCache, FeatureWavefrontSize64]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// Evergreen
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"cedar", R600_VLIW5_Itin,
|
2014-01-23 16:18:02 +00:00
|
|
|
[FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize32,
|
|
|
|
FeatureCFALUBug]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"redwood", R600_VLIW5_Itin,
|
2014-01-23 16:18:02 +00:00
|
|
|
[FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize64,
|
|
|
|
FeatureCFALUBug]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"sumo", R600_VLIW5_Itin,
|
2014-01-23 16:18:02 +00:00
|
|
|
[FeatureEvergreen, FeatureWavefrontSize64, FeatureCFALUBug]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"juniper", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureEvergreen, FeatureVertexCache, FeatureWavefrontSize64]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"cypress", R600_VLIW5_Itin,
|
2014-01-22 21:55:40 +00:00
|
|
|
[FeatureEvergreen, FeatureFP64, FeatureVertexCache,
|
|
|
|
FeatureWavefrontSize64]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// Northern Islands
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"barts", R600_VLIW5_Itin,
|
2014-01-23 16:18:02 +00:00
|
|
|
[FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"turks", R600_VLIW5_Itin,
|
2014-01-23 16:18:02 +00:00
|
|
|
[FeatureNorthernIslands, FeatureVertexCache, FeatureCFALUBug]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"caicos", R600_VLIW5_Itin,
|
2014-01-23 16:18:02 +00:00
|
|
|
[FeatureNorthernIslands, FeatureCFALUBug]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-04-30 00:14:17 +00:00
|
|
|
def : Proc<"cayman", R600_VLIW4_Itin,
|
2013-06-07 20:37:48 +00:00
|
|
|
[FeatureNorthernIslands, FeatureFP64, FeatureCaymanISA]>;
|
2013-06-07 20:28:55 +00:00
|
|
|
|
2013-12-11 17:51:51 +00:00
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// Southern Islands
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
2013-06-07 20:37:48 +00:00
|
|
|
def : Proc<"SI", SI_Itin, [FeatureSouthernIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-06-07 20:37:48 +00:00
|
|
|
def : Proc<"tahiti", SI_Itin, [FeatureSouthernIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-06-07 20:37:48 +00:00
|
|
|
def : Proc<"pitcairn", SI_Itin, [FeatureSouthernIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-06-07 20:37:48 +00:00
|
|
|
def : Proc<"verde", SI_Itin, [FeatureSouthernIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-06-07 20:37:48 +00:00
|
|
|
def : Proc<"oland", SI_Itin, [FeatureSouthernIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-06-07 20:37:48 +00:00
|
|
|
def : Proc<"hainan", SI_Itin, [FeatureSouthernIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// Sea Islands
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
2013-10-29 16:37:28 +00:00
|
|
|
def : Proc<"bonaire", SI_Itin, [FeatureSeaIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-10-29 16:37:28 +00:00
|
|
|
def : Proc<"kabini", SI_Itin, [FeatureSeaIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-10-29 16:37:28 +00:00
|
|
|
def : Proc<"kaveri", SI_Itin, [FeatureSeaIslands]>;
|
2013-12-11 17:51:51 +00:00
|
|
|
|
2013-11-14 23:46:00 +00:00
|
|
|
def : Proc<"hawaii", SI_Itin, [FeatureSeaIslands]>;
|
2014-05-02 15:41:49 +00:00
|
|
|
|
|
|
|
def : Proc<"mullins", SI_Itin, [FeatureSeaIslands]>;
|