@@ -3778,7 +3778,7 @@ let Predicates = [HasAVX, NoVLX_Or_NoBWI] in {
3778
3778
VEX_4V, VEX_WIG;
3779
3779
defm VPACKUSDW : sse4_pack<0x2B, "vpackusdw", v8i16, v4i32, X86Packus, VR128,
3780
3780
i128mem, SchedWriteShuffle.XMM, load, 0>,
3781
- VEX_4V;
3781
+ VEX_4V, VEX_WIG ;
3782
3782
}
3783
3783
3784
3784
let Predicates = [HasAVX2, NoVLX_Or_NoBWI] in {
@@ -3794,7 +3794,7 @@ let Predicates = [HasAVX2, NoVLX_Or_NoBWI] in {
3794
3794
VEX_4V, VEX_L, VEX_WIG;
3795
3795
defm VPACKUSDWY : sse4_pack<0x2B, "vpackusdw", v16i16, v8i32, X86Packus, VR256,
3796
3796
i256mem, SchedWriteShuffle.YMM, load, 0>,
3797
- VEX_4V, VEX_L;
3797
+ VEX_4V, VEX_L, VEX_WIG ;
3798
3798
}
3799
3799
3800
3800
let Constraints = "$src1 = $dst" in {
@@ -4756,7 +4756,7 @@ let isCommutable = 0 in {
4756
4756
SchedWritePHAdd.XMM, 0>, VEX_4V, VEX_WIG;
4757
4757
defm VPHSUBD : SS3I_binop_rm<0x06, "vphsubd", X86hsub, v4i32, v4i32, VR128,
4758
4758
load, i128mem,
4759
- SchedWritePHAdd.XMM, 0>, VEX_4V;
4759
+ SchedWritePHAdd.XMM, 0>, VEX_4V, VEX_WIG ;
4760
4760
defm VPSIGNB : SS3I_binop_rm_int<0x08, "vpsignb",
4761
4761
int_x86_ssse3_psign_b_128,
4762
4762
SchedWriteVecALU.XMM, load, 0>, VEX_4V, VEX_WIG;
@@ -4802,7 +4802,7 @@ let isCommutable = 0 in {
4802
4802
SchedWritePHAdd.YMM, 0>, VEX_4V, VEX_L, VEX_WIG;
4803
4803
defm VPHSUBDY : SS3I_binop_rm<0x06, "vphsubd", X86hsub, v8i32, v8i32, VR256,
4804
4804
load, i256mem,
4805
- SchedWritePHAdd.YMM, 0>, VEX_4V, VEX_L;
4805
+ SchedWritePHAdd.YMM, 0>, VEX_4V, VEX_L, VEX_WIG ;
4806
4806
defm VPSIGNB : SS3I_binop_rm_int_y<0x08, "vpsignb", int_x86_avx2_psign_b,
4807
4807
SchedWriteVecALU.YMM>, VEX_4V, VEX_L, VEX_WIG;
4808
4808
defm VPSIGNW : SS3I_binop_rm_int_y<0x09, "vpsignw", int_x86_avx2_psign_w,
@@ -6503,7 +6503,7 @@ multiclass pcmpistrm_SS42AI<string asm> {
6503
6503
6504
6504
let Defs = [XMM0, EFLAGS], hasSideEffects = 0 in {
6505
6505
let Predicates = [HasAVX] in
6506
- defm VPCMPISTRM : pcmpistrm_SS42AI<"vpcmpistrm">, VEX;
6506
+ defm VPCMPISTRM : pcmpistrm_SS42AI<"vpcmpistrm">, VEX, VEX_WIG ;
6507
6507
defm PCMPISTRM : pcmpistrm_SS42AI<"pcmpistrm"> ;
6508
6508
}
6509
6509
@@ -6521,7 +6521,7 @@ multiclass SS42AI_pcmpestrm<string asm> {
6521
6521
6522
6522
let Defs = [XMM0, EFLAGS], Uses = [EAX, EDX], hasSideEffects = 0 in {
6523
6523
let Predicates = [HasAVX] in
6524
- defm VPCMPESTRM : SS42AI_pcmpestrm<"vpcmpestrm">, VEX;
6524
+ defm VPCMPESTRM : SS42AI_pcmpestrm<"vpcmpestrm">, VEX, VEX_WIG ;
6525
6525
defm PCMPESTRM : SS42AI_pcmpestrm<"pcmpestrm">;
6526
6526
}
6527
6527
@@ -6539,7 +6539,7 @@ multiclass SS42AI_pcmpistri<string asm> {
6539
6539
6540
6540
let Defs = [ECX, EFLAGS], hasSideEffects = 0 in {
6541
6541
let Predicates = [HasAVX] in
6542
- defm VPCMPISTRI : SS42AI_pcmpistri<"vpcmpistri">, VEX;
6542
+ defm VPCMPISTRI : SS42AI_pcmpistri<"vpcmpistri">, VEX, VEX_WIG ;
6543
6543
defm PCMPISTRI : SS42AI_pcmpistri<"pcmpistri">;
6544
6544
}
6545
6545
@@ -6557,7 +6557,7 @@ multiclass SS42AI_pcmpestri<string asm> {
6557
6557
6558
6558
let Defs = [ECX, EFLAGS], Uses = [EAX, EDX], hasSideEffects = 0 in {
6559
6559
let Predicates = [HasAVX] in
6560
- defm VPCMPESTRI : SS42AI_pcmpestri<"vpcmpestri">, VEX;
6560
+ defm VPCMPESTRI : SS42AI_pcmpestri<"vpcmpestri">, VEX, VEX_WIG ;
6561
6561
defm PCMPESTRI : SS42AI_pcmpestri<"pcmpestri">;
6562
6562
}
6563
6563
0 commit comments