Lines Matching refs:cv
43 def CV_EXTRACT : CVBitManipRII<0b00, 0b000, "cv.extract">;
44 def CV_EXTRACTU : CVBitManipRII<0b01, 0b000, "cv.extractu">;
46 def CV_BCLR : CVBitManipRII<0b00, 0b001, "cv.bclr">;
47 def CV_BSET : CVBitManipRII<0b01, 0b001, "cv.bset">;
48 def CV_BITREV : CVBitManipRII<0b11, 0b001, "cv.bitrev", uimm2>;
50 def CV_EXTRACTR : CVBitManipRR<0b0011000, "cv.extractr">;
51 def CV_EXTRACTUR : CVBitManipRR<0b0011001, "cv.extractur">;
56 "cv.insert", "$rd, $rs1, $is3, $is2">;
59 "cv.insertr", "$rd, $rs1, $rs2">;
62 def CV_BCLRR : CVBitManipRR<0b0011100, "cv.bclrr">;
63 def CV_BSETR : CVBitManipRR<0b0011101, "cv.bsetr">;
65 def CV_ROR : CVBitManipRR<0b0100000, "cv.ror">;
66 def CV_FF1 : CVBitManipR<0b0100001, "cv.ff1">;
67 def CV_FL1 : CVBitManipR<0b0100010, "cv.fl1">;
68 def CV_CLB : CVBitManipR<0b0100011, "cv.clb">;
69 def CV_CNT : CVBitManipR<0b0100100, "cv.cnt">;
101 def CV_MAC : CVInstMac<0b1001000, 0b011, "cv.mac">,
103 def CV_MSU : CVInstMac<0b1001001, 0b011, "cv.msu">,
107 def CV_MACSN : CVInstMacN<0b00, 0b110, "cv.macsn">,
109 def CV_MACHHSN : CVInstMacN<0b01, 0b110, "cv.machhsn">,
111 def CV_MACSRN : CVInstMacN<0b10, 0b110, "cv.macsrn">,
113 def CV_MACHHSRN : CVInstMacN<0b11, 0b110, "cv.machhsrn">,
117 def CV_MACUN : CVInstMacN<0b00, 0b111, "cv.macun">,
119 def CV_MACHHUN : CVInstMacN<0b01, 0b111, "cv.machhun">,
121 def CV_MACURN : CVInstMacN<0b10, 0b111, "cv.macurn">,
123 def CV_MACHHURN : CVInstMacN<0b11, 0b111, "cv.machhurn">,
129 def CV_MULSN : CVInstMulN<0b00, 0b100, "cv.mulsn">,
131 def CV_MULHHSN : CVInstMulN<0b01, 0b100, "cv.mulhhsn">,
133 def CV_MULSRN : CVInstMulN<0b10, 0b100, "cv.mulsrn">,
135 def CV_MULHHSRN : CVInstMulN<0b11, 0b100, "cv.mulhhsrn">,
139 def CV_MULUN : CVInstMulN<0b00, 0b101, "cv.mulun">,
141 def CV_MULHHUN : CVInstMulN<0b01, 0b101, "cv.mulhhun">,
143 def CV_MULURN : CVInstMulN<0b10, 0b101, "cv.mulurn">,
145 def CV_MULHHURN : CVInstMulN<0b11, 0b101, "cv.mulhhurn">,
152 def : InstAlias<"cv.muls $rd1, $rs1, $rs2",
154 def : InstAlias<"cv.mulhhs $rd1, $rs1, $rs2",
158 def : InstAlias<"cv.mulu $rd1, $rs1, $rs2",
160 def : InstAlias<"cv.mulhhu $rd1, $rs1, $rs2",
204 def CV_ABS : CVInstAluR<0b0101000, 0b011, "cv.abs">,
206 def CV_SLET : CVInstAluRR<0b0101001, 0b011, "cv.slet">,
208 def CV_SLETU : CVInstAluRR<0b0101010, 0b011, "cv.sletu">,
210 def CV_MIN : CVInstAluRR<0b0101011, 0b011, "cv.min">,
212 def CV_MINU : CVInstAluRR<0b0101100, 0b011, "cv.minu">,
214 def CV_MAX : CVInstAluRR<0b0101101, 0b011, "cv.max">,
216 def CV_MAXU : CVInstAluRR<0b0101110, 0b011, "cv.maxu">,
218 def CV_EXTHS : CVInstAluR<0b0110000, 0b011, "cv.exths">,
220 def CV_EXTHZ : CVInstAluR<0b0110001, 0b011, "cv.exthz">,
222 def CV_EXTBS : CVInstAluR<0b0110010, 0b011, "cv.extbs">,
224 def CV_EXTBZ : CVInstAluR<0b0110011, 0b011, "cv.extbz">,
227 def CV_CLIP : CVInstAluRI<0b0111000, 0b011, "cv.clip">,
229 def CV_CLIPU : CVInstAluRI<0b0111001, 0b011, "cv.clipu">,
231 def CV_CLIPR : CVInstAluRR<0b0111010, 0b011, "cv.clipr">,
233 def CV_CLIPUR : CVInstAluRR<0b0111011, 0b011, "cv.clipur">,
236 def CV_ADDN : CVInstAluRRI<0b00, 0b010, "cv.addn">,
238 def CV_ADDUN : CVInstAluRRI<0b01, 0b010, "cv.addun">,
240 def CV_ADDRN : CVInstAluRRI<0b10, 0b010, "cv.addrn">,
242 def CV_ADDURN : CVInstAluRRI<0b11, 0b010, "cv.addurn">,
244 def CV_SUBN : CVInstAluRRI<0b00, 0b011, "cv.subn">,
246 def CV_SUBUN : CVInstAluRRI<0b01, 0b011, "cv.subun">,
248 def CV_SUBRN : CVInstAluRRI<0b10, 0b011, "cv.subrn">,
250 def CV_SUBURN : CVInstAluRRI<0b11, 0b011, "cv.suburn">,
258 def CV_ADDNR : CVInstAluRRNR<0b1000000, 0b011, "cv.addnr">,
260 def CV_ADDUNR : CVInstAluRRNR<0b1000001, 0b011, "cv.addunr">,
262 def CV_ADDRNR : CVInstAluRRNR<0b1000010, 0b011, "cv.addrnr">,
264 def CV_ADDURNR : CVInstAluRRNR<0b1000011, 0b011, "cv.addurnr">,
266 def CV_SUBNR : CVInstAluRRNR<0b1000100, 0b011, "cv.subnr">,
268 def CV_SUBUNR : CVInstAluRRNR<0b1000101, 0b011, "cv.subunr">,
270 def CV_SUBRNR : CVInstAluRRNR<0b1000110, 0b011, "cv.subrnr">,
272 def CV_SUBURNR : CVInstAluRRNR<0b1000111, 0b011, "cv.suburnr">,
347 def CV_ # NAME # _H : CVSIMDRR<funct5, F, funct1, 0b000, "cv." # mnemonic # ".h">;
348 def CV_ # NAME # _B : CVSIMDRR<funct5, F, funct1, 0b001, "cv." # mnemonic # ".b">;
349 def CV_ # NAME # _SC_H : CVSIMDRR<funct5, F, funct1, 0b100, "cv." # mnemonic # ".sc.h">;
350 def CV_ # NAME # _SC_B : CVSIMDRR<funct5, F, funct1, 0b101, "cv." # mnemonic # ".sc.b">;
351 def CV_ # NAME # _SCI_H : CVSIMDRI<funct5, F, 0b110, "cv." # mnemonic # ".sci.h">;
352 def CV_ # NAME # _SCI_B : CVSIMDRI<funct5, F, 0b111, "cv." # mnemonic # ".sci.b">;
356 def CV_ # NAME # _H : CVSIMDRR<funct5, F, funct1, 0b000, "cv." # mnemonic # ".h">;
357 def CV_ # NAME # _B : CVSIMDRR<funct5, F, funct1, 0b001, "cv." # mnemonic # ".b">;
358 def CV_ # NAME # _SC_H : CVSIMDRR<funct5, F, funct1, 0b100, "cv." # mnemonic # ".sc.h">;
359 def CV_ # NAME # _SC_B : CVSIMDRR<funct5, F, funct1, 0b101, "cv." # mnemonic # ".sc.b">;
360 def CV_ # NAME # _SCI_H : CVSIMDRU<funct5, F, 0b110, "cv." # mnemonic # ".sci.h">;
361 def CV_ # NAME # _SCI_B : CVSIMDRU<funct5, F, 0b111, "cv." # mnemonic # ".sci.b">;
365 def CV_ # NAME # _H : CVSIMDRR<funct5, F, funct1, 0b000, "cv." # mnemonic # ".h">;
366 def CV_ # NAME # _B : CVSIMDRR<funct5, F, funct1, 0b001, "cv." # mnemonic # ".b">;
367 def CV_ # NAME # _SC_H : CVSIMDRR<funct5, F, funct1, 0b100, "cv." # mnemonic # ".sc.h">;
368 def CV_ # NAME # _SC_B : CVSIMDRR<funct5, F, funct1, 0b101, "cv." # mnemonic # ".sc.b">;
369 def CV_ # NAME # _SCI_H : CVSIMDRU<funct5, F, 0b110, "cv." # mnemonic # ".sci.h", uimm4>;
370 def CV_ # NAME # _SCI_B : CVSIMDRU<funct5, F, 0b111, "cv." # mnemonic # ".sci.b", uimm3>;
374 def CV_ # NAME # _H : CVSIMDRRWb<funct5, F, funct1, 0b000, "cv." # mnemonic # ".h">;
375 def CV_ # NAME # _B : CVSIMDRRWb<funct5, F, funct1, 0b001, "cv." # mnemonic # ".b">;
376 def CV_ # NAME # _SC_H : CVSIMDRRWb<funct5, F, funct1, 0b100, "cv." # mnemonic # ".sc.h">;
377 def CV_ # NAME # _SC_B : CVSIMDRRWb<funct5, F, funct1, 0b101, "cv." # mnemonic # ".sc.b">;
378 def CV_ # NAME # _SCI_H : CVSIMDRIWb<funct5, F, 0b110, "cv." # mnemonic # ".sci.h">;
379 def CV_ # NAME # _SCI_B : CVSIMDRIWb<funct5, F, 0b111, "cv." # mnemonic # ".sci.b">;
383 def CV_ # NAME # _H : CVSIMDRRWb<funct5, F, funct1, 0b000, "cv." # mnemonic # ".h">;
384 def CV_ # NAME # _B : CVSIMDRRWb<funct5, F, funct1, 0b001, "cv." # mnemonic # ".b">;
385 def CV_ # NAME # _SC_H : CVSIMDRRWb<funct5, F, funct1, 0b100, "cv." # mnemonic # ".sc.h">;
386 def CV_ # NAME # _SC_B : CVSIMDRRWb<funct5, F, funct1, 0b101, "cv." # mnemonic # ".sc.b">;
387 def CV_ # NAME # _SCI_H : CVSIMDRUWb<funct5, F, 0b110, "cv." # mnemonic # ".sci.h">;
388 def CV_ # NAME # _SCI_B : CVSIMDRUWb<funct5, F, 0b111, "cv." # mnemonic # ".sci.b">;
409 def CV_ABS_H : CVSIMDR<0b01110, 0, 0, 0b000, "cv.abs.h">;
410 def CV_ABS_B : CVSIMDR<0b01110, 0, 0, 0b001, "cv.abs.b">;
423 def CV_EXTRACT_H : CVSIMDRU<0b10111, 0, 0b000, "cv.extract.h">;
424 def CV_EXTRACT_B : CVSIMDRU<0b10111, 0, 0b001, "cv.extract.b">;
425 def CV_EXTRACTU_H : CVSIMDRU<0b10111, 0, 0b010, "cv.extractu.h">;
426 def CV_EXTRACTU_B : CVSIMDRU<0b10111, 0, 0b011, "cv.extractu.b">;
427 def CV_INSERT_H : CVSIMDRUWb<0b10111, 0, 0b100, "cv.insert.h">;
428 def CV_INSERT_B : CVSIMDRUWb<0b10111, 0, 0b101, "cv.insert.b">;
430 def CV_SHUFFLE_H : CVSIMDRR<0b11000, 0, 0, 0b000, "cv.shuffle.h">;
431 def CV_SHUFFLE_B : CVSIMDRR<0b11000, 0, 0, 0b001, "cv.shuffle.b">;
432 def CV_SHUFFLE_SCI_H : CVSIMDRU<0b11000, 0, 0b110, "cv.shuffle.sci.h">;
433 def CV_SHUFFLEI0_SCI_B : CVSIMDRU<0b11000, 0, 0b111, "cv.shufflei0.sci.b">;
435 def CV_SHUFFLEI1_SCI_B : CVSIMDRU<0b11001, 0, 0b111, "cv.shufflei1.sci.b">;
437 def CV_SHUFFLEI2_SCI_B : CVSIMDRU<0b11010, 0, 0b111, "cv.shufflei2.sci.b">;
439 def CV_SHUFFLEI3_SCI_B : CVSIMDRU<0b11011, 0, 0b111, "cv.shufflei3.sci.b">;
441 def CV_SHUFFLE2_H : CVSIMDRRWb<0b11100, 0, 0, 0b000, "cv.shuffle2.h">;
442 def CV_SHUFFLE2_B : CVSIMDRRWb<0b11100, 0, 0, 0b001, "cv.shuffle2.b">;
446 def CV_PACK : CVSIMDRR<0b11110, 0, 0, 0b000, "cv.pack">;
447 def CV_PACK_H : CVSIMDRR<0b11110, 0, 1, 0b000, "cv.pack.h">;
449 def CV_PACKHI_B : CVSIMDRRWb<0b11111, 0, 1, 0b001, "cv.packhi.b">;
450 def CV_PACKLO_B : CVSIMDRRWb<0b11111, 0, 0, 0b001, "cv.packlo.b">;
463 def CV_CPLXMUL_R : CVSIMDRRWb<0b01010, 1, 0, 0b000, "cv.cplxmul.r">;
464 def CV_CPLXMUL_I : CVSIMDRRWb<0b01010, 1, 1, 0b000, "cv.cplxmul.i">;
465 def CV_CPLXMUL_R_DIV2 : CVSIMDRRWb<0b01010, 1, 0, 0b010, "cv.cplxmul.r.div2">;
466 def CV_CPLXMUL_I_DIV2 : CVSIMDRRWb<0b01010, 1, 1, 0b010, "cv.cplxmul.i.div2">;
467 def CV_CPLXMUL_R_DIV4 : CVSIMDRRWb<0b01010, 1, 0, 0b100, "cv.cplxmul.r.div4">;
468 def CV_CPLXMUL_I_DIV4 : CVSIMDRRWb<0b01010, 1, 1, 0b100, "cv.cplxmul.i.div4">;
469 def CV_CPLXMUL_R_DIV8 : CVSIMDRRWb<0b01010, 1, 0, 0b110, "cv.cplxmul.r.div8">;
470 def CV_CPLXMUL_I_DIV8 : CVSIMDRRWb<0b01010, 1, 1, 0b110, "cv.cplxmul.i.div8">;
472 def CV_CPLXCONJ : CVSIMDR<0b01011, 1, 0, 0b000, "cv.cplxconj">;
476 def CV_SUBROTMJ : CVSIMDRR<0b01100, 1, 0, 0b000, "cv.subrotmj">;
477 def CV_SUBROTMJ_DIV2 : CVSIMDRR<0b01100, 1, 0, 0b010, "cv.subrotmj.div2">;
478 def CV_SUBROTMJ_DIV4 : CVSIMDRR<0b01100, 1, 0, 0b100, "cv.subrotmj.div4">;
479 def CV_SUBROTMJ_DIV8 : CVSIMDRR<0b01100, 1, 0, 0b110, "cv.subrotmj.div8">;
481 def CV_ADD_DIV2 : CVSIMDRR<0b01101, 1, 0, 0b010, "cv.add.div2">;
482 def CV_ADD_DIV4 : CVSIMDRR<0b01101, 1, 0, 0b100, "cv.add.div4">;
483 def CV_ADD_DIV8 : CVSIMDRR<0b01101, 1, 0, 0b110, "cv.add.div8">;
485 def CV_SUB_DIV2 : CVSIMDRR<0b01110, 1, 0, 0b010, "cv.sub.div2">;
486 def CV_SUB_DIV4 : CVSIMDRR<0b01110, 1, 0, 0b100, "cv.sub.div4">;
487 def CV_SUB_DIV8 : CVSIMDRR<0b01110, 1, 0, 0b110, "cv.sub.div8">;
503 "cv.beqimm", "$rs1, $imm5, $imm12">, Sched<[]>;
506 "cv.bneimm", "$rs1, $imm5, $imm12">, Sched<[]>;
555 def CV_LB_ri_inc : CVLoad_ri_inc<0b000, "cv.lb">;
556 def CV_LBU_ri_inc : CVLoad_ri_inc<0b100, "cv.lbu">;
557 def CV_LH_ri_inc : CVLoad_ri_inc<0b001, "cv.lh">;
558 def CV_LHU_ri_inc : CVLoad_ri_inc<0b101, "cv.lhu">;
559 def CV_LW_ri_inc : CVLoad_ri_inc<0b010, "cv.lw">;
562 def CV_LB_rr_inc : CVLoad_rr_inc<0b0000000, 0b011, "cv.lb">;
563 def CV_LBU_rr_inc : CVLoad_rr_inc<0b0001000, 0b011, "cv.lbu">;
564 def CV_LH_rr_inc : CVLoad_rr_inc<0b0000001, 0b011, "cv.lh">;
565 def CV_LHU_rr_inc : CVLoad_rr_inc<0b0001001, 0b011, "cv.lhu">;
566 def CV_LW_rr_inc : CVLoad_rr_inc<0b0000010, 0b011, "cv.lw">;
572 def CV_LB_rr : CVLoad_rr<0b0000100, 0b011, "cv.lb">;
573 def CV_LBU_rr : CVLoad_rr<0b0001100, 0b011, "cv.lbu">;
574 def CV_LH_rr : CVLoad_rr<0b0000101, 0b011, "cv.lh">;
575 def CV_LHU_rr : CVLoad_rr<0b0001101, 0b011, "cv.lhu">;
576 def CV_LW_rr : CVLoad_rr<0b0000110, 0b011, "cv.lw">;
622 def CV_SB_ri_inc : CVStore_ri_inc<0b000, "cv.sb">;
623 def CV_SH_ri_inc : CVStore_ri_inc<0b001, "cv.sh">;
624 def CV_SW_ri_inc : CVStore_ri_inc<0b010, "cv.sw">;
629 "cv.sb", "$rs2, (${rs1}), ${rs3}">;
632 "cv.sh", "$rs2, (${rs1}), ${rs3}">;
635 "cv.sw", "$rs2, (${rs1}), ${rs3}">;
644 "cv.sb", "$rs2, $cvrr">;
647 "cv.sh", "$rs2, $cvrr">;
650 "cv.sw", "$rs2, $cvrr">;
661 def CV_ELW : CVLoad_ri<0b011, "cv.elw">;