RFR: 8327381 Refactor type-improving transformations in BoolNode::Ideal to BoolNode::Value [v3]
Jasmine Karthikeyan
jkarthikeyan at openjdk.org
Tue Mar 12 22:13:14 UTC 2024
On Tue, 12 Mar 2024 18:43:47 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.
>
> Kangcheng Xu has updated the pull request incrementally with one additional commit since the last revision:
>
> modification per code review suggestions
Thanks for the update! Just one more thing from me.
test/hotspot/jtreg/compiler/c2/irTests/TestBoolNodeGvn.java line 39:
> 37: * @summary Refactor boolean node tautology transformations
> 38: * @library /test/lib /
> 39: * @run driver compiler.c2.TestBoolNodeGvn
Suggestion:
* @run driver compiler.c2.irTests.TestBoolNodeGvn
Since the test's package changed, this'll need to be changed as well.
-------------
PR Review: https://git.openjdk.org/jdk/pull/18198#pullrequestreview-1932781890
PR Review Comment: https://git.openjdk.org/jdk/pull/18198#discussion_r1522167995
More information about the hotspot-compiler-dev
mailing list