Integrated: 8332442: C2: refactor Mod cases in Compile::final_graph_reshaping_main_switch()

Kangcheng Xu kxu at openjdk.org
Tue Sep 17 07:22:23 UTC 2024


On Thu, 5 Sep 2024 21:01:00 GMT, Kangcheng Xu <kxu at openjdk.org> wrote:

> Hello all. This patch addresses [JDK-8332442](https://bugs.openjdk.org/browse/JDK-8332442) and refactors `Op_ModI`/`Op_ModL`/`Op_UModI`/`Op_UModL` cases in `DIVMOD` transforamtions. The purpose of the transformation to convert adjacent div `/`  and mod `%` operations of the same operands into one should the platform support this feature (e.g., x86-64).
> 
> I took the liberty adding _signed_ DIVMOD nodes (i.e., `DIV_MOD_I` and `DIV_MOD_L`) to the `IRNode` class constants as they are previously missing. Please let me know if they were left intentionally and if there are any other concerns. Thanks!
> 
> ~This will be a draft PR before GHA tests are confirmed passing.~

This pull request has now been integrated.

Changeset: 10050a72
Author:    Kangcheng Xu <kxu at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/10050a723954926926650af65417d5b828cba387
Stats:     348 lines in 7 files changed: 280 ins; 64 del; 4 mod

8332442: C2: refactor Mod cases in Compile::final_graph_reshaping_main_switch()

Reviewed-by: roland, chagedorn, jkarthikeyan

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

PR: https://git.openjdk.org/jdk/pull/20877


More information about the hotspot-compiler-dev mailing list