RFR: 8237363: Remove automatic is in heap verification in OopIterateClosure

Stefan Karlsson stefank at openjdk.java.net
Thu Oct 22 09:06:16 UTC 2020


On Thu, 22 Oct 2020 09:01:23 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> > > This has two minor drawbacks for GC implementations that verify oops with their own asserts (like Shenandoah): they would call into `CollectedHeap::is_in` twice (once from shared code assert, and once from their own), and then also fail with non-rich assert (in the shared code) when something goes wrong. Of course, that can be mitigated by calling into `_raw` versions.
> > 
> > 
> > Yes, those are the trade-offs. Do you consider this a blocker?
> 
> Not really a blocker, just mentioning the follow-up work that might need to be done.
> 
> On one hand, we almost never omit asserts on performance grounds, but on the other hand, this adds assert on a rather frequent path. I don't mind having an extra safety there, and then let callers (e.g. GCs) to use `_raw` versions to make `fastdebug` testing a tad faster.

OK. Thanks.

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

PR: https://git.openjdk.java.net/jdk/pull/797


More information about the hotspot-dev mailing list