[clang] Reapply "[Driver][ROCm][OpenMP] Fix default ockl linking for OpenMP."… (PR #126671)

Joseph Huber via cfe-commits cfe-commits at lists.llvm.org
Tue Feb 11 08:18:32 PST 2025


================
@@ -68,7 +68,9 @@ llvm::opt::DerivedArgList *AMDGPUOpenMPToolChain::TranslateArgs(
     Action::OffloadKind DeviceOffloadKind) const {
   DerivedArgList *DAL =
       HostTC.TranslateArgs(Args, BoundArch, DeviceOffloadKind);
-  if (!DAL || Args.hasArg(options::OPT_fsanitize_EQ))
+  // Skip sanitize options passed from the HostTC. The decision to instrument
+  // device code is computed only by 'shouldSkipSanitizeOption'.
+  if (!DAL && DAL->hasArg(options::OPT_fsanitize_EQ))
----------------
jhuber6 wrote:

I just don't really understand what problem this is meant to be solving. We don't need to do this for *any* of the other options that the device toolchain uses, so what's special about this one? If the user does `-fsanitize=address` it will show up in the device toolchain args. if it's not legal for some case, then emit an error. If the user doesn't want it then they can do `-Xarch-host -fsanitize=address`.

https://github.com/llvm/llvm-project/pull/126671


More information about the cfe-commits mailing list