From 06f1ee90c865f7a0f5fbbb26097dff59c1c8f17f Mon Sep 17 00:00:00 2001 From: aditya srichandan Date: Sat, 22 Nov 2025 22:38:41 +0000 Subject: [PATCH 1/3] Improve ld.lld path detection for ROCm SDK custom path installation --- third_party/amd/backend/compiler.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/third_party/amd/backend/compiler.py b/third_party/amd/backend/compiler.py index 390d1c83e61d..ff75d45a6eb2 100644 --- a/third_party/amd/backend/compiler.py +++ b/third_party/amd/backend/compiler.py @@ -171,6 +171,25 @@ def path_to_rocm_lld(): lld = Path(lld_env_path) if lld.is_file(): return lld + + # Check ROCM_PATH environment variable + rocm_path = os.getenv("ROCM_PATH") + if rocm_path is not None: + lld = Path(rocm_path) / "llvm/bin/ld.lld" + if lld.is_file(): + return lld + + # Try rocm-sdk command + try: + sdk_root = subprocess.check_output( + ["rocm-sdk", "path", "--root"], text=True + ).strip() + lld = Path(sdk_root) / "llvm/bin/ld.lld" + if lld.is_file(): + return lld + except (FileNotFoundError, subprocess.CalledProcessError): + pass + # Check backend for ld.lld (used for pytorch wheels) lld = Path(__file__).parent / "llvm/bin/ld.lld" if lld.is_file(): From 0ad2698f30b7a90cc59c041983fa3e103fbea7a2 Mon Sep 17 00:00:00 2001 From: aditya srichandan Date: Sat, 22 Nov 2025 22:42:51 +0000 Subject: [PATCH 2/3] Improve ld.lld path detection for ROCm SDK custom path installation --- third_party/amd/backend/compiler.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/third_party/amd/backend/compiler.py b/third_party/amd/backend/compiler.py index ff75d45a6eb2..c33ae817f17f 100644 --- a/third_party/amd/backend/compiler.py +++ b/third_party/amd/backend/compiler.py @@ -171,14 +171,12 @@ def path_to_rocm_lld(): lld = Path(lld_env_path) if lld.is_file(): return lld - # Check ROCM_PATH environment variable rocm_path = os.getenv("ROCM_PATH") if rocm_path is not None: lld = Path(rocm_path) / "llvm/bin/ld.lld" if lld.is_file(): return lld - # Try rocm-sdk command try: sdk_root = subprocess.check_output( @@ -189,7 +187,6 @@ def path_to_rocm_lld(): return lld except (FileNotFoundError, subprocess.CalledProcessError): pass - # Check backend for ld.lld (used for pytorch wheels) lld = Path(__file__).parent / "llvm/bin/ld.lld" if lld.is_file(): From e44c9510186a95b8551ecfca76d9a282e81c02db Mon Sep 17 00:00:00 2001 From: aditya srichandan Date: Sat, 22 Nov 2025 22:44:07 +0000 Subject: [PATCH 3/3] Improve ld.lld path detection for ROCm SDK custom path installation --- third_party/amd/backend/compiler.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/third_party/amd/backend/compiler.py b/third_party/amd/backend/compiler.py index c33ae817f17f..90bc3734bb1f 100644 --- a/third_party/amd/backend/compiler.py +++ b/third_party/amd/backend/compiler.py @@ -179,9 +179,7 @@ def path_to_rocm_lld(): return lld # Try rocm-sdk command try: - sdk_root = subprocess.check_output( - ["rocm-sdk", "path", "--root"], text=True - ).strip() + sdk_root = subprocess.check_output(["rocm-sdk", "path", "--root"], text=True).strip() lld = Path(sdk_root) / "llvm/bin/ld.lld" if lld.is_file(): return lld