tra added inline comments.

================
Comment at: lib/Driver/ToolChains/Cuda.cpp:170-182
-    // This code prevents IsValid from being set when
-    // no libdevice has been found.
-    bool allEmpty = true;
-    std::string LibDeviceFile;
-    for (auto key : LibDeviceMap.keys()) {
-      LibDeviceFile = LibDeviceMap.lookup(key);
-      if (!LibDeviceFile.empty())
----------------
Hahnfeld wrote:
> tra wrote:
> > I'd keep this code. It appears to serve useful purpose as it requires CUDA 
> > installation to have at least some libdevice library in it.  It gives us a 
> > change to find a valid installation, instead of ailing some time later when 
> > we ask for a libdevice file and fail because there are none.
> We had some internal discussions about this after I submitted the patch here.
> 
> The main question is: Do we want to support CUDA installations without 
> libdevice and are there use cases for that? I'd say that the user should be 
> able to use a toolchain without libdevice together with `-nocudalib`.
Sounds reasonable. How about keeping the code but putting it under 
`if(!hasArg(nocudalib))`?



================
Comment at: lib/Driver/ToolChains/Cuda.cpp:556
+      DAL->AddJoinedArg(nullptr, Opts.getOption(options::OPT_march_EQ),
+                        CLANG_OPENMP_NVPTX_DEFAULT_ARCH);
     }
----------------
Hahnfeld wrote:
> tra wrote:
> > This sets default GPU arch for *everyone* based on OPENMP requirements. 
> > Perhaps this should be predicated on this being openmp compilation.
> > 
> > IMO to avoid unnecessary surprises, the default for CUDA compilation should 
> > follow defaults of nvcc. sm_30 becomes default only in CUDA-9.
> > 
> This branch is only executed for OpenMP, see above
OK. I've missed that 'if'.


https://reviews.llvm.org/D38883



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to