Fix build with LLVM 23 for gfx942 and gfx950

LLVM 23 fails with "Cannot scavenge register in FI elimination" on some
kernels (fixed by llvm/llvm-project@c003bfba6158); together, disabling the
machine scheduler and the basic SGPR allocator avoid it.

Bug: https://bugs.gentoo.org/984543
--- a/cmake/DeviceLinker.cmake
+++ b/cmake/DeviceLinker.cmake
@@ -288,6 +288,9 @@ foreach(DL_GPU_TARGET ${DL_GPU_TARGETS})
     -fPIC
     ${DL_INHERITED_FLAGS}
   )
+  if(DL_GPU_TARGET MATCHES "^gfx9(42|50)$")
+    target_compile_options(${_dev_target} PRIVATE -mllvm=-enable-misched=false -mllvm=-sgpr-regalloc=basic)
+  endif()
   target_compile_definitions(${_dev_target} PRIVATE RCCL_DEVICE_LINKER)
   target_link_libraries(${_dev_target} PRIVATE rccl_device_defs)

