Lines Matching defs:O

76                                    raw_ostream &O) {
82 if (printSysAlias(MI, STI, O)) {
83 printAnnotation(O, Annot);
88 if (printSyspAlias(MI, STI, O)) {
89 printAnnotation(O, Annot);
95 if (printRangePrefetchAlias(MI, STI, O, Annot))
135 O << '\t' << AsmMnemonic << '\t';
136 printRegName(O, Op0.getReg());
137 O << ", ";
138 printRegName(O, getWRegFromXReg(Op1.getReg()));
139 printAnnotation(O, Annot);
173 O << '\t' << AsmMnemonic << '\t';
174 printRegName(O, Op0.getReg());
175 O << ", ";
176 printRegName(O, Op1.getReg());
177 O << ", ";
178 markup(O, Markup::Immediate) << "#" << shift;
179 printAnnotation(O, Annot);
186 O << '\t' << (IsSigned ? "sbfiz" : "ubfiz") << '\t';
187 printRegName(O, Op0.getReg());
188 O << ", ";
189 printRegName(O, Op1.getReg());
190 O << ", ";
191 markup(O, Markup::Immediate) << "#" << (Is64Bit ? 64 : 32) - Op2.getImm();
192 O << ", ";
193 markup(O, Markup::Immediate) << "#" << Op3.getImm() + 1;
194 printAnnotation(O, Annot);
199 O << '\t' << (IsSigned ? "sbfx" : "ubfx") << '\t';
200 printRegName(O, Op0.getReg());
201 O << ", ";
202 printRegName(O, Op1.getReg());
203 O << ", ";
204 markup(O, Markup::Immediate) << "#" << Op2.getImm();
205 O << ", ";
206 markup(O, Markup::Immediate) << "#" << Op3.getImm() - Op2.getImm() + 1;
207 printAnnotation(O, Annot);
224 O << "\tbfc\t";
225 printRegName(O, Op0.getReg());
226 O << ", ";
227 markup(O, Markup::Immediate) << "#" << LSB;
228 O << ", ";
229 markup(O, Markup::Immediate) << "#" << Width;
230 printAnnotation(O, Annot);
238 O << "\tbfi\t";
239 printRegName(O, Op0.getReg());
240 O << ", ";
241 printRegName(O, Op2.getReg());
242 O << ", ";
243 markup(O, Markup::Immediate) << "#" << LSB;
244 O << ", ";
245 markup(O, Markup::Immediate) << "#" << Width;
246 printAnnotation(O, Annot);
253 O << "\tbfxil\t";
254 printRegName(O, Op0.getReg());
255 O << ", ";
256 printRegName(O, Op2.getReg());
257 O << ", ";
258 markup(O, Markup::Immediate) << "#" << LSB;
259 O << ", ";
260 markup(O, Markup::Immediate) << "#" << Width;
261 printAnnotation(O, Annot);
272 O << "\tmovz\t";
274 O << "\tmovn\t";
276 printRegName(O, MI->getOperand(0).getReg());
277 O << ", ";
279 WithMarkup M = markup(O, Markup::Immediate);
280 O << "#";
281 MI->getOperand(1).getExpr()->print(O, &MAI);
288 O << "\tmovk\t";
289 printRegName(O, MI->getOperand(0).getReg());
290 O << ", ";
292 WithMarkup M = markup(O, Markup::Immediate);
293 O << "#";
294 MI->getOperand(2).getExpr()->print(O, &MAI);
301 O << "\tmov\t";
302 printRegName(O, MI->getOperand(0).getReg());
303 O << ", ";
304 markup(O, Markup::Immediate) << "#" << formatImm(SExtVal);
362 O << '\t' << MAI.getCommentString() << " SPACE "
364 printAnnotation(O, Annot);
371 O << "\ttsb\tcsync";
375 if (!PrintAliases || !printAliasInstr(MI, Address, STI, O))
376 printInstruction(MI, Address, STI, O);
378 printAnnotation(O, Annot);
383 printAnnotation(O, "acquire semantics dropped since destination is zero");
786 raw_ostream &O) {
792 O << "\t" << (IsTbx ? "tbx" : "tbl") << Layout << '\t';
793 printRegName(O, MI->getOperand(0).getReg(), AArch64::vreg);
794 O << ", ";
797 printVectorList(MI, ListOpNum, STI, O, "");
799 O << ", ";
800 printRegName(O, MI->getOperand(ListOpNum + 1).getReg(), AArch64::vreg);
801 printAnnotation(O, Annot);
806 O << "\t" << LdStDesc->Mnemonic << LdStDesc->Layout << '\t';
811 printVectorList(MI, OpNum++, STI, O, "");
814 O << '[' << MI->getOperand(OpNum++).getImm() << ']';
818 O << ", [";
819 printRegName(O, AddrReg);
820 O << ']';
826 O << ", ";
827 printRegName(O, Reg);
830 O << ", ";
831 markup(O, Markup::Immediate) << "#" << LdStDesc->NaturalOffset;
835 printAnnotation(O, Annot);
839 AArch64InstPrinter::printInst(MI, Address, Annot, STI, O);
848 raw_ostream &O,
881 O << "\trprfm ";
883 O << RPRFM->Name << ", ";
885 O << "#" << formatImm(RPRFOp) << ", ";
886 O << getRegisterName(Rm);
887 O << ", [";
888 printOperand(MI, 1, STI, O); // "Rn".
889 O << "]";
891 printAnnotation(O, Annot);
898 raw_ostream &O) {
1023 O << '\t' << Str;
1025 O << ", ";
1026 printRegName(O, MI->getOperand(4).getReg());
1034 raw_ostream &O) {
1082 O << '\t' << Str;
1083 O << ", ";
1085 printSyspXzrPair(MI, 4, STI, O);
1087 printGPRSeqPairsClassOperand<64>(MI, 4, STI, O);
1095 raw_ostream &O) {
1099 printRegName(O, RegOp.getReg());
1104 O << ".b";
1107 O << ".h";
1110 O << ".s";
1113 O << ".d";
1116 O << ".q";
1126 raw_ostream &O) {
1134 O << Base << (IsVertical ? "v" : "h") << '.' << Suffix;
1139 raw_ostream &O) {
1142 printRegName(O, RegOp.getReg());
1147 raw_ostream &O) {
1153 O << SVCR->Name;
1158 raw_ostream &O) {
1161 printRegName(O, Op.getReg());
1163 printImm(MI, OpNo, STI, O);
1166 Op.getExpr()->print(O, &MAI);
1172 raw_ostream &O) {
1174 markup(O, Markup::Immediate) << "#" << formatImm(Op.getImm());
1179 raw_ostream &O) {
1181 markup(O, Markup::Immediate) << format("#%#llx", Op.getImm());
1187 raw_ostream &O) {
1190 markup(O, Markup::Immediate) << "#" << formatImm((signed char)Op.getImm());
1192 markup(O, Markup::Immediate) << "#" << formatImm((signed short)Op.getImm());
1194 markup(O, Markup::Immediate) << "#" << formatImm(Op.getImm());
1198 unsigned Imm, raw_ostream &O) {
1203 markup(O, Markup::Immediate) << "#" << Imm;
1205 printRegName(O, Reg);
1212 raw_ostream &O) {
1215 printRegName(O, Op.getReg(), AArch64::vreg);
1220 raw_ostream &O) {
1223 O << "c" << Op.getImm();
1228 raw_ostream &O) {
1235 markup(O, Markup::Immediate) << '#' << formatImm(Val);
1237 printShifter(MI, OpNum + 1, STI, O);
1243 MO.getExpr()->print(O, &MAI);
1244 printShifter(MI, OpNum + 1, STI, O);
1251 raw_ostream &O) {
1253 WithMarkup M = markup(O, Markup::Immediate);
1254 O << "#0x";
1255 O.write_hex(AArch64_AM::decodeLogicalImmediate(Val, 8 * sizeof(T)));
1260 raw_ostream &O) {
1266 O << ", " << AArch64_AM::getShiftExtendName(AArch64_AM::getShiftType(Val))
1268 markup(O, Markup::Immediate) << "#" << AArch64_AM::getShiftValue(Val);
1273 raw_ostream &O) {
1274 printRegName(O, MI->getOperand(OpNum).getReg());
1275 printShifter(MI, OpNum + 1, STI, O);
1280 raw_ostream &O) {
1281 printRegName(O, MI->getOperand(OpNum).getReg());
1282 printArithExtend(MI, OpNum + 1, STI, O);
1287 raw_ostream &O) {
1303 O << ", lsl ";
1304 markup(O, Markup::Immediate) << "#" << ShiftVal;
1309 O << ", " << AArch64_AM::getShiftExtendName(ExtType);
1311 O << " ";
1312 markup(O, Markup::Immediate) << "#" << ShiftVal;
1318 raw_ostream &O) {
1322 O << "lsl";
1324 O << (SignExtend ? 's' : 'u') << "xt" << SrcRegKind;
1327 O << " ";
1328 markup(O, Markup::Immediate) << "#" << Log2_32(Width / 8);
1333 raw_ostream &O, char SrcRegKind,
1337 printMemExtendImpl(SignExtend, DoShift, Width, SrcRegKind, O);
1344 raw_ostream &O) {
1345 printOperand(MI, OpNum, STI, O);
1347 O << '.' << Suffix;
1353 O << ", ";
1354 printMemExtendImpl(SignExtend, DoShift, ExtWidth, SrcRegKind, O);
1362 raw_ostream &O) {
1366 O << "pn" << Reg - AArch64::PN0;
1372 O << ".b";
1375 O << ".h";
1378 O << ".s";
1381 O << ".d";
1390 raw_ostream &O) {
1392 O << AArch64CC::getCondCodeName(CC);
1397 raw_ostream &O) {
1399 O << AArch64CC::getCondCodeName(AArch64CC::getInvertedCondCode(CC));
1404 raw_ostream &O) {
1405 O << '[';
1406 printRegName(O, MI->getOperand(OpNum).getReg());
1407 O << ']';
1413 raw_ostream &O) {
1414 markup(O, Markup::Immediate)
1421 raw_ostream &O) {
1423 O << formatImm(FirstImm);
1424 O << ":" << formatImm(FirstImm + Offset);
1428 unsigned Scale, raw_ostream &O) {
1431 markup(O, Markup::Immediate) << '#' << formatImm(MO.getImm() * Scale);
1434 MO.getExpr()->print(O, &MAI);
1439 unsigned Scale, raw_ostream &O) {
1441 O << '[';
1442 printRegName(O, MI->getOperand(OpNum).getReg());
1444 O << ", ";
1445 markup(O, Markup::Immediate) << "#" << formatImm(MO1.getImm() * Scale);
1448 O << ", ";
1449 MO1.getExpr()->print(O, &MAI);
1451 O << ']';
1456 raw_ostream &O) {
1459 O << PRFM->Name;
1463 O << '#' << formatImm(prfop);
1469 raw_ostream &O) {
1473 O << PRFM->Name;
1479 O << PRFM->Name;
1484 markup(O, Markup::Immediate) << '#' << formatImm(prfop);
1489 raw_ostream &O) {
1493 O << PSB->Name;
1495 markup(O, Markup::Immediate) << '#' << formatImm(psbhintop);
1500 raw_ostream &O) {
1504 O << BTI->Name;
1506 markup(O, Markup::Immediate) << '#' << formatImm(btihintop);
1511 raw_ostream &O) {
1517 markup(O, Markup::Immediate) << format("#%.8f", FPImm);
1621 raw_ostream &O) {
1631 printRegName(O, Even);
1632 O << ", ";
1633 printRegName(O, Odd);
1638 raw_ostream &O) {
1647 O << "{";
1653 printRegName(O, AArch64::ZAD0 + I);
1655 O << ", ";
1658 O << "}";
1663 raw_ostream &O,
1667 O << "{ ";
1718 printRegName(O, Reg);
1719 O << LayoutSuffix;
1723 O << split_char;
1724 printRegName(O, (getNextVectorRegister(Reg, NumRegs - 1)));
1725 O << LayoutSuffix;
1733 printRegName(O, Reg);
1735 printRegName(O, Reg, AArch64::vreg);
1736 O << LayoutSuffix;
1738 O << ", ";
1741 O << " }";
1748 raw_ostream &O) {
1749 printVectorList(MI, OpNum, STI, O, "");
1755 raw_ostream &O) {
1757 printVectorList(MI, OpNum, STI, O, "");
1766 printVectorList(MI, OpNum, STI, O, Suffix);
1772 raw_ostream &O) {
1773 O << "[" << Scale * MI->getOperand(OpNum).getImm() << "]";
1779 raw_ostream &O) {
1780 O << Scale * MI->getOperand(OpNum).getImm();
1786 raw_ostream &O) {
1794 markup(O, Markup::Target) << formatHex(Address + Offset);
1796 markup(O, Markup::Immediate) << "#" << formatImm(Offset);
1805 markup(O, Markup::Target) << formatHex((uint64_t)TargetAddress);
1808 MI->getOperand(OpNum).getExpr()->print(O, &MAI);
1815 raw_ostream &O) {
1826 WithMarkup M = markup(O, Markup::Immediate);
1828 markup(O, Markup::Target) << formatHex(Address + Offset);
1830 markup(O, Markup::Immediate) << "#" << Offset;
1835 MI->getOperand(OpNum).getExpr()->print(O, &MAI);
1840 raw_ostream &O) {
1856 O << Name;
1858 markup(O, Markup::Immediate) << "#" << Val;
1863 raw_ostream &O) {
1872 O << Name;
1874 markup(O, Markup::Immediate) << "#" << Val;
1900 raw_ostream &O) {
1907 O << "DBGDTRRX_EL0";
1913 O << "TRCEXTINSELR";
1920 O << Reg->Name;
1922 O << AArch64SysReg::genericRegisterString(Val);
1927 raw_ostream &O) {
1934 O << "DBGDTRTX_EL0";
1940 O << "TRCEXTINSELR";
1947 O << Reg->Name;
1949 O << AArch64SysReg::genericRegisterString(Val);
1954 raw_ostream &O) {
1960 O << PStateImm15->Name;
1962 O << PStateImm1->Name;
1964 O << "#" << formatImm(Val);
1969 raw_ostream &O) {
1972 markup(O, Markup::Immediate) << format("#%#016llx", Val);
1978 raw_ostream &O) {
1980 markup(O, Markup::Immediate) << "#" << (Val * Angle) + Remainder;
1985 raw_ostream &O) {
1988 O << Pat->Name;
1990 markup(O, Markup::Immediate) << '#' << formatImm(Val);
1996 raw_ostream &O) {
2003 O << Pat->Name;
2011 raw_ostream &O) {
2024 printRegName(O, Reg);
2026 O << '.' << suffix;
2030 void AArch64InstPrinter::printImmSVE(T Value, raw_ostream &O) {
2034 markup(O, Markup::Immediate) << '#' << formatHex((uint64_t)HexValue);
2036 markup(O, Markup::Immediate) << '#' << formatDec(Value);
2050 raw_ostream &O) {
2058 markup(O, Markup::Immediate) << '#' << formatImm(UnscaledVal);
2059 printShifter(MI, OpNum + 1, STI, O);
2069 printImmSVE(Val, O);
2075 raw_ostream &O) {
2084 printImmSVE((T)PrintVal, O);
2086 printImmSVE(PrintVal, O);
2088 markup(O, Markup::Immediate) << '#' << formatHex((uint64_t)PrintVal);
2094 raw_ostream &O) {
2106 printRegName(O, Reg - AArch64::Z0 + Base);
2112 raw_ostream &O) {
2116 markup(O, Markup::Immediate)
2122 raw_ostream &O) {
2124 printRegName(O, getWRegFromXReg(Reg));
2129 raw_ostream &O) {
2131 printRegName(O, MRI.getSubReg(Reg, AArch64::x8sub_0));
2136 raw_ostream &O) {
2140 O << getRegisterName(Reg) << ", " << getRegisterName(Reg);
2145 raw_ostream &O) {
2149 O << PH->Name;
2151 markup(O, Markup::Immediate) << '#' << formatImm(Op);