all: VPCLMULQDQ instruction (#360)
Adds VEX and EVEX encoded versions of the `PCLMULQDQ` carry-less quadword multiplication instruction. These are added via the `opcodesextra` mechanism #345, since they're missing from the opcodes database. Contributed by @vsivsi. Extracted from #349 with minor tweaks. Co-authored-by: Vaughn Iverson <vsivsi@yahoo.com>
This commit is contained in:
committed by
GitHub
parent
b893b32213
commit
7dac51aabf
@@ -25753,8 +25753,12 @@ func VPBROADCASTW_Z(mrx, k, xyz operand.Op) (*intrep.Instruction, error) {
|
||||
//
|
||||
// VPCLMULQDQ imm8 m128 xmm xmm
|
||||
// VPCLMULQDQ imm8 xmm xmm xmm
|
||||
func VPCLMULQDQ(i, mx, x, x1 operand.Op) (*intrep.Instruction, error) {
|
||||
return build(opcVPCLMULQDQ.Forms(), sffxs{}, []operand.Op{i, mx, x, x1})
|
||||
// VPCLMULQDQ imm8 m256 ymm ymm
|
||||
// VPCLMULQDQ imm8 ymm ymm ymm
|
||||
// VPCLMULQDQ imm8 m512 zmm zmm
|
||||
// VPCLMULQDQ imm8 zmm zmm zmm
|
||||
func VPCLMULQDQ(i, mxyz, xyz, xyz1 operand.Op) (*intrep.Instruction, error) {
|
||||
return build(opcVPCLMULQDQ.Forms(), sffxs{}, []operand.Op{i, mxyz, xyz, xyz1})
|
||||
}
|
||||
|
||||
// VPCMPB: Compare Packed Signed Byte Values.
|
||||
|
||||
Reference in New Issue
Block a user