Home | History | Annotate | Download | only in ARM

Lines Matching full:oops

293 class PseudoInst<dag oops, dag iops, InstrItinClass itin, list<dag> pattern>
296 let OutOperandList = oops;
304 class ARMPseudoInst<dag oops, dag iops, int sz, InstrItinClass itin,
306 : PseudoInst<oops, iops, itin, pattern> {
312 class tPseudoInst<dag oops, dag iops, int sz, InstrItinClass itin,
314 : PseudoInst<oops, iops, itin, pattern> {
320 class t2PseudoInst<dag oops, dag iops, int sz, InstrItinClass itin,
322 : PseudoInst<oops, iops, itin, pattern> {
327 class ARMPseudoExpand<dag oops, dag iops, int sz,
330 : ARMPseudoInst<oops, iops, sz, itin, pattern>,
333 class tPseudoExpand<dag oops, dag iops, int sz,
336 : tPseudoInst<oops, iops, sz, itin, pattern>,
339 class t2PseudoExpand<dag oops, dag iops, int sz,
342 : t2PseudoInst<oops, iops, sz, itin, pattern>,
346 class I<dag oops, dag iops, AddrMode am, int sz,
353 let OutOperandList = oops;
361 class InoP<dag oops, dag iops, AddrMode am, int sz,
366 let OutOperandList = oops;
377 class sI<dag oops, dag iops, AddrMode am, int sz,
387 let OutOperandList = oops;
395 class XI<dag oops, dag iops, AddrMode am, int sz,
399 let OutOperandList = oops;
406 class AI<dag oops, dag iops, Format f, InstrItinClass itin,
408 : I<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
410 class AsI<dag oops, dag iops, Format f, InstrItinClass itin,
412 : sI<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
414 class AXI<dag oops, dag iops, Format f, InstrItinClass itin,
416 : XI<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
418 class AInoP<dag oops, dag iops, Format f, InstrItinClass itin,
420 : InoP<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
424 class ABI<bits<4> opcod, dag oops, dag iops, InstrItinClass itin,
426 : I<oops, iops, AddrModeNone, 4, IndexModeNone, BrFrm, itin,
430 class ABXI<bits<4> opcod, dag oops, dag iops, InstrItinClass itin,
432 : XI<oops, iops, AddrModeNone, 4, IndexModeNone, BrFrm, itin,
438 class JTI<dag oops, dag iops, InstrItinClass itin,
440 : XI<oops, iops, AddrModeNone, 0, IndexModeNone, BrMiscFrm, itin,
444 class AIldrex<bits<2> opcod, dag oops, dag iops, InstrItinClass itin,
446 : I<oops, iops, AddrModeNone, 4, IndexModeNone, LdStExFrm, itin,
457 class AIstrex<bits<2> opcod, dag oops, dag iops, InstrItinClass itin,
459 : I<oops, iops, AddrModeNone, 4, IndexModeNone, LdStExFrm, itin,
472 class AIswp<bit b, dag oops, dag iops, string opc, list<dag> pattern>
473 : AI<oops, iops, MiscFrm, NoItinerary, opc, "\t$Rt, $Rt2, $addr", pattern> {
487 class AI1<bits<4> opcod, dag oops, dag iops, Format f, InstrItinClass itin,
489 : I<oops, iops, AddrMode1, 4, IndexModeNone, f, itin,
494 class AsI1<bits<4> opcod, dag oops, dag iops, Format f, InstrItinClass itin,
496 : sI<oops, iops, AddrMode1, 4, IndexModeNone, f, itin,
501 class AXI1<bits<4> opcod, dag oops, dag iops, Format f, InstrItinClass itin,
503 : XI<oops, iops, AddrMode1, 4, IndexModeNone, f, itin,
512 class AI2ldst<bits<3> op, bit isLd, bit isByte, dag oops, dag iops, AddrMode am,
515 : I<oops, iops, am, 4, IndexModeNone, f, itin, opc, asm,
525 class AI2ldstidx<bit isLd, bit isByte, bit isPre, dag oops, dag iops,
528 : I<oops, iops, AddrMode2, 4, im, f, itin,
538 class AI2stridx_reg<bit isByte, bit isPre, dag oops, dag iops,
541 : AI2ldstidx<0, isByte, isPre, oops, iops, im, f, itin, opc, asm, cstr,
556 class AI2stridx_imm<bit isByte, bit isPre, dag oops, dag iops,
559 : AI2ldstidx<0, isByte, isPre, oops, iops, im, f, itin, opc, asm, cstr,
575 class AI2stridxT<bit isByte, bit isPre, dag oops, dag iops,
578 : AI2ldstidx<0, isByte, isPre, oops, iops, im, f, itin, opc, asm, cstr,
593 class AI3ld<bits<4> op, bit op20, dag oops, dag iops, Format f,
595 : I<oops, iops, AddrMode3, 4, IndexModeNone, f, itin,
614 class AI3ldstidx<bits<4> op, bit op20, bit isPre, dag oops, dag iops,
617 : I<oops, iops, AddrMode3, 4, im, f, itin,
630 class AI3ldstidxT<bits<4> op, bit isLoad, dag oops, dag iops,
633 : I<oops, iops, AddrMode3, 4, im, f, itin, opc, asm, cstr, pattern> {
651 class AI3str<bits<4> op, dag oops, dag iops, Format f, InstrItinClass itin,
653 : I<oops, iops, AddrMode3, 4, IndexModeNone, f, itin,
672 class AXI4<dag oops, dag iops, IndexMode im, Format f, InstrItinClass itin,
674 : XI<oops, iops, AddrMode4, 4, im, f, itin, asm, cstr, pattern> {
686 class AMul1I<bits<7> opcod, dag oops, dag iops, InstrItinClass itin,
688 : I<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
694 class AsMul1I<bits<7> opcod, dag oops, dag iops, InstrItinClass itin,
696 : sI<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
703 class AMul2I<bits<7> opcod, bits<4> opc7_4, dag oops, dag iops,
705 : I<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
718 class AMul2Ia<bits<7> opcod, bits<4> opc7_4, dag oops, dag iops,
720 : AMul2I<opcod, opc7_4, oops, iops, itin, opc, asm, pattern> {
726 class AMulxyIbase<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
728 : I<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
740 class AMulxyI<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
742 : AMulxyIbase<opcod, bit6_5, oops, iops, itin, opc, asm, pattern> {
748 class AMulxyIa<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
750 : AMulxyI<opcod, bit6_5, oops, iops, itin, opc, asm, pattern> {
755 class AMulxyI64<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
757 : AMulxyIbase<opcod, bit6_5, oops, iops, itin, opc, asm, pattern> {
765 class AExtI<bits<8> opcod, dag oops, dag iops, InstrItinClass itin,
767 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ExtFrm, itin,
780 class AMiscA1I<bits<8> opcod, bits<4> opc7_4, dag oops, dag iops,
782 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ArithMiscFrm, itin,
812 class APKHI<bits<8> opcod, bit tb, dag oops, dag iops, InstrItinClass itin,
814 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ArithMiscFrm, itin,
849 class ThumbI<dag oops, dag iops, AddrMode am, int sz,
852 let OutOperandList = oops;
860 class TI<dag oops, dag iops, InstrItinClass itin, string asm, list<dag> pattern>
861 : ThumbI<oops, iops, AddrModeNone, 2, itin, asm, "", pattern>;
864 class TIt<dag oops, dag iops, InstrItinClass itin, string asm,
866 : ThumbI<oops, iops, AddrModeNone, 2, itin, asm, "$lhs = $dst",
871 dag oops, dag iops, InstrItinClass itin, string asm,
873 : ThumbI<oops, iops, AddrModeNone, 4, itin, asm, "", pattern>,
881 class TJTI<dag oops, dag iops, InstrItinClass itin, string asm,
883 : ThumbI<oops, iops, AddrModeNone, 0, itin, asm, "", pattern>;
886 class Thumb1I<dag oops, dag iops, AddrMode am, int sz,
889 let OutOperandList = oops;
896 class T1I<dag oops, dag iops, InstrItinClass itin,
898 : Thumb1I<oops, iops, AddrModeNone, 2, itin, asm, "", pattern>;
899 class T1Ix2<dag oops, dag iops, InstrItinClass itin,
901 : Thumb1I<oops, iops, AddrModeNone, 4, itin, asm, "", pattern>;
904 class T1It<dag oops, dag iops, InstrItinClass itin,
906 : Thumb1I<oops, iops, AddrModeNone, 2, itin,
910 class Thumb1sI<dag oops, dag iops, AddrMode am, int sz,
914 let OutOperandList = !con(oops, (outs s_cc_out:$s));
923 class T1sI<dag oops, dag iops, InstrItinClass itin,
925 : Thumb1sI<oops, iops, AddrModeNone, 2, itin, opc, asm, "", pattern>;
928 class T1sIt<dag oops, dag iops, InstrItinClass itin,
930 : Thumb1sI<oops, iops, AddrModeNone, 2, itin, opc, asm,
934 class Thumb1pI<dag oops, dag iops, AddrMode am, int sz,
938 let OutOperandList = oops;
945 class T1pI<dag oops, dag iops, InstrItinClass itin,
947 : Thumb1pI<oops, iops, AddrModeNone, 2, itin, opc, asm, "", pattern>;
950 class T1pIt<dag oops, dag iops, InstrItinClass itin,
952 : Thumb1pI<oops, iops, AddrModeNone, 2, itin, opc, asm,
955 class T1pIs<dag oops, dag iops,
957 : Thumb1pI<oops, iops, AddrModeT1_s, 2, itin, opc, asm, "", pattern>;
1003 class T1pILdStEncode<bits<3> opcode, dag oops, dag iops, AddrMode am,
1006 : Thumb1pI<oops, iops, am, 2, itin, opc, asm, "", pattern>,
1014 class T1pILdStEncodeImm<bits<4> opA, bit opB, dag oops, dag iops, AddrMode am,
1017 : Thumb1pI<oops, iops, am, 2, itin, opc, asm, "", pattern>,
1033 class Thumb2I<dag oops, dag iops, AddrMode am, int sz,
1037 let OutOperandList = oops;
1051 class Thumb2sI<dag oops, dag iops, AddrMode am, int sz,
1058 let OutOperandList = oops;
1067 class Thumb2XI<dag oops, dag iops, AddrMode am, int sz,
1071 let OutOperandList = oops;
1079 class ThumbXI<dag oops, dag iops, AddrMode am, int sz,
1083 let OutOperandList = oops;
1091 class T2I<dag oops, dag iops, InstrItinClass itin,
1093 : Thumb2I<oops, iops, AddrModeNone, 4, itin, opc, asm, "", pattern>;
1094 class T2Ii12<dag oops, dag iops, InstrItinClass itin,
1096 : Thumb2I<oops, iops, AddrModeT2_i12, 4, itin, opc, asm, "",pattern>;
1097 class T2Ii8<dag oops, dag iops, InstrItinClass itin,
1099 : Thumb2I<oops, iops, AddrModeT2_i8, 4, itin, opc, asm, "", pattern>;
1100 class T2Iso<dag oops, dag iops, InstrItinClass itin,
1102 : Thumb2I<oops, iops, AddrModeT2_so, 4, itin, opc, asm, "", pattern>;
1103 class T2Ipc<dag oops, dag iops, InstrItinClass itin,
1105 : Thumb2I<oops, iops, AddrModeT2_pc, 4, itin, opc, asm, "", pattern>;
1106 class T2Ii8s4<bit P, bit W, bit isLoad, dag oops, dag iops, InstrItinClass itin,
1108 : Thumb2I<oops, iops, AddrModeT2_i8s4, 4, itin, opc, asm, cstr,
1124 class T2Ii8s4post<bit P, bit W, bit isLoad, dag oops, dag iops,
1127 : Thumb2I<oops, iops, AddrModeT2_i8s4, 4, itin, opc, asm, cstr,
1145 class T2sI<dag oops, dag iops, InstrItinClass itin,
1147 : Thumb2sI<oops, iops, AddrModeNone, 4, itin, opc, asm, "", pattern>;
1149 class T2XI<dag oops, dag iops, InstrItinClass itin,
1151 : Thumb2XI<oops, iops, AddrModeNone, 4, itin, asm, "", pattern>;
1152 class T2JTI<dag oops, dag iops, InstrItinClass itin,
1154 : Thumb2XI<oops, iops, AddrModeNone, 0, itin, asm, "", pattern>;
1157 class T2Cop<bits<4> opc, dag oops, dag iops, string asm, list<dag> pattern>
1158 : T2XI <oops, iops, NoItinerary, asm, pattern>, Requires<[IsThumb2]> {
1163 class T2XIt<dag oops, dag iops, InstrItinClass itin,
1165 : Thumb2XI<oops, iops, AddrModeNone, 4, itin, asm, cstr, pattern>;
1169 dag oops, dag iops,
1173 let OutOperandList = oops;
1202 dag oops, dag iops,
1206 let OutOperandList = oops;
1261 class VFPI<dag oops, dag iops, AddrMode am, int sz,
1267 let OutOperandList = oops;
1277 class VFPXI<dag oops, dag iops, AddrMode am, int sz,
1283 let OutOperandList = oops;
1292 class VFPAI<dag oops, dag iops, Format f, InstrItinClass itin,
1294 : VFPI<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
1300 class ADI5<bits<4> opcod1, bits<2> opcod2, dag oops, dag iops,
1303 : VFPI<oops, iops, AddrMode5, 4, IndexModeNone,
1326 class ASI5<bits<4> opcod1, bits<2> opcod2, dag oops, dag iops,
1329 : VFPI<oops, iops, AddrMode5, 4, IndexModeNone,
1353 class PseudoVFPLdStM<dag oops, dag iops, InstrItinClass itin, string cstr,
1357 let OutOperandList = oops;
1364 class AXDI4<dag oops, dag iops, IndexMode im, InstrItinClass itin,
1366 : VFPXI<oops, iops, AddrMode4, 4, im,
1384 class AXSI4<dag oops, dag iops, IndexMode im, InstrItinClass itin,
1386 : VFPXI<oops, iops, AddrMode4, 4, im,
1406 bit opcod5, dag oops, dag iops, InstrItinClass itin, string opc,
1408 : VFPAI<oops, iops, VFPUnaryFrm, itin, opc, asm, pattern> {
1429 class ADbI<bits<5> opcod1, bits<2> opcod2, bit op6, bit op4, dag oops,
1432 : VFPAI<oops, iops, VFPBinaryFrm, itin, opc, asm, pattern> {
1456 bit opcod5, dag oops, dag iops, InstrItinClass itin, string opc,
1458 : VFPAI<oops, iops, VFPUnaryFrm, itin, opc, asm, pattern> {
1481 bit opcod5, dag oops, dag iops, InstrItinClass itin, string opc,
1483 : ASuI<opcod1, opcod2, opcod3, opcod4, opcod5, oops, iops, itin, opc, asm,
1489 class ASbI<bits<5> opcod1, bits<2> opcod2, bit op6, bit op4, dag oops, dag iops,
1491 : VFPAI<oops, iops, VFPBinaryFrm, itin, opc, asm, pattern> {
1515 class ASbIn<bits<5> opcod1, bits<2> opcod2, bit op6, bit op4, dag oops,
1518 : ASbI<opcod1, opcod2, op6, op4, oops, iops, itin, opc, asm, pattern> {
1537 dag oops, dag iops, InstrItinClass itin, string opc, string asm,
1539 : VFPAI<oops, iops, VFPConv1Frm, itin, opc, asm, pattern> {
1550 dag oops, dag iops, InstrItinClass itin, string opc, string asm,
1552 : AVConv1I<op1, op2, op3, op4, oops, iops, itin, opc, asm, pattern> {
1559 dag oops, dag iops, InstrItinClass itin,
1561 : AVConv1I<opcod1, opcod2, opcod3, opcod4, oops, iops, itin, opc, asm,
1566 class AVConvXI<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops, Format f,
1569 : VFPAI<oops, iops, f, itin, opc, asm, pattern> {
1575 class AVConv2I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1577 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv2Frm, itin, opc, asm, pattern>;
1579 class AVConv3I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1581 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv3Frm, itin, opc, asm, pattern>;
1583 class AVConv4I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1585 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv4Frm, itin, opc, asm, pattern>;
1587 class AVConv5I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1589 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv5Frm, itin, opc, asm, pattern>;
1597 class NeonI<dag oops, dag iops, AddrMode am, IndexMode im, Format f,
1601 let OutOperandList = oops;
1610 class NeonXI<dag oops, dag iops, AddrMode am, IndexMode im, Format f,
1614 let OutOperandList = oops;
1623 dag oops, dag iops, InstrItinClass itin,
1625 : NeonI<oops, iops, AddrMode6, IndexModeNone, NLdStFrm, itin, opc, dt, asm,
1647 dag oops, dag iops, InstrItinClass itin,
1649 : NLdSt<op23, op21_20, op11_8, op7_4, oops, iops, itin, opc,
1654 class PseudoNLdSt<dag oops, dag iops, InstrItinClass itin, string cstr>
1657 let OutOperandList = oops;
1662 class PseudoNeonI<dag oops, dag iops, InstrItinClass itin, string cstr,
1666 let OutOperandList = oops;
1672 class NDataI<dag oops, dag iops, Format f, InstrItinClass itin,
1674 : NeonI<oops, iops, AddrModeNone, IndexModeNone, f, itin, opc, dt, asm, cstr,
1681 class NDataXI<dag oops, dag iops, Format f, InstrItinClass itin,
1683 : NeonXI<oops, iops, AddrModeNone, IndexModeNone, f, itin, opc, asm,
1693 dag oops, dag iops, InstrItinClass itin,
1696 : NDataI<oops, iops, N1RegModImmFrm, itin, opc, dt, asm, cstr, pattern> {
1720 dag oops, dag iops, InstrItinClass itin,
1722 : NDataI<oops, iops, N2RegFrm, itin, opc, dt, asm, cstr, pattern> {
1744 dag oops, dag iops, InstrItinClass itin,
1746 : NDataXI<oops, iops, N2RegFrm, itin, opc, asm, cstr, pattern> {
1767 dag oops, dag iops, Format f, InstrItinClass itin,
1769 : NDataI<oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
1792 bit op4, dag oops, dag iops, Format f, InstrItinClass itin,
1795 : NDataI<oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
1805 dag oops, dag iops, Format f, InstrItinClass itin,
1808 oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
1824 bit op4, dag oops, dag iops, Format f, InstrItinClass itin,
1828 oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
1845 bit op4, dag oops, dag iops, Format f, InstrItinClass itin,
1849 oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
1869 dag oops, dag iops, Format f, InstrItinClass itin,
1871 : NDataXI<oops, iops, f, itin, opc, asm, cstr, pattern> {
1894 dag oops, dag iops, Format f, InstrItinClass itin,
1905 let OutOperandList = oops;
1925 dag oops, dag iops, InstrItinClass itin,
1927 : NVLaneOp<opcod1, opcod2, opcod3, oops, iops, NGetLnFrm, itin,
1930 dag oops, dag iops, InstrItinClass itin,
1932 : NVLaneOp<opcod1, opcod2, opcod3, oops, iops, NSetLnFrm, itin,
1935 dag oops, dag iops, InstrItinClass itin,
1937 : NVLaneOp<opcod1, opcod2, opcod3, oops, iops, NDupFrm, itin,
1941 class NVDupLane<bits<4> op19_16, bit op6, dag oops, dag iops,
1944 : NDataI<oops, iops, NVDupLnFrm, itin, opc, dt, asm, "", pattern> {