Lines Matching defs:Asm
84 bool MachObjectWriter::isFixupKindPCRel(const MCAssembler &Asm, unsigned Kind) {
85 const MCFixupKindInfo &FKI = Asm.getBackend().getFixupKindInfo(
92 MachObjectWriter::getFragmentAddress(const MCAssembler &Asm,
95 Asm.getFragmentOffset(*Fragment);
99 const MCAssembler &Asm) const {
107 if (!S.getVariableValue()->evaluateAsRelocatable(Target, &Asm, nullptr))
121 Address += getSymbolAddress(Target.getSymA()->getSymbol(), Asm);
123 Address += getSymbolAddress(Target.getSymB()->getSymbol(), Asm);
128 Asm.getSymbolOffset(S);
131 uint64_t MachObjectWriter::getPaddingSize(const MCAssembler &Asm,
133 uint64_t EndAddr = getSectionAddress(Sec) + Asm.getSectionAddressSize(*Sec);
266 void MachObjectWriter::writeSection(const MCAssembler &Asm,
271 uint64_t SectionSize = Asm.getSectionAddressSize(Sec);
276 assert(Asm.getSectionFileSize(Sec) == 0 && "Invalid file size!");
392 void MachObjectWriter::writeNlist(MachSymbolData &MSD, const MCAssembler &Asm) {
436 Address = getSymbolAddress(OrigSymbol, Asm);
515 void MachObjectWriter::recordRelocation(MCAssembler &Asm,
520 Asm.getContext().reportError(Fixup.getLoc(),
525 TargetObjectWriter->recordRelocation(this, Asm, Fragment, Fixup, Target,
529 void MachObjectWriter::bindIndirectSymbols(MCAssembler &Asm) {
563 Asm.registerSymbol(*ISD.Symbol);
580 if (Asm.registerSymbol(*ISD.Symbol))
587 MCAssembler &Asm, std::vector<MachSymbolData> &LocalSymbolData,
593 for (MCSection &Sec : Asm)
598 for (const MCSymbol &Symbol : Asm.symbols()) {
611 for (const MCSymbol &Symbol : Asm.symbols()) {
637 for (const MCSymbol &Symbol : Asm.symbols()) {
670 for (const MCSection &Section : Asm) {
686 void MachObjectWriter::computeSectionAddresses(const MCAssembler &Asm) {
690 for (MCSection &Sec : Asm) {
696 for (MCSection &Sec : Asm) {
707 StartAddress += Asm.getSectionAddressSize(*Sec);
712 StartAddress += getPaddingSize(Asm, Sec);
716 void MachObjectWriter::executePostLayoutBinding(MCAssembler &Asm) {
717 computeSectionAddresses(Asm);
720 bindIndirectSymbols(Asm);
724 const MCAssembler &Asm, const MCSymbol &SymA, const MCFragment &FB,
780 void MachObjectWriter::populateAddrSigSection(MCAssembler &Asm) {
782 Asm.getContext().getObjectFileInfo()->getAddrSigSection();
794 uint64_t MachObjectWriter::writeObject(MCAssembler &Asm) {
798 populateAddrSigSection(Asm);
801 computeSymbolTable(Asm, LocalSymbolData, ExternalSymbolData,
805 MCSection *CGProfileSection = Asm.getContext().getMachOSection(
819 unsigned NumSections = Asm.end() - Asm.begin();
853 uint64_t LOHRawSize = LOHContainer.getEmitSize(Asm, *this);
882 for (const MCSection &Sec : Asm) {
884 uint64_t Size = Asm.getSectionAddressSize(Sec);
885 uint64_t FileSize = Asm.getSectionFileSize(Sec);
886 FileSize += getPaddingSize(Asm, &Sec);
914 for (const MCSection &Section : Asm) {
924 Asm.getContext().reportError(
929 Asm.getContext().reportError(
934 writeSection(Asm, Sec, getSectionAddress(&Sec), SectionStart, Flags,
1033 for (const MCSection &Sec : Asm) {
1034 Asm.writeSectionData(W.OS, &Sec);
1036 uint64_t Pad = getPaddingSize(Asm, &Sec);
1044 for (const MCSection &Sec : Asm) {
1056 uint64_t Start = getSymbolAddress(*Data.Start, Asm);
1059 End = getSymbolAddress(*Data.End, Asm);
1077 LOHContainer.emit(Asm, *this);
1112 writeNlist(Entry, Asm);