[lworld+vector] Integrated: Merge lworld

Jatin Bhateja jbhateja at openjdk.org
Thu Apr 17 10:05:20 UTC 2025


On Thu, 17 Apr 2025 09:20:30 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

> Merge latest lworld code into lworld+vector
> 
> Commit Notes:-
> =============
> - Removed @ImplicitlyConstructibleValue annotation from all VectorPayloadMF* classes.
> - Annotated multifield backed payload with @Strict annotation.
> - Re-alignment of the new shuffle implementation with multifield-backed payloads.
> - Fine tuning to skip over value forwarding vector boxes to handle non-flat payloads with -XX:-UseNonAtomicValueFlattening) in see_through_inline_type.
> - Fix in PhaseMacroExpand::eliminate_allocate_node to skip over the elimination of larval allocations.
> - New InlineTypeNode Identity transform to forward VectorBoxes tied to oop fields.
>   Such patterns are generated during incremental inlining when vector intrinsic call is replaced
>   by an equivalent VetorBoxNode. At this point, we don't require rematerializing InlineTypeNode chain
>   earlier tied to vector oop returned by intrinsic call.
> - Turning off AbortVMOnCompilationFailure for test/hotspot/jtreg/compiler/vectorapi/VectorMemoryAlias.java 
>   to avoid test failures due to compilation bailouts related make/finish private buffer intrinsic.
> 
> Functional Validation:-
> ==============
> 
> Valhalla JTREG tests configuration tested:-
>   1. Default Settings                          [2 FAILURES
> compiler/valhalla/inlinetypes/TestFieldNullMarkers.java                                                                                                     compiler/valhalla/inlinetypes/TestLWorld.java  
>  ]
>   2. With -XX:+DeoptimizeALot -XX:+SafePointALot    [4 FAILURES]
> compiler/valhalla/inlinetypes/TestAllocationMergeAndFolding.java
> compiler/valhalla/inlinetypes/TestC2CCalls.java
> compiler/valhalla/inlinetypes/TestFieldNullMarkers.java
> compiler/valhalla/inlinetypes/TestLWorld.java ]
> 
> VectorAPI JTREG test configurations tested:-
>   1. Default Settings -                                                    [ALL GREEN]
>   2. With -XX:+DeoptimizeALot -XX:+SafePointALot    [ Intermittent failures ]
>   3. With-XX:-UseNonAtomicValueFlattening                [ALL GREEN except 1 failure compiler/vectorapi/TestReverseByteTransforms.java on KNL]
> 
> Additional Notes:-
> ============
> - With the removal of the flat field size capping runtime flag 'InlineTypeMaxFlatSize', all vector payload fields
>   by default have a flat layout within concrete vector containers. 
> - Since VectorPayloadMF* classes are decorated with LooselyConsistentValue annotation and payload fields are marked
>   as @NullRestricted with @Strict field semantics, the only way to prevent p...

This pull request has now been integrated.

Changeset: 50897b28
Author:    Jatin Bhateja <jbhateja at openjdk.org>
URL:       https://git.openjdk.org/valhalla/commit/50897b2885b98977fbfef5bc522847be099e289c
Stats:     980397 lines in 14148 files changed: 465686 ins; 425709 del; 89002 mod

Merge lworld

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

PR: https://git.openjdk.org/valhalla/pull/1436


More information about the valhalla-dev mailing list