Lines Matching defs:Symbol

89   void emitLabel(MCSymbol *Symbol, SMLoc Loc = SMLoc()) override;
90 void emitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
91 void emitEHSymAttributes(const MCSymbol *Symbol, MCSymbol *EHSymbol) override;
103 bool emitSymbolAttribute(MCSymbol *Symbol, MCSymbolAttr Attribute) override;
104 void emitSymbolDesc(MCSymbol *Symbol, unsigned DescValue) override;
105 void emitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
108 void emitLocalCommonSymbol(MCSymbol *Symbol, uint64_t Size,
110 void emitZerofill(MCSection *Section, MCSymbol *Symbol = nullptr,
113 void emitTBSSSymbol(MCSection *Section, MCSymbol *Symbol, uint64_t Size,
152 void MCMachOStreamer::emitEHSymAttributes(const MCSymbol *Symbol,
154 auto *Sym = cast<MCSymbolMachO>(Symbol);
155 getAssembler().registerSymbol(*Symbol);
156 if (Symbol->isExternal())
164 void MCMachOStreamer::emitLabel(MCSymbol *Symbol, SMLoc Loc) {
167 if (cast<MCSymbolMachO>(Symbol)->isSymbolLinkerVisible())
170 MCObjectStreamer::emitLabel(Symbol, Loc);
179 cast<MCSymbolMachO>(Symbol)->clearReferenceType();
182 void MCMachOStreamer::emitAssignment(MCSymbol *Symbol, const MCExpr *Value) {
189 cast<MCSymbolMachO>(Symbol)->setAltEntry();
192 MCObjectStreamer::emitAssignment(Symbol, Value);
272 void MCMachOStreamer::emitThumbFunc(MCSymbol *Symbol) {
275 getAssembler().setIsThumbFunc(Symbol);
276 cast<MCSymbolMachO>(Symbol)->setThumbFunc();
281 MCSymbolMachO *Symbol = cast<MCSymbolMachO>(Sym);
289 {Symbol, getCurrentSectionOnly()});
296 getAssembler().registerSymbol(*Symbol);
327 Symbol->setExternal(true);
334 Symbol->setReferenceTypeUndefinedLazy(false);
339 Symbol->setNoDeadStrip();
340 if (Symbol->isUndefined())
341 Symbol->setReferenceTypeUndefinedLazy(true);
348 Symbol->setNoDeadStrip();
352 Symbol->setSymbolResolver();
356 Symbol->setAltEntry();
360 Symbol->setExternal(true);
361 Symbol->setPrivateExtern(true);
366 if (Symbol->isUndefined())
367 Symbol->setWeakReference();
373 Symbol->setWeakDefinition();
377 Symbol->setWeakDefinition();
378 Symbol->setWeakReference();
382 Symbol->setCold();
389 void MCMachOStreamer::emitSymbolDesc(MCSymbol *Symbol, unsigned DescValue) {
391 getAssembler().registerSymbol(*Symbol);
392 cast<MCSymbolMachO>(Symbol)->setDesc(DescValue);
395 void MCMachOStreamer::emitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
398 assert(Symbol->isUndefined() && "Cannot define a symbol twice!");
400 getAssembler().registerSymbol(*Symbol);
401 Symbol->setExternal(true);
402 Symbol->setCommon(Size, ByteAlignment);
405 void MCMachOStreamer::emitLocalCommonSymbol(MCSymbol *Symbol, uint64_t Size,
409 Symbol, Size, ByteAlignment);
412 void MCMachOStreamer::emitZerofill(MCSection *Section, MCSymbol *Symbol,
430 if (Symbol) {
432 emitLabel(Symbol);
440 void MCMachOStreamer::emitTBSSSymbol(MCSection *Section, MCSymbol *Symbol,
442 emitZerofill(Section, Symbol, Size, ByteAlignment);
471 for (const MCSymbol &Symbol : getAssembler().symbols()) {
472 auto &Sym = cast<MCSymbolMachO>(Symbol);
476 assert(Symbol.getOffset() == 0 &&
478 DefiningSymbolMap[Symbol.getFragment()] = &Symbol;
489 if (const MCSymbol *Symbol = DefiningSymbolMap.lookup(&Frag))
490 CurrentAtom = Symbol;
544 // Symbol relocations OTOH will have their indices updated by e.g. llvm-strip.