mirror of
https://github.com/JetBrains/JetBrainsRuntime.git
synced 2025-12-06 09:29:38 +01:00
8269952: compiler/vectorapi/VectorCastShape*Test.java tests failed on avx2 machines
Reviewed-by: kvn, dlong
(cherry picked from commit 62ff55d383)
This commit is contained in:
committed by
Vitaly Provodin
parent
a48118e7ef
commit
f96765e155
@@ -6602,7 +6602,7 @@ instruct vcastBtoX(vec dst, vec src) %{
|
||||
%}
|
||||
|
||||
instruct castStoX(vec dst, vec src, rRegP scratch) %{
|
||||
predicate(UseAVX <= 2 &&
|
||||
predicate((UseAVX <= 2 || !VM_Version::supports_avx512vlbw()) &&
|
||||
vector_length(n->in(1)) <= 8 && // src
|
||||
vector_element_basic_type(n) == T_BYTE);
|
||||
effect(TEMP scratch);
|
||||
@@ -6618,7 +6618,7 @@ instruct castStoX(vec dst, vec src, rRegP scratch) %{
|
||||
%}
|
||||
|
||||
instruct vcastStoX(vec dst, vec src, vec vtmp, rRegP scratch) %{
|
||||
predicate(UseAVX <= 2 &&
|
||||
predicate((UseAVX <= 2 || !VM_Version::supports_avx512vlbw()) &&
|
||||
vector_length(n->in(1)) == 16 && // src
|
||||
vector_element_basic_type(n) == T_BYTE);
|
||||
effect(TEMP dst, TEMP vtmp, TEMP scratch);
|
||||
@@ -6636,7 +6636,7 @@ instruct vcastStoX(vec dst, vec src, vec vtmp, rRegP scratch) %{
|
||||
%}
|
||||
|
||||
instruct vcastStoX_evex(vec dst, vec src) %{
|
||||
predicate(UseAVX > 2 ||
|
||||
predicate((UseAVX > 2 && VM_Version::supports_avx512vlbw()) ||
|
||||
(vector_length_in_bytes(n) >= vector_length_in_bytes(n->in(1)))); // dst >= src
|
||||
match(Set dst (VectorCastS2X src));
|
||||
format %{ "vector_cast_s2x $dst,$src\t!" %}
|
||||
@@ -6751,13 +6751,13 @@ instruct vcastItoX_evex(vec dst, vec src) %{
|
||||
__ evpmovdw($dst$$XMMRegister, $src$$XMMRegister, src_vlen_enc);
|
||||
break;
|
||||
case T_FLOAT:
|
||||
__ vcvtdq2ps($dst$$XMMRegister, $dst$$XMMRegister, dst_vlen_enc);
|
||||
__ vcvtdq2ps($dst$$XMMRegister, $src$$XMMRegister, dst_vlen_enc);
|
||||
break;
|
||||
case T_LONG:
|
||||
__ vpmovsxdq($dst$$XMMRegister, $src$$XMMRegister, dst_vlen_enc);
|
||||
break;
|
||||
case T_DOUBLE:
|
||||
__ vcvtdq2pd($dst$$XMMRegister, $dst$$XMMRegister, dst_vlen_enc);
|
||||
__ vcvtdq2pd($dst$$XMMRegister, $src$$XMMRegister, dst_vlen_enc);
|
||||
break;
|
||||
default:
|
||||
ShouldNotReachHere();
|
||||
|
||||
@@ -70,8 +70,6 @@ compiler/whitebox/MakeMethodNotCompilableTest.java 8265360 macosx-aarch64
|
||||
|
||||
compiler/codecache/jmx/PoolsIndependenceTest.java 8264632 macosx-x64
|
||||
|
||||
compiler/vectorapi/VectorCastShape128Test.java 8269952 generic-x64
|
||||
compiler/vectorapi/VectorCastShape64Test.java 8269952 generic-x64
|
||||
|
||||
#############################################################################
|
||||
|
||||
|
||||
Reference in New Issue
Block a user