git: openjdk/mobile: 2 new changesets

duke duke at openjdk.org
Thu Oct 12 19:53:24 UTC 2023


Changeset: 32ac72c3
Author:    Jorn Vernee <jvernee at openjdk.org>
Date:      2023-10-12 19:50:08 +0000
URL:       https://git.openjdk.org/mobile/commit/32ac72c3d35138f5253e4defc948304ac3ea1b53

8312522: Implementation of Foreign Function & Memory API

Co-authored-by: Maurizio Cimadamore <mcimadamore at openjdk.org>
Co-authored-by: Jorn Vernee <jvernee at openjdk.org>
Co-authored-by: Per Minborg <pminborg at openjdk.org>
Reviewed-by: dholmes, psandoz, mcimadamore, alanb

! .github/workflows/main.yml
! make/conf/jib-profiles.js
! src/java.base/share/classes/java/lang/Class.java
! src/java.base/share/classes/java/lang/Module.java
! src/java.base/share/classes/java/lang/ModuleLayer.java
! src/java.base/share/classes/java/lang/System.java
! src/java.base/share/classes/java/lang/foreign/AddressLayout.java
! src/java.base/share/classes/java/lang/foreign/Arena.java
! src/java.base/share/classes/java/lang/foreign/FunctionDescriptor.java
! src/java.base/share/classes/java/lang/foreign/GroupLayout.java
! src/java.base/share/classes/java/lang/foreign/Linker.java
! src/java.base/share/classes/java/lang/foreign/MemoryLayout.java
! src/java.base/share/classes/java/lang/foreign/MemorySegment.java
! src/java.base/share/classes/java/lang/foreign/PaddingLayout.java
! src/java.base/share/classes/java/lang/foreign/SegmentAllocator.java
! src/java.base/share/classes/java/lang/foreign/SequenceLayout.java
! src/java.base/share/classes/java/lang/foreign/StructLayout.java
! src/java.base/share/classes/java/lang/foreign/SymbolLookup.java
! src/java.base/share/classes/java/lang/foreign/UnionLayout.java
! src/java.base/share/classes/java/lang/foreign/ValueLayout.java
! src/java.base/share/classes/java/lang/foreign/package-info.java
! src/java.base/share/classes/java/lang/foreign/snippet-files/Snippets.java
! src/java.base/share/classes/java/lang/invoke/MethodHandles.java
! src/java.base/share/classes/java/lang/invoke/VarHandleSegmentViewBase.java
! src/java.base/share/classes/java/lang/invoke/X-VarHandleSegmentView.java.template
! src/java.base/share/classes/java/nio/channels/FileChannel.java
! src/java.base/share/classes/java/util/jar/Attributes.java
! src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java
! src/java.base/share/classes/jdk/internal/foreign/AbstractMemorySegmentImpl.java
+ src/java.base/share/classes/jdk/internal/foreign/ArenaImpl.java
! src/java.base/share/classes/jdk/internal/foreign/LayoutPath.java
! src/java.base/share/classes/jdk/internal/foreign/MemorySessionImpl.java
! src/java.base/share/classes/jdk/internal/foreign/NativeMemorySegmentImpl.java
! src/java.base/share/classes/jdk/internal/foreign/SlicingAllocator.java
+ src/java.base/share/classes/jdk/internal/foreign/StringSupport.java
! src/java.base/share/classes/jdk/internal/foreign/Utils.java
! src/java.base/share/classes/jdk/internal/foreign/abi/AbstractLinker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/BindingInterpreter.java
! src/java.base/share/classes/jdk/internal/foreign/abi/CallingSequence.java
! src/java.base/share/classes/jdk/internal/foreign/abi/LinkerOptions.java
! src/java.base/share/classes/jdk/internal/foreign/abi/SharedUtils.java
! src/java.base/share/classes/jdk/internal/foreign/abi/aarch64/linux/LinuxAArch64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/aarch64/macos/MacOsAArch64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/aarch64/windows/WindowsAArch64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/fallback/FFIType.java
! src/java.base/share/classes/jdk/internal/foreign/abi/fallback/FallbackLinker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/fallback/LibFallback.java
! src/java.base/share/classes/jdk/internal/foreign/abi/ppc64/linux/LinuxPPC64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/ppc64/linux/LinuxPPC64leLinker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/riscv64/linux/LinuxRISCV64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/s390/linux/LinuxS390Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/x64/sysv/SysVx64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/abi/x64/windows/Windowsx64Linker.java
! src/java.base/share/classes/jdk/internal/foreign/layout/AbstractGroupLayout.java
! src/java.base/share/classes/jdk/internal/foreign/layout/AbstractLayout.java
! src/java.base/share/classes/jdk/internal/foreign/layout/ValueLayouts.java
! src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java
! src/java.base/share/classes/jdk/internal/misc/VM.java
! src/java.base/share/classes/jdk/internal/module/Modules.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/LauncherHelper.java
! src/java.base/share/classes/sun/launcher/resources/launcher.properties
! src/java.base/share/native/libfallbackLinker/fallbackLinker.c
! src/jdk.incubator.vector/share/classes/module-info.java
! test/hotspot/jtreg/compiler/rangechecks/TestRangeCheckHoistingScaledIV.java
! test/hotspot/jtreg/compiler/vectorapi/TestIntrinsicBailOut.java
! test/hotspot/jtreg/compiler/vectorapi/TestVectorErgonomics.java
! test/hotspot/jtreg/compiler/vectorapi/VectorMemoryAlias.java
! test/hotspot/jtreg/compiler/vectorapi/VectorRebracket128Test.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX1.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX2.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512BW.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512DQ.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastNeon.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastSVE.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorReinterpret.java
! test/hotspot/jtreg/compiler/vectorapi/reshape/utils/VectorReshapeHelper.java
! test/hotspot/jtreg/gc/shenandoah/compiler/TestLinkToNativeRBP.java
! test/hotspot/jtreg/runtime/ClassFile/ClassFileVersionTest.java
! test/jdk/java/foreign/CompositeLookupTest.java
! test/jdk/java/foreign/LibraryLookupTest.java
! test/jdk/java/foreign/MemoryLayoutPrincipalTotalityTest.java
! test/jdk/java/foreign/MemoryLayoutTypeRetentionTest.java
! test/jdk/java/foreign/NativeTestHelper.java
! test/jdk/java/foreign/SafeFunctionAccessTest.java
! test/jdk/java/foreign/StdLibTest.java
+ test/jdk/java/foreign/TestAccessModes.java
! test/jdk/java/foreign/TestAdaptVarHandles.java
! test/jdk/java/foreign/TestAddressDereference.java
! test/jdk/java/foreign/TestArrayCopy.java
! test/jdk/java/foreign/TestArrays.java
! test/jdk/java/foreign/TestByteBuffer.java
! test/jdk/java/foreign/TestClassLoaderFindNative.java
! test/jdk/java/foreign/TestDereferencePath.java
! test/jdk/java/foreign/TestDowncallScope.java
! test/jdk/java/foreign/TestDowncallStack.java
! test/jdk/java/foreign/TestFallbackLookup.java
! test/jdk/java/foreign/TestFree.java
! test/jdk/java/foreign/TestFunctionDescriptor.java
! test/jdk/java/foreign/TestHFA.java
! test/jdk/java/foreign/TestHandshake.java
! test/jdk/java/foreign/TestHeapAlignment.java
! test/jdk/java/foreign/TestIllegalLink.java
! test/jdk/java/foreign/TestIntrinsics.java
! test/jdk/java/foreign/TestLargeSegmentCopy.java
! test/jdk/java/foreign/TestLayoutPaths.java
! test/jdk/java/foreign/TestLayouts.java
! test/jdk/java/foreign/TestLinker.java
! test/jdk/java/foreign/TestMatrix.java
! test/jdk/java/foreign/TestMemoryAccess.java
! test/jdk/java/foreign/TestMemoryAccessInstance.java
! test/jdk/java/foreign/TestMemoryAlignment.java
! test/jdk/java/foreign/TestMemoryDereference.java
! test/jdk/java/foreign/TestMemorySession.java
! test/jdk/java/foreign/TestMismatch.java
! test/jdk/java/foreign/TestNULLAddress.java
! test/jdk/java/foreign/TestNative.java
! test/jdk/java/foreign/TestNulls.java
! test/jdk/java/foreign/TestOfBufferIssue.java
! test/jdk/java/foreign/TestReshape.java
! test/jdk/java/foreign/TestRestricted.java
! test/jdk/java/foreign/TestScopedOperations.java
! test/jdk/java/foreign/TestSegmentAllocators.java
! test/jdk/java/foreign/TestSegmentCopy.java
! test/jdk/java/foreign/TestSegmentOffset.java
! test/jdk/java/foreign/TestSegmentOverlap.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/TestStringEncoding.java
! test/jdk/java/foreign/TestTypeAccess.java
- test/jdk/java/foreign/TestUnsupportedLinker.java
! test/jdk/java/foreign/TestUpcallAsync.java
! test/jdk/java/foreign/TestUpcallException.java
! test/jdk/java/foreign/TestUpcallHighArity.java
! test/jdk/java/foreign/TestUpcallScope.java
! test/jdk/java/foreign/TestUpcallStack.java
! test/jdk/java/foreign/TestUpcallStructScope.java
! test/jdk/java/foreign/TestValueLayouts.java
! test/jdk/java/foreign/TestVarArgs.java
! test/jdk/java/foreign/TestVarHandleCombinators.java
! test/jdk/java/foreign/UpcallTestHelper.java
! test/jdk/java/foreign/arraystructs/TestArrayStructs.java
! test/jdk/java/foreign/callarranger/TestLayoutEquality.java
! test/jdk/java/foreign/callarranger/TestLinuxAArch64CallArranger.java
! test/jdk/java/foreign/callarranger/TestMacOsAArch64CallArranger.java
! test/jdk/java/foreign/callarranger/TestRISCV64CallArranger.java
! test/jdk/java/foreign/callarranger/TestSysVCallArranger.java
! test/jdk/java/foreign/callarranger/TestWindowsAArch64CallArranger.java
! test/jdk/java/foreign/callarranger/TestWindowsCallArranger.java
! test/jdk/java/foreign/capturecallstate/TestCaptureCallState.java
! test/jdk/java/foreign/channels/TestAsyncSocketChannels.java
! test/jdk/java/foreign/channels/TestSocketChannels.java
! test/jdk/java/foreign/dontrelease/TestDontRelease.java
! test/jdk/java/foreign/enablenativeaccess/TestEnableNativeAccess.java
+ test/jdk/java/foreign/enablenativeaccess/TestEnableNativeAccessBase.java
! test/jdk/java/foreign/enablenativeaccess/TestEnableNativeAccessDynamic.java
+ test/jdk/java/foreign/enablenativeaccess/TestEnableNativeAccessJarManifest.java
= test/jdk/java/foreign/enablenativeaccess/org/openjdk/foreigntest/unnamed/PanamaMainUnnamedModule.java
= test/jdk/java/foreign/enablenativeaccess/org/openjdk/foreigntest/unnamed/libLinkerInvokerUnnamed.cpp
- test/jdk/java/foreign/enablenativeaccess/panama_module/org/openjdk/foreigntest/PanamaMain.java
! test/jdk/java/foreign/enablenativeaccess/panama_module/org/openjdk/foreigntest/libLinkerInvokerModule.cpp
! test/jdk/java/foreign/handles/Driver.java
! test/jdk/java/foreign/largestub/TestLargeStub.java
! test/jdk/java/foreign/loaderLookup/TestLoaderLookup.java
! test/jdk/java/foreign/loaderLookup/TestLoaderLookupJNI.java
! test/jdk/java/foreign/nested/TestNested.java
! test/jdk/java/foreign/normalize/TestNormalize.java
! test/jdk/java/foreign/passheapsegment/TestPassHeapSegment.java
! test/jdk/java/foreign/stackwalk/TestAsyncStackWalk.java
! test/jdk/java/foreign/stackwalk/TestReentrantUpcalls.java
! test/jdk/java/foreign/stackwalk/TestStackWalk.java
+ test/jdk/java/foreign/trivial/TestCritical.java
+ test/jdk/java/foreign/trivial/TestCriticalUpcall.java
- test/jdk/java/foreign/trivial/TestTrivial.java
- test/jdk/java/foreign/trivial/TestTrivialUpcall.java
= test/jdk/java/foreign/trivial/libCritical.c
! test/jdk/java/foreign/upcalldeopt/TestUpcallDeopt.java
! test/jdk/java/foreign/virtual/TestVirtualCalls.java
! test/jdk/java/lang/Thread/jni/AttachCurrentThread/AttachTest.java
! test/jdk/java/lang/invoke/VarHandles/IndirectVarHandleTest.java
! test/jdk/java/lang/invoke/VarHandles/VarHandleTestExact.java
! test/jdk/java/nio/channels/FileChannel/LargeMapTest.java
! test/jdk/java/nio/channels/FileChannel/MapToMemorySegmentTest.java
! test/jdk/java/util/stream/test/TEST.properties
! test/jdk/jdk/incubator/vector/Byte128VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Byte256VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Byte512VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Byte64VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/ByteMaxVectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Double128VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Double256VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Double512VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Double64VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/DoubleMaxVectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Float128VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Float256VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Float512VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Float64VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/FloatMaxVectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Int128VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Int256VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Int512VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Int64VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/IntMaxVectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Long128VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Long256VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Long512VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Long64VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/LongMaxVectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Short128VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Short256VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Short512VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/Short64VectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/ShortMaxVectorLoadStoreTests.java
! test/jdk/jdk/incubator/vector/VectorReshapeTests.java
! test/jdk/jdk/incubator/vector/templates/X-LoadStoreTest.java.template
! test/langtools/tools/javac/RestrictedMethods.java
! test/langtools/tools/javac/RestrictedMethods.out
+ test/micro/org/openjdk/bench/java/lang/foreign/AllocFromSliceTest.java
+ test/micro/org/openjdk/bench/java/lang/foreign/AllocFromTest.java
! test/micro/org/openjdk/bench/java/lang/foreign/BulkOps.java
! test/micro/org/openjdk/bench/java/lang/foreign/CLayouts.java
! test/micro/org/openjdk/bench/java/lang/foreign/CallOverheadConstant.java
! test/micro/org/openjdk/bench/java/lang/foreign/CallOverheadHelper.java
! test/micro/org/openjdk/bench/java/lang/foreign/CallOverheadVirtual.java
! test/micro/org/openjdk/bench/java/lang/foreign/JavaLayouts.java
! test/micro/org/openjdk/bench/java/lang/foreign/LinkUpcall.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverConstant.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNew.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNewHeap.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNonConstant.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNonConstantFP.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNonConstantHeap.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNonConstantMapped.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverNonConstantShared.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverOfAddress.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverPollutedBuffer.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverPollutedSegments.java
! test/micro/org/openjdk/bench/java/lang/foreign/LoopOverSlice.java
+ test/micro/org/openjdk/bench/java/lang/foreign/MemorySegmentCopyUnsafe.java
+ test/micro/org/openjdk/bench/java/lang/foreign/MemorySegmentGetUnsafe.java
! test/micro/org/openjdk/bench/java/lang/foreign/MemorySegmentVsBits.java
! test/micro/org/openjdk/bench/java/lang/foreign/MemorySessionClose.java
! test/micro/org/openjdk/bench/java/lang/foreign/ParallelSum.java
! test/micro/org/openjdk/bench/java/lang/foreign/PointerInvoke.java
! test/micro/org/openjdk/bench/java/lang/foreign/QSort.java
! test/micro/org/openjdk/bench/java/lang/foreign/StrLenTest.java
! test/micro/org/openjdk/bench/java/lang/foreign/TestAdaptVarHandles.java
! test/micro/org/openjdk/bench/java/lang/foreign/TestLoadBytes.java
! test/micro/org/openjdk/bench/java/lang/foreign/UnrolledAccess.java
! test/micro/org/openjdk/bench/java/lang/foreign/Upcalls.java
! test/micro/org/openjdk/bench/java/lang/foreign/VarHandleExact.java
! test/micro/org/openjdk/bench/java/lang/foreign/pointers/NativeType.java
! test/micro/org/openjdk/bench/java/lang/foreign/pointers/Pointer.java
! test/micro/org/openjdk/bench/java/lang/foreign/pointers/PointerBench.java
! test/micro/org/openjdk/bench/java/lang/foreign/points/support/PanamaPoint.java
! test/micro/org/openjdk/bench/jdk/incubator/vector/MemorySegmentVectorAccess.java
! test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreBytes.java
! test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreShorts.java

Changeset: 024c104d
Author:    duke <duke at openjdk.org>
Date:      2023-10-12 19:50:38 +0000
URL:       https://git.openjdk.org/mobile/commit/024c104dfb77b2d4a7815b8968c5178720ec753e

Automatic merge of jdk:master into master




More information about the mobile-changes mailing list