Package jnr.ffi.provider.jffi
Class X86_64StubCompiler
- java.lang.Object
-
- jnr.ffi.provider.jffi.StubCompiler
-
- jnr.ffi.provider.jffi.AbstractX86StubCompiler
-
- jnr.ffi.provider.jffi.X86_64StubCompiler
-
final class X86_64StubCompiler extends AbstractX86StubCompiler
Compilers method trampoline stubs for x86_64
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jnr.ffi.provider.jffi.AbstractX86StubCompiler
AbstractX86StubCompiler.PageHolder, AbstractX86StubCompiler.Stub
-
Nested classes/interfaces inherited from class jnr.ffi.provider.jffi.StubCompiler
StubCompiler.DummyStubCompiler
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static jnr.x86asm.Register[]
dstRegisters32
(package private) static jnr.x86asm.Register[]
dstRegisters64
(package private) static jnr.x86asm.Register[]
srcRegisters16
(package private) static jnr.x86asm.Register[]
srcRegisters32
(package private) static jnr.x86asm.Register[]
srcRegisters64
(package private) static jnr.x86asm.Register[]
srcRegisters8
-
Fields inherited from class jnr.ffi.provider.jffi.AbstractX86StubCompiler
DEBUG, PAGE_HOLDER_UPDATER, stubs
-
Fields inherited from class jnr.ffi.provider.jffi.StubCompiler
errnoFunctionAddress, hasAssembler, hasPageManager
-
-
Constructor Summary
Constructors Constructor Description X86_64StubCompiler(Runtime runtime)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) boolean
canCompile(ResultType returnType, ParameterType[] parameterTypes, CallingConvention convention)
(package private) void
compile(com.kenai.jffi.Function function, java.lang.String name, ResultType resultType, ParameterType[] parameterTypes, java.lang.Class resultClass, java.lang.Class[] parameterClasses, CallingConvention convention, boolean saveErrno)
(package private) static int
fCount(ParameterType[] parameterTypes)
(package private) static int
iCount(ParameterType[] parameterTypes)
-
Methods inherited from class jnr.ffi.provider.jffi.AbstractX86StubCompiler
align, align, attach, getRuntime
-
Methods inherited from class jnr.ffi.provider.jffi.StubCompiler
newCompiler
-
-
-
-
Field Detail
-
srcRegisters8
static final jnr.x86asm.Register[] srcRegisters8
-
srcRegisters16
static final jnr.x86asm.Register[] srcRegisters16
-
srcRegisters32
static final jnr.x86asm.Register[] srcRegisters32
-
srcRegisters64
static final jnr.x86asm.Register[] srcRegisters64
-
dstRegisters32
static final jnr.x86asm.Register[] dstRegisters32
-
dstRegisters64
static final jnr.x86asm.Register[] dstRegisters64
-
-
Constructor Detail
-
X86_64StubCompiler
X86_64StubCompiler(Runtime runtime)
-
-
Method Detail
-
canCompile
boolean canCompile(ResultType returnType, ParameterType[] parameterTypes, CallingConvention convention)
- Specified by:
canCompile
in classStubCompiler
-
compile
final void compile(com.kenai.jffi.Function function, java.lang.String name, ResultType resultType, ParameterType[] parameterTypes, java.lang.Class resultClass, java.lang.Class[] parameterClasses, CallingConvention convention, boolean saveErrno)
- Specified by:
compile
in classStubCompiler
-
fCount
static int fCount(ParameterType[] parameterTypes)
-
iCount
static int iCount(ParameterType[] parameterTypes)
-
-