Author: vkalintiris Date: Fri May 13 07:34:14 2016 New Revision: 269412 URL: http://llvm.org/viewvc/llvm-project?rev=269412&view=rev Log: Simplify getLinuxDynamicLinker() by using a common variable for the triple. NFC.
Modified: cfe/trunk/lib/Driver/Tools.cpp Modified: cfe/trunk/lib/Driver/Tools.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=269412&r1=269411&r2=269412&view=diff ============================================================================== --- cfe/trunk/lib/Driver/Tools.cpp (original) +++ cfe/trunk/lib/Driver/Tools.cpp Fri May 13 07:34:14 2016 @@ -8957,9 +8957,10 @@ static void AddLibgcc(const llvm::Triple static std::string getLinuxDynamicLinker(const ArgList &Args, const toolchains::Linux &ToolChain) { const llvm::Triple::ArchType Arch = ToolChain.getArch(); + const llvm::Triple &Triple = ToolChain.getTriple(); - if (ToolChain.getTriple().isAndroid()) { - if (ToolChain.getTriple().isArch64Bit()) + if (Triple.isAndroid()) { + if (Triple.isArch64Bit()) return "/system/bin/linker64"; else return "/system/bin/linker"; @@ -8971,31 +8972,29 @@ static std::string getLinuxDynamicLinker else if (Arch == llvm::Triple::aarch64_be) return "/lib/ld-linux-aarch64_be.so.1"; else if (Arch == llvm::Triple::arm || Arch == llvm::Triple::thumb) { - if (ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUEABIHF || + if (Triple.getEnvironment() == llvm::Triple::GNUEABIHF || arm::getARMFloatABI(ToolChain, Args) == arm::FloatABI::Hard) return "/lib/ld-linux-armhf.so.3"; else return "/lib/ld-linux.so.3"; } else if (Arch == llvm::Triple::armeb || Arch == llvm::Triple::thumbeb) { // TODO: check which dynamic linker name. - if (ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUEABIHF || + if (Triple.getEnvironment() == llvm::Triple::GNUEABIHF || arm::getARMFloatABI(ToolChain, Args) == arm::FloatABI::Hard) return "/lib/ld-linux-armhf.so.3"; else return "/lib/ld-linux.so.3"; } else if (Arch == llvm::Triple::mips || Arch == llvm::Triple::mipsel || Arch == llvm::Triple::mips64 || Arch == llvm::Triple::mips64el) { - std::string LibDir = - "/lib" + mips::getMipsABILibSuffix(Args, ToolChain.getTriple()); + std::string LibDir = "/lib" + mips::getMipsABILibSuffix(Args, Triple); StringRef LibName; - bool IsNaN2008 = mips::isNaN2008(Args, ToolChain.getTriple()); + bool IsNaN2008 = mips::isNaN2008(Args, Triple); if (mips::isUCLibc(Args)) LibName = IsNaN2008 ? "ld-uClibc-mipsn8.so.0" : "ld-uClibc.so.0"; - else if (!ToolChain.getTriple().hasEnvironment() && - ToolChain.getTriple().getVendor() == - llvm::Triple::VendorType::MipsTechnologies) { - bool LE = (ToolChain.getTriple().getArch() == llvm::Triple::mipsel) || - (ToolChain.getTriple().getArch() == llvm::Triple::mips64el); + else if (!Triple.hasEnvironment() && + Triple.getVendor() == llvm::Triple::VendorType::MipsTechnologies) { + bool LE = (Triple.getArch() == llvm::Triple::mipsel) || + (Triple.getArch() == llvm::Triple::mips64el); LibName = LE ? "ld-musl-mipsel.so.1" : "ld-musl-mips.so.1"; } else LibName = IsNaN2008 ? "ld-linux-mipsn8.so.1" : "ld.so.1"; @@ -9016,7 +9015,7 @@ static std::string getLinuxDynamicLinker else if (Arch == llvm::Triple::sparcv9) return "/lib64/ld-linux.so.2"; else if (Arch == llvm::Triple::x86_64 && - ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUX32) + Triple.getEnvironment() == llvm::Triple::GNUX32) return "/libx32/ld-linux-x32.so.2"; else return "/lib64/ld-linux-x86-64.so.2"; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits