[vectorIntrinsics] RFR: 8264469: Add Insert float nodes implementation for Arm SVE [v2]

Wang Huang whuang at openjdk.java.net
Tue Apr 6 02:09:24 UTC 2021


On Tue, 6 Apr 2021 01:59:37 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:

>> Wang Huang has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   add fast path
>
> src/hotspot/cpu/aarch64/aarch64_sve.ad line 3265:
> 
>> 3263: %}
>> 3264: 
>> 3265: instruct insertL_fast(vReg dst, vReg src, iRegL val, immI idx, vReg tmp, pRegGov pTmp, rFlagsReg cr)
> 
> Since the `n->as_Vector()->length() >32` doesn't exist, is `insertL` better here?

It is considered that all `concise` rules (which is named `fast` now ) should have the common macro , otherwise we may use too many macros.

> src/hotspot/cpu/aarch64/aarch64_sve.ad line 3267:
> 
>> 3265: instruct insertL_fast(vReg dst, vReg src, iRegL val, immI idx, vReg tmp, pRegGov pTmp, rFlagsReg cr)
>> 3266: %{
>> 3267:   predicate(UseSVE > 0 && n->as_Vector()->length() <= 32 &&
> 
> Can `n->as_Vector()->length() <= 32` be removed? Or maybe an assertion is better.

Yes . The reason is the same as last comment. https://github.com/openjdk/panama-vector/pull/56#discussion_r607437523
 Or we COULD split insertL and insertD from other ones ?

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

PR: https://git.openjdk.java.net/panama-vector/pull/56


More information about the panama-dev mailing list