Lines Matching refs:TC

214 void tools::AddLinkerInputs(const ToolChain &TC, const InputInfoList &Inputs,  in AddLinkerInputs()  argument
217 const Driver &D = TC.getDriver(); in AddLinkerInputs()
225 if (!TC.isCrossCompiling()) in AddLinkerInputs()
237 if (!TC.HasNativeLLVMSupport() && types::isLLVMIR(II.getType())) in AddLinkerInputs()
239 D.Diag(diag::err_drv_no_linker_llvm_support) << TC.getTripleString(); in AddLinkerInputs()
256 TC.AddCXXStdlibLibArgs(Args, CmdArgs); in AddLinkerInputs()
258 TC.AddCCKextLibArgs(Args, CmdArgs); in AddLinkerInputs()
264 const llvm::Triple &T = TC.getTriple(); in AddLinkerInputs()
266 TC.getDriver().Diag(diag::err_drv_unsupported_opt_for_target) in AddLinkerInputs()
279 const ToolChain &TC, const llvm::opt::ArgList &Args, in addLinkerCompressDebugSectionsOption() argument
291 TC.getDriver().Diag(diag::err_drv_unsupported_option_argument) in addLinkerCompressDebugSectionsOption()
649 void tools::addOpenMPRuntimeSpecificRPath(const ToolChain &TC, in addOpenMPRuntimeSpecificRPath() argument
658 llvm::sys::path::parent_path(TC.getDriver().Dir); in addOpenMPRuntimeSpecificRPath()
665 void tools::addOpenMPRuntimeLibraryPath(const ToolChain &TC, in addOpenMPRuntimeLibraryPath() argument
671 llvm::sys::path::parent_path(TC.getDriver().Dir); in addOpenMPRuntimeLibraryPath()
676 void tools::addArchSpecificRPath(const ToolChain &TC, const ArgList &Args, in addArchSpecificRPath() argument
679 const bool IsVE = TC.getTriple().isVE(); in addArchSpecificRPath()
685 std::string CandidateRPath = TC.getArchSpecificLibPath(); in addArchSpecificRPath()
686 if (TC.getVFS().exists(CandidateRPath)) { in addArchSpecificRPath()
692 bool tools::addOpenMPRuntime(ArgStringList &CmdArgs, const ToolChain &TC, in addOpenMPRuntime() argument
699 Driver::OpenMPRuntimeKind RTKind = TC.getDriver().getOpenMPRuntime(Args); in addOpenMPRuntime()
731 if (IsOffloadingHost && TC.getDriver().isUsingLTO(/* IsOffload */ true) && in addOpenMPRuntime()
735 addArchSpecificRPath(TC, Args, CmdArgs); in addOpenMPRuntime()
738 addOpenMPRuntimeSpecificRPath(TC, Args, CmdArgs); in addOpenMPRuntime()
739 addOpenMPRuntimeLibraryPath(TC, Args, CmdArgs); in addOpenMPRuntime()
744 void tools::addFortranRuntimeLibs(const ToolChain &TC, in addFortranRuntimeLibs() argument
746 if (TC.getTriple().isKnownWindowsMSVCEnvironment()) { in addFortranRuntimeLibs()
757 void tools::addFortranRuntimeLibraryPath(const ToolChain &TC, in addFortranRuntimeLibraryPath() argument
771 llvm::sys::path::parent_path(TC.getDriver().Dir); in addFortranRuntimeLibraryPath()
773 if (TC.getTriple().isKnownWindowsMSVCEnvironment()) in addFortranRuntimeLibraryPath()
779 static void addSanitizerRuntime(const ToolChain &TC, const ArgList &Args, in addSanitizerRuntime() argument
785 CmdArgs.push_back(TC.getCompilerRTArgString( in addSanitizerRuntime()
790 addArchSpecificRPath(TC, Args, CmdArgs); in addSanitizerRuntime()
796 static bool addSanitizerDynamicList(const ToolChain &TC, const ArgList &Args, in addSanitizerDynamicList() argument
801 if (TC.getTriple().getOS() == llvm::Triple::Solaris) in addSanitizerDynamicList()
803 SmallString<128> SanRT(TC.getCompilerRT(Args, Sanitizer)); in addSanitizerDynamicList()
811 const char *tools::getAsNeededOption(const ToolChain &TC, bool as_needed) { in getAsNeededOption() argument
812 assert(!TC.getTriple().isOSAIX() && in getAsNeededOption()
818 if (TC.getTriple().isOSSolaris()) in getAsNeededOption()
824 void tools::linkSanitizerRuntimeDeps(const ToolChain &TC, in linkSanitizerRuntimeDeps() argument
828 CmdArgs.push_back(getAsNeededOption(TC, false)); in linkSanitizerRuntimeDeps()
830 if (TC.getTriple().getOS() != llvm::Triple::RTEMS && in linkSanitizerRuntimeDeps()
831 !TC.getTriple().isAndroid()) { in linkSanitizerRuntimeDeps()
833 if (!TC.getTriple().isOSOpenBSD()) in linkSanitizerRuntimeDeps()
838 if (!TC.getTriple().isOSFreeBSD() && !TC.getTriple().isOSNetBSD() && in linkSanitizerRuntimeDeps()
839 !TC.getTriple().isOSOpenBSD() && in linkSanitizerRuntimeDeps()
840 TC.getTriple().getOS() != llvm::Triple::RTEMS) in linkSanitizerRuntimeDeps()
843 if (TC.getTriple().isOSFreeBSD() || in linkSanitizerRuntimeDeps()
844 TC.getTriple().isOSNetBSD() || in linkSanitizerRuntimeDeps()
845 TC.getTriple().isOSOpenBSD()) in linkSanitizerRuntimeDeps()
850 if (TC.getTriple().isOSLinux() && !TC.getTriple().isAndroid() && in linkSanitizerRuntimeDeps()
851 !TC.getTriple().isMusl()) in linkSanitizerRuntimeDeps()
856 collectSanitizerRuntimes(const ToolChain &TC, const ArgList &Args, in collectSanitizerRuntimes() argument
862 const SanitizerArgs &SanArgs = TC.getSanitizerArgs(Args); in collectSanitizerRuntimes()
867 if (!Args.hasArg(options::OPT_shared) && !TC.getTriple().isAndroid()) in collectSanitizerRuntimes()
872 if (!Args.hasArg(options::OPT_shared) && !TC.getTriple().isAndroid()) in collectSanitizerRuntimes()
996 bool tools::addSanitizerRuntimes(const ToolChain &TC, const ArgList &Args, in addSanitizerRuntimes() argument
1000 collectSanitizerRuntimes(TC, Args, SharedRuntimes, StaticRuntimes, in addSanitizerRuntimes()
1004 const SanitizerArgs &SanArgs = TC.getSanitizerArgs(Args); in addSanitizerRuntimes()
1009 addSanitizerRuntime(TC, Args, CmdArgs, "fuzzer", false, true); in addSanitizerRuntimes()
1011 addSanitizerRuntime(TC, Args, CmdArgs, "fuzzer_interceptors", false, in addSanitizerRuntimes()
1018 TC.AddCXXStdlibLibArgs(Args, CmdArgs); in addSanitizerRuntimes()
1025 addSanitizerRuntime(TC, Args, CmdArgs, RT, true, false); in addSanitizerRuntimes()
1027 addSanitizerRuntime(TC, Args, CmdArgs, RT, false, true); in addSanitizerRuntimes()
1030 addSanitizerRuntime(TC, Args, CmdArgs, RT, false, true); in addSanitizerRuntimes()
1031 AddExportDynamic |= !addSanitizerDynamicList(TC, Args, CmdArgs, RT); in addSanitizerRuntimes()
1034 addSanitizerRuntime(TC, Args, CmdArgs, RT, false, false); in addSanitizerRuntimes()
1035 AddExportDynamic |= !addSanitizerDynamicList(TC, Args, CmdArgs, RT); in addSanitizerRuntimes()
1050 if (!TC.getTriple().isAndroid()) { in addSanitizerRuntimes()
1051 TC.getDriver().Diag(diag::err_drv_unsupported_opt_for_target) in addSanitizerRuntimes()
1052 << "-fsanitize=memtag*" << TC.getTriple().str(); in addSanitizerRuntimes()
1065 bool tools::addXRayRuntime(const ToolChain&TC, const ArgList &Args, ArgStringList &CmdArgs) { in addXRayRuntime() argument
1069 if (TC.getXRayArgs().needsXRayRt()) { in addXRayRuntime()
1071 CmdArgs.push_back(TC.getCompilerRTArgString(Args, "xray")); in addXRayRuntime()
1072 for (const auto &Mode : TC.getXRayArgs().modeList()) in addXRayRuntime()
1073 CmdArgs.push_back(TC.getCompilerRTArgString(Args, Mode)); in addXRayRuntime()
1081 void tools::linkXRayRuntimeDeps(const ToolChain &TC, ArgStringList &CmdArgs) { in linkXRayRuntimeDeps() argument
1082 CmdArgs.push_back(getAsNeededOption(TC, false)); in linkXRayRuntimeDeps()
1084 if (!TC.getTriple().isOSOpenBSD()) in linkXRayRuntimeDeps()
1088 if (!TC.getTriple().isOSFreeBSD() && in linkXRayRuntimeDeps()
1089 !TC.getTriple().isOSNetBSD() && in linkXRayRuntimeDeps()
1090 !TC.getTriple().isOSOpenBSD()) in linkXRayRuntimeDeps()
1133 void tools::SplitDebugInfo(const ToolChain &TC, Compilation &C, const Tool &T, in SplitDebugInfo() argument
1148 Args.MakeArgString(TC.GetProgramPath(CLANG_DEFAULT_OBJCOPY)); in SplitDebugInfo()
1428 unsigned tools::ParseFunctionAlignment(const ToolChain &TC, in ParseFunctionAlignment() argument
1441 TC.getDriver().Diag(diag::err_drv_invalid_int_value) in ParseFunctionAlignment()
1446 unsigned tools::ParseDebugDefaultVersion(const ToolChain &TC, in ParseDebugDefaultVersion() argument
1456 TC.getDriver().Diag(diag::err_drv_invalid_int_value) in ParseDebugDefaultVersion()
1480 static LibGccType getLibGccType(const ToolChain &TC, const Driver &D, in getLibGccType() argument
1485 TC.getTriple().isAndroid()) in getLibGccType()
1505 static void AddUnwindLibrary(const ToolChain &TC, const Driver &D, in AddUnwindLibrary() argument
1507 ToolChain::UnwindLibType UNW = TC.GetUnwindLibType(Args); in AddUnwindLibrary()
1509 if ((TC.getTriple().isAndroid() && UNW == ToolChain::UNW_Libgcc) || in AddUnwindLibrary()
1510 TC.getTriple().isOSIAMCU() || TC.getTriple().isOSBinFormatWasm() || in AddUnwindLibrary()
1514 LibGccType LGT = getLibGccType(TC, D, Args); in AddUnwindLibrary()
1517 !TC.getTriple().isAndroid() && in AddUnwindLibrary()
1518 !TC.getTriple().isOSCygMing() && !TC.getTriple().isOSAIX(); in AddUnwindLibrary()
1520 CmdArgs.push_back(getAsNeededOption(TC, true)); in AddUnwindLibrary()
1533 if (TC.getTriple().isOSAIX()) { in AddUnwindLibrary()
1541 if (TC.getTriple().isOSCygMing()) in AddUnwindLibrary()
1554 CmdArgs.push_back(getAsNeededOption(TC, false)); in AddUnwindLibrary()
1557 static void AddLibgcc(const ToolChain &TC, const Driver &D, in AddLibgcc() argument
1559 LibGccType LGT = getLibGccType(TC, D, Args); in AddLibgcc()
1563 AddUnwindLibrary(TC, D, CmdArgs, Args); in AddLibgcc()
1569 void tools::AddRunTimeLibs(const ToolChain &TC, const Driver &D, in AddRunTimeLibs() argument
1572 ToolChain::RuntimeLibType RLT = TC.GetRuntimeLibType(Args); in AddRunTimeLibs()
1576 CmdArgs.push_back(TC.getCompilerRTArgString(Args, "builtins")); in AddRunTimeLibs()
1577 AddUnwindLibrary(TC, D, CmdArgs, Args); in AddRunTimeLibs()
1581 if (TC.getTriple().isKnownWindowsMSVCEnvironment()) { in AddRunTimeLibs()
1585 TC.getDriver().Diag(diag::err_drv_unsupported_rtlib_for_platform) in AddRunTimeLibs()
1589 AddLibgcc(TC, D, CmdArgs, Args); in AddRunTimeLibs()
1596 if (TC.getTriple().isAndroid() && !Args.hasArg(options::OPT_static) && in AddRunTimeLibs()
2133 void tools::addHIPRuntimeLibArgs(const ToolChain &TC, in addHIPRuntimeLibArgs() argument
2139 TC.AddHIPRuntimeLibArgs(Args, CmdArgs); in addHIPRuntimeLibArgs()