================
@@ -738,24 +753,41 @@ AMDGPUToolChain::TranslateArgs(const DerivedArgList
&Args, BoundArch BA,
BA.ArchName);
}
- AMDGPUToolChain::ParsedTargetIDType PTID = checkTargetID(*DAL);
+ if (!getTriple().isSPIRV()) {
+ AMDGPUToolChain::ParsedTargetIDType PTID = checkTargetID(*DAL);
- // Synthesize feature flags for target ID modifiers (xnack, sramecc).
- if (PTID.OptionalFeatureMap) {
- const llvm::StringMap<bool> &FeatureMap = *PTID.OptionalFeatureMap;
+ // Synthesize feature flags for target ID modifiers (xnack, sramecc).
+ if (PTID.OptionalFeatureMap) {
+ const llvm::StringMap<bool> &FeatureMap = *PTID.OptionalFeatureMap;
+
+ auto XnackIt = FeatureMap.find("xnack");
+ if (XnackIt != FeatureMap.end()) {
+ DAL->AddFlagArg(nullptr, Opts.getOption(XnackIt->second
+ ? options::OPT_mxnack
+ : options::OPT_mno_xnack));
+ }
- auto XnackIt = FeatureMap.find("xnack");
- if (XnackIt != FeatureMap.end()) {
- DAL->AddFlagArg(nullptr,
- Opts.getOption(XnackIt->second ? options::OPT_mxnack
- :
options::OPT_mno_xnack));
+ auto SrameccIt = FeatureMap.find("sramecc");
+ if (SrameccIt != FeatureMap.end()) {
+ DAL->AddFlagArg(nullptr,
+ Opts.getOption(SrameccIt->second
+ ? options::OPT_msramecc
+ : options::OPT_mno_sramecc));
+ }
}
+ }
- auto SrameccIt = FeatureMap.find("sramecc");
- if (SrameccIt != FeatureMap.end()) {
- DAL->AddFlagArg(nullptr, Opts.getOption(SrameccIt->second
- ? options::OPT_msramecc
- : options::OPT_mno_sramecc));
+ // Filter out sanitizer coverage options that are not supported for AMDGPU.
+ for (Arg *A : Args) {
+ // Sanitizer coverage is currently not supported for AMDGPU.
+ if (A->getOption().matches(options::OPT_fsan_cov_Group)) {
+ // Upgrade to error if the option was explicitly specified for device
+ bool IsExplicitDevice =
----------------
jhuber6 wrote:
Not related to PR, but why do we need to check this here? The whole point of
the `-Xarch` options is that they filter out the `getArgsForToolchain`, which
is supposed to be where we check things like sanitizer support.
https://github.com/llvm/llvm-project/pull/204863
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits