RFR: 8293409: [vectorapi] Intrinsify VectorSupport.indexVector [v2]

Xiaohong Gong xgong at openjdk.org
Tue Oct 18 01:44:21 UTC 2022


On Thu, 13 Oct 2022 07:04:25 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Xiaohong Gong has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
>> 
>>  - Add the floating point support for VectorLoadConst and remove the VectorCast
>>  - Merge branch 'master' into JDK-8293409
>>  - 8293409: [vectorapi] Intrinsify VectorSupport.indexVector
>
> src/hotspot/share/opto/vectorIntrinsics.cpp line 2949:
> 
>> 2947:   } else if (elem_bt == T_DOUBLE) {
>> 2948:     iota = gvn().transform(new VectorCastL2XNode(iota, vt));
>> 2949:   }
> 
> Since we are loading constants from stub initialized memory locations, defining new stubs for floating point iota indices may eliminate need for costly conversion instructions. Specially on X86 conversion b/w Long and Double is only supported by AVX512DQ targets and intrinsification may fail for legacy targets.

Make sense to me! I'v changed the codes based on the suggestion in the latest commit. Please help to take a review again! Thanks a lot!

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

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


More information about the core-libs-dev mailing list