Home
last modified time | relevance | path

Searched refs:Atom (Results 1 – 25 of 47) sorted by relevance

12

/freebsd-13.1/contrib/llvm-project/lld/include/lld/Core/
H A DSymbolTable.h22 class Atom; variable
49 const Atom *findByName(StringRef sym);
55 const Atom *replacement(const Atom *);
58 bool isCoalescedAway(const Atom *);
61 typedef llvm::DenseMap<const Atom *, const Atom *> AtomToAtom;
73 typedef llvm::DenseMap<StringRef, const Atom *,
85 bool addByName(const Atom &);
H A DResolver.h27 class Atom; variable
71 void markLive(const Atom *atom);
76 void addAtoms(llvm::MutableArrayRef<OwningAtomPtr<Atom>> atoms);
81 std::vector<OwningAtomPtr<Atom>> _atoms;
82 std::set<const Atom *> _deadStripRoots;
83 llvm::DenseSet<const Atom *> _liveAtoms;
84 llvm::DenseSet<const Atom *> _deadAtoms;
86 std::unordered_multimap<const Atom *, const Atom *> _reverseRef;
H A DAtom.h29 class Atom {
62 static bool classof(const Atom *a) { return true; } in classof()
66 explicit Atom(Definition def) : _definition(def) {} in Atom() function
72 virtual ~Atom() = default;
95 void runDestructor(Atom *atom) { in runDestructor()
96 atom->~Atom(); in runDestructor()
H A DAbsoluteAtom.h18 class AbsoluteAtom : public Atom {
30 static bool classof(const Atom *a) { in classof()
37 AbsoluteAtom() : Atom(definitionAbsolute) {} in AbsoluteAtom()
H A DUndefinedAtom.h18 class UndefinedAtom : public Atom {
53 static bool classof(const Atom *a) { in classof()
60 UndefinedAtom() : Atom(definitionUndefined) {} in UndefinedAtom()
H A DSharedLibraryAtom.h18 class SharedLibraryAtom : public Atom {
38 static bool classof(const Atom *a) { in classof()
45 SharedLibraryAtom() : Atom(definitionSharedLibrary) {} in SharedLibraryAtom()
H A DReference.h16 class Atom; variable
85 virtual const Atom *target() const = 0;
89 virtual void setTarget(const Atom *) = 0;
H A DSimple.h63 void addAtom(const Atom &atom) { in addAtom()
118 Reference::KindValue value, uint64_t off, const Atom *t, in SimpleReference()
128 const Atom *target() const override { in target()
135 void setTarget(const Atom *newAtom) override { _target = newAtom; } in setTarget()
138 const Atom *_target;
203 const Atom *target, Reference::Addend a) override { in addReference()
H A DDefinedAtom.h84 class DefinedAtom : public Atom {
329 const Atom *target, Reference::Addend a) { in addReference()
333 static bool classof(const Atom *a) { in classof()
359 DefinedAtom() : Atom(definitionRegular) { } in DefinedAtom()
/freebsd-13.1/contrib/llvm-project/lld/lib/ReaderWriter/MachO/
H A DCompactUnwindPass.cpp35 const Atom *rangeStart;
36 const Atom *personalityFunction;
37 const Atom *lsdaLocation;
38 const Atom *ehFrame;
287 std::map<const Atom *, const Atom *> dwarfFrames; in perform()
288 std::vector<const Atom *> personalities; in perform()
431 std::map<const Atom *, const Atom *> &dwarfFrames) { in collectDwarfFrameEntries() argument
453 const std::map<const Atom *, const Atom *> &dwarfFrames) { in createUnwindInfoEntries()
484 const std::map<const Atom *, const Atom *> &dwarfFrames) { in pruneUnusedEHFrames()
502 std::set<const Atom *> usedDwarfFrames; in pruneUnusedEHFrames()
[all …]
H A DArchHandler.h104 virtual const Atom *fdeTargetFunction(const DefinedAtom *fde);
124 const lld::Atom **, Reference::Addend *)>
130 const lld::Atom **)> FindAtomBySymbolIndex;
144 const lld::Atom **target,
160 const lld::Atom **target,
165 typedef std::function<uint32_t (const Atom &atom)> FindSymbolIndexForAtom;
169 typedef std::function<uint32_t (const Atom &atom)> FindSectionIndexForAtom;
173 typedef std::function<uint64_t (const Atom &atom)> FindAddressForAtom;
H A DStubsPass.cpp228 const Atom *target = ref->target(); in perform()
282 std::vector<const Atom *> targetsNeedingStubs; in perform()
286 [](const Atom * left, const Atom * right) { in perform()
292 for (const Atom *target : targetsNeedingStubs) { in perform()
338 const lld::Atom* target) { in addReference()
346 const lld::Atom *target, uint64_t addend) { in addReferenceAddend()
354 const lld::Atom* target) { in addOptReference()
362 typedef llvm::DenseMap<const Atom*,
H A DGOTPass.cpp108 const Atom *target = ref->target(); in perform()
139 bool shouldReplaceTargetWithGOTAtom(const Atom *target, bool canBypassGOT) { in shouldReplaceTargetWithGOTAtom()
156 const DefinedAtom *makeGOTEntry(const Atom *target) { in makeGOTEntry()
174 llvm::DenseMap<const Atom*, const GOTEntryAtom*> _targetToGOT;
H A DMachONormalizedFileFromAtoms.cpp173 uint32_t sectionIndexForAtom(const Atom *atom);
202 std::vector<const Atom *> _machHeaderAliasAtoms;
767 for (const Atom *atom : _machHeaderAliasAtoms) { in buildAtomToAddressMap()
988 case Atom::scopeTranslationUnit: in getSymbolTableRegion()
992 case Atom::scopeLinkageUnit: in getSymbolTableRegion()
1010 case Atom::scopeGlobal: in getSymbolTableRegion()
1159 if (const Atom *ta = ref->target()) { in targetOfStub()
1178 const Atom *target = ref->target(); in addIndirectSymbols()
1207 const Atom *target = targetOfStub(info.atom); in addIndirectSymbols()
1437 const Atom* targ = ref->target(); in addRebaseAndBindingInfo()
[all …]
H A DTLVPass.cpp88 const Atom *target = ref->target(); in perform()
112 const DefinedAtom *makeTLVPEntry(const Atom *target) { in makeTLVPEntry()
131 llvm::DenseMap<const Atom*, const TLVPEntryAtom*> _targetToTLVP;
H A DArchHandler_x86.cpp95 const lld::Atom **target,
106 const lld::Atom **target,
161 static bool useExternalRelocationTo(const Atom &target);
258 const lld::Atom **target, in getReferenceInfo()
357 const lld::Atom **target, in getPairReferenceInfo()
364 const lld::Atom *fromTarget; in getPairReferenceInfo()
421 const Atom *target = ref->target(); in generateAtomContent()
530 bool ArchHandler_x86::useExternalRelocationTo(const Atom &target) { in useExternalRelocationTo()
H A DShimPass.cpp56 const Atom *target = ref->target(); in perform()
118 llvm::DenseMap<const Atom*, const DefinedAtom*> _targetToShim;
H A DDebugInfo.h65 Stab(const Atom* atom, uint8_t type, uint8_t other, uint16_t desc, in Stab()
70 const class Atom* atom;
/freebsd-13.1/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DAccelTable.h226 struct Atom { struct
328 static constexpr Atom Atoms[] = {
329 Atom(dwarf::DW_ATOM_die_offset, dwarf::DW_FORM_data4)};
347 static constexpr Atom Atoms[] = {
348 Atom(dwarf::DW_ATOM_die_offset, dwarf::DW_FORM_data4),
349 Atom(dwarf::DW_ATOM_die_tag, dwarf::DW_FORM_data2),
365 static constexpr Atom Atoms[] = {
390 static constexpr Atom Atoms[] = {
391 Atom(dwarf::DW_ATOM_die_offset, dwarf::DW_FORM_data4),
392 Atom(dwarf::DW_ATOM_die_tag, dwarf::DW_FORM_data2),
[all …]
/freebsd-13.1/contrib/llvm-project/lld/lib/Core/
H A DResolver.cpp117 _atoms.push_back(OwningAtomPtr<Atom>(atom.release())); in doUndefinedAtom()
146 _atoms.push_back(OwningAtomPtr<Atom>(atom.release())); in doDefinedAtom()
161 _atoms.push_back(OwningAtomPtr<Atom>(atom.release())); in doSharedLibraryAtom()
173 if (atom.get()->scope() != Atom::scopeTranslationUnit) in doAbsoluteAtom()
298 for (const OwningAtomPtr<Atom> &atom : _atoms) { in updateReferences()
319 void Resolver::markLive(const Atom *atom) { in markLive()
330 const Atom *target = p.second; in markLive()
355 for (const OwningAtomPtr<Atom> &atom : _atoms) { in deadStripOptimize()
366 for (const OwningAtomPtr<Atom> &atom : _atoms) in deadStripOptimize()
379 for (const Atom *dsrAtom : _deadStripRoots) in deadStripOptimize()
[all …]
H A DSymbolTable.cpp84 static NameCollisionResolution collide(Atom::Definition first, in collide()
85 Atom::Definition second) { in collide()
114 bool SymbolTable::addByName(const Atom &newAtom) { in addByName()
117 const Atom *existing = findByName(name); in addByName()
244 const Atom* existing = *pos; in addByContent()
250 const Atom *SymbolTable::findByName(StringRef sym) { in findByName()
257 const Atom *SymbolTable::replacement(const Atom *atom) { in replacement()
268 bool SymbolTable::isCoalescedAway(const Atom *atom) { in isCoalescedAway()
275 const Atom *atom = it.second; in undefines()
/freebsd-13.1/contrib/llvm-project/llvm/lib/DebugInfo/DWARF/
H A DDWARFAcceleratorTable.cpp28 struct Atom { struct
40 static Atom formatAtom(unsigned Atom) { return {Atom}; } in formatAtom() argument
96 for (auto Atom : getAtomsDesc()) { in validateForms() local
97 DWARFFormValue FormValue(Atom.second); in validateForms()
98 switch (Atom.first) { in validateForms()
120 for (auto Atom : getAtomsDesc()) { in readAtoms() local
123 switch (Atom.first) { in readAtoms()
185 for (auto &Atom : AtomForms) { in dumpName() local
188 Atom.dump(W.getOStream()); in dumpName()
263 for (const auto &Atom : HdrData.Atoms) in Entry() local
[all …]
/freebsd-13.1/contrib/llvm-project/lld/docs/
H A DReaders.rst50 parsing an input file into an Atom graph. For instance, you may want the
102 The internal model of lld is purely Atom based. But most object files do not
113 Atom is calculated to run to the start of the next symbol or the end of the
122 big Atom), there would always be a reference (from the eh_frame Atom) to
126 The lld Atom model also requires that a reference to an undefined symbol be
135 Reader will need to convert the address to an Atom and offset and the symbol
136 table index into a target Atom. If "malloc" is not defined in the object file,
137 the target Atom of the Reference will be an UndefinedAtom.
150 then allocate space for all the Atom objects at once.
151 * Don't copy symbol names or section content to each Atom, instead use
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/AsmPrinter/
H A DAccelTable.cpp116 using Atom = AppleAccelTableData::Atom; typedef in __anon54109a5c0311::AppleAccelTableWriter
148 const SmallVector<Atom, 4> Atoms;
150 HeaderData(ArrayRef<Atom> AtomList, uint32_t Offset = 0) in HeaderData()
169 ArrayRef<Atom> Atoms, const MCSymbol *SecBegin) in AppleAccelTableWriter()
298 for (const Atom &A : Atoms) { in emit()
616 constexpr AppleAccelTableData::Atom AppleAccelTableTypeData::Atoms[];
617 constexpr AppleAccelTableData::Atom AppleAccelTableOffsetData::Atoms[];
619 constexpr AppleAccelTableData::Atom AppleAccelTableStaticTypeData::Atoms[];
630 void AppleAccelTableData::Atom::print(raw_ostream &OS) const { in print()
637 for (auto Atom : Atoms) in print() local
[all …]
/freebsd-13.1/contrib/llvm-project/lld/lib/ReaderWriter/YAML/
H A DReaderWriterYAML.cpp86 const lld::Atom *target = ref->target(); in RefNameBuilder()
113 void buildDuplicateNameMap(const lld::Atom &atom) { in buildDuplicateNameMap()
128 const lld::Atom *prevAtom = pos->second; in buildDuplicateNameMap()
156 StringRef refName(const lld::Atom *atom) { in refName()
161 typedef llvm::StringMap<const lld::Atom *> NameToAtom;
185 const lld::Atom *lookup(StringRef name) const { in lookup()
194 typedef llvm::StringMap<const lld::Atom *> NameToAtom;
196 void add(StringRef name, const lld::Atom *atom) { in add()
295 static void enumeration(IO &io, lld::Atom::Scope &value) { in enumeration()
296 io.enumCase(value, "global", lld::Atom::scopeGlobal); in enumeration()
[all …]

12