[lworld] Integrated: 8306986: [lworld] C2 compilation fails with assert "Should have been buffered"

Tobias Hartmann thartmann at openjdk.org
Fri Apr 28 06:27:29 UTC 2023


On Thu, 27 Apr 2023 15:39:36 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

> An assert failed because C2 was not able to prove that an inline type was always buffered. I replaced the hacky `InlineTypeNode::_is_buffered` field by a proper node input to propagate the allocation state through C2 IR. We need it in addition to the oop input because for a `null` the oop input is `null` but the node should still be treated as buffered. Reviving my prototype test generator, I found some tests that trigger two too strong asserts. I added the tests and removed the asserts.
> 
> Best regards,
> Tobias

This pull request has now been integrated.

Changeset: 131a3cee
Author:    Tobias Hartmann <thartmann at openjdk.org>
URL:       https://git.openjdk.org/valhalla/commit/131a3cee543eadb6c992570dd6e3b5ee61f7860e
Stats:     142 lines in 7 files changed: 72 ins; 28 del; 42 mod

8306986: [lworld] C2 compilation fails with assert "Should have been buffered"

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

PR: https://git.openjdk.org/valhalla/pull/844



More information about the valhalla-dev mailing list