XVNEGH X2, X1 // 41349c76
XVNEGW X2, X1 // 41389c76
XVNEGV X2, X1 // 413c9c76
+
+ // [X]{VMULW}{EV/OD}.{H.B/W.H/D.W/Q.D}[U] instructions
+ VMULWEVHB V1, V2, V3 // 43049070
+ VMULWEVWH V1, V2, V3 // 43849070
+ VMULWEVVW V1, V2, V3 // 43049170
+ VMULWEVQV V1, V2, V3 // 43849170
+ VMULWODHB V1, V2, V3 // 43049270
+ VMULWODWH V1, V2, V3 // 43849270
+ VMULWODVW V1, V2, V3 // 43049370
+ VMULWODQV V1, V2, V3 // 43849370
+ VMULWEVHBU V1, V2, V3 // 43049870
+ VMULWEVWHU V1, V2, V3 // 43849870
+ VMULWEVVWU V1, V2, V3 // 43049970
+ VMULWEVQVU V1, V2, V3 // 43849970
+ VMULWODHBU V1, V2, V3 // 43049a70
+ VMULWODWHU V1, V2, V3 // 43849a70
+ VMULWODVWU V1, V2, V3 // 43049b70
+ VMULWODQVU V1, V2, V3 // 43849b70
+ XVMULWEVHB X1, X2, X3 // 43049074
+ XVMULWEVWH X1, X2, X3 // 43849074
+ XVMULWEVVW X1, X2, X3 // 43049174
+ XVMULWEVQV X1, X2, X3 // 43849174
+ XVMULWODHB X1, X2, X3 // 43049274
+ XVMULWODWH X1, X2, X3 // 43849274
+ XVMULWODVW X1, X2, X3 // 43049374
+ XVMULWODQV X1, X2, X3 // 43849374
+ XVMULWEVHBU X1, X2, X3 // 43049874
+ XVMULWEVWHU X1, X2, X3 // 43849874
+ XVMULWEVVWU X1, X2, X3 // 43049974
+ XVMULWEVQVU X1, X2, X3 // 43849974
+ XVMULWODHBU X1, X2, X3 // 43049a74
+ XVMULWODWHU X1, X2, X3 // 43849a74
+ XVMULWODVWU X1, X2, X3 // 43049b74
+ XVMULWODQVU X1, X2, X3 // 43849b74
+
+ // [X]{VMULW}{EV/OD}.{H.BU.B/W.HU.H/D.WU.W/Q.DU.D} instructions
+ VMULWEVHBUB V1, V2, V3 // 4304a070
+ VMULWEVWHUH V1, V2, V3 // 4384a070
+ VMULWEVVWUW V1, V2, V3 // 4304a170
+ VMULWEVQVUV V1, V2, V3 // 4384a170
+ VMULWODHBUB V1, V2, V3 // 4304a270
+ VMULWODWHUH V1, V2, V3 // 4384a270
+ VMULWODVWUW V1, V2, V3 // 4304a370
+ VMULWODQVUV V1, V2, V3 // 4384a370
+ XVMULWEVHBUB X1, X2, X3 // 4304a074
+ XVMULWEVWHUH X1, X2, X3 // 4384a074
+ XVMULWEVVWUW X1, X2, X3 // 4304a174
+ XVMULWEVQVUV X1, X2, X3 // 4384a174
+ XVMULWODHBUB X1, X2, X3 // 4304a274
+ XVMULWODWHUH X1, X2, X3 // 4384a274
+ XVMULWODVWUW X1, X2, X3 // 4304a374
+ XVMULWODQVUV X1, X2, X3 // 4384a374
opset(AVMODHU, r0)
opset(AVMODWU, r0)
opset(AVMODVU, r0)
+ opset(AVMULWEVHB, r0)
+ opset(AVMULWEVWH, r0)
+ opset(AVMULWEVVW, r0)
+ opset(AVMULWEVQV, r0)
+ opset(AVMULWODHB, r0)
+ opset(AVMULWODWH, r0)
+ opset(AVMULWODVW, r0)
+ opset(AVMULWODQV, r0)
+ opset(AVMULWEVHBU, r0)
+ opset(AVMULWEVWHU, r0)
+ opset(AVMULWEVVWU, r0)
+ opset(AVMULWEVQVU, r0)
+ opset(AVMULWODHBU, r0)
+ opset(AVMULWODWHU, r0)
+ opset(AVMULWODVWU, r0)
+ opset(AVMULWODQVU, r0)
+ opset(AVMULWEVHBUB, r0)
+ opset(AVMULWEVWHUH, r0)
+ opset(AVMULWEVVWUW, r0)
+ opset(AVMULWEVQVUV, r0)
+ opset(AVMULWODHBUB, r0)
+ opset(AVMULWODWHUH, r0)
+ opset(AVMULWODVWUW, r0)
+ opset(AVMULWODQVUV, r0)
case AXVSEQB:
opset(AXVSEQH, r0)
opset(AXVMODHU, r0)
opset(AXVMODWU, r0)
opset(AXVMODVU, r0)
+ opset(AXVMULWEVHB, r0)
+ opset(AXVMULWEVWH, r0)
+ opset(AXVMULWEVVW, r0)
+ opset(AXVMULWEVQV, r0)
+ opset(AXVMULWODHB, r0)
+ opset(AXVMULWODWH, r0)
+ opset(AXVMULWODVW, r0)
+ opset(AXVMULWODQV, r0)
+ opset(AXVMULWEVHBU, r0)
+ opset(AXVMULWEVWHU, r0)
+ opset(AXVMULWEVVWU, r0)
+ opset(AXVMULWEVQVU, r0)
+ opset(AXVMULWODHBU, r0)
+ opset(AXVMULWODWHU, r0)
+ opset(AXVMULWODVWU, r0)
+ opset(AXVMULWODQVU, r0)
+ opset(AXVMULWEVHBUB, r0)
+ opset(AXVMULWEVWHUH, r0)
+ opset(AXVMULWEVVWUW, r0)
+ opset(AXVMULWEVQVUV, r0)
+ opset(AXVMULWODHBUB, r0)
+ opset(AXVMULWODWHUH, r0)
+ opset(AXVMULWODVWUW, r0)
+ opset(AXVMULWODQVUV, r0)
case AVANDB:
opset(AVORB, r0)
return 0xe9ce << 15 // xvmod.wu
case AXVMODVU:
return 0xe9cf << 15 // xvmod.du
+ case AVMULWEVHB:
+ return 0xe120 << 15 // vmulwev.h.b
+ case AVMULWEVWH:
+ return 0xe121 << 15 // vmulwev.w.h
+ case AVMULWEVVW:
+ return 0xe122 << 15 // vmulwev.d.w
+ case AVMULWEVQV:
+ return 0xe123 << 15 // vmulwev.q.d
+ case AVMULWODHB:
+ return 0xe124 << 15 // vmulwod.h.b
+ case AVMULWODWH:
+ return 0xe125 << 15 // vmulwod.w.h
+ case AVMULWODVW:
+ return 0xe126 << 15 // vmulwod.d.w
+ case AVMULWODQV:
+ return 0xe127 << 15 // vmulwod.q.d
+ case AVMULWEVHBU:
+ return 0xe130 << 15 // vmulwev.h.bu
+ case AVMULWEVWHU:
+ return 0xe131 << 15 // vmulwev.w.hu
+ case AVMULWEVVWU:
+ return 0xe132 << 15 // vmulwev.d.wu
+ case AVMULWEVQVU:
+ return 0xe133 << 15 // vmulwev.q.du
+ case AVMULWODHBU:
+ return 0xe134 << 15 // vmulwod.h.bu
+ case AVMULWODWHU:
+ return 0xe135 << 15 // vmulwod.w.hu
+ case AVMULWODVWU:
+ return 0xe136 << 15 // vmulwod.d.wu
+ case AVMULWODQVU:
+ return 0xe137 << 15 // vmulwod.q.du
+ case AVMULWEVHBUB:
+ return 0xe140 << 15 // vmulwev.h.bu.b
+ case AVMULWEVWHUH:
+ return 0xe141 << 15 // vmulwev.w.hu.h
+ case AVMULWEVVWUW:
+ return 0xe142 << 15 // vmulwev.d.wu.w
+ case AVMULWEVQVUV:
+ return 0xe143 << 15 // vmulwev.q.du.d
+ case AVMULWODHBUB:
+ return 0xe144 << 15 // vmulwod.h.bu.b
+ case AVMULWODWHUH:
+ return 0xe145 << 15 // vmulwod.w.hu.h
+ case AVMULWODVWUW:
+ return 0xe146 << 15 // vmulwod.d.wu.w
+ case AVMULWODQVUV:
+ return 0xe147 << 15 // vmulwod.q.du.d
+ case AXVMULWEVHB:
+ return 0xe920 << 15 // xvmulwev.h.b
+ case AXVMULWEVWH:
+ return 0xe921 << 15 // xvmulwev.w.h
+ case AXVMULWEVVW:
+ return 0xe922 << 15 // xvmulwev.d.w
+ case AXVMULWEVQV:
+ return 0xe923 << 15 // xvmulwev.q.d
+ case AXVMULWODHB:
+ return 0xe924 << 15 // xvmulwod.h.b
+ case AXVMULWODWH:
+ return 0xe925 << 15 // xvmulwod.w.h
+ case AXVMULWODVW:
+ return 0xe926 << 15 // xvmulwod.d.w
+ case AXVMULWODQV:
+ return 0xe927 << 15 // xvmulwod.q.d
+ case AXVMULWEVHBU:
+ return 0xe930 << 15 // xvmulwev.h.bu
+ case AXVMULWEVWHU:
+ return 0xe931 << 15 // xvmulwev.w.hu
+ case AXVMULWEVVWU:
+ return 0xe932 << 15 // xvmulwev.d.wu
+ case AXVMULWEVQVU:
+ return 0xe933 << 15 // xvmulwev.q.du
+ case AXVMULWODHBU:
+ return 0xe934 << 15 // xvmulwod.h.bu
+ case AXVMULWODWHU:
+ return 0xe935 << 15 // xvmulwod.w.hu
+ case AXVMULWODVWU:
+ return 0xe936 << 15 // xvmulwod.d.wu
+ case AXVMULWODQVU:
+ return 0xe937 << 15 // xvmulwod.q.du
+ case AXVMULWEVHBUB:
+ return 0xe940 << 15 // xvmulwev.h.bu.b
+ case AXVMULWEVWHUH:
+ return 0xe941 << 15 // xvmulwev.w.hu.h
+ case AXVMULWEVVWUW:
+ return 0xe942 << 15 // xvmulwev.d.wu.w
+ case AXVMULWEVQVUV:
+ return 0xe943 << 15 // xvmulwev.q.du.d
+ case AXVMULWODHBUB:
+ return 0xe944 << 15 // xvmulwod.h.bu.b
+ case AXVMULWODWHUH:
+ return 0xe945 << 15 // xvmulwod.w.hu.h
+ case AXVMULWODVWUW:
+ return 0xe946 << 15 // xvmulwod.d.wu.w
+ case AXVMULWODQVUV:
+ return 0xe947 << 15 // xvmulwod.q.du.d
case AVSLLB:
return 0xe1d0 << 15 // vsll.b
case AVSLLH: