On Sun, 9 Feb 2025 17:45:30 GMT, Vladimir Kozlov <k...@openjdk.org> wrote:

> Remove virtual methods from CodeBlob and nmethod to simplify saving/restoring 
> in Leyden AOT cache. It avoids the need to patch hidden VPTR pointer to 
> class's virtual table.
> 
> Added C++ static asserts to make sure no virtual methods are added in a 
> future.
> 
> Fixed/cleaned SA code which process CodeBlob and its subclasses. Use 
> `CodeBlob::_kind` field value to determine the type of blob.
> 
> Tested tier1-5, hs-tier6-rt (for JFR testing), stress, xcomp

This pull request has now been integrated.

Changeset: 46d4a601
Author:    Vladimir Kozlov <k...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/46d4a601e04f90b11d4ccc97a49f4e7010b4fd83
Stats:     529 lines in 23 files changed: 262 ins; 152 del; 115 mod

8349088: De-virtualize Codeblob and nmethod

Co-authored-by: Stefan Karlsson <stef...@openjdk.org>
Co-authored-by: Chris Plummer <cjplum...@openjdk.org>
Reviewed-by: cjplummer, aboldtch, dlong

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

PR: https://git.openjdk.org/jdk/pull/23533

Reply via email to