[PATCH] D50845: [CUDA/OpenMP] Define only some host macros during device compilation

Jonas Hahnfeld via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 17 09:49:46 PDT 2018


Hahnfeld added a comment.

In https://reviews.llvm.org/D50845#1204340, @ABataev wrote:

> In https://reviews.llvm.org/D50845#1204216, @Hahnfeld wrote:
>
> > Got that, I agree on the conservative approach: If we find a function to be called that wasn't checked (because it wasn't implicitly `declare target` on the host) the compiler can error out. That should be correct in all cases, shouldn't it?
> >
> > There's a trade-off here:
> >
> > - How many TUs pass full analysis and how many don't? (today's situation; we know that some headers don't work)
> > - How many TUs pass when we only check called functions (and error if we call non-checked ones) and how many regress compared to today's situation? If the number of regressions is zero for all practical situations but we can compile some important cases, that should be a win.
>
>
> I need to think about it. We need to estimate all pros and cons here. It might work.


I'll try to put together a protoype so that we can actually test.


Repository:
  rC Clang

https://reviews.llvm.org/D50845





More information about the cfe-commits mailing list