Lines Matching refs:symbol
211 // name can be presented as C symbol
381 // symbol section index for _DYNAMIC. Now it will be ABS.
670 // ignore if symbol has no fragRef
674 // the value of a TLS symbol is the offset to the TLS segment
728 // number of entries in symbol tables starts from 1 to hold the special entry
741 // number of local symbol in the .symtab and .dynsym
746 Module::const_sym_iterator symbol, symEnd;
750 for (symbol = symbols.begin(); symbol != symEnd; ++symbol) {
752 if (hasEntryInStrTab(**symbol))
753 strtab += (*symbol)->nameSize() + 1;
771 for (symbol = symbols.localDynBegin(); symbol != symEnd; ++symbol) {
773 if (hasEntryInStrTab(**symbol))
774 dynstr += (*symbol)->nameSize() + 1;
784 for (symbol = symbols.dynamicBegin(); symbol != symEnd; ++symbol) {
785 if (DynsymCompare().needGNUHash(**symbol))
837 // set .dynsym sh_info to one greater than the symbol table
838 // index of the last local symbol
856 // set .symtab sh_info to one greater than the symbol table
857 // index of the last local symbol
900 /// emitSymbol32 - emit an ELF32 symbol
908 // write out symbol
923 /// emitSymbol64 - emit an ELF64 symbol
931 // write out symbol
978 // emit the first ELF symbol
995 Module::const_sym_iterator symbol, symEnd;
998 for (symbol = symbols.begin(); symbol != symEnd; ++symbol) {
1000 entry = m_pSymIndexMap->insert(*symbol, sym_exist);
1004 emitSymbol32(symtab32[symIdx], **symbol, strtab, strtabsize, symIdx);
1006 emitSymbol64(symtab64[symIdx], **symbol, strtab, strtabsize, symIdx);
1008 if (hasEntryInStrTab(**symbol))
1009 strtabsize += (*symbol)->nameSize() + 1;
1053 // emit the first ELF symbol
1074 Module::const_sym_iterator symbol, symEnd = symbols.dynamicEnd();
1075 for (symbol = symbols.localDynBegin(); symbol != symEnd; ++symbol) {
1077 emitSymbol32(symtab32[symIdx], **symbol, strtab, strtabsize, symIdx);
1079 emitSymbol64(symtab64[symIdx], **symbol, strtab, strtabsize, symIdx);
1080 // maintain output's symbol and index map
1081 entry = m_pSymIndexMap->insert(*symbol, sym_exist);
1085 if (hasEntryInStrTab(**symbol))
1086 strtabsize += (*symbol)->nameSize() + 1;
1162 Module::const_sym_iterator symbol, symEnd = pSymtab.dynamicEnd();
1163 for (symbol = pSymtab.localDynBegin(); symbol != symEnd; ++symbol) {
1164 llvm::StringRef name((*symbol)->name());
1198 Module::const_sym_iterator symbol, symEnd = pSymtab.dynamicEnd();
1199 for (symbol = pSymtab.dynamicBegin(); symbol != symEnd; ++symbol) {
1200 if (DynsymCompare().needGNUHash(**symbol))
1245 for (symbol = pSymtab.localDynBegin() + symidx - 1; symbol != symEnd;
1246 ++symbol) {
1248 uint32_t djbhash = hasher((*symbol)->name());
1250 symmap.insert(std::make_pair(hash, std::make_pair(*symbol, djbhash)));
1261 // rearrange the hashed symbol ordering
1459 // (Luba) Is a absolute but not global (weak or local) symbol meaningful?
1469 // if the IndirectFunc symbol (i.e., STT_GNU_IFUNC) is from dynobj, change
1512 /// getSymbolIdx - called by emitRelocation to get the ouput symbol table index
1516 assert(entry != m_pSymIndexMap->end() && "symbol not found in the symbol table");
1594 // We have to reset the description of the symbol here. When doing
1604 // allocate TLS common symbol in tbss section
1620 // We have to reset the description of the symbol here. When doing
1630 // allocate TLS common symbol in tbss section
2179 // change .tbss and .tdata section symbol from Local to LocalDyn category
2332 // If a local symbol is in the LDContext's symbol table, it's a real local
2333 // symbol. We should not add it
2353 // If a local symbol is in the LDContext's symbol table, it's a real local
2354 // symbol. We should not add it
2390 /// isSymbolPreemtible - whether the symbol can be preemted by other
2409 // A local defined symbol should be non-preemptible.
2411 // relocation refers to a local defined symbol, and we should generate a
2419 /// symbolNeedsDynRel - return whether the symbol needs a dynamic relocation
2433 // An absolute symbol can be resolved directly if it is either local
2452 /// symbolNeedsPLT - return whether the symbol needs a PLT entry
2461 // An IndirectFunc symbol (i.e., STT_GNU_IFUNC) always needs a plt entry
2479 /// symbolHasFinalValue - return true if the symbol's value can be decided at
2481 /// @ref Google gold linker, Symbol::final_value_is_known
2492 // if the symbol is from dynamic object, then its value is unknown
2496 // if the symbol is not in dynamic object and is not undefined, then its value
2501 // if the symbol is undefined and not in dynamic objects, for example, a weak
2502 // undefined symbol, then whether the symbol's final value can be known
2507 /// symbolNeedsCopyReloc - return whether the symbol needs a copy relocation
2511 // only the reference from dynamic executable to non-function symbol in
2616 // FIXME: in bfd and gold linker, an undefined symbol might be hashed
2617 // when the ouput is not PIC, if the symbol is referred by a non pc-relative