RFR: 8371297: C2: assert triggerred in BoolTest::BoolTest
Dean Long
dlong at openjdk.org
Wed Nov 5 21:23:04 UTC 2025
On Tue, 4 Nov 2025 22:18:13 GMT, Hamlin Li <mli at openjdk.org> wrote:
> Hi,
> Can you help to review this patch?
>
> Not sure how this one slipped in (https://github.com/openjdk/jdk/pull/28047/), I think it passed my local test and github CI test at that time.
> Please check https://bugs.openjdk.org/browse/JDK-8371297 for details.
>
> Thanks!
src/hotspot/share/opto/vtransform.cpp line 1427:
> 1425: const BoolTest bt(m);
> 1426: tty->print(" test=%s", m == _test._mask ? "" : "unsigned ");
> 1427: bt.dump_on(tty);
I was wondering why we pass the raw mask around instead of keeping it encapsulated in a BoolTest object. Elsewhere I saw code like this:
`cond->get_con() & (BoolTest::unsigned_compare - 1)`
which seems to be making fragile assumptions about BoolTest internals.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28141#discussion_r2496215037
More information about the hotspot-compiler-dev
mailing list