RFR: 8254884: Make sure jvm does not crash with Arm SVE and Vector API [v2]

Andrew Dinn adinn at openjdk.java.net
Mon Oct 19 13:05:11 UTC 2020


On Mon, 19 Oct 2020 10:26:22 GMT, Ningsheng Jian <njian at openjdk.org> wrote:

>> Currently we have not implemented all Arm SVE code generation for Vector API specific nodes. To make sure hotspot does
>> not crash with bad AD file (as NEON has implemented them), we simply add those OPs to unsupported op list.
>> This is the port and minor cleanup of JDK-8253211 in repo-panama: https://github.com/openjdk/panama-vector/pull/7 with
>> Op_VectorUnbox (not for codegen) and Op_VectorMaskWrapper (actually unused node. dead code?) removed from the
>> unsupported op list and Op_VectorLoadConst added.  Test: tier1-3 on AArch64 and x86_64 as well as Vector API tests on
>> AArch64 SVE.
>
> Ningsheng Jian has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Address review comments from Vladimir.
>   
>   Change-Id: Ia484dc59f41d265972f1253193d1d7d7cb032a12

src/hotspot/cpu/aarch64/aarch64_sve.ad line 897:

> 895:   predicate(UseSVE > 0 && n->in(2)->bottom_type()->is_vect()->length_in_bytes() >= 16 &&
> 896:             (n->in(2)->bottom_type()->is_vect()->element_basic_type() == T_SHORT ||
> 897:             (n->in(2)->bottom_type()->is_vect()->element_basic_type() == T_CHAR)));

Is it appropriate to do this reduction when element_basic_type() == T_CHAR?

-------------

PR: https://git.openjdk.java.net/jdk/pull/726


More information about the hotspot-compiler-dev mailing list