RFR: 8367389: C2 SuperWord: refactor VTransform to model the whole loop instead of just the basic block [v2]
Emanuel Peter
epeter at openjdk.org
Wed Sep 17 11:45:58 UTC 2025
On Fri, 12 Sep 2025 09:09:29 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> Emanuel Peter has updated the pull request incrementally with one additional commit since the last revision:
>>
>> for Manuel
>
> src/hotspot/share/opto/vectorization.cpp line 212:
>
>> 210: // - No memory phi: only loads. All have the same input memory state from before the loop.
>> 211: // - With memory phi. Chain of memory operations inside the loop.
>> 212: void VLoopMemorySlices::find_memory_slices() {
>
> See `VLoopMemorySlices` for more documentation on the cases.
Note: we used to only track slices with phis (i.e. with stores on the slice), and not those that have only loads (and hence no phi).
> src/hotspot/share/opto/vectorization.hpp line 382:
>
>> 380: };
>> 381:
>> 382: // Submodule of VLoopAnalyzer.
>
> Refactored and moved down.
Needs to be after `VLoopBody`, because `VLoopMemorySlices` now needs `VLoopBody` as input.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27208#discussion_r2343565551
PR Review Comment: https://git.openjdk.org/jdk/pull/27208#discussion_r2343551782
More information about the hotspot-compiler-dev
mailing list