On Tue, 10 May 2022 19:16:35 GMT, Vladimir Ivanov <vliva...@openjdk.org> wrote:

>> Jorn Vernee has updated the pull request with a new target base due to a 
>> merge or a rebase. The pull request now contains 21 commits:
>> 
>>  - Merge branch 'foreign-preview-m' into JEP-19-VM-IMPL2
>>  - Remove unneeded ComputeMoveOrder
>>  - Remove comment about native calls in lcm.cpp
>>  - 8284072: foreign/StdLibTest.java randomly crashes on MacOS/AArch64
>>    
>>    Reviewed-by: jvernee, mcimadamore
>>  - Update riscv and arm stubs
>>  - Remove spurious ProblemList change
>>  - Pass pointer to LogStream
>>  - Polish
>>  - Replace TraceNativeInvokers flag with unified logging
>>  - Fix other platforms, take 2
>>  - ... and 11 more: 
>> https://git.openjdk.java.net/jdk/compare/3c88a2ef...43fd1b91
>
> src/hotspot/share/code/codeBlob.hpp line 754:
> 
>> 752: class ProgrammableUpcallHandler;
>> 753: 
>> 754: class OptimizedEntryBlob: public RuntimeBlob {
> 
> What's the motivation to move `OptimizedEntryBlob` up in the hierarchy (from 
> `BufferBlob` to `RuntimeBlob`)?

Some of it is discussed here: https://github.com/openjdk/panama-foreign/pull/617

Essentially, it is to avoid accidentally inheriting behavior from BufferBlob 
which we don't want. Also, BufferBlob currently expects a fixed-sized header 
(`sizeof(BufferBlob)`), while OptimizedEntryBlobs has fields, so we'd have to 
pass the real header size to the `BufferBlob` constructor, which is a bit messy.

It felt better to just cleanly break away from BufferBlob.

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

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

Reply via email to