Lines Matching refs:Arg
58 static SanitizerMask parseArgValues(const Driver &D, const llvm::opt::Arg *A,
63 static int parseCoverageFeatures(const Driver &D, const llvm::opt::Arg *A);
77 static std::string describeSanitizeArg(const llvm::opt::Arg *A,
128 const auto *Arg = *I; in parseSanitizeTrapArgs() local
129 if (Arg->getOption().matches(options::OPT_fsanitize_trap_EQ)) { in parseSanitizeTrapArgs()
130 Arg->claim(); in parseSanitizeTrapArgs()
131 SanitizerMask Add = parseArgValues(D, Arg, true); in parseSanitizeTrapArgs()
140 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_trap_EQ)) { in parseSanitizeTrapArgs()
141 Arg->claim(); in parseSanitizeTrapArgs()
142 TrapRemove |= expandSanitizerGroups(parseArgValues(D, Arg, true)); in parseSanitizeTrapArgs()
143 } else if (Arg->getOption().matches( in parseSanitizeTrapArgs()
145 Arg->claim(); in parseSanitizeTrapArgs()
148 } else if (Arg->getOption().matches( in parseSanitizeTrapArgs()
150 Arg->claim(); in parseSanitizeTrapArgs()
206 const auto *Arg = *I; in SanitizerArgs() local
207 if (Arg->getOption().matches(options::OPT_fsanitize_EQ)) { in SanitizerArgs()
208 Arg->claim(); in SanitizerArgs()
209 SanitizerMask Add = parseArgValues(D, Arg, true); in SanitizerArgs()
244 const llvm::opt::Arg *NoRTTIArg = TC.getRTTIArg(); in SanitizerArgs()
264 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_EQ)) { in SanitizerArgs()
265 Arg->claim(); in SanitizerArgs()
266 SanitizerMask Remove = parseArgValues(D, Arg, true); in SanitizerArgs()
339 for (const auto *Arg : Args) { in SanitizerArgs() local
341 if (Arg->getOption().matches(options::OPT_fsanitize_recover)) { in SanitizerArgs()
345 Arg->claim(); in SanitizerArgs()
346 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_recover)) { in SanitizerArgs()
350 Arg->claim(); in SanitizerArgs()
351 } else if (Arg->getOption().matches(options::OPT_fsanitize_recover_EQ)) { in SanitizerArgs()
352 SanitizerMask Add = parseArgValues(D, Arg, true); in SanitizerArgs()
360 << Arg->getOption().getName() << toString(SetToDiagnose); in SanitizerArgs()
364 Arg->claim(); in SanitizerArgs()
365 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_recover_EQ)) { in SanitizerArgs()
366 RecoverableKinds &= ~expandSanitizerGroups(parseArgValues(D, Arg, true)); in SanitizerArgs()
367 Arg->claim(); in SanitizerArgs()
370 D.Diag(diag::warn_drv_deprecated_arg) << Arg->getAsString(Args) in SanitizerArgs()
387 for (const auto *Arg : Args) { in SanitizerArgs() local
388 if (Arg->getOption().matches(options::OPT_fsanitize_blacklist)) { in SanitizerArgs()
389 Arg->claim(); in SanitizerArgs()
390 std::string BLPath = Arg->getValue(); in SanitizerArgs()
397 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_blacklist)) { in SanitizerArgs()
398 Arg->claim(); in SanitizerArgs()
414 if (Arg *A = in SanitizerArgs()
450 for (const auto *Arg : Args) { in SanitizerArgs() local
451 if (Arg->getOption().matches(options::OPT_fsanitize_coverage)) { in SanitizerArgs()
453 if (Arg->getNumValues() == 1 && in SanitizerArgs()
454 !StringRef(Arg->getValue(0)) in SanitizerArgs()
460 Arg->claim(); in SanitizerArgs()
463 D.Diag(diag::warn_drv_deprecated_arg) << Arg->getAsString(Args) in SanitizerArgs()
468 D.Diag(diag::warn_drv_deprecated_arg) << Arg->getAsString(Args) in SanitizerArgs()
473 D.Diag(diag::warn_drv_deprecated_arg) << Arg->getAsString(Args) in SanitizerArgs()
479 << Arg->getAsString(Args) in SanitizerArgs()
486 CoverageFeatures |= parseCoverageFeatures(D, Arg); in SanitizerArgs()
491 Arg->claim(); in SanitizerArgs()
495 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_coverage)) { in SanitizerArgs()
496 Arg->claim(); in SanitizerArgs()
497 CoverageFeatures &= ~parseCoverageFeatures(D, Arg); in SanitizerArgs()
535 if (Arg *A = in SanitizerArgs()
545 if (Arg *WindowsDebugRTArg = in SanitizerArgs()
709 SanitizerMask parseArgValues(const Driver &D, const llvm::opt::Arg *A, in parseArgValues()
742 int parseCoverageFeatures(const Driver &D, const llvm::opt::Arg *A) { in parseCoverageFeatures()
771 const auto *Arg = *I; in lastArgumentForMask() local
772 if (Arg->getOption().matches(options::OPT_fsanitize_EQ)) { in lastArgumentForMask()
774 expandSanitizerGroups(parseArgValues(D, Arg, false)); in lastArgumentForMask()
776 return describeSanitizeArg(Arg, Mask); in lastArgumentForMask()
777 } else if (Arg->getOption().matches(options::OPT_fno_sanitize_EQ)) { in lastArgumentForMask()
779 expandSanitizerGroups(parseArgValues(D, Arg, false)); in lastArgumentForMask()
786 std::string describeSanitizeArg(const llvm::opt::Arg *A, SanitizerMask Mask) { in describeSanitizeArg()