RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v24]
Maurizio Cimadamore
mcimadamore at openjdk.java.net
Thu May 20 13:05:55 UTC 2021
On Thu, 20 May 2021 13:00:15 GMT, Maurizio Cimadamore <mcimadamore at openjdk.org> wrote:
>> This PR contains the API and implementation changes for JEP-412 [1]. A more detailed description of such changes, to avoid repetitions during the review process, is included as a separate comment.
>>
>> [1] - https://openjdk.java.net/jeps/412
>
> Maurizio Cimadamore has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 35 additional commits since the last revision:
>
> - Add sealed modifiers in morally sealed API interfaces
> - Merge branch 'master' into JEP-412
> - Fix VaList test
> Remove unused code in Utils
> - Merge pull request #11 from JornVernee/JEP-412-MXCSR
>
> Add MXCSR save and restore to upcall stubs for non-windows platforms
> - Add MXCSR save and restore to upcall stubs for non-windows platforms
> - Merge branch 'master' into JEP-412
> - Fix issue with bounded arena allocator
> - Rename is_entry_blob to is_optimized_entry_blob
> Rename as_entry_blob to as_optimized_entry_blob
> Fix misc typos and indentation issues
> - Take care of remaining references to "Panama"
> - * Replace is_panama_entry_frame() with is_optimized_entry_frame()
> * Replace EntryBlob with OptimizedEntryBlob
> - ... and 25 more: https://git.openjdk.java.net/jdk/compare/629f67e6...e927c235
src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryLayout.java line 200:
> 198: * Implementations of this interface are immutable, thread-safe and <a href="{@docRoot}/java.base/java/lang/doc-files/ValueBased.html">value-based</a>.
> 199: */
> 200: public sealed interface MemoryLayout extends Constable permits AbstractLayout, SequenceLayout, GroupLayout, PaddingLayout, ValueLayout {
In principle we could just permit AbstractLayout and be done. In practice, the javadoc comes out better if we list all the concrete API interfaces which extend MemoryLayout, as the `permit` list will be displayed in the javadoc.
-------------
PR: https://git.openjdk.java.net/jdk/pull/3699
More information about the security-dev
mailing list