forked from Imagelibrary/binutils-gdb
RISC-V: Add support for XCVsimd extension in CV32E40P
Spec: https://docs.openhwgroup.org/projects/cv32e40p-user-manual/en/latest/instruction_set_extensions.html Contributors: Mary Bennett <mary.bennett682@gmail.com> Nandni Jamnadas <nandni.jamnadas@embecosm.com> Pietra Ferreira <pietra.ferreira@embecosm.com> Charlie Keaney Jessica Mills Craig Blackmore <craig.blackmore@embecosm.com> Simon Cook <simon.cook@embecosm.com> Jeremy Bennett <jeremy.bennett@embecosm.com> Helene Chelin <helene.chelin@embecosm.com> bfd/ChangeLog: * elfxx-riscv.c (riscv_multi_subset_supports): Add `xcvsimd` instruction class. (riscv_multi_subset_supports_ext): Likewise. gas/ChangeLog: * NEWS: Updated. * config/tc-riscv.c (validate_riscv_insn): Add custom operands. (riscv_ip): Likewise. * doc/c-riscv.texi: Note XCVsimd as an additional ISA extension for CORE-V. * testsuite/gas/riscv/march-help.l: Add xcvsimd. * testsuite/gas/riscv/x-cv-simd.d: New test. * testsuite/gas/riscv/x-cv-simd.s: New test. * testsuite/gas/riscv/x-cv-simd-fail.d: New test. * testsuite/gas/riscv/x-cv-simd-fail.l: New test. * testsuite/gas/riscv/x-cv-simd-fail.s: New test. include/ChangeLog: * opcode/riscv-opc.h: Add corresponding MATCH and MASK macros for XCVsimd. * opcode/riscv.h: Add corresponding EXTRACT and ENCODE macros for XCVsimd. (enum riscv_insn_class): Add the XCVsimd instruction class. opcodes/ChangeLog: * riscv-dis.c (print_insn_args): Add custom operands. * riscv-opc.c: Add XCVsimd instructions.
This commit is contained in:
@@ -1472,6 +1472,7 @@ static struct riscv_supported_ext riscv_supported_vendor_x_ext[] =
|
||||
{"xcvelw", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
{"xcvmac", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
{"xcvmem", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
{"xcvsimd", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
{"xtheadba", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
{"xtheadbb", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
{"xtheadbs", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
|
||||
@@ -2734,6 +2735,8 @@ riscv_multi_subset_supports (riscv_parse_subset_t *rps,
|
||||
return riscv_subset_supports (rps, "xcvmac");
|
||||
case INSN_CLASS_XCVMEM:
|
||||
return riscv_subset_supports (rps, "xcvmem");
|
||||
case INSN_CLASS_XCVSIMD:
|
||||
return riscv_subset_supports (rps, "xcvsimd");
|
||||
case INSN_CLASS_XTHEADBA:
|
||||
return riscv_subset_supports (rps, "xtheadba");
|
||||
case INSN_CLASS_XTHEADBB:
|
||||
@@ -3014,6 +3017,8 @@ riscv_multi_subset_supports_ext (riscv_parse_subset_t *rps,
|
||||
return "xcvmac";
|
||||
case INSN_CLASS_XCVMEM:
|
||||
return "xcvmem";
|
||||
case INSN_CLASS_XCVSIMD:
|
||||
return "xcvsimd";
|
||||
case INSN_CLASS_XTHEADBA:
|
||||
return "xtheadba";
|
||||
case INSN_CLASS_XTHEADBB:
|
||||
|
||||
4
gas/NEWS
4
gas/NEWS
@@ -1,7 +1,7 @@
|
||||
-*- text -*-
|
||||
|
||||
* Add support for RISC-V Zcmp (cm.mva01s, cm.mvsa01) and CORE-V (XCvBitmanip)
|
||||
extensions with version 1.0.
|
||||
* Add support for RISC-V Zcmp (cm.mva01s, cm.mvsa01) and CORE-V (xcvbitmanip,
|
||||
xcvsimd) extensions with version 1.0.
|
||||
|
||||
Changes in 2.43:
|
||||
|
||||
|
||||
@@ -1695,12 +1695,19 @@ validate_riscv_insn (const struct riscv_opcode *opc, int length)
|
||||
case '3':
|
||||
used_bits |= ENCODE_CV_IS3_UIMM5 (-1U);
|
||||
break;
|
||||
case '5':
|
||||
used_bits |= ENCODE_CV_SIMD_IMM6(-1U);
|
||||
break;
|
||||
case '6':
|
||||
used_bits |= ENCODE_CV_BITMANIP_UIMM5(-1U);
|
||||
break;
|
||||
case '7':
|
||||
used_bits |= ENCODE_CV_BITMANIP_UIMM2(-1U);
|
||||
break;
|
||||
case '8':
|
||||
used_bits |= ENCODE_CV_SIMD_UIMM6(-1U);
|
||||
++oparg;
|
||||
break;
|
||||
default:
|
||||
goto unknown_validate_operand;
|
||||
}
|
||||
@@ -4021,6 +4028,16 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
|
||||
ip->insn_opcode
|
||||
|= ENCODE_CV_IS2_UIMM5 (imm_expr->X_add_number);
|
||||
continue;
|
||||
case '5':
|
||||
my_getExpression (imm_expr, asarg);
|
||||
check_absolute_expr (ip, imm_expr, FALSE);
|
||||
asarg = expr_parse_end;
|
||||
if (imm_expr->X_add_number < -32
|
||||
|| imm_expr->X_add_number > 31)
|
||||
break;
|
||||
ip->insn_opcode
|
||||
|= ENCODE_CV_SIMD_IMM6 (imm_expr->X_add_number);
|
||||
continue;
|
||||
case '6':
|
||||
my_getExpression (imm_expr, asarg);
|
||||
check_absolute_expr (ip, imm_expr, FALSE);
|
||||
@@ -4041,6 +4058,29 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
|
||||
ip->insn_opcode
|
||||
|= ENCODE_CV_BITMANIP_UIMM2 (imm_expr->X_add_number);
|
||||
continue;
|
||||
case '8':
|
||||
my_getExpression (imm_expr, asarg);
|
||||
check_absolute_expr (ip, imm_expr, FALSE);
|
||||
asarg = expr_parse_end;
|
||||
++oparg;
|
||||
if (imm_expr->X_add_number < 0
|
||||
|| imm_expr->X_add_number > 63)
|
||||
break;
|
||||
else if (*oparg == '1'
|
||||
&& imm_expr->X_add_number > 1)
|
||||
break;
|
||||
else if (*oparg == '2'
|
||||
&& imm_expr->X_add_number > 3)
|
||||
break;
|
||||
else if (*oparg == '3'
|
||||
&& imm_expr->X_add_number > 7)
|
||||
break;
|
||||
else if (*oparg == '4'
|
||||
&& imm_expr->X_add_number > 15)
|
||||
break;
|
||||
ip->insn_opcode
|
||||
|= ENCODE_CV_SIMD_UIMM6 (imm_expr->X_add_number);
|
||||
continue;
|
||||
default:
|
||||
goto unknown_riscv_ip_operand;
|
||||
}
|
||||
|
||||
@@ -775,6 +775,11 @@ The XCvMem extension provides instructions for post inc load/store operations.
|
||||
|
||||
It is documented in @url{https://docs.openhwgroup.org/projects/cv32e40p-user-manual/en/latest/instruction_set_extensions.html}
|
||||
|
||||
@item XcvSimd
|
||||
The XcvSimd extension provides instructions for SIMD operations.
|
||||
|
||||
It is documented in @url{https://docs.openhwgroup.org/projects/cv32e40p-user-manual/en/latest/instruction_set_extensions.html}
|
||||
|
||||
@item XTheadBa
|
||||
The XTheadBa extension provides instructions for address calculations.
|
||||
|
||||
|
||||
@@ -137,6 +137,7 @@ All available -march extensions for RISC-V:
|
||||
xcvelw 1.0
|
||||
xcvmac 1.0
|
||||
xcvmem 1.0
|
||||
xcvsimd 1.0
|
||||
xtheadba 1.0
|
||||
xtheadbb 1.0
|
||||
xtheadbs 1.0
|
||||
|
||||
3
gas/testsuite/gas/riscv/x-cv-simd-fail.d
Normal file
3
gas/testsuite/gas/riscv/x-cv-simd-fail.d
Normal file
@@ -0,0 +1,3 @@
|
||||
#as: -march=rv32i_xcvsimd
|
||||
#source: x-cv-simd-fail.s
|
||||
#error_output: x-cv-simd-fail.l
|
||||
583
gas/testsuite/gas/riscv/x-cv-simd-fail.l
Normal file
583
gas/testsuite/gas/riscv/x-cv-simd-fail.l
Normal file
@@ -0,0 +1,583 @@
|
||||
.*: Assembler messages:
|
||||
.*: Error: illegal operands `cv.abs.b x32,x32'
|
||||
.*: Error: illegal operands `cv.abs.b x33,x33'
|
||||
.*: Error: illegal operands `cv.abs.h x32,x32'
|
||||
.*: Error: illegal operands `cv.abs.h x33,x33'
|
||||
.*: Error: illegal operands `cv.add.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.div2 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.div2 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.div4 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.div4 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.div8 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.div8 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.add.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.add.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.add.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.add.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.add.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.add.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.add.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.add.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.add.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.and.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.and.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.and.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.and.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.and.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.and.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.and.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.and.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.and.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.and.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.and.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.and.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.and.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.and.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.and.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.and.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.avg.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avg.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avg.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avg.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avg.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avg.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avg.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avg.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avg.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.avg.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.avg.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.avg.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.avg.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.avg.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.avg.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.avg.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.avgu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avgu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avgu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avgu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avgu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avgu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avgu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.avgu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.avgu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.avgu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.avgu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.avgu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.avgu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.avgu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.avgu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.avgu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpeq.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpeq.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpeq.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpeq.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpeq.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpeq.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpeq.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpeq.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpeq.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpge.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpge.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpge.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpge.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpge.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpge.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpge.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpge.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpge.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpgeu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgeu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgeu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgeu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpgeu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpgt.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgt.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgt.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgt.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgt.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgt.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgt.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgt.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpgt.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpgtu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgtu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgtu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgtu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpgtu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmple.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmple.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmple.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmple.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmple.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmple.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmple.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmple.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmple.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmple.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmple.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmple.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmple.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmple.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmple.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmple.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpleu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpleu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpleu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpleu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpleu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpleu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpleu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpleu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpleu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmplt.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmplt.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmplt.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmplt.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmplt.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmplt.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmplt.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmplt.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmplt.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpltu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpltu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpltu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpltu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpltu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpltu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpltu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpltu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.cmpltu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.cmpne.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpne.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpne.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpne.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpne.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpne.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpne.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cmpne.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.cmpne.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.cplxconj x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxconj x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.i.div2 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.i.div2 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.i.div4 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.i.div4 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.i.div8 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.i.div8 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.i x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.i x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.r.div2 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.r.div2 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.r.div4 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.r.div4 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.r.div8 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.r.div8 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.cplxmul.r x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.cplxmul.r x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotsp.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotsp.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotsp.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotsp.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotsp.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotsp.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotsp.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotsp.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.dotsp.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.dotup.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotup.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotup.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotup.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotup.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotup.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotup.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotup.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotup.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.dotup.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.dotup.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.dotup.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.dotup.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.dotup.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.dotup.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.dotup.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.dotusp.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotusp.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotusp.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotusp.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotusp.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotusp.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotusp.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.dotusp.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.dotusp.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.extract.b x32,x32,2'
|
||||
.*: Error: illegal operands `cv.extract.b x33,x33,2'
|
||||
.*: Error: illegal operands `cv.extract.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.extract.b x6,x7,4'
|
||||
.*: Error: illegal operands `cv.extract.h x32,x32,1'
|
||||
.*: Error: illegal operands `cv.extract.h x33,x33,1'
|
||||
.*: Error: illegal operands `cv.extract.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.extract.h x6,x7,2'
|
||||
.*: Error: illegal operands `cv.extractu.b x32,x32,2'
|
||||
.*: Error: illegal operands `cv.extractu.b x33,x33,2'
|
||||
.*: Error: illegal operands `cv.extractu.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.extractu.b x6,x7,4'
|
||||
.*: Error: illegal operands `cv.extractu.h x32,x32,1'
|
||||
.*: Error: illegal operands `cv.extractu.h x33,x33,1'
|
||||
.*: Error: illegal operands `cv.extractu.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.extractu.h x6,x7,2'
|
||||
.*: Error: illegal operands `cv.insert.b x32,x32,2'
|
||||
.*: Error: illegal operands `cv.insert.b x33,x33,2'
|
||||
.*: Error: illegal operands `cv.insert.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.insert.b x6,x7,4'
|
||||
.*: Error: illegal operands `cv.insert.h x32,x32,1'
|
||||
.*: Error: illegal operands `cv.insert.h x33,x33,1'
|
||||
.*: Error: illegal operands `cv.insert.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.insert.h x6,x7,2'
|
||||
.*: Error: illegal operands `cv.max.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.max.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.max.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.max.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.max.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.max.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.max.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.max.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.max.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.max.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.max.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.max.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.max.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.max.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.max.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.max.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.maxu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.maxu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.maxu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.maxu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.maxu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.maxu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.maxu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.maxu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.maxu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.maxu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.maxu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.maxu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.maxu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.maxu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.maxu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.maxu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.min.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.min.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.min.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.min.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.min.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.min.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.min.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.min.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.min.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.min.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.min.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.min.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.min.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.min.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.min.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.min.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.minu.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.minu.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.minu.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.minu.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.minu.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.minu.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.minu.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.minu.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.minu.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.minu.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.minu.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.minu.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.minu.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.minu.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.minu.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.minu.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.or.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.or.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.or.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.or.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.or.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.or.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.or.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.or.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.or.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.or.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.or.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.or.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.or.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.or.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.or.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.or.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.pack x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.pack x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.pack.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.pack.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.packhi.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.packhi.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.packlo.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.packlo.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotsp.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotsp.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotsp.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotsp.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotsp.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotsp.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotsp.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotsp.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.sdotsp.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.sdotup.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotup.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotup.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotup.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotup.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotup.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotup.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotup.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.sdotup.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.sdotusp.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotusp.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotusp.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotusp.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotusp.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotusp.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotusp.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sdotusp.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.sdotusp.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.shuffle2.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.shuffle2.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.shuffle2.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.shuffle2.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.shuffle.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.shuffle.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.shuffle.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.shuffle.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.shufflei0.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.shufflei0.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.shufflei0.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.shufflei0.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.shufflei1.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.shufflei1.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.shufflei1.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.shufflei1.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.shufflei2.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.shufflei2.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.shufflei2.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.shufflei2.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.shufflei3.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.shufflei3.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.shufflei3.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.shufflei3.sci.b x6,x7,64'
|
||||
.*: Error: illegal operands `cv.shuffle.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.shuffle.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.shuffle.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.shuffle.sci.h x6,x7,64'
|
||||
.*: Error: illegal operands `cv.sll.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sll.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sll.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sll.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sll.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sll.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sll.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sll.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sll.sci.b x32,x32,4'
|
||||
.*: Error: illegal operands `cv.sll.sci.b x33,x33,4'
|
||||
.*: Error: illegal operands `cv.sll.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.sll.sci.b x6,x7,8'
|
||||
.*: Error: illegal operands `cv.sll.sci.h x32,x32,12'
|
||||
.*: Error: illegal operands `cv.sll.sci.h x33,x33,12'
|
||||
.*: Error: illegal operands `cv.sll.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.sll.sci.h x6,x7,16'
|
||||
.*: Error: illegal operands `cv.sra.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sra.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sra.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sra.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sra.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sra.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sra.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sra.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sra.sci.b x32,x32,4'
|
||||
.*: Error: illegal operands `cv.sra.sci.b x33,x33,4'
|
||||
.*: Error: illegal operands `cv.sra.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.sra.sci.b x6,x7,8'
|
||||
.*: Error: illegal operands `cv.sra.sci.h x32,x32,12'
|
||||
.*: Error: illegal operands `cv.sra.sci.h x33,x33,12'
|
||||
.*: Error: illegal operands `cv.sra.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.sra.sci.h x6,x7,16'
|
||||
.*: Error: illegal operands `cv.srl.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.srl.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.srl.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.srl.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.srl.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.srl.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.srl.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.srl.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.srl.sci.b x32,x32,4'
|
||||
.*: Error: illegal operands `cv.srl.sci.b x33,x33,4'
|
||||
.*: Error: illegal operands `cv.srl.sci.b x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.srl.sci.b x6,x7,8'
|
||||
.*: Error: illegal operands `cv.srl.sci.h x32,x32,12'
|
||||
.*: Error: illegal operands `cv.srl.sci.h x33,x33,12'
|
||||
.*: Error: illegal operands `cv.srl.sci.h x6,x7,-1'
|
||||
.*: Error: illegal operands `cv.srl.sci.h x6,x7,16'
|
||||
.*: Error: illegal operands `cv.sub.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.div2 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.div2 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.div4 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.div4 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.div8 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.div8 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.subrotmj.div2 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.subrotmj.div2 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.subrotmj.div4 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.subrotmj.div4 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.subrotmj.div8 x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.subrotmj.div8 x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.subrotmj x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.subrotmj x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.sub.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.sub.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sub.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sub.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.sub.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.sub.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.sub.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.sub.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.sub.sci.h x6,x7,32'
|
||||
.*: Error: illegal operands `cv.xor.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.xor.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.xor.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.xor.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.xor.sc.b x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.xor.sc.b x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.xor.sc.h x32,x32,x32'
|
||||
.*: Error: illegal operands `cv.xor.sc.h x33,x33,x33'
|
||||
.*: Error: illegal operands `cv.xor.sci.b x32,x32,20'
|
||||
.*: Error: illegal operands `cv.xor.sci.b x33,x33,20'
|
||||
.*: Error: illegal operands `cv.xor.sci.b x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.xor.sci.b x6,x7,32'
|
||||
.*: Error: illegal operands `cv.xor.sci.h x32,x32,20'
|
||||
.*: Error: illegal operands `cv.xor.sci.h x33,x33,20'
|
||||
.*: Error: illegal operands `cv.xor.sci.h x6,x7,-33'
|
||||
.*: Error: illegal operands `cv.xor.sci.h x6,x7,32'
|
||||
582
gas/testsuite/gas/riscv/x-cv-simd-fail.s
Normal file
582
gas/testsuite/gas/riscv/x-cv-simd-fail.s
Normal file
@@ -0,0 +1,582 @@
|
||||
cv.abs.b x32, x32
|
||||
cv.abs.b x33, x33
|
||||
cv.abs.h x32, x32
|
||||
cv.abs.h x33, x33
|
||||
cv.add.b x32, x32, x32
|
||||
cv.add.b x33, x33, x33
|
||||
cv.add.div2 x32, x32, x32
|
||||
cv.add.div2 x33, x33, x33
|
||||
cv.add.div4 x32, x32, x32
|
||||
cv.add.div4 x33, x33, x33
|
||||
cv.add.div8 x32, x32, x32
|
||||
cv.add.div8 x33, x33, x33
|
||||
cv.add.h x32, x32, x32
|
||||
cv.add.h x33, x33, x33
|
||||
cv.add.sc.b x32, x32, x32
|
||||
cv.add.sc.b x33, x33, x33
|
||||
cv.add.sc.h x32, x32, x32
|
||||
cv.add.sc.h x33, x33, x33
|
||||
cv.add.sci.b x32, x32, 20
|
||||
cv.add.sci.b x33, x33, 20
|
||||
cv.add.sci.b x6, x7, -33
|
||||
cv.add.sci.b x6, x7, 32
|
||||
cv.add.sci.h x32, x32, 20
|
||||
cv.add.sci.h x33, x33, 20
|
||||
cv.add.sci.h x6, x7, -33
|
||||
cv.add.sci.h x6, x7, 32
|
||||
cv.and.b x32, x32, x32
|
||||
cv.and.b x33, x33, x33
|
||||
cv.and.h x32, x32, x32
|
||||
cv.and.h x33, x33, x33
|
||||
cv.and.sc.b x32, x32, x32
|
||||
cv.and.sc.b x33, x33, x33
|
||||
cv.and.sc.h x32, x32, x32
|
||||
cv.and.sc.h x33, x33, x33
|
||||
cv.and.sci.b x32, x32, 20
|
||||
cv.and.sci.b x33, x33, 20
|
||||
cv.and.sci.b x6, x7, -33
|
||||
cv.and.sci.b x6, x7, 32
|
||||
cv.and.sci.h x32, x32, 20
|
||||
cv.and.sci.h x33, x33, 20
|
||||
cv.and.sci.h x6, x7, -33
|
||||
cv.and.sci.h x6, x7, 32
|
||||
cv.avg.b x32, x32, x32
|
||||
cv.avg.b x33, x33, x33
|
||||
cv.avg.h x32, x32, x32
|
||||
cv.avg.h x33, x33, x33
|
||||
cv.avg.sc.b x32, x32, x32
|
||||
cv.avg.sc.b x33, x33, x33
|
||||
cv.avg.sc.h x32, x32, x32
|
||||
cv.avg.sc.h x33, x33, x33
|
||||
cv.avg.sci.b x32, x32, 20
|
||||
cv.avg.sci.b x33, x33, 20
|
||||
cv.avg.sci.b x6, x7, -33
|
||||
cv.avg.sci.b x6, x7, 32
|
||||
cv.avg.sci.h x32, x32, 20
|
||||
cv.avg.sci.h x33, x33, 20
|
||||
cv.avg.sci.h x6, x7, -33
|
||||
cv.avg.sci.h x6, x7, 32
|
||||
cv.avgu.b x32, x32, x32
|
||||
cv.avgu.b x33, x33, x33
|
||||
cv.avgu.h x32, x32, x32
|
||||
cv.avgu.h x33, x33, x33
|
||||
cv.avgu.sc.b x32, x32, x32
|
||||
cv.avgu.sc.b x33, x33, x33
|
||||
cv.avgu.sc.h x32, x32, x32
|
||||
cv.avgu.sc.h x33, x33, x33
|
||||
cv.avgu.sci.b x32, x32, 20
|
||||
cv.avgu.sci.b x33, x33, 20
|
||||
cv.avgu.sci.b x6, x7, -1
|
||||
cv.avgu.sci.b x6, x7, 64
|
||||
cv.avgu.sci.h x32, x32, 20
|
||||
cv.avgu.sci.h x33, x33, 20
|
||||
cv.avgu.sci.h x6, x7, -1
|
||||
cv.avgu.sci.h x6, x7, 64
|
||||
cv.cmpeq.b x32, x32, x32
|
||||
cv.cmpeq.b x33, x33, x33
|
||||
cv.cmpeq.h x32, x32, x32
|
||||
cv.cmpeq.h x33, x33, x33
|
||||
cv.cmpeq.sc.b x32, x32, x32
|
||||
cv.cmpeq.sc.b x33, x33, x33
|
||||
cv.cmpeq.sc.h x32, x32, x32
|
||||
cv.cmpeq.sc.h x33, x33, x33
|
||||
cv.cmpeq.sci.b x32, x32, 20
|
||||
cv.cmpeq.sci.b x33, x33, 20
|
||||
cv.cmpeq.sci.b x6, x7, -33
|
||||
cv.cmpeq.sci.b x6, x7, 32
|
||||
cv.cmpeq.sci.h x32, x32, 20
|
||||
cv.cmpeq.sci.h x33, x33, 20
|
||||
cv.cmpeq.sci.h x6, x7, -33
|
||||
cv.cmpeq.sci.h x6, x7, 32
|
||||
cv.cmpge.b x32, x32, x32
|
||||
cv.cmpge.b x33, x33, x33
|
||||
cv.cmpge.h x32, x32, x32
|
||||
cv.cmpge.h x33, x33, x33
|
||||
cv.cmpge.sc.b x32, x32, x32
|
||||
cv.cmpge.sc.b x33, x33, x33
|
||||
cv.cmpge.sc.h x32, x32, x32
|
||||
cv.cmpge.sc.h x33, x33, x33
|
||||
cv.cmpge.sci.b x32, x32, 20
|
||||
cv.cmpge.sci.b x33, x33, 20
|
||||
cv.cmpge.sci.b x6, x7, -33
|
||||
cv.cmpge.sci.b x6, x7, 32
|
||||
cv.cmpge.sci.h x32, x32, 20
|
||||
cv.cmpge.sci.h x33, x33, 20
|
||||
cv.cmpge.sci.h x6, x7, -33
|
||||
cv.cmpge.sci.h x6, x7, 32
|
||||
cv.cmpgeu.b x32, x32, x32
|
||||
cv.cmpgeu.b x33, x33, x33
|
||||
cv.cmpgeu.h x32, x32, x32
|
||||
cv.cmpgeu.h x33, x33, x33
|
||||
cv.cmpgeu.sc.b x32, x32, x32
|
||||
cv.cmpgeu.sc.b x33, x33, x33
|
||||
cv.cmpgeu.sc.h x32, x32, x32
|
||||
cv.cmpgeu.sc.h x33, x33, x33
|
||||
cv.cmpgeu.sci.b x32, x32, 20
|
||||
cv.cmpgeu.sci.b x33, x33, 20
|
||||
cv.cmpgeu.sci.b x6, x7, -1
|
||||
cv.cmpgeu.sci.b x6, x7, 64
|
||||
cv.cmpgeu.sci.h x32, x32, 20
|
||||
cv.cmpgeu.sci.h x33, x33, 20
|
||||
cv.cmpgeu.sci.h x6, x7, -1
|
||||
cv.cmpgeu.sci.h x6, x7, 64
|
||||
cv.cmpgt.b x32, x32, x32
|
||||
cv.cmpgt.b x33, x33, x33
|
||||
cv.cmpgt.h x32, x32, x32
|
||||
cv.cmpgt.h x33, x33, x33
|
||||
cv.cmpgt.sc.b x32, x32, x32
|
||||
cv.cmpgt.sc.b x33, x33, x33
|
||||
cv.cmpgt.sc.h x32, x32, x32
|
||||
cv.cmpgt.sc.h x33, x33, x33
|
||||
cv.cmpgt.sci.b x32, x32, 20
|
||||
cv.cmpgt.sci.b x33, x33, 20
|
||||
cv.cmpgt.sci.b x6, x7, -33
|
||||
cv.cmpgt.sci.b x6, x7, 32
|
||||
cv.cmpgt.sci.h x32, x32, 20
|
||||
cv.cmpgt.sci.h x33, x33, 20
|
||||
cv.cmpgt.sci.h x6, x7, -33
|
||||
cv.cmpgt.sci.h x6, x7, 32
|
||||
cv.cmpgtu.b x32, x32, x32
|
||||
cv.cmpgtu.b x33, x33, x33
|
||||
cv.cmpgtu.h x32, x32, x32
|
||||
cv.cmpgtu.h x33, x33, x33
|
||||
cv.cmpgtu.sc.b x32, x32, x32
|
||||
cv.cmpgtu.sc.b x33, x33, x33
|
||||
cv.cmpgtu.sc.h x32, x32, x32
|
||||
cv.cmpgtu.sc.h x33, x33, x33
|
||||
cv.cmpgtu.sci.b x32, x32, 20
|
||||
cv.cmpgtu.sci.b x33, x33, 20
|
||||
cv.cmpgtu.sci.b x6, x7, -1
|
||||
cv.cmpgtu.sci.b x6, x7, 64
|
||||
cv.cmpgtu.sci.h x32, x32, 20
|
||||
cv.cmpgtu.sci.h x33, x33, 20
|
||||
cv.cmpgtu.sci.h x6, x7, -1
|
||||
cv.cmpgtu.sci.h x6, x7, 64
|
||||
cv.cmple.b x32, x32, x32
|
||||
cv.cmple.b x33, x33, x33
|
||||
cv.cmple.h x32, x32, x32
|
||||
cv.cmple.h x33, x33, x33
|
||||
cv.cmple.sc.b x32, x32, x32
|
||||
cv.cmple.sc.b x33, x33, x33
|
||||
cv.cmple.sc.h x32, x32, x32
|
||||
cv.cmple.sc.h x33, x33, x33
|
||||
cv.cmple.sci.b x32, x32, 20
|
||||
cv.cmple.sci.b x33, x33, 20
|
||||
cv.cmple.sci.b x6, x7, -33
|
||||
cv.cmple.sci.b x6, x7, 32
|
||||
cv.cmple.sci.h x32, x32, 20
|
||||
cv.cmple.sci.h x33, x33, 20
|
||||
cv.cmple.sci.h x6, x7, -33
|
||||
cv.cmple.sci.h x6, x7, 32
|
||||
cv.cmpleu.b x32, x32, x32
|
||||
cv.cmpleu.b x33, x33, x33
|
||||
cv.cmpleu.h x32, x32, x32
|
||||
cv.cmpleu.h x33, x33, x33
|
||||
cv.cmpleu.sc.b x32, x32, x32
|
||||
cv.cmpleu.sc.b x33, x33, x33
|
||||
cv.cmpleu.sc.h x32, x32, x32
|
||||
cv.cmpleu.sc.h x33, x33, x33
|
||||
cv.cmpleu.sci.b x32, x32, 20
|
||||
cv.cmpleu.sci.b x33, x33, 20
|
||||
cv.cmpleu.sci.b x6, x7, -1
|
||||
cv.cmpleu.sci.b x6, x7, 64
|
||||
cv.cmpleu.sci.h x32, x32, 20
|
||||
cv.cmpleu.sci.h x33, x33, 20
|
||||
cv.cmpleu.sci.h x6, x7, -1
|
||||
cv.cmpleu.sci.h x6, x7, 64
|
||||
cv.cmplt.b x32, x32, x32
|
||||
cv.cmplt.b x33, x33, x33
|
||||
cv.cmplt.h x32, x32, x32
|
||||
cv.cmplt.h x33, x33, x33
|
||||
cv.cmplt.sc.b x32, x32, x32
|
||||
cv.cmplt.sc.b x33, x33, x33
|
||||
cv.cmplt.sc.h x32, x32, x32
|
||||
cv.cmplt.sc.h x33, x33, x33
|
||||
cv.cmplt.sci.b x32, x32, 20
|
||||
cv.cmplt.sci.b x33, x33, 20
|
||||
cv.cmplt.sci.b x6, x7, -33
|
||||
cv.cmplt.sci.b x6, x7, 32
|
||||
cv.cmplt.sci.h x32, x32, 20
|
||||
cv.cmplt.sci.h x33, x33, 20
|
||||
cv.cmplt.sci.h x6, x7, -33
|
||||
cv.cmplt.sci.h x6, x7, 32
|
||||
cv.cmpltu.b x32, x32, x32
|
||||
cv.cmpltu.b x33, x33, x33
|
||||
cv.cmpltu.h x32, x32, x32
|
||||
cv.cmpltu.h x33, x33, x33
|
||||
cv.cmpltu.sc.b x32, x32, x32
|
||||
cv.cmpltu.sc.b x33, x33, x33
|
||||
cv.cmpltu.sc.h x32, x32, x32
|
||||
cv.cmpltu.sc.h x33, x33, x33
|
||||
cv.cmpltu.sci.b x32, x32, 20
|
||||
cv.cmpltu.sci.b x33, x33, 20
|
||||
cv.cmpltu.sci.b x6, x7, -1
|
||||
cv.cmpltu.sci.b x6, x7, 64
|
||||
cv.cmpltu.sci.h x32, x32, 20
|
||||
cv.cmpltu.sci.h x33, x33, 20
|
||||
cv.cmpltu.sci.h x6, x7, -1
|
||||
cv.cmpltu.sci.h x6, x7, 64
|
||||
cv.cmpne.b x32, x32, x32
|
||||
cv.cmpne.b x33, x33, x33
|
||||
cv.cmpne.h x32, x32, x32
|
||||
cv.cmpne.h x33, x33, x33
|
||||
cv.cmpne.sc.b x32, x32, x32
|
||||
cv.cmpne.sc.b x33, x33, x33
|
||||
cv.cmpne.sc.h x32, x32, x32
|
||||
cv.cmpne.sc.h x33, x33, x33
|
||||
cv.cmpne.sci.b x32, x32, 20
|
||||
cv.cmpne.sci.b x33, x33, 20
|
||||
cv.cmpne.sci.b x6, x7, -33
|
||||
cv.cmpne.sci.b x6, x7, 32
|
||||
cv.cmpne.sci.h x32, x32, 20
|
||||
cv.cmpne.sci.h x33, x33, 20
|
||||
cv.cmpne.sci.h x6, x7, -33
|
||||
cv.cmpne.sci.h x6, x7, 32
|
||||
cv.cplxconj x32, x32
|
||||
cv.cplxconj x33, x33
|
||||
cv.cplxmul.i.div2 x32, x32, x32
|
||||
cv.cplxmul.i.div2 x33, x33, x33
|
||||
cv.cplxmul.i.div4 x32, x32, x32
|
||||
cv.cplxmul.i.div4 x33, x33, x33
|
||||
cv.cplxmul.i.div8 x32, x32, x32
|
||||
cv.cplxmul.i.div8 x33, x33, x33
|
||||
cv.cplxmul.i x32, x32, x32
|
||||
cv.cplxmul.i x33, x33, x33
|
||||
cv.cplxmul.r.div2 x32, x32, x32
|
||||
cv.cplxmul.r.div2 x33, x33, x33
|
||||
cv.cplxmul.r.div4 x32, x32, x32
|
||||
cv.cplxmul.r.div4 x33, x33, x33
|
||||
cv.cplxmul.r.div8 x32, x32, x32
|
||||
cv.cplxmul.r.div8 x33, x33, x33
|
||||
cv.cplxmul.r x32, x32, x32
|
||||
cv.cplxmul.r x33, x33, x33
|
||||
cv.dotsp.b x32, x32, x32
|
||||
cv.dotsp.b x33, x33, x33
|
||||
cv.dotsp.h x32, x32, x32
|
||||
cv.dotsp.h x33, x33, x33
|
||||
cv.dotsp.sc.b x32, x32, x32
|
||||
cv.dotsp.sc.b x33, x33, x33
|
||||
cv.dotsp.sc.h x32, x32, x32
|
||||
cv.dotsp.sc.h x33, x33, x33
|
||||
cv.dotsp.sci.b x32, x32, 20
|
||||
cv.dotsp.sci.b x33, x33, 20
|
||||
cv.dotsp.sci.b x6, x7, -33
|
||||
cv.dotsp.sci.b x6, x7, 32
|
||||
cv.dotsp.sci.h x32, x32, 20
|
||||
cv.dotsp.sci.h x33, x33, 20
|
||||
cv.dotsp.sci.h x6, x7, -33
|
||||
cv.dotsp.sci.h x6, x7, 32
|
||||
cv.dotup.b x32, x32, x32
|
||||
cv.dotup.b x33, x33, x33
|
||||
cv.dotup.h x32, x32, x32
|
||||
cv.dotup.h x33, x33, x33
|
||||
cv.dotup.sc.b x32, x32, x32
|
||||
cv.dotup.sc.b x33, x33, x33
|
||||
cv.dotup.sc.h x32, x32, x32
|
||||
cv.dotup.sc.h x33, x33, x33
|
||||
cv.dotup.sci.b x32, x32, 20
|
||||
cv.dotup.sci.b x33, x33, 20
|
||||
cv.dotup.sci.b x6, x7, -1
|
||||
cv.dotup.sci.b x6, x7, 64
|
||||
cv.dotup.sci.h x32, x32, 20
|
||||
cv.dotup.sci.h x33, x33, 20
|
||||
cv.dotup.sci.h x6, x7, -1
|
||||
cv.dotup.sci.h x6, x7, 64
|
||||
cv.dotusp.b x32, x32, x32
|
||||
cv.dotusp.b x33, x33, x33
|
||||
cv.dotusp.h x32, x32, x32
|
||||
cv.dotusp.h x33, x33, x33
|
||||
cv.dotusp.sc.b x32, x32, x32
|
||||
cv.dotusp.sc.b x33, x33, x33
|
||||
cv.dotusp.sc.h x32, x32, x32
|
||||
cv.dotusp.sc.h x33, x33, x33
|
||||
cv.dotusp.sci.b x32, x32, 20
|
||||
cv.dotusp.sci.b x33, x33, 20
|
||||
cv.dotusp.sci.b x6, x7, -33
|
||||
cv.dotusp.sci.b x6, x7, 32
|
||||
cv.dotusp.sci.h x32, x32, 20
|
||||
cv.dotusp.sci.h x33, x33, 20
|
||||
cv.dotusp.sci.h x6, x7, -33
|
||||
cv.dotusp.sci.h x6, x7, 32
|
||||
cv.extract.b x32, x32, 2
|
||||
cv.extract.b x33, x33, 2
|
||||
cv.extract.b x6, x7, -1
|
||||
cv.extract.b x6, x7, 4
|
||||
cv.extract.h x32, x32, 1
|
||||
cv.extract.h x33, x33, 1
|
||||
cv.extract.h x6, x7, -1
|
||||
cv.extract.h x6, x7, 2
|
||||
cv.extractu.b x32, x32, 2
|
||||
cv.extractu.b x33, x33, 2
|
||||
cv.extractu.b x6, x7, -1
|
||||
cv.extractu.b x6, x7, 4
|
||||
cv.extractu.h x32, x32, 1
|
||||
cv.extractu.h x33, x33, 1
|
||||
cv.extractu.h x6, x7, -1
|
||||
cv.extractu.h x6, x7, 2
|
||||
cv.insert.b x32, x32, 2
|
||||
cv.insert.b x33, x33, 2
|
||||
cv.insert.b x6, x7, -1
|
||||
cv.insert.b x6, x7, 4
|
||||
cv.insert.h x32, x32, 1
|
||||
cv.insert.h x33, x33, 1
|
||||
cv.insert.h x6, x7, -1
|
||||
cv.insert.h x6, x7, 2
|
||||
cv.max.b x32, x32, x32
|
||||
cv.max.b x33, x33, x33
|
||||
cv.max.h x32, x32, x32
|
||||
cv.max.h x33, x33, x33
|
||||
cv.max.sc.b x32, x32, x32
|
||||
cv.max.sc.b x33, x33, x33
|
||||
cv.max.sc.h x32, x32, x32
|
||||
cv.max.sc.h x33, x33, x33
|
||||
cv.max.sci.b x32, x32, 20
|
||||
cv.max.sci.b x33, x33, 20
|
||||
cv.max.sci.b x6, x7, -33
|
||||
cv.max.sci.b x6, x7, 32
|
||||
cv.max.sci.h x32, x32, 20
|
||||
cv.max.sci.h x33, x33, 20
|
||||
cv.max.sci.h x6, x7, -33
|
||||
cv.max.sci.h x6, x7, 32
|
||||
cv.maxu.b x32, x32, x32
|
||||
cv.maxu.b x33, x33, x33
|
||||
cv.maxu.h x32, x32, x32
|
||||
cv.maxu.h x33, x33, x33
|
||||
cv.maxu.sc.b x32, x32, x32
|
||||
cv.maxu.sc.b x33, x33, x33
|
||||
cv.maxu.sc.h x32, x32, x32
|
||||
cv.maxu.sc.h x33, x33, x33
|
||||
cv.maxu.sci.b x32, x32, 20
|
||||
cv.maxu.sci.b x33, x33, 20
|
||||
cv.maxu.sci.b x6, x7, -1
|
||||
cv.maxu.sci.b x6, x7, 64
|
||||
cv.maxu.sci.h x32, x32, 20
|
||||
cv.maxu.sci.h x33, x33, 20
|
||||
cv.maxu.sci.h x6, x7, -1
|
||||
cv.maxu.sci.h x6, x7, 64
|
||||
cv.min.b x32, x32, x32
|
||||
cv.min.b x33, x33, x33
|
||||
cv.min.h x32, x32, x32
|
||||
cv.min.h x33, x33, x33
|
||||
cv.min.sc.b x32, x32, x32
|
||||
cv.min.sc.b x33, x33, x33
|
||||
cv.min.sc.h x32, x32, x32
|
||||
cv.min.sc.h x33, x33, x33
|
||||
cv.min.sci.b x32, x32, 20
|
||||
cv.min.sci.b x33, x33, 20
|
||||
cv.min.sci.b x6, x7, -33
|
||||
cv.min.sci.b x6, x7, 32
|
||||
cv.min.sci.h x32, x32, 20
|
||||
cv.min.sci.h x33, x33, 20
|
||||
cv.min.sci.h x6, x7, -33
|
||||
cv.min.sci.h x6, x7, 32
|
||||
cv.minu.b x32, x32, x32
|
||||
cv.minu.b x33, x33, x33
|
||||
cv.minu.h x32, x32, x32
|
||||
cv.minu.h x33, x33, x33
|
||||
cv.minu.sc.b x32, x32, x32
|
||||
cv.minu.sc.b x33, x33, x33
|
||||
cv.minu.sc.h x32, x32, x32
|
||||
cv.minu.sc.h x33, x33, x33
|
||||
cv.minu.sci.b x32, x32, 20
|
||||
cv.minu.sci.b x33, x33, 20
|
||||
cv.minu.sci.b x6, x7, -1
|
||||
cv.minu.sci.b x6, x7, 64
|
||||
cv.minu.sci.h x32, x32, 20
|
||||
cv.minu.sci.h x33, x33, 20
|
||||
cv.minu.sci.h x6, x7, -1
|
||||
cv.minu.sci.h x6, x7, 64
|
||||
cv.or.b x32, x32, x32
|
||||
cv.or.b x33, x33, x33
|
||||
cv.or.h x32, x32, x32
|
||||
cv.or.h x33, x33, x33
|
||||
cv.or.sc.b x32, x32, x32
|
||||
cv.or.sc.b x33, x33, x33
|
||||
cv.or.sc.h x32, x32, x32
|
||||
cv.or.sc.h x33, x33, x33
|
||||
cv.or.sci.b x32, x32, 20
|
||||
cv.or.sci.b x33, x33, 20
|
||||
cv.or.sci.b x6, x7, -33
|
||||
cv.or.sci.b x6, x7, 32
|
||||
cv.or.sci.h x32, x32, 20
|
||||
cv.or.sci.h x33, x33, 20
|
||||
cv.or.sci.h x6, x7, -33
|
||||
cv.or.sci.h x6, x7, 32
|
||||
cv.pack x32, x32, x32
|
||||
cv.pack x33, x33, x33
|
||||
cv.pack.h x32, x32, x32
|
||||
cv.pack.h x33, x33, x33
|
||||
cv.packhi.b x32, x32, x32
|
||||
cv.packhi.b x33, x33, x33
|
||||
cv.packlo.b x32, x32, x32
|
||||
cv.packlo.b x33, x33, x33
|
||||
cv.sdotsp.b x32, x32, x32
|
||||
cv.sdotsp.b x33, x33, x33
|
||||
cv.sdotsp.h x32, x32, x32
|
||||
cv.sdotsp.h x33, x33, x33
|
||||
cv.sdotsp.sc.b x32, x32, x32
|
||||
cv.sdotsp.sc.b x33, x33, x33
|
||||
cv.sdotsp.sc.h x32, x32, x32
|
||||
cv.sdotsp.sc.h x33, x33, x33
|
||||
cv.sdotsp.sci.b x32, x32, 20
|
||||
cv.sdotsp.sci.b x33, x33, 20
|
||||
cv.sdotsp.sci.b x6, x7, -33
|
||||
cv.sdotsp.sci.b x6, x7, 32
|
||||
cv.sdotsp.sci.h x32, x32, 20
|
||||
cv.sdotsp.sci.h x33, x33, 20
|
||||
cv.sdotsp.sci.h x6, x7, -33
|
||||
cv.sdotsp.sci.h x6, x7, 32
|
||||
cv.sdotup.b x32, x32, x32
|
||||
cv.sdotup.b x33, x33, x33
|
||||
cv.sdotup.h x32, x32, x32
|
||||
cv.sdotup.h x33, x33, x33
|
||||
cv.sdotup.sc.b x32, x32, x32
|
||||
cv.sdotup.sc.b x33, x33, x33
|
||||
cv.sdotup.sc.h x32, x32, x32
|
||||
cv.sdotup.sc.h x33, x33, x33
|
||||
cv.sdotup.sci.b x32, x32, 20
|
||||
cv.sdotup.sci.b x33, x33, 20
|
||||
cv.sdotup.sci.b x6, x7, -1
|
||||
cv.sdotup.sci.b x6, x7, 64
|
||||
cv.sdotup.sci.h x32, x32, 20
|
||||
cv.sdotup.sci.h x33, x33, 20
|
||||
cv.sdotup.sci.h x6, x7, -1
|
||||
cv.sdotup.sci.h x6, x7, 64
|
||||
cv.sdotusp.b x32, x32, x32
|
||||
cv.sdotusp.b x33, x33, x33
|
||||
cv.sdotusp.h x32, x32, x32
|
||||
cv.sdotusp.h x33, x33, x33
|
||||
cv.sdotusp.sc.b x32, x32, x32
|
||||
cv.sdotusp.sc.b x33, x33, x33
|
||||
cv.sdotusp.sc.h x32, x32, x32
|
||||
cv.sdotusp.sc.h x33, x33, x33
|
||||
cv.sdotusp.sci.b x32, x32, 20
|
||||
cv.sdotusp.sci.b x33, x33, 20
|
||||
cv.sdotusp.sci.b x6, x7, -33
|
||||
cv.sdotusp.sci.b x6, x7, 32
|
||||
cv.sdotusp.sci.h x32, x32, 20
|
||||
cv.sdotusp.sci.h x33, x33, 20
|
||||
cv.sdotusp.sci.h x6, x7, -33
|
||||
cv.sdotusp.sci.h x6, x7, 32
|
||||
cv.shuffle2.b x32, x32, x32
|
||||
cv.shuffle2.b x33, x33, x33
|
||||
cv.shuffle2.h x32, x32, x32
|
||||
cv.shuffle2.h x33, x33, x33
|
||||
cv.shuffle.b x32, x32, x32
|
||||
cv.shuffle.b x33, x33, x33
|
||||
cv.shuffle.h x32, x32, x32
|
||||
cv.shuffle.h x33, x33, x33
|
||||
cv.shufflei0.sci.b x32, x32, 20
|
||||
cv.shufflei0.sci.b x33, x33, 20
|
||||
cv.shufflei0.sci.b x6, x7, -1
|
||||
cv.shufflei0.sci.b x6, x7, 64
|
||||
cv.shufflei1.sci.b x32, x32, 20
|
||||
cv.shufflei1.sci.b x33, x33, 20
|
||||
cv.shufflei1.sci.b x6, x7, -1
|
||||
cv.shufflei1.sci.b x6, x7, 64
|
||||
cv.shufflei2.sci.b x32, x32, 20
|
||||
cv.shufflei2.sci.b x33, x33, 20
|
||||
cv.shufflei2.sci.b x6, x7, -1
|
||||
cv.shufflei2.sci.b x6, x7, 64
|
||||
cv.shufflei3.sci.b x32, x32, 20
|
||||
cv.shufflei3.sci.b x33, x33, 20
|
||||
cv.shufflei3.sci.b x6, x7, -1
|
||||
cv.shufflei3.sci.b x6, x7, 64
|
||||
cv.shuffle.sci.h x32, x32, 20
|
||||
cv.shuffle.sci.h x33, x33, 20
|
||||
cv.shuffle.sci.h x6, x7, -1
|
||||
cv.shuffle.sci.h x6, x7, 64
|
||||
cv.sll.b x32, x32, x32
|
||||
cv.sll.b x33, x33, x33
|
||||
cv.sll.h x32, x32, x32
|
||||
cv.sll.h x33, x33, x33
|
||||
cv.sll.sc.b x32, x32, x32
|
||||
cv.sll.sc.b x33, x33, x33
|
||||
cv.sll.sc.h x32, x32, x32
|
||||
cv.sll.sc.h x33, x33, x33
|
||||
cv.sll.sci.b x32, x32, 4
|
||||
cv.sll.sci.b x33, x33, 4
|
||||
cv.sll.sci.b x6, x7, -1
|
||||
cv.sll.sci.b x6, x7, 8
|
||||
cv.sll.sci.h x32, x32, 12
|
||||
cv.sll.sci.h x33, x33, 12
|
||||
cv.sll.sci.h x6, x7, -1
|
||||
cv.sll.sci.h x6, x7, 16
|
||||
cv.sra.b x32, x32, x32
|
||||
cv.sra.b x33, x33, x33
|
||||
cv.sra.h x32, x32, x32
|
||||
cv.sra.h x33, x33, x33
|
||||
cv.sra.sc.b x32, x32, x32
|
||||
cv.sra.sc.b x33, x33, x33
|
||||
cv.sra.sc.h x32, x32, x32
|
||||
cv.sra.sc.h x33, x33, x33
|
||||
cv.sra.sci.b x32, x32, 4
|
||||
cv.sra.sci.b x33, x33, 4
|
||||
cv.sra.sci.b x6, x7, -1
|
||||
cv.sra.sci.b x6, x7, 8
|
||||
cv.sra.sci.h x32, x32, 12
|
||||
cv.sra.sci.h x33, x33, 12
|
||||
cv.sra.sci.h x6, x7, -1
|
||||
cv.sra.sci.h x6, x7, 16
|
||||
cv.srl.b x32, x32, x32
|
||||
cv.srl.b x33, x33, x33
|
||||
cv.srl.h x32, x32, x32
|
||||
cv.srl.h x33, x33, x33
|
||||
cv.srl.sc.b x32, x32, x32
|
||||
cv.srl.sc.b x33, x33, x33
|
||||
cv.srl.sc.h x32, x32, x32
|
||||
cv.srl.sc.h x33, x33, x33
|
||||
cv.srl.sci.b x32, x32, 4
|
||||
cv.srl.sci.b x33, x33, 4
|
||||
cv.srl.sci.b x6, x7, -1
|
||||
cv.srl.sci.b x6, x7, 8
|
||||
cv.srl.sci.h x32, x32, 12
|
||||
cv.srl.sci.h x33, x33, 12
|
||||
cv.srl.sci.h x6, x7, -1
|
||||
cv.srl.sci.h x6, x7, 16
|
||||
cv.sub.b x32, x32, x32
|
||||
cv.sub.b x33, x33, x33
|
||||
cv.sub.div2 x32, x32, x32
|
||||
cv.sub.div2 x33, x33, x33
|
||||
cv.sub.div4 x32, x32, x32
|
||||
cv.sub.div4 x33, x33, x33
|
||||
cv.sub.div8 x32, x32, x32
|
||||
cv.sub.div8 x33, x33, x33
|
||||
cv.sub.h x32, x32, x32
|
||||
cv.sub.h x33, x33, x33
|
||||
cv.subrotmj.div2 x32, x32, x32
|
||||
cv.subrotmj.div2 x33, x33, x33
|
||||
cv.subrotmj.div4 x32, x32, x32
|
||||
cv.subrotmj.div4 x33, x33, x33
|
||||
cv.subrotmj.div8 x32, x32, x32
|
||||
cv.subrotmj.div8 x33, x33, x33
|
||||
cv.subrotmj x32, x32, x32
|
||||
cv.subrotmj x33, x33, x33
|
||||
cv.sub.sc.b x32, x32, x32
|
||||
cv.sub.sc.b x33, x33, x33
|
||||
cv.sub.sc.h x32, x32, x32
|
||||
cv.sub.sc.h x33, x33, x33
|
||||
cv.sub.sci.b x32, x32, 20
|
||||
cv.sub.sci.b x33, x33, 20
|
||||
cv.sub.sci.b x6, x7, -33
|
||||
cv.sub.sci.b x6, x7, 32
|
||||
cv.sub.sci.h x32, x32, 20
|
||||
cv.sub.sci.h x33, x33, 20
|
||||
cv.sub.sci.h x6, x7, -33
|
||||
cv.sub.sci.h x6, x7, 32
|
||||
cv.xor.b x32, x32, x32
|
||||
cv.xor.b x33, x33, x33
|
||||
cv.xor.h x32, x32, x32
|
||||
cv.xor.h x33, x33, x33
|
||||
cv.xor.sc.b x32, x32, x32
|
||||
cv.xor.sc.b x33, x33, x33
|
||||
cv.xor.sc.h x32, x32, x32
|
||||
cv.xor.sc.h x33, x33, x33
|
||||
cv.xor.sci.b x32, x32, 20
|
||||
cv.xor.sci.b x33, x33, 20
|
||||
cv.xor.sci.b x6, x7, -33
|
||||
cv.xor.sci.b x6, x7, 32
|
||||
cv.xor.sci.h x32, x32, 20
|
||||
cv.xor.sci.h x33, x33, 20
|
||||
cv.xor.sci.h x6, x7, -33
|
||||
cv.xor.sci.h x6, x7, 32
|
||||
1508
gas/testsuite/gas/riscv/x-cv-simd.d
Normal file
1508
gas/testsuite/gas/riscv/x-cv-simd.d
Normal file
File diff suppressed because it is too large
Load Diff
1498
gas/testsuite/gas/riscv/x-cv-simd.s
Normal file
1498
gas/testsuite/gas/riscv/x-cv-simd.s
Normal file
File diff suppressed because it is too large
Load Diff
@@ -2687,6 +2687,449 @@
|
||||
#define MASK_CV_BCLR 0xc000707f
|
||||
#define MASK_CV_BSET 0xc000707f
|
||||
#define MASK_CV_BITREV 0xf800707f
|
||||
/* Vendor-specific (CORE-V) Xcvsimd instructions. */
|
||||
#define MATCH_CV_ADD_H 0x7b
|
||||
#define MATCH_CV_ADD_B 0x107b
|
||||
#define MATCH_CV_ADD_SC_H 0x407b
|
||||
#define MATCH_CV_ADD_SC_B 0x507b
|
||||
#define MATCH_CV_ADD_SCI_H 0x607b
|
||||
#define MATCH_CV_ADD_SCI_B 0x707b
|
||||
#define MATCH_CV_SUB_H 0x800007b
|
||||
#define MATCH_CV_SUB_B 0x800107b
|
||||
#define MATCH_CV_SUB_SC_H 0x800407b
|
||||
#define MATCH_CV_SUB_SC_B 0x800507b
|
||||
#define MATCH_CV_SUB_SCI_H 0x800607b
|
||||
#define MATCH_CV_SUB_SCI_B 0x800707b
|
||||
#define MATCH_CV_AVG_H 0x1000007b
|
||||
#define MATCH_CV_AVG_B 0x1000107b
|
||||
#define MATCH_CV_AVG_SC_H 0x1000407b
|
||||
#define MATCH_CV_AVG_SC_B 0x1000507b
|
||||
#define MATCH_CV_AVG_SCI_H 0x1000607b
|
||||
#define MATCH_CV_AVG_SCI_B 0x1000707b
|
||||
#define MATCH_CV_AVGU_H 0x1800007b
|
||||
#define MATCH_CV_AVGU_B 0x1800107b
|
||||
#define MATCH_CV_AVGU_SC_H 0x1800407b
|
||||
#define MATCH_CV_AVGU_SC_B 0x1800507b
|
||||
#define MATCH_CV_AVGU_SCI_H 0x1800607b
|
||||
#define MATCH_CV_AVGU_SCI_B 0x1800707b
|
||||
#define MATCH_CV_MIN_H 0x2000007b
|
||||
#define MATCH_CV_MIN_B 0x2000107b
|
||||
#define MATCH_CV_MIN_SC_H 0x2000407b
|
||||
#define MATCH_CV_MIN_SC_B 0x2000507b
|
||||
#define MATCH_CV_MIN_SCI_H 0x2000607b
|
||||
#define MATCH_CV_MIN_SCI_B 0x2000707b
|
||||
#define MATCH_CV_MINU_H 0x2800007b
|
||||
#define MATCH_CV_MINU_B 0x2800107b
|
||||
#define MATCH_CV_MINU_SC_H 0x2800407b
|
||||
#define MATCH_CV_MINU_SC_B 0x2800507b
|
||||
#define MATCH_CV_MINU_SCI_H 0x2800607b
|
||||
#define MATCH_CV_MINU_SCI_B 0x2800707b
|
||||
#define MATCH_CV_MAX_H 0x3000007b
|
||||
#define MATCH_CV_MAX_B 0x3000107b
|
||||
#define MATCH_CV_MAX_SC_H 0x3000407b
|
||||
#define MATCH_CV_MAX_SC_B 0x3000507b
|
||||
#define MATCH_CV_MAX_SCI_H 0x3000607b
|
||||
#define MATCH_CV_MAX_SCI_B 0x3000707b
|
||||
#define MATCH_CV_MAXU_H 0x3800007b
|
||||
#define MATCH_CV_MAXU_B 0x3800107b
|
||||
#define MATCH_CV_MAXU_SC_H 0x3800407b
|
||||
#define MATCH_CV_MAXU_SC_B 0x3800507b
|
||||
#define MATCH_CV_MAXU_SCI_H 0x3800607b
|
||||
#define MATCH_CV_MAXU_SCI_B 0x3800707b
|
||||
#define MATCH_CV_SRL_H 0x4000007b
|
||||
#define MATCH_CV_SRL_B 0x4000107b
|
||||
#define MATCH_CV_SRL_SC_H 0x4000407b
|
||||
#define MATCH_CV_SRL_SC_B 0x4000507b
|
||||
#define MATCH_CV_SRL_SCI_H 0x4000607b
|
||||
#define MATCH_CV_SRL_SCI_B 0x4000707b
|
||||
#define MATCH_CV_SRA_H 0x4800007b
|
||||
#define MATCH_CV_SRA_B 0x4800107b
|
||||
#define MATCH_CV_SRA_SC_H 0x4800407b
|
||||
#define MATCH_CV_SRA_SC_B 0x4800507b
|
||||
#define MATCH_CV_SRA_SCI_H 0x4800607b
|
||||
#define MATCH_CV_SRA_SCI_B 0x4800707b
|
||||
#define MATCH_CV_SLL_H 0x5000007b
|
||||
#define MATCH_CV_SLL_B 0x5000107b
|
||||
#define MATCH_CV_SLL_SC_H 0x5000407b
|
||||
#define MATCH_CV_SLL_SC_B 0x5000507b
|
||||
#define MATCH_CV_SLL_SCI_H 0x5000607b
|
||||
#define MATCH_CV_SLL_SCI_B 0x5000707b
|
||||
#define MATCH_CV_OR_H 0x5800007b
|
||||
#define MATCH_CV_OR_B 0x5800107b
|
||||
#define MATCH_CV_OR_SC_H 0x5800407b
|
||||
#define MATCH_CV_OR_SC_B 0x5800507b
|
||||
#define MATCH_CV_OR_SCI_H 0x5800607b
|
||||
#define MATCH_CV_OR_SCI_B 0x5800707b
|
||||
#define MATCH_CV_XOR_H 0x6000007b
|
||||
#define MATCH_CV_XOR_B 0x6000107b
|
||||
#define MATCH_CV_XOR_SC_H 0x6000407b
|
||||
#define MATCH_CV_XOR_SC_B 0x6000507b
|
||||
#define MATCH_CV_XOR_SCI_H 0x6000607b
|
||||
#define MATCH_CV_XOR_SCI_B 0x6000707b
|
||||
#define MATCH_CV_AND_H 0x6800007b
|
||||
#define MATCH_CV_AND_B 0x6800107b
|
||||
#define MATCH_CV_AND_SC_H 0x6800407b
|
||||
#define MATCH_CV_AND_SC_B 0x6800507b
|
||||
#define MATCH_CV_AND_SCI_H 0x6800607b
|
||||
#define MATCH_CV_AND_SCI_B 0x6800707b
|
||||
#define MATCH_CV_ABS_H 0x7000007b
|
||||
#define MATCH_CV_ABS_B 0x7000107b
|
||||
#define MATCH_CV_DOTUP_H 0x8000007b
|
||||
#define MATCH_CV_DOTUP_B 0x8000107b
|
||||
#define MATCH_CV_DOTUP_SC_H 0x8000407b
|
||||
#define MATCH_CV_DOTUP_SC_B 0x8000507b
|
||||
#define MATCH_CV_DOTUP_SCI_H 0x8000607b
|
||||
#define MATCH_CV_DOTUP_SCI_B 0x8000707b
|
||||
#define MATCH_CV_DOTUSP_H 0x8800007b
|
||||
#define MATCH_CV_DOTUSP_B 0x8800107b
|
||||
#define MATCH_CV_DOTUSP_SC_H 0x8800407b
|
||||
#define MATCH_CV_DOTUSP_SC_B 0x8800507b
|
||||
#define MATCH_CV_DOTUSP_SCI_H 0x8800607b
|
||||
#define MATCH_CV_DOTUSP_SCI_B 0x8800707b
|
||||
#define MATCH_CV_DOTSP_H 0x9000007b
|
||||
#define MATCH_CV_DOTSP_B 0x9000107b
|
||||
#define MATCH_CV_DOTSP_SC_H 0x9000407b
|
||||
#define MATCH_CV_DOTSP_SC_B 0x9000507b
|
||||
#define MATCH_CV_DOTSP_SCI_H 0x9000607b
|
||||
#define MATCH_CV_DOTSP_SCI_B 0x9000707b
|
||||
#define MATCH_CV_SDOTUP_H 0x9800007b
|
||||
#define MATCH_CV_SDOTUP_B 0x9800107b
|
||||
#define MATCH_CV_SDOTUP_SC_H 0x9800407b
|
||||
#define MATCH_CV_SDOTUP_SC_B 0x9800507b
|
||||
#define MATCH_CV_SDOTUP_SCI_H 0x9800607b
|
||||
#define MATCH_CV_SDOTUP_SCI_B 0x9800707b
|
||||
#define MATCH_CV_SDOTUSP_H 0xa000007b
|
||||
#define MATCH_CV_SDOTUSP_B 0xa000107b
|
||||
#define MATCH_CV_SDOTUSP_SC_H 0xa000407b
|
||||
#define MATCH_CV_SDOTUSP_SC_B 0xa000507b
|
||||
#define MATCH_CV_SDOTUSP_SCI_H 0xa000607b
|
||||
#define MATCH_CV_SDOTUSP_SCI_B 0xa000707b
|
||||
#define MATCH_CV_SDOTSP_H 0xa800007b
|
||||
#define MATCH_CV_SDOTSP_B 0xa800107b
|
||||
#define MATCH_CV_SDOTSP_SC_H 0xa800407b
|
||||
#define MATCH_CV_SDOTSP_SC_B 0xa800507b
|
||||
#define MATCH_CV_SDOTSP_SCI_H 0xa800607b
|
||||
#define MATCH_CV_SDOTSP_SCI_B 0xa800707b
|
||||
#define MATCH_CV_EXTRACT_H 0xb800007b
|
||||
#define MATCH_CV_EXTRACT_B 0xb800107b
|
||||
#define MATCH_CV_EXTRACTU_H 0xb800207b
|
||||
#define MATCH_CV_EXTRACTU_B 0xb800307b
|
||||
#define MATCH_CV_INSERT_H 0xb800407b
|
||||
#define MATCH_CV_INSERT_B 0xb800507b
|
||||
#define MATCH_CV_SHUFFLE_H 0xc000007b
|
||||
#define MATCH_CV_SHUFFLE_B 0xc000107b
|
||||
#define MATCH_CV_SHUFFLE_SCI_H 0xc000607b
|
||||
#define MATCH_CV_SHUFFLEI0_SCI_B 0xc000707b
|
||||
#define MATCH_CV_SHUFFLEI1_SCI_B 0xc800707b
|
||||
#define MATCH_CV_SHUFFLEI2_SCI_B 0xd000707b
|
||||
#define MATCH_CV_SHUFFLEI3_SCI_B 0xd800707b
|
||||
#define MATCH_CV_SHUFFLE2_H 0xe000007b
|
||||
#define MATCH_CV_SHUFFLE2_B 0xe000107b
|
||||
#define MATCH_CV_PACK 0xf000007b
|
||||
#define MATCH_CV_PACK_H 0xf200007b
|
||||
#define MATCH_CV_PACKHI_B 0xfa00107b
|
||||
#define MATCH_CV_PACKLO_B 0xf800107b
|
||||
#define MATCH_CV_CMPEQ_H 0x400007b
|
||||
#define MATCH_CV_CMPEQ_B 0x400107b
|
||||
#define MATCH_CV_CMPEQ_SC_H 0x400407b
|
||||
#define MATCH_CV_CMPEQ_SC_B 0x400507b
|
||||
#define MATCH_CV_CMPEQ_SCI_H 0x400607b
|
||||
#define MATCH_CV_CMPEQ_SCI_B 0x400707b
|
||||
#define MATCH_CV_CMPNE_H 0xc00007b
|
||||
#define MATCH_CV_CMPNE_B 0xc00107b
|
||||
#define MATCH_CV_CMPNE_SC_H 0xc00407b
|
||||
#define MATCH_CV_CMPNE_SC_B 0xc00507b
|
||||
#define MATCH_CV_CMPNE_SCI_H 0xc00607b
|
||||
#define MATCH_CV_CMPNE_SCI_B 0xc00707b
|
||||
#define MATCH_CV_CMPGT_H 0x1400007b
|
||||
#define MATCH_CV_CMPGT_B 0x1400107b
|
||||
#define MATCH_CV_CMPGT_SC_H 0x1400407b
|
||||
#define MATCH_CV_CMPGT_SC_B 0x1400507b
|
||||
#define MATCH_CV_CMPGT_SCI_H 0x1400607b
|
||||
#define MATCH_CV_CMPGT_SCI_B 0x1400707b
|
||||
#define MATCH_CV_CMPGE_H 0x1c00007b
|
||||
#define MATCH_CV_CMPGE_B 0x1c00107b
|
||||
#define MATCH_CV_CMPGE_SC_H 0x1c00407b
|
||||
#define MATCH_CV_CMPGE_SC_B 0x1c00507b
|
||||
#define MATCH_CV_CMPGE_SCI_H 0x1c00607b
|
||||
#define MATCH_CV_CMPGE_SCI_B 0x1c00707b
|
||||
#define MATCH_CV_CMPLT_H 0x2400007b
|
||||
#define MATCH_CV_CMPLT_B 0x2400107b
|
||||
#define MATCH_CV_CMPLT_SC_H 0x2400407b
|
||||
#define MATCH_CV_CMPLT_SC_B 0x2400507b
|
||||
#define MATCH_CV_CMPLT_SCI_H 0x2400607b
|
||||
#define MATCH_CV_CMPLT_SCI_B 0x2400707b
|
||||
#define MATCH_CV_CMPLE_H 0x2c00007b
|
||||
#define MATCH_CV_CMPLE_B 0x2c00107b
|
||||
#define MATCH_CV_CMPLE_SC_H 0x2c00407b
|
||||
#define MATCH_CV_CMPLE_SC_B 0x2c00507b
|
||||
#define MATCH_CV_CMPLE_SCI_H 0x2c00607b
|
||||
#define MATCH_CV_CMPLE_SCI_B 0x2c00707b
|
||||
#define MATCH_CV_CMPGTU_H 0x3400007b
|
||||
#define MATCH_CV_CMPGTU_B 0x3400107b
|
||||
#define MATCH_CV_CMPGTU_SC_H 0x3400407b
|
||||
#define MATCH_CV_CMPGTU_SC_B 0x3400507b
|
||||
#define MATCH_CV_CMPGTU_SCI_H 0x3400607b
|
||||
#define MATCH_CV_CMPGTU_SCI_B 0x3400707b
|
||||
#define MATCH_CV_CMPGEU_H 0x3c00007b
|
||||
#define MATCH_CV_CMPGEU_B 0x3c00107b
|
||||
#define MATCH_CV_CMPGEU_SC_H 0x3c00407b
|
||||
#define MATCH_CV_CMPGEU_SC_B 0x3c00507b
|
||||
#define MATCH_CV_CMPGEU_SCI_H 0x3c00607b
|
||||
#define MATCH_CV_CMPGEU_SCI_B 0x3c00707b
|
||||
#define MATCH_CV_CMPLTU_H 0x4400007b
|
||||
#define MATCH_CV_CMPLTU_B 0x4400107b
|
||||
#define MATCH_CV_CMPLTU_SC_H 0x4400407b
|
||||
#define MATCH_CV_CMPLTU_SC_B 0x4400507b
|
||||
#define MATCH_CV_CMPLTU_SCI_H 0x4400607b
|
||||
#define MATCH_CV_CMPLTU_SCI_B 0x4400707b
|
||||
#define MATCH_CV_CMPLEU_H 0x4c00007b
|
||||
#define MATCH_CV_CMPLEU_B 0x4c00107b
|
||||
#define MATCH_CV_CMPLEU_SC_H 0x4c00407b
|
||||
#define MATCH_CV_CMPLEU_SC_B 0x4c00507b
|
||||
#define MATCH_CV_CMPLEU_SCI_H 0x4c00607b
|
||||
#define MATCH_CV_CMPLEU_SCI_B 0x4c00707b
|
||||
#define MATCH_CV_CPLXMUL_R 0x5400007b
|
||||
#define MATCH_CV_CPLXMUL_I 0x5600007b
|
||||
#define MATCH_CV_CPLXMUL_R_DIV2 0x5400207b
|
||||
#define MATCH_CV_CPLXMUL_I_DIV2 0x5600207b
|
||||
#define MATCH_CV_CPLXMUL_R_DIV4 0x5400407b
|
||||
#define MATCH_CV_CPLXMUL_I_DIV4 0x5600407b
|
||||
#define MATCH_CV_CPLXMUL_R_DIV8 0x5400607b
|
||||
#define MATCH_CV_CPLXMUL_I_DIV8 0x5600607b
|
||||
#define MATCH_CV_CPLXCONJ 0x5c00007b
|
||||
#define MATCH_CV_SUBROTMJ 0x6400007b
|
||||
#define MATCH_CV_SUBROTMJ_DIV2 0x6400207b
|
||||
#define MATCH_CV_SUBROTMJ_DIV4 0x6400407b
|
||||
#define MATCH_CV_SUBROTMJ_DIV8 0x6400607b
|
||||
#define MATCH_CV_ADD_DIV2 0x6c00207b
|
||||
#define MATCH_CV_ADD_DIV4 0x6c00407b
|
||||
#define MATCH_CV_ADD_DIV8 0x6c00607b
|
||||
#define MATCH_CV_SUB_DIV2 0x7400207b
|
||||
#define MATCH_CV_SUB_DIV4 0x7400407b
|
||||
#define MATCH_CV_SUB_DIV8 0x7400607b
|
||||
#define MASK_CV_ADD_H 0xfe00707f
|
||||
#define MASK_CV_ADD_B 0xfe00707f
|
||||
#define MASK_CV_ADD_SC_H 0xfe00707f
|
||||
#define MASK_CV_ADD_SC_B 0xfe00707f
|
||||
#define MASK_CV_ADD_SCI_H 0xfc00707f
|
||||
#define MASK_CV_ADD_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SUB_H 0xfe00707f
|
||||
#define MASK_CV_SUB_B 0xfe00707f
|
||||
#define MASK_CV_SUB_SC_H 0xfe00707f
|
||||
#define MASK_CV_SUB_SC_B 0xfe00707f
|
||||
#define MASK_CV_SUB_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SUB_SCI_B 0xfc00707f
|
||||
#define MASK_CV_AVG_H 0xfe00707f
|
||||
#define MASK_CV_AVG_B 0xfe00707f
|
||||
#define MASK_CV_AVG_SC_H 0xfe00707f
|
||||
#define MASK_CV_AVG_SC_B 0xfe00707f
|
||||
#define MASK_CV_AVG_SCI_H 0xfc00707f
|
||||
#define MASK_CV_AVG_SCI_B 0xfc00707f
|
||||
#define MASK_CV_AVGU_H 0xfe00707f
|
||||
#define MASK_CV_AVGU_B 0xfe00707f
|
||||
#define MASK_CV_AVGU_SC_H 0xfe00707f
|
||||
#define MASK_CV_AVGU_SC_B 0xfe00707f
|
||||
#define MASK_CV_AVGU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_AVGU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_MIN_H 0xfe00707f
|
||||
#define MASK_CV_MIN_B 0xfe00707f
|
||||
#define MASK_CV_MIN_SC_H 0xfe00707f
|
||||
#define MASK_CV_MIN_SC_B 0xfe00707f
|
||||
#define MASK_CV_MIN_SCI_H 0xfc00707f
|
||||
#define MASK_CV_MIN_SCI_B 0xfc00707f
|
||||
#define MASK_CV_MINU_H 0xfe00707f
|
||||
#define MASK_CV_MINU_B 0xfe00707f
|
||||
#define MASK_CV_MINU_SC_H 0xfe00707f
|
||||
#define MASK_CV_MINU_SC_B 0xfe00707f
|
||||
#define MASK_CV_MINU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_MINU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_MAX_H 0xfe00707f
|
||||
#define MASK_CV_MAX_B 0xfe00707f
|
||||
#define MASK_CV_MAX_SC_H 0xfe00707f
|
||||
#define MASK_CV_MAX_SC_B 0xfe00707f
|
||||
#define MASK_CV_MAX_SCI_H 0xfc00707f
|
||||
#define MASK_CV_MAX_SCI_B 0xfc00707f
|
||||
#define MASK_CV_MAXU_H 0xfe00707f
|
||||
#define MASK_CV_MAXU_B 0xfe00707f
|
||||
#define MASK_CV_MAXU_SC_H 0xfe00707f
|
||||
#define MASK_CV_MAXU_SC_B 0xfe00707f
|
||||
#define MASK_CV_MAXU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_MAXU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SRL_H 0xfe00707f
|
||||
#define MASK_CV_SRL_B 0xfe00707f
|
||||
#define MASK_CV_SRL_SC_H 0xfe00707f
|
||||
#define MASK_CV_SRL_SC_B 0xfe00707f
|
||||
#define MASK_CV_SRL_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SRL_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SRA_H 0xfe00707f
|
||||
#define MASK_CV_SRA_B 0xfe00707f
|
||||
#define MASK_CV_SRA_SC_H 0xfe00707f
|
||||
#define MASK_CV_SRA_SC_B 0xfe00707f
|
||||
#define MASK_CV_SRA_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SRA_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SLL_H 0xfe00707f
|
||||
#define MASK_CV_SLL_B 0xfe00707f
|
||||
#define MASK_CV_SLL_SC_H 0xfe00707f
|
||||
#define MASK_CV_SLL_SC_B 0xfe00707f
|
||||
#define MASK_CV_SLL_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SLL_SCI_B 0xfc00707f
|
||||
#define MASK_CV_OR_H 0xfe00707f
|
||||
#define MASK_CV_OR_B 0xfe00707f
|
||||
#define MASK_CV_OR_SC_H 0xfe00707f
|
||||
#define MASK_CV_OR_SC_B 0xfe00707f
|
||||
#define MASK_CV_OR_SCI_H 0xfc00707f
|
||||
#define MASK_CV_OR_SCI_B 0xfc00707f
|
||||
#define MASK_CV_XOR_H 0xfe00707f
|
||||
#define MASK_CV_XOR_B 0xfe00707f
|
||||
#define MASK_CV_XOR_SC_H 0xfe00707f
|
||||
#define MASK_CV_XOR_SC_B 0xfe00707f
|
||||
#define MASK_CV_XOR_SCI_H 0xfc00707f
|
||||
#define MASK_CV_XOR_SCI_B 0xfc00707f
|
||||
#define MASK_CV_AND_H 0xfe00707f
|
||||
#define MASK_CV_AND_B 0xfe00707f
|
||||
#define MASK_CV_AND_SC_H 0xfe00707f
|
||||
#define MASK_CV_AND_SC_B 0xfe00707f
|
||||
#define MASK_CV_AND_SCI_H 0xfc00707f
|
||||
#define MASK_CV_AND_SCI_B 0xfc00707f
|
||||
#define MASK_CV_ABS_H 0xfff0707f
|
||||
#define MASK_CV_ABS_B 0xfff0707f
|
||||
#define MASK_CV_DOTUP_H 0xfe00707f
|
||||
#define MASK_CV_DOTUP_B 0xfe00707f
|
||||
#define MASK_CV_DOTUP_SC_H 0xfe00707f
|
||||
#define MASK_CV_DOTUP_SC_B 0xfe00707f
|
||||
#define MASK_CV_DOTUP_SCI_H 0xfc00707f
|
||||
#define MASK_CV_DOTUP_SCI_B 0xfc00707f
|
||||
#define MASK_CV_DOTUSP_H 0xfe00707f
|
||||
#define MASK_CV_DOTUSP_B 0xfe00707f
|
||||
#define MASK_CV_DOTUSP_SC_H 0xfe00707f
|
||||
#define MASK_CV_DOTUSP_SC_B 0xfe00707f
|
||||
#define MASK_CV_DOTUSP_SCI_H 0xfc00707f
|
||||
#define MASK_CV_DOTUSP_SCI_B 0xfc00707f
|
||||
#define MASK_CV_DOTSP_H 0xfe00707f
|
||||
#define MASK_CV_DOTSP_B 0xfe00707f
|
||||
#define MASK_CV_DOTSP_SC_H 0xfe00707f
|
||||
#define MASK_CV_DOTSP_SC_B 0xfe00707f
|
||||
#define MASK_CV_DOTSP_SCI_H 0xfc00707f
|
||||
#define MASK_CV_DOTSP_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SDOTUP_H 0xfe00707f
|
||||
#define MASK_CV_SDOTUP_B 0xfe00707f
|
||||
#define MASK_CV_SDOTUP_SC_H 0xfe00707f
|
||||
#define MASK_CV_SDOTUP_SC_B 0xfe00707f
|
||||
#define MASK_CV_SDOTUP_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SDOTUP_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SDOTUSP_H 0xfe00707f
|
||||
#define MASK_CV_SDOTUSP_B 0xfe00707f
|
||||
#define MASK_CV_SDOTUSP_SC_H 0xfe00707f
|
||||
#define MASK_CV_SDOTUSP_SC_B 0xfe00707f
|
||||
#define MASK_CV_SDOTUSP_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SDOTUSP_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SDOTSP_H 0xfe00707f
|
||||
#define MASK_CV_SDOTSP_B 0xfe00707f
|
||||
#define MASK_CV_SDOTSP_SC_H 0xfe00707f
|
||||
#define MASK_CV_SDOTSP_SC_B 0xfe00707f
|
||||
#define MASK_CV_SDOTSP_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SDOTSP_SCI_B 0xfc00707f
|
||||
#define MASK_CV_EXTRACT_H 0xfc00707f
|
||||
#define MASK_CV_EXTRACT_B 0xfc00707f
|
||||
#define MASK_CV_EXTRACTU_H 0xfc00707f
|
||||
#define MASK_CV_EXTRACTU_B 0xfc00707f
|
||||
#define MASK_CV_INSERT_H 0xfc00707f
|
||||
#define MASK_CV_INSERT_B 0xfc00707f
|
||||
#define MASK_CV_SHUFFLE_H 0xfe00707f
|
||||
#define MASK_CV_SHUFFLE_B 0xfe00707f
|
||||
#define MASK_CV_SHUFFLE_SCI_H 0xfc00707f
|
||||
#define MASK_CV_SHUFFLEI0_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SHUFFLEI1_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SHUFFLEI2_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SHUFFLEI3_SCI_B 0xfc00707f
|
||||
#define MASK_CV_SHUFFLE2_H 0xfe00707f
|
||||
#define MASK_CV_SHUFFLE2_B 0xfe00707f
|
||||
#define MASK_CV_PACK 0xfe00707f
|
||||
#define MASK_CV_PACK_H 0xfe00707f
|
||||
#define MASK_CV_PACKHI_B 0xfe00707f
|
||||
#define MASK_CV_PACKLO_B 0xfe00707f
|
||||
#define MASK_CV_CMPEQ_H 0xfe00707f
|
||||
#define MASK_CV_CMPEQ_B 0xfe00707f
|
||||
#define MASK_CV_CMPEQ_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPEQ_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPEQ_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPEQ_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPNE_H 0xfe00707f
|
||||
#define MASK_CV_CMPNE_B 0xfe00707f
|
||||
#define MASK_CV_CMPNE_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPNE_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPNE_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPNE_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPGT_H 0xfe00707f
|
||||
#define MASK_CV_CMPGT_B 0xfe00707f
|
||||
#define MASK_CV_CMPGT_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPGT_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPGT_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPGT_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPGE_H 0xfe00707f
|
||||
#define MASK_CV_CMPGE_B 0xfe00707f
|
||||
#define MASK_CV_CMPGE_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPGE_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPGE_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPGE_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPLT_H 0xfe00707f
|
||||
#define MASK_CV_CMPLT_B 0xfe00707f
|
||||
#define MASK_CV_CMPLT_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPLT_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPLT_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPLT_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPLE_H 0xfe00707f
|
||||
#define MASK_CV_CMPLE_B 0xfe00707f
|
||||
#define MASK_CV_CMPLE_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPLE_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPLE_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPLE_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPGTU_H 0xfe00707f
|
||||
#define MASK_CV_CMPGTU_B 0xfe00707f
|
||||
#define MASK_CV_CMPGTU_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPGTU_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPGTU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPGTU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPGEU_H 0xfe00707f
|
||||
#define MASK_CV_CMPGEU_B 0xfe00707f
|
||||
#define MASK_CV_CMPGEU_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPGEU_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPGEU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPGEU_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPGEU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPGEU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPLTU_H 0xfe00707f
|
||||
#define MASK_CV_CMPLTU_B 0xfe00707f
|
||||
#define MASK_CV_CMPLTU_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPLTU_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPLTU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPLTU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CMPLEU_H 0xfe00707f
|
||||
#define MASK_CV_CMPLEU_B 0xfe00707f
|
||||
#define MASK_CV_CMPLEU_SC_H 0xfe00707f
|
||||
#define MASK_CV_CMPLEU_SC_B 0xfe00707f
|
||||
#define MASK_CV_CMPLEU_SCI_H 0xfc00707f
|
||||
#define MASK_CV_CMPLEU_SCI_B 0xfc00707f
|
||||
#define MASK_CV_CPLXMUL_R 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_I 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_R_DIV2 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_I_DIV2 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_R_DIV4 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_I_DIV4 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_R_DIV8 0xfe00707f
|
||||
#define MASK_CV_CPLXMUL_I_DIV8 0xfe00707f
|
||||
#define MASK_CV_CPLXCONJ 0xfff0707f
|
||||
#define MASK_CV_SUBROTMJ 0xfe00707f
|
||||
#define MASK_CV_SUBROTMJ_DIV2 0xfe00707f
|
||||
#define MASK_CV_SUBROTMJ_DIV4 0xfe00707f
|
||||
#define MASK_CV_SUBROTMJ_DIV8 0xfe00707f
|
||||
#define MASK_CV_ADD_DIV2 0xfe00707f
|
||||
#define MASK_CV_ADD_DIV4 0xfe00707f
|
||||
#define MASK_CV_ADD_DIV8 0xfe00707f
|
||||
#define MASK_CV_SUB_DIV2 0xfe00707f
|
||||
#define MASK_CV_SUB_DIV4 0xfe00707f
|
||||
#define MASK_CV_SUB_DIV8 0xfe00707f
|
||||
/* Vendor-specific (T-Head) XTheadBa instructions. */
|
||||
#define MATCH_TH_ADDSL 0x0000100b
|
||||
#define MASK_TH_ADDSL 0xf800707f
|
||||
|
||||
@@ -126,6 +126,10 @@ static inline unsigned int riscv_insn_length (insn_t insn)
|
||||
(RV_X(x, 25, 5))
|
||||
#define EXTRACT_CV_BITMANIP_UIMM2(x) \
|
||||
(RV_X(x, 25, 2))
|
||||
#define EXTRACT_CV_SIMD_IMM6(x) \
|
||||
((RV_X(x, 25, 1)) | (RV_X(x, 20, 5) << 1) | (RV_IMM_SIGN_N(x, 20, 5) << 5))
|
||||
#define EXTRACT_CV_SIMD_UIMM6(x) \
|
||||
((RV_X(x, 25, 1)) | (RV_X(x, 20, 5) << 1))
|
||||
|
||||
#define ENCODE_ITYPE_IMM(x) \
|
||||
(RV_X(x, 0, 12) << 20)
|
||||
@@ -188,6 +192,10 @@ static inline unsigned int riscv_insn_length (insn_t insn)
|
||||
(RV_X(x, 0, 5) << 25)
|
||||
#define ENCODE_CV_BITMANIP_UIMM2(x) \
|
||||
(RV_X(x, 0, 2) << 25)
|
||||
#define ENCODE_CV_SIMD_IMM6(x) \
|
||||
((RV_X(x, 0, 1) << 25) | (RV_X(x, 1, 5) << 20))
|
||||
#define ENCODE_CV_SIMD_UIMM6(x) \
|
||||
((RV_X(x, 0, 1) << 25) | (RV_X(x, 1, 5) << 20))
|
||||
|
||||
#define VALID_ITYPE_IMM(x) (EXTRACT_ITYPE_IMM(ENCODE_ITYPE_IMM(x)) == (x))
|
||||
#define VALID_STYPE_IMM(x) (EXTRACT_STYPE_IMM(ENCODE_STYPE_IMM(x)) == (x))
|
||||
@@ -523,6 +531,7 @@ enum riscv_insn_class
|
||||
INSN_CLASS_XCVELW,
|
||||
INSN_CLASS_XCVMAC,
|
||||
INSN_CLASS_XCVMEM,
|
||||
INSN_CLASS_XCVSIMD,
|
||||
INSN_CLASS_XTHEADBA,
|
||||
INSN_CLASS_XTHEADBB,
|
||||
INSN_CLASS_XTHEADBS,
|
||||
|
||||
@@ -822,6 +822,10 @@ print_insn_args (const char *oparg, insn_t l, bfd_vma pc, disassemble_info *info
|
||||
print (info->stream, dis_style_immediate, "%d",
|
||||
((int) EXTRACT_CV_BI_IMM5 (l)));
|
||||
break;
|
||||
case '5':
|
||||
print (info->stream, dis_style_immediate, "%d",
|
||||
((int) EXTRACT_CV_SIMD_IMM6 (l)));
|
||||
break;
|
||||
case '6':
|
||||
print (info->stream, dis_style_immediate, "%d",
|
||||
((int) EXTRACT_CV_BITMANIP_UIMM5 (l)));
|
||||
@@ -830,6 +834,11 @@ print_insn_args (const char *oparg, insn_t l, bfd_vma pc, disassemble_info *info
|
||||
print (info->stream, dis_style_immediate, "%d",
|
||||
((int) EXTRACT_CV_BITMANIP_UIMM2 (l)));
|
||||
break;
|
||||
case '8':
|
||||
print (info->stream, dis_style_immediate, "%d",
|
||||
((int) EXTRACT_CV_SIMD_UIMM6 (l)));
|
||||
++oparg;
|
||||
break;
|
||||
default:
|
||||
goto undefined_modifier;
|
||||
}
|
||||
|
||||
@@ -2367,6 +2367,228 @@ const struct riscv_opcode riscv_opcodes[] =
|
||||
{"cv.bset", 0, INSN_CLASS_XCVBITMANIP, "d,s,Xc6,Xc2", MATCH_CV_BSET, MASK_CV_BSET, match_opcode, 0},
|
||||
{"cv.bitrev", 0, INSN_CLASS_XCVBITMANIP, "d,s,Xc7,Xc2", MATCH_CV_BITREV, MASK_CV_BITREV, match_opcode, 0},
|
||||
|
||||
/* Vendor-specific (CORE-V) Xcvsimd Instructions */
|
||||
{"cv.add.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_H, MASK_CV_ADD_H, match_opcode, 0},
|
||||
{"cv.add.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_B, MASK_CV_ADD_B, match_opcode, 0},
|
||||
{"cv.add.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_SC_H, MASK_CV_ADD_SC_H, match_opcode, 0},
|
||||
{"cv.add.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_SC_B, MASK_CV_ADD_SC_B, match_opcode, 0},
|
||||
{"cv.add.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_ADD_SCI_H, MASK_CV_ADD_SCI_H, match_opcode, 0},
|
||||
{"cv.add.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_ADD_SCI_B, MASK_CV_ADD_SCI_B, match_opcode, 0},
|
||||
{"cv.sub.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_H, MASK_CV_SUB_H, match_opcode, 0},
|
||||
{"cv.sub.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_B, MASK_CV_SUB_B, match_opcode, 0},
|
||||
{"cv.sub.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_SC_H, MASK_CV_SUB_SC_H, match_opcode, 0},
|
||||
{"cv.sub.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_SC_B, MASK_CV_SUB_SC_B, match_opcode, 0},
|
||||
{"cv.sub.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_SUB_SCI_H, MASK_CV_SUB_SCI_H, match_opcode, 0},
|
||||
{"cv.sub.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_SUB_SCI_B, MASK_CV_SUB_SCI_B, match_opcode, 0},
|
||||
{"cv.avg.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVG_H, MASK_CV_AVG_H, match_opcode, 0},
|
||||
{"cv.avg.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVG_B, MASK_CV_AVG_B, match_opcode, 0},
|
||||
{"cv.avg.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVG_SC_H, MASK_CV_AVG_SC_H, match_opcode, 0},
|
||||
{"cv.avg.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVG_SC_B, MASK_CV_AVG_SC_B, match_opcode, 0},
|
||||
{"cv.avg.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_AVG_SCI_H, MASK_CV_AVG_SCI_H, match_opcode, 0},
|
||||
{"cv.avg.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_AVG_SCI_B, MASK_CV_AVG_SCI_B, match_opcode, 0},
|
||||
{"cv.avgu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVGU_H, MASK_CV_AVGU_H, match_opcode, 0},
|
||||
{"cv.avgu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVGU_B, MASK_CV_AVGU_B, match_opcode, 0},
|
||||
{"cv.avgu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVGU_SC_H, MASK_CV_AVGU_SC_H, match_opcode, 0},
|
||||
{"cv.avgu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AVGU_SC_B, MASK_CV_AVGU_SC_B, match_opcode, 0},
|
||||
{"cv.avgu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_AVGU_SCI_H, MASK_CV_AVGU_SCI_H, match_opcode, 0},
|
||||
{"cv.avgu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_AVGU_SCI_B, MASK_CV_AVGU_SCI_B, match_opcode, 0},
|
||||
{"cv.min.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MIN_H, MASK_CV_MIN_H, match_opcode, 0},
|
||||
{"cv.min.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MIN_B, MASK_CV_MIN_B, match_opcode, 0},
|
||||
{"cv.min.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MIN_SC_H, MASK_CV_MIN_SC_H, match_opcode, 0},
|
||||
{"cv.min.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MIN_SC_B, MASK_CV_MIN_SC_B, match_opcode, 0},
|
||||
{"cv.min.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_MIN_SCI_H, MASK_CV_MIN_SCI_H, match_opcode, 0},
|
||||
{"cv.min.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_MIN_SCI_B, MASK_CV_MIN_SCI_B, match_opcode, 0},
|
||||
{"cv.minu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MINU_H, MASK_CV_MINU_H, match_opcode, 0},
|
||||
{"cv.minu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MINU_B, MASK_CV_MINU_B, match_opcode, 0},
|
||||
{"cv.minu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MINU_SC_H, MASK_CV_MINU_SC_H, match_opcode, 0},
|
||||
{"cv.minu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MINU_SC_B, MASK_CV_MINU_SC_B, match_opcode, 0},
|
||||
{"cv.minu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_MINU_SCI_H, MASK_CV_MINU_SCI_H, match_opcode, 0},
|
||||
{"cv.minu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_MINU_SCI_B, MASK_CV_MINU_SCI_B, match_opcode, 0},
|
||||
{"cv.max.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAX_H, MASK_CV_MAX_H, match_opcode, 0},
|
||||
{"cv.max.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAX_B, MASK_CV_MAX_B, match_opcode, 0},
|
||||
{"cv.max.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAX_SC_H, MASK_CV_MAX_SC_H, match_opcode, 0},
|
||||
{"cv.max.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAX_SC_B, MASK_CV_MAX_SC_B, match_opcode, 0},
|
||||
{"cv.max.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_MAX_SCI_H, MASK_CV_MAX_SCI_H, match_opcode, 0},
|
||||
{"cv.max.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_MAX_SCI_B, MASK_CV_MAX_SCI_B, match_opcode, 0},
|
||||
{"cv.maxu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAXU_H, MASK_CV_MAXU_H, match_opcode, 0},
|
||||
{"cv.maxu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAXU_B, MASK_CV_MAXU_B, match_opcode, 0},
|
||||
{"cv.maxu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAXU_SC_H, MASK_CV_MAXU_SC_H, match_opcode, 0},
|
||||
{"cv.maxu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_MAXU_SC_B, MASK_CV_MAXU_SC_B, match_opcode, 0},
|
||||
{"cv.maxu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_MAXU_SCI_H, MASK_CV_MAXU_SCI_H, match_opcode, 0},
|
||||
{"cv.maxu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_MAXU_SCI_B, MASK_CV_MAXU_SCI_B, match_opcode, 0},
|
||||
{"cv.srl.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRL_H, MASK_CV_SRL_H, match_opcode, 0},
|
||||
{"cv.srl.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRL_B, MASK_CV_SRL_B, match_opcode, 0},
|
||||
{"cv.srl.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRL_SC_H, MASK_CV_SRL_SC_H, match_opcode, 0},
|
||||
{"cv.srl.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRL_SC_B, MASK_CV_SRL_SC_B, match_opcode, 0},
|
||||
{"cv.srl.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc84", MATCH_CV_SRL_SCI_H, MASK_CV_SRL_SCI_H, match_opcode, 0},
|
||||
{"cv.srl.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc83", MATCH_CV_SRL_SCI_B, MASK_CV_SRL_SCI_B, match_opcode, 0},
|
||||
{"cv.sra.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRA_H, MASK_CV_SRA_H, match_opcode, 0},
|
||||
{"cv.sra.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRA_B, MASK_CV_SRA_B, match_opcode, 0},
|
||||
{"cv.sra.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRA_SC_H, MASK_CV_SRA_SC_H, match_opcode, 0},
|
||||
{"cv.sra.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SRA_SC_B, MASK_CV_SRA_SC_B, match_opcode, 0},
|
||||
{"cv.sra.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc84", MATCH_CV_SRA_SCI_H, MASK_CV_SRA_SCI_H, match_opcode, 0},
|
||||
{"cv.sra.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc83", MATCH_CV_SRA_SCI_B, MASK_CV_SRA_SCI_B, match_opcode, 0},
|
||||
{"cv.sll.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SLL_H, MASK_CV_SLL_H, match_opcode, 0},
|
||||
{"cv.sll.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SLL_B, MASK_CV_SLL_B, match_opcode, 0},
|
||||
{"cv.sll.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SLL_SC_H, MASK_CV_SLL_SC_H, match_opcode, 0},
|
||||
{"cv.sll.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SLL_SC_B, MASK_CV_SLL_SC_B, match_opcode, 0},
|
||||
{"cv.sll.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc84", MATCH_CV_SLL_SCI_H, MASK_CV_SLL_SCI_H, match_opcode, 0},
|
||||
{"cv.sll.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc83", MATCH_CV_SLL_SCI_B, MASK_CV_SLL_SCI_B, match_opcode, 0},
|
||||
{"cv.or.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_OR_H, MASK_CV_OR_H, match_opcode, 0},
|
||||
{"cv.or.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_OR_B, MASK_CV_OR_B, match_opcode, 0},
|
||||
{"cv.or.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_OR_SC_H, MASK_CV_OR_SC_H, match_opcode, 0},
|
||||
{"cv.or.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_OR_SC_B, MASK_CV_OR_SC_B, match_opcode, 0},
|
||||
{"cv.or.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_OR_SCI_H, MASK_CV_OR_SCI_H, match_opcode, 0},
|
||||
{"cv.or.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_OR_SCI_B, MASK_CV_OR_SCI_B, match_opcode, 0},
|
||||
{"cv.xor.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_XOR_H, MASK_CV_XOR_H, match_opcode, 0},
|
||||
{"cv.xor.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_XOR_B, MASK_CV_XOR_B, match_opcode, 0},
|
||||
{"cv.xor.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_XOR_SC_H, MASK_CV_XOR_SC_H, match_opcode, 0},
|
||||
{"cv.xor.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_XOR_SC_B, MASK_CV_XOR_SC_B, match_opcode, 0},
|
||||
{"cv.xor.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_XOR_SCI_H, MASK_CV_XOR_SCI_H, match_opcode, 0},
|
||||
{"cv.xor.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_XOR_SCI_B, MASK_CV_XOR_SCI_B, match_opcode, 0},
|
||||
{"cv.and.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AND_H, MASK_CV_AND_H, match_opcode, 0},
|
||||
{"cv.and.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AND_B, MASK_CV_AND_B, match_opcode, 0},
|
||||
{"cv.and.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AND_SC_H, MASK_CV_AND_SC_H, match_opcode, 0},
|
||||
{"cv.and.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_AND_SC_B, MASK_CV_AND_SC_B, match_opcode, 0},
|
||||
{"cv.and.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_AND_SCI_H, MASK_CV_AND_SCI_H, match_opcode, 0},
|
||||
{"cv.and.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_AND_SCI_B, MASK_CV_AND_SCI_B, match_opcode, 0},
|
||||
{"cv.abs.h", 0, INSN_CLASS_XCVSIMD, "d,s", MATCH_CV_ABS_H, MASK_CV_ABS_H, match_opcode, 0},
|
||||
{"cv.abs.b", 0, INSN_CLASS_XCVSIMD, "d,s", MATCH_CV_ABS_B, MASK_CV_ABS_B, match_opcode, 0},
|
||||
{"cv.dotup.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUP_H, MASK_CV_DOTUP_H, match_opcode, 0},
|
||||
{"cv.dotup.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUP_B, MASK_CV_DOTUP_B, match_opcode, 0},
|
||||
{"cv.dotup.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUP_SC_H, MASK_CV_DOTUP_SC_H, match_opcode, 0},
|
||||
{"cv.dotup.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUP_SC_B, MASK_CV_DOTUP_SC_B, match_opcode, 0},
|
||||
{"cv.dotup.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_DOTUP_SCI_H, MASK_CV_DOTUP_SCI_H, match_opcode, 0},
|
||||
{"cv.dotup.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_DOTUP_SCI_B, MASK_CV_DOTUP_SCI_B, match_opcode, 0},
|
||||
{"cv.dotusp.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUSP_H, MASK_CV_DOTUSP_H, match_opcode, 0},
|
||||
{"cv.dotusp.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUSP_B, MASK_CV_DOTUSP_B, match_opcode, 0},
|
||||
{"cv.dotusp.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUSP_SC_H, MASK_CV_DOTUSP_SC_H, match_opcode, 0},
|
||||
{"cv.dotusp.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTUSP_SC_B, MASK_CV_DOTUSP_SC_B, match_opcode, 0},
|
||||
{"cv.dotusp.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_DOTUSP_SCI_H, MASK_CV_DOTUSP_SCI_H, match_opcode, 0},
|
||||
{"cv.dotusp.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_DOTUSP_SCI_B, MASK_CV_DOTUSP_SCI_B, match_opcode, 0},
|
||||
{"cv.dotsp.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTSP_H, MASK_CV_DOTSP_H, match_opcode, 0},
|
||||
{"cv.dotsp.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTSP_B, MASK_CV_DOTSP_B, match_opcode, 0},
|
||||
{"cv.dotsp.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTSP_SC_H, MASK_CV_DOTSP_SC_H, match_opcode, 0},
|
||||
{"cv.dotsp.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_DOTSP_SC_B, MASK_CV_DOTSP_SC_B, match_opcode, 0},
|
||||
{"cv.dotsp.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_DOTSP_SCI_H, MASK_CV_DOTSP_SCI_H, match_opcode, 0},
|
||||
{"cv.dotsp.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_DOTSP_SCI_B, MASK_CV_DOTSP_SCI_B, match_opcode, 0},
|
||||
{"cv.sdotup.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUP_H, MASK_CV_SDOTUP_H, match_opcode, 0},
|
||||
{"cv.sdotup.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUP_B, MASK_CV_SDOTUP_B, match_opcode, 0},
|
||||
{"cv.sdotup.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUP_SC_H, MASK_CV_SDOTUP_SC_H, match_opcode, 0},
|
||||
{"cv.sdotup.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUP_SC_B, MASK_CV_SDOTUP_SC_B, match_opcode, 0},
|
||||
{"cv.sdotup.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_SDOTUP_SCI_H, MASK_CV_SDOTUP_SCI_H, match_opcode, 0},
|
||||
{"cv.sdotup.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_SDOTUP_SCI_B, MASK_CV_SDOTUP_SCI_B, match_opcode, 0},
|
||||
{"cv.sdotusp.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUSP_H, MASK_CV_SDOTUSP_H, match_opcode, 0},
|
||||
{"cv.sdotusp.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUSP_B, MASK_CV_SDOTUSP_B, match_opcode, 0},
|
||||
{"cv.sdotusp.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUSP_SC_H, MASK_CV_SDOTUSP_SC_H, match_opcode, 0},
|
||||
{"cv.sdotusp.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTUSP_SC_B, MASK_CV_SDOTUSP_SC_B, match_opcode, 0},
|
||||
{"cv.sdotusp.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_SDOTUSP_SCI_H, MASK_CV_SDOTUSP_SCI_H, match_opcode, 0},
|
||||
{"cv.sdotusp.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_SDOTUSP_SCI_B, MASK_CV_SDOTUSP_SCI_B, match_opcode, 0},
|
||||
{"cv.sdotsp.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTSP_H, MASK_CV_SDOTSP_H, match_opcode, 0},
|
||||
{"cv.sdotsp.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTSP_B, MASK_CV_SDOTSP_B, match_opcode, 0},
|
||||
{"cv.sdotsp.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTSP_SC_H, MASK_CV_SDOTSP_SC_H, match_opcode, 0},
|
||||
{"cv.sdotsp.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SDOTSP_SC_B, MASK_CV_SDOTSP_SC_B, match_opcode, 0},
|
||||
{"cv.sdotsp.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_SDOTSP_SCI_H, MASK_CV_SDOTSP_SCI_H, match_opcode, 0},
|
||||
{"cv.sdotsp.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_SDOTSP_SCI_B, MASK_CV_SDOTSP_SCI_B, match_opcode, 0},
|
||||
{"cv.extract.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc81", MATCH_CV_EXTRACT_H, MASK_CV_EXTRACT_H, match_opcode, 0},
|
||||
{"cv.extract.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc82", MATCH_CV_EXTRACT_B, MASK_CV_EXTRACT_B, match_opcode, 0},
|
||||
{"cv.extractu.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc81", MATCH_CV_EXTRACTU_H, MASK_CV_EXTRACTU_H, match_opcode, 0},
|
||||
{"cv.extractu.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc82", MATCH_CV_EXTRACTU_B, MASK_CV_EXTRACTU_B, match_opcode, 0},
|
||||
{"cv.insert.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc81", MATCH_CV_INSERT_H, MASK_CV_INSERT_H, match_opcode, 0},
|
||||
{"cv.insert.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc82", MATCH_CV_INSERT_B, MASK_CV_INSERT_B, match_opcode, 0},
|
||||
{"cv.shuffle.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SHUFFLE_H, MASK_CV_SHUFFLE_H, match_opcode, 0},
|
||||
{"cv.shuffle.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SHUFFLE_B, MASK_CV_SHUFFLE_B, match_opcode, 0},
|
||||
{"cv.shuffle.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc82", MATCH_CV_SHUFFLE_SCI_H, MASK_CV_SHUFFLE_SCI_H, match_opcode, 0},
|
||||
{"cv.shufflei0.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_SHUFFLEI0_SCI_B, MASK_CV_SHUFFLEI0_SCI_B, match_opcode, 0},
|
||||
{"cv.shufflei1.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_SHUFFLEI1_SCI_B, MASK_CV_SHUFFLEI1_SCI_B, match_opcode, 0},
|
||||
{"cv.shufflei2.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_SHUFFLEI2_SCI_B, MASK_CV_SHUFFLEI2_SCI_B, match_opcode, 0},
|
||||
{"cv.shufflei3.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_SHUFFLEI3_SCI_B, MASK_CV_SHUFFLEI3_SCI_B, match_opcode, 0},
|
||||
{"cv.shuffle2.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SHUFFLE2_H, MASK_CV_SHUFFLE2_H, match_opcode, 0},
|
||||
{"cv.shuffle2.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SHUFFLE2_B, MASK_CV_SHUFFLE2_B, match_opcode, 0},
|
||||
{"cv.pack", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_PACK, MASK_CV_PACK, match_opcode, 0},
|
||||
{"cv.pack.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_PACK_H, MASK_CV_PACK_H, match_opcode, 0},
|
||||
{"cv.packhi.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_PACKHI_B, MASK_CV_PACKHI_B, match_opcode, 0},
|
||||
{"cv.packlo.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_PACKLO_B, MASK_CV_PACKLO_B, match_opcode, 0},
|
||||
{"cv.cmpeq.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPEQ_H, MASK_CV_CMPEQ_H, match_opcode, 0},
|
||||
{"cv.cmpeq.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPEQ_B, MASK_CV_CMPEQ_B, match_opcode, 0},
|
||||
{"cv.cmpeq.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPEQ_SC_H, MASK_CV_CMPEQ_SC_H, match_opcode, 0},
|
||||
{"cv.cmpeq.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPEQ_SC_B, MASK_CV_CMPEQ_SC_B, match_opcode, 0},
|
||||
{"cv.cmpeq.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPEQ_SCI_H, MASK_CV_CMPEQ_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpeq.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPEQ_SCI_B, MASK_CV_CMPEQ_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpne.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPNE_H, MASK_CV_CMPNE_H, match_opcode, 0},
|
||||
{"cv.cmpne.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPNE_B, MASK_CV_CMPNE_B, match_opcode, 0},
|
||||
{"cv.cmpne.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPNE_SC_H, MASK_CV_CMPNE_SC_H, match_opcode, 0},
|
||||
{"cv.cmpne.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPNE_SC_B, MASK_CV_CMPNE_SC_B, match_opcode, 0},
|
||||
{"cv.cmpne.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPNE_SCI_H, MASK_CV_CMPNE_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpne.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPNE_SCI_B, MASK_CV_CMPNE_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpgt.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGT_H, MASK_CV_CMPGT_H, match_opcode, 0},
|
||||
{"cv.cmpgt.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGT_B, MASK_CV_CMPGT_B, match_opcode, 0},
|
||||
{"cv.cmpgt.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGT_SC_H, MASK_CV_CMPGT_SC_H, match_opcode, 0},
|
||||
{"cv.cmpgt.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGT_SC_B, MASK_CV_CMPGT_SC_B, match_opcode, 0},
|
||||
{"cv.cmpgt.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPGT_SCI_H, MASK_CV_CMPGT_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpgt.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPGT_SCI_B, MASK_CV_CMPGT_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpge.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGE_H, MASK_CV_CMPGE_H, match_opcode, 0},
|
||||
{"cv.cmpge.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGE_B, MASK_CV_CMPGE_B, match_opcode, 0},
|
||||
{"cv.cmpge.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGE_SC_H, MASK_CV_CMPGE_SC_H, match_opcode, 0},
|
||||
{"cv.cmpge.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGE_SC_B, MASK_CV_CMPGE_SC_B, match_opcode, 0},
|
||||
{"cv.cmpge.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPGE_SCI_H, MASK_CV_CMPGE_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpge.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPGE_SCI_B, MASK_CV_CMPGE_SCI_B, match_opcode, 0},
|
||||
{"cv.cmplt.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLT_H, MASK_CV_CMPLT_H, match_opcode, 0},
|
||||
{"cv.cmplt.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLT_B, MASK_CV_CMPLT_B, match_opcode, 0},
|
||||
{"cv.cmplt.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLT_SC_H, MASK_CV_CMPLT_SC_H, match_opcode, 0},
|
||||
{"cv.cmplt.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLT_SC_B, MASK_CV_CMPLT_SC_B, match_opcode, 0},
|
||||
{"cv.cmplt.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPLT_SCI_H, MASK_CV_CMPLT_SCI_H, match_opcode, 0},
|
||||
{"cv.cmplt.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPLT_SCI_B, MASK_CV_CMPLT_SCI_B, match_opcode, 0},
|
||||
{"cv.cmple.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLE_H, MASK_CV_CMPLE_H, match_opcode, 0},
|
||||
{"cv.cmple.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLE_B, MASK_CV_CMPLE_B, match_opcode, 0},
|
||||
{"cv.cmple.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLE_SC_H, MASK_CV_CMPLE_SC_H, match_opcode, 0},
|
||||
{"cv.cmple.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLE_SC_B, MASK_CV_CMPLE_SC_B, match_opcode, 0},
|
||||
{"cv.cmple.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPLE_SCI_H, MASK_CV_CMPLE_SCI_H, match_opcode, 0},
|
||||
{"cv.cmple.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc5", MATCH_CV_CMPLE_SCI_B, MASK_CV_CMPLE_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpgtu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGTU_H, MASK_CV_CMPGTU_H, match_opcode, 0},
|
||||
{"cv.cmpgtu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGTU_B, MASK_CV_CMPGTU_B, match_opcode, 0},
|
||||
{"cv.cmpgtu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGTU_SC_H, MASK_CV_CMPGTU_SC_H, match_opcode, 0},
|
||||
{"cv.cmpgtu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGTU_SC_B, MASK_CV_CMPGTU_SC_B, match_opcode, 0},
|
||||
{"cv.cmpgtu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPGTU_SCI_H, MASK_CV_CMPGTU_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpgtu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPGTU_SCI_B, MASK_CV_CMPGTU_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpgeu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGEU_H, MASK_CV_CMPGEU_H, match_opcode, 0},
|
||||
{"cv.cmpgeu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGEU_B, MASK_CV_CMPGEU_B, match_opcode, 0},
|
||||
{"cv.cmpgeu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGEU_SC_H, MASK_CV_CMPGEU_SC_H, match_opcode, 0},
|
||||
{"cv.cmpgeu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPGEU_SC_B, MASK_CV_CMPGEU_SC_B, match_opcode, 0},
|
||||
{"cv.cmpgeu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPGEU_SCI_H, MASK_CV_CMPGEU_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpgeu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPGEU_SCI_B, MASK_CV_CMPGEU_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpltu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLTU_H, MASK_CV_CMPLTU_H, match_opcode, 0},
|
||||
{"cv.cmpltu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLTU_B, MASK_CV_CMPLTU_B, match_opcode, 0},
|
||||
{"cv.cmpltu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLTU_SC_H, MASK_CV_CMPLTU_SC_H, match_opcode, 0},
|
||||
{"cv.cmpltu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLTU_SC_B, MASK_CV_CMPLTU_SC_B, match_opcode, 0},
|
||||
{"cv.cmpltu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPLTU_SCI_H, MASK_CV_CMPLTU_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpltu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPLTU_SCI_B, MASK_CV_CMPLTU_SCI_B, match_opcode, 0},
|
||||
{"cv.cmpleu.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLEU_H, MASK_CV_CMPLEU_H, match_opcode, 0},
|
||||
{"cv.cmpleu.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLEU_B, MASK_CV_CMPLEU_B, match_opcode, 0},
|
||||
{"cv.cmpleu.sc.h", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLEU_SC_H, MASK_CV_CMPLEU_SC_H, match_opcode, 0},
|
||||
{"cv.cmpleu.sc.b", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CMPLEU_SC_B, MASK_CV_CMPLEU_SC_B, match_opcode, 0},
|
||||
{"cv.cmpleu.sci.h", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPLEU_SCI_H, MASK_CV_CMPLEU_SCI_H, match_opcode, 0},
|
||||
{"cv.cmpleu.sci.b", 0, INSN_CLASS_XCVSIMD, "d,s,Xc80", MATCH_CV_CMPLEU_SCI_B, MASK_CV_CMPLEU_SCI_B, match_opcode, 0},
|
||||
{"cv.cplxmul.r", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_R, MASK_CV_CPLXMUL_R, match_opcode, 0},
|
||||
{"cv.cplxmul.i", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_I, MASK_CV_CPLXMUL_I, match_opcode, 0},
|
||||
{"cv.cplxmul.r.div2", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_R_DIV2, MASK_CV_CPLXMUL_R_DIV2, match_opcode, 0},
|
||||
{"cv.cplxmul.i.div2", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_I_DIV2, MASK_CV_CPLXMUL_I_DIV2, match_opcode, 0},
|
||||
{"cv.cplxmul.r.div4", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_R_DIV4, MASK_CV_CPLXMUL_R_DIV4, match_opcode, 0},
|
||||
{"cv.cplxmul.i.div4", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_I_DIV4, MASK_CV_CPLXMUL_I_DIV4, match_opcode, 0},
|
||||
{"cv.cplxmul.r.div8", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_R_DIV8, MASK_CV_CPLXMUL_R_DIV8, match_opcode, 0},
|
||||
{"cv.cplxmul.i.div8", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_CPLXMUL_I_DIV8, MASK_CV_CPLXMUL_I_DIV8, match_opcode, 0},
|
||||
{"cv.cplxconj", 0, INSN_CLASS_XCVSIMD, "d,s", MATCH_CV_CPLXCONJ, MASK_CV_CPLXCONJ, match_opcode, 0},
|
||||
{"cv.subrotmj", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUBROTMJ, MASK_CV_SUBROTMJ, match_opcode, 0},
|
||||
{"cv.subrotmj.div2", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUBROTMJ_DIV2, MASK_CV_SUBROTMJ_DIV2, match_opcode, 0},
|
||||
{"cv.subrotmj.div4", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUBROTMJ_DIV4, MASK_CV_SUBROTMJ_DIV4, match_opcode, 0},
|
||||
{"cv.subrotmj.div8", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUBROTMJ_DIV8, MASK_CV_SUBROTMJ_DIV8, match_opcode, 0},
|
||||
{"cv.add.div2", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_DIV2, MASK_CV_ADD_DIV2, match_opcode, 0},
|
||||
{"cv.add.div4", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_DIV4, MASK_CV_ADD_DIV4, match_opcode, 0},
|
||||
{"cv.add.div8", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_ADD_DIV8, MASK_CV_ADD_DIV8, match_opcode, 0},
|
||||
{"cv.sub.div2", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_DIV2, MASK_CV_SUB_DIV2, match_opcode, 0},
|
||||
{"cv.sub.div4", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_DIV4, MASK_CV_SUB_DIV4, match_opcode, 0},
|
||||
{"cv.sub.div8", 0, INSN_CLASS_XCVSIMD, "d,s,t", MATCH_CV_SUB_DIV8, MASK_CV_SUB_DIV8, match_opcode, 0},
|
||||
|
||||
/* Vendor-specific (T-Head) XTheadBa instructions. */
|
||||
{"th.addsl", 0, INSN_CLASS_XTHEADBA, "d,s,t,Xtu2@25", MATCH_TH_ADDSL, MASK_TH_ADDSL, match_opcode, 0},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user