Home | History | Annotate | Download | only in ARM

Lines Matching full:oops

343 class PseudoInst<dag oops, dag iops, InstrItinClass itin, list<dag> pattern>
346 let OutOperandList = oops;
354 class ARMPseudoInst<dag oops, dag iops, int sz, InstrItinClass itin,
356 : PseudoInst<oops, iops, itin, pattern> {
362 class tPseudoInst<dag oops, dag iops, int sz, InstrItinClass itin,
364 : PseudoInst<oops, iops, itin, pattern> {
370 class t2PseudoInst<dag oops, dag iops, int sz, InstrItinClass itin,
372 : PseudoInst<oops, iops, itin, pattern> {
377 class ARMPseudoExpand<dag oops, dag iops, int sz,
380 : ARMPseudoInst<oops, iops, sz, itin, pattern>,
383 class tPseudoExpand<dag oops, dag iops, int sz,
386 : tPseudoInst<oops, iops, sz, itin, pattern>,
389 class t2PseudoExpand<dag oops, dag iops, int sz,
392 : t2PseudoInst<oops, iops, sz, itin, pattern>,
396 class I<dag oops, dag iops, AddrMode am, int sz,
403 let OutOperandList = oops;
411 class InoP<dag oops, dag iops, AddrMode am, int sz,
416 let OutOperandList = oops;
427 class sI<dag oops, dag iops, AddrMode am, int sz,
437 let OutOperandList = oops;
445 class XI<dag oops, dag iops, AddrMode am, int sz,
449 let OutOperandList = oops;
456 class AI<dag oops, dag iops, Format f, InstrItinClass itin,
458 : I<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
460 class AsI<dag oops, dag iops, Format f, InstrItinClass itin,
462 : sI<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
464 class AXI<dag oops, dag iops, Format f, InstrItinClass itin,
466 : XI<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
468 class AInoP<dag oops, dag iops, Format f, InstrItinClass itin,
470 : InoP<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
474 class ABI<bits<4> opcod, dag oops, dag iops, InstrItinClass itin,
476 : I<oops, iops, AddrModeNone, 4, IndexModeNone, BrFrm, itin,
480 class ABXI<bits<4> opcod, dag oops, dag iops, InstrItinClass itin,
482 : XI<oops, iops, AddrModeNone, 4, IndexModeNone, BrFrm, itin,
488 class JTI<dag oops, dag iops, InstrItinClass itin,
490 : XI<oops, iops, AddrModeNone, 0, IndexModeNone, BrMiscFrm, itin,
494 class AIldrex<bits<2> opcod, dag oops, dag iops, InstrItinClass itin,
496 : I<oops, iops, AddrModeNone, 4, IndexModeNone, LdStExFrm, itin,
507 class AIstrex<bits<2> opcod, dag oops, dag iops, InstrItinClass itin,
509 : I<oops, iops, AddrModeNone, 4, IndexModeNone, LdStExFrm, itin,
522 class AIswp<bit b, dag oops, dag iops, string opc, list<dag> pattern>
523 : AI<oops, iops, MiscFrm, NoItinerary, opc, "\t$Rt, $Rt2, $addr", pattern> {
540 class AI1<bits<4> opcod, dag oops, dag iops, Format f, InstrItinClass itin,
542 : I<oops, iops, AddrMode1, 4, IndexModeNone, f, itin,
547 class AsI1<bits<4> opcod, dag oops, dag iops, Format f, InstrItinClass itin,
549 : sI<oops, iops, AddrMode1, 4, IndexModeNone, f, itin,
554 class AXI1<bits<4> opcod, dag oops, dag iops, Format f, InstrItinClass itin,
556 : XI<oops, iops, AddrMode1, 4, IndexModeNone, f, itin,
565 class AI2ldst<bits<3> op, bit isLd, bit isByte, dag oops, dag iops, AddrMode am,
568 : I<oops, iops, am, 4, IndexModeNone, f, itin, opc, asm,
578 class AI2ldstidx<bit isLd, bit isByte, bit isPre, dag oops, dag iops,
581 : I<oops, iops, AddrMode2, 4, im, f, itin,
591 class AI2stridx_reg<bit isByte, bit isPre, dag oops, dag iops,
594 : AI2ldstidx<0, isByte, isPre, oops, iops, im, f, itin, opc, asm, cstr,
609 class AI2stridx_imm<bit isByte, bit isPre, dag oops, dag iops,
612 : AI2ldstidx<0, isByte, isPre, oops, iops, im, f, itin, opc, asm, cstr,
628 class AI2stridxT<bit isByte, bit isPre, dag oops, dag iops,
631 : AI2ldstidx<0, isByte, isPre, oops, iops, im, f, itin, opc, asm, cstr,
646 class AI3ld<bits<4> op, bit op20, dag oops, dag iops, Format f,
648 : I<oops, iops, AddrMode3, 4, IndexModeNone, f, itin,
667 class AI3ldstidx<bits<4> op, bit op20, bit isPre, dag oops, dag iops,
670 : I<oops, iops, AddrMode3, 4, im, f, itin,
683 class AI3ldstidxT<bits<4> op, bit isLoad, dag oops, dag iops,
686 : I<oops, iops, AddrMode3, 4, im, f, itin, opc, asm, cstr, pattern> {
704 class AI3str<bits<4> op, dag oops, dag iops, Format f, InstrItinClass itin,
706 : I<oops, iops, AddrMode3, 4, IndexModeNone, f, itin,
725 class AXI4<dag oops, dag iops, IndexMode im, Format f, InstrItinClass itin,
727 : XI<oops, iops, AddrMode4, 4, im, f, itin, asm, cstr, pattern> {
739 class AMul1I<bits<7> opcod, dag oops, dag iops, InstrItinClass itin,
741 : I<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
747 class AsMul1I<bits<7> opcod, dag oops, dag iops, InstrItinClass itin,
749 : sI<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
756 class AMul2I<bits<7> opcod, bits<4> opc7_4, dag oops, dag iops,
758 : I<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
771 class AMul2Ia<bits<7> opcod, bits<4> opc7_4, dag oops, dag iops,
773 : AMul2I<opcod, opc7_4, oops, iops, itin, opc, asm, pattern> {
779 class AMulxyIbase<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
781 : I<oops, iops, AddrModeNone, 4, IndexModeNone, MulFrm, itin,
793 class AMulxyI<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
795 : AMulxyIbase<opcod, bit6_5, oops, iops, itin, opc, asm, pattern> {
801 class AMulxyIa<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
803 : AMulxyI<opcod, bit6_5, oops, iops, itin, opc, asm, pattern> {
808 class AMulxyI64<bits<7> opcod, bits<2> bit6_5, dag oops, dag iops,
810 : AMulxyIbase<opcod, bit6_5, oops, iops, itin, opc, asm, pattern> {
818 class AExtI<bits<8> opcod, dag oops, dag iops, InstrItinClass itin,
820 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ExtFrm, itin,
835 class AMiscA1I<bits<8> opcod, bits<4> opc7_4, dag oops, dag iops,
837 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ArithMiscFrm, itin,
850 class ADivA1I<bits<3> opcod, dag oops, dag iops,
852 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ArithMiscFrm, itin,
884 class APKHI<bits<8> opcod, bit tb, dag oops, dag iops, InstrItinClass itin,
886 : I<oops, iops, AddrModeNone, 4, IndexModeNone, ArithMiscFrm, itin,
925 class ThumbI<dag oops, dag iops, AddrMode am, int sz,
928 let OutOperandList = oops;
936 class TI<dag oops, dag iops, InstrItinClass itin, string asm, list<dag> pattern>
937 : ThumbI<oops, iops, AddrModeNone, 2, itin, asm, "", pattern>;
940 class TIt<dag oops, dag iops, InstrItinClass itin, string asm,
942 : ThumbI<oops, iops, AddrModeNone, 2, itin, asm, "$lhs = $dst",
947 dag oops, dag iops, InstrItinClass itin, string asm,
949 : ThumbI<oops, iops, AddrModeNone, 4, itin, asm, "", pattern>,
957 class TJTI<dag oops, dag iops, InstrItinClass itin, string asm,
959 : ThumbI<oops, iops, AddrModeNone, 0, itin, asm, "", pattern>;
962 class Thumb1I<dag oops, dag iops, AddrMode am, int sz,
965 let OutOperandList = oops;
972 class T1I<dag oops, dag iops, InstrItinClass itin,
974 : Thumb1I<oops, iops, AddrModeNone, 2, itin, asm, "", pattern>;
975 class T1Ix2<dag oops, dag iops, InstrItinClass itin,
977 : Thumb1I<oops, iops, AddrModeNone, 4, itin, asm, "", pattern>;
980 class T1It<dag oops, dag iops, InstrItinClass itin,
982 : Thumb1I<oops, iops, AddrModeNone, 2, itin,
986 class Thumb1sI<dag oops, dag iops, AddrMode am, int sz,
990 let OutOperandList = !con(oops, (outs s_cc_out:$s));
999 class T1sI<dag oops, dag iops, InstrItinClass itin,
1001 : Thumb1sI<oops, iops, AddrModeNone, 2, itin, opc, asm, "", pattern>;
1004 class T1sIt<dag oops, dag iops, InstrItinClass itin,
1006 : Thumb1sI<oops, iops, AddrModeNone, 2, itin, opc, asm,
1010 class Thumb1pI<dag oops, dag iops, AddrMode am, int sz,
1014 let OutOperandList = oops;
1021 class T1pI<dag oops, dag iops, InstrItinClass itin,
1023 : Thumb1pI<oops, iops, AddrModeNone, 2, itin, opc, asm, "", pattern>;
1026 class T1pIt<dag oops, dag iops, InstrItinClass itin,
1028 : Thumb1pI<oops, iops, AddrModeNone, 2, itin, opc, asm,
1031 class T1pIs<dag oops, dag iops,
1033 : Thumb1pI<oops, iops, AddrModeT1_s, 2, itin, opc, asm, "", pattern>;
1079 class T1pILdStEncode<bits<3> opcode, dag oops, dag iops, AddrMode am,
1082 : Thumb1pI<oops, iops, am, 2, itin, opc, asm, "", pattern>,
1090 class T1pILdStEncodeImm<bits<4> opA, bit opB, dag oops, dag iops, AddrMode am,
1093 : Thumb1pI<oops, iops, am, 2, itin, opc, asm, "", pattern>,
1109 class Thumb2I<dag oops, dag iops, AddrMode am, int sz,
1113 let OutOperandList = oops;
1127 class Thumb2sI<dag oops, dag iops, AddrMode am, int sz,
1134 let OutOperandList = oops;
1143 class Thumb2XI<dag oops, dag iops, AddrMode am, int sz,
1147 let OutOperandList = oops;
1155 class ThumbXI<dag oops, dag iops, AddrMode am, int sz,
1159 let OutOperandList = oops;
1167 class T2I<dag oops, dag iops, InstrItinClass itin,
1169 : Thumb2I<oops, iops, AddrModeNone, 4, itin, opc, asm, "", pattern>;
1170 class T2Ii12<dag oops, dag iops, InstrItinClass itin,
1172 : Thumb2I<oops, iops, AddrModeT2_i12, 4, itin, opc, asm, "",pattern>;
1173 class T2Ii8<dag oops, dag iops, InstrItinClass itin,
1175 : Thumb2I<oops, iops, AddrModeT2_i8, 4, itin, opc, asm, "", pattern>;
1176 class T2Iso<dag oops, dag iops, InstrItinClass itin,
1178 : Thumb2I<oops, iops, AddrModeT2_so, 4, itin, opc, asm, "", pattern>;
1179 class T2Ipc<dag oops, dag iops, InstrItinClass itin,
1181 : Thumb2I<oops, iops, AddrModeT2_pc, 4, itin, opc, asm, "", pattern>;
1182 class T2Ii8s4<bit P, bit W, bit isLoad, dag oops, dag iops, InstrItinClass itin,
1184 : Thumb2I<oops, iops, AddrModeT2_i8s4, 4, itin, opc, asm, cstr,
1200 class T2Ii8s4post<bit P, bit W, bit isLoad, dag oops, dag iops,
1203 : Thumb2I<oops, iops, AddrModeT2_i8s4, 4, itin, opc, asm, cstr,
1221 class T2sI<dag oops, dag iops, InstrItinClass itin,
1223 : Thumb2sI<oops, iops, AddrModeNone, 4, itin, opc, asm, "", pattern>;
1225 class T2XI<dag oops, dag iops, InstrItinClass itin,
1227 : Thumb2XI<oops, iops, AddrModeNone, 4, itin, asm, "", pattern>;
1228 class T2JTI<dag oops, dag iops, InstrItinClass itin,
1230 : Thumb2XI<oops, iops, AddrModeNone, 0, itin, asm, "", pattern>;
1233 class T2Cop<bits<4> opc, dag oops, dag iops, string opcstr, string asm,
1235 : T2I <oops, iops, NoItinerary, opcstr, asm, pattern>, Requires<[IsThumb2]> {
1240 class T2XIt<dag oops, dag iops, InstrItinClass itin,
1242 : Thumb2XI<oops, iops, AddrModeNone, 4, itin, asm, cstr, pattern>;
1246 dag oops, dag iops,
1250 let OutOperandList = oops;
1279 dag oops, dag iops,
1283 let OutOperandList = oops;
1338 class VFPI<dag oops, dag iops, AddrMode am, int sz,
1344 let OutOperandList = oops;
1354 class VFPXI<dag oops, dag iops, AddrMode am, int sz,
1360 let OutOperandList = oops;
1369 class VFPAI<dag oops, dag iops, Format f, InstrItinClass itin,
1371 : VFPI<oops, iops, AddrModeNone, 4, IndexModeNone, f, itin,
1377 class ADI5<bits<4> opcod1, bits<2> opcod2, dag oops, dag iops,
1380 : VFPI<oops, iops, AddrMode5, 4, IndexModeNone,
1402 class ASI5<bits<4> opcod1, bits<2> opcod2, dag oops, dag iops,
1405 : VFPI<oops, iops, AddrMode5, 4, IndexModeNone,
1428 class PseudoVFPLdStM<dag oops, dag iops, InstrItinClass itin, string cstr,
1432 let OutOperandList = oops;
1441 class AXXI4<dag oops, dag iops, IndexMode im,
1443 : VFPXI<oops, iops, AddrMode4, 4, im,
1461 class AXDI4<dag oops, dag iops, IndexMode im, InstrItinClass itin,
1463 : VFPXI<oops, iops, AddrMode4, 4, im,
1482 class AXSI4<dag oops, dag iops, IndexMode im, InstrItinClass itin,
1484 : VFPXI<oops, iops, AddrMode4, 4, im,
1503 bit opcod5, dag oops, dag iops, InstrItinClass itin, string opc,
1505 : VFPAI<oops, iops, VFPUnaryFrm, itin, opc, asm, pattern> {
1527 bit opcod5, dag oops, dag iops, InstrItinClass itin,
1529 : VFPXI<oops, iops, AddrModeNone, 4, IndexModeNone, VFPUnaryFrm, itin, asm, "", pattern> {
1552 class ADbI<bits<5> opcod1, bits<2> opcod2, bit op6, bit op4, dag oops,
1555 : VFPAI<oops, iops, VFPBinaryFrm, itin, opc, asm, pattern> {
1578 class ADbInp<bits<5> opcod1, bits<2> opcod2, bit opcod3, dag oops, dag iops,
1580 : VFPXI<oops, iops, AddrModeNone, 4, IndexModeNone, VFPBinaryFrm, itin,
1608 bit opcod5, dag oops, dag iops, InstrItinClass itin, string opc,
1610 : VFPAI<oops, iops, VFPUnaryFrm, itin, opc, asm, pattern> {
1632 bit opcod5, dag oops, dag iops, InstrItinClass itin,
1634 : VFPXI<oops, iops, AddrModeNone, 4, IndexModeNone,
1660 bit opcod5, dag oops, dag iops, InstrItinClass itin, string opc,
1662 : ASuI<opcod1, opcod2, opcod3, opcod4, opcod5, oops, iops, itin, opc, asm,
1668 class ASbI<bits<5> opcod1, bits<2> opcod2, bit op6, bit op4, dag oops, dag iops,
1670 : VFPAI<oops, iops, VFPBinaryFrm, itin, opc, asm, pattern> {
1693 class ASbInp<bits<5> opcod1, bits<2> opcod2, bit opcod3, dag oops, dag iops,
1695 : VFPXI<oops, iops, AddrModeNone, 4, IndexModeNone,
1723 class ASbIn<bits<5> opcod1, bits<2> opcod2, bit op6, bit op4, dag oops,
1726 : ASbI<opcod1, opcod2, op6, op4, oops, iops, itin, opc, asm, pattern> {
1745 dag oops, dag iops, InstrItinClass itin, string opc, string asm,
1747 : VFPAI<oops, iops, VFPConv1Frm, itin, opc, asm, pattern> {
1758 dag oops, dag iops, InstrItinClass itin, string opc, string asm,
1760 : AVConv1I<op1, op2, op3, op4, oops, iops, itin, opc, asm, pattern> {
1770 dag oops, dag iops, InstrItinClass itin,
1772 : AVConv1I<opcod1, opcod2, opcod3, opcod4, oops, iops, itin, opc, asm,
1777 class AVConvXI<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops, Format f,
1780 : VFPAI<oops, iops, f, itin, opc, asm, pattern> {
1786 class AVConv2I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1788 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv2Frm, itin, opc, asm, pattern>;
1790 class AVConv3I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1792 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv3Frm, itin, opc, asm, pattern>;
1794 class AVConv4I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1796 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv4Frm, itin, opc, asm, pattern>;
1798 class AVConv5I<bits<8> opcod1, bits<4> opcod2, dag oops, dag iops,
1800 : AVConvXI<opcod1, opcod2, oops, iops, VFPConv5Frm, itin, opc, asm, pattern>;
1808 class NeonI<dag oops, dag iops, AddrMode am, IndexMode im, Format f,
1812 let OutOperandList = oops;
1821 class NeonXI<dag oops, dag iops, AddrMode am, IndexMode im, Format f,
1825 let OutOperandList = oops;
1834 class NeonInp<dag oops, dag iops, AddrMode am, IndexMode im, Format f,
1838 let OutOperandList = oops;
1849 dag oops, dag iops, InstrItinClass itin,
1851 : NeonI<oops, iops, AddrMode6, IndexModeNone, NLdStFrm, itin, opc, dt, asm,
1873 dag oops, dag iops, InstrItinClass itin,
1875 : NLdSt<op23, op21_20, op11_8, op7_4, oops, iops, itin, opc,
1880 class PseudoNLdSt<dag oops, dag iops, InstrItinClass itin, string cstr>
1883 let OutOperandList = oops;
1888 class PseudoNeonI<dag oops, dag iops, InstrItinClass itin, string cstr,
1892 let OutOperandList = oops;
1898 class NDataI<dag oops, dag iops, Format f, InstrItinClass itin,
1900 : NeonI<oops, iops, AddrModeNone, IndexModeNone, f, itin, opc, dt, asm, cstr,
1907 class NDataXI<dag oops, dag iops, Format f, InstrItinClass itin,
1909 : NeonXI<oops, iops, AddrModeNone, IndexModeNone, f, itin, opc, asm,
1919 dag oops, dag iops, InstrItinClass itin,
1922 : NDataI<oops, iops, N1RegModImmFrm, itin, opc, dt, asm, cstr, pattern> {
1946 dag oops, dag iops, InstrItinClass itin,
1948 : NDataI<oops, iops, N2RegFrm, itin, opc, dt, asm, cstr, pattern> {
1969 dag oops, dag iops, InstrItinClass itin, string OpcodeStr,
1971 : NeonInp<oops, iops, AddrModeNone, IndexModeNone, N2RegFrm, itin,
1999 dag oops, dag iops, InstrItinClass itin,
2001 : NDataXI<oops, iops, N2RegFrm, itin, opc, asm, cstr, pattern> {
2022 dag oops, dag iops, Format f, InstrItinClass itin,
2024 : NDataI<oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
2047 bit op4, dag oops, dag iops, Format f, InstrItinClass itin,
2050 : NDataI<oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
2060 dag oops, dag iops, Format f, InstrItinClass itin,
2063 oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
2078 bit op4, dag oops, dag iops,Format f, InstrItinClass itin,
2081 : NeonInp<oops, iops, AddrModeNone, IndexModeNone, f, itin, OpcodeStr,
2104 bit op4, dag oops, dag iops, Format f, InstrItinClass itin,
2108 oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
2125 bit op4, dag oops, dag iops, Format f, InstrItinClass itin,
2129 oops, iops, f, itin, opc, dt, asm, cstr, pattern> {
2149 dag oops, dag iops, Format f, InstrItinClass itin,
2151 : NDataXI<oops, iops, f, itin, opc, asm, cstr, pattern> {
2174 dag oops, dag iops, Format f, InstrItinClass itin,
2185 let OutOperandList = oops;
2205 dag oops, dag iops, InstrItinClass itin,
2207 : NVLaneOp<opcod1, opcod2, opcod3, oops, iops, NGetLnFrm, itin,
2210 dag oops, dag iops, InstrItinClass itin,
2212 : NVLaneOp<opcod1, opcod2, opcod3, oops, iops, NSetLnFrm, itin,
2215 dag oops, dag iops, InstrItinClass itin,
2217 : NVLaneOp<opcod1, opcod2, opcod3, oops, iops, NDupFrm, itin,
2221 class NVDupLane<bits<4> op19_16, bit op6, dag oops, dag iops,
2224 : NDataI<oops, iops, NVDupLnFrm, itin, opc, dt, asm, "", pattern> {