RFR: 8323582: C2 SuperWord AlignVector: misaligned vector memory access with unaligned native memory

Roland Westrelin roland at openjdk.org
Tue Feb 18 09:56:14 UTC 2025


On Tue, 18 Feb 2025 09:48:58 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> src/hotspot/share/opto/loopnode.cpp line 1097:
>> 
>>> 1095:     // PhaseIdealLoop::add_parse_predicate only checks trap limits per method, so
>>> 1096:     // we do a custom check here.
>>> 1097:     if (!C->too_many_traps(cloned_sfpt->jvms()->method(), cloned_sfpt->jvms()->bci(), Deoptimization::Reason_auto_vectorization_check)) {
>> 
>> Isn't that done by `add_parse_predicate`?
>
> @rwestrel I only see `if (!C->too_many_traps(reason)) {` in `PhaseIdealLoop::add_parse_predicate`. And as the comment I put here that only checks the `reason` per `method`, and not per `bci`. Do you see anything else?

Seems like it's a bug that `PhaseIdealLoop::add_parse_predicate` doesn't check the `bci` too. Could you fix it?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/22016#discussion_r1959411405


More information about the hotspot-dev mailing list