RFR: 8332119: Incorrect IllegalArgumentException for C2 compiled permute kernel [v3]
Emanuel Peter
epeter at openjdk.org
Wed Jun 5 06:49:00 UTC 2024
On Wed, 5 Jun 2024 06:25:41 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Review comments resolutions.
>
> src/hotspot/share/opto/vectorIntrinsics.cpp line 530:
>
>> 528:
>> 529: Node* mod_val = gvn().makecon(TypeInt::make(num_elem-1));
>> 530: Node* bcast_mod = gvn().transform(VectorNode::scalar2vector(mod_val, num_elem, type_bt));
>
> Naming issue: this is not the result of the mod, so "mod" is a bit misleading. I would use `mask`, as it is used as a mask in the AndV below.
Also: it seems to me that you are duplicating these 4 lines above from its call-site. I wonder if this means that you are slicing the boundary of your new method right, or if maybe the whole if-else block from the call-site should be a new method?
> test/hotspot/jtreg/compiler/vectorapi/TestTwoVectorPermute.java line 44:
>
>> 42: public static final VectorSpecies<Float> FSP = FloatVector.SPECIES_256;
>> 43:
>> 44: public static void validate(float [] res, float [] shuf, float [] src1, float [] src2) {
>
> Suggestion:
>
> public static void validate(float[] res, float[] shuf, float[] src1, float[] src2) {
Similar issues below.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19442#discussion_r1627057938
PR Review Comment: https://git.openjdk.org/jdk/pull/19442#discussion_r1627065396
More information about the hotspot-compiler-dev
mailing list