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

Declarations

tools/lld/ELF/AArch64ErrataFix.h
   19 class Defined;
tools/lld/ELF/ARMErrataFix.h
   20 class Defined;
tools/lld/ELF/InputSection.h
   27 class Defined;
tools/lld/ELF/LinkerScript.h
   31 class Defined;
tools/lld/ELF/Symbols.h
   33 class Defined;
tools/lld/ELF/SyntheticSections.h
   33 class Defined;
tools/lld/ELF/Target.h
   22 class Defined;
tools/lld/ELF/Thunks.h
   16 class Defined;

References

include/llvm/ADT/ArrayRef.h
  108         const ArrayRef<U *> &A,
  110            std::is_convertible<U *const *, T const *>::value>::type * = nullptr)
  127     ArrayRef(const std::vector<U *, A> &Vec,
  129                  std::is_convertible<U *const *, T const *>::value>::type* = 0)
include/llvm/ADT/DenseMapInfo.h
   39   static inline T* getEmptyKey() {
   41     Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
   45   static inline T* getTombstoneKey() {
   47     Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
   51   static unsigned getHashValue(const T *PtrVal) {
   56   static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
   56   static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
include/llvm/Support/Alignment.h
  103     return Constant<std::alignment_of<T>::value>();
include/llvm/Support/Allocator.h
   81   template <typename T> T *Allocate(size_t Num = 1) {
   82     return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T)));
   82     return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T)));
  470       for (char *Ptr = Begin; Ptr + sizeof(T) <= End; Ptr += sizeof(T))
  470       for (char *Ptr = Begin; Ptr + sizeof(T) <= End; Ptr += sizeof(T))
  478       char *Begin = (char *)alignAddr(*I, Align::Of<T>());
  488       DestroyElements((char *)alignAddr(Ptr, Align::Of<T>()),
  496   T *Allocate(size_t num = 1) { return Allocator.Allocate<T>(num); }
  496   T *Allocate(size_t num = 1) { return Allocator.Allocate<T>(num); }
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
   77     return isa_impl<To, From>::doit(Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  165   using ret_type = To &;       // Normal case, return Ty&
  168   using ret_type = const To &; // Normal case, return Ty&
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  258   return cast_convert_val<X, Y,
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
include/llvm/Support/PointerLikeTypeTraits.h
   56   static inline void *getAsVoidPointer(T *P) { return P; }
   57   static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
   59   enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
   91   typedef PointerLikeTypeTraits<T *> NonConst;
   93   static inline const void *getAsVoidPointer(const T *P) {
   96   static inline const T *getFromVoidPointer(const void *P) {
tools/lld/ELF/AArch64ErrataFix.cpp
  445       auto *def = dyn_cast<Defined>(b);
  445       auto *def = dyn_cast<Defined>(b);
  460     std::vector<const Defined *> &mapSyms = kv.second;
  589     std::vector<const Defined *> &mapSyms = sectionMap[isec];
tools/lld/ELF/AArch64ErrataFix.h
   42   std::map<InputSection *, std::vector<const Defined *>> sectionMap;
tools/lld/ELF/ARMErrataFix.cpp
  321       auto *def = dyn_cast<Defined>(s);
  321       auto *def = dyn_cast<Defined>(s);
  335     std::vector<const Defined *> &mapSyms = kv.second;
  484     std::vector<const Defined *> &mapSyms = sectionMap[isec];
tools/lld/ELF/ARMErrataFix.h
   43   llvm::DenseMap<InputSection *, std::vector<const Defined *>> sectionMap;
tools/lld/ELF/Arch/Mips.cpp
  363   auto *d = dyn_cast<Defined>(&s);
  721 template <class ELFT> bool isMipsPIC(const Defined *sym) {
tools/lld/ELF/Arch/PPC64.cpp
  109 static std::pair<Defined *, int64_t>
  128       return {dyn_cast<Defined>(&sym), getAddend<ELFT>(relas[index])};
  164   Defined *defSym = dyn_cast<Defined>(rel.sym);
  164   Defined *defSym = dyn_cast<Defined>(rel.sym);
  168   Defined *d;
tools/lld/ELF/CallGraphSort.cpp
  251             if (auto *d = dyn_cast<Defined>(sym))
  251             if (auto *d = dyn_cast<Defined>(sym))
tools/lld/ELF/DWARF.cpp
  102   if (auto *dr = dyn_cast<Defined>(&s)) {
  102   if (auto *dr = dyn_cast<Defined>(&s)) {
tools/lld/ELF/Driver.cpp
  725     if (Defined *dr = dyn_cast_or_null<Defined>(sym))
  725     if (Defined *dr = dyn_cast_or_null<Defined>(sym))
  751       auto *fromSym = dyn_cast<Defined>(&obj->getSymbol(cgpe.cgp_from));
  751       auto *fromSym = dyn_cast<Defined>(&obj->getSymbol(cgpe.cgp_from));
  752       auto *toSym = dyn_cast<Defined>(&obj->getSymbol(cgpe.cgp_to));
  752       auto *toSym = dyn_cast<Defined>(&obj->getSymbol(cgpe.cgp_to));
 1449   if (auto *d = dyn_cast_or_null<Defined>(s))
 1449   if (auto *d = dyn_cast_or_null<Defined>(s))
 1464     auto *d = dyn_cast_or_null<Defined>(symtab->find(name));
 1464     auto *d = dyn_cast_or_null<Defined>(symtab->find(name));
 1522   if (!isa<Defined>(sym) || !sym->includeInDynsym())
tools/lld/ELF/ICF.cpp
  254     auto *da = dyn_cast<Defined>(&sa);
  254     auto *da = dyn_cast<Defined>(&sa);
  255     auto *db = dyn_cast<Defined>(&sb);
  255     auto *db = dyn_cast<Defined>(&sb);
  334     auto *da = cast<Defined>(&sa);
  334     auto *da = cast<Defined>(&sa);
  335     auto *db = cast<Defined>(&sb);
  335     auto *db = cast<Defined>(&sb);
  433     if (auto *d = dyn_cast<Defined>(&s))
  433     if (auto *d = dyn_cast<Defined>(&s))
tools/lld/ELF/InputFiles.cpp
 1027             make<Defined>(this, name, binding, stOther, type, value, size, sec);
 1063           Defined{this, name, binding, stOther, type, value, size, sec});
 1424   Defined newSym(&f, name, binding, visibility, type, 0, 0, nullptr);
tools/lld/ELF/InputSection.cpp
  284 Defined *InputSectionBase::getEnclosingFunction(uint64_t offset) {
  286     if (Defined *d = dyn_cast<Defined>(b))
  286     if (Defined *d = dyn_cast<Defined>(b))
  314   if (Defined *d = getEnclosingFunction<ELFT>(offset))
  349     if (auto *d = dyn_cast<Defined>(b))
  349     if (auto *d = dyn_cast<Defined>(b))
  442       auto *d = dyn_cast<Defined>(&sym);
  442       auto *d = dyn_cast<Defined>(&sym);
  571   const Defined *d = cast<Defined>(sym);
  571   const Defined *d = cast<Defined>(sym);
  992     DenseSet<Defined *> &prologues, std::vector<Relocation *> &morestackCalls) {
 1008   std::vector<Defined *> functions(prologues.begin(), prologues.end());
 1014   for (Defined *f : functions) {
 1027                                        const DenseSet<Defined *> &prologues) {
 1028   for (Defined *f : prologues)
 1043   DenseSet<Defined *> prologues;
 1070     if (Defined *d = dyn_cast<Defined>(rel.sym))
 1070     if (Defined *d = dyn_cast<Defined>(rel.sym))
 1078     if (Defined *f = getEnclosingFunction<ELFT>(rel.offset)) {
tools/lld/ELF/InputSection.h
  170   Defined *getEnclosingFunction(uint64_t offset);
tools/lld/ELF/LTO.cpp
  191     const auto *dr = dyn_cast<Defined>(sym);
  191     const auto *dr = dyn_cast<Defined>(sym);
tools/lld/ELF/LinkerScript.cpp
  182   Defined newSym(nullptr, cmd->name, STB_GLOBAL, visibility, STT_NOTYPE,
  188   cmd->sym = cast<Defined>(sym);
  198   Defined newSym(nullptr, cmd->name, STB_GLOBAL, visibility, STT_NOTYPE, 0, 0,
  206   cmd->sym = cast<Defined>(sym);
  212     DenseMap<const Defined *, std::pair<SectionBase *, uint64_t>>;
  237 static const Defined *
  239   const Defined *changed = nullptr;
  241     const Defined *sym = it.first;
 1082 const Defined *LinkerScript::assignAddresses() {
 1171     if (auto *ds = dyn_cast<Defined>(sym))
 1171     if (auto *ds = dyn_cast<Defined>(sym))
tools/lld/ELF/LinkerScript.h
   96   Defined *sym = nullptr;
  280   const Defined *assignAddresses();
tools/lld/ELF/MapFile.cpp
   39 using SymbolMapTy = DenseMap<const SectionBase *, SmallVector<Defined *, 4>>;
   54 static std::vector<Defined *> getSymbols() {
   55   std::vector<Defined *> v;
   58       if (auto *dr = dyn_cast<Defined>(b))
   58       if (auto *dr = dyn_cast<Defined>(b))
   68   for (Defined *dr : syms)
   85 getSymbolStrings(ArrayRef<Defined *> syms) {
  154   std::vector<Defined *> syms = getSymbols();
  240       if (auto *d = dyn_cast<Defined>(sym))
  240       if (auto *d = dyn_cast<Defined>(sym))
tools/lld/ELF/MarkLive.cpp
   98   if (auto *d = dyn_cast<Defined>(&sym)) {
   98   if (auto *d = dyn_cast<Defined>(&sym)) {
  207   if (auto *d = dyn_cast_or_null<Defined>(sym))
  207   if (auto *d = dyn_cast_or_null<Defined>(sym))
  301       if (auto *d = dyn_cast<Defined>(s))
  301       if (auto *d = dyn_cast<Defined>(s))
tools/lld/ELF/Relocations.cpp
  328   if (const auto *dr = dyn_cast<Defined>(&sym))
  328   if (const auto *dr = dyn_cast<Defined>(&sym))
 1342       auto *directSym = make<Defined>(cast<Defined>(sym));
 1342       auto *directSym = make<Defined>(cast<Defined>(sym));
 1342       auto *directSym = make<Defined>(cast<Defined>(sym));
 1361       auto &d = cast<Defined>(sym);
 1361       auto &d = cast<Defined>(sym);
 1710   if (auto *d = dyn_cast<Defined>(rel.sym))
 1710   if (auto *d = dyn_cast<Defined>(rel.sym))
tools/lld/ELF/Symbols.cpp
   40 Defined *ElfSym::bss;
   41 Defined *ElfSym::etext1;
   42 Defined *ElfSym::etext2;
   43 Defined *ElfSym::edata1;
   44 Defined *ElfSym::edata2;
   45 Defined *ElfSym::end1;
   46 Defined *ElfSym::end2;
   47 Defined *ElfSym::globalOffsetTable;
   48 Defined *ElfSym::mipsGp;
   49 Defined *ElfSym::mipsGpDisp;
   50 Defined *ElfSym::mipsLocalGp;
   51 Defined *ElfSym::relaIpltStart;
   52 Defined *ElfSym::relaIpltEnd;
   53 Defined *ElfSym::riscvGlobalPointer;
   54 Defined *ElfSym::tlsModuleBase;
   59     auto &d = cast<Defined>(sym);
  189   if (const auto *dr = dyn_cast<Defined>(this))
  189   if (const auto *dr = dyn_cast<Defined>(this))
  195   if (auto *s = dyn_cast<Defined>(this)) {
  329   auto *d = dyn_cast<Defined>(sym);
  385     resolveDefined(cast<Defined>(other));
  552   auto *oldSym = cast<Defined>(this);
  553   auto *newSym = cast<Defined>(other);
  570   Defined *d = cast<Defined>(sym);
  570   Defined *d = cast<Defined>(sym);
  619 void Symbol::resolveDefined(const Defined &other) {
tools/lld/ELF/Symbols.h
  228   void resolveDefined(const Defined &other);
  427   static Defined *bss;
  430   static Defined *etext1;
  431   static Defined *etext2;
  434   static Defined *edata1;
  435   static Defined *edata2;
  438   static Defined *end1;
  439   static Defined *end2;
  444   static Defined *globalOffsetTable;
  447   static Defined *mipsGp;
  448   static Defined *mipsGpDisp;
  449   static Defined *mipsLocalGp;
  452   static Defined *relaIpltStart;
  453   static Defined *relaIpltEnd;
  456   static Defined *riscvGlobalPointer;
  459   static Defined *tlsModuleBase;
  466   alignas(Defined) char a[sizeof(Defined)];
  482   static_assert(sizeof(T) <= sizeof(SymbolUnion), "SymbolUnion too small");
  483   static_assert(alignof(T) <= alignof(SymbolUnion),
  503     return sizeof(Defined);
tools/lld/ELF/SyntheticSections.cpp
  263 Defined *addSyntheticLocal(StringRef name, uint8_t type, uint64_t value,
  265   auto *s = make<Defined>(section.file, name, STB_LOCAL, STV_DEFAULT, type,
  265   auto *s = make<Defined>(section.file, name, STB_LOCAL, STV_DEFAULT, type,
  391   if (auto *d = dyn_cast<Defined>(&b))
  391   if (auto *d = dyn_cast<Defined>(&b))
 2094     if (auto *d = dyn_cast<Defined>(sym))
 2094     if (auto *d = dyn_cast<Defined>(sym))
 2102   if (!isa<Defined>(sym) || sym->needsPltAddr)
 2192         if (auto *d = dyn_cast<Defined>(sym))
 2192         if (auto *d = dyn_cast<Defined>(sym))
tools/lld/ELF/SyntheticSections.h
 1109 Defined *addSyntheticLocal(StringRef name, uint8_t type, uint64_t value,
tools/lld/ELF/Target.h
  191 template <class ELFT> bool isMipsPIC(const Defined *sym);
tools/lld/ELF/Thunks.cpp
  320 Defined *Thunk::addSymbol(StringRef name, uint8_t type, uint64_t value,
  322   Defined *d = addSyntheticLocal(name, type, value, /*size=*/0, section);
  328   for (Defined *d : syms)
  659   auto &dr = cast<Defined>(destination);
  659   auto &dr = cast<Defined>(destination);
  677   Defined *d = addSymbol(
  683   auto &dr = cast<Defined>(destination);
  683   auto &dr = cast<Defined>(destination);
  701   Defined *d = addSymbol(
  707   auto &dr = cast<Defined>(destination);
  707   auto &dr = cast<Defined>(destination);
  783   Defined *s = addSymbol(saver.save("__plt_" + destination.getName()), STT_FUNC,
tools/lld/ELF/Thunks.h
   42   Defined *addSymbol(StringRef name, uint8_t type, uint64_t value,
   56   Defined *getThunkTargetSym() const { return syms[0]; }
   61   llvm::SmallVector<Defined *, 3> syms;
tools/lld/ELF/Writer.cpp
  198 static Defined *addOptionalRegular(StringRef name, SectionBase *sec,
  207   return cast<Defined>(s);
  210 static Defined *addAbsolute(StringRef name) {
  213   return cast<Defined>(sym);
  268     ElfSym::globalOffsetTable = cast<Defined>(s);
  623 static bool shouldKeepInSymtab(const Defined &sym) {
  656   if (auto *d = dyn_cast<Defined>(&b)) {
  686       auto *dr = dyn_cast<Defined>(b);
  686       auto *dr = dyn_cast<Defined>(b);
  728     auto *sym =
  729         make<Defined>(isec->file, "", STB_LOCAL, /*stOther=*/0, STT_SECTION,
 1231     if (auto *d = dyn_cast<Defined>(&sym)) {
 1231     if (auto *d = dyn_cast<Defined>(&sym)) {
 1586     const Defined *changedSym = script->assignAddresses();
 1727       ElfSym::tlsModuleBase = cast<Defined>(s);
tools/lld/include/lld/Common/Memory.h
   47   llvm::SpecificBumpPtrAllocator<T> alloc;
   52 template <typename T, typename... U> T *make(U &&... args) {
   52 template <typename T, typename... U> T *make(U &&... args) {
   53   static SpecificAlloc<T> alloc;
   54   return new (alloc.alloc.Allocate()) T(std::forward<U>(args)...);
usr/include/c++/7.4.0/bits/move.h
   72     constexpr _Tp&&
   83     constexpr _Tp&&
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_safe<_Tp>::type
 1447     : public __and_<is_destructible<_Tp>, integral_constant<bool,
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };
 1983     { typedef _Up     type; };