ye-luo added a comment.

this is the working steps in the linking script.

  clang-offload-bundler (host,device)
  in: complex_reduction.cpp.o
  out: complex_reduction-494ba8.o, complex_reduction-5aba63.cubin
  
  nvlink (device)
  in: complex_reduction-5aba63.cubin
  out: complex_reduction-b1898c.out
  
  clang-offload-wrapper (device)
  in: complex_reduction-b1898c.out
  out: cxx-a8318a.bc
  
  clang (device)
  in: cxx-a8318a.bc cxx-e54e6f.o
  
  ld (host, device)
  in: complex_reduction-494ba8.o, cxx-e54e6f.o
  out: executable

I'm not quite understand what this wrapper replaces and why.
"It is required for linking static device libraries on nvptx" is not explaining 
what is not working with existing steps and what the clang-nvlink-wrapper 
changes to make it work. Need elaboration.



================
Comment at: clang/tools/clang-nvlink-wrapper/ClangNvlinkWrapper.cpp:41
+For descriptions of the options please run 'nvlink --help'
+The wrapper extracts any arcive objects and call nvlink with the
+individual files instead, plus any other options/object.
----------------
arcive -> archive
<objects> is input already
"The wrapper extracts any arcive objects " what does it mean?
"call nvlink with the individual files" waht individual files.
What is the output?
Please make this documentation more clear.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D108291/new/

https://reviews.llvm.org/D108291

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

Reply via email to