================
@@ -473,12 +473,18 @@ class LLVM_LIBRARY_VISIBILITY AMDGPUTargetInfo final :
public TargetInfo {
CUMode = false;
else if (F == "+image-insts")
HasImage = true;
- bool IsOn = F.front() == '+';
+ llvm::AMDGPU::TargetIDSetting Setting =
+ F.front() == '+' ? llvm::AMDGPU::TargetIDSetting::On
+ : llvm::AMDGPU::TargetIDSetting::Off;
StringRef Name = StringRef(F).drop_front();
- if (!llvm::is_contained(TargetIDFeatures, Name))
- continue;
- assert(!OffloadArchFeatures.contains(Name));
- OffloadArchFeatures[Name] = IsOn;
+ // xnack is a valid target-id modifier only when the processor supports
+ // on/off modes; sramecc when the processor supports sramecc.
+ if (Name == "xnack" &&
+ ArchFeatures.test(llvm::AMDGPU::FEAT_XNACK_ON_OFF_MODES))
+ XnackSetting = Setting;
+ else if (Name == "sramecc" &&
+ ArchFeatures.test(llvm::AMDGPU::FEAT_SRAMECC_SUPPORT))
----------------
chinmaydd wrote:
This should use `SRAMECC_ON_OFF_MODES` ?
https://github.com/llvm/llvm-project/pull/231420
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits