Skip to content

Commit efc3671

Browse files
authored
[X86] Correct the cdisp8 encoding for VGF2P8AFFINEINVQB and VGF2P8AFFINEQB. (#120340)
These instructions use a 64-bit broadcast size so the element size for CD8 should be 64.
1 parent 9fa5172 commit efc3671

File tree

3 files changed

+24
-2
lines changed

3 files changed

+24
-2
lines changed

llvm/lib/Target/X86/X86InstrAVX512.td

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12569,10 +12569,10 @@ multiclass GF2P8AFFINE_avx512_common<bits<8> Op, string OpStr, SDNode OpNode,
1256912569

1257012570
defm VGF2P8AFFINEINVQB : GF2P8AFFINE_avx512_common<0xCF, "vgf2p8affineinvqb",
1257112571
X86GF2P8affineinvqb, SchedWriteVecIMul>,
12572-
EVEX, VVVV, EVEX_CD8<8, CD8VF>, REX_W, AVX512AIi8Base;
12572+
EVEX, VVVV, EVEX_CD8<64, CD8VF>, REX_W, AVX512AIi8Base;
1257312573
defm VGF2P8AFFINEQB : GF2P8AFFINE_avx512_common<0xCE, "vgf2p8affineqb",
1257412574
X86GF2P8affineqb, SchedWriteVecIMul>,
12575-
EVEX, VVVV, EVEX_CD8<8, CD8VF>, REX_W, AVX512AIi8Base;
12575+
EVEX, VVVV, EVEX_CD8<64, CD8VF>, REX_W, AVX512AIi8Base;
1257612576

1257712577

1257812578
//===----------------------------------------------------------------------===//

llvm/test/MC/X86/avx512gfni-att.s

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,3 +176,10 @@
176176
// CHECK: encoding: [0x62,0xf3,0xdd,0x50,0xce,0x09,0x07]
177177
vgf2p8affineqb $7, (%rcx){1to8}, %zmm20, %zmm1
178178

179+
// CHECK: vgf2p8affineinvqb $7, 8(%rcx){1to8}, %zmm20, %zmm1
180+
// CHECK: encoding: [0x62,0xf3,0xdd,0x50,0xcf,0x49,0x01,0x07]
181+
vgf2p8affineinvqb $7, 8(%rcx){1to8}, %zmm20, %zmm1
182+
183+
// CHECK: vgf2p8affineqb $7, 8(%rcx){1to8}, %zmm20, %zmm1
184+
// CHECK: encoding: [0x62,0xf3,0xdd,0x50,0xce,0x49,0x01,0x07]
185+
vgf2p8affineqb $7, 8(%rcx){1to8}, %zmm20, %zmm1

llvm/test/MC/X86/avx512vl_gfni-att.s

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,3 +352,18 @@
352352
// CHECK: encoding: [0x62,0xf3,0xdd,0x30,0xce,0x09,0x07]
353353
vgf2p8affineqb $7, (%rcx){1to4}, %ymm20, %ymm1
354354

355+
// CHECK: vgf2p8affineinvqb $7, 8(%rcx){1to2}, %xmm20, %xmm1
356+
// CHECK: encoding: [0x62,0xf3,0xdd,0x10,0xcf,0x49,0x01,0x07]
357+
vgf2p8affineinvqb $7, 8(%rcx){1to2}, %xmm20, %xmm1
358+
359+
// CHECK: vgf2p8affineinvqb $7, 8(%rcx){1to4}, %ymm20, %ymm1
360+
// CHECK: encoding: [0x62,0xf3,0xdd,0x30,0xcf,0x49,0x01,0x07]
361+
vgf2p8affineinvqb $7, 8(%rcx){1to4}, %ymm20, %ymm1
362+
363+
// CHECK: vgf2p8affineqb $7, 8(%rcx){1to2}, %xmm20, %xmm1
364+
// CHECK: encoding: [0x62,0xf3,0xdd,0x10,0xce,0x49,0x01,0x07]
365+
vgf2p8affineqb $7, 8(%rcx){1to2}, %xmm20, %xmm1
366+
367+
// CHECK: vgf2p8affineqb $7, 8(%rcx){1to4}, %ymm20, %ymm1
368+
// CHECK: encoding: [0x62,0xf3,0xdd,0x30,0xce,0x49,0x01,0x07]
369+
vgf2p8affineqb $7, 8(%rcx){1to4}, %ymm20, %ymm1

0 commit comments

Comments
 (0)