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/x64/windows/Windowsx64Linker.java
/* * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.internal.foreign.abi.x64.windows; import jdk.incubator.foreign.FunctionDescriptor; import jdk.incubator.foreign.MemoryAddress; 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 java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.lang.invoke.MethodType; import java.util.Objects; import java.util.function.Consumer; /** * ABI implementation based on Windows ABI AMD64 supplement v.0.99.6 */ public final class Windowsx64Linker extends AbstractCLinker { public static final int MAX_INTEGER_ARGUMENT_REGISTERS = 4; public static final int MAX_INTEGER_RETURN_REGISTERS = 1; public static final int MAX_VECTOR_ARGUMENT_REGISTERS = 4; public static final int MAX_VECTOR_RETURN_REGISTERS = 1; public static final int MAX_REGISTER_ARGUMENTS = 4; public static final int MAX_REGISTER_RETURNS = 1; private static Windowsx64Linker 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(Windowsx64Linker.class, "newVaListOfAddress", MethodType.methodType(VaList.class, MemoryAddress.class, ResourceScope.class)), 1, ResourceScope.globalScope()); } catch (ReflectiveOperationException e) { throw new ExceptionInInitializerError(e); } } public static Windowsx64Linker getInstance() { if (instance == null) { instance = new Windowsx64Linker(); } return instance; } public static VaList newVaList(Consumer<VaList.Builder> actions, ResourceScope scope) { WinVaList.Builder builder = WinVaList.builder(scope); actions.accept(builder); return builder.build(); } @Override public final MethodHandle downcallHandle(MethodType type, FunctionDescriptor function) { Objects.requireNonNull(type); Objects.requireNonNull(function); MethodType llMt = SharedUtils.convertVaListCarriers(type, WinVaList.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 newVaListOfAddress(MemoryAddress ma, ResourceScope scope) { return WinVaList.ofAddress(ma, scope); } public static VaList emptyVaList() { return WinVaList.empty(); } }
⏎ jdk/internal/foreign/abi/x64/windows/Windowsx64Linker.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, 5733👍, 0💬
Popular Posts:
What Is mail.jar of JavaMail 1.4.2? I got the JAR file from javamail-1.4.2.zip. mail.jar in javamail...
JAX-RPC is an API for building Web services and clients that used remote procedure calls (RPC) and X...
Joda-Time provides a quality replacement for the Java date and time classes. The design allows for m...
What Is commons-lang3-3.1.jar? commons-lang3-3.1.jar is the JAR file for Apache Commons Lang 3.1, wh...
JDK 11 jdk.aot.jmod is the JMOD file for JDK 11 Ahead-of-Time (AOT) Compiler module. JDK 11 AOT Comp...