5 Commits

Author SHA1 Message Date
Yaxun (Sam) Liu
8422bc9efc recommit "[HIP] Add default header and include path"
recommit 11d06b9511bd25aabbfad10dff548b0ce29135a5 with
fix for lit tests.
2020-06-06 14:21:22 -04:00
Nico Weber
2920348063 Revert "recommit "[HIP] Add default header and include path""
This reverts commit 1fa43e0b34d9736f62c6c1b6c371a5e39cd1624d.
Still breaks tests on several bots, see https://reviews.llvm.org/D81176
2020-06-05 21:50:04 -04:00
Yaxun (Sam) Liu
1fa43e0b34 recommit "[HIP] Add default header and include path"
recommit 11d06b9511bd25aabbfad10dff548b0ce29135a5 with
fix for lit tests.
2020-06-05 20:41:15 -04:00
Yaxun (Sam) Liu
8a8c6913a9 Revert "[HIP] Add default header and include path"
This reverts commit 11d06b9511bd25aabbfad10dff548b0ce29135a5.
2020-06-05 15:42:57 -04:00
Yaxun (Sam) Liu
11d06b9511 [HIP] Add default header and include path
To support std::complex and some other standard C/C++ functions in HIP device code,
they need to be forced to be __host__ __device__ functions by pragmas. This is done
by some clang standard C++ wrapper headers which are shared between cuda-clang and hip-Clang.

For these standard C++ wapper headers to work properly, specific include path order
has to be enforced:

  clang C++ wrapper include path
  standard C++ include path
  clang include path

Also, these C++ wrapper headers require device version of some standard C/C++ functions
must be declared before including them. This needs to be done by including a default
header which declares or defines these device functions. The default header is always
included before any other headers are included by users.

This patch adds the the default header and include path for HIP.

Differential Revision: https://reviews.llvm.org/D81176
2020-06-05 12:44:57 -04:00