| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Also add `HIPHOSTCXX` environment variable.
|
|
|
|
|
|
|
| |
ROCm may not install the `hip-lang` cmake package on NVIDIA platforms.
Skip verifying its presence. We do not use it for NVIDIA platforms anyway.
Fixes: #25271
|
| |
|
|
|
|
|
|
| |
Add support for using the CUDA Toolkit's NVCC to compile HIP code.
Fixes: #25143
|
|
|
|
|
| |
For now, require the value to be `amd`, since that is the only
platform we currently support.
|
|
|
|
|
|
|
|
| |
These distros package the hip-lang package under `lib64`, so search it
too. This is similar to commit bae57dc281 (HIP: Fix search for hip-lang
CMake package on multiarch distros, 2023-05-31, v3.27.0-rc1~28^2).
Fixes: #25050
|
|
|
|
|
|
|
|
|
|
| |
We need `CMAKE_LIBRARY_ARCHITECTURE` to find the package before HIP
compiler ABI detection. However, if HIP is the first enabled language,
the value is not known until `CMAKE_HIP_LIBRARY_ARCHITECTURE` is
determined by the ABI detection step. Resolve this by detecting
`CMAKE_HIP_LIBRARY_ARCHITECTURE` from the compiler id output.
Fixes: #24562
|
|
|
|
|
| |
On windows the location of the rocm root directory as reported by clang
might be in windows style (with backslashes) which breaks the cache.
|
|
|
|
|
|
|
| |
It only makes sense to use the CMake package from the same ROCm
installation that the compiler uses. Ask the HIP compiler to report the
location of the ROCm installation. Verify up front that it contains the
expected CMake package file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since commit bd844387df (ROCMClang: Add the ROCm toolkit derived clang
compiler to CMake, 2020-08-28, v3.21.0-rc1~66^2~6) and commit ff0d2858e1
(HIP: Extract clang compiler details from hipcc, 2020-10-21,
v3.21.0-rc1~66^2~5), the separate `ROCMClang` compiler id for `hipcc`
has caused a few problems:
* The compiler id changed from behavior of CMake 3.20 and below,
breaking projects that already built with `hipcc` treated as `Clang`.
* The implementation of `target_compile_features` was incomplete for
the `ROCMClang` identity.
* Only `hipcc` was identified as `ROCMClang`, so after it is unwrapped
to the underlying `clang++`, future runs of new CMake versions on
an existing build tree would not repeat this.
* Clang should be usable as a HIP compiler without the `hipcc` wrapper.
Remove the `ROMClang` compiler identity, and revise HIP language support
to work directly with a Clang compiler.
Reject direct `hipcc` usage as a HIP compiler. For now it cannot be
supported because it interferes with flags CMake needs to pass to Clang.
Fixes: #22536, #22460, #22593
|
|
|
|
|
|
|
|
|
| |
Fail early if it is not found.
Use the detected location as a hint to find `rocm_agent_enumerator`.
Also remove the leading `_` prefix in case we want to document this
publicly later.
|
| |
|
| |
|
|
|