Lines Matching refs:PPC
320 O << PPC::stripRegisterPrefix(RegName); in printOperand()
380 if (PPC::isVRRegister(Reg)) in PrintAsmOperand()
381 Reg = PPC::VSX32 + (Reg - PPC::V0); in PrintAsmOperand()
382 else if (PPC::isVFRegister(Reg)) in PrintAsmOperand()
383 Reg = PPC::VSX32 + (Reg - PPC::VF0); in PrintAsmOperand()
386 RegName = PPC::stripRegisterPrefix(RegName); in PrintAsmOperand()
501 MII->getOpcode() == PPC::DBG_VALUE || in LowerSTACKMAP()
511 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::NOP)); in LowerSTACKMAP()
535 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LI8) in LowerPATCHPOINT()
539 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::RLDIC) in LowerPATCHPOINT()
544 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ORIS8) in LowerPATCHPOINT()
549 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ORI8) in LowerPATCHPOINT()
556 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::STD) in LowerPATCHPOINT()
557 .addReg(PPC::X2) in LowerPATCHPOINT()
559 .addReg(PPC::X1)); in LowerPATCHPOINT()
568 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LD) in LowerPATCHPOINT()
569 .addReg(PPC::X2) in LowerPATCHPOINT()
573 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LD) in LowerPATCHPOINT()
580 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::MTCTR8) in LowerPATCHPOINT()
583 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::BCTRL8)); in LowerPATCHPOINT()
587 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LD) in LowerPATCHPOINT()
588 .addReg(PPC::X2) in LowerPATCHPOINT()
590 .addReg(PPC::X1)); in LowerPATCHPOINT()
598 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::BL8_NOP) in LowerPATCHPOINT()
613 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::NOP)); in LowerPATCHPOINT()
621 MIOpc == PPC::GETtlsTpointer32AIX ? ".__get_tpointer" : ".__tls_get_addr"; in createMCSymbolForTlsGetAddr()
635 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::BLA).addExpr(TlsRef)); in EmitAIXTlsCallHelper()
643 unsigned Opcode = PPC::BL8_NOP_TLS; in EmitTlsCall()
649 Opcode = PPC::BL8_NOTOC_TLS; in EmitTlsCall()
654 ((Subtarget->isPPC64() && MI->getOperand(0).getReg() == PPC::X3) || in EmitTlsCall()
655 (!Subtarget->isPPC64() && MI->getOperand(0).getReg() == PPC::R3)) && in EmitTlsCall()
658 ((Subtarget->isPPC64() && MI->getOperand(1).getReg() == PPC::X3) || in EmitTlsCall()
659 (!Subtarget->isPPC64() && MI->getOperand(1).getReg() == PPC::R3)) && in EmitTlsCall()
667 Register VarOffsetReg = Subtarget->isPPC64() ? PPC::X4 : PPC::R4; in EmitTlsCall()
695 : (unsigned)PPC::BL_TLS) in EmitTlsCall()
766 if (PPC::F4RCRegClass.contains(Reg) || in emitInstruction()
767 PPC::F8RCRegClass.contains(Reg) || in emitInstruction()
768 PPC::VFRCRegClass.contains(Reg) || in emitInstruction()
769 PPC::VRRCRegClass.contains(Reg) || in emitInstruction()
770 PPC::VSFRCRegClass.contains(Reg) || in emitInstruction()
771 PPC::VSSRCRegClass.contains(Reg) in emitInstruction()
775 if (PPC::SPERCRegClass.contains(Reg)) in emitInstruction()
851 case PPC::MoveGOTtoLR: { in emitInstruction()
868 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::BL).addExpr(OffsExpr)); in emitInstruction()
871 case PPC::MovePCtoLR: in emitInstruction()
872 case PPC::MovePCtoLR8: { in emitInstruction()
881 MCInstBuilder(PPC::BL) in emitInstruction()
890 case PPC::UpdateGBR: { in emitInstruction()
913 MCInstBuilder(PPC::ADDIS).addReg(PICR).addReg(PICR).addExpr(DeltaHi)); in emitInstruction()
918 MCInstBuilder(PPC::ADDI).addReg(PICR).addReg(PICR).addExpr(DeltaLo)); in emitInstruction()
923 TmpInst.setOpcode(PPC::LWZ); in emitInstruction()
940 TmpInst.setOpcode(PPC::ADD4); in emitInstruction()
948 case PPC::LWZtoc: { in emitInstruction()
953 TmpInst.setOpcode(PPC::LWZ); in emitInstruction()
1009 case PPC::ADDItoc: in emitInstruction()
1010 case PPC::ADDItoc8: { in emitInstruction()
1018 TmpInst.setOpcode((!IsPPC64) ? (PPC::LA) : (PPC::LA8)); in emitInstruction()
1034 case PPC::LDtocJTI: in emitInstruction()
1035 case PPC::LDtocCPT: in emitInstruction()
1036 case PPC::LDtocBA: in emitInstruction()
1037 case PPC::LDtoc: { in emitInstruction()
1042 TmpInst.setOpcode(PPC::LD); in emitInstruction()
1071 case PPC::ADDIStocHA: { in emitInstruction()
1080 TmpInst.setOpcode(PPC::ADDIS); in emitInstruction()
1104 case PPC::LWZtocL: { in emitInstruction()
1113 TmpInst.setOpcode(PPC::LWZ); in emitInstruction()
1137 case PPC::ADDIStocHA8: { in emitInstruction()
1145 TmpInst.setOpcode(PPC::ADDIS8); in emitInstruction()
1176 case PPC::LDtocL: { in emitInstruction()
1184 TmpInst.setOpcode(PPC::LD); in emitInstruction()
1210 case PPC::ADDItocL: { in emitInstruction()
1217 TmpInst.setOpcode(PPC::ADDI8); in emitInstruction()
1233 case PPC::ADDISgotTprelHA: { in emitInstruction()
1243 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDIS8) in emitInstruction()
1249 case PPC::LDgotTprelL: in emitInstruction()
1250 case PPC::LDgotTprelL32: { in emitInstruction()
1255 TmpInst.setOpcode(IsPPC64 ? PPC::LD : PPC::LWZ); in emitInstruction()
1268 case PPC::PPC32PICGOT: { in emitInstruction()
1273 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::BL) in emitInstruction()
1284 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::MFLR) in emitInstruction()
1286 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LWZ) in emitInstruction()
1290 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADD4) in emitInstruction()
1296 case PPC::PPC32GOT: { in emitInstruction()
1303 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LI) in emitInstruction()
1306 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDIS) in emitInstruction()
1312 case PPC::ADDIStlsgdHA: { in emitInstruction()
1322 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDIS8) in emitInstruction()
1328 case PPC::ADDItlsgdL: in emitInstruction()
1331 case PPC::ADDItlsgdL32: { in emitInstruction()
1342 MCInstBuilder(IsPPC64 ? PPC::ADDI8 : PPC::ADDI) in emitInstruction()
1348 case PPC::GETtlsADDR: in emitInstruction()
1351 case PPC::GETtlsADDRPCREL: in emitInstruction()
1352 case PPC::GETtlsADDR32AIX: in emitInstruction()
1353 case PPC::GETtlsADDR64AIX: in emitInstruction()
1357 case PPC::GETtlsADDR32: { in emitInstruction()
1363 case PPC::GETtlsTpointer32AIX: { in emitInstruction()
1369 case PPC::ADDIStlsldHA: { in emitInstruction()
1379 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDIS8) in emitInstruction()
1385 case PPC::ADDItlsldL: in emitInstruction()
1388 case PPC::ADDItlsldL32: { in emitInstruction()
1399 MCInstBuilder(IsPPC64 ? PPC::ADDI8 : PPC::ADDI) in emitInstruction()
1405 case PPC::GETtlsldADDR: in emitInstruction()
1408 case PPC::GETtlsldADDRPCREL: in emitInstruction()
1409 case PPC::GETtlsldADDR32: { in emitInstruction()
1415 case PPC::ADDISdtprelHA: in emitInstruction()
1418 case PPC::ADDISdtprelHA32: { in emitInstruction()
1429 MCInstBuilder(IsPPC64 ? PPC::ADDIS8 : PPC::ADDIS) in emitInstruction()
1435 case PPC::PADDIdtprel: { in emitInstruction()
1443 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::PADDI8) in emitInstruction()
1450 case PPC::ADDIdtprelL: in emitInstruction()
1453 case PPC::ADDIdtprelL32: { in emitInstruction()
1463 MCInstBuilder(IsPPC64 ? PPC::ADDI8 : PPC::ADDI) in emitInstruction()
1469 case PPC::MFOCRF: in emitInstruction()
1470 case PPC::MFOCRF8: in emitInstruction()
1475 MI->getOpcode() == PPC::MFOCRF ? PPC::MFCR : PPC::MFCR8; in emitInstruction()
1483 case PPC::MTOCRF: in emitInstruction()
1484 case PPC::MTOCRF8: in emitInstruction()
1489 MI->getOpcode() == PPC::MTOCRF ? PPC::MTCRF : PPC::MTCRF8; in emitInstruction()
1500 case PPC::LD: in emitInstruction()
1501 case PPC::STD: in emitInstruction()
1502 case PPC::LWA_32: in emitInstruction()
1503 case PPC::LWA: { in emitInstruction()
1506 unsigned OpNum = (MI->getOpcode() == PPC::STD) ? 2 : 1; in emitInstruction()
1516 case PPC::PseudoEIEIO: { in emitInstruction()
1519 MCInstBuilder(PPC::ORI).addReg(PPC::X2).addReg(PPC::X2).addImm(0)); in emitInstruction()
1522 MCInstBuilder(PPC::ORI).addReg(PPC::X2).addReg(PPC::X2).addImm(0)); in emitInstruction()
1523 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::EnforceIEIO)); in emitInstruction()
1526 case PPC::ADDI8: { in emitInstruction()
1538 TmpInst.setOpcode(PPC::LA8); in emitInstruction()
1595 MCInstBuilder(PPC::B).addExpr( in emitInstruction()
1597 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::NOP)); in emitInstruction()
1600 MCInstBuilder(PPC::STD).addReg(PPC::X0).addImm(-8).addReg(PPC::X1)); in emitInstruction()
1601 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::MFLR8).addReg(PPC::X0)); in emitInstruction()
1603 MCInstBuilder(PPC::BL8_NOP) in emitInstruction()
1607 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::MTLR8).addReg(PPC::X0)); in emitInstruction()
1623 if (RetOpcode == PPC::BCCLR) { in emitInstruction()
1625 } else if (RetOpcode == PPC::TCRETURNdi8 || RetOpcode == PPC::TCRETURNri8 || in emitInstruction()
1626 RetOpcode == PPC::TCRETURNai8) { in emitInstruction()
1628 } else if (RetOpcode == PPC::BLR8 || RetOpcode == PPC::TAILB8) { in emitInstruction()
1658 MCInstBuilder(PPC::BCC) in emitInstruction()
1659 .addImm(PPC::InvertPredicate( in emitInstruction()
1660 static_cast<PPC::Predicate>(MI->getOperand(1).getImm()))) in emitInstruction()
1664 RetInst.setOpcode(PPC::BLR8); in emitInstruction()
1682 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::NOP)); in emitInstruction()
1685 MCInstBuilder(PPC::STD).addReg(PPC::X0).addImm(-8).addReg(PPC::X1)); in emitInstruction()
1686 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::MFLR8).addReg(PPC::X0)); in emitInstruction()
1688 MCInstBuilder(PPC::BL8_NOP) in emitInstruction()
1692 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::MTLR8).addReg(PPC::X0)); in emitInstruction()
1777 && !MF->getRegInfo().use_empty(PPC::X2)) { in emitFunctionEntryLabel()
1883 const bool UsesX2OrR2 = !MF->getRegInfo().use_empty(PPC::X2) || in emitFunctionBodyStart()
1884 !MF->getRegInfo().use_empty(PPC::R2); in emitFunctionBodyStart()
1909 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDIS) in emitFunctionBodyStart()
1910 .addReg(PPC::X2) in emitFunctionBodyStart()
1911 .addReg(PPC::X12) in emitFunctionBodyStart()
1915 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADDI) in emitFunctionBodyStart()
1916 .addReg(PPC::X2) in emitFunctionBodyStart()
1917 .addReg(PPC::X2) in emitFunctionBodyStart()
1925 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::LD) in emitFunctionBodyStart()
1926 .addReg(PPC::X2) in emitFunctionBodyStart()
1928 .addReg(PPC::X12)); in emitFunctionBodyStart()
1929 EmitToStreamer(*OutStreamer, MCInstBuilder(PPC::ADD8) in emitFunctionBodyStart()
1930 .addReg(PPC::X2) in emitFunctionBodyStart()
1931 .addReg(PPC::X2) in emitFunctionBodyStart()
1932 .addReg(PPC::X12)); in emitFunctionBodyStart()
2076 for (unsigned Reg = PPC::V20; Reg <= PPC::V31; ++Reg) in getNumberOfVRSaved()
2079 return PPC::V31 - Reg + 1; in getNumberOfVRSaved()
2169 for (unsigned Reg = PPC::F0; Reg <= PPC::F31; ++Reg) { in emitTracebackTable()
2212 if (FrameReg == (Subtarget->isPPC64() ? PPC::X31 : PPC::R31)) in emitTracebackTable()
2242 for (unsigned Reg = PPC::F14; Reg <= PPC::F31; ++Reg) { in emitTracebackTable()
2244 FPRSaved = PPC::F31 - Reg + 1; in emitTracebackTable()
2262 for (unsigned Reg = PPC::V0; Reg <= PPC::V31; ++Reg) in emitTracebackTable()
2282 unsigned GPRBegin = Subtarget->isPPC64() ? PPC::X14 : PPC::R13; in emitTracebackTable()
2283 unsigned GPREnd = Subtarget->isPPC64() ? PPC::X31 : PPC::R31; in emitTracebackTable()
2819 case PPC::TW: in emitInstruction()
2820 case PPC::TWI: in emitInstruction()
2821 case PPC::TD: in emitInstruction()
2822 case PPC::TDI: { in emitInstruction()
2838 case PPC::GETtlsTpointer32AIX: in emitInstruction()
2839 case PPC::GETtlsADDR64AIX: in emitInstruction()
2840 case PPC::GETtlsADDR32AIX: { in emitInstruction()
2848 case PPC::BL8: in emitInstruction()
2849 case PPC::BL: in emitInstruction()
2850 case PPC::BL8_NOP: in emitInstruction()
2851 case PPC::BL_NOP: { in emitInstruction()
2859 case PPC::BL_TLS: in emitInstruction()
2860 case PPC::BL8_TLS: in emitInstruction()
2861 case PPC::BL8_TLS_: in emitInstruction()
2862 case PPC::BL8_NOP_TLS: in emitInstruction()
2864 case PPC::TAILB: in emitInstruction()
2865 case PPC::TAILB8: in emitInstruction()
2866 case PPC::TAILBA: in emitInstruction()
2867 case PPC::TAILBA8: in emitInstruction()
2868 case PPC::TAILBCTR: in emitInstruction()
2869 case PPC::TAILBCTR8: in emitInstruction()
2873 case PPC::DST: in emitInstruction()
2874 case PPC::DST64: in emitInstruction()
2875 case PPC::DSTT: in emitInstruction()
2876 case PPC::DSTT64: in emitInstruction()
2877 case PPC::DSTST: in emitInstruction()
2878 case PPC::DSTST64: in emitInstruction()
2879 case PPC::DSTSTT: in emitInstruction()
2880 case PPC::DSTSTT64: in emitInstruction()
2883 MCInstBuilder(PPC::ORI).addReg(PPC::R0).addReg(PPC::R0).addImm(0)); in emitInstruction()