• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/clang/lib/Driver/ToolChains/

Lines Matching defs:ToolChain

1 //===--- Gnu.cpp - Gnu Tool and ToolChain Implementations -------*- C++ -*-===//
24 #include "clang/Driver/ToolChain.h"
314 static bool getPIE(const ArgList &Args, const ToolChain &TC) {
326 static bool getStaticPIE(const ArgList &Args, const ToolChain &TC) {
388 // FIXME: The Linker class constructor takes a ToolChain and not a
392 const toolchains::Generic_ELF &ToolChain =
394 const Driver &D = ToolChain.getDriver();
398 const llvm::Triple::ArchType Arch = ToolChain.getArch();
399 const bool isAndroid = ToolChain.getTriple().isAndroid();
400 const bool IsIAMCU = ToolChain.getTriple().isOSIAMCU();
401 const bool IsVE = ToolChain.getTriple().isVE();
402 const bool IsPIE = getPIE(Args, ToolChain);
403 const bool IsStaticPIE = getStaticPIE(Args, ToolChain);
406 ToolChain.getTriple().hasEnvironment() ||
407 (ToolChain.getTriple().getVendor() != llvm::Triple::MipsTechnologies);
433 if (ToolChain.isNoExecStackDefault()) {
465 ToolChain.addExtraOpts(CmdArgs);
469 if (const char *LDMOption = getLDMOption(ToolChain.getTriple(), Args)) {
494 ToolChain.getDynamicLinker(Args)));
515 CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath(crt1)));
517 CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath("crti.o")));
526 CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath("crt0.o")));
529 if (ToolChain.GetRuntimeLibType(Args) == ToolChain::RLT_CompilerRT &&
531 std::string crtbegin = ToolChain.getCompilerRT(Args, "crtbegin",
532 ToolChain::FT_Object);
533 if (ToolChain.getVFS().exists(crtbegin))
546 P = ToolChain.GetFilePath(crtbegin);
552 ToolChain.addFastMathRuntimeIfAvailable(Args, CmdArgs);
558 ToolChain.AddFilePathLibArgs(Args, CmdArgs);
562 addLTOOptions(ToolChain, Args, CmdArgs, Output, Inputs[0],
569 bool NeedsSanitizerDeps = addSanitizerRuntimes(ToolChain, Args, CmdArgs);
570 bool NeedsXRayDeps = addXRayRuntime(ToolChain, Args, CmdArgs);
571 addLinkerCompressDebugSectionsOption(ToolChain, Args, CmdArgs);
572 AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs, JA);
578 if (ToolChain.ShouldLinkCXXStdlib(Args)) {
583 ToolChain.AddCXXStdlibLibArgs(Args, CmdArgs);
598 linkSanitizerRuntimeDeps(ToolChain, CmdArgs);
601 linkXRayRuntimeDeps(ToolChain, CmdArgs);
612 if (addOpenMPRuntime(CmdArgs, ToolChain, Args, StaticOpenMP,
619 AddRunTimeLibs(ToolChain, D, CmdArgs, Args);
637 AddRunTimeLibs(ToolChain, D, CmdArgs, Args);
650 if (ToolChain.GetRuntimeLibType(Args) == ToolChain::RLT_CompilerRT &&
652 std::string crtend = ToolChain.getCompilerRT(Args, "crtend",
653 ToolChain::FT_Object);
654 if (ToolChain.getVFS().exists(crtend))
665 P = ToolChain.GetFilePath(crtend);
670 CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath("crtn.o")));
676 const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
2628 : ToolChain(D, Triple, Args), GCCInstallation(D),
2648 return ToolChain::getTool(AC);
2727 ToolChain::path_list &Paths) {
2733 void Generic_GCC::PushPPaths(ToolChain::path_list &PPaths) {
2865 case ToolChain::CST_Libcxx:
2869 case ToolChain::CST_Libstdcxx: