RFR: 8269838: BasicTypeDataBase.findDynamicTypeForAddress(addr, basetype) can be simplified

Kevin Walls kevinw at openjdk.java.net
Tue Dec 14 10:45:11 UTC 2021


On Tue, 14 Dec 2021 06:57:36 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:

> SA had a bunch of vtable related code that searched for the vtable pointer of a hotspot object in a few places. This was all related to weird ways that Solaris would store the vtable pointer. In the case of https://bugs.openjdk.java.net/browse/JDK-8269830, this extra vtable searching code introduced a bug in BasicTypeDataBase.addressTypeIsEqualToType(). Since we don't support Solaris anymore, this the bug was fixed by removing this Solaris support. At the time I fixed JDK-8269830, I noticed that BasicTypeDataBase.findDynamicTypeForAddress() had similar logic for vtable searching, although didn't seemed to be causing any bugs at the time. I filed JDK-8269838 to eventually clean it up, and that's what this PR is doing.

First word of object is the only sensible place for the vtable pointer... 8-)

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

Marked as reviewed by kevinw (Committer).

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


More information about the serviceability-dev mailing list