Lines Matching refs:Args
35 static llvm::opt::Arg *GetRTTIArgument(const ArgList &Args) {
36 return Args.getLastArg(options::OPT_mkernel, options::OPT_fapple_kext,
40 static ToolChain::RTTIMode CalculateRTTIMode(const ArgList &Args,
43 // Explicit rtti/no-rtti args
57 Arg *Exceptions = Args.getLastArgNoClaim(
69 const ArgList &Args)
70 : D(D), Triple(T), Args(Args), CachedRTTIArg(GetRTTIArgument(Args)),
71 CachedRTTIMode(CalculateRTTIMode(Args, Triple, CachedRTTIArg)) {
72 if (Arg *A = Args.getLastArg(options::OPT_mthread_model))
75 << A->getValue() << A->getAsString(Args);
84 return Args.hasFlag(options::OPT_fintegrated_as,
91 SanitizerArguments.reset(new SanitizerArgs(*this, Args));
272 const ArgList &Args) {
280 return (arm::getARMFloatABI(TC, Args) == arm::FloatABI::Hard && !IsWindows)
287 std::string ToolChain::getCompilerRT(const ArgList &Args, StringRef Component,
294 StringRef Arch = getArchNameForCompilerRTLib(*this, Args);
307 const char *ToolChain::getCompilerRTArgString(const llvm::opt::ArgList &Args,
310 return Args.MakeArgString(getCompilerRT(Args, Component, Shared));
313 bool ToolChain::needsProfileRT(const ArgList &Args) {
314 if (Args.hasFlag(options::OPT_fprofile_arcs, options::OPT_fno_profile_arcs,
316 Args.hasArg(options::OPT_fprofile_generate) ||
317 Args.hasArg(options::OPT_fprofile_generate_EQ) ||
318 Args.hasArg(options::OPT_fprofile_instr_generate) ||
319 Args.hasArg(options::OPT_fprofile_instr_generate_EQ) ||
320 Args.hasArg(options::OPT_fcreate_profile) ||
321 Args.hasArg(options::OPT_coverage))
344 if (Arg *A = Args.getLastArg(options::OPT_fuse_ld_EQ)) {
366 getDriver().Diag(diag::err_drv_invalid_linker_name) << A->getAsString(Args);
417 std::string ToolChain::ComputeLLVMTriple(const ArgList &Args,
428 if (Arg *A = Args.getLastArg(options::OPT_march_EQ)) {
459 if (Arg *A = Args.getLastArg(options::OPT_mlittle_endian,
468 if (const Arg *A = Args.getLastArg(options::OPT_mcpu_EQ))
470 if (const Arg *A = Args.getLastArg(options::OPT_march_EQ))
491 if ((InputType != types::TY_PP_Asm && Args.hasFlag(options::OPT_mthumb,
505 std::string ToolChain::ComputeEffectiveClangTriple(const ArgList &Args,
507 return ComputeLLVMTriple(Args, InputType);
521 void ToolChain::addProfileRTLibs(const llvm::opt::ArgList &Args,
523 if (!needsProfileRT(Args)) return;
525 CmdArgs.push_back(getCompilerRTArgString(Args, "profile"));
529 const ArgList &Args) const {
530 if (Arg *A = Args.getLastArg(options::OPT_rtlib_EQ)) {
537 << A->getAsString(Args);
555 ToolChain::CXXStdlibType ToolChain::GetCXXStdlibType(const ArgList &Args) const{
560 const Arg *A = Args.getLastArg(options::OPT_stdlib_EQ);
570 << A->getAsString(Args);
634 void ToolChain::AddCXXStdlibLibArgs(const ArgList &Args,
636 CXXStdlibType Type = GetCXXStdlibType(Args);
649 void ToolChain::AddFilePathLibArgs(const ArgList &Args,
653 CmdArgs.push_back(Args.MakeArgString(StringRef("-L") + LibPath));
656 void ToolChain::AddCCKextLibArgs(const ArgList &Args,
661 bool ToolChain::AddFastMathRuntimeIfAvailable(const ArgList &Args,
665 if (!isOptimizationLevelFast(Args)) {
668 Args.getLastArg(options::OPT_ffast_math, options::OPT_fno_fast_math,
681 CmdArgs.push_back(Args.MakeArgString(Path));