Integrated: 8332119: Incorrect IllegalArgumentException for C2 compiled permute kernel

Jatin Bhateja jbhateja at openjdk.org
Wed Jun 5 18:39:04 UTC 2024


On Wed, 29 May 2024 06:10:53 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

> Currently inline expansion of vector to shuffle conversion simply type casts the vector holding indexes to byte vector[1] where as fallback implementation[2] also wraps the indexes to a valid index range [0, VEC_LEN-1) or generates a -ve index for exceptional / OOB indices.
> 
> This patch extends the conversion inline expander to match the fall back implementation. This imposes around 20% performance tax on Vector.toShuffle() intrinsic but fixes this functional bug.
> 
> Kindly review and share your feedback.
> 
> Best Regards,
> Jatin
> 
> PS: Patch also fixes an incorrectness issue reported with [JDK-8332118](https://bugs.openjdk.org/browse/JDK-8332118)
> 
> [1] https://github.com/openjdk/jdk/blob/master/src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java#L2352
> [2] https://github.com/openjdk/jdk/blob/master/src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractShuffle.java#L58

This pull request has now been integrated.

Changeset: 4c09d9f8
Author:    Jatin Bhateja <jbhateja at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/4c09d9f8280092949a9fe0f26ee516e699f7ba84
Stats:     161 lines in 3 files changed: 150 ins; 9 del; 2 mod

8332119: Incorrect IllegalArgumentException for C2 compiled permute kernel

Reviewed-by: sviswanathan, kvn

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

PR: https://git.openjdk.org/jdk/pull/19442


More information about the hotspot-compiler-dev mailing list