2013-05-04 01:21:14 +08:00
|
|
|
//===-- Processors.td - R600 Processor definitions ------------------------===//
|
2012-12-12 05:25:42 +08: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-04-30 08:14:17 +08:00
|
|
|
def : Proc<"", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureR600ALUInst, FeatureVertexCache, FeatureFetchLimit8]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"r600", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureR600ALUInst , FeatureVertexCache, FeatureFetchLimit8]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"rs880", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureR600ALUInst, FeatureFetchLimit8]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"rv670", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureR600ALUInst, FeatureFP64, FeatureVertexCache, FeatureFetchLimit8]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"rv710", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"rv730", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"rv770", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureFP64, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"cedar", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"redwood", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"sumo", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"juniper", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"cypress", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureFP64, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"barts", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"turks", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureVertexCache, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"caicos", R600_VLIW5_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureFetchLimit16]>;
|
2013-04-30 08:14:17 +08:00
|
|
|
def : Proc<"cayman", R600_VLIW4_Itin,
|
2013-06-08 04:28:55 +08:00
|
|
|
[FeatureByteAddress, FeatureImages, FeatureFP64, FeatureFetchLimit16]>;
|
|
|
|
|
|
|
|
def : Proc<"SI", SI_Itin, [Feature64BitPtr, FeatureFP64]>;
|
2013-04-06 07:31:35 +08:00
|
|
|
def : Proc<"tahiti", SI_Itin, [Feature64BitPtr, FeatureFP64]>;
|
|
|
|
def : Proc<"pitcairn", SI_Itin, [Feature64BitPtr, FeatureFP64]>;
|
|
|
|
def : Proc<"verde", SI_Itin, [Feature64BitPtr, FeatureFP64]>;
|
|
|
|
def : Proc<"oland", SI_Itin, [Feature64BitPtr, FeatureFP64]>;
|
2013-05-14 22:42:56 +08:00
|
|
|
def : Proc<"hainan", SI_Itin, [Feature64BitPtr, FeatureFP64]>;
|