Lines Matching defs:OutStreamer
147 EmitToStreamer(*OutStreamer,
305 EmitToStreamer(*OutStreamer,
314 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::BASR)
321 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::BASR)
347 *OutStreamer,
350 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::ALGFI)
357 EmitToStreamer(*OutStreamer, MCInstBuilder(Op)
629 OutStreamer->emitLabel(DotSym);
642 OutStreamer->emitLabel(DotSym);
703 *OutStreamer,
717 EmitToStreamer(*OutStreamer, LoweredMI);
722 static unsigned EmitNop(MCContext &OutContext, MCStreamer &OutStreamer,
729 OutStreamer.emitInstruction(
734 OutStreamer.emitInstruction(
742 OutStreamer.emitLabel(DotSym);
743 OutStreamer.emitInstruction(
754 OutStreamer->pushSection();
755 OutStreamer->switchSection(
757 OutStreamer->emitSymbolValue(DotSym, 8);
758 OutStreamer->popSection();
759 OutStreamer->emitLabel(DotSym);
763 EmitNop(Ctx, *OutStreamer, 6, getSubtargetInfo());
770 OutStreamer->emitInstruction(
780 auto &Ctx = OutStreamer->getContext();
782 OutStreamer->emitLabel(MILabel);
805 ShadowBytes += EmitNop(OutContext, *OutStreamer, NumNOPBytes - ShadowBytes,
813 auto &Ctx = OutStreamer->getContext();
815 OutStreamer->emitLabel(MILabel);
834 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::LLILF)
839 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::IIHF)
845 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::BASR)
852 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::BRASL)
865 EncodedBytes += EmitNop(OutContext, *OutStreamer, NumBytes - EncodedBytes,
887 OutStreamer->emitLabel(BeginOfSled);
888 EmitToStreamer(*OutStreamer,
891 EmitNop(OutContext, *OutStreamer, 2, getSubtargetInfo());
892 EmitToStreamer(*OutStreamer,
894 EmitToStreamer(*OutStreamer,
899 OutStreamer->emitLabel(EndOfSled);
911 EmitToStreamer(*OutStreamer, MCInstBuilder(SystemZ::BRC)
932 OutStreamer->emitLabel(BeginOfSled);
933 EmitToStreamer(*OutStreamer,
935 EmitNop(OutContext, *OutStreamer, 4, getSubtargetInfo());
936 EmitToStreamer(*OutStreamer,
938 EmitToStreamer(*OutStreamer,
943 OutStreamer->emitLabel(FallthroughLabel);
954 OutStreamer->emitGNUAttribute(8, HasVectorFeature ? 2 : 1);
981 OutStreamer->emitValue(Expr, Size);
1090 OutStreamer->pushSection();
1093 OutStreamer->switchSection(getObjFileLowering().getADASection());
1104 OutStreamer->AddComment(Twine("Offset ") \
1113 OutStreamer->emitValue(
1118 OutStreamer->emitValue(
1127 OutStreamer->emitValue(
1137 OutStreamer->emitAssignment(Alias,
1139 OutStreamer->emitSymbolAttribute(Alias, MCSA_IndirectSymbol);
1142 OutStreamer->emitValue(
1155 OutStreamer->popSection();
1199 OutStreamer->pushSection();
1200 OutStreamer->switchSection(getObjFileLowering().getIDRLSection());
1217 OutStreamer->emitInt8(0); // Reserved.
1218 OutStreamer->emitInt8(3); // Format.
1219 OutStreamer->emitInt16(IDRLDataLength); // Length.
1220 OutStreamer->emitBytes(Data.str());
1221 OutStreamer->popSection();
1229 OutStreamer->emitLabel(FnEndSym);
1231 OutStreamer->pushSection();
1232 OutStreamer->switchSection(getObjFileLowering().getPPA1Section());
1234 OutStreamer->popSection();
1241 static void emitPPA1Flags(std::unique_ptr<MCStreamer> &OutStreamer, bool VarArg,
1293 OutStreamer->AddComment("PPA1 Flags 1");
1295 OutStreamer->AddComment(" Bit 0: 1 = 64-bit DSA");
1297 OutStreamer->AddComment(" Bit 0: 0 = 32-bit DSA");
1299 OutStreamer->AddComment(" Bit 7: 1 = Vararg function");
1300 OutStreamer->emitInt8(static_cast<uint8_t>(Flags1)); // Flags 1.
1302 OutStreamer->AddComment("PPA1 Flags 2");
1304 OutStreamer->AddComment(" Bit 0: 1 = External procedure");
1306 OutStreamer->AddComment(" Bit 3: 1 = STACKPROTECT is enabled");
1308 OutStreamer->AddComment(" Bit 3: 0 = STACKPROTECT is not enabled");
1309 OutStreamer->emitInt8(static_cast<uint8_t>(Flags2)); // Flags 2.
1311 OutStreamer->AddComment("PPA1 Flags 3");
1313 OutStreamer->AddComment(" Bit 2: 1 = FP Reg Mask is in optional area");
1314 OutStreamer->emitInt8(
1317 OutStreamer->AddComment("PPA1 Flags 4");
1319 OutStreamer->AddComment(" Bit 2: 1 = Vector Reg Mask is in optional area");
1321 OutStreamer->AddComment(" Bit 3: 1 = C++ EH block");
1324 OutStreamer->AddComment(" Bit 7: 1 = Name Length and Name");
1325 OutStreamer->emitInt8(static_cast<uint8_t>(
1329 static void emitPPA1Name(std::unique_ptr<MCStreamer> &OutStreamer,
1346 OutStreamer->AddComment("Length of Name");
1347 OutStreamer->emitInt16(OutSize);
1348 OutStreamer->AddComment("Name of Function");
1349 OutStreamer->emitBytes(OutName);
1350 OutStreamer->emitZeros(ExtraZeros);
1437 OutStreamer->AddComment("PPA1");
1438 OutStreamer->emitLabel(CurrentFnPPA1Sym);
1439 OutStreamer->AddComment("Version");
1440 OutStreamer->emitInt8(0x02); // Version.
1441 OutStreamer->AddComment("LE Signature X'CE'");
1442 OutStreamer->emitInt8(0xCE); // CEL signature.
1443 OutStreamer->AddComment("Saved GPR Mask");
1444 OutStreamer->emitInt16(SavedGPRMask);
1445 OutStreamer->AddComment("Offset to PPA2");
1446 OutStreamer->emitAbsoluteSymbolDiff(PPA2Sym, CurrentFnPPA1Sym, 4);
1453 emitPPA1Flags(OutStreamer, MF->getFunction().isVarArg(),
1457 OutStreamer->AddComment("Length/4 of Parms");
1458 OutStreamer->emitInt16(
1460 OutStreamer->AddComment("Length of Code");
1461 OutStreamer->emitAbsoluteSymbolDiff(FnEndSym, CurrentFnEPMarkerSym, 4);
1465 OutStreamer->AddComment("FPR mask");
1466 OutStreamer->emitInt16(SavedFPRMask);
1467 OutStreamer->AddComment("AR mask");
1468 OutStreamer->emitInt16(0); // AR Mask, unused currently.
1469 OutStreamer->AddComment("FPR Save Area Locator");
1470 OutStreamer->AddComment(Twine(" Bit 0-3: Register R")
1473 OutStreamer->AddComment(Twine(" Bit 4-31: Offset ")
1476 OutStreamer->emitInt32(FrameAndFPROffset); // Offset to FPR save area with
1483 OutStreamer->AddComment("VR mask");
1484 OutStreamer->emitInt8(SavedVRMask);
1485 OutStreamer->emitInt8(0); // Reserved.
1486 OutStreamer->emitInt16(0); // Also reserved.
1487 OutStreamer->AddComment("VR Save Area Locator");
1488 OutStreamer->AddComment(Twine(" Bit 0-3: Register R")
1491 OutStreamer->AddComment(Twine(" Bit 4-31: Offset ")
1494 OutStreamer->emitInt32(FrameAndVROffset);
1506 OutStreamer->AddComment("Version");
1507 OutStreamer->emitInt32(1);
1508 OutStreamer->AddComment("Flags");
1509 OutStreamer->emitInt32(0); // LSDA field is a WAS offset
1510 OutStreamer->AddComment("Personality routine");
1511 OutStreamer->emitInt64(ADATable.insert(
1513 OutStreamer->AddComment("LSDA location");
1516 OutStreamer->emitInt64(
1522 emitPPA1Name(OutStreamer, MF->getFunction().getName());
1525 OutStreamer->emitAbsoluteSymbolDiff(CurrentFnEPMarkerSym, CurrentFnPPA1Sym,
1536 OutStreamer->pushSection();
1537 OutStreamer->switchSection(getObjFileLowering().getPPA2Section());
1538 MCContext &OutContext = OutStreamer->getContext();
1601 OutStreamer->emitLabel(PPA2Sym);
1602 OutStreamer->emitInt8(static_cast<uint8_t>(PPA2MemberId::LE_C_Runtime));
1603 OutStreamer->emitInt8(static_cast<uint8_t>(MemberSubId));
1604 OutStreamer->emitInt8(0x22); // Member defined, c370_plist+c370_env
1605 OutStreamer->emitInt8(0x04); // Control level 4 (XPLink)
1606 OutStreamer->emitAbsoluteSymbolDiff(CELQSTRT, PPA2Sym, 4);
1607 OutStreamer->emitInt32(0x00000000);
1608 OutStreamer->emitAbsoluteSymbolDiff(DateVersionSym, PPA2Sym, 4);
1609 OutStreamer->emitInt32(
1626 OutStreamer->emitInt8(Flgs);
1627 OutStreamer->emitInt8(0x00); // Reserved.
1631 OutStreamer->emitInt16(0x0000); // 16 Reserved flag bits.
1634 OutStreamer->emitLabel(DateVersionSym);
1635 OutStreamer->emitBytes(CompilationTimeStr.str());
1636 OutStreamer->emitBytes(VersionStr.str());
1638 OutStreamer->emitInt16(0x0000); // Service level string length.
1642 OutStreamer->switchSection(getObjFileLowering().getPPA2ListSection());
1645 OutStreamer->AddComment("A(PPA2-CELQSTRT)");
1646 OutStreamer->emitAbsoluteSymbolDiff(PPA2Sym, CELQSTRT, 8);
1647 OutStreamer->popSection();
1654 MCContext &OutContext = OutStreamer->getContext();
1684 OutStreamer->AddComment("XPLINK Routine Layout Entry");
1685 OutStreamer->emitLabel(CurrentFnEPMarkerSym);
1686 OutStreamer->AddComment("Eyecatcher 0x00C300C500C500");
1687 OutStreamer->emitIntValueInHex(0x00C300C500C500, 7); // Eyecatcher.
1688 OutStreamer->AddComment("Mark Type C'1'");
1689 OutStreamer->emitInt8(0xF1); // Mark Type.
1690 OutStreamer->AddComment("Offset to PPA1");
1691 OutStreamer->emitAbsoluteSymbolDiff(CurrentFnPPA1Sym, CurrentFnEPMarkerSym,
1693 if (OutStreamer->isVerboseAsm()) {
1694 OutStreamer->AddComment("DSA Size 0x" + Twine::utohexstr(DSASize));
1695 OutStreamer->AddComment("Entry Flags");
1697 OutStreamer->AddComment(" Bit 1: 1 = Leaf function");
1699 OutStreamer->AddComment(" Bit 1: 0 = Non-leaf function");
1701 OutStreamer->AddComment(" Bit 2: 1 = Uses alloca");
1703 OutStreamer->AddComment(" Bit 2: 0 = Does not use alloca");
1705 OutStreamer->emitInt32(DSAAndFlags);