|
|
|
@ -1564,32 +1564,18 @@ |
|
|
|
#define MASK_VASUB_VV 0xfc00707f |
|
|
|
#define MATCH_VMV_X_S 0x42002057 |
|
|
|
#define MASK_VMV_X_S 0xfe0ff07f |
|
|
|
#define MATCH_VPOPC_M 0x40082057 |
|
|
|
#define MASK_VPOPC_M 0xfc0ff07f |
|
|
|
#define MATCH_VFIRST_M 0x4008a057 |
|
|
|
#define MASK_VFIRST_M 0xfc0ff07f |
|
|
|
#define MATCH_VZEXT_VF2 0x48032057 |
|
|
|
#define MASK_VZEXT_VF2 0xfc0ff07f |
|
|
|
#define MATCH_VSEXT_VF2 0x4803a057 |
|
|
|
#define MASK_VSEXT_VF2 0xfc0ff07f |
|
|
|
#define MATCH_VZEXT_VF4 0x48022057 |
|
|
|
#define MASK_VZEXT_VF4 0xfc0ff07f |
|
|
|
#define MATCH_VSEXT_VF4 0x4802a057 |
|
|
|
#define MASK_VSEXT_VF4 0xfc0ff07f |
|
|
|
#define MATCH_VZEXT_VF8 0x48012057 |
|
|
|
#define MASK_VZEXT_VF8 0xfc0ff07f |
|
|
|
#define MATCH_VSEXT_VF8 0x4801a057 |
|
|
|
#define MASK_VSEXT_VF8 0xfc0ff07f |
|
|
|
#define MATCH_VMSBF_M 0x5000a057 |
|
|
|
#define MASK_VMSBF_M 0xfc0ff07f |
|
|
|
#define MATCH_VMSOF_M 0x50012057 |
|
|
|
#define MASK_VMSOF_M 0xfc0ff07f |
|
|
|
#define MATCH_VMSIF_M 0x5001a057 |
|
|
|
#define MASK_VMSIF_M 0xfc0ff07f |
|
|
|
#define MATCH_VIOTA_M 0x50082057 |
|
|
|
#define MASK_VIOTA_M 0xfc0ff07f |
|
|
|
#define MATCH_VID_V 0x5008a057 |
|
|
|
#define MASK_VID_V 0xfdfff07f |
|
|
|
#define MATCH_VZEXT_VF4 0x48022057 |
|
|
|
#define MASK_VZEXT_VF4 0xfc0ff07f |
|
|
|
#define MATCH_VSEXT_VF4 0x4802a057 |
|
|
|
#define MASK_VSEXT_VF4 0xfc0ff07f |
|
|
|
#define MATCH_VZEXT_VF2 0x48032057 |
|
|
|
#define MASK_VZEXT_VF2 0xfc0ff07f |
|
|
|
#define MATCH_VSEXT_VF2 0x4803a057 |
|
|
|
#define MASK_VSEXT_VF2 0xfc0ff07f |
|
|
|
#define MATCH_VCOMPRESS_VM 0x5e002057 |
|
|
|
#define MASK_VCOMPRESS_VM 0xfe00707f |
|
|
|
#define MATCH_VMANDNOT_MM 0x60002057 |
|
|
|
@ -1608,6 +1594,20 @@ |
|
|
|
#define MASK_VMNOR_MM 0xfc00707f |
|
|
|
#define MATCH_VMXNOR_MM 0x7c002057 |
|
|
|
#define MASK_VMXNOR_MM 0xfc00707f |
|
|
|
#define MATCH_VMSBF_M 0x5000a057 |
|
|
|
#define MASK_VMSBF_M 0xfc0ff07f |
|
|
|
#define MATCH_VMSOF_M 0x50012057 |
|
|
|
#define MASK_VMSOF_M 0xfc0ff07f |
|
|
|
#define MATCH_VMSIF_M 0x5001a057 |
|
|
|
#define MASK_VMSIF_M 0xfc0ff07f |
|
|
|
#define MATCH_VIOTA_M 0x50082057 |
|
|
|
#define MASK_VIOTA_M 0xfc0ff07f |
|
|
|
#define MATCH_VID_V 0x5008a057 |
|
|
|
#define MASK_VID_V 0xfdfff07f |
|
|
|
#define MATCH_VPOPC_M 0x40082057 |
|
|
|
#define MASK_VPOPC_M 0xfc0ff07f |
|
|
|
#define MATCH_VFIRST_M 0x4008a057 |
|
|
|
#define MASK_VFIRST_M 0xfc0ff07f |
|
|
|
#define MATCH_VDIVU_VV 0x80002057 |
|
|
|
#define MASK_VDIVU_VV 0xfc00707f |
|
|
|
#define MATCH_VDIV_VV 0x84002057 |
|
|
|
@ -1668,12 +1668,12 @@ |
|
|
|
#define MASK_VASUBU_VX 0xfc00707f |
|
|
|
#define MATCH_VASUB_VX 0x2c006057 |
|
|
|
#define MASK_VASUB_VX 0xfc00707f |
|
|
|
#define MATCH_VMV_S_X 0x42006057 |
|
|
|
#define MASK_VMV_S_X 0xfff0707f |
|
|
|
#define MATCH_VSLIDE1UP_VX 0x38006057 |
|
|
|
#define MASK_VSLIDE1UP_VX 0xfc00707f |
|
|
|
#define MATCH_VSLIDE1DOWN_VX 0x3c006057 |
|
|
|
#define MASK_VSLIDE1DOWN_VX 0xfc00707f |
|
|
|
#define MATCH_VMV_S_X 0x42006057 |
|
|
|
#define MASK_VMV_S_X 0xfff0707f |
|
|
|
#define MATCH_VDIVU_VX 0x80006057 |
|
|
|
#define MASK_VDIVU_VX 0xfc00707f |
|
|
|
#define MATCH_VDIV_VX 0x84006057 |
|
|
|
@ -2739,19 +2739,12 @@ DECLARE_INSN(vaadd_vv, MATCH_VAADD_VV, MASK_VAADD_VV) |
|
|
|
DECLARE_INSN(vasubu_vv, MATCH_VASUBU_VV, MASK_VASUBU_VV) |
|
|
|
DECLARE_INSN(vasub_vv, MATCH_VASUB_VV, MASK_VASUB_VV) |
|
|
|
DECLARE_INSN(vmv_x_s, MATCH_VMV_X_S, MASK_VMV_X_S) |
|
|
|
DECLARE_INSN(vpopc_m, MATCH_VPOPC_M, MASK_VPOPC_M) |
|
|
|
DECLARE_INSN(vfirst_m, MATCH_VFIRST_M, MASK_VFIRST_M) |
|
|
|
DECLARE_INSN(vzext_vf2, MATCH_VZEXT_VF2, MASK_VZEXT_VF2) |
|
|
|
DECLARE_INSN(vsext_vf2, MATCH_VSEXT_VF2, MASK_VSEXT_VF2) |
|
|
|
DECLARE_INSN(vzext_vf4, MATCH_VZEXT_VF4, MASK_VZEXT_VF4) |
|
|
|
DECLARE_INSN(vsext_vf4, MATCH_VSEXT_VF4, MASK_VSEXT_VF4) |
|
|
|
DECLARE_INSN(vzext_vf8, MATCH_VZEXT_VF8, MASK_VZEXT_VF8) |
|
|
|
DECLARE_INSN(vsext_vf8, MATCH_VSEXT_VF8, MASK_VSEXT_VF8) |
|
|
|
DECLARE_INSN(vmsbf_m, MATCH_VMSBF_M, MASK_VMSBF_M) |
|
|
|
DECLARE_INSN(vmsof_m, MATCH_VMSOF_M, MASK_VMSOF_M) |
|
|
|
DECLARE_INSN(vmsif_m, MATCH_VMSIF_M, MASK_VMSIF_M) |
|
|
|
DECLARE_INSN(viota_m, MATCH_VIOTA_M, MASK_VIOTA_M) |
|
|
|
DECLARE_INSN(vid_v, MATCH_VID_V, MASK_VID_V) |
|
|
|
DECLARE_INSN(vzext_vf4, MATCH_VZEXT_VF4, MASK_VZEXT_VF4) |
|
|
|
DECLARE_INSN(vsext_vf4, MATCH_VSEXT_VF4, MASK_VSEXT_VF4) |
|
|
|
DECLARE_INSN(vzext_vf2, MATCH_VZEXT_VF2, MASK_VZEXT_VF2) |
|
|
|
DECLARE_INSN(vsext_vf2, MATCH_VSEXT_VF2, MASK_VSEXT_VF2) |
|
|
|
DECLARE_INSN(vcompress_vm, MATCH_VCOMPRESS_VM, MASK_VCOMPRESS_VM) |
|
|
|
DECLARE_INSN(vmandnot_mm, MATCH_VMANDNOT_MM, MASK_VMANDNOT_MM) |
|
|
|
DECLARE_INSN(vmand_mm, MATCH_VMAND_MM, MASK_VMAND_MM) |
|
|
|
@ -2761,6 +2754,13 @@ DECLARE_INSN(vmornot_mm, MATCH_VMORNOT_MM, MASK_VMORNOT_MM) |
|
|
|
DECLARE_INSN(vmnand_mm, MATCH_VMNAND_MM, MASK_VMNAND_MM) |
|
|
|
DECLARE_INSN(vmnor_mm, MATCH_VMNOR_MM, MASK_VMNOR_MM) |
|
|
|
DECLARE_INSN(vmxnor_mm, MATCH_VMXNOR_MM, MASK_VMXNOR_MM) |
|
|
|
DECLARE_INSN(vmsbf_m, MATCH_VMSBF_M, MASK_VMSBF_M) |
|
|
|
DECLARE_INSN(vmsof_m, MATCH_VMSOF_M, MASK_VMSOF_M) |
|
|
|
DECLARE_INSN(vmsif_m, MATCH_VMSIF_M, MASK_VMSIF_M) |
|
|
|
DECLARE_INSN(viota_m, MATCH_VIOTA_M, MASK_VIOTA_M) |
|
|
|
DECLARE_INSN(vid_v, MATCH_VID_V, MASK_VID_V) |
|
|
|
DECLARE_INSN(vpopc_m, MATCH_VPOPC_M, MASK_VPOPC_M) |
|
|
|
DECLARE_INSN(vfirst_m, MATCH_VFIRST_M, MASK_VFIRST_M) |
|
|
|
DECLARE_INSN(vdivu_vv, MATCH_VDIVU_VV, MASK_VDIVU_VV) |
|
|
|
DECLARE_INSN(vdiv_vv, MATCH_VDIV_VV, MASK_VDIV_VV) |
|
|
|
DECLARE_INSN(vremu_vv, MATCH_VREMU_VV, MASK_VREMU_VV) |
|
|
|
@ -2791,9 +2791,9 @@ DECLARE_INSN(vaaddu_vx, MATCH_VAADDU_VX, MASK_VAADDU_VX) |
|
|
|
DECLARE_INSN(vaadd_vx, MATCH_VAADD_VX, MASK_VAADD_VX) |
|
|
|
DECLARE_INSN(vasubu_vx, MATCH_VASUBU_VX, MASK_VASUBU_VX) |
|
|
|
DECLARE_INSN(vasub_vx, MATCH_VASUB_VX, MASK_VASUB_VX) |
|
|
|
DECLARE_INSN(vmv_s_x, MATCH_VMV_S_X, MASK_VMV_S_X) |
|
|
|
DECLARE_INSN(vslide1up_vx, MATCH_VSLIDE1UP_VX, MASK_VSLIDE1UP_VX) |
|
|
|
DECLARE_INSN(vslide1down_vx, MATCH_VSLIDE1DOWN_VX, MASK_VSLIDE1DOWN_VX) |
|
|
|
DECLARE_INSN(vmv_s_x, MATCH_VMV_S_X, MASK_VMV_S_X) |
|
|
|
DECLARE_INSN(vdivu_vx, MATCH_VDIVU_VX, MASK_VDIVU_VX) |
|
|
|
DECLARE_INSN(vdiv_vx, MATCH_VDIV_VX, MASK_VDIV_VX) |
|
|
|
DECLARE_INSN(vremu_vx, MATCH_VREMU_VX, MASK_VREMU_VX) |
|
|
|
|