[PATCH] D68660: [tooling] Teach Tooling to understand compilation with offloading.

Michael Liao via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 9 12:13:29 PDT 2019


hliao marked an inline comment as done.
hliao added inline comments.


================
Comment at: clang/lib/Tooling/Tooling.cpp:117
   // The one job we find should be to invoke clang again.
   const auto &Cmd = cast<driver::Command>(*Jobs.begin());
   if (StringRef(Cmd.getCreator().getName()) != "clang") {
----------------
tra wrote:
> hliao wrote:
> > tra wrote:
> > > Is this still the right job for us to pick? I think we want this to be the host compilation. 
> > > 
> > > As things are right now my guess is that we're probably picking the first device-side compilation.
> > yes, OffloadAction is appended to the original host action. The corresponding first job is the host compilation. The frontend has similar handling in `lib/Frontend/CreateInvocationFromCommandLine.cpp`
> Can we add an assert or diagnostics for that? I think the check below would not always be able to tell if it unintentionally picked a wrong kind of job.
It seems to me that the `cast<>` and check against "clang" @ L118 already did what I asked. 


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D68660





More information about the cfe-commits mailing list