summaryrefslogtreecommitdiff
path: root/sys-devel/llvm-roc/files/llvm-roc-4.0.0-hip-location.patch
blob: 8342299f1139de23709f2814e858f385a78ec014 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
replace hardcoded hip finder with Gentoo paths.

Author: Benda Xu <heroxbd@gentoo.org>

Index: llvm-project-rocm-4.0.0/clang/lib/Driver/ToolChains/AMDGPU.cpp
===================================================================
--- llvm-project-rocm-4.0.0.orig/clang/lib/Driver/ToolChains/AMDGPU.cpp
+++ llvm-project-rocm-4.0.0/clang/lib/Driver/ToolChains/AMDGPU.cpp
@@ -116,37 +116,8 @@ RocmInstallationDetector::getInstallatio
     return Candidates;
   }
 
-  // Try to find relative to the compiler binary.
-  const char *InstallDir = D.getInstalledDir();
+  Candidates.emplace_back(D.SysRoot + "/usr/lib/hip", /*StrictChecking=*/true);
 
-  // Check both a normal Unix prefix position of the clang binary, as well as
-  // the Windows-esque layout the ROCm packages use with the host architecture
-  // subdirectory of bin.
-
-  // Strip off directory (usually bin)
-  StringRef ParentDir = llvm::sys::path::parent_path(InstallDir);
-  StringRef ParentName = llvm::sys::path::filename(ParentDir);
-
-  // Some builds use bin/{host arch}, so go up again.
-  if (ParentName == "bin") {
-    ParentDir = llvm::sys::path::parent_path(ParentDir);
-    ParentName = llvm::sys::path::filename(ParentDir);
-  }
-
-  // Some versions of the rocm llvm package install to /opt/rocm/llvm/bin
-  if (ParentName == "llvm")
-    ParentDir = llvm::sys::path::parent_path(ParentDir);
-
-  Candidates.emplace_back(ParentDir.str(), /*StrictChecking=*/true);
-
-  // Device library may be installed in clang resource directory.
-  Candidates.emplace_back(D.ResourceDir, /*StrictChecking=*/true);
-
-  Candidates.emplace_back(D.SysRoot + "/opt/rocm", /*StrictChecking=*/true);
-  if (ParentName.startswith("aomp")) {
-    // Some versions of the aomp package install to /opt/rocm/aomp/bin
-    Candidates.emplace_back(ParentDir.str());
-  }
   return Candidates;
 }