[aarch64-port-dev ] git: openjdk/aarch64-port: master: 8264774: Implementation of Foreign Function and Memory API (Incubator)

Maurizio Cimadamore mcimadamore at openjdk.java.net
Wed Jun 2 10:54:20 UTC 2021


Changeset: a223189b
Author:    Maurizio Cimadamore <mcimadamore at openjdk.org>
Date:      2021-06-02 10:53:06 +0000
URL:       https://git.openjdk.java.net/aarch64-port/commit/a223189b069a7cfe49511d49b5b09e7107cb3cab

8264774: Implementation of Foreign Function and Memory API (Incubator)

Co-authored-by: Paul Sandoz <psandoz at openjdk.org>
Co-authored-by: Jorn Vernee <jvernee at openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov at openjdk.org>
Co-authored-by: Athijegannathan Sundararajan <sundar at openjdk.org>
Co-authored-by: Chris Hegarty <chegar at openjdk.org>
Reviewed-by: psandoz, chegar, mchung, vlivanov

! src/hotspot/cpu/aarch64/foreign_globals_aarch64.cpp
! src/hotspot/cpu/aarch64/frame_aarch64.cpp
! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp
! src/hotspot/cpu/aarch64/universalUpcallHandler_aarch64.cpp
! src/hotspot/cpu/x86/foreign_globals_x86.cpp
! src/hotspot/cpu/x86/frame_x86.cpp
! src/hotspot/cpu/x86/javaFrameAnchor_x86.hpp
! src/hotspot/cpu/x86/sharedRuntime_x86_32.cpp
! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp
! src/hotspot/cpu/x86/universalUpcallHandler_x86_32.cpp
! src/hotspot/cpu/x86/universalUpcallHandler_x86_64.cpp
! src/hotspot/share/ci/ciNativeEntryPoint.cpp
! src/hotspot/share/ci/ciNativeEntryPoint.hpp
! src/hotspot/share/classfile/javaClasses.cpp
! src/hotspot/share/classfile/javaClasses.hpp
! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/code/codeBlob.cpp
! src/hotspot/share/code/codeBlob.hpp
! src/hotspot/share/logging/logTag.hpp
! src/hotspot/share/opto/callGenerator.cpp
! src/hotspot/share/opto/callnode.cpp
! src/hotspot/share/opto/graphKit.cpp
! src/hotspot/share/opto/graphKit.hpp
! src/hotspot/share/opto/lcm.cpp
! src/hotspot/share/prims/foreign_globals.cpp
! src/hotspot/share/prims/foreign_globals.hpp
! src/hotspot/share/prims/nativeEntryPoint.cpp
! src/hotspot/share/prims/universalNativeInvoker.cpp
! src/hotspot/share/prims/universalUpcallHandler.cpp
! src/hotspot/share/prims/universalUpcallHandler.hpp
! src/hotspot/share/prims/upcallStubs.cpp
! src/hotspot/share/prims/whitebox.cpp
! src/hotspot/share/runtime/arguments.cpp
! src/hotspot/share/runtime/frame.cpp
! src/hotspot/share/runtime/frame.hpp
! src/hotspot/share/runtime/frame.inline.hpp
! src/hotspot/share/runtime/globals.hpp
! src/hotspot/share/runtime/reflection.cpp
! src/hotspot/share/runtime/sharedRuntime.cpp
! src/hotspot/share/runtime/sharedRuntime.hpp
! src/java.base/share/classes/java/lang/Module.java
! src/java.base/share/classes/java/lang/System.java
! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java
! src/java.base/share/classes/java/lang/invoke/NativeMethodHandle.java
! src/java.base/share/classes/java/nio/Buffer.java
! src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java
! src/java.base/share/classes/jdk/internal/access/JavaLangInvokeAccess.java
! src/java.base/share/classes/jdk/internal/access/JavaNioAccess.java
! src/java.base/share/classes/jdk/internal/invoke/NativeEntryPoint.java
! src/java.base/share/classes/jdk/internal/loader/BootLoader.java
! src/java.base/share/classes/jdk/internal/misc/X-ScopedMemoryAccess.java.template
! src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java
! src/java.base/share/classes/jdk/internal/reflect/Reflection.java
! src/java.base/share/classes/module-info.java
! src/java.base/share/classes/sun/launcher/resources/launcher.properties
! src/java.base/share/classes/sun/nio/ch/IOUtil.java
! src/java.base/share/native/libjli/java.c
! src/java.base/unix/classes/sun/nio/ch/UnixAsynchronousSocketChannelImpl.java
! src/java.base/windows/classes/sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/AbstractLayout.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/Addressable.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/CLinker.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/GroupLayout.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/LibraryLookup.java
- src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MappedMemorySegments.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryAddress.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryHandles.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryLayout.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemoryLayouts.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/MemorySegment.java
- src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/NativeScope.java
+ src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/ResourceScope.java
+ src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/SegmentAllocator.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/SequenceLayout.java
! src/jdk.incubator.foreign/share/classes/jdk/incubator/foreign/package-info.java
+ src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/AbstractCLinker.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/AbstractMemorySegmentImpl.java
- src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/AbstractNativeScope.java
+ src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/ArenaAllocator.java
+ src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/ConfinedScope.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/HeapMemorySegmentImpl.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/LayoutPath.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/LibrariesHelper.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/MappedMemorySegmentImpl.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/MemoryAddressImpl.java
- src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/MemoryScope.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/NativeMemorySegmentImpl.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/PlatformLayouts.java
+ src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/ResourceScopeImpl.java
+ src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/SharedScope.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/Utils.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/Binding.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/BindingInterpreter.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/BufferLayout.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/ProgrammableInvoker.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/ProgrammableUpcallHandler.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/SharedUtils.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/UpcallStubs.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/aarch64/AArch64Linker.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/aarch64/AArch64VaList.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/aarch64/CallArranger.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/x64/sysv/CallArranger.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/x64/sysv/SysVVaList.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/x64/sysv/SysVx64Linker.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/x64/windows/CallArranger.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/x64/windows/WinVaList.java
! src/jdk.incubator.foreign/share/classes/jdk/internal/foreign/abi/x64/windows/Windowsx64Linker.java
! test/hotspot/jtreg/gc/shenandoah/compiler/TestLinkToNativeRBP.java
! test/jdk/TEST.groups
! test/jdk/java/foreign/CallGeneratorHelper.java
! test/jdk/java/foreign/NativeTestHelper.java
+ test/jdk/java/foreign/SafeFunctionAccessTest.java
! test/jdk/java/foreign/StdLibTest.java
! test/jdk/java/foreign/TestAdaptVarHandles.java
! test/jdk/java/foreign/TestAddressHandle.java
! test/jdk/java/foreign/TestArrays.java
! test/jdk/java/foreign/TestByteBuffer.java
- test/jdk/java/foreign/TestCleaner.java
! test/jdk/java/foreign/TestCondy.java
! test/jdk/java/foreign/TestDowncall.java
! test/jdk/java/foreign/TestFree.java
! test/jdk/java/foreign/TestHandshake.java
! test/jdk/java/foreign/TestIllegalLink.java
! test/jdk/java/foreign/TestIntrinsics.java
! test/jdk/java/foreign/TestLayoutConstants.java
! test/jdk/java/foreign/TestLayoutEquality.java
! test/jdk/java/foreign/TestLayoutPaths.java
! test/jdk/java/foreign/TestLayouts.java
! test/jdk/java/foreign/TestLibraryLookup.java
+ test/jdk/java/foreign/TestMatrix.java
! test/jdk/java/foreign/TestMemoryAccess.java
! test/jdk/java/foreign/TestMemoryAlignment.java
! test/jdk/java/foreign/TestMemoryCopy.java
! test/jdk/java/foreign/TestMemoryHandleAsUnsigned.java
! test/jdk/java/foreign/TestMismatch.java
! test/jdk/java/foreign/TestNative.java
- test/jdk/java/foreign/TestNativeScope.java
! test/jdk/java/foreign/TestNoForeignUnsafeOverride.java
! test/jdk/java/foreign/TestNulls.java
! test/jdk/java/foreign/TestRebase.java
! test/jdk/java/foreign/TestReshape.java
+ test/jdk/java/foreign/TestResourceScope.java
+ test/jdk/java/foreign/TestRestricted.java
+ test/jdk/java/foreign/TestScopedOperations.java
+ test/jdk/java/foreign/TestSegmentAllocators.java
! test/jdk/java/foreign/TestSegments.java
! test/jdk/java/foreign/TestSharedAccess.java
! test/jdk/java/foreign/TestSlices.java
! test/jdk/java/foreign/TestSpliterator.java
! test/jdk/java/foreign/TestTypeAccess.java
! test/jdk/java/foreign/TestUnsupportedPlatform.java
! test/jdk/java/foreign/TestUpcall.java
! test/jdk/java/foreign/TestUpcallHighArity.java
+ test/jdk/java/foreign/TestUpcallStructScope.java
- test/jdk/java/foreign/TestUpcallStubs.java
! test/jdk/java/foreign/TestVarArgs.java
! test/jdk/java/foreign/TestVarHandleCombinators.java
! test/jdk/java/foreign/callarranger/TestAarch64CallArranger.java
! test/jdk/java/foreign/callarranger/TestSysVCallArranger.java
! test/jdk/java/foreign/callarranger/TestWindowsCallArranger.java
+ test/jdk/java/foreign/channels/AbstractChannelsTest.java
+ test/jdk/java/foreign/channels/TestAsyncSocketChannels.java
+ test/jdk/java/foreign/channels/TestSocketChannels.java
+ test/jdk/java/foreign/enablenativeaccess/TestDriver.java
+ test/jdk/java/foreign/enablenativeaccess/org/openjdk/foreigntest/PanamaMainUnnamedModule.java
+ test/jdk/java/foreign/enablenativeaccess/panama_module/module-info.java
+ test/jdk/java/foreign/enablenativeaccess/panama_module/org/openjdk/foreigntest/PanamaMain.java
+ test/jdk/java/foreign/enablenativeaccess/panama_module/org/openjdk/foreigntest/PanamaMainInvoke.java
+ test/jdk/java/foreign/enablenativeaccess/panama_module/org/openjdk/foreigntest/PanamaMainReflection.java
+ test/jdk/java/foreign/handles/Driver.java
+ test/jdk/java/foreign/handles/invoker_module/handle/invoker/MethodHandleInvoker.java
+ test/jdk/java/foreign/handles/invoker_module/module-info.java
+ test/jdk/java/foreign/handles/lookup_module/handle/lookup/MethodHandleLookup.java
+ test/jdk/java/foreign/handles/lookup_module/module-info.java
! test/jdk/java/foreign/libLookupTest.c
+ test/jdk/java/foreign/libSafeAccess.c
= test/jdk/java/foreign/libTestUpcallStructScope.c
! test/jdk/java/foreign/stackwalk/TestStackWalk.java
! test/jdk/java/foreign/valist/VaListTest.java
+ test/jdk/java/foreign/virtual/TestVirtualCalls.java
+ test/jdk/java/foreign/virtual/libVirtual.c
! test/jdk/java/lang/invoke/VarHandles/VarHandleTestExact.java
! test/jdk/java/util/stream/test/org/openjdk/tests/java/util/stream/SegmentTestDataProvider.java
! test/jdk/java/util/stream/test/org/openjdk/tests/java/util/stream/SpliteratorTest.java
! test/jdk/jdk/nio/zipfs/LargeEntriesTest.java
! test/jdk/tools/jar/modularJar/Basic.java
! test/lib/sun/hotspot/WhiteBox.java
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/BulkMismatchAcquire.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/BulkOps.java
- test/micro/org/openjdk/bench/jdk/incubator/foreign/CallOverhead.java
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/CallOverheadConstant.java
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/CallOverheadHelper.java
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/CallOverheadVirtual.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverConstant.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverNew.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverNonConstant.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverNonConstantFP.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverNonConstantHeap.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverNonConstantMapped.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverNonConstantShared.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/LoopOverPollutedSegments.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/ParallelSum.java
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/ResourceScopeClose.java
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/StrLenTest.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/TestAdaptVarHandles.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/UnrolledAccess.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/Upcalls.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/VaList.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/VarHandleExact.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/libCallOverhead.c
! test/micro/org/openjdk/bench/jdk/incubator/foreign/libCallOverheadJNI.c
+ test/micro/org/openjdk/bench/jdk/incubator/foreign/libStrLen.c
! test/micro/org/openjdk/bench/jdk/incubator/foreign/libUpcalls.c
! test/micro/org/openjdk/bench/jdk/incubator/foreign/libUpcallsJNI.c
! test/micro/org/openjdk/bench/jdk/incubator/foreign/points/PointsAccess.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/points/PointsAlloc.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/points/PointsDistance.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/points/PointsFree.java
! test/micro/org/openjdk/bench/jdk/incubator/foreign/points/support/PanamaPoint.java



More information about the aarch64-port-dev mailing list