Lines Matching refs:AP

558 static void emitKill(const MachineInstr *MI, AsmPrinter &AP) {
564 Str += AP.TM.getRegisterInfo()->getName(Op.getReg());
567 AP.OutStreamer.AddComment(Str);
568 AP.OutStreamer.AddBlankLine();
574 static bool emitDebugValueComment(const MachineInstr *MI, AsmPrinter &AP) {
581 OS << '\t' << AP.MAI->getCommentString() << "DEBUG_VALUE: ";
621 const TargetFrameLowering *TFI = AP.TM.getFrameLowering();
622 Offset += TFI->getFrameIndexReference(*AP.MF,
630 AP.OutStreamer.EmitRawText(OS.str());
635 OS << AP.TM.getRegisterInfo()->getName(Reg);
642 AP.OutStreamer.EmitRawText(OS.str());
1500 static const MCExpr *lowerConstant(const Constant *CV, AsmPrinter &AP) {
1501 MCContext &Ctx = AP.OutContext;
1510 return MCSymbolRefExpr::Create(AP.getSymbol(GV), Ctx);
1513 return MCSymbolRefExpr::Create(AP.GetBlockAddressSymbol(BA), Ctx);
1526 ConstantFoldConstantExpression(CE, AP.TM.getDataLayout()))
1528 return lowerConstant(C, AP);
1536 !AP.MF ? 0 : AP.MF->getFunction()->getParent());
1540 const DataLayout &DL = *AP.TM.getDataLayout();
1545 const MCExpr *Base = lowerConstant(CE->getOperand(0), AP);
1561 return lowerConstant(CE->getOperand(0), AP);
1564 const DataLayout &DL = *AP.TM.getDataLayout();
1570 return lowerConstant(Op, AP);
1574 const DataLayout &DL = *AP.TM.getDataLayout();
1580 const MCExpr *OpExpr = lowerConstant(Op, AP);
1606 const MCExpr *LHS = lowerConstant(CE->getOperand(0), AP);
1607 const MCExpr *RHS = lowerConstant(CE->getOperand(1), AP);
1624 static void emitGlobalConstantImpl(const Constant *C, AsmPrinter &AP);
1686 AsmPrinter &AP){
1689 int Value = isRepeatedByteSequence(CDS, AP.TM);
1691 uint64_t Bytes = AP.TM.getDataLayout()->getTypeAllocSize(CDS->getType());
1694 return AP.OutStreamer.EmitFill(Bytes, Value);
1699 return AP.OutStreamer.EmitBytes(CDS->getAsString());
1705 if (AP.isVerbose())
1706 AP.OutStreamer.GetCommentOS() << format("0x%" PRIx64 "\n",
1708 AP.OutStreamer.EmitIntValue(CDS->getElementAsInteger(i),
1722 if (AP.isVerbose())
1723 AP.OutStreamer.GetCommentOS() << "float " << F << '\n';
1724 AP.OutStreamer.EmitIntValue(I, 4);
1735 if (AP.isVerbose())
1736 AP.OutStreamer.GetCommentOS() << "double " << F << '\n';
1737 AP.OutStreamer.EmitIntValue(I, 8);
1741 const DataLayout &DL = *AP.TM.getDataLayout();
1746 AP.OutStreamer.EmitZeros(Padding);
1750 static void emitGlobalConstantArray(const ConstantArray *CA, AsmPrinter &AP) {
1753 int Value = isRepeatedByteSequence(CA, AP.TM);
1756 uint64_t Bytes = AP.TM.getDataLayout()->getTypeAllocSize(CA->getType());
1757 AP.OutStreamer.EmitFill(Bytes, Value);
1761 emitGlobalConstantImpl(CA->getOperand(i), AP);
1765 static void emitGlobalConstantVector(const ConstantVector *CV, AsmPrinter &AP) {
1767 emitGlobalConstantImpl(CV->getOperand(i), AP);
1769 const DataLayout &DL = *AP.TM.getDataLayout();
1774 AP.OutStreamer.EmitZeros(Padding);
1777 static void emitGlobalConstantStruct(const ConstantStruct *CS, AsmPrinter &AP) {
1779 const DataLayout *DL = AP.TM.getDataLayout();
1793 emitGlobalConstantImpl(Field, AP);
1798 AP.OutStreamer.EmitZeros(PadSize);
1804 static void emitGlobalConstantFP(const ConstantFP *CFP, AsmPrinter &AP) {
1809 if (AP.isVerbose()) {
1813 CFP->getType()->print(AP.OutStreamer.GetCommentOS());
1814 AP.OutStreamer.GetCommentOS() << ' ' << StrVal << '\n';
1826 if (AP.TM.getDataLayout()->isBigEndian() != CFP->getType()->isPPC_FP128Ty()) {
1830 AP.OutStreamer.EmitIntValue(p[Chunk--], TrailingBytes);
1833 AP.OutStreamer.EmitIntValue(p[Chunk], sizeof(uint64_t));
1837 AP.OutStreamer.EmitIntValue(p[Chunk], sizeof(uint64_t));
1840 AP.OutStreamer.EmitIntValue(p[Chunk], TrailingBytes);
1844 const DataLayout &DL = *AP.TM.getDataLayout();
1845 AP.OutStreamer.EmitZeros(DL.getTypeAllocSize(CFP->getType()) -
1849 static void emitGlobalConstantLargeInt(const ConstantInt *CI, AsmPrinter &AP) {
1850 const DataLayout *DL = AP.TM.getDataLayout();
1889 AP.OutStreamer.EmitIntValue(Val, 8);
1896 uint64_t Size = AP.TM.getDataLayout()->getTypeAllocSize(CI->getType());
1901 AP.OutStreamer.EmitIntValue(ExtraBits, Size);
1905 static void emitGlobalConstantImpl(const Constant *CV, AsmPrinter &AP) {
1906 const DataLayout *DL = AP.TM.getDataLayout();
1909 return AP.OutStreamer.EmitZeros(Size);
1917 if (AP.isVerbose())
1918 AP.OutStreamer.GetCommentOS() << format("0x%" PRIx64 "\n",
1920 AP.OutStreamer.EmitIntValue(CI->getZExtValue(), Size);
1923 emitGlobalConstantLargeInt(CI, AP);
1929 return emitGlobalConstantFP(CFP, AP);
1932 AP.OutStreamer.EmitIntValue(0, Size);
1937 return emitGlobalConstantDataSequential(CDS, AP);
1940 return emitGlobalConstantArray(CVA, AP);
1943 return emitGlobalConstantStruct(CVS, AP);
1949 return emitGlobalConstantImpl(CE->getOperand(0), AP);
1957 return emitGlobalConstantImpl(New, AP);
1962 return emitGlobalConstantVector(V, AP);
1966 AP.OutStreamer.EmitValue(lowerConstant(CV, AP), Size);
2091 const AsmPrinter &AP) {
2102 AP.OutStreamer.AddComment(" in Loop: Header=BB" +
2103 Twine(AP.getFunctionNumber())+"_" +
2111 raw_ostream &OS = AP.OutStreamer.GetCommentOS();
2113 PrintParentLoopComment(OS, Loop->getParentLoop(), AP.getFunctionNumber());
2123 PrintChildLoopComment(OS, Loop, AP.getFunctionNumber());