RFR: 8322996: BoxLockNode creation fails with assert(reg < CHUNK_SIZE) failed: sanity [v5]
Daniel Lundén
dlunden at openjdk.org
Thu Jan 25 12:29:29 UTC 2024
On Thu, 25 Jan 2024 03:47:12 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:
>> Daniel Lundén has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix incorrect package name
>
> src/hotspot/share/opto/graphKit.cpp line 3473:
>
>> 3471: Node* box = _gvn.transform(new BoxLockNode(next_monitor()));
>> 3472: // Check for bailout after new BoxLockNode
>> 3473: if (failing()) { return nullptr; }
>
> Do all callers of `shared_lock()` checks for `failing()` or returned `nullptr`?
No, not the immediate callers at least. Below is a quick call graph analysis for the places where we create `BoxLockNode`s (up to the first bailout check). Should I add returns at all points in the call chain up to the first checks?
graphKit.cpp:3471 (this is in shared_lock)
locknode.cpp:196
parse2.cpp:2759
parse1.cpp:1594 (Checks for bailout at parse1.cpp:1595)
parse1.cpp:1264
parse1.cpp:582 (Checks for bailout at parse1.cpp:596)
parse1.cpp:227
parse1.cpp:579 (Checks for bailout at parse1.cpp:596)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17370#discussion_r1466298523
More information about the hotspot-compiler-dev
mailing list