mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
AMDGPU: Split vi-insts subtarget feature
This will be more useful for marking builtins acceptable for which subtargets. llvm-svn: 262121
This commit is contained in:
parent
7522feaa7e
commit
6ecfce9ba2
@ -149,10 +149,16 @@ def FeatureCIInsts : SubtargetFeature<"ci-insts",
|
||||
"Additional intstructions for CI+"
|
||||
>;
|
||||
|
||||
def FeatureVIInsts : SubtargetFeature<"vi-insts",
|
||||
"VIInsts",
|
||||
def FeatureSMemRealTime : SubtargetFeature<"s-memrealtime",
|
||||
"HasSMemRealTime",
|
||||
"true",
|
||||
"Additional intstructions for VI+"
|
||||
"Has s_memrealtime instruction"
|
||||
>;
|
||||
|
||||
def Feature16BitInsts : SubtargetFeature<"16-bit-insts",
|
||||
"Has16BitInsts",
|
||||
"true",
|
||||
"Has i16/f16 instructions"
|
||||
>;
|
||||
|
||||
//===------------------------------------------------------------===//
|
||||
@ -314,7 +320,9 @@ def FeatureSeaIslands : SubtargetFeatureGeneration<"SEA_ISLANDS",
|
||||
def FeatureVolcanicIslands : SubtargetFeatureGeneration<"VOLCANIC_ISLANDS",
|
||||
[FeatureFP64, FeatureLocalMemorySize65536,
|
||||
FeatureWavefrontSize64, FeatureFlatAddressSpace, FeatureGCN,
|
||||
FeatureGCN3Encoding, FeatureCIInsts, FeatureVIInsts]
|
||||
FeatureGCN3Encoding, FeatureCIInsts, Feature16BitInsts,
|
||||
FeatureSMemRealTime
|
||||
]
|
||||
>;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
@ -81,7 +81,8 @@ AMDGPUSubtarget::AMDGPUSubtarget(const Triple &TT, StringRef GPU, StringRef FS,
|
||||
WavefrontSize(0), CFALUBug(false),
|
||||
LocalMemorySize(0), MaxPrivateElementSize(0),
|
||||
EnableVGPRSpilling(false), SGPRInitBug(false), IsGCN(false),
|
||||
GCN1Encoding(false), GCN3Encoding(false), CIInsts(false), VIInsts(false),
|
||||
GCN1Encoding(false), GCN3Encoding(false), CIInsts(false),
|
||||
HasSMemRealTime(false), Has16BitInsts(false),
|
||||
LDSBankCount(0),
|
||||
IsaVersion(ISAVersion0_0_0), EnableHugeScratchBuffer(false),
|
||||
EnableSIScheduler(false), FrameLowering(nullptr),
|
||||
|
@ -88,7 +88,8 @@ private:
|
||||
bool GCN1Encoding;
|
||||
bool GCN3Encoding;
|
||||
bool CIInsts;
|
||||
bool VIInsts;
|
||||
bool HasSMemRealTime;
|
||||
bool Has16BitInsts;
|
||||
bool FeatureDisable;
|
||||
int LDSBankCount;
|
||||
unsigned IsaVersion;
|
||||
@ -169,6 +170,14 @@ public:
|
||||
return FlatAddressSpace;
|
||||
}
|
||||
|
||||
bool hasSMemRealTime() const {
|
||||
return HasSMemRealTime;
|
||||
}
|
||||
|
||||
bool has16BitInsts() const {
|
||||
return Has16BitInsts;
|
||||
}
|
||||
|
||||
bool useFlatForGlobal() const {
|
||||
return FlatForGlobal;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user