Skip to content

Commit 9e32db2

Browse files
author
Jatin Bhateja
committedMar 18, 2024
8328309: Remove malformed masked shift instruction selection patterns
Reviewed-by: sviswanathan
1 parent fc0472b commit 9e32db2

File tree

1 file changed

+0
-45
lines changed

1 file changed

+0
-45
lines changed
 

‎src/hotspot/cpu/x86/x86.ad

-45
Original file line numberDiff line numberDiff line change
@@ -9665,21 +9665,6 @@ instruct vlshiftv_reg_masked(vec dst, vec src2, kReg mask) %{
96659665
ins_pipe( pipe_slow );
96669666
%}
96679667

9668-
instruct vlshift_mem_masked(vec dst, memory src2, kReg mask) %{
9669-
match(Set dst (LShiftVS (Binary dst (LoadVector src2)) mask));
9670-
match(Set dst (LShiftVI (Binary dst (LoadVector src2)) mask));
9671-
match(Set dst (LShiftVL (Binary dst (LoadVector src2)) mask));
9672-
format %{ "vplshift_masked $dst, $dst, $src2, $mask\t! lshift masked operation" %}
9673-
ins_encode %{
9674-
int vlen_enc = vector_length_encoding(this);
9675-
BasicType bt = Matcher::vector_element_basic_type(this);
9676-
int opc = this->ideal_Opcode();
9677-
__ evmasked_op(opc, bt, $mask$$KRegister, $dst$$XMMRegister,
9678-
$dst$$XMMRegister, $src2$$Address, true, vlen_enc);
9679-
%}
9680-
ins_pipe( pipe_slow );
9681-
%}
9682-
96839668
instruct vrshift_imm_masked(vec dst, immI8 shift, kReg mask) %{
96849669
match(Set dst (RShiftVS (Binary dst (RShiftCntV shift)) mask));
96859670
match(Set dst (RShiftVI (Binary dst (RShiftCntV shift)) mask));
@@ -9727,21 +9712,6 @@ instruct vrshiftv_reg_masked(vec dst, vec src2, kReg mask) %{
97279712
ins_pipe( pipe_slow );
97289713
%}
97299714

9730-
instruct vrshift_mem_masked(vec dst, memory src2, kReg mask) %{
9731-
match(Set dst (RShiftVS (Binary dst (LoadVector src2)) mask));
9732-
match(Set dst (RShiftVI (Binary dst (LoadVector src2)) mask));
9733-
match(Set dst (RShiftVL (Binary dst (LoadVector src2)) mask));
9734-
format %{ "vprshift_masked $dst, $dst, $src2, $mask\t! rshift masked operation" %}
9735-
ins_encode %{
9736-
int vlen_enc = vector_length_encoding(this);
9737-
BasicType bt = Matcher::vector_element_basic_type(this);
9738-
int opc = this->ideal_Opcode();
9739-
__ evmasked_op(opc, bt, $mask$$KRegister, $dst$$XMMRegister,
9740-
$dst$$XMMRegister, $src2$$Address, true, vlen_enc);
9741-
%}
9742-
ins_pipe( pipe_slow );
9743-
%}
9744-
97459715
instruct vurshift_imm_masked(vec dst, immI8 shift, kReg mask) %{
97469716
match(Set dst (URShiftVS (Binary dst (RShiftCntV shift)) mask));
97479717
match(Set dst (URShiftVI (Binary dst (RShiftCntV shift)) mask));
@@ -9789,21 +9759,6 @@ instruct vurshiftv_reg_masked(vec dst, vec src2, kReg mask) %{
97899759
ins_pipe( pipe_slow );
97909760
%}
97919761

9792-
instruct vurshift_mem_masked(vec dst, memory src2, kReg mask) %{
9793-
match(Set dst (URShiftVS (Binary dst (LoadVector src2)) mask));
9794-
match(Set dst (URShiftVI (Binary dst (LoadVector src2)) mask));
9795-
match(Set dst (URShiftVL (Binary dst (LoadVector src2)) mask));
9796-
format %{ "vpurshift_masked $dst, $dst, $src2, $mask\t! urshift masked operation" %}
9797-
ins_encode %{
9798-
int vlen_enc = vector_length_encoding(this);
9799-
BasicType bt = Matcher::vector_element_basic_type(this);
9800-
int opc = this->ideal_Opcode();
9801-
__ evmasked_op(opc, bt, $mask$$KRegister, $dst$$XMMRegister,
9802-
$dst$$XMMRegister, $src2$$Address, true, vlen_enc);
9803-
%}
9804-
ins_pipe( pipe_slow );
9805-
%}
9806-
98079762
instruct vmaxv_reg_masked(vec dst, vec src2, kReg mask) %{
98089763
match(Set dst (MaxV (Binary dst src2) mask));
98099764
format %{ "vpmax_masked $dst, $dst, $src2, $mask\t! max masked operation" %}

0 commit comments

Comments
 (0)