[Openmp-commits] [PATCH] D69857: [libomptarget] Replace INLINE with DEVICE to work around nvcc deleting always_inline symbols

Jon Chesterfield via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Tue Nov 5 10:19:55 PST 2019


JonChesterfield added a comment.

In D69857#1734286 <https://reviews.llvm.org/D69857#1734286>, @ABataev wrote:

> What about the inlining, will it affect it?


I've given up on guessing what nvcc will do. Changing the INLINE macro to `__inline__` (and away from the possibly buggy `__always_inline__`) is a nicer fix if it works.

Working theories:

- nvcc requires declaration and definition to have identical attributes
- nvcc `__always_inline__` is broken
- nvcc changes the semantics of code based on #include hierarchy

I'm still trying to reproduce the missing symbols locally so don't have much scope for experimentation.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D69857





More information about the Openmp-commits mailing list