Lines Matching refs:config
80 ConfigWrapper elf::config; member in elf
87 if (config->noinhibitExec) in errorOrWarn()
152 config = ConfigWrapper(); in link()
160 config->progName = args[0]; in link()
252 if (!config->fatLTOObjects) in tryAddFatLTOFile()
272 if (config->formatBinary) { in addFile()
326 if (config->isStatic || config->relocatable) { in addFile()
378 if (config->emachine == EM_MIPS && config->gnuHash) in checkOptions()
381 if (config->emachine == EM_ARM) { in checkOptions()
382 if (!config->cmseImplib) { in checkOptions()
383 if (!config->cmseInputLib.empty()) in checkOptions()
385 if (!config->cmseOutputLib.empty()) in checkOptions()
389 if (config->cmseImplib) in checkOptions()
391 if (!config->cmseInputLib.empty()) in checkOptions()
393 if (!config->cmseOutputLib.empty()) in checkOptions()
397 if (config->fixCortexA53Errata843419 && config->emachine != EM_AARCH64) in checkOptions()
400 if (config->fixCortexA8 && config->emachine != EM_ARM) in checkOptions()
403 if (config->armBe8 && config->emachine != EM_ARM) in checkOptions()
406 if (config->fixCortexA8 && !config->isLE) in checkOptions()
409 if (config->tocOptimize && config->emachine != EM_PPC64) in checkOptions()
412 if (config->pcRelOptimize && config->emachine != EM_PPC64) in checkOptions()
415 if (config->relaxGP && config->emachine != EM_RISCV) in checkOptions()
418 if (config->pie && config->shared) in checkOptions()
421 if (!config->shared && !config->filterList.empty()) in checkOptions()
424 if (!config->shared && !config->auxiliaryList.empty()) in checkOptions()
427 if (config->strip == StripPolicy::All && config->emitRelocs) in checkOptions()
430 if (config->zText && config->zIfuncNoplt) in checkOptions()
433 if (config->relocatable) { in checkOptions()
434 if (config->shared) in checkOptions()
436 if (config->gdbIndex) in checkOptions()
438 if (config->icf != ICFLevel::None) in checkOptions()
440 if (config->pie) in checkOptions()
442 if (config->exportDynamic) in checkOptions()
446 if (config->executeOnly) { in checkOptions()
447 if (config->emachine != EM_AARCH64) in checkOptions()
450 if (config->singleRoRx && !script->hasSectionsCommand) in checkOptions()
454 if (config->zRetpolineplt && config->zForceIbt) in checkOptions()
457 if (config->emachine != EM_AARCH64) { in checkOptions()
458 if (config->zPacPlt) in checkOptions()
460 if (config->zForceBti) in checkOptions()
462 if (config->zBtiReport != "none") in checkOptions()
466 if (config->emachine != EM_386 && config->emachine != EM_X86_64 && in checkOptions()
467 config->zCetReport != "none") in checkOptions()
636 if (config->timeTraceEnabled) in linkerMain()
637 timeTraceProfilerInitialize(config->timeTraceGranularity, config->progName); in linkerMain()
656 if (config->timeTraceEnabled) { in linkerMain()
658 args.getLastArgValue(OPT_time_trace_eq).str(), config->outputFile)); in linkerMain()
677 bool diagRegular = !config->shared, diagShlib = !config->shared; in setUnresolvedSymbolPolicy()
721 config->unresolvedSymbols = in setUnresolvedSymbolPolicy()
723 config->unresolvedSymbolsInShlib = in setUnresolvedSymbolPolicy()
766 config->noDynamicLinker = true; in getDynamicLinker()
775 if (config->androidMemtagStack) in getMemtagMode()
778 else if (config->androidMemtagHeap) in getMemtagMode()
917 if (config->warnSymbolOrdering) in readCallGraph()
940 config->callGraphProfile[std::make_pair(from, to)] += count; in readCallGraph()
969 symbolIndices.push_back(rel.getSymbol(config->isMips64EL)); in processCallGraphRelocations()
976 symbolIndices.push_back(rel.getSymbol(config->isMips64EL)); in processCallGraphRelocations()
1009 config->callGraphProfile[{from, to}] += cgpe.cgp_weight; in readCallGraphsFromObjectFiles()
1132 if (!names.insert(s) && config->warnSymbolOrdering) in getSymbolOrderingFile()
1142 config->emachine); in getIsRela()
1161 const char *argv[] = {config->progName.data(), opt.data()}; in parseClangOption()
1182 config->remapInputs[fields[0]] = fields[1]; in remapInputs()
1184 config->remapInputsWildcards.emplace_back(std::move(*pat), fields[1]); in remapInputs()
1198 config->allowMultipleDefinition = in readConfigs()
1202 config->androidMemtagHeap = in readConfigs()
1204 config->androidMemtagStack = args.hasFlag(OPT_android_memtag_stack, in readConfigs()
1206 config->fatLTOObjects = in readConfigs()
1208 config->androidMemtagMode = getMemtagMode(args); in readConfigs()
1209 config->auxiliaryList = args::getStrings(args, OPT_auxiliary); in readConfigs()
1210 config->armBe8 = args.hasArg(OPT_be8); in readConfigs()
1215 config->bsymbolic = BsymbolicKind::NonWeakFunctions; in readConfigs()
1217 config->bsymbolic = BsymbolicKind::Functions; in readConfigs()
1219 config->bsymbolic = BsymbolicKind::NonWeak; in readConfigs()
1221 config->bsymbolic = BsymbolicKind::All; in readConfigs()
1223 config->callGraphProfileSort = getCGProfileSortKind(args); in readConfigs()
1224 config->checkSections = in readConfigs()
1226 config->chroot = args.getLastArgValue(OPT_chroot); in readConfigs()
1227 config->compressDebugSections = getCompressionType( in readConfigs()
1230 config->cref = args.hasArg(OPT_cref); in readConfigs()
1231 config->optimizeBBJumps = in readConfigs()
1233 config->demangle = args.hasFlag(OPT_demangle, OPT_no_demangle, true); in readConfigs()
1234 config->dependencyFile = args.getLastArgValue(OPT_dependency_file); in readConfigs()
1235 …config->dependentLibraries = args.hasFlag(OPT_dependent_libraries, OPT_no_dependent_libraries, tru… in readConfigs()
1236 config->disableVerify = args.hasArg(OPT_disable_verify); in readConfigs()
1237 config->discard = getDiscard(args); in readConfigs()
1238 config->dwoDir = args.getLastArgValue(OPT_plugin_opt_dwo_dir_eq); in readConfigs()
1239 config->dynamicLinker = getDynamicLinker(args); in readConfigs()
1240 config->ehFrameHdr = in readConfigs()
1242 config->emitLLVM = args.hasArg(OPT_plugin_opt_emit_llvm, false); in readConfigs()
1243 config->emitRelocs = args.hasArg(OPT_emit_relocs); in readConfigs()
1244 config->enableNewDtags = in readConfigs()
1246 config->entry = args.getLastArgValue(OPT_entry); in readConfigs()
1251 config->executeOnly = in readConfigs()
1253 config->exportDynamic = in readConfigs()
1256 config->filterList = args::getStrings(args, OPT_filter); in readConfigs()
1257 config->fini = args.getLastArgValue(OPT_fini, "_fini"); in readConfigs()
1258 config->fixCortexA53Errata843419 = args.hasArg(OPT_fix_cortex_a53_843419) && in readConfigs()
1260 config->cmseImplib = args.hasArg(OPT_cmse_implib); in readConfigs()
1261 config->cmseInputLib = args.getLastArgValue(OPT_in_implib); in readConfigs()
1262 config->cmseOutputLib = args.getLastArgValue(OPT_out_implib); in readConfigs()
1263 config->fixCortexA8 = in readConfigs()
1265 config->fortranCommon = in readConfigs()
1267 config->gcSections = args.hasFlag(OPT_gc_sections, OPT_no_gc_sections, false); in readConfigs()
1268 config->gnuUnique = args.hasFlag(OPT_gnu_unique, OPT_no_gnu_unique, true); in readConfigs()
1269 config->gdbIndex = args.hasFlag(OPT_gdb_index, OPT_no_gdb_index, false); in readConfigs()
1270 config->icf = getICF(args); in readConfigs()
1271 config->ignoreDataAddressEquality = in readConfigs()
1273 config->ignoreFunctionAddressEquality = in readConfigs()
1275 config->init = args.getLastArgValue(OPT_init, "_init"); in readConfigs()
1276 config->ltoAAPipeline = args.getLastArgValue(OPT_lto_aa_pipeline); in readConfigs()
1277 config->ltoCSProfileGenerate = args.hasArg(OPT_lto_cs_profile_generate); in readConfigs()
1278 config->ltoCSProfileFile = args.getLastArgValue(OPT_lto_cs_profile_file); in readConfigs()
1279 config->ltoPGOWarnMismatch = args.hasFlag(OPT_lto_pgo_warn_mismatch, in readConfigs()
1281 config->ltoDebugPassManager = args.hasArg(OPT_lto_debug_pass_manager); in readConfigs()
1282 config->ltoEmitAsm = args.hasArg(OPT_lto_emit_asm); in readConfigs()
1283 config->ltoNewPmPasses = args.getLastArgValue(OPT_lto_newpm_passes); in readConfigs()
1284 config->ltoWholeProgramVisibility = in readConfigs()
1287 config->ltoValidateAllVtablesHaveTypeInfos = in readConfigs()
1290 config->ltoo = args::getInteger(args, OPT_lto_O, 2); in readConfigs()
1291 if (config->ltoo > 3) in readConfigs()
1292 error("invalid optimization level for LTO: " + Twine(config->ltoo)); in readConfigs()
1294 args::getInteger(args, OPT_lto_CGO, args::getCGOptLevel(config->ltoo)); in readConfigs()
1296 config->ltoCgo = *level; in readConfigs()
1299 config->ltoObjPath = args.getLastArgValue(OPT_lto_obj_path_eq); in readConfigs()
1300 config->ltoPartitions = args::getInteger(args, OPT_lto_partitions, 1); in readConfigs()
1301 config->ltoSampleProfile = args.getLastArgValue(OPT_lto_sample_profile); in readConfigs()
1302 config->ltoBasicBlockSections = in readConfigs()
1304 config->ltoUniqueBasicBlockSectionNames = in readConfigs()
1307 config->mapFile = args.getLastArgValue(OPT_Map); in readConfigs()
1308 config->mipsGotSize = args::getInteger(args, OPT_mips_got_size, 0xfff0); in readConfigs()
1309 config->mergeArmExidx = in readConfigs()
1311 config->mmapOutputFile = in readConfigs()
1313 config->nmagic = args.hasFlag(OPT_nmagic, OPT_no_nmagic, false); in readConfigs()
1314 config->noinhibitExec = args.hasArg(OPT_noinhibit_exec); in readConfigs()
1315 config->nostdlib = args.hasArg(OPT_nostdlib); in readConfigs()
1316 config->oFormatBinary = isOutputFormatBinary(args); in readConfigs()
1317 config->omagic = args.hasFlag(OPT_omagic, OPT_no_omagic, false); in readConfigs()
1318 config->optRemarksFilename = args.getLastArgValue(OPT_opt_remarks_filename); in readConfigs()
1319 config->optStatsFilename = args.getLastArgValue(OPT_plugin_opt_stats_file); in readConfigs()
1328 config->optRemarksHotnessThreshold = *resultOrErr; in readConfigs()
1331 config->optRemarksPasses = args.getLastArgValue(OPT_opt_remarks_passes); in readConfigs()
1332 config->optRemarksWithHotness = args.hasArg(OPT_opt_remarks_with_hotness); in readConfigs()
1333 config->optRemarksFormat = args.getLastArgValue(OPT_opt_remarks_format); in readConfigs()
1334 config->optimize = args::getInteger(args, OPT_O, 1); in readConfigs()
1335 config->orphanHandling = getOrphanHandling(args); in readConfigs()
1336 config->outputFile = args.getLastArgValue(OPT_o); in readConfigs()
1337 config->packageMetadata = args.getLastArgValue(OPT_package_metadata); in readConfigs()
1338 config->pie = args.hasFlag(OPT_pie, OPT_no_pie, false); in readConfigs()
1339 config->printIcfSections = in readConfigs()
1341 config->printGcSections = in readConfigs()
1343 config->printMemoryUsage = args.hasArg(OPT_print_memory_usage); in readConfigs()
1344 config->printArchiveStats = args.getLastArgValue(OPT_print_archive_stats); in readConfigs()
1345 config->printSymbolOrder = in readConfigs()
1347 config->relax = args.hasFlag(OPT_relax, OPT_no_relax, true); in readConfigs()
1348 config->relaxGP = args.hasFlag(OPT_relax_gp, OPT_no_relax_gp, false); in readConfigs()
1349 config->rpath = getRpath(args); in readConfigs()
1350 config->relocatable = args.hasArg(OPT_relocatable); in readConfigs()
1355 config->saveTempsArgs.insert(s); in readConfigs()
1360 config->saveTempsArgs.insert(s); in readConfigs()
1366 config->searchPaths = args::getStrings(args, OPT_library_path); in readConfigs()
1367 config->sectionStartMap = getSectionStartMap(args); in readConfigs()
1368 config->shared = args.hasArg(OPT_shared); in readConfigs()
1369 config->singleRoRx = !args.hasFlag(OPT_rosegment, OPT_no_rosegment, true); in readConfigs()
1370 config->soName = args.getLastArgValue(OPT_soname); in readConfigs()
1371 config->sortSection = getSortSection(args); in readConfigs()
1372 config->splitStackAdjustSize = args::getInteger(args, OPT_split_stack_adjust_size, 16384); in readConfigs()
1373 config->strip = getStrip(args); in readConfigs()
1374 config->sysroot = args.getLastArgValue(OPT_sysroot); in readConfigs()
1375 config->target1Rel = args.hasFlag(OPT_target1_rel, OPT_target1_abs, false); in readConfigs()
1376 config->target2 = getTarget2(args); in readConfigs()
1377 config->thinLTOCacheDir = args.getLastArgValue(OPT_thinlto_cache_dir); in readConfigs()
1378 config->thinLTOCachePolicy = CHECK( in readConfigs()
1381 config->thinLTOEmitImportsFiles = args.hasArg(OPT_thinlto_emit_imports_files); in readConfigs()
1382 config->thinLTOEmitIndexFiles = args.hasArg(OPT_thinlto_emit_index_files) || in readConfigs()
1385 config->thinLTOIndexOnly = args.hasArg(OPT_thinlto_index_only) || in readConfigs()
1387 config->thinLTOIndexOnlyArg = args.getLastArgValue(OPT_thinlto_index_only_eq); in readConfigs()
1388 config->thinLTOObjectSuffixReplace = in readConfigs()
1390 std::tie(config->thinLTOPrefixReplaceOld, config->thinLTOPrefixReplaceNew, in readConfigs()
1391 config->thinLTOPrefixReplaceNativeObject) = in readConfigs()
1393 if (config->thinLTOEmitIndexFiles && !config->thinLTOIndexOnly) { in readConfigs()
1401 if (!config->thinLTOPrefixReplaceNativeObject.empty() && in readConfigs()
1402 config->thinLTOIndexOnlyArg.empty()) { in readConfigs()
1406 config->thinLTOModulesToCompile = in readConfigs()
1408 config->timeTraceEnabled = args.hasArg(OPT_time_trace_eq); in readConfigs()
1409 config->timeTraceGranularity = in readConfigs()
1411 config->trace = args.hasArg(OPT_trace); in readConfigs()
1412 config->undefined = args::getStrings(args, OPT_undefined); in readConfigs()
1413 config->undefinedVersion = in readConfigs()
1415 config->unique = args.hasArg(OPT_unique); in readConfigs()
1416 config->useAndroidRelrTags = args.hasFlag( in readConfigs()
1418 config->warnBackrefs = in readConfigs()
1420 config->warnCommon = args.hasFlag(OPT_warn_common, OPT_no_warn_common, false); in readConfigs()
1421 config->warnSymbolOrdering = in readConfigs()
1423 config->whyExtract = args.getLastArgValue(OPT_why_extract); in readConfigs()
1424 config->zCombreloc = getZFlag(args, "combreloc", "nocombreloc", true); in readConfigs()
1425 config->zCopyreloc = getZFlag(args, "copyreloc", "nocopyreloc", true); in readConfigs()
1426 config->zForceBti = hasZOption(args, "force-bti"); in readConfigs()
1427 config->zForceIbt = hasZOption(args, "force-ibt"); in readConfigs()
1428 config->zGlobal = hasZOption(args, "global"); in readConfigs()
1429 config->zGnustack = getZGnuStack(args); in readConfigs()
1430 config->zHazardplt = hasZOption(args, "hazardplt"); in readConfigs()
1431 config->zIfuncNoplt = hasZOption(args, "ifunc-noplt"); in readConfigs()
1432 config->zInitfirst = hasZOption(args, "initfirst"); in readConfigs()
1433 config->zInterpose = hasZOption(args, "interpose"); in readConfigs()
1434 config->zKeepTextSectionPrefix = getZFlag( in readConfigs()
1436 config->zNodefaultlib = hasZOption(args, "nodefaultlib"); in readConfigs()
1437 config->zNodelete = hasZOption(args, "nodelete"); in readConfigs()
1438 config->zNodlopen = hasZOption(args, "nodlopen"); in readConfigs()
1439 config->zNow = getZFlag(args, "now", "lazy", false); in readConfigs()
1440 config->zOrigin = hasZOption(args, "origin"); in readConfigs()
1441 config->zPacPlt = hasZOption(args, "pac-plt"); in readConfigs()
1442 config->zRelro = getZFlag(args, "relro", "norelro", true); in readConfigs()
1443 config->zRetpolineplt = hasZOption(args, "retpolineplt"); in readConfigs()
1444 config->zRodynamic = hasZOption(args, "rodynamic"); in readConfigs()
1445 config->zSeparate = getZSeparate(args); in readConfigs()
1446 config->zShstk = hasZOption(args, "shstk"); in readConfigs()
1447 config->zStackSize = args::getZOptionValue(args, OPT_z, "stack-size", 0); in readConfigs()
1448 config->zStartStopGC = in readConfigs()
1450 config->zStartStopVisibility = getZStartStopVisibility(args); in readConfigs()
1451 config->zText = getZFlag(args, "text", "notext", true); in readConfigs()
1452 config->zWxneeded = hasZOption(args, "wxneeded"); in readConfigs()
1454 config->power10Stubs = args.getLastArgValue(OPT_power10_stubs_eq) != "no"; in readConfigs()
1458 config->optEB = true; in readConfigs()
1460 config->optEL = true; in readConfigs()
1491 config->shuffleSections.emplace_back(std::move(*pat), uint32_t(v)); in readConfigs()
1496 auto reports = {std::make_pair("bti-report", &config->zBtiReport), in readConfigs()
1497 std::make_pair("cet-report", &config->zCetReport)}; in readConfigs()
1531 config->deadRelocInNonAlloc.emplace_back(std::move(*pat), v); in readConfigs()
1557 config->passPlugins = args::getStrings(args, OPT_load_pass_plugins); in readConfigs()
1562 config->mllvmOpts.emplace_back(arg->getValue()); in readConfigs()
1565 config->ltoKind = LtoKind::Default; in readConfigs()
1569 config->ltoKind = LtoKind::UnifiedThin; in readConfigs()
1571 config->ltoKind = LtoKind::UnifiedRegular; in readConfigs()
1573 config->ltoKind = LtoKind::Default; in readConfigs()
1589 config->thinLTOJobs = v; in readConfigs()
1595 config->thinLTOJobs = arg->getValue(); in readConfigs()
1596 config->threadCount = parallel::strategy.compute_thread_count(); in readConfigs()
1598 if (config->ltoPartitions == 0) in readConfigs()
1600 if (!get_threadpool_strategy(config->thinLTOJobs)) in readConfigs()
1601 error("--thinlto-jobs: invalid job count: " + config->thinLTOJobs); in readConfigs()
1603 if (config->splitStackAdjustSize < 0) in readConfigs()
1617 std::tie(config->ekind, config->emachine, config->osabi) = in readConfigs()
1619 config->mipsN32Abi = in readConfigs()
1621 config->emulation = s; in readConfigs()
1628 config->sysvHash = true; in readConfigs()
1630 config->gnuHash = true; in readConfigs()
1632 config->sysvHash = config->gnuHash = true; in readConfigs()
1638 config->mapFile = "-"; in readConfigs()
1643 if (config->nmagic || config->omagic || config->relocatable) in readConfigs()
1644 config->zRelro = false; in readConfigs()
1646 std::tie(config->buildId, config->buildIdVector) = getBuildId(args); in readConfigs()
1649 config->relrGlibc = true; in readConfigs()
1650 config->relrPackDynRelocs = true; in readConfigs()
1652 std::tie(config->androidPackDynRelocs, config->relrPackDynRelocs) = in readConfigs()
1661 config->symbolOrderingFile = getSymbolOrderingFile(*buffer); in readConfigs()
1664 config->callGraphProfileSort = CGProfileSortKind::None; in readConfigs()
1668 assert(config->versionDefinitions.empty()); in readConfigs()
1669 config->versionDefinitions.push_back( in readConfigs()
1671 config->versionDefinitions.push_back( in readConfigs()
1677 config->versionDefinitions[VER_NDX_LOCAL].nonLocalPatterns.push_back( in readConfigs()
1681 config->versionDefinitions[VER_NDX_GLOBAL].nonLocalPatterns.push_back( in readConfigs()
1688 config->warnBackrefsExclude.push_back(std::move(*pat)); in readConfigs()
1700 config->dynamicList.push_back( in readConfigs()
1707 config->symbolic = in readConfigs()
1708 config->bsymbolic == BsymbolicKind::All || args.hasArg(OPT_dynamic_list); in readConfigs()
1728 ELFKind k = config->ekind; in setConfigs()
1729 uint16_t m = config->emachine; in setConfigs()
1731 config->copyRelocs = (config->relocatable || config->emitRelocs); in setConfigs()
1732 config->is64 = (k == ELF64LEKind || k == ELF64BEKind); in setConfigs()
1733 config->isLE = (k == ELF32LEKind || k == ELF64LEKind); in setConfigs()
1734 config->endianness = config->isLE ? endianness::little : endianness::big; in setConfigs()
1735 config->isMips64EL = (k == ELF64LEKind && m == EM_MIPS); in setConfigs()
1736 config->isPic = config->pie || config->shared; in setConfigs()
1737 config->picThunk = args.hasArg(OPT_pic_veneer, config->isPic); in setConfigs()
1738 config->wordsize = config->is64 ? 8 : 4; in setConfigs()
1754 config->isRela = getIsRela(args); in setConfigs()
1761 config->writeAddends = args.hasFlag(OPT_apply_dynamic_relocs, in setConfigs()
1763 !config->isRela; in setConfigs()
1772 config->checkDynamicRelocs = in setConfigs()
1775 config->tocOptimize = in setConfigs()
1777 config->pcRelOptimize = in setConfigs()
1828 config->asNeeded = true; in createFiles()
1831 config->formatBinary = isFormatBinary(arg->getValue()); in createFiles()
1834 config->asNeeded = false; in createFiles()
1839 config->isStatic = true; in createFiles()
1842 config->isStatic = false; in createFiles()
1889 stack.emplace_back(config->asNeeded, config->isStatic, inWholeArchive); in createFiles()
1896 std::tie(config->asNeeded, config->isStatic, inWholeArchive) = stack.back(); in createFiles()
1908 if (config->ekind != ELFNoneKind) in inferMachineType()
1914 config->ekind = f->ekind; in inferMachineType()
1915 config->emachine = f->emachine; in inferMachineType()
1916 config->osabi = f->osabi; in inferMachineType()
1917 config->mipsN32Abi = config->emachine == EM_MIPS && isMipsN32Abi(f); in inferMachineType()
1932 if (config->nmagic || config->omagic) { in getMaxPageSize()
1949 if (config->nmagic || config->omagic) { in getCommonPageSize()
1955 if (val > config->maxPageSize) in getCommonPageSize()
1956 val = config->maxPageSize; in getCommonPageSize()
1974 if ((v % config->maxPageSize) != 0) in getImageBase()
2035 if (!config->whyExtract.empty()) in handleUndefined()
2067 if (config->printArchiveStats.empty()) in writeArchiveStats()
2071 raw_fd_ostream os = ctx.openAuxiliaryFile(config->printArchiveStats, ec); in writeArchiveStats()
2073 error("--print-archive-stats=: cannot open " + config->printArchiveStats + in writeArchiveStats()
2097 if (config->whyExtract.empty()) in writeWhyExtract()
2101 raw_fd_ostream os = ctx.openAuxiliaryFile(config->whyExtract, ec); in writeWhyExtract()
2103 error("cannot open --why-extract= file " + config->whyExtract + ": " + in writeWhyExtract()
2123 for (const llvm::GlobPattern &pat : config->warnBackrefsExclude) in reportBackrefs()
2160 raw_fd_ostream os = ctx.openAuxiliaryFile(config->dependencyFile, ec); in writeDependencyFile()
2162 error("cannot open " + config->dependencyFile + ": " + ec.message()); in writeDependencyFile()
2189 os << config->outputFile << ":"; in writeDependencyFile()
2190 for (StringRef path : config->dependencyFiles) { in writeDependencyFile()
2196 for (StringRef path : config->dependencyFiles) { in writeDependencyFile()
2234 if (config->icf == ICFLevel::Safe || !(d->section->flags & SHF_EXECINSTR)) in markAddrsig()
2255 if (config->icf == ICFLevel::All && config->ignoreDataAddressEquality) in findKeepUniqueSections()
2323 if (!config->sectionStartMap.empty()) in readSymbolPartitionSection()
2326 if (config->emachine == EM_MIPS) in readSymbolPartitionSection()
2392 if (!config->relocatable) in compileBitcodeFiles()
2499 ? config->versionDefinitions[sym2->versionId].name == suffix1 + 1 in combineVersionedSymbol()
2530 if (config->versionDefinitions.size() > 2) in redirectSymbols()
2550 static void checkAndReportMissingFeature(StringRef config, uint32_t features, in checkAndReportMissingFeature() argument
2553 if (config == "error") in checkAndReportMissingFeature()
2555 else if (config == "warning") in checkAndReportMissingFeature()
2569 if (config->emachine != EM_386 && config->emachine != EM_X86_64 && in getAndFeatures()
2570 config->emachine != EM_AARCH64) in getAndFeatures()
2578 config->zBtiReport, features, GNU_PROPERTY_AARCH64_FEATURE_1_BTI, in getAndFeatures()
2583 config->zCetReport, features, GNU_PROPERTY_X86_FEATURE_1_IBT, in getAndFeatures()
2588 config->zCetReport, features, GNU_PROPERTY_X86_FEATURE_1_SHSTK, in getAndFeatures()
2592 if (config->zForceBti && !(features & GNU_PROPERTY_AARCH64_FEATURE_1_BTI)) { in getAndFeatures()
2594 if (config->zBtiReport == "none") in getAndFeatures()
2597 } else if (config->zForceIbt && in getAndFeatures()
2599 if (config->zCetReport == "none") in getAndFeatures()
2604 if (config->zPacPlt && !(features & GNU_PROPERTY_AARCH64_FEATURE_1_PAC)) { in getAndFeatures()
2613 if (config->zShstk) in getAndFeatures()
2664 if (config->emachine == EM_MIPS) in link()
2665 config->sysvHash = true; in link()
2667 config->sysvHash = config->gnuHash = true; in link()
2671 if (config->outputFile.empty()) in link()
2672 config->outputFile = "a.out"; in link()
2679 if (auto e = tryCreateFile(config->outputFile)) in link()
2680 error("cannot open output file " + config->outputFile + ": " + in link()
2682 if (auto e = tryCreateFile(config->mapFile)) in link()
2683 error("cannot open map file " + config->mapFile + ": " + e.message()); in link()
2684 if (auto e = tryCreateFile(config->whyExtract)) in link()
2685 error("cannot open --why-extract= file " + config->whyExtract + ": " + in link()
2694 config->warnMissingEntry = in link()
2695 (!config->entry.empty() || (!config->shared && !config->relocatable)); in link()
2696 if (config->entry.empty() && !config->relocatable) in link()
2697 config->entry = (config->emachine == EM_MIPS) ? "__start" : "_start"; in link()
2707 for (StringRef name : config->undefined) in link()
2730 config->hasDynSymTab = in link()
2731 !ctx.sharedFiles.empty() || config->isPic || config->exportDynamic; in link()
2742 for (StringRef name : config->undefined) in link()
2747 if (Symbol *sym = symtab.find(config->entry)) in link()
2755 if (Symbol *sym = dyn_cast_or_null<Defined>(symtab.find(config->init))) in link()
2757 if (Symbol *sym = dyn_cast_or_null<Defined>(symtab.find(config->fini))) in link()
2826 if (!config->relocatable) in link()
2834 if (!config->relocatable) { in link()
2846 const bool skipLinkedOutput = config->thinLTOIndexOnly || config->emitLLVM || in link()
2847 config->ltoEmitAsm || in link()
2848 !config->thinLTOModulesToCompile.empty(); in link()
2851 if (config->ltoValidateAllVtablesHaveTypeInfos) in link()
2931 if (config->strip != StripPolicy::None) { in link()
2947 if (!config->dependencyFile.empty()) in link()
2956 config->andFeatures = getAndFeatures(); in link()
2963 config->eflags = target->calcEFlags(); in link()
2968 config->maxPageSize = getMaxPageSize(args); in link()
2974 config->commonPageSize = getCommonPageSize(args); in link()
2976 config->imageBase = getImageBase(args); in link()
2979 if (!config->relocatable) in link()
3004 if (!config->relocatable) in link()
3008 if (config->emachine == EM_RISCV) in link()
3038 if (config->icf != ICFLevel::None) { in link()
3044 if (config->callGraphProfileSort != CGProfileSortKind::None) { in link()