reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/lld/ELF/Relocations.cpp
 1187   if (symIndex != 0 && maybeReportUndefined(sym, sec, rel.r_offset))
 1191   RelExpr expr = target->getRelExpr(type, sym, relocatedAddr);
 1208   if (sym.isGnuIFunc() && !config->zText && config->warnIfuncTextrel) {
 1215          getLocation(sec, sym, offset));
 1219   int64_t addend = computeAddend<ELFT>(rel, end, sec, expr, sym.isLocal());
 1229   if (!sym.isPreemptible && (!sym.isGnuIFunc() || config->zIfuncNoplt)) {
 1229   if (!sym.isPreemptible && (!sym.isGnuIFunc() || config->zIfuncNoplt)) {
 1230     if (expr == R_GOT_PC && !isAbsoluteValue(sym)) {
 1255           handleTlsRelocation<ELFT>(type, sym, sec, offset, addend, expr)) {
 1262   if (sym.isGnuIFunc() && config->zIfuncNoplt) {
 1263     sym.exportDynamic = true;
 1264     mainPart->relaDyn->addReloc(type, &sec, offset, &sym, addend, R_ADDEND, type);
 1270   if (!sym.isGnuIFunc() || sym.isPreemptible) {
 1270   if (!sym.isGnuIFunc() || sym.isPreemptible) {
 1272     if (needsPlt(expr) && !sym.isInPlt())
 1273       addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
 1285         in.mipsGot->addEntry(*sec.file, sym, addend, expr);
 1286       } else if (!sym.isInGot()) {
 1287         addGotEntry(sym);
 1331     if (!sym.isInPlt()) {
 1333       sym.isInIplt = true;
 1342       auto *directSym = make<Defined>(cast<Defined>(sym));
 1345       sym.pltIndex = directSym->pltIndex;
 1353       sym.gotInIgot = true;
 1357       unsigned entryOffset = sym.pltIndex * target->pltEntrySize;
 1361       auto &d = cast<Defined>(sym);
 1369       if (sym.gotInIgot) {
 1378         sym.gotInIgot = false;
 1379         addGotEntry(sym);
 1384   processRelocAux<ELFT>(sec, expr, type, offset, sym, rel, addend);