Lines Matching defs:arg
203 for (const Arg *arg : args.filtered(OPT_syslibroot))
204 roots.push_back(arg->getValue());
234 for (const Arg *arg :
237 switch (arg->getOption().getID()) {
239 add(arg->getValue());
242 if (!strcmp("-1", arg->getValue()))
245 add(Twine("prune_interval=") + arg->getValue() + "s");
248 add(Twine("prune_after=") + arg->getValue() + "s");
251 add(Twine("cache_size=") + arg->getValue() + "%");
532 StringRef arg = argv[i];
533 if (arg.consume_front("-l")) {
534 if (config->ignoreAutoLinkOptions.contains(arg))
536 } else if (arg == "-framework") {
541 error(arg + " is not allowed in LC_LINKER_OPTION");
553 StringRef arg = LCLinkerOptions[i];
554 if (arg.consume_front("-l")) {
555 assert(!config->ignoreAutoLinkOptions.contains(arg));
556 addLibrary(arg, /*isNeeded=*/false, /*isWeak=*/false,
559 } else if (arg == "-framework") {
566 error(arg + " is not allowed in LC_LINKER_OPTION");
707 static PlatformVersion parsePlatformVersion(const Arg *arg) {
708 assert(arg->getOption().getID() == OPT_platform_version);
709 StringRef platformStr = arg->getValue(0);
710 StringRef minVersionStr = arg->getValue(1);
711 StringRef sdkVersionStr = arg->getValue(2);
749 for (const Arg *arg : args.filtered(OPT_platform_version)) {
750 PlatformVersion version = parsePlatformVersion(arg);
868 const Arg *arg = args.getLastArg(OPT_objc_stubs_fast, OPT_objc_stubs_small);
869 if (!arg)
872 if (arg->getOption().getID() == OPT_objc_stubs_small) {
919 if (const Arg *arg = args.getLastArg(OPT_reproduce))
920 return arg->getValue();
927 auto *arg = args.getLastArg(id);
928 if (!arg)
931 StringRef s = arg->getValue();
934 error(arg->getSpelling() + " expects 'old;new' format, but got " + s);
957 const Arg *arg = args.getLastArg(id);
958 if (!arg)
962 error(arg->getAsString(args) + ": only valid with -dylib");
967 if (!version.parse32(arg->getValue())) {
968 error(arg->getAsString(args) + ": malformed version");
1000 for (const Arg *arg : args.filtered(OPT_sectalign)) {
1001 StringRef segName = arg->getValue(0);
1002 StringRef sectName = arg->getValue(1);
1003 StringRef alignStr = arg->getValue(2);
1007 error("-sectalign: failed to parse '" + StringRef(arg->getValue(2)) +
1012 error("-sectalign: '" + StringRef(arg->getValue(2)) +
1102 const Arg *arg = args.getLastArg(OPT_fixup_chains, OPT_no_fixup_chains);
1103 if (arg && arg->getOption().matches(OPT_no_fixup_chains))
1106 bool requested = arg && arg->getOption().matches(OPT_fixup_chains);
1146 const Arg *arg = args.getLastArg(OPT_objc_relative_method_lists,
1148 if (arg && arg->getOption().getID() == OPT_objc_relative_method_lists)
1150 if (arg && arg->getOption().getID() == OPT_no_objc_relative_method_lists)
1198 static void parseSymbolPatternsFile(const Arg *arg,
1200 StringRef path = arg->getValue();
1218 for (const Arg *arg : args.filtered(singleOptionCode))
1219 symbolPatterns.insert(arg->getValue());
1220 for (const Arg *arg : args.filtered(listFileOptionCode))
1221 parseSymbolPatternsFile(arg, symbolPatterns);
1231 for (const Arg *arg : args) {
1232 const Option &opt = arg->getOption();
1238 addFile(rerootPath(arg->getValue()), LoadType::CommandLine, isLazy);
1242 addFile(rerootPath(arg->getValue()), LoadType::CommandLine)))
1247 addFile(rerootPath(arg->getValue()), LoadType::CommandLine))) {
1254 addFile(rerootPath(arg->getValue()), LoadType::CommandLine)))
1258 addFileList(arg->getValue(), isLazy);
1261 addFile(rerootPath(arg->getValue()), LoadType::CommandLineForce);
1264 addFile(rerootPath(arg->getValue()), LoadType::CommandLine,
1273 addLibrary(arg->getValue(), opt.getID() == OPT_needed_l,
1282 addFramework(arg->getValue(), opt.getID() == OPT_needed_framework,
1521 for (const Arg *arg : args.filtered(OPT_rpath)) {
1522 StringRef val = arg->getValue();
1534 for (const Arg *arg : args.filtered(OPT_allowable_client)) {
1535 StringRef val = arg->getValue();
1628 // probably only happened because no one using this arg with anything other
1695 if (auto *arg = args.getLastArg(OPT_threads_eq)) {
1696 StringRef v(arg->getValue());
1699 error(arg->getSpelling() + ": expected a positive integer, but got '" +
1700 arg->getValue() + "'");
1704 if (auto *arg = args.getLastArg(OPT_thinlto_jobs_eq))
1705 config->thinLTOJobs = arg->getValue();
1709 for (const Arg *arg : args.filtered(OPT_u)) {
1711 arg->getValue(), /*file=*/nullptr, /*isWeakRef=*/false));
1714 for (const Arg *arg : args.filtered(OPT_U))
1715 config->explicitDynamicLookups.insert(arg->getValue());
1732 if (const Arg *arg = args.getLastArg(OPT_bundle_loader)) {
1735 addFile(arg->getValue(), LoadType::CommandLine, /*isLazy=*/false,
1738 for (auto *arg : args.filtered(OPT_dyld_env)) {
1739 StringRef envPair(arg->getValue());
1749 if (const Arg *arg = args.getLastArg(OPT_umbrella)) {
1752 config->umbrella = arg->getValue();
1821 for (const Arg *arg : args.filtered(OPT_ignore_auto_link_option))
1822 config->ignoreAutoLinkOptions.insert(arg->getValue());
1839 if (const Arg *arg = args.getLastArgNoClaim(OPT_call_graph_profile_sort))
1840 error(firstArgStr + " is incompatible with " + arg->getSpelling());
1846 if (const Arg *arg = args.getLastArg(OPT_irpgo_profile))
1847 config->irpgoProfilePath = arg->getValue();
1849 if (const Arg *arg = args.getLastArg(OPT_irpgo_profile_sort)) {
1850 config->irpgoProfilePath = arg->getValue();
1852 IncompatWithCGSort(arg->getSpelling());
1857 if (const Arg *arg = args.getLastArg(OPT_bp_startup_sort)) {
1858 StringRef startupSortStr = arg->getValue();
1862 error("unknown value `" + startupSortStr + "` for " + arg->getSpelling());
1865 IncompatWithCGSort(arg->getSpelling());
1874 if (const Arg *arg = args.getLastArg(OPT_bp_compression_sort)) {
1875 StringRef compressionSortStr = arg->getValue();
1885 arg->getSpelling());
1888 IncompatWithCGSort(arg->getSpelling());
1892 for (const Arg *arg : args.filtered(OPT_alias)) {
1894 std::make_pair(arg->getValue(0), arg->getValue(1)));
1908 if (const Arg *arg = args.getLastArg(OPT_install_name)) {
1911 arg->getAsString(args) +
1914 config->installName = arg->getValue();
1935 if (const Arg *arg = args.getLastArg(OPT_static, OPT_dynamic))
1936 config->staticLink = (arg->getOption().getID() == OPT_static);
1938 if (const Arg *arg =
1940 config->namespaceKind = arg->getOption().getID() == OPT_twolevel_namespace
1955 if (const Arg *arg =
1958 arg->getOption().getID() == OPT_search_dylibs_first;
1977 for (const Arg *arg : args.filtered(OPT_rename_section)) {
1978 config->sectionRenameMap[{validName(arg->getValue(0)),
1979 validName(arg->getValue(1))}] = {
1980 validName(arg->getValue(2)), validName(arg->getValue(3))};
1982 for (const Arg *arg : args.filtered(OPT_rename_segment)) {
1983 config->segmentRenameMap[validName(arg->getValue(0))] =
1984 validName(arg->getValue(1));
1989 for (const Arg *arg : args.filtered(OPT_segprot)) {
1990 StringRef segName = arg->getValue(0);
1991 uint32_t maxProt = parseProtection(arg->getValue(1));
1992 uint32_t initProt = parseProtection(arg->getValue(2));
2000 error("invalid argument '" + arg->getAsString(args) +
2004 error("invalid argument '" + arg->getAsString(args) +
2029 // But -x can be used with either of these two, in which case, the last arg
2036 for (const Arg *arg :
2039 switch (arg->getOption().getID()) {
2050 parseSymbolPatternsFile(arg, config->localSymbolPatterns);
2060 parseSymbolPatternsFile(arg, config->localSymbolPatterns);
2075 for (const Arg *arg : args.filtered(OPT_why_live))
2076 config->whyLive.insert(arg->getValue());
2119 auto reexportHandler = [](const Arg *arg,
2122 StringRef searchName = arg->getValue();
2124 error(arg->getSpelling() + " " + searchName +
2128 for (const Arg *arg : args.filtered(OPT_sub_umbrella))
2129 reexportHandler(arg, extensions);
2132 for (const Arg *arg : args.filtered(OPT_sub_library))
2133 reexportHandler(arg, extensions);
2139 if (const Arg *arg = args.getLastArg(OPT_mcpu))
2140 parseClangOption(saver().save("-mcpu=" + StringRef(arg->getValue())),
2141 arg->getSpelling());
2143 for (const Arg *arg : args.filtered(OPT_mllvm)) {
2144 parseClangOption(arg->getValue(), arg->getSpelling());
2145 config->mllvmOpts.emplace_back(arg->getValue());
2187 for (const Arg *arg : args.filtered(OPT_sectcreate)) {
2188 StringRef segName = arg->getValue(0);
2189 StringRef sectName = arg->getValue(1);
2190 StringRef fileName = arg->getValue(2);
2196 for (const Arg *arg : args.filtered(OPT_add_empty_section)) {
2197 StringRef segName = arg->getValue(0);
2198 StringRef sectName = arg->getValue(1);