Integrated: 8330163: C2: improve CMoveNode::Value() when condition is always true or false

Roland Westrelin roland at openjdk.org
Wed Apr 17 10:50:52 UTC 2024


On Fri, 12 Apr 2024 11:45:05 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> This is another small change from something I ran into while working
> on 8275202. `CMoveNode::Value` can be improved when the condition is
> known to be always true or false. That doesn't affect IGVN (as the
> `CMove` is removed in that case) but it can be useful for passes that
> propagates types such as CCP. In the IR tests, the backbranch of the
> loop is never taken when the root of the compilation is `test1`. With
> the change, CCP can eliminate it. Without, it can't.

This pull request has now been integrated.

Changeset: 9445047d
Author:    Roland Westrelin <roland at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/9445047d059a87d49ed0923b438d2ec49340d78e
Stats:     78 lines in 2 files changed: 78 ins; 0 del; 0 mod

8330163: C2: improve CMoveNode::Value() when condition is always true or false

Reviewed-by: chagedorn, kvn

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

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


More information about the hotspot-compiler-dev mailing list