[PATCH] D42922: [CUDA] Register relocatable GPU binaries
Jonas Hahnfeld via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 5 11:28:40 PST 2018
Hahnfeld planned changes to this revision.
Hahnfeld added a comment.
I didn't write tests for this yet, but I wanted to get some early feedback on this and show what I have in mind.
================
Comment at: lib/CodeGen/CGCUDANV.cpp:330-331
// the GPU side.
for (const std::string &GpuBinaryFileName :
CGM.getCodeGenOpts().CudaGpuBinaryFileNames) {
llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> GpuBinaryOrErr =
----------------
Can we actually have multiple GPU binaries here? If yes, how do I get there?
================
Comment at: lib/CodeGen/CGCUDANV.cpp:342-343
+ if (RelocatableDeviceCode)
+ // TODO: Figure out how this is called on mac OS!
+ FatbinConstantName = "__nv_relfatbin";
+ else
----------------
@jlebar Could yo help me here as I don't have a Mac? I'd guess it's `__NV_CUDA,__nv_relfatbin` but I'd feel better if I can get a confirmation...
================
Comment at: lib/CodeGen/CGCUDANV.cpp:350-351
CGM.getTriple().isMacOSX() ? "__NV_CUDA,__fatbin" : ".nvFatBinSegment";
+ // TODO: Figure out how this is called on mac OS!
+ const char *NVModuleIDSectionName = "__nv_module_id";
----------------
@jlebar The same here, probably `__NV_CUDA,__nv_module_id`?
Repository:
rC Clang
https://reviews.llvm.org/D42922
More information about the cfe-commits
mailing list