[PATCH] D27351: [CUDA] Forward sanitizer support to host toolchain

Jason Henline via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 2 09:42:35 PST 2016


This revision was automatically updated to reflect the committed changes.
Closed by commit rL288512: [CUDA] Forward sanitizer support to host toolchain (authored by jhen).

Changed prior to commit:
  https://reviews.llvm.org/D27351?vs=80082&id=80084#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D27351

Files:
  cfe/trunk/lib/Driver/ToolChains.cpp


Index: cfe/trunk/lib/Driver/ToolChains.cpp
===================================================================
--- cfe/trunk/lib/Driver/ToolChains.cpp
+++ cfe/trunk/lib/Driver/ToolChains.cpp
@@ -4974,12 +4974,16 @@
 }
 
 SanitizerMask CudaToolChain::getSupportedSanitizers() const {
-  // The CudaToolChain only supports address sanitization in the sense that it
-  // allows ASAN arguments on the command line. It must not error out on these
-  // command line arguments because the host code compilation supports them.
-  // However, it doesn't actually do any address sanitization for device code;
-  // instead, it just ignores any ASAN command line arguments it sees.
-  return SanitizerKind::Address;
+  // The CudaToolChain only supports sanitizers in the sense that it allows
+  // sanitizer arguments on the command line if they are supported by the host
+  // toolchain. The CudaToolChain will actually ignore any command line
+  // arguments for any of these "supported" sanitizers. That means that no
+  // sanitization of device code is actually supported at this time.
+  //
+  // This behavior is necessary because the host and device toolchains
+  // invocations often share the command line, so the device toolchain must
+  // tolerate flags meant only for the host toolchain.
+  return HostTC.getSupportedSanitizers();
 }
 
 /// XCore tool chain


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D27351.80084.patch
Type: text/x-patch
Size: 1364 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20161202/48ecbb07/attachment.bin>


More information about the cfe-commits mailing list