Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 17 jdk.incubator.foreign.jmod - JDK Incubator Foreign
JDK 17 jdk.incubator.foreign.jmod is the JMOD file for JDK 17 HTTP Server module.
JDK 17 Incubator Foreign module compiled class files are stored in \fyicenter\jdk-17.0.5\jmods\jdk.incubator.foreign.jmod.
JDK 17 Incubator Foreign module compiled class files are also linked and stored in the \fyicenter\jdk-17.0.5\lib\modules JImage file.
JDK 17 Incubator Foreign module source code files are stored in \fyicenter\jdk-17.0.5\lib\src.zip\jdk.incubator.foreign.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ jdk/internal/foreign/abi/aarch64/macos/MacOsAArch64Linker.java
/* * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2021, Arm Limited. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.internal.foreign.abi.aarch64.macos; import jdk.incubator.foreign.Addressable; import jdk.incubator.foreign.FunctionDescriptor; import jdk.incubator.foreign.MemoryAddress; import jdk.incubator.foreign.MemoryLayout; import jdk.incubator.foreign.MemorySegment; import jdk.incubator.foreign.ResourceScope; import jdk.internal.foreign.AbstractCLinker; import jdk.internal.foreign.ResourceScopeImpl; import jdk.internal.foreign.abi.SharedUtils; import jdk.internal.foreign.abi.UpcallStubs; import jdk.internal.foreign.abi.aarch64.CallArranger; import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.lang.invoke.MethodType; import java.util.Objects; import java.util.function.Consumer; import static jdk.internal.foreign.PlatformLayouts.*; /** * ABI implementation for macOS on Apple silicon. Based on AAPCS with * changes to va_list and passing arguments on the stack. */ public final class MacOsAArch64Linker extends AbstractCLinker { private static MacOsAArch64Linker instance; static final long ADDRESS_SIZE = 64; // bits private static final MethodHandle MH_unboxVaList; private static final MethodHandle MH_boxVaList; static { try { MethodHandles.Lookup lookup = MethodHandles.lookup(); MH_unboxVaList = lookup.findVirtual(VaList.class, "address", MethodType.methodType(MemoryAddress.class)); MH_boxVaList = MethodHandles.insertArguments(lookup.findStatic(MacOsAArch64Linker.class, "newVaListOfAddress", MethodType.methodType(VaList.class, MemoryAddress.class, ResourceScope.class)), 1, ResourceScope.globalScope()); } catch (ReflectiveOperationException e) { throw new ExceptionInInitializerError(e); } } public static MacOsAArch64Linker getInstance() { if (instance == null) { instance = new MacOsAArch64Linker(); } return instance; } @Override public final MethodHandle downcallHandle(MethodType type, FunctionDescriptor function) { Objects.requireNonNull(type); Objects.requireNonNull(function); MethodType llMt = SharedUtils.convertVaListCarriers(type, MacOsAArch64VaList.CARRIER); MethodHandle handle = CallArranger.arrangeDowncall(llMt, function); if (!type.returnType().equals(MemorySegment.class)) { // not returning segment, just insert a throwing allocator handle = MethodHandles.insertArguments(handle, 1, SharedUtils.THROWING_ALLOCATOR); } handle = SharedUtils.unboxVaLists(type, handle, MH_unboxVaList); return handle; } @Override public final MemoryAddress upcallStub(MethodHandle target, FunctionDescriptor function, ResourceScope scope) { Objects.requireNonNull(scope); Objects.requireNonNull(target); Objects.requireNonNull(function); target = SharedUtils.boxVaLists(target, MH_boxVaList); return UpcallStubs.upcallAddress(CallArranger.arrangeUpcall(target, target.type(), function), (ResourceScopeImpl) scope); } public static VaList newVaList(Consumer<VaList.Builder> actions, ResourceScope scope) { MacOsAArch64VaList.Builder builder = MacOsAArch64VaList.builder(scope); actions.accept(builder); return builder.build(); } public static VaList newVaListOfAddress(MemoryAddress ma, ResourceScope scope) { return MacOsAArch64VaList.ofAddress(ma, scope); } public static VaList emptyVaList() { return MacOsAArch64VaList.empty(); } }
⏎ jdk/internal/foreign/abi/aarch64/macos/MacOsAArch64Linker.java
Or download all of them as a single archive file:
File name: jdk.incubator.foreign-17.0.5-src.zip File size: 168767 bytes Release date: 2022-09-13 Download
⇒ JDK 17 jdk.incubator.vector.jmod - JDK Incubator Vector
2023-10-04, 5370👍, 0💬
Popular Posts:
Apache Log4j 1.2 Bridge allows applications coded to use Log4j 1.2 API to use Log4j 2 instead. Bytec...
JasperReports, the world's most popular open source business intelligence and reporting engine and J...
XOM™ is a new XML object model. It is an open source (LGPL), tree-based API for processing XML with ...
How to show the XML parsing flow with sax\DocumentTracer.java provided in the Apache Xerces package?...
Apache ZooKeeper is an open-source server which enables highly reliable distributed coordination. Ap...