Lines Matching defs:AP
1122 static void emitKill(const MachineInstr *MI, AsmPrinter &AP) {
1129 << printReg(Op.getReg(), AP.MF->getSubtarget().getRegisterInfo());
1131 AP.OutStreamer->AddComment(Str);
1132 AP.OutStreamer->addBlankLine();
1138 static bool emitDebugValueComment(const MachineInstr *MI, AsmPrinter &AP) {
1214 AP.MF->getSubtarget().getFrameLowering();
1215 Offset = TFI->getFrameIndexReference(*AP.MF, Op.getIndex(), Reg);
1227 OS << printReg(Reg, AP.MF->getSubtarget().getRegisterInfo());
1238 AP.OutStreamer->emitRawComment(Str);
1245 static bool emitDebugLabelComment(const MachineInstr *MI, AsmPrinter &AP) {
1263 AP.OutStreamer->emitRawComment(OS.str());
3294 AsmPrinter &AP,
3299 static void emitGlobalConstantFP(const ConstantFP *CFP, AsmPrinter &AP);
3300 static void emitGlobalConstantFP(APFloat APF, Type *ET, AsmPrinter &AP);
3351 static void emitGlobalAliasInline(AsmPrinter &AP, uint64_t Offset,
3357 AP.OutStreamer->emitLabel(AP.getSymbol(GA));
3364 const DataLayout &DL, const ConstantDataSequential *CDS, AsmPrinter &AP,
3372 return AP.OutStreamer->emitFill(Bytes, Value);
3377 return AP.OutStreamer->emitBytes(CDS->getAsString());
3383 emitGlobalAliasInline(AP, ElementByteSize * I, AliasList);
3384 if (AP.isVerbose())
3385 AP.OutStreamer->getCommentOS()
3387 AP.OutStreamer->emitIntValue(CDS->getElementAsInteger(I),
3393 emitGlobalAliasInline(AP, ElementByteSize * I, AliasList);
3394 emitGlobalConstantFP(CDS->getElementAsAPFloat(I), ET, AP);
3403 AP.OutStreamer->emitZeros(Padding);
3407 const ConstantArray *CA, AsmPrinter &AP,
3416 AP.OutStreamer->emitFill(Bytes, Value);
3419 emitGlobalConstantImpl(DL, CA->getOperand(I), AP, BaseCV, Offset,
3426 static void emitGlobalConstantLargeInt(const ConstantInt *CI, AsmPrinter &AP);
3429 const ConstantVector *CV, AsmPrinter &AP,
3449 emitGlobalAliasInline(AP, 0, AliasList);
3450 emitGlobalConstantLargeInt(CI, AP);
3454 emitGlobalAliasInline(AP, DL.getTypeAllocSize(CV->getType()) * I, AliasList);
3455 emitGlobalConstantImpl(DL, CV->getOperand(I), AP);
3463 AP.OutStreamer->emitZeros(Padding);
3467 const ConstantStruct *CS, AsmPrinter &AP,
3478 emitGlobalConstantImpl(DL, Field, AP, BaseCV, Offset + SizeSoFar,
3491 AP.OutStreamer->emitZeros(PadSize);
3497 static void emitGlobalConstantFP(APFloat APF, Type *ET, AsmPrinter &AP) {
3503 if (AP.isVerbose()) {
3506 ET->print(AP.OutStreamer->getCommentOS());
3507 AP.OutStreamer->getCommentOS() << ' ' << StrVal << '\n';
3519 if (AP.getDataLayout().isBigEndian() && !ET->isPPC_FP128Ty()) {
3523 AP.OutStreamer->emitIntValueInHexWithPadding(p[Chunk--], TrailingBytes);
3526 AP.OutStreamer->emitIntValueInHexWithPadding(p[Chunk], sizeof(uint64_t));
3530 AP.OutStreamer->emitIntValueInHexWithPadding(p[Chunk], sizeof(uint64_t));
3533 AP.OutStreamer->emitIntValueInHexWithPadding(p[Chunk], TrailingBytes);
3537 const DataLayout &DL = AP.getDataLayout();
3538 AP.OutStreamer->emitZeros(DL.getTypeAllocSize(ET) - DL.getTypeStoreSize(ET));
3541 static void emitGlobalConstantFP(const ConstantFP *CFP, AsmPrinter &AP) {
3542 emitGlobalConstantFP(CFP->getValueAPF(), CFP->getType(), AP);
3545 static void emitGlobalConstantLargeInt(const ConstantInt *CI, AsmPrinter &AP) {
3546 const DataLayout &DL = AP.getDataLayout();
3587 AP.OutStreamer->emitIntValue(Val, 8);
3594 uint64_t Size = AP.getDataLayout().getTypeStoreSize(CI->getType());
3599 AP.OutStreamer->emitIntValue(ExtraBits, Size);
3606 static void handleIndirectSymViaGOTPCRel(AsmPrinter &AP, const MCExpr **ME,
3638 if (!AP.GlobalGOTEquivs.count(GOTEquivSym))
3646 const MCSymbol *BaseSym = AP.getSymbol(BaseGV);
3657 if (!AP.getObjFileLowering().supportGOTPCRelWithOffset() && GOTPCRelCst != 0)
3675 AsmPrinter::GOTEquivUsePair Result = AP.GlobalGOTEquivs[GOTEquivSym];
3679 const MCSymbol *FinalSym = AP.getSymbol(FinalGV);
3680 *ME = AP.getObjFileLowering().getIndirectSymViaGOTPCRel(
3681 FinalGV, FinalSym, MV, Offset, AP.MMI, *AP.OutStreamer);
3686 AP.GlobalGOTEquivs[GOTEquivSym] = std::make_pair(GV, NumUses);
3690 AsmPrinter &AP, const Constant *BaseCV,
3693 emitGlobalAliasInline(AP, Offset, AliasList);
3703 return AP.OutStreamer->emitZeros(Size);
3709 if (AP.isVerbose())
3710 AP.OutStreamer->getCommentOS()
3712 AP.OutStreamer->emitIntValue(CI->getZExtValue(), StoreSize);
3714 emitGlobalConstantLargeInt(CI, AP);
3719 AP.OutStreamer->emitZeros(Size - StoreSize);
3725 return emitGlobalConstantFP(CFP, AP);
3728 AP.OutStreamer->emitIntValue(0, Size);
3733 return emitGlobalConstantDataSequential(DL, CDS, AP, AliasList);
3736 return emitGlobalConstantArray(DL, CVA, AP, BaseCV, Offset, AliasList);
3739 return emitGlobalConstantStruct(DL, CVS, AP, BaseCV, Offset, AliasList);
3745 return emitGlobalConstantImpl(DL, CE->getOperand(0), AP);
3753 return emitGlobalConstantImpl(DL, New, AP);
3758 return emitGlobalConstantVector(DL, V, AP, AliasList);
3762 const MCExpr *ME = AP.lowerConstant(CV);
3767 if (AP.getObjFileLowering().supportIndirectSymViaGOTPCRel())
3768 handleIndirectSymViaGOTPCRel(AP, &ME, BaseCV, Offset);
3770 AP.OutStreamer->emitValue(ME, Size);
3915 const AsmPrinter &AP) {
3926 AP.OutStreamer->AddComment(" in Loop: Header=BB" +
3927 Twine(AP.getFunctionNumber())+"_" +
3935 raw_ostream &OS = AP.OutStreamer->getCommentOS();
3937 PrintParentLoopComment(OS, Loop->getParentLoop(), AP.getFunctionNumber());
3947 PrintChildLoopComment(OS, Loop, AP.getFunctionNumber());