[PATCH] D26774: [CUDA] Driver changes to support CUDA compilation on MacOS.

Justin Lebar via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 17 10:52:21 PST 2016


jlebar added inline comments.


================
Comment at: clang/lib/Driver/Driver.cpp:479
+    // the device toolchain we create depends on both.
+    ToolChain *&CudaTC = ToolChains[CudaTriple.str() + "/" + HostTriple.str()];
+    if (!CudaTC) {
----------------
sfantao wrote:
> I am not sure I understand why to pair host and device toolchain in the map. The driver can be used to several compilations, but how do these compilation use different host toolchains? Can you give an example of an invocation? Maybe add it to the regression tests bellow. 
> The driver can be used to several compilations, but how do these compilation use different host toolchains? 

I don't know if it's possible to do so when compiling through the command line.  But if using clang as a library, you can create a Driver and use it for multiple compilations with arbitrary targets.

I am not certain we do this inside of the tree, although there are a few places where we create Driver objects, such as lib/Tooling/CompilationDatabase.cpp and lib/Tooling/Tooling.cpp.  But also anyone downstream can presumably use clang this way.


https://reviews.llvm.org/D26774





More information about the cfe-commits mailing list