RFR: 8349088: De-virtualize Codeblob and nmethod [v2]
Vladimir Kozlov
kvn at openjdk.org
Mon Feb 10 17:06:13 UTC 2025
On Mon, 10 Feb 2025 16:23:53 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:
>> Vladimir Kozlov has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix Zero and Minimal VM builds
>
> We have a similar situation with oopDesc that are not allowed to have a vtable. The solution there is to use the Klass as the proxy vtable and then have a bunch of Klass::oop_ functions that act like virtual dispatch functions for associated oopDesc functions.
>
> I wonder if a similar approach can be use here? Such an approach would (to me at lest) have the benefit that we don't have to spread switch statements in various functions in the top-most class.
>
> If you are interested in seeing a prototype of this, take a look at this branch:
> https://github.com/openjdk/jdk/compare/master...stefank:jdk:code_blob_vptr
>
> Just a suggestion if you want to consider alternatives to these switch statements.
Thank you, @stefank. This is very interesting suggestion which I may take. I will check it.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/23533#issuecomment-2648688942
More information about the serviceability-dev
mailing list