RFR: 8267356: AArch64: Vector API SVE codegen support [v2]

Ningsheng Jian njian at openjdk.java.net
Mon Jul 26 04:56:38 UTC 2021


> This is the integration of current SVE work done in panama-vector/vectorIntrinscs, which includes:
> 
> 1. Code generation for Vector API c2 IR nodes with SVE.
> 2. Non-max vector size support with SVE, e.g. using *128Vector (and *64Vector) APIs on 256-bit SVE environment could also generate optimized SVE instructions with predicate feature.
> 3. Some more SVE assemblers (and tests) used by the codegen part.
> 
> Note: VectorMask<E\> is still represented in vector register, a further improvement to map mask to predicate register is under development at https://github.com/openjdk/panama-vector/tree/vectorIntrinsics+mask
> 
> 
> Test: tier1-3 with vector api test cases passed on 512-bit SVE hardware with MaxVectorSize=16/32/64.

Ningsheng Jian has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit:

  8267356: AArch64: Vector API SVE codegen support
  
  This is the integration of current SVE work done in
  panama-vector/vectorIntrinscs, which includes:
  
  1. Code generation for Vector API c2 IR nodes with SVE.
  2. Non-max vector size support with SVE, e.g. using *128Vector APIs on
     256-bit SVE environment could also generate optimized SVE
     instructions with predicate feature.
  3. Some more SVE assemblers (and tests) used by the codegen part.
  
  Note: VectorMask<E> is still represented in vector register, a further
  improvement to map mask to predicate register is under development at
  https://github.com/openjdk/panama-vector/tree/vectorIntrinsics+mask
  
  Test: tier1-3 with vector api test cases passed on 512-bit SVE hardware
  with MaxVectorSize=16/32/64.

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

Changes: https://git.openjdk.java.net/jdk/pull/4122/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4122&range=01
  Stats: 5676 lines in 13 files changed: 4524 ins; 188 del; 964 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4122.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4122/head:pull/4122

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


More information about the hotspot-compiler-dev mailing list