reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
118 Asm.reset(TheTarget->createAsmPrinter(*TM, std::unique_ptr<MCStreamer>(MS))); 119 if (!Asm) 159 Unit.setLabelBegin(Asm->createTempSymbol("cu_begin")); 160 Asm->OutStreamer->EmitLabel(Unit.getLabelBegin()); 165 Asm->emitInt32(Unit.getNextUnitOffset() - Unit.getStartOffset() - 4); 166 Asm->emitInt16(Version); 170 Asm->emitInt32(0); 171 Asm->emitInt8(Unit.getOrigUnit().getAddressByteSize()); 184 Asm->emitDwarfAbbrevs(Abbrevs); 190 Asm->emitDwarfDIE(Die); 195 Asm->OutStreamer->SwitchSection(MOFI->getDwarfStrSection()); 199 Asm->OutStreamer->EmitBytes(Entry.getString()); 201 Asm->emitInt8(0); 220 Asm->OutStreamer->SwitchSection(MOFI->getDwarfDebugNamesSection()); 222 Asm.get(), Table, CompUnits, 230 Asm->OutStreamer->SwitchSection(MOFI->getDwarfAccelNamespaceSection()); 231 auto *SectionBegin = Asm->createTempSymbol("namespac_begin"); 232 Asm->OutStreamer->EmitLabel(SectionBegin); 233 emitAppleAccelTable(Asm.get(), Table, "namespac", SectionBegin); 238 Asm->OutStreamer->SwitchSection(MOFI->getDwarfAccelNamesSection()); 239 auto *SectionBegin = Asm->createTempSymbol("names_begin"); 240 Asm->OutStreamer->EmitLabel(SectionBegin); 241 emitAppleAccelTable(Asm.get(), Table, "names", SectionBegin); 246 Asm->OutStreamer->SwitchSection(MOFI->getDwarfAccelObjCSection()); 247 auto *SectionBegin = Asm->createTempSymbol("objc_begin"); 248 Asm->OutStreamer->EmitLabel(SectionBegin); 249 emitAppleAccelTable(Asm.get(), Table, "objc", SectionBegin); 254 Asm->OutStreamer->SwitchSection(MOFI->getDwarfAccelTypesSection()); 255 auto *SectionBegin = Asm->createTempSymbol("types_begin"); 256 Asm->OutStreamer->EmitLabel(SectionBegin); 257 emitAppleAccelTable(Asm.get(), Table, "types", SectionBegin); 331 MCSymbol *BeginLabel = Asm->createTempSymbol("Barange"); 332 MCSymbol *EndLabel = Asm->createTempSymbol("Earange"); 344 Asm->EmitLabelDifference(EndLabel, BeginLabel, 4); // Arange length 345 Asm->OutStreamer->EmitLabel(BeginLabel); 346 Asm->emitInt16(dwarf::DW_ARANGES_VERSION); // Version number 347 Asm->emitInt32(Unit.getStartOffset()); // Corresponding unit's offset 348 Asm->emitInt8(AddressSize); // Address size 349 Asm->emitInt8(0); // Segment size 351 Asm->OutStreamer->emitFill(Padding, 0x0); 363 Asm->OutStreamer->EmitIntValue(0, AddressSize); 364 Asm->OutStreamer->EmitIntValue(0, AddressSize); 365 Asm->OutStreamer->EmitLabel(EndLabel); 426 Asm->OutStreamer->EmitIntValue(0, AddressSize); 427 Asm->OutStreamer->EmitIntValue(0, AddressSize); 432 Asm->OutStreamer->EmitIntValue(BaseAddressMarker, AddressSize); 433 Asm->OutStreamer->EmitIntValue(High + Attr.second, AddressSize); 438 Asm->OutStreamer->EmitIntValue(Low + LocPcOffset, AddressSize); 439 Asm->OutStreamer->EmitIntValue(High + LocPcOffset, AddressSize); 441 Asm->OutStreamer->EmitIntValue(Length, 2); 447 Asm->OutStreamer->EmitBytes( 467 Asm->EmitLabelDifference(LineEndSym, LineStartSym, 4); 468 Asm->OutStreamer->EmitLabel(LineStartSym); 622 Asm->EmitLabelDifference(EndLabel, BeginLabel, 4); 623 Asm->OutStreamer->EmitLabel(BeginLabel); 624 Asm->emitInt16(Version); 629 Asm->EmitLabelDifference(HeaderEndLabel, HeaderBeginLabel, 4); 630 Asm->OutStreamer->EmitLabel(HeaderBeginLabel); 639 Asm->OutStreamer->EmitBytes(Contents.slice(AfterHeaderLengthOffset, Offset)); 648 Asm->OutStreamer->EmitBytes(Translated); 649 Asm->emitInt8(0); 652 Asm->emitInt8(0); 660 Asm->OutStreamer->EmitBytes(Translated); 661 Asm->emitInt8(0); 665 Asm->EmitULEB128(Data.getULEB128(&Offset)); 666 Asm->EmitULEB128(Data.getULEB128(&Offset)); 667 Asm->EmitULEB128(Data.getULEB128(&Offset)); 670 Asm->emitInt8(0); 673 Asm->OutStreamer->EmitLabel(HeaderEndLabel); 676 Asm->OutStreamer->EmitBytes(Contents.slice(Offset, UnitEnd)); 679 Asm->OutStreamer->EmitLabel(EndLabel); 721 Asm->OutStreamer->SwitchSection(Sec); 722 MCSymbol *BeginLabel = Asm->createTempSymbol("pub" + SecName + "_begin"); 723 MCSymbol *EndLabel = Asm->createTempSymbol("pub" + SecName + "_end"); 733 Asm->EmitLabelDifference(EndLabel, BeginLabel, 4); // Length 734 Asm->OutStreamer->EmitLabel(BeginLabel); 735 Asm->emitInt16(dwarf::DW_PUBNAMES_VERSION); // Version 736 Asm->emitInt32(Unit.getStartOffset()); // Unit offset 737 Asm->emitInt32(Unit.getNextUnitOffset() - Unit.getStartOffset()); // Size 740 Asm->emitInt32(Name.Die->getOffset()); 743 Asm->OutStreamer->EmitBytes(Name.Name.getString()); 745 Asm->emitInt8(0); 750 Asm->emitInt32(0); // End marker. 751 Asm->OutStreamer->EmitLabel(EndLabel);tools/dsymutil/DwarfStreamer.h
54 AsmPrinter &getAsmPrinter() const { return *Asm; }