Integrated: 8327381: Refactor type-improving transformations in BoolNode::Ideal to BoolNode::Value

Kangcheng Xu kxu at openjdk.org
Thu Aug 29 05:37:30 UTC 2024


On Mon, 11 Mar 2024 14:58:06 GMT, Kangcheng Xu <kxu at openjdk.org> wrote:

> This PR resolves [JDK-8327381](https://bugs.openjdk.org/browse/JDK-8327381)
> 
> Currently the transformations for expressions with patterns `((x & m) u<= m)` or `((m & x) u<= m)` to `true` is in `BoolNode::Ideal` function with a new constant node of value `1` created. However, this is technically a type-improving (reduction in range) transformation that's better suited in `BoolNode::Value` function.
> 
> New unit test `test/hotspot/jtreg/compiler/c2/TestBoolNodeGvn.java` asserting on IR nodes and correctness of this transformation is added and passing.

This pull request has now been integrated.

Changeset: 1383fec4
Author:    Kangcheng Xu <kxu at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/1383fec41756322bf2832c55633e46395b937b40
Stats:     186 lines in 4 files changed: 166 ins; 17 del; 3 mod

8327381: Refactor type-improving transformations in BoolNode::Ideal to BoolNode::Value

Reviewed-by: chagedorn, thartmann, jkarthikeyan, epeter

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

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


More information about the hotspot-compiler-dev mailing list