Skip to content

Commit 4468c3d

Browse files
authored
[NFC][RISCV] Simplify the dynamic linker construction logic
The format of dynamic linker is `ld-linux-{arch}-{abi}.so.1`, so we can just get the arch name from arch type. Reviewers: asb, kito-cheng, MaskRay Reviewed By: MaskRay Pull Request: #97383
1 parent cd1e6a5 commit 4468c3d

File tree

1 file changed

+3
-7
lines changed

1 file changed

+3
-7
lines changed

clang/lib/Driver/ToolChains/Linux.cpp

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -568,16 +568,12 @@ std::string Linux::getDynamicLinker(const ArgList &Args) const {
568568
Loader =
569569
(tools::ppc::hasPPCAbiArg(Args, "elfv1")) ? "ld64.so.1" : "ld64.so.2";
570570
break;
571-
case llvm::Triple::riscv32: {
572-
StringRef ABIName = tools::riscv::getRISCVABI(Args, Triple);
573-
LibDir = "lib";
574-
Loader = ("ld-linux-riscv32-" + ABIName + ".so.1").str();
575-
break;
576-
}
571+
case llvm::Triple::riscv32:
577572
case llvm::Triple::riscv64: {
573+
StringRef ArchName = llvm::Triple::getArchTypeName(Arch);
578574
StringRef ABIName = tools::riscv::getRISCVABI(Args, Triple);
579575
LibDir = "lib";
580-
Loader = ("ld-linux-riscv64-" + ABIName + ".so.1").str();
576+
Loader = ("ld-linux-" + ArchName + "-" + ABIName + ".so.1").str();
581577
break;
582578
}
583579
case llvm::Triple::sparc:

0 commit comments

Comments
 (0)