RFR: 8257483: C2: Split immediate vector rotate from RotateLeftV and RotateRightV nodes

Vladimir Ivanov vlivanov at openjdk.java.net
Thu Dec 3 17:50:55 UTC 2020


On Thu, 3 Dec 2020 14:00:36 GMT, Dong Bo <dongbo at openjdk.org> wrote:

> However, the workflow relys on the creation of RotateLeftV node, and the creation of RotateLeftV with variables should be forbidden if one CPU match RotateLeftV/RotateRightV only with constant shifts.

But degeneration step is specifically designed to cover the case when rotate vector node is not supported by the matcher.
It is perfectly fine to instantiate RotateV node considering it will be replaced by OrV+LShiftV+URShiftV before matcher kicks in. You just need to adjust the check so it works properly, don't you?

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

PR: https://git.openjdk.java.net/jdk/pull/1532


More information about the hotspot-compiler-dev mailing list