RFR: JDK-8308994: C2: Re-implement experimental post loop vectorization

Emanuel Peter epeter at openjdk.org
Fri Jun 23 12:11:08 UTC 2023


On Wed, 21 Jun 2023 08:24:19 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.

src/hotspot/share/opto/vmaskloop.hpp line 95:

> 93:     }
> 94:     return false;
> 95:   }

Do you not want to do this sort of implementation in `SWPointer` instead? There are already methods like `scaled_iv_plus_offset`, so it would fit in next to that, right?

src/hotspot/share/opto/vmaskloop.hpp line 97:

> 95:   }
> 96: 
> 97:   bool is_memory_phi(Node* n) {

Looks like a helper method that could live in `node.hpp` or `cfgnode.hpp`.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14581#discussion_r1239736305
PR Review Comment: https://git.openjdk.org/jdk/pull/14581#discussion_r1239739004


More information about the hotspot-dev mailing list