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