Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
A
- add(Register, int, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Add imm to r/m.
- addMethodInfo(MethodHandle, String, long, int) - Method in class com.yasuenag.ffmasm.CodeSegment
-
Add method info.
- address() - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Returns the value of the
address
record component. - AH - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- AL - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- alignTo16Bytes() - Method in class com.yasuenag.ffmasm.CodeSegment
-
Align the tail to 16 bytes
- alignTo16BytesWithNOP() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Align the position to 16 bytes with NOP.
- AMD64AsmBuilder - Class in com.yasuenag.ffmasm.amd64
-
Builder for AMD64 hand-assembling
- AMD64AsmBuilder(CodeSegment, FunctionDescriptor) - Constructor for class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Constructor.
- andMR(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
r/m AND r.
- AVXAsmBuilder - Class in com.yasuenag.ffmasm.amd64
-
Builder for AVX hand-assembling
- AVXAsmBuilder(CodeSegment, FunctionDescriptor) - Constructor for class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Constructor.
- AX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
B
- BH - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- BL - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- BP - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- bswap(Register) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Reverses the byte order of a register.
- build(Linker.Option...) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Build as a MethodHandle
- build(String, JitDump, Linker.Option...) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Build as a MethodHandle
- build(String, Linker.Option...) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Build as a MethodHandle
- BX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- byteBuf - Variable in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
ByteBuffer which includes code content.
C
- call(Register) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Call near, absolute indirect, address given in r/m64.
- callback(MemorySegment, int, int, MemorySegment) - Static method in class com.yasuenag.ffmasm.NativeRegister
- callRegisterStub(MemorySegment) - Method in class com.yasuenag.ffmasm.NativeRegister
- cast(Class<T>) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Cast this instance to clazz.
- CH - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- CL - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- CleanerAction(CodeSegment) - Constructor for class com.yasuenag.ffmasm.CodeSegment.CleanerAction
- close() - Method in class com.yasuenag.ffmasm.CodeSegment
-
Release memory for this code segment.
- cmp(Register, int, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Compare imm with r/m.
- CodeSegment - Class in com.yasuenag.ffmasm
-
Memory segment for executables.
- CodeSegment() - Constructor for class com.yasuenag.ffmasm.CodeSegment
-
Allocate memory for this code segment with default size (4096 bytes).
- CodeSegment(long) - Constructor for class com.yasuenag.ffmasm.CodeSegment
-
Allocate memory for this code segment.
- CodeSegment.CleanerAction - Class in com.yasuenag.ffmasm
-
Class to register calling close() as Cleaner action.
- CodeSegment.MethodInfo - Record Class in com.yasuenag.ffmasm
-
Holder for method information.
- com.yasuenag.ffmasm - module com.yasuenag.ffmasm
-
Core module of ffmasm.
- com.yasuenag.ffmasm - package com.yasuenag.ffmasm
- com.yasuenag.ffmasm.amd64 - package com.yasuenag.ffmasm.amd64
- cpuid() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Returns processor identification and feature information to the EAX, EBX, ECX, and EDX registers, as determined by input entered in EAX (in some cases, ECX as well).
- create(Class<?>) - Static method in class com.yasuenag.ffmasm.NativeRegister
-
Create new instance of NativeRegister.
- create(Class<T>, CodeSegment, FunctionDescriptor) - Static method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Create builder instance.
- CX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
D
- DEFAULT_CODE_SEGMENT_SIZE - Static variable in class com.yasuenag.ffmasm.CodeSegment
-
Default size of code segment.
- DH - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- DI - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- disablePerfMapDumper() - Method in class com.yasuenag.ffmasm.CodeSegment
-
Disable perf map dumper
- DL - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- DX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
E
- EAX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- EBP - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- EBX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- ECX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- EDI - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- EDX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- emitModRM(Register, int, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
- emitModRM(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
- enablePerfMapDumper(Path) - Method in class com.yasuenag.ffmasm.CodeSegment
-
Enable perf map dumper at shutdown hook for dumping all of functions in this CodeSegment.
- encoding() - Method in enum class com.yasuenag.ffmasm.amd64.Register
-
Register encoding
- equals(Object) - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Indicates whether some other object is "equal to" this one.
- ESI - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- ESP - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
G
- getAddr() - Method in class com.yasuenag.ffmasm.CodeSegment
-
Get MemorySegment which relates to this segment.
- getErrCode() - Method in exception class com.yasuenag.ffmasm.PlatformException
-
Returns error code which relates to this exception.
- getInstance(Path) - Static method in interface com.yasuenag.ffmasm.JitDump
-
Get instance of JitDump.
- getMemorySegment() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Get MemorySegment which is associated with this builder.
- getTail() - Method in class com.yasuenag.ffmasm.CodeSegment
-
Get the tail of this segment.
- getTailOfMemorySegment() - Method in class com.yasuenag.ffmasm.CodeSegment
-
Get slice of this segment from the tail.
H
- hashCode() - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Returns a hash code value for this object.
I
- incTail(long) - Method in class com.yasuenag.ffmasm.CodeSegment
-
Increment the tail with given size.
J
- jae(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Jump if above or equal (CF = 0) Opcode: 73 cb (rel8) 0F 83 cd (rel32) Instruction: JAE Op/En: D
- je(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Jump if equal (ZF = 1).
- JitDump - Interface in com.yasuenag.ffmasm
-
Interface of jitdump for perf command on Linux.
- jl(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Jump if less (SF ≠ OF).
- jmp(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Jump.
- jne(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Jump if not equal (ZF = 0).
- jz(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Jump if zero (ZF = 1).
L
- label(String) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Set label at current position.
- lea(Register, Register, int) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Store effective address for m in r.
- leave() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Set RSP to RBP, then pop RBP.
M
- methodHandle() - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Returns the value of the
methodHandle
record component. - MethodInfo(MethodHandle, String, long, int) - Constructor for record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Creates an instance of a
MethodInfo
record class. - movImm(Register, long) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Move 64bit immediate value to 64bit register.
- movMR(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Move r to r/m.
- movRM(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Move r/m to r.
N
- name() - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Returns the value of the
name
record component. - NativeRegister - Class in com.yasuenag.ffmasm
-
Dynamic native method register.
- NativeRegister(Class<?>) - Constructor for class com.yasuenag.ffmasm.NativeRegister
- nop() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
One byte no-operation instruction
O
- orMR(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
r/m OR r.
P
- PlatformException - Exception Class in com.yasuenag.ffmasm
-
Thrown when platform functions fail.
- PlatformException(String, int) - Constructor for exception class com.yasuenag.ffmasm.PlatformException
-
Constructs a new exception with the specified detail message and error code from platform.
- PlatformException(Throwable) - Constructor for exception class com.yasuenag.ffmasm.PlatformException
-
Constructs a new exception with the caused Throwable.
- pop(Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Pop top of stack into r/m; increment stack pointer.
- push(Register) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Push.
R
- R10 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R10D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R11 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R11D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R12 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R12D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R13 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R13D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R14 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R14D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R15 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R15D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R8 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R8D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R9 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- R9D - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- RAX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- RBP - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- RBX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- RCX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- RDI - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- rdrand(Register) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Read a random number and store in the destination register.
- rdseed(Register) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Read a NIST SP800-90B & C compliant random value and store in the destination register.
- rdtsc() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Read time-stamp counter into EDX:EAX.
- RDX - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- Register - Enum Class in com.yasuenag.ffmasm.amd64
-
Enum for AMD64 CPU register
- registerNatives(Map<Method, MemorySegment>) - Method in class com.yasuenag.ffmasm.NativeRegister
-
Register executable memory to native methods.
- ret() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Near return to calling procedure.
- RSI - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- RSP - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- run() - Method in class com.yasuenag.ffmasm.CodeSegment.CleanerAction
-
Close associated
CodeSegment
.
S
- shl(Register, byte, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Multiply r/m by 2, imm8 times.
- SI - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- size() - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Returns the value of the
size
record component. - SP - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- SSEAsmBuilder - Class in com.yasuenag.ffmasm.amd64
-
Builder for SSE hand-assembling
- SSEAsmBuilder(CodeSegment, FunctionDescriptor) - Constructor for class com.yasuenag.ffmasm.amd64.SSEAsmBuilder
-
Constructor.
- sub(Register, int, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Subtract imm from r/m.
- syscall() - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
Fast call to privilege level 0 system procedures.
T
- toString() - Method in record class com.yasuenag.ffmasm.CodeSegment.MethodInfo
-
Returns a string representation of this record class.
U
- UnsupportedPlatformException - Exception Class in com.yasuenag.ffmasm
-
Thrown when the platform is unsupported.
- UnsupportedPlatformException(String) - Constructor for exception class com.yasuenag.ffmasm.UnsupportedPlatformException
-
Constructs a new exception with the message.
V
- valueOf(String) - Static method in enum class com.yasuenag.ffmasm.amd64.Register
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class com.yasuenag.ffmasm.amd64.Register
-
Returns an array containing the constants of this enum class, in the order they are declared.
- vmovdqaMR(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Move aligned packed integer values from r/m to r.
- vmovdqaRM(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Move aligned packed integer values from r to r/m.
- vmovdquMR(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Move unaligned packed integer values from r/m to r.
- vmovdquRM(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Move unaligned packed integer values from r to r/m.
- vpaddd(Register, Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Add packed doubleword integers from r/m, r and store in dest.
- vptest(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Logical compare r with r/m.
- vpxor(Register, Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AVXAsmBuilder
-
Bitwise XOR of r and r/m.
W
- width() - Method in enum class com.yasuenag.ffmasm.amd64.Register
-
Register width in bits
- writeFunction(CodeSegment.MethodInfo) - Method in interface com.yasuenag.ffmasm.JitDump
-
Write method info to jitdump.
X
- XMM0 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM1 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM10 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM11 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM12 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM13 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM14 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM15 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM2 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM3 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM4 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM5 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM6 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM7 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM8 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- XMM9 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- xorMR(Register, Register, OptionalInt) - Method in class com.yasuenag.ffmasm.amd64.AMD64AsmBuilder
-
r/m XOR r.
Y
- YMM0 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM1 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM10 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM11 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM12 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM13 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM14 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM15 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM2 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM3 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM4 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM5 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM6 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM7 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM8 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
- YMM9 - Enum constant in enum class com.yasuenag.ffmasm.amd64.Register
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form