Over here in hip-config.cmake.in
https://github.com/ROCm-Developer-Tools/HIP/blob/main/hip-config.cmake.in#L208-L214
the compiler-rt lib to link to is fixed to clang_rt.builtins-x86_64.
This does not seem to work cross-platform, since the library name is generally libclang_rt.builtins-<arch>.a.
Wouldn't it be better to add the --rtlib=compiler-rt flag when using clang? That should work cross-architecture.
Or how about dropping fp16 support altogether from hip::host? It seems a bit arbitrary to me. And since fp16 support on x86 is almost non-existent, can't you make the user themselves add --rtlib=compiler-rt? GCC only supports it on ARM anyways, so it's very unlikely people would work with fp16 on x86.
Over here in
hip-config.cmake.inhttps://github.com/ROCm-Developer-Tools/HIP/blob/main/hip-config.cmake.in#L208-L214
the compiler-rt lib to link to is fixed to
clang_rt.builtins-x86_64.This does not seem to work cross-platform, since the library name is generally
libclang_rt.builtins-<arch>.a.Wouldn't it be better to add the
--rtlib=compiler-rtflag when using clang? That should work cross-architecture.Or how about dropping fp16 support altogether from
hip::host? It seems a bit arbitrary to me. And since fp16 support on x86 is almost non-existent, can't you make the user themselves add--rtlib=compiler-rt? GCC only supports it on ARM anyways, so it's very unlikely people would work with fp16 on x86.