Lines Matching full:symbol
98 auto *Symbol = cast<MCSymbolELF>(S); in EmitLabel() local
99 assert(Symbol->isUndefined() && "Cannot define a symbol twice!"); in EmitLabel()
101 MCObjectStreamer::EmitLabel(Symbol); in EmitLabel()
106 Symbol->setType(ELF::STT_TLS); in EmitLabel()
162 void MCELFStreamer::EmitWeakReference(MCSymbol *Alias, const MCSymbol *Symbol) { in EmitWeakReference() argument
163 getAssembler().registerSymbol(*Symbol); in EmitWeakReference()
165 Symbol, MCSymbolRefExpr::VK_WEAKREF, getContext()); in EmitWeakReference()
189 auto *Symbol = cast<MCSymbolELF>(S); in EmitSymbolAttribute() local
193 // Note that we intentionally cannot use the symbol data here; this is in EmitSymbolAttribute()
196 ISD.Symbol = Symbol; in EmitSymbolAttribute()
202 // Adding a symbol attribute always introduces the symbol, note that an in EmitSymbolAttribute()
204 // the symbol with the assembler. in EmitSymbolAttribute()
205 getAssembler().registerSymbol(*Symbol); in EmitSymbolAttribute()
207 // The implementation of symbol attributes is designed to match 'as', but it in EmitSymbolAttribute()
229 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_OBJECT)); in EmitSymbolAttribute()
230 Symbol->setBinding(ELF::STB_GNU_UNIQUE); in EmitSymbolAttribute()
231 Symbol->setExternal(true); in EmitSymbolAttribute()
235 Symbol->setBinding(ELF::STB_GLOBAL); in EmitSymbolAttribute()
236 Symbol->setExternal(true); in EmitSymbolAttribute()
241 Symbol->setBinding(ELF::STB_WEAK); in EmitSymbolAttribute()
242 Symbol->setExternal(true); in EmitSymbolAttribute()
246 Symbol->setBinding(ELF::STB_LOCAL); in EmitSymbolAttribute()
247 Symbol->setExternal(false); in EmitSymbolAttribute()
251 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_FUNC)); in EmitSymbolAttribute()
255 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_GNU_IFUNC)); in EmitSymbolAttribute()
259 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_OBJECT)); in EmitSymbolAttribute()
263 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_TLS)); in EmitSymbolAttribute()
267 // TODO: Emit these as a common symbol. in EmitSymbolAttribute()
268 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_OBJECT)); in EmitSymbolAttribute()
272 Symbol->setType(CombineSymbolTypes(Symbol->getType(), ELF::STT_NOTYPE)); in EmitSymbolAttribute()
276 Symbol->setVisibility(ELF::STV_PROTECTED); in EmitSymbolAttribute()
280 Symbol->setVisibility(ELF::STV_HIDDEN); in EmitSymbolAttribute()
284 Symbol->setVisibility(ELF::STV_INTERNAL); in EmitSymbolAttribute()
293 auto *Symbol = cast<MCSymbolELF>(S); in EmitCommonSymbol() local
294 getAssembler().registerSymbol(*Symbol); in EmitCommonSymbol()
296 if (!Symbol->isBindingSet()) { in EmitCommonSymbol()
297 Symbol->setBinding(ELF::STB_GLOBAL); in EmitCommonSymbol()
298 Symbol->setExternal(true); in EmitCommonSymbol()
301 Symbol->setType(ELF::STT_OBJECT); in EmitCommonSymbol()
303 if (Symbol->getBinding() == ELF::STB_LOCAL) { in EmitCommonSymbol()
310 EmitLabel(Symbol); in EmitCommonSymbol()
319 if(Symbol->declareCommon(Size, ByteAlignment)) in EmitCommonSymbol()
320 report_fatal_error("Symbol: " + Symbol->getName() + in EmitCommonSymbol()
324 cast<MCSymbolELF>(Symbol) in EmitCommonSymbol()
328 void MCELFStreamer::emitELFSize(MCSymbolELF *Symbol, const MCExpr *Value) { in emitELFSize() argument
329 Symbol->setSize(Value); in emitELFSize()
334 auto *Symbol = cast<MCSymbolELF>(S); in EmitLocalCommonSymbol() local
336 getAssembler().registerSymbol(*Symbol); in EmitLocalCommonSymbol()
337 Symbol->setBinding(ELF::STB_LOCAL); in EmitLocalCommonSymbol()
338 Symbol->setExternal(false); in EmitLocalCommonSymbol()
339 EmitCommonSymbol(Symbol, Size, ByteAlignment); in EmitLocalCommonSymbol()
360 // Add a symbol for the file name of this module. They start after the
361 // null symbol and don't count as normal symbol, i.e. a non-STT_FILE symbol
646 void MCELFStreamer::EmitSymbolDesc(MCSymbol *Symbol, unsigned DescValue) { in EmitSymbolDesc() argument
650 void MCELFStreamer::BeginCOFFSymbolDef(const MCSymbol *Symbol) { in BeginCOFFSymbolDef() argument
666 void MCELFStreamer::EmitZerofill(MCSection *Section, MCSymbol *Symbol, in EmitZerofill() argument
671 void MCELFStreamer::EmitTBSSSymbol(MCSection *Section, MCSymbol *Symbol, in EmitTBSSSymbol() argument