RFR: 8316719: C2 compilation still fails with "bad AD file"
Christian Hagedorn
chagedorn at openjdk.org
Mon Nov 6 09:11:10 UTC 2023
On Sun, 5 Nov 2023 18:25:53 GMT, Quan Anh Mai <qamai at openjdk.org> wrote:
> Hi,
>
> As noted by Christian in JBS, checking for loop increment is unreliable. Since we are operating on the `BoolNode`, we can check for the counted loop condition directly.
>
> Please let me know if there is any issue with this approach. Thanks a lot.
That looks good!
src/hotspot/share/opto/subnode.cpp line 155:
> 153: }
> 154:
> 155: static bool is_cloop_condition(Node* bol) {
Nit: `bol` could be of type `BoolNode*`
test/hotspot/jtreg/compiler/c2/MinValueStrideCountedLoop.java line 40:
> 38: * @summary Loop increment should not be transformed into unsigned comparison
> 39: *
> 40: * @run main/othervm -Xcomp -XX:-TieredCompilation -XX:-UseLoopPredicate
Since `UseLoopPredicate` is C2 specific, you should add a `@requires vm.compiler2.enabled`.
-------------
Marked as reviewed by chagedorn (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/16509#pullrequestreview-1714577395
PR Review Comment: https://git.openjdk.org/jdk/pull/16509#discussion_r1382972350
PR Review Comment: https://git.openjdk.org/jdk/pull/16509#discussion_r1382971062
More information about the hotspot-compiler-dev
mailing list