illwieckz wrote:

> If the system fails to find HSA, then it will use the dynamic version.

Why is it expected for LLVM to build against system HSA first, then to rely on 
LLVM's HSA only if system one is missing?

I'm building LLVM, not something else, so I expect LLVM to build against LLVM 
files.

> unfortunately the HSA headers really don't give you much versioning to work 
> with, so we can't do `ifdef` on this stuff.

If LLVM was attempting to use LLVM's HSA first, it would be possible to do `#if 
__has_include("dynamic_hsa/hsa.h")`, then `#elif __has_include("hsa/hsa.h")` 
for system's one. But since LLVM provides its own HSA, it would always use its 
own one.

If a two-weeks old ROCm 6.1.2 is already considered too old by both LLVM 17, it 
is safe to assume that ROCm 6.1.2 will never be young enough for LLVM17… Then I 
don't see why both LLVM 17 and LLVM 18 would try to use something that will 
never be young enough…

https://github.com/llvm/llvm-project/pull/95484
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to