RFR: 8307609: RISC-V: Added support for Extract, Compress, Expand and other nodes for Vector API [v3]

Dingli Zhang dzhang at openjdk.org
Tue May 16 07:35:55 UTC 2023


On Mon, 15 May 2023 13:13:00 GMT, Feilong Jiang <fjiang at openjdk.org> wrote:

>> Dingli Zhang has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Remove debug warning
>
> src/hotspot/cpu/riscv/riscv_v.ad line 2895:
> 
>> 2893: // vector sqrt - predicated
>> 2894: 
>> 2895: instruct vsqrt_masked(vReg dst_src, vRegMask_V0 v0) %{
> 
> Maybe it's better to split predicated version into `vsqrtF_masked` and `vsqrtD_masked` just like vector sqrt did.

Thanks for the review! Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 3364:
> 
>> 3362: %}
>> 3363: 
>> 3364: instruct vmaskAllI_masked(vRegMask dst, iRegI src, vRegMask_V0 v0, vReg tmp) %{
> 
> `iRegI` -> `iRegIorL2I`

Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 4049:
> 
>> 4047: // ------------------------------ Populate Index to a Vector -------------------
>> 4048: 
>> 4049: instruct populateindex(vReg dst, iRegI src1, iRegI src2, vReg tmp1) %{
> 
> `iRegI` -> `iRegIorL2I`

Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 4068:
> 
>> 4066: // BYTE, SHORT, INT
>> 4067: 
>> 4068: instruct insertI_index_lt32(vReg dst, vReg src, iRegI val, immI idx, vRegMask_V0 v0) %{
> 
> `iRegI` -> `iRegIorL2I`

Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 4087:
> 
>> 4085: %}
>> 4086: 
>> 4087: instruct insertI_index(vReg dst, vReg src, iRegI val, iRegI idx, vReg tmp1, vRegMask_V0 v0) %{
> 
> `iRegI` -> `iRegIorL2I`

Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 4125:
> 
>> 4123: %}
>> 4124: 
>> 4125: instruct insertL_index(vReg dst, vReg src, iRegL val, iRegI idx, vReg tmp1, vRegMask_V0 v0) %{
> 
> Can the reg type of `idx` be `iRegIorL2I`?

Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 4160:
> 
>> 4158: %}
>> 4159: 
>> 4160: instruct insertF_index(vReg dst, vReg src, fRegF val, iRegI idx, vReg tmp1, vRegMask_V0 v0) %{
> 
> Same here for reg type of `idx`.

Fixed.

> src/hotspot/cpu/riscv/riscv_v.ad line 4194:
> 
>> 4192: %}
>> 4193: 
>> 4194: instruct insertD_index(vReg dst, vReg src, fRegD val, iRegI idx, vReg tmp1, vRegMask_V0 v0) %{
> 
> Same here for reg type of `idx`.

Fixed.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734501
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734567
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734759
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734819
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734880
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734926
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194734975
PR Review Comment: https://git.openjdk.org/jdk/pull/13862#discussion_r1194735117


More information about the hotspot-compiler-dev mailing list