RFR: 8308994: C2: Re-implement experimental post loop vectorization [v4]
Pengfei Li
pli at openjdk.org
Thu Nov 16 01:19:58 UTC 2023
On Wed, 27 Sep 2023 08:36:43 GMT, Pengfei Li <pli at openjdk.org> wrote:
>> ## TL;DR
>>
>> This patch completely re-implements C2's experimental post loop vectorization for better stability, maintainability and performance. Compared with the original implementation, this new implementation adds a standalone loop phase in C2's ideal loop phases and can vectorize more post loops. The original implementation and all code related to multi-versioned post loops are deleted in this patch. More details about this patch can be found in the document replied in this pull request.
>
> Pengfei Li has updated the pull request incrementally with one additional commit since the last revision:
>
> Fix code style issues and add loop head dump
src/hotspot/cpu/x86/x86.ad line 9022:
> 9020: %}
> 9021:
> 9022: instruct loop_vmask_gen_small_trip(kReg dst, rRegI from, rRegI to, rRegI tmp1, rRegL tmp2) %{
We probably need to mark rflags being killed for this. See https://github.com/openjdk/jdk/pull/16680
src/hotspot/cpu/x86/x86.ad line 9040:
> 9038: %}
> 9039:
> 9040: instruct loop_vmask_gen(kReg dst, rRegI from, rRegI to, rRegI tmp1, rRegL tmp2) %{
ditto
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14581#discussion_r1395040161
PR Review Comment: https://git.openjdk.org/jdk/pull/14581#discussion_r1395040240
More information about the hotspot-dev
mailing list