Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
A
- AbstractArrayTable(int, Integer, ValType) - Constructor for class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
-
Construct an array table with the given limits and component type.
- access - Variable in class io.github.eutro.wasm2j.core.ssa.JClass
-
The access modifiers bit mask of the class.
- access - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
The access modifiers of the field.
- access - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
The access modifiers of the method.
- add(Bit<? super WasmCompiler, T>) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Add a
bit
to this compiler. - addConstructorCallback(ConstructorCallback) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Add a callback that should be run to modify the constructor.
- addEffect(Effect) - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
-
Add an
effect
to the end of this basic block. - addTo(Onto) - Method in interface io.github.eutro.wasm2j.api.bits.Bit
-
Attach this to
cc
. - addTo(T) - Method in class io.github.eutro.wasm2j.api.bits.InterfaceBasedLinker
-
Add this to a compiler, listening to it for
RunModuleCompilationEvent
s, and adding their imported modules to the linked set. - addTo(T) - Method in class io.github.eutro.wasm2j.api.bits.NameSectionParser
- addTo(T) - Method in class io.github.eutro.wasm2j.api.bits.OutputsToDirectory
- alloc(ExternType.Mem) - Static method in interface io.github.eutro.wasm2j.embed.Memory
-
Create a new memory with the given type.
- allowNull() - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- andThen(ConventionModifier<Convention, Node>) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ConventionModifier
-
Compose this convention modifier with another.
- andThen(F<B, C>) - Method in interface io.github.eutro.wasm2j.core.util.F
-
Compose this function with another.
- apply(A) - Method in interface io.github.eutro.wasm2j.core.util.F
-
Apply the function.
- arg - Variable in class io.github.eutro.wasm2j.core.ops.UnaryOpKey.UnaryOp
- ARG - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Effect: returns the
n
th argument of the function. - argC - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- argNullable(Op) - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- args() - Method in class io.github.eutro.wasm2j.core.ssa.Insn
-
Get the arguments to the instruction.
- arity - Variable in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
The number of arguments to the instruction.
- array() - Method in interface io.github.eutro.wasm2j.core.conf.itf.ElemConvention
-
Get the
ValueGetterSetter
that accesses the element, as a Java array. - ARRAY_GET - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: get an
array
'sn
th element. - ARRAY_SET - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: set an
array
'sn
th element to avalue
. - ArrayTable(int, Integer, ValType) - Constructor for class io.github.eutro.wasm2j.embed.Table.ArrayTable
-
Construct an array table with the given limits and component type.
- ArrayTable(ExternType.Table) - Constructor for class io.github.eutro.wasm2j.embed.Table.ArrayTable
-
Construct an array table with the given table type.
- ArrayTableConvention - Class in io.github.eutro.wasm2j.core.conf.impl
-
An
TableConvention
that has a Java array as its underlying representation. - ArrayTableConvention(ExportableConvention, ValueGetterSetter, Type, Integer) - Constructor for class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
-
Construct an
ArrayTableConvention
. - assignableFrom(ExternType) - Method in interface io.github.eutro.wasm2j.api.types.ExternType
-
Return whether this type is assignable from (is a supertype of) the other, by import subtyping.
- assignableFrom(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
- assignableFrom(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Global
- assignableFrom(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Mem
- assignableFrom(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Table
- assignableFrom(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Top
- assignableFrom(ExternType.Limits) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Limits
-
Whether these limits are assignable from (are a supertype of) the other.
- ASSIGNED_AT - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Var
. - assignTo(Var...) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
-
Create an effect that assigns the result of this instruction.
- assignTo(List<Var>) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
-
Create an effect that assigns the result of this instruction.
- ATTACHED_INTRINSICS - Static variable in class io.github.eutro.wasm2j.core.ext.JavaExts
-
Attached to a
JClass
. - attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
- attachExt(Ext<T>, T) - Method in interface io.github.eutro.wasm2j.core.ext.ExtContainer
-
Associate
ext
withvalue
in this container. - attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ext.ExtHolder
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.Control
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.Effect
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.Function
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.Module
- attachExt(Ext<T>, T) - Method in class io.github.eutro.wasm2j.core.ssa.Var
B
- BanChars(String, NameMangler.IllegalSymbolPolicy) - Constructor for class io.github.eutro.wasm2j.api.support.NameMangler.BanChars
-
Construct a character-banning name mangler that forbids the given characters.
- BASE64_CLASS - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
- BASE64_DECODER_CLASS - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
-
An empty
JClass
ofBase64.Decoder
. - BasicBlock - Class in io.github.eutro.wasm2j.core.ssa
- BasicCallingConvention - Class in io.github.eutro.wasm2j.core.conf.impl
-
The ubiquitous calling convention.
- BasicCallingConvention() - Constructor for class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
- bb - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- BINARY - Enum constant in enum class io.github.eutro.wasm2j.api.bits.FormatDetector.Format
-
The WebAssembly binary format.
- Bit<Onto,
Ret> - Interface in io.github.eutro.wasm2j.api.bits -
An extension that can be attached onto something.
- BIT - Static variable in class io.github.eutro.wasm2j.api.bits.FormatDetector
-
A
Bit
which can be attached to a compiler. - blocks - Variable in class io.github.eutro.wasm2j.core.ssa.Function
-
The list of basic blocks in this function.
- blockWalker(BasicBlock, boolean) - Static method in class io.github.eutro.wasm2j.core.util.GraphWalker
-
Create a graph walker over
BasicBlock
s. - blockWalker(Function) - Static method in class io.github.eutro.wasm2j.core.util.GraphWalker
-
Creates a graph walker over the basic blocks in a
Function
. - blockWalker(Function, boolean) - Static method in class io.github.eutro.wasm2j.core.util.GraphWalker
-
Create a graph walker over the basic blocks in a
Function
. - BOOL_SELECT - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: returns true if the condition holds, false otherwise.
- Bootstrap() - Constructor for class io.github.eutro.wasm2j.embed.Memory.Bootstrap
- BOOTSTRAP_HANDLE - Static variable in class io.github.eutro.wasm2j.embed.Memory.Bootstrap
- bootstrapMemoryInsn(MethodHandles.Lookup, String, MethodType, int) - Static method in class io.github.eutro.wasm2j.embed.Memory.Bootstrap
-
The bootstrap method for memory instructions.
- BOTTOM_TYPE - Static variable in class io.github.eutro.wasm2j.core.ext.JavaExts
-
The type of an
ACONST_NULL
instruction. - boxedType(byte) - Static method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
-
Convert from a WebAssembly type to a non-primitive Java type.
- BoxGlobal(ExternType.Global) - Constructor for class io.github.eutro.wasm2j.embed.Global.BoxGlobal
-
Construct a box global with the given type, initialised to null, or zero.
- BoxGlobal(ValType, Object) - Constructor for class io.github.eutro.wasm2j.embed.Global.BoxGlobal
-
Construct a box global with the given type and initial value.
- br(BasicBlock) - Static method in class io.github.eutro.wasm2j.core.ssa.Control
-
Construct an unconditional jump to a block.
- BR - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Control: an unconditional jump.
- BR_COND - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Control: jump conditionally.
- BR_IF - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- BR_TABLE - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- brIf(Var, BasicBlock, BasicBlock) - Static method in class io.github.eutro.wasm2j.core.ops.WasmOps
- BUFFER_CLASS - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
- BUFFER_LIMIT - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- BUFFER_POSITION - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- BUFFER_PUT_BUF - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- BUFFER_SLICE - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- build() - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Create the
WirJavaConventionFactory
this builder defines. - builder() - Static method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory
-
Start a
WirJavaConventionFactory.Builder
for creating a (configurable) defaultWirJavaConventionFactory
. - Builder() - Constructor for class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
- BYTE_BUFFER_CLASS - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
-
An empty
JClass
ofByteBuffer
. - BYTE_ORDER_CLASS - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- byteBuffer() - Method in interface io.github.eutro.wasm2j.core.conf.itf.DataConvention
-
Get the
ValueGetterSetter
that accesses the element segment, as aByteBuffer
. - ByteBufferMemory(int, Integer) - Constructor for class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
-
Create a new byte buffer memory with the given limits.
- ByteBufferMemory(ExternType.Mem) - Constructor for class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
-
Create a new byte buffer memory with the given type.
- ByteBufferMemoryConvention - Class in io.github.eutro.wasm2j.core.conf.impl
-
A
MemoryConvention
that has aByteBuffer
as its underlying representation. - ByteBufferMemoryConvention(ExportableConvention, ValueGetterSetter, Integer) - Constructor for class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
-
Construct a
ByteBufferMemoryConvention
.
C
- call(int, Var, Var) - Method in interface io.github.eutro.wasm2j.core.util.IRUtils.StoreOrLoadFn
- call(T, IRBuilder, int, Var) - Method in interface io.github.eutro.wasm2j.core.util.IRUtils.BoundsCheckFn
- CALL - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- CALL_INDIRECT - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- CallingConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
A convention that defines how parameters are passed to, and arguments received from, a function, and how values (possibly many) should be returned.
- CallType(int, TypeNode) - Constructor for class io.github.eutro.wasm2j.core.ops.WasmOps.CallType
- CamelLike(CaseStyle.Capitalisation) - Constructor for class io.github.eutro.wasm2j.api.support.CaseStyle.CamelLike
-
Construct a
CaseStyle.CamelLike
case style with the given case for the first word. - cancel() - Method in interface io.github.eutro.wasm2j.api.events.CancellableEvent
-
Cancel the event.
- cancel() - Method in class io.github.eutro.wasm2j.api.events.EmitClassEvent
- CancellableEvent - Interface in io.github.eutro.wasm2j.api.events
-
An event that can be cancelled, preventing other listeners from receiving it.
- CaseStyle - Interface in io.github.eutro.wasm2j.api.support
-
A style of capitalising words for a token.
- CaseStyle.CamelLike - Class in io.github.eutro.wasm2j.api.support
-
A case style like lowerCamelCase.
- CaseStyle.Capitalisation - Enum Class in io.github.eutro.wasm2j.api.support
-
A capitalisation style for a single word.
- CaseStyle.Detect - Class in io.github.eutro.wasm2j.api.support
-
A case-style that attempts to detect the style of an input token.
- CaseStyle.SnakeLike - Class in io.github.eutro.wasm2j.api.support
-
A case style like snake_case.
- cast(Op) - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- CATCH - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: pops the exception from the stack.
- ChainedPass<A,
B, C> - Class in io.github.eutro.wasm2j.core.passes.misc -
A pass which composes two others, executing the first, and giving its result to the second.
- ChainedPass(IRPass<A, B>, IRPass<B, C>) - Constructor for class io.github.eutro.wasm2j.core.passes.misc.ChainedPass
-
Construct a chained pass.
- check(Op) - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- CHECK_STACK_INTEGRITY - Static variable in class io.github.eutro.wasm2j.core.passes.opts.Stackify
- CheckJava - Class in io.github.eutro.wasm2j.core.passes.meta
-
A pass which checks the validity of compiled Java code using
CheckClassAdapter
. - CheckJava() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.CheckJava
- checkNullable(Op) - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- className(String) - Method in interface io.github.eutro.wasm2j.api.support.NameSupplier
-
Get the internal name for a WebAssembly module name.
- className(String) - Method in class io.github.eutro.wasm2j.api.support.NameSupplier.SimpleNameSupplier
- classNode - Variable in class io.github.eutro.wasm2j.api.events.EmitClassEvent
-
The class to be emitted.
- clearVarNames() - Method in class io.github.eutro.wasm2j.core.ssa.Function
-
Clear the variable name counters.
- Cli - Class in io.github.eutro.wasm2j.api
-
Command line interface for Wasm2j.
- Cli() - Constructor for class io.github.eutro.wasm2j.api.Cli
- CollapseJumps - Class in io.github.eutro.wasm2j.core.passes.opts
-
A pass which collapses empty blocks or simple jumps where they are unnecessary.
- CollapseJumps() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.CollapseJumps
- combine(JavaOps.JumpType) - Method in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Combine another condition with this one, if possible.
- CommonExts - Class in io.github.eutro.wasm2j.core.ext
-
A collection of
Ext
s that exist in both WebAssembly and Java IR. - CommonExts() - Constructor for class io.github.eutro.wasm2j.core.ext.CommonExts
- CommonExts.LiveData - Class in io.github.eutro.wasm2j.core.ext
-
The live variable information of a basic block.
- CommonOps - Class in io.github.eutro.wasm2j.core.ops
- CommonOps() - Constructor for class io.github.eutro.wasm2j.core.ops.CommonOps
- compareTo(Ext<?>) - Method in class io.github.eutro.wasm2j.core.ext.Ext
- compilation - Variable in class io.github.eutro.wasm2j.api.events.RunModuleCompilationEvent
-
The module compilation.
- CompilerEvent - Interface in io.github.eutro.wasm2j.api.events
-
An event dispatched on
WasmCompiler
. - componentType - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Table
-
The type of elements of the table.
- componentType - Variable in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
-
The component type of the table.
- ComputeDomFrontier - Class in io.github.eutro.wasm2j.core.passes.meta
-
Computes
CommonExts.DOM_FRONTIER
for each block. - ComputeDomFrontier() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.ComputeDomFrontier
- ComputeDoms - Class in io.github.eutro.wasm2j.core.passes.meta
-
Compute the
CommonExts.IDOM
of each basic block. - ComputeDoms() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.ComputeDoms
- ComputeLiveVars - Class in io.github.eutro.wasm2j.core.passes.meta
-
Computes the
CommonExts.LIVE_DATA
for each block. - ComputeLiveVars() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.ComputeLiveVars
- ComputePreds - Class in io.github.eutro.wasm2j.core.passes.meta
-
Computes
CommonExts.PREDS
for each block. - ComputePreds() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.ComputePreds
- ComputeUses - Class in io.github.eutro.wasm2j.core.passes.meta
- ComputeUses() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.ComputeUses
- concatenate(String[]) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.CamelLike
- concatenate(String[]) - Method in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
Concatenate words into a token according to the rules of this case style.
- concatenate(String[]) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.Detect
- concatenate(String[]) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.SnakeLike
- CONST - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Effect: returns the constant.
- constant(Object) - Static method in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Return a constant instruction which returns
k
. - CONSTANT_NULL_SENTINEL - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
An object that is a sentinel for null for
CommonExts.CONSTANT_VALUE
. - CONSTANT_PROPAGATOR - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
- CONSTANT_VALUE - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Var
, computed byPropagateConstants
. - ConstructorCallback - Interface in io.github.eutro.wasm2j.core.conf.itf
-
A callback which is run by the default
WirJavaConvention
to modify the constructor in some way. - ConstructorCallback.Abstract - Interface in io.github.eutro.wasm2j.core.conf.itf
-
A subclass of
ConstructorCallback
without the no-op default implementation forConstructorCallback.Abstract.modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass)
, so it can be the target of a lambda expression. - Control - Class in io.github.eutro.wasm2j.core.ssa
-
A control instruction, encapsulating a raw
instruction
and the jump targets. - CONVENTION_CC - Static variable in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
-
The calling convention with which the method will be invoked.
- CONVENTION_METHOD - Static variable in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
-
The method which will be invoked.
- CONVENTION_TARGET - Static variable in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
-
The object on which the method will be invoked.
- conventionBuilder - Variable in class io.github.eutro.wasm2j.api.events.ModifyConventionsEvent
-
The convention builder.
- ConventionModifier<Convention,
Node> - Interface in io.github.eutro.wasm2j.core.conf.itf -
A function which modifies a local convention.
- convert(WasmToWir.ConvertState, AbstractInsnNode, BasicBlock) - Method in interface io.github.eutro.wasm2j.core.passes.convert.WasmToWir.Converter
- convert(IRPass<Function, Function>) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Run the conversion of the WebAssembly module to a Java class.
- ConvertState(TypeNode[], FuncNode[], int, byte[], int) - Constructor for class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- convertTo(CaseStyle, String, String) - Method in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
Convert a token from this case style to another, optionally adding a prefix word.
- convertTo(CaseStyle, String) - Method in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
Convert a token from this case style to another.
- copyFrom(Effect) - Method in class io.github.eutro.wasm2j.core.ops.Op
-
Construct an effect with this as its operation, by copying the arguments and assignees from an effect.
- copyFrom(Effect) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
-
Create a new effect that assigns to the same variables as the given one.
- copyFrom(Insn) - Method in class io.github.eutro.wasm2j.core.ops.Op
-
Construct an instruction with this as its operation, by copying the arguments from an instruction.
- copyList(InsnList) - Static method in class io.github.eutro.wasm2j.core.util.Instructions
-
Copy a list of instructions.
- copyStack(BasicBlock, int, int, int) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- create() - Method in class io.github.eutro.wasm2j.core.ops.SimpleOpKey
- create(byte, MethodHandle, MethodHandle) - Static method in class io.github.eutro.wasm2j.embed.Global.HandleGlobal
- create(int, Integer, byte) - Static method in class io.github.eutro.wasm2j.api.types.ExternType.Table
-
Create a table with the given limits and type.
- create(Integer, MethodHandle, MethodHandle, MethodHandle, MethodHandle, MethodHandle) - Static method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
-
Create a handle memory with the given maximum and handles.
- create(ExternType.Func, MethodHandle) - Static method in class io.github.eutro.wasm2j.embed.Func.HandleFunc
- create(ExternType.Table, MethodHandle, MethodHandle, MethodHandle, MethodHandle) - Static method in class io.github.eutro.wasm2j.embed.Table.HandleTable
- create(Module, JClass) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory
-
Create a
WirJavaConvention
for compiling the given module into the given class. - create(Class<T>, String) - Static method in class io.github.eutro.wasm2j.core.ext.Ext
-
Creates a new ext, with the subtype of a given class, and the given name.
- create(T) - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- create(T, int) - Static method in class io.github.eutro.wasm2j.core.ops.WasmOps.WithMemArg
- created - Variable in class io.github.eutro.wasm2j.core.ssa.Insn
-
Where this variable was created, for debugging purposes.
- createImport(Module, Import, JClass, int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ImportFactory
-
Resolve an implementation of the given import, or throw an exception if it does not exist.
- createSimple(String, NameMangler, CaseStyle, CaseStyle, CaseStyle, CaseStyle) - Static method in interface io.github.eutro.wasm2j.api.support.NameSupplier
-
Create a simple name supplier, which will return class names in the given package, with names mangled according to the name mangler, and cases converted according to the styles provided.
- createSimple(String, NameMangler, Function<String, String>, BiFunction<String, String, String>) - Static method in interface io.github.eutro.wasm2j.api.support.NameSupplier
-
Create a simple name supplier, which will return class names in the given package, with names mangled according to the name mangler, and module/field names converted with the given functions.
- CtrlFrame() - Constructor for class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- ctrls - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- ctrlsRef(int) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
D
- DATA_DROP - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- DataConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
A convention that defines how to retrieve the contents of a data.
- debugDisplayOnError(String, IRPass<Function, Function>) - Static method in class io.github.eutro.wasm2j.core.ssa.display.SSADisplay
-
Returns a function pass that displays to the "build/ssa/{prefix}" if the given pass throws an exception.
- debugDisplayToFile(Document, String) - Static method in class io.github.eutro.wasm2j.core.ssa.display.SSADisplay
-
Output a document to a file.
- decode(byte[]) - Static method in class io.github.eutro.wasm2j.embed.Module
-
Decode a binary module from a byte array.
- delegate - Variable in class io.github.eutro.wasm2j.core.conf.itf.FunctionConvention.Delegating
-
The convention calls will be delegated to.
- delegate - Variable in class io.github.eutro.wasm2j.core.conf.itf.GlobalConvention.Delegating
-
The convention calls will be delegated to.
- delegate - Variable in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
-
The convention calls will be delegated to.
- delegate - Variable in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
-
The convention calls will be delegated to.
- Delegating(FunctionConvention) - Constructor for class io.github.eutro.wasm2j.core.conf.itf.FunctionConvention.Delegating
-
Construct a new
FunctionConvention.Delegating
with the given delegate. - Delegating(GlobalConvention) - Constructor for class io.github.eutro.wasm2j.core.conf.itf.GlobalConvention.Delegating
-
Construct a new
GlobalConvention.Delegating
with the given delegate. - Delegating(MemoryConvention) - Constructor for class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
-
Construct a new
MemoryConvention.Delegating
with the given delegate. - Delegating(TableConvention) - Constructor for class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
-
Construct a new
TableConvention.Delegating
with the given delegate. - DelegatingExporter - Class in io.github.eutro.wasm2j.core.conf.impl
-
An
ExportableConvention
which just delegates to another. - DelegatingExporter(ExportableConvention) - Constructor for class io.github.eutro.wasm2j.core.conf.impl.DelegatingExporter
-
Construct a
DelegatingExporter
that delegates to the given exporter. - DelegatingExtHolder - Class in io.github.eutro.wasm2j.core.ext
-
An
ExtHolder
that additionally delegates to anotherExtContainer
if it can't find a given ext in itself. - DelegatingExtHolder() - Constructor for class io.github.eutro.wasm2j.core.ext.DelegatingExtHolder
- DerefType(byte, byte, WasmOps.DerefType.LoadType, WasmOps.DerefType.ExtType) - Constructor for class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- desc - Variable in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- descriptor - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
The descriptor of the field.
- detect(CaseStyle) - Static method in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
Create a case style that will, when converting from this style to another, try to guess what case style the token uses.
- detect(ByteBuffer) - Static method in enum class io.github.eutro.wasm2j.api.bits.FormatDetector.Format
-
Try to detect the format of the bytes in a buffer.
- disassembleInsn(StringBuilder, AbstractInsnNode) - Static method in class io.github.eutro.wasm2j.core.util.Disassembler
-
Disassemble a single Java instruction into a
StringBuilder
. - disassembleInsn(AbstractInsnNode) - Static method in class io.github.eutro.wasm2j.core.util.Disassembler
-
Disassemble Java instruction to a
String
. - disassembleList(InsnList) - Static method in class io.github.eutro.wasm2j.core.util.Disassembler
-
Disassemble a list of Java instructions.
- Disassembler - Class in io.github.eutro.wasm2j.core.util
-
A class with utilities for disassembling WebAssembly or Java bytecode.
- Disassembler() - Constructor for class io.github.eutro.wasm2j.core.util.Disassembler
- dispatch(Class<T>, T) - Method in class io.github.eutro.wasm2j.api.events.EventSupplier
-
Dispatch an event to listeners.
- displaySSA(Function) - Static method in class io.github.eutro.wasm2j.core.ssa.display.SSADisplay
-
Display the function to an SVG document.
- DOM_FRONTIER - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
BasicBlock
. - DOM_FRONTIER - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- DOMS - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- DROP - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: ignores its argument.
E
- Effect - Class in io.github.eutro.wasm2j.core.ssa
-
An effect, encapsulating an
instruction
, and the variables its results are assigned to. - ELEM_DROP - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- ElemConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
A convention that defines how to retrieve the contents and type of an element.
- elementType() - Method in interface io.github.eutro.wasm2j.core.conf.itf.ElemConvention
-
Retrieve the component type of the element.
- EliminateDeadBlocks - Class in io.github.eutro.wasm2j.core.passes.opts
-
An optimisation pass that removes any blocks unreachable from the root block.
- EliminateDeadBlocks() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.EliminateDeadBlocks
- EliminateDeadVars - Class in io.github.eutro.wasm2j.core.passes.opts
-
A pass which removes any
Effect
s that have no side effects, and whose return values are unused. - EliminateDeadVars() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.EliminateDeadVars
- elseBb - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- Embedding - Annotation Interface in io.github.eutro.wasm2j.embed
-
Declares that a method corresponds to a function defined in the embedding section of the WebAssembly specification.
- emitBoundsCheck(IRBuilder, int, Var) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitBoundsCheck(IRBuilder, int, Var) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code which traps if
bound
, a memory address, is outside the bounds of this memory. - emitBoundsCheck(IRBuilder, int, Var) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code which traps if
bound
is outside the bounds of this table. - emitCall(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
- emitCall(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.FunctionConvention.Delegating
- emitCall(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.FunctionConvention
-
Emit code for a WebAssembly
call
instruction. - emitCallIndirect(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.CallingConvention
-
Emit code to call a function reference.
- EmitClassEvent - Class in io.github.eutro.wasm2j.api.events
-
Fired when a class should be emitted.
- EmitClassEvent(ClassNode) - Constructor for class io.github.eutro.wasm2j.api.events.EmitClassEvent
-
Construct a new class emit event.
- emitCopy(IRBuilder, Effect, UnaryOpKey<Pair<Integer, Integer>>, IRUtils.StoreOrLoadFn, IRUtils.StoreOrLoadFn, T, T, IRUtils.BoundsCheckFn<T>) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Not stable.
- emitDrop(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.DataConvention
-
Emit code to drop the data.
- emitDrop(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ElemConvention
-
Emit code to drop the element.
- emitFill(IRBuilder, Effect, UnaryOpKey<Integer>, IRUtils.StoreOrLoadFn, T, IRUtils.BoundsCheckFn<T>) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Not stable.
- emitFuncRef(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
- emitFuncRef(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.FunctionConvention.Delegating
- emitFuncRef(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.FunctionConvention
-
Emit code for a WebAssembly
ref.func
instruction. - emitGlobalRef(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.GetterSetterGlobalConvention
- emitGlobalRef(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.GlobalConvention.Delegating
- emitGlobalRef(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.GlobalConvention
-
Emit code for a WebAssembly
global.get
instruction. - emitGlobalStore(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.GetterSetterGlobalConvention
- emitGlobalStore(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.GlobalConvention.Delegating
- emitGlobalStore(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.GlobalConvention
-
Emit code for a WebAssembly
global.set
instruction. - emitMemCopy(IRBuilder, Effect, MemoryConvention) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitMemCopy(IRBuilder, Effect, MemoryConvention) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemCopy(IRBuilder, Effect, MemoryConvention) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
memory.copy
instruction. - emitMemFill(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemFill(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
memory.fill
instruction. - emitMemGrow(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitMemGrow(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemGrow(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
memory.grow
instruction. - emitMemInit(IRBuilder, Effect, Var) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitMemInit(IRBuilder, Effect, Var) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemInit(IRBuilder, Effect, Var) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
memory.init
instruction. - emitMemLoad(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitMemLoad(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemLoad(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
*.load
instruction. - emitMemSize(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitMemSize(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemSize(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
memory.size
instruction. - emitMemStore(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
- emitMemStore(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- emitMemStore(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.MemoryConvention
-
Emit code for a WebAssembly
*.store
instruction. - emitNullableInt(IRBuilder, Integer) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Emit a boxed integer, possibly null.
- emitReturn(IRBuilder, List<Var>, List<Var>, TypeNode) - Method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
- emitReturn(IRBuilder, List<Var>, List<Var>, TypeNode) - Method in interface io.github.eutro.wasm2j.core.conf.itf.CallingConvention
-
For a given function type, emit code to return, possibly many, WebAssembly return values as a single Java value, or void.
- emitTableCopy(IRBuilder, Effect, TableConvention) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableCopy(IRBuilder, Effect, TableConvention) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.copy
instruction. - emitTableFill(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableFill(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.fill
instruction. - emitTableGrow(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
- emitTableGrow(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableGrow(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.grow
instruction. - emitTableInit(IRBuilder, Effect, Var) - Method in class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
- emitTableInit(IRBuilder, Effect, Var) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableInit(IRBuilder, Effect, Var) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.init
instruction. - emitTableRef(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
- emitTableRef(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableRef(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.get
instruction. - emitTableSize(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
- emitTableSize(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableSize(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.size
instruction. - emitTableStore(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
- emitTableStore(IRBuilder, Effect) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- emitTableStore(IRBuilder, Effect) - Method in interface io.github.eutro.wasm2j.core.conf.itf.TableConvention
-
Emit code for a WebAssembly
table.set
instruction. - EMPTY_TOKEN - Static variable in interface io.github.eutro.wasm2j.api.support.NameMangler
-
The token used when the input token is empty.
- emptyFromJava(Class<?>) - Static method in class io.github.eutro.wasm2j.core.ssa.JClass
-
Create an empty Java class with the same name and access modifiers as a class in the current JVM.
- encode(TypeNode) - Static method in class io.github.eutro.wasm2j.api.types.ExternType.Func
-
Encode a function type as a string.
- ensureValid(T, MetadataState.ComputableMetaKind<T>, MetadataState.ComputableMetaKind<T>...) - Method in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Check whether the given metadata are valid, and compute it if it is not.
- equals(Object) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
- equals(Object) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Global
- equals(Object) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Limits
- equals(Object) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Mem
- equals(Object) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Table
- equals(Object) - Method in class io.github.eutro.wasm2j.core.ext.MetadataState.MetaKind
- equals(Object) - Method in class io.github.eutro.wasm2j.core.util.Pair
- eval - Variable in class io.github.eutro.wasm2j.core.intrinsics.IntrinsicImpl
-
A method handle that can be invoked to evaluate the intrinsic at compile time.
- EventDispatcher<S> - Interface in io.github.eutro.wasm2j.api.events
-
A class on which events can be listened to.
- EventSupplier<S> - Class in io.github.eutro.wasm2j.api.events
-
A class on which events can be listened to and dispatched.
- EventSupplier() - Constructor for class io.github.eutro.wasm2j.api.events.EventSupplier
- expand(BlockType) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- export(ExportNode, Module, JClass) - Method in class io.github.eutro.wasm2j.core.conf.impl.DelegatingExporter
- export(ExportNode, Module, JClass) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ExportableConvention
-
Do whatever this convention defines as "exporting" the object from the module.
- export(ExportNode, Module, JClass) - Method in class io.github.eutro.wasm2j.core.conf.itf.GlobalConvention.Delegating
- Export - Class in io.github.eutro.wasm2j.embed
-
An export from a module, which is a name and its type.
- Export(String, ExternType) - Constructor for class io.github.eutro.wasm2j.embed.Export
-
Construct an export with the given name and type.
- ExportableConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
A convention which may be exported from a module.
- exports() - Method in class io.github.eutro.wasm2j.embed.Module
-
Get the exports that this module supplies.
- ext - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- Ext<T> - Class in io.github.eutro.wasm2j.core.ext
-
An ext, that can be associated with a value (of type
T
) in anExtContainer
. - ExtContainer - Interface in io.github.eutro.wasm2j.core.ext
-
A container for
Ext
s. - EXTERNREF - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
An external reference, represented as a Java
Object
. - ExternType - Interface in io.github.eutro.wasm2j.api.types
-
The type of a WebAssembly extern.
- ExternType.Func - Class in io.github.eutro.wasm2j.api.types
-
A function type, consisting of parameter and result types.
- ExternType.Global - Class in io.github.eutro.wasm2j.api.types
-
A global type, consisting of a mutability and a value type.
- ExternType.Kind - Enum Class in io.github.eutro.wasm2j.api.types
-
The kind of extern: func, table, memory, or global.
- ExternType.Limits - Class in io.github.eutro.wasm2j.api.types
-
A set of limits, a minimum and (possibly) a maximum.
- ExternType.Mem - Class in io.github.eutro.wasm2j.api.types
-
A memory type, consisting of limits.
- ExternType.Table - Class in io.github.eutro.wasm2j.api.types
-
A table type, consisting of limits and a component type.
- ExternType.Top - Class in io.github.eutro.wasm2j.api.types
-
The top type.
- ExternVal - Interface in io.github.eutro.wasm2j.embed
-
An extern, a value that can be exported from a module instance, or provided as an import.
- ExtHolder - Class in io.github.eutro.wasm2j.core.ext
-
An implementation of
ExtContainer
using aMap
. - ExtHolder() - Constructor for class io.github.eutro.wasm2j.core.ext.ExtHolder
F
- F<A,
B> - Interface in io.github.eutro.wasm2j.core.util -
A simple unary function.
- F32 - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
A 32-bit floating-point value, represented as a Java float.
- F32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- F32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- F32_LOAD - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 4 bytes, interpret as a little-endian float.
- F32_STORE - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store a float as 4 little-endian bytes.
- f32Abs(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Add(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Ceil(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32ConvertI32S(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32ConvertI32U(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32ConvertI64S(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32ConvertI64U(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Copysign(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32DemoteF64(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Div(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Eq(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Floor(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Ge(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Gt(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Le(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Lt(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Max(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Min(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Mul(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Ne(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Nearest(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Neg(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32ReinterpretI32(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Sqrt(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Sub(float, float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f32Trunc(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- F64 - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
A 64-bit floating-point value, represented as a Java double.
- F64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- F64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- F64_LOAD - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 8 bytes, interpret as a little-endian double.
- F64_STORE - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store a double as 8 little-endian bytes.
- f64Abs(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Add(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Ceil(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64ConvertI32S(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64ConvertI32U(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64ConvertI64S(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64ConvertI64U(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Copysign(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Div(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Eq(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Floor(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Ge(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Gt(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Le(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Lt(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Max(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Min(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Mul(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Ne(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Nearest(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Neg(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64PromoteF32(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64ReinterpretI64(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Sqrt(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Sub(double, double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- f64Trunc(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- fieldGetter(ValueGetter, JClass.JavaField) - Static method in class io.github.eutro.wasm2j.core.util.Getters
-
A getter (and setter) that loads (resp.
- fieldName(String) - Method in interface io.github.eutro.wasm2j.api.support.NameSupplier
-
Get the JVM unqualified name for an imported or exported field of a WebAssembly module.
- fieldName(String) - Method in class io.github.eutro.wasm2j.api.support.NameSupplier.SimpleNameSupplier
- fieldName(String, String) - Method in interface io.github.eutro.wasm2j.api.support.NameSupplier
-
Get the JVM unqualified name for an imported or exported field of a WebAssembly module, prefixed with a word.
- fieldName(String, String) - Method in class io.github.eutro.wasm2j.api.support.NameSupplier.SimpleNameSupplier
- fields - Variable in class io.github.eutro.wasm2j.core.ssa.JClass
-
The list of fields in the class.
- fillAuto(byte[], IRBuilder, Var) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Emit code to fill a byte buffer with static data.
- fillNull(Object) - Static method in class io.github.eutro.wasm2j.core.ext.CommonExts
- fillWithBase64(byte[], IRBuilder, Var) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Emit code to fill a byte buffer with static data using gzipped-base64 strings.
- fillWithDirectPuts(byte[], IRBuilder, Var) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Emit code to fill a byte buffer with static data using direct
ByteBuffer.put(byte)
andByteBuffer.putShort(short)
calls. - FindBoolSelects - Class in io.github.eutro.wasm2j.core.passes.opts
-
An optimisation pass that tries to find block structures that could be replaced with
JavaOps.BOOL_SELECT
instructions. - FindBoolSelects() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.FindBoolSelects
- finish() - Method in class io.github.eutro.wasm2j.api.bits.InterfaceBasedLinker
-
Finish linking, generating all interfaces for imported modules, finishing up compiled modules, and emitting
EmitClassEvent
s for each. - firstBb - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- forceClassLoaderDefiner() - Method in class io.github.eutro.wasm2j.embed.Store
-
Force this store to use a
ClassLoader
to define classes, rather thandefineHiddenClasses
ofMethodHandles.Lookup
in newer Java versions. - FormatDetector - Class in io.github.eutro.wasm2j.api.bits
-
A class for detecting the format of a WebAssembly file (text or binary).
- FormatDetector(WasmCompiler) - Constructor for class io.github.eutro.wasm2j.api.bits.FormatDetector
-
Construct a format detector which will submit files to the given compiler.
- FormatDetector.Format - Enum Class in io.github.eutro.wasm2j.api.bits
-
The format of a WebAssembly file, either text, binary, or unknown.
- ForPass - Class in io.github.eutro.wasm2j.core.passes.misc
-
A pass which lifts passes which operate on smaller IR parts into onese that operate on bigger parts.
- ForPass() - Constructor for class io.github.eutro.wasm2j.core.passes.misc.ForPass
- ForPass.BasicBlocks - Class in io.github.eutro.wasm2j.core.passes.misc
-
A basic block pass lifted to operate on a full function.
- ForPass.Insns - Class in io.github.eutro.wasm2j.core.passes.misc
-
An instruction pass lifted to operate on a full basic block.
- fromByte(byte) - Static method in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
Get the kind of extern from a one-byte tag.
- fromImport(AbstractImportNode, ModuleNode) - Static method in interface io.github.eutro.wasm2j.api.types.ExternType
-
Get the type of an import.
- fromJava(Class<?>, String) - Static method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
Look up a field in a class by
reflection
. - fromNode(ModuleNode) - Static method in class io.github.eutro.wasm2j.embed.Module
-
Create a module from a JWasm module node.
- fromOpcode(byte) - Static method in enum class io.github.eutro.wasm2j.api.types.ValType
-
Get the
ValType
for a given WebAssembly type code, such asOpcodes.I32
. - fromOpcode(byte) - Static method in class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- fromOpcode(byte) - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- fromOpcode(byte) - Static method in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Get the load mode of a specific opcode.
- fromOpcode(byte) - Static method in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Get the store mode of a specific opcode.
- fromOpcode(int) - Static method in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Get the jump type for a specific Java opcode.
- func - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.CallType
- func - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- func - Variable in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
The function being inserted into.
- func(Class<? super F>, F) - Static method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Create a function
ExternVal
from an instance of a functional interface. - func(MethodHandle) - Static method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Create a function
ExternVal
directly from aMethodHandle
. - Func - Interface in io.github.eutro.wasm2j.embed
-
A function extern.
- Func(byte[], byte[]) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Func
-
Construct a function type with the given parameter and result types.
- Func(MethodType) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Func
-
Construct a function type with no specific parameter and result types.
- FUNC - Enum constant in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
A function.
- FUNC_MAP - Static variable in class io.github.eutro.wasm2j.core.ext.WasmExts
- FUNC_REF - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- Func.HandleFunc - Class in io.github.eutro.wasm2j.embed
-
A function extern implemented by wrapping a method handle.
- funcAlloc(Store, ExternType.Func, MethodHandle) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Construct a new function extern.
- funcInvoke(Store, Func, Object...) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Invoke a function extern.
- funcMap - Variable in class io.github.eutro.wasm2j.core.ssa.Module
-
A map from expression nodes to functions.
- funcName - Variable in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- FUNCREF - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
A function reference, represented as a Java
MethodHandle
. - Function - Class in io.github.eutro.wasm2j.core.ssa
-
A function, encapsulating a list of
basic blocks
. - Function() - Constructor for class io.github.eutro.wasm2j.core.ssa.Function
- FUNCTION_METHOD - Static variable in class io.github.eutro.wasm2j.core.ext.JavaExts
-
Attached to a
Function
. - FunctionConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
The convention for a WebAssembly function, defining how the function can be called, referenced, exported, and added to the constructor.
- FunctionConvention.Delegating - Class in io.github.eutro.wasm2j.core.conf.itf
-
A
FunctionConvention
which delegates all calls to another. - functionNames - Variable in class io.github.eutro.wasm2j.api.bits.NameSectionParser.NameSection
-
The function name map.
- funcType(Store, Func) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the type of a function extern.
- funcTypes - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
G
- gen - Variable in class io.github.eutro.wasm2j.core.ext.CommonExts.LiveData
-
The set of variables used in the block before assignment.
- GeneratedAccess - Annotation Interface in io.github.eutro.wasm2j.embed
-
Indicates that the annotated method is accessed from generated code.
- get() - Method in class io.github.eutro.wasm2j.core.util.Lazy
-
Get the value, possibly initializing it.
- get() - Method in class io.github.eutro.wasm2j.embed.Global.BoxGlobal
- get() - Method in interface io.github.eutro.wasm2j.embed.Global
-
Get the value of this global.
- get() - Method in class io.github.eutro.wasm2j.embed.Global.HandleGlobal
- get(byte, int) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Get the mapping for the given opcode.
- get(int) - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
- get(int) - Method in interface io.github.eutro.wasm2j.embed.Table
-
Get an element of the table.
- get(int) - Method in class io.github.eutro.wasm2j.embed.Table.HandleTable
- get(AbstractInsnNode) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Get the mapping for the opcode of the given instruction.
- get(IRBuilder) - Method in interface io.github.eutro.wasm2j.core.util.ValueGetter
-
Emit code to retrieve the value.
- GET_FIELD - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: get the given field on its argument, or statically with no argument.
- GET_THIS - Static variable in class io.github.eutro.wasm2j.core.util.Getters
-
A getter that gets
this
. - getAddr(IRBuilder, WasmOps.WithMemArg<?>, Var) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Get the instruction which computes the offset address of an instruction.
- getAsFunc() - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get this as a function, or throw an exception.
- getAsGlobal() - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get this as a global, or throw an exception.
- getAsHandle(MethodType) - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get this function as a method handle of the given type.
- getAsHandleRaw() - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get the underlying method handle of this function.
- getAsMemory() - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get this as a memory, or throw an exception.
- getAsmType() - Method in enum class io.github.eutro.wasm2j.api.types.ValType
-
Get the ASM type for this type.
- getAssignsTo() - Method in class io.github.eutro.wasm2j.core.ssa.Effect
-
Get the list of variables this effect assigns to.
- getAsTable() - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get this as a table, or throw an exception.
- getBlock() - Method in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Get the block this builder is inserting at the end of.
- getByte(byte) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Look up the mapping for a single-byte opcode.
- getClassReaderFor(Class<?>) - Static method in class io.github.eutro.wasm2j.core.intrinsics.ImplClassBytes
-
Get a class reader that reads the given class.
- getControl() - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
-
Get the control instruction of this block.
- getData(int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the convention of the data at the given index in the module.
- getDelegate() - Method in class io.github.eutro.wasm2j.core.conf.impl.DelegatingExporter
- getDelegate() - Method in class io.github.eutro.wasm2j.core.ext.DelegatingExtHolder
-
Get the
ExtHolder
to delegate to. - getDelegate() - Method in class io.github.eutro.wasm2j.core.ops.Op
- getDelegate() - Method in class io.github.eutro.wasm2j.core.ssa.Effect
- getDelegate() - Method in class io.github.eutro.wasm2j.core.ssa.Insn
- getDescriptor() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get the type of this method as a method descriptor.
- getDescriptor(TypeNode) - Method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
- getDescriptor(TypeNode) - Method in interface io.github.eutro.wasm2j.core.conf.itf.CallingConvention
-
Get the descriptor of the raw Java method that implements the given type.
- getEffects() - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
-
Get the list of
effects
in this basic block. - getElem(int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the convention of the elem at the given index in the module.
- getExport(String) - Method in interface io.github.eutro.wasm2j.embed.Instance
-
Get a named export of the module instance.
- getExt(Ext<T>) - Method in interface io.github.eutro.wasm2j.core.ext.ExtContainer
-
Get the value associated with
ext
in this container, if any. - getExtOrRun(Ext<T>, O, IRPass<O, ?>) - Method in interface io.github.eutro.wasm2j.core.ext.ExtContainer
-
Get the value associated with
ext
in this container, or run the given pass and try again. - getExtOrThrow(Ext<T>) - Method in interface io.github.eutro.wasm2j.core.ext.ExtContainer
-
Get the value associated with
ext
in this container, or throw an exception if not present. - getFunction(int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the convention of the function at the given index in the module.
- getGlobal(int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the convention of the global at the given index in the module.
- getHandle() - Method in interface io.github.eutro.wasm2j.core.ssa.JClass.Handleable
-
Get the ASM
Handle
to this. - getHandle() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
- getIn(ExtContainer) - Method in class io.github.eutro.wasm2j.core.ext.Ext
-
Get the association of this in the given container.
- getIndirectCallingConvention() - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the calling convention that indirect calls should be made with.
- getInt(int) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Look up the mapping for a
Opcodes.INSN_PREFIX
-prefixed opcode. - getInvokeOpcode() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get the Java opcode required to invoke this method.
- getIter(Function) - Method in class io.github.eutro.wasm2j.core.passes.misc.ForPass.BasicBlocks
- getKind() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
-
Get the kind of type this is (func, global, memory, table), or null if it is the
ExternType.Top
type. - getKind() - Method in interface io.github.eutro.wasm2j.api.types.ExternType
-
Get the kind of type this is (func, global, memory, table), or null if it is the
ExternType.Top
type. - getKind() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Global
-
Get the kind of type this is (func, global, memory, table), or null if it is the
ExternType.Top
type. - getKind() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Mem
-
Get the kind of type this is (func, global, memory, table), or null if it is the
ExternType.Top
type. - getKind() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Table
-
Get the kind of type this is (func, global, memory, table), or null if it is the
ExternType.Top
type. - getKind() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Top
-
Get the kind of type this is (func, global, memory, table), or null if it is the
ExternType.Top
type. - getLocal(ModuleNode, ExternType.Kind, int) - Static method in interface io.github.eutro.wasm2j.api.types.ExternType
-
Get the type of the
index
th local entity (func, global, memory, table) in the WebAssembly module. - getMemory(int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the convention of the memory at the given index in the module.
- getMethodType() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
-
Get the Java method type of the function type, for casting.
- getMnemonic(int) - Static method in class io.github.eutro.wasm2j.core.util.Disassembler
-
Look up the mnemonic for a Java opcode.
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ext.DelegatingExtHolder
- getNullable(Ext<T>) - Method in interface io.github.eutro.wasm2j.core.ext.ExtContainer
-
Get the value associated with
ext
in this container, or null if not present. - getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ext.ExtHolder
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Control
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Effect
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Function
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Module
- getNullable(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Var
- getOpcode() - Method in enum class io.github.eutro.wasm2j.api.types.ValType
-
Get the opcode byte for this type.
- getOpcode() - Method in class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- getOpcode() - Method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- getParamTys() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get the list of parameter types of the method.
- getPass() - Static method in class io.github.eutro.wasm2j.embed.internal.WasmConvertPass
-
Get the IR pass for compiling WebAssembly.
- getReturnTy() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get the return type of the method.
- getSetableIter(BasicBlock) - Method in class io.github.eutro.wasm2j.core.passes.misc.ForPass.Insns
- getSetableIter(Function) - Method in class io.github.eutro.wasm2j.core.passes.misc.ForPass.BasicBlocks
- getTable(int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.WirJavaConvention
-
Get the convention of the table at the given index in the module.
- getter() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
Returns a
JClass.Handleable
that resolves to a getter handle to the field. - Getters - Class in io.github.eutro.wasm2j.core.util
-
A collection of utilities for constructing
ValueGetter
s andValueGetterSetter
s. - Getters() - Constructor for class io.github.eutro.wasm2j.core.util.Getters
- GetterSetterGlobalConvention - Class in io.github.eutro.wasm2j.core.conf.impl
- GetterSetterGlobalConvention(ExportableConvention, ValueGetter, ValueSetter) - Constructor for class io.github.eutro.wasm2j.core.conf.impl.GetterSetterGlobalConvention
-
Create an
GetterSetterGlobalConvention
with the given getter and setter. - GetterSetterGlobalConvention(ExportableConvention, ValueGetterSetter) - Constructor for class io.github.eutro.wasm2j.core.conf.impl.GetterSetterGlobalConvention
-
Create an
GetterSetterGlobalConvention
with the given getter and setter. - getThis(IRBuilder) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Insert an instruction to get the implicit Java receiver in an instance method,
this
. - getType() - Method in enum class io.github.eutro.wasm2j.api.types.ValType
-
Get the Java class for this type.
- getType() - Method in class io.github.eutro.wasm2j.core.ext.Ext
-
Retrieve the type of the ext that it was
created
with. - getType() - Method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- getType() - Method in class io.github.eutro.wasm2j.core.ssa.JClass
-
Get the ASM
Type
of this class. - getType() - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Get the type of this extern.
- getType() - Method in interface io.github.eutro.wasm2j.embed.Func
-
Get the type of this function.
- getType() - Method in class io.github.eutro.wasm2j.embed.Func.HandleFunc
- getType() - Method in class io.github.eutro.wasm2j.embed.Global.BoxGlobal
- getType() - Method in interface io.github.eutro.wasm2j.embed.Global
-
Get the type of this global.
- getType() - Method in class io.github.eutro.wasm2j.embed.Global.HandleGlobal
- getType() - Method in class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
- getType() - Method in interface io.github.eutro.wasm2j.embed.Memory
- getType() - Method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
- getType() - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
- getType() - Method in interface io.github.eutro.wasm2j.embed.Table
- getType() - Method in class io.github.eutro.wasm2j.embed.Table.HandleTable
- getValues() - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Get all the values in the map.
- getValues() - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
-
Get the underlying array of this table.
- getValues() - Method in class io.github.eutro.wasm2j.embed.Table.ArrayTable
- getWasmMnemonic(byte, int) - Static method in class io.github.eutro.wasm2j.core.util.Disassembler
-
Look up the mnemonic for a WebAssembly instruction.
- Global - Interface in io.github.eutro.wasm2j.embed
-
A global extern.
- Global(boolean, ValType) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Global
-
Construct a global type with the given mutability and value type.
- GLOBAL - Enum constant in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
A global.
- GLOBAL_REF - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- GLOBAL_SET - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- Global.BoxGlobal - Class in io.github.eutro.wasm2j.embed
-
A global that stores its value directly.
- Global.HandleGlobal - Class in io.github.eutro.wasm2j.embed
-
A global that gets and sets through method handles.
- globalAlloc(Store, ExternType.Global) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Create a new global with the given type.
- GlobalConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
The convention for a WebAssembly global, defining how the function can be referenced, set, exported, and added to the constructor.
- GlobalConvention.Delegating - Class in io.github.eutro.wasm2j.core.conf.itf
-
A
GlobalConvention
which delegates all calls to another. - globalRead(Store, Global) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Read the value of a global.
- globalType(Store, Global) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the type of a global.
- globalWrite(Store, Global, Object) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Write the value of a global.
- graphChanged() - Method in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Invalidate everything that becomes invalid if the control flow graph changes.
- GraphWalker<T> - Class in io.github.eutro.wasm2j.core.util
-
A class for walking a graph depth-first, in pre- or post-order.
- GraphWalker(T, F<? super T, ? extends Iterable<? extends T>>) - Constructor for class io.github.eutro.wasm2j.core.util.GraphWalker
-
Construct a graph walker from a root node and a successor function.
- GraphWalker.Order<T> - Interface in io.github.eutro.wasm2j.core.util
-
An order over a graph.
- grow(int) - Method in class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
- grow(int) - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Grow the memory by a number of pages, filling new pages with 0.
- grow(int) - Method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
- grow(int, Object) - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
- grow(int, Object) - Method in interface io.github.eutro.wasm2j.embed.Table
-
Grow the table by a number of elements, filling it with the given value.
- grow(int, Object) - Method in class io.github.eutro.wasm2j.embed.Table.HandleTable
H
- handle() - Method in interface io.github.eutro.wasm2j.embed.Func
-
Get the
MethodHandle
to the function. - handle() - Method in class io.github.eutro.wasm2j.embed.Func.HandleFunc
- HANDLE_OF - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: returns a
method handle
to the given method or field getter/setter. - HandleFunc(ExternType.Func, MethodHandle) - Constructor for class io.github.eutro.wasm2j.embed.Func.HandleFunc
-
Construct a new handle function, with the given type.
- HandleGlobal(ValType, MethodHandle, MethodHandle) - Constructor for class io.github.eutro.wasm2j.embed.Global.HandleGlobal
-
Construct a global with the given value type, getter and setter.
- HandleTable(ExternType.Table, MethodHandle, MethodHandle, MethodHandle, MethodHandle) - Constructor for class io.github.eutro.wasm2j.embed.Table.HandleTable
-
Construct a new handle table with the given types and method implementations.
- Handlify - Class in io.github.eutro.wasm2j.core.passes.convert
-
Convert a function to a function which constructs a
MethodHandle
of the former, optionally binding certain arguments early (by keeping them "free" in the handle). - Handlify() - Constructor for class io.github.eutro.wasm2j.core.passes.convert.Handlify
-
Construct a new
Handlify
that will keep no arguments kept free. - Handlify(BitSet) - Constructor for class io.github.eutro.wasm2j.core.passes.convert.Handlify
- hashCode() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
- hashCode() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Global
- hashCode() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Limits
- hashCode() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Mem
- hashCode() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Table
- hashCode() - Method in class io.github.eutro.wasm2j.core.ext.Ext
- hashCode() - Method in class io.github.eutro.wasm2j.core.ext.MetadataState.MetaKind
- hashCode() - Method in class io.github.eutro.wasm2j.core.util.Pair
- hasNext() - Method in class io.github.eutro.wasm2j.core.passes.opts.Stackify.NodeIterator
- height - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- height - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
I
- I16 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- I2L - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: sign-extending integer to long conversion (marked as pure)
- I2L_U - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: zero-extending integer to long conversion (marked as pure)
- I32 - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
A 32-bit integer, represented as a Java int.
- I32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- I32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I32_16 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I32_8 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I32_LOAD - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 4 bytes, interpret as a little-endian integer.
- I32_LOAD16_S - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 2 bytes, interpret as a little-endian integer and sign extend to a 4 byte integer.
- I32_LOAD16_U - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 2 bytes, interpret as a little-endian integer and zero extend to a 4 byte integer.
- I32_LOAD8_S - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 1 byte, interpret as an integer and sign extend to a 4 byte integer.
- I32_LOAD8_U - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 1 byte, interpret as an integer and zero extend to a 4 byte integer.
- I32_STORE - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store an integer as 4 little-endian bytes.
- I32_STORE16 - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store the least-significant 2 bytes in little-endian order of an integer.
- I32_STORE8 - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store the least-significant byte of an integer.
- i32Add(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32And(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Clz(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Ctz(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32DivS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32DivU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Eq(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Eqz(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Extend16S(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Extend8S(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32GeS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32GeU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32GtS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32GtU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32LeS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32LeU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32LtS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32LtU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Mul(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Ne(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Or(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Popcnt(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32ReinterpretF32(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32RemS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32RemU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Rotl(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Rotr(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Shl(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32ShrS(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32ShrU(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Sub(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncF32S(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncF32U(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncF64S(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncF64U(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncSatF32S(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncSatF32U(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncSatF64S(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32TruncSatF64U(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32WrapI64(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i32Xor(int, int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- I64 - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
A 64-bit integer, represented as a Java long.
- I64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- I64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I64_16 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I64_32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I64_8 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- I64_LOAD - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 8 bytes, interpret as a little-endian long.
- I64_LOAD16_S - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 2 bytes, interpret as a little-endian integer and sign extend to an 8 byte long.
- I64_LOAD16_U - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 2 bytes, interpret as a little-endian integer and zero extend to an 8 byte long.
- I64_LOAD32_S - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 4 bytes, interpret as a little-endian integer and sign extend to an 8 byte long.
- I64_LOAD32_U - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 4 bytes, interpret as a little-endian integer and zero extend to an 8 byte long.
- I64_LOAD8_S - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 1 byte, interpret as an integer and sign extend to an 8 byte long.
- I64_LOAD8_U - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Read 1 byte, interpret as an integer and zero extend to an 8 byte long.
- I64_STORE - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store a long as 8 little-endian bytes.
- I64_STORE16 - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store the least-significant 2 bytes in little-endian order of a long.
- I64_STORE32 - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store the least-significant 4 bytes in little-endian order of a long.
- I64_STORE8 - Enum constant in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Store the least-significant byte of a long.
- i64Add(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64And(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Clz(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Ctz(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64DivS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64DivU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Eq(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Eqz(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Extend16S(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Extend32S(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Extend8S(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64ExtendI32S(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64ExtendI32U(int) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64GeS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64GeU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64GtS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64GtU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64LeS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64LeU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64LtS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64LtU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Mul(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Ne(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Or(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Popcnt(long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64ReinterpretF64(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64RemS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64RemU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Rotl(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Rotr(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Shl(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64ShrS(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64ShrU(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Sub(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncF32S(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncF32U(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncF64S(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncF64U(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncSatF32S(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncSatF32U(float) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncSatF64S(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64TruncSatF64U(double) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- i64Xor(long, long) - Static method in class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- I8 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
- IADD - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: integer addition (marked as pure)
- identity() - Static method in interface io.github.eutro.wasm2j.core.conf.itf.ConventionModifier
-
Returns the identity convention modifier, which does nothing.
- IDENTITY - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Effect: returns its argument(s)
- IdentityElimination - Class in io.github.eutro.wasm2j.core.passes.opts
-
A pass which contracts
CommonOps.IDENTITY
instructions. - IdentityElimination() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.IdentityElimination
- IDIV_U - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: unsigned integer division (not pure)
- IDOM - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
BasicBlock
. - IF_ACMPEQ - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is referentially equal to the second, which are both references.
- IF_ACMPNE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is referentially not equal to the second, which are both references.
- IF_ICMPEQ - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is equal to the second, which are both integers.
- IF_ICMPGE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is greater than or equal to the second, which are both integers.
- IF_ICMPGT - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is greater than the second, which are both integers.
- IF_ICMPLE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is less than or equal to the second, which are both integers.
- IF_ICMPLT - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is less than the second, which are both integers.
- IF_ICMPNE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the first argument is not equal to the second, which are both integers.
- IFEQ - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument integer is zero.
- IFGE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument integer is greater than or equal to zero.
- IFGT - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument integer is greater than zero.
- IFLE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument integer is less than or equal to zero.
- IFLT - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument integer is less than zero.
- IFNE - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument integer is not zero.
- IFNONNULL - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument is not null.
- IFNULL - Enum constant in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Jumps if the argument is null.
- impl - Variable in class io.github.eutro.wasm2j.core.intrinsics.IntrinsicImpl
-
The implementation of the method, for inlining.
- ImplClassBytes - Class in io.github.eutro.wasm2j.core.intrinsics
-
A class for finding the bytes a Java class.
- ImplClassBytes() - Constructor for class io.github.eutro.wasm2j.core.intrinsics.ImplClassBytes
- Import - Class in io.github.eutro.wasm2j.embed
-
An import of a module.
- Import(String, String, ExternType) - Constructor for class io.github.eutro.wasm2j.embed.Import
-
Construct a new import with the given module name, name, and type.
- ImportFactory<Import extends AbstractImportNode,
Convention> - Interface in io.github.eutro.wasm2j.core.conf.itf -
An interface for finding an import of a module.
- imports() - Method in class io.github.eutro.wasm2j.embed.Module
-
Get the imports that this module requires.
- IMUL - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: integer multiplication (marked as pure)
- index - Variable in class io.github.eutro.wasm2j.core.ssa.Var
-
The index of the variable, to distinguish from others with the same name in the same function, if
counting is enabled
. - inferInsn(Insn) - Method in class io.github.eutro.wasm2j.core.passes.meta.InferTypes.Java
- InferTypes<Ty> - Class in io.github.eutro.wasm2j.core.passes.meta
-
A pass that infers the types of variables in a function.
- InferTypes.Java - Class in io.github.eutro.wasm2j.core.passes.meta
-
A pass which infers the Java types of variables in a function.
- init() - Static method in class io.github.eutro.wasm2j.embed.Store
-
Create a new empty store.
- init(int, int, int, Object[]) - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
- init(int, int, int, Object[]) - Method in interface io.github.eutro.wasm2j.embed.Table
-
Initialise the table with data.
- init(int, int, int, ByteBuffer) - Method in class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
- init(int, int, int, ByteBuffer) - Method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
- init(int, int, int, ByteBuffer) - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Initialise the memory with the given data.
- inline - Variable in class io.github.eutro.wasm2j.core.intrinsics.IntrinsicImpl
-
Whether the intrinsic should be inlined into its caller.
- inline() - Element in annotation interface io.github.eutro.wasm2j.core.intrinsics.Intrinsic
-
Returns whether the implementation of the intrinsic should be inlined into its caller.
- inline(Function, List<Var>) - Method in class io.github.eutro.wasm2j.core.ssa.Inliner
-
Inline the function into the instruction builder.
- Inliner - Class in io.github.eutro.wasm2j.core.ssa
-
A class for inlining a
function
into another. - Inliner(IRBuilder) - Constructor for class io.github.eutro.wasm2j.core.ssa.Inliner
-
Construct a new inliner in the given instruction builder.
- InPlaceIRPass<T> - Interface in io.github.eutro.wasm2j.core.passes
-
An IR pass which is
in-place
. - insert(Effect) - Method in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Insert an effect at the end of the block.
- insert(Insn, Var) - Method in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Assign the result of the instruction to a variable, and insert the effect.
- insert(Insn, String) - Method in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Assign the result of the instruction to a new variable, and insert the effect.
- insertCtrl(Control) - Method in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Insert a control instruction at the end of the current block.
- insn() - Method in class io.github.eutro.wasm2j.core.ssa.Control
-
Get the
underlying instruction
of this control instruction. - insn() - Method in class io.github.eutro.wasm2j.core.ssa.Effect
-
Get the
underlying instruction
of this effect instruction. - insn(Var...) - Method in class io.github.eutro.wasm2j.core.ops.Op
-
Construct an instruction with this as its operation, applied to the given arguments.
- insn(List<Var>) - Method in class io.github.eutro.wasm2j.core.ops.Op
-
Construct an instruction with this as its operation, applied to the given arguments.
- Insn - Class in io.github.eutro.wasm2j.core.ssa
-
An instruction, encapsulating an
operation
and its arguments. - Insn(Op, Var...) - Constructor for class io.github.eutro.wasm2j.core.ssa.Insn
-
Construct an instruction with the given operator and arguments.
- Insn(Op, List<Var>) - Constructor for class io.github.eutro.wasm2j.core.ssa.Insn
-
Construct an instruction with the given operator and arguments.
- InsnMap<T> - Class in io.github.eutro.wasm2j.core.util
-
A map from WebAssembly opcodes to values.
- InsnMap() - Constructor for class io.github.eutro.wasm2j.core.util.InsnMap
- insns - Variable in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- insns - Variable in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
- insns(AbstractInsnNode...) - Static method in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Construct an
JavaOps.INSNS
operator for the given instructions. - insns(InsnList) - Static method in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Construct an
JavaOps.INSNS
operator for the given instruction list. - INSNS - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: an inline sequence of ASM instructions.
- Instance - Interface in io.github.eutro.wasm2j.embed
-
An instance of a module, from which exports can be retrieved.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.api.types.ExternType.Top
-
The singleton instance of the top type.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
-
A singleton instance of this calling convention.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.convert.JavaToJir
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.convert.JirToJava
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.form.LinearScan
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.form.LowerIntrinsics
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.form.LowerPhis
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.form.SSAify
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.CheckJava
-
A singleton instance of this class.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.ComputeDomFrontier
-
A singleton instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.ComputeDoms
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.ComputeLiveVars
-
A singleton instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.ComputePreds
-
A singleton instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.ComputeUses
-
A singleton instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.InferTypes.Java
-
The singleton instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.meta.VerifyIntegrity
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.CollapseJumps
-
A singleton instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.EliminateDeadBlocks
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.EliminateDeadVars
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.FindBoolSelects
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.IdentityElimination
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.MergeConds
-
An instance of this pass.
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.PropagateConstants
- INSTANCE - Static variable in class io.github.eutro.wasm2j.core.passes.opts.Stackify
- instanceExport(Instance, String) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get a named export of the module instance.
- InstanceFunctionConvention - Class in io.github.eutro.wasm2j.core.conf.impl
-
An
InstanceFunctionConvention
which implements function calls by invoking a specific Java method on a Java object. - InstanceFunctionConvention(ExportableConvention, ValueGetter, JClass.JavaMethod, CallingConvention) - Constructor for class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
-
Construct a new
InstanceFunctionConvention
. - instantiate(Store, ExternVal[]) - Method in class io.github.eutro.wasm2j.embed.Module
-
Instantiate the module in the given store with the provided values for imports.
- instantiate(Store, BiFunction<String, String, ExternVal>) - Method in class io.github.eutro.wasm2j.embed.Module
-
Instantiate the module in the given store with the provided function for looking up imports.
- instantiate(Store, Function<String, Instance>) - Method in class io.github.eutro.wasm2j.embed.Module
-
Instantiate the module in the given store with the provided function for looking up modules to import from.
- Instructions - Class in io.github.eutro.wasm2j.core.util
-
Static utilities for Java instructions.
- Instructions() - Constructor for class io.github.eutro.wasm2j.core.util.Instructions
- InterfaceBasedLinker<T extends EventSupplier<? super RunModuleCompilationEvent>> - Class in io.github.eutro.wasm2j.api.bits
-
A linker for WebAssembly modules that generates Java interfaces for every
registered
, or unregistered but imported, module. - InterfaceBasedLinker(NameSupplier) - Constructor for class io.github.eutro.wasm2j.api.bits.InterfaceBasedLinker
-
Construct an interface-based linker with the given supplier for names.
- intersect(ExternType, ExternType) - Static method in interface io.github.eutro.wasm2j.api.types.ExternType
-
Returns the
ExternType.intersection(ExternType)
of the two types, returning null (bottom) if either argument is null. - intersection(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
- intersection(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Global
- intersection(ExternType) - Method in interface io.github.eutro.wasm2j.api.types.ExternType
-
Returns the most general type which is the subtype of both this and the other, or
null
(representing the bottom type) if no such actual type exists. - intersection(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Mem
- intersection(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Table
- intersection(ExternType) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Top
- intersection(ExternType.Limits) - Method in class io.github.eutro.wasm2j.api.types.ExternType.Limits
-
The intersection of these limits with another, or null if they are disjoint.
- intOp - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.OperatorType
- Intrinsic - Annotation Interface in io.github.eutro.wasm2j.core.intrinsics
-
An annotation that defines which WebAssembly instructions a method is an intrinsic implementation for.
- INTRINSIC - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: an intrinsic instruction, implemented in Java code.
- IntrinsicImpl - Class in io.github.eutro.wasm2j.core.intrinsics
-
An implementation of an intrinsic.
- IntrinsicImpl(MethodNode, boolean) - Constructor for class io.github.eutro.wasm2j.core.intrinsics.IntrinsicImpl
-
Create an intrinsic from the given method node.
- INTRINSICS - Static variable in class io.github.eutro.wasm2j.core.intrinsics.JavaIntrinsics
-
The map from WebAssembly instructions to intrinsic implementations.
- INTRINSICS_LOWERED - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- invalidate(MetadataState.MetaKind...) - Method in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Mark the given metadata as invalid.
- inverse - Variable in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
The inverse of the condition.
- invoke(Object...) - Method in interface io.github.eutro.wasm2j.embed.Func
-
Invoke the function in a generic way.
- INVOKE - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: invokes the given method.
- io.github.eutro.wasm2j.api - package io.github.eutro.wasm2j.api
-
A configurable API over the less stable and lower-level core Wasm2j API.
- io.github.eutro.wasm2j.api.bits - package io.github.eutro.wasm2j.api.bits
-
Bits for extending and configuring the compiler.
- io.github.eutro.wasm2j.api.events - package io.github.eutro.wasm2j.api.events
-
Events that occur during a compilation.
- io.github.eutro.wasm2j.api.support - package io.github.eutro.wasm2j.api.support
-
Miscellaneous utilities.
- io.github.eutro.wasm2j.api.types - package io.github.eutro.wasm2j.api.types
-
WebAssembly value and extern types.
- io.github.eutro.wasm2j.core.conf.impl - package io.github.eutro.wasm2j.core.conf.impl
-
Implementations of configuration interfaces.
- io.github.eutro.wasm2j.core.conf.itf - package io.github.eutro.wasm2j.core.conf.itf
-
Configuration interfaces.
- io.github.eutro.wasm2j.core.ext - package io.github.eutro.wasm2j.core.ext
-
The ext API allows for associating arbitrary data with instances of
ExtContainer
. - io.github.eutro.wasm2j.core.intrinsics - package io.github.eutro.wasm2j.core.intrinsics
-
Intrinsics and their implementations.
- io.github.eutro.wasm2j.core.intrinsics.impls - package io.github.eutro.wasm2j.core.intrinsics.impls
- io.github.eutro.wasm2j.core.ops - package io.github.eutro.wasm2j.core.ops
-
Language specific and language agnostic operations in the IR.
- io.github.eutro.wasm2j.core.passes - package io.github.eutro.wasm2j.core.passes
-
Passes over the Wasm2j IR.
- io.github.eutro.wasm2j.core.passes.convert - package io.github.eutro.wasm2j.core.passes.convert
-
Passes that change entirely the structure of the IR from one form to another, or convert into/out of the IR.
- io.github.eutro.wasm2j.core.passes.form - package io.github.eutro.wasm2j.core.passes.form
-
Passes that change some assumptions about the IR.
- io.github.eutro.wasm2j.core.passes.meta - package io.github.eutro.wasm2j.core.passes.meta
-
Metadata passes that compute information about, or validate, the IR, but don't otherwise modify it.
- io.github.eutro.wasm2j.core.passes.misc - package io.github.eutro.wasm2j.core.passes.misc
-
Miscellaneous passes that create new passes from others.
- io.github.eutro.wasm2j.core.passes.opts - package io.github.eutro.wasm2j.core.passes.opts
-
IR passes
that perform optimisations. - io.github.eutro.wasm2j.core.ssa - package io.github.eutro.wasm2j.core.ssa
-
This package defines the intermediate representation (IR) used by Wasm2j to represent both WebAssembly and Java code.
- io.github.eutro.wasm2j.core.ssa.display - package io.github.eutro.wasm2j.core.ssa.display
-
Utilities for displaying the IR for debugging.
- io.github.eutro.wasm2j.core.util - package io.github.eutro.wasm2j.core.util
-
Miscellaneous core utilities.
- io.github.eutro.wasm2j.embed - package io.github.eutro.wasm2j.embed
-
An implementation of the WebAssembly embedding.
- io.github.eutro.wasm2j.embed.internal - package io.github.eutro.wasm2j.embed.internal
-
io.github.eutro.wasm2j.embed
internals. - iOp() - Element in annotation interface io.github.eutro.wasm2j.core.intrinsics.Intrinsic
-
Returns the tail of a multibyte opcode.
- IRBuilder - Class in io.github.eutro.wasm2j.core.ssa
-
An IR, or instruction, builder, which encapsulates a position in a function where instructions are being inserted.
- IRBuilder(Function, BasicBlock) - Constructor for class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Construct an instruction builder, inserting into a specific basic block.
- IRPass<A,
B> - Interface in io.github.eutro.wasm2j.core.passes -
A pass to run on some part of the IR (e.g.
- IRUtils - Class in io.github.eutro.wasm2j.core.util
-
A set of utilities for working with Wasm2j's IR.
- IRUtils() - Constructor for class io.github.eutro.wasm2j.core.util.IRUtils
- IRUtils.BoundsCheckFn<T> - Interface in io.github.eutro.wasm2j.core.util
-
Not stable.
- IRUtils.StoreOrLoadFn - Interface in io.github.eutro.wasm2j.core.util
-
Not stable.
- IS_NULL - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- IS_PHI - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Var
. - IS_PURE - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
- IS_TRIVIAL - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
- isCancelled() - Method in interface io.github.eutro.wasm2j.api.events.CancellableEvent
-
Get whether the event has been cancelled.
- isCancelled() - Method in class io.github.eutro.wasm2j.api.events.EmitClassEvent
- isInPlace() - Method in interface io.github.eutro.wasm2j.core.passes.InPlaceIRPass
-
Get whether this pass is in-place.
- isInPlace() - Method in interface io.github.eutro.wasm2j.core.passes.IRPass
-
Get whether this pass is in-place.
- isInPlace() - Method in class io.github.eutro.wasm2j.core.passes.misc.ChainedPass
- isInterface() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get whether the owner of this method is an interface.
- isMut - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Global
-
The mutability of the global, whether it can be assigned to.
- isSpecial() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get whether the method should be invoked with an
invokespecial
instruction. - isStatic() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
Get whether this field is static.
- isStatic() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Get whether this method is static.
- ISUB - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: integer subtraction (marked as pure)
- isValid(MetadataState.MetaKind) - Method in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Check whether the given metadata is valid.
- iterator() - Method in class io.github.eutro.wasm2j.core.ssa.Insn
J
- JAVA_PREEMIT - Static variable in class io.github.eutro.wasm2j.core.passes.Passes
-
Passes that must be run before emitting Java bytecode from IR, such as
stackification
andregister allocation
. - JavaExts - Class in io.github.eutro.wasm2j.core.ext
-
A collection of
Ext
s that exist in Java IR. - JavaExts() - Constructor for class io.github.eutro.wasm2j.core.ext.JavaExts
- JavaField(JClass, String, String, boolean) - Constructor for class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
Construct a new private field.
- JavaField(JClass, String, String, int) - Constructor for class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
Construct a new field with the given access modifiers.
- javaIdent(NameMangler.IllegalSymbolPolicy) - Static method in interface io.github.eutro.wasm2j.api.support.NameMangler
-
A name mangler which outputs valid Java identifiers.
- JavaIdent(NameMangler.IllegalSymbolPolicy) - Constructor for class io.github.eutro.wasm2j.api.support.NameMangler.JavaIdent
-
Construct a Java identifier mangler.
- JavaIntrinsics - Class in io.github.eutro.wasm2j.core.intrinsics
-
Contains the intrinsics implementing most WebAssembly primitive operations.
- JavaIntrinsics() - Constructor for class io.github.eutro.wasm2j.core.intrinsics.JavaIntrinsics
- JavaMethod(JClass, String, String, int) - Constructor for class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Construct a method with the given owner, name, type, and access modifiers.
- JavaOps - Class in io.github.eutro.wasm2j.core.ops
- JavaOps() - Constructor for class io.github.eutro.wasm2j.core.ops.JavaOps
- JavaOps.JumpType - Enum Class in io.github.eutro.wasm2j.core.ops
-
A conditional jump's type in Java bytecode.
- JavaPreemitEvent - Class in io.github.eutro.wasm2j.api.events
-
Fired just before the Java IR is converted to Java bytecode.
- JavaPreemitEvent(JClass) - Constructor for class io.github.eutro.wasm2j.api.events.JavaPreemitEvent
-
Construct a new Java pre-emit event with the given IR.
- JavaToJir - Class in io.github.eutro.wasm2j.core.passes.convert
-
A pass that converts Java bytecode into an IR function.
- JavaToJir() - Constructor for class io.github.eutro.wasm2j.core.passes.convert.JavaToJir
- javaType(byte) - Static method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
-
Convert from a WebAssembly type to a Java type.
- JClass - Class in io.github.eutro.wasm2j.core.ssa
-
Represents the IR of a Java class.
- JClass(String) - Constructor for class io.github.eutro.wasm2j.core.ssa.JClass
-
Construct a Java class with default
public class
access modifiers. - JClass(String, int) - Constructor for class io.github.eutro.wasm2j.core.ssa.JClass
-
Construct a Java class with the given (internal) name and access modifiers.
- JClass.Handleable - Interface in io.github.eutro.wasm2j.core.ssa
-
Represents a type that can be loaded as a constant method handle.
- JClass.JavaField - Class in io.github.eutro.wasm2j.core.ssa
-
A field in a
Java class
. - JClass.JavaMethod - Class in io.github.eutro.wasm2j.core.ssa
-
A method in a
Java class
. - jir - Variable in class io.github.eutro.wasm2j.api.events.JavaPreemitEvent
-
The Java IR being compiled.
- jir - Variable in class io.github.eutro.wasm2j.api.events.JirPassesEvent
-
The Java IR.
- JirPassesEvent - Class in io.github.eutro.wasm2j.api.events
-
Fired immediately after the conversion from WebAssembly IR to Java IR.
- JirPassesEvent(JClass) - Constructor for class io.github.eutro.wasm2j.api.events.JirPassesEvent
-
Construct a new Java IR passes event with the given IR.
- JirToJava - Class in io.github.eutro.wasm2j.core.passes.convert
-
A pass which converts Java IR to Java bytecode.
- JirToJava() - Constructor for class io.github.eutro.wasm2j.core.passes.convert.JirToJava
- JTYPES_INFERRED - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- jumpsTo(BasicBlock...) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
-
Create a control instruction that jumps to the given targets.
- jumpsTo(List<BasicBlock>) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
-
Create a control instruction that jumps to the given targets.
- JVM_BANNED_CHARS - Static variable in interface io.github.eutro.wasm2j.api.support.NameMangler
-
The characters banned in a JVM unqualified name.
- jvmUnqualified(NameMangler.IllegalSymbolPolicy) - Static method in interface io.github.eutro.wasm2j.api.support.NameMangler
-
A name mangler which outputs valid JVM unqualified names.
K
- key - Variable in class io.github.eutro.wasm2j.core.ops.Op
-
The key of the operation.
- kill - Variable in class io.github.eutro.wasm2j.core.ext.CommonExts.LiveData
-
The set of variables that are assigned to in this block.
L
- L2I_EXACT - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: long to integer conversion, trapping on failure
- labelArity(WasmToWir.ConvertState.CtrlFrame) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- labelTarget(int) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- LADD - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: long addition (marked as pure)
- lazy(Supplier<T>) - Static method in class io.github.eutro.wasm2j.core.util.Lazy
-
Create a lazily-initialized value.
- Lazy<T> - Class in io.github.eutro.wasm2j.core.util
-
A lazily-initialized value.
- left - Variable in class io.github.eutro.wasm2j.core.util.Pair
-
The left value.
- lenLoop(IRBuilder, Var[], boolean, Var, Consumer<Var[]>) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Create a loop.
- lift() - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Get an event dispatcher that allows for listening to the events for every compilation that goes through this compiler.
- lift() - Method in class io.github.eutro.wasm2j.core.passes.misc.ForPass.Insns
-
Lift this pass to operate on a full function.
- liftBasicBlocks(IRPass<BasicBlock, BasicBlock>) - Static method in class io.github.eutro.wasm2j.core.passes.misc.ForPass
-
Lift a basic block pass to operate on a full function.
- liftInsns(IRPass<Insn, Insn>) - Static method in class io.github.eutro.wasm2j.core.passes.misc.ForPass
-
Lift an instruction pass to operate on a full basic block.
- limits - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Mem
-
The limits of the memory, in pages.
- limits - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Table
-
The limits of the table.
- Limits(int, Integer) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Limits
-
Construct a set of limits with the given minimum and maximum.
- Limits(Limits) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Limits
-
Construct a set of limits from JWasm limits, representing the same thing.
- LinearScan - Class in io.github.eutro.wasm2j.core.passes.form
-
A pass which allocates registers using a linear scan algorithm.
- LinearScan() - Constructor for class io.github.eutro.wasm2j.core.passes.form.LinearScan
- listen(Class<T>, Consumer<T>) - Method in interface io.github.eutro.wasm2j.api.events.EventDispatcher
-
Listen to the given event type.
- listen(Class<T>, Consumer<T>) - Method in class io.github.eutro.wasm2j.api.events.EventSupplier
- LIVE_DATA - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
BasicBlock
, computed byComputeLiveVars
. - LIVE_DATA - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- LiveData() - Constructor for class io.github.eutro.wasm2j.core.ext.CommonExts.LiveData
- liveIn - Variable in class io.github.eutro.wasm2j.core.ext.CommonExts.LiveData
-
The set of variables that are alive at the start of the block.
- liveOut - Variable in class io.github.eutro.wasm2j.core.ext.CommonExts.LiveData
-
The set of variables that are alive at the end of the block.
- load - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- loadClass(Type) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Get the instruction for loading the class described by the given type.
- loadHandle(Memory.LoadMode) - Method in class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
- loadHandle(Memory.LoadMode) - Method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
- loadHandle(Memory.LoadMode) - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Get a method handle which loads with the specific mode.
- localC - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- localNames - Variable in class io.github.eutro.wasm2j.api.bits.NameSectionParser.NameSection
-
The local indirect name map.
- locals - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- localTypes - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- lookupMethod(String, Class<?>...) - Method in class io.github.eutro.wasm2j.core.ssa.JClass
-
Look up a method in this class by
reflection
, when a class with this name exists in the current JVM. - LOOKUPSWITCH - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Control: an
Opcodes.LOOKUPSWITCH
instruction. - LOWER_CAMEL - Static variable in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
lowerCamelCase
- LOWER_CASE - Enum constant in enum class io.github.eutro.wasm2j.api.support.CaseStyle.Capitalisation
-
All letters lower case.
- LOWER_KEBAB - Static variable in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
lower-kebab-case
- LOWER_SNAKE - Static variable in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
lower_snake_case
- LowerIntrinsics - Class in io.github.eutro.wasm2j.core.passes.form
-
A pass which lowers
intrinsics
, either by inlining their code, or attaching them as a method to the class. - LowerIntrinsics() - Constructor for class io.github.eutro.wasm2j.core.passes.form.LowerIntrinsics
- LowerPhis - Class in io.github.eutro.wasm2j.core.passes.form
-
A pass which lowers
phi
nodes into assignments targeting the same variables. - LowerPhis() - Constructor for class io.github.eutro.wasm2j.core.passes.form.LowerPhis
M
- main(String[]) - Static method in class io.github.eutro.wasm2j.api.Cli
-
The main entry point.
- mangle(String) - Method in class io.github.eutro.wasm2j.api.support.NameMangler.BanChars
- mangle(String) - Method in class io.github.eutro.wasm2j.api.support.NameMangler.JavaIdent
- mangle(String) - Method in interface io.github.eutro.wasm2j.api.support.NameMangler
-
Mangle a string, so it becomes a valid name according to the rules of this mangler.
- MANGLE - Enum constant in enum class io.github.eutro.wasm2j.api.support.NameMangler.IllegalSymbolPolicy
-
Illegal characters should be mangled to their "_O%o_" formatting.
- MANGLE_BIJECTIVE - Enum constant in enum class io.github.eutro.wasm2j.api.support.NameMangler.IllegalSymbolPolicy
-
Illegal characters should be mangled, with a human-readable mangling where possible, and no two distinct strings should mangle to the same thing.
- MANGLE_SENSIBLE - Enum constant in enum class io.github.eutro.wasm2j.api.support.NameMangler.IllegalSymbolPolicy
-
Illegal characters should be mangled, but in a human-readable way where possible.
- mapInPlace(UnaryOperator<T>) - Method in class io.github.eutro.wasm2j.core.util.Lazy
-
Apply the function to the value when it is next retrieved.
- markPure(T) - Static method in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Mark something as pure, by attaching
CommonExts.IS_PURE
= true
to it. - matchesType(ExternType, ExternType.Kind) - Method in interface io.github.eutro.wasm2j.embed.ExternVal
-
Check whether this extern matches the given expected type.
- max - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Limits
-
The maximum value, or null if unbounded.
- max - Variable in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
-
The maximum number of elements in the table, or null if unbounded.
- MAX_PAGES - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
-
The max number of pages a byte buffer memory can have.
- MAX_USHORT - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
-
The maximum value of an unsigned 16-byte integer.
- maybeBoxed(IRBuilder, Var, byte, Type) - Static method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
-
Convert a WebAssembly value into a Java reference.
- Mem(ExternType.Limits) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Mem
-
Construct a memory type with the given limits.
- MEM - Enum constant in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
A memory.
- MEM_COPY - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- MEM_FILL - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- MEM_GROW - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- MEM_INIT - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- MEM_LOAD - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- MEM_SIZE - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- MEM_STORE - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- memAlloc(Store, ExternType.Mem) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Create a new memory with the given type.
- memGrow(Store, Memory, int) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Grow the memory by a number of pages, filling new pages with 0.
- memory - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.WithMemArg
- Memory - Interface in io.github.eutro.wasm2j.embed
-
A memory extern.
- MEMORY_BYTE_BUFFER - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ByteBufferMemoryConvention
-
An ext that provides access to the underlying byte buffer.
- Memory.Bootstrap - Class in io.github.eutro.wasm2j.embed
-
Bootstrap methods for memory load and store
invokedynamic
instructions. - Memory.ByteBufferMemory - Class in io.github.eutro.wasm2j.embed
-
A memory implemented using a
ByteBuffer
. - Memory.HandleMemory - Class in io.github.eutro.wasm2j.embed
-
A memory which delegates its calls to the provided method handles.
- Memory.HasOpcode - Interface in io.github.eutro.wasm2j.embed
-
Something that has a WebAssembly single-byte opcode.
- Memory.LoadMode - Enum Class in io.github.eutro.wasm2j.embed
-
A type of load instruction.
- Memory.StoreMode - Enum Class in io.github.eutro.wasm2j.embed
-
A type of store instruction.
- MemoryConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
The convention for a WebAssembly memory, defining how the memory can be accessed and exported, and added to the constructor.
- MemoryConvention.Delegating - Class in io.github.eutro.wasm2j.core.conf.itf
-
A
MemoryConvention
which delegates all calls to another. - memRead(Store, Memory, int) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Read a single byte from a memory.
- memSize(Store, Memory) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the size of the memory, in pages.
- memType(Store, Memory) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the type of a memory.
- memWrite(Store, Memory, int, byte) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Write a single byte to a memory.
- MergeConds - Class in io.github.eutro.wasm2j.core.passes.opts
-
A pass which merges
JavaOps.BOOL_SELECT
instructions withJavaOps.BR_COND
andJavaOps.SELECT
instructions. - MergeConds() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.MergeConds
- METADATA_STATE - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Function
. - MetadataState - Class in io.github.eutro.wasm2j.core.ext
-
Keeps track of the state of certain metadata in a
Function
, such as its SSA-ness. - MetadataState() - Constructor for class io.github.eutro.wasm2j.core.ext.MetadataState
- MetadataState.ComputableMetaKind<T> - Class in io.github.eutro.wasm2j.core.ext
-
A kind of metadata whose presence can be checked, but also specifies how to compute it.
- MetadataState.MetaKind - Class in io.github.eutro.wasm2j.core.ext
-
A kind of metadata whose presence can be checked on
MetadataState
. - method - Variable in class io.github.eutro.wasm2j.core.intrinsics.IntrinsicImpl
-
The method node from which the intrinsic was parsed.
- METHOD_HANDLE_CLASS - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
-
An empty
JClass
ofMethodHandle
. - METHOD_IMPL - Static variable in class io.github.eutro.wasm2j.core.ext.JavaExts
-
Attached to a
JClass.JavaMethod
. - METHOD_NATIVE_IMPL - Static variable in class io.github.eutro.wasm2j.core.ext.JavaExts
-
Attached to a
JClass.JavaMethod
. - methodDesc(byte[], byte[]) - Static method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
-
Return the
BasicCallingConvention
descriptor of the given WebAssembly function type. - methodGetterSetter(ValueGetter, JClass.JavaMethod, JClass.JavaMethod) - Static method in class io.github.eutro.wasm2j.core.util.Getters
-
A getter (and setter) that invokes the respective methods on a target.
- methods - Variable in class io.github.eutro.wasm2j.core.ssa.JClass
-
The list of methods in the class.
- min - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Limits
-
The minimum value.
- min - Variable in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
-
The minimum number of elements in the table.
- mnemonic - Variable in class io.github.eutro.wasm2j.core.ops.OpKey
- modify(Convention, Node, int) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ConventionModifier
-
Modify the given convention, possibly returning a new one that modifies its behaviour, likely its export behaviour.
- modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ConstructorCallback.Abstract
-
Modify the constructor in any way.
- modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass) - Method in interface io.github.eutro.wasm2j.core.conf.itf.ConstructorCallback
-
Modify the constructor in any way.
- modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass) - Method in class io.github.eutro.wasm2j.core.conf.itf.FunctionConvention.Delegating
- modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass) - Method in class io.github.eutro.wasm2j.core.conf.itf.GlobalConvention.Delegating
- modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass) - Method in class io.github.eutro.wasm2j.core.conf.itf.MemoryConvention.Delegating
- modifyConstructor(IRBuilder, JClass.JavaMethod, Module, JClass) - Method in class io.github.eutro.wasm2j.core.conf.itf.TableConvention.Delegating
- ModifyConventionsEvent - Class in io.github.eutro.wasm2j.api.events
-
An event fired when constructing the
Java conventions
of a module compilation. - ModifyConventionsEvent(WirJavaConventionFactory.Builder) - Constructor for class io.github.eutro.wasm2j.api.events.ModifyConventionsEvent
-
Construct a new modify-conventions event with the given convention builder.
- module - Variable in class io.github.eutro.wasm2j.embed.Import
-
The name of the module to import from.
- Module - Class in io.github.eutro.wasm2j.core.ssa
-
Represents the IR of a WebAssembly module.
- Module - Class in io.github.eutro.wasm2j.embed
-
A parsed WebAssembly module.
- Module() - Constructor for class io.github.eutro.wasm2j.core.ssa.Module
- MODULE - Static variable in class io.github.eutro.wasm2j.core.ext.WasmExts
- ModuleCompilation - Class in io.github.eutro.wasm2j.api
-
Represents the compilation of a single (already parsed and validated) WebAssembly module.
- ModuleCompileEvent - Interface in io.github.eutro.wasm2j.api.events
-
An event fired during the compilation of a single module.
- moduleDecode(byte[]) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Decode a binary module from a byte array.
- moduleExports(Module) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the exports that this module supplies.
- moduleFromNode(ModuleNode) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Create a module from a JWasm module node.
- moduleImports(Module) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the imports that the module requires.
- moduleInstantiate(Store, Module, ExternVal[]) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Instantiate the module in the given store with the provided values for imports.
- moduleName - Variable in class io.github.eutro.wasm2j.api.bits.NameSectionParser.NameSection
-
The module name.
- moduleParse(String) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Parse a text module from a string.
- ModuleRefusedException - Exception in io.github.eutro.wasm2j.embed
-
Thrown when instantiation of a module fails (is refused) for a reason other than it being invalid.
- ModuleRefusedException(Throwable) - Constructor for exception io.github.eutro.wasm2j.embed.ModuleRefusedException
-
Construct a
ModuleRefusedException
with the given cause. - moduleValidate(Module) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Validate the module, throwing an exception if the module is invalid.
- MTY_CLASS - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
-
An empty
JClass
ofMethodType
. - MTY_METHOD_TYPE - Static variable in class io.github.eutro.wasm2j.core.util.IRUtils
N
- name - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
The name of the field.
- name - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
The name of the method.
- name - Variable in class io.github.eutro.wasm2j.core.ssa.JClass
-
The internal name of the class.
- name - Variable in class io.github.eutro.wasm2j.core.ssa.Var
-
The name of the variable.
- name - Variable in class io.github.eutro.wasm2j.embed.Export
-
The name of the export.
- name - Variable in class io.github.eutro.wasm2j.embed.Import
-
The name of the import.
- NameMangler - Interface in io.github.eutro.wasm2j.api.support
-
A class for mangling names, converting (possibly invalid) tokens to new tokens that are valid, according to a set of rules.
- NameMangler.BanChars - Class in io.github.eutro.wasm2j.api.support
-
A name mangler that forbids a certain set of characters.
- NameMangler.IllegalSymbolPolicy - Enum Class in io.github.eutro.wasm2j.api.support
-
A policy for how illegal characters should be handled.
- NameMangler.JavaIdent - Class in io.github.eutro.wasm2j.api.support
-
A mangler which outputs valid Java identifiers.
- NameSection(ByteInputStream<E>) - Constructor for class io.github.eutro.wasm2j.api.bits.NameSectionParser.NameSection
-
Read the name section from a given input stream.
- NameSectionParser<T extends EventSupplier<? super RunModuleCompilationEvent>> - Class in io.github.eutro.wasm2j.api.bits
-
A bit which parses the name section of a module, and renames the Java methods to match the names given in the section.
- NameSectionParser() - Constructor for class io.github.eutro.wasm2j.api.bits.NameSectionParser
- NameSectionParser.NameSection - Class in io.github.eutro.wasm2j.api.bits
-
A representation of the name section of a WebAssembly module.
- NameSupplier - Interface in io.github.eutro.wasm2j.api.support
-
An interface for supplying translations of WebAssembly names into appropriate Java names.
- NameSupplier.SimpleNameSupplier - Class in io.github.eutro.wasm2j.api.support
-
A simple name supplier.
- newBb() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- newBb() - Method in class io.github.eutro.wasm2j.core.ssa.Function
-
Creates a new basic block in this function.
- newVar(String) - Method in class io.github.eutro.wasm2j.core.ssa.Function
-
Create a new variable with the given name.
- newVar(String, int) - Method in class io.github.eutro.wasm2j.core.ssa.Function
-
Create a new variable with the given name.
- newVarFmt(String, Object...) - Method in class io.github.eutro.wasm2j.core.ssa.Function
-
Create a new variable with a formatted name.
- next() - Method in class io.github.eutro.wasm2j.core.passes.opts.Stackify.NodeIterator
- node - Variable in class io.github.eutro.wasm2j.api.ModuleCompilation
-
The module being compiled.
- NodeIterator(boolean, Stackify.Node<T>) - Constructor for class io.github.eutro.wasm2j.core.passes.opts.Stackify.NodeIterator
- NOEXT - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- noop() - Static method in interface io.github.eutro.wasm2j.core.conf.itf.ExportableConvention
-
Returns an
ExportableConvention
that does nothing. - normalise(String) - Method in enum class io.github.eutro.wasm2j.api.support.CaseStyle.Capitalisation
-
Convert the word to this capitalisation.
- normaliseWord(String, int) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.CamelLike
- normaliseWord(String, int) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.Detect
- normaliseWord(String, int) - Method in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
Normalise the
index
th word of a token to how it should appear in this case style. - normaliseWord(String, int) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.SnakeLike
O
- of(L, R) - Static method in class io.github.eutro.wasm2j.core.util.Pair
-
Create a pair.
- offset - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.WithMemArg
- OMIT - Enum constant in enum class io.github.eutro.wasm2j.api.support.NameMangler.IllegalSymbolPolicy
-
Illegal characters should be omitted.
- op - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.OperatorType
- op - Variable in class io.github.eutro.wasm2j.core.ssa.Insn
-
The underlying operation.
- Op - Class in io.github.eutro.wasm2j.core.ops
-
An operation, encapsulating an
operation key
and any intermediates. - Op(OpKey) - Constructor for class io.github.eutro.wasm2j.core.ops.Op
-
Construct an operation with the given key.
- opcode - Variable in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
The Java opcode of the jump instruction.
- opcode - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- opcode() - Method in interface io.github.eutro.wasm2j.embed.Memory.HasOpcode
-
Get the single-byte opcode of this.
- opcode() - Method in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
- opcode() - Method in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
- OPERATOR - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- Operators - Class in io.github.eutro.wasm2j.core.intrinsics.impls
-
Java implementations of certain WebAssembly primitives.
- Operators() - Constructor for class io.github.eutro.wasm2j.core.intrinsics.impls.Operators
- OperatorType(byte, int) - Constructor for class io.github.eutro.wasm2j.core.ops.WasmOps.OperatorType
- OpKey - Class in io.github.eutro.wasm2j.core.ops
-
An operation key, representing a type of operation, without intermediates.
- OpKey(String) - Constructor for class io.github.eutro.wasm2j.core.ops.OpKey
- OutputsToDirectory<T extends EventSupplier<? super EmitClassEvent>> - Class in io.github.eutro.wasm2j.api.bits
-
A bit which outputs emitted classes to the given directory.
- OutputsToDirectory(Path) - Constructor for class io.github.eutro.wasm2j.api.bits.OutputsToDirectory
-
Construct a
OutputsToDirectory
for outputting to the given directory. - outType - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- owner - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
The owner of the method.
- owner - Variable in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
The owner of the method.
- OWNING_BLOCK - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
- OWNING_CONTROL - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Insn
. - OWNING_EFFECT - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Insn
. - OWNING_FUNCTION - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
BasicBlock
.
P
- Pair<L,
R> - Class in io.github.eutro.wasm2j.core.util -
A simple two-tuple, with defined equality and hashing.
- params - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Func
-
The parameter types of the function.
- parse(ByteInputStream<E>) - Static method in class io.github.eutro.wasm2j.api.bits.NameSectionParser.NameSection
-
Read the name section from a given input stream.
- parse(String) - Static method in class io.github.eutro.wasm2j.api.types.ExternType.Func
-
Parse a function type from an
encoded
string. - parse(String) - Static method in class io.github.eutro.wasm2j.embed.Module
-
Parse a text module from a string.
- passArguments(IRBuilder, List<Var>, TypeNode) - Method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
- passArguments(IRBuilder, List<Var>, TypeNode) - Method in interface io.github.eutro.wasm2j.core.conf.itf.CallingConvention
-
For a given function type, emit code to convert the given WebAssembly
args
(as given to aWasmOps.CALL_INDIRECT
instruction) to how they should be passed to the method handle implementing the raw Java function. - Passes - Class in io.github.eutro.wasm2j.core.passes
-
Some pre-composed passes.
- Passes() - Constructor for class io.github.eutro.wasm2j.core.passes.Passes
- peekV() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- PHI - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Effect: returns the argument corresponding to its predecessor
- popC() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- popV() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- popVar() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- popVs(int) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- postOrder() - Method in class io.github.eutro.wasm2j.core.util.GraphWalker
-
Get the post-order traversal of the graph.
- PREDS - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
BasicBlock
. - PREDS - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- preOrder() - Method in class io.github.eutro.wasm2j.core.util.GraphWalker
-
Get the pre-order traversal of the graph.
- PropagateConstants - Class in io.github.eutro.wasm2j.core.passes.opts
- PropagateConstants() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.PropagateConstants
- pushC(int, TypeNode, BasicBlock) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- pushV() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- pushVar() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- put(byte, int, T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert a mapping for the given opcode.
- PUT_FIELD - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: set the given field on its first argument, or statically with only one argument.
- putByte(byte[], T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert the same mapping for an array of opcodes.
- putByte(byte, T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert a mapping for the given single-byte opcode.
- putInt(int[], T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert the same mapping for an array of
Opcodes.INSN_PREFIX
-prefixed opcodes. - putInt(int, T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert a mapping for a
Opcodes.INSN_PREFIX
-prefixed opcode. - putVector(int[], T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert the same mapping for an array of
Opcodes.VECTOR_PREFIX
-prefixed opcodes. - putVector(int, T) - Method in class io.github.eutro.wasm2j.core.util.InsnMap
-
Insert a mapping for a
Opcodes.VECTOR_PREFIX
-prefixed opcode.
Q
- quickCheckConstant(Var, Object) - Static method in class io.github.eutro.wasm2j.core.ops.CommonOps
R
- read(int) - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Read a byte at the given address.
- receiveArguments(IRBuilder, List<Var>, TypeNode) - Method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
- receiveArguments(IRBuilder, List<Var>, TypeNode) - Method in interface io.github.eutro.wasm2j.core.conf.itf.CallingConvention
-
For a given function type, emit code to convert the given raw Java
args
(as loaded from the method arguments) to the WebAssembly arguments. - receiveReturn(IRBuilder, List<Var>, Var, TypeNode) - Method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
- receiveReturn(IRBuilder, List<Var>, Var, TypeNode) - Method in interface io.github.eutro.wasm2j.core.conf.itf.CallingConvention
-
For a given function type, emit code to convert a singular raw Java return value to the possibly many WebAssembly return values.
- referencableFuncs - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- refVar(int) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- register(String, ModuleNode) - Method in class io.github.eutro.wasm2j.api.bits.InterfaceBasedLinker
-
Register a module with this linker, generating an interface for its exports.
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.conf.impl.InstanceFunctionConvention
- removeExt(Ext<T>) - Method in interface io.github.eutro.wasm2j.core.ext.ExtContainer
-
Disassociate the value of
ext
(if any) in this container. - removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ext.ExtHolder
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Control
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Effect
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Function
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Insn
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Module
- removeExt(Ext<T>) - Method in class io.github.eutro.wasm2j.core.ssa.Var
- results - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Func
-
The result types of the function.
- rethrow(Throwable) - Static method in class io.github.eutro.wasm2j.embed.internal.Utils
-
Rethrow the throwable.
- RETURN - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Control: returns from the function.
- returns - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- right - Variable in class io.github.eutro.wasm2j.core.util.Pair
-
The right value.
- run() - Method in class io.github.eutro.wasm2j.api.ModuleCompilation
-
Run the compilation.
- run(A) - Method in interface io.github.eutro.wasm2j.core.passes.IRPass
-
Run the pass.
- run(A) - Method in class io.github.eutro.wasm2j.core.passes.misc.ChainedPass
- run(ModuleNode) - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir
- run(Function) - Method in class io.github.eutro.wasm2j.core.passes.convert.Handlify
- run(JClass) - Method in class io.github.eutro.wasm2j.core.passes.convert.JirToJava
- run(Module) - Method in class io.github.eutro.wasm2j.core.passes.convert.WirToJir
- run(MethodNode) - Method in class io.github.eutro.wasm2j.core.passes.convert.JavaToJir
- run(T) - Method in interface io.github.eutro.wasm2j.core.passes.InPlaceIRPass
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.convert.WirToJir.WirToJirPerFunc
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.form.LinearScan
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.form.LowerIntrinsics
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.form.LowerPhis
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.form.SSAify
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.ComputeDomFrontier
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.ComputeDoms
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.ComputeLiveVars
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.ComputePreds
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.ComputeUses
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.InferTypes.Java
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.InferTypes
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.meta.VerifyIntegrity
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.CollapseJumps
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.EliminateDeadBlocks
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.EliminateDeadVars
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.FindBoolSelects
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.MergeConds
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.PropagateConstants
- runInPlace(Function) - Method in class io.github.eutro.wasm2j.core.passes.opts.Stackify
- runInPlace(Insn) - Method in class io.github.eutro.wasm2j.core.passes.opts.IdentityElimination
- runInPlace(BasicBlock) - Method in class io.github.eutro.wasm2j.core.passes.misc.ForPass.Insns
- runInPlace(ClassNode) - Method in class io.github.eutro.wasm2j.core.passes.meta.CheckJava
- runInPlace(T) - Method in interface io.github.eutro.wasm2j.core.passes.InPlaceIRPass
-
Run the pass.
- RunModuleCompilationEvent - Class in io.github.eutro.wasm2j.api.events
-
Fired when a module compilation is started.
- RunModuleCompilationEvent(ModuleCompilation) - Constructor for class io.github.eutro.wasm2j.api.events.RunModuleCompilationEvent
-
Construct a new module compilation event.
S
- S16_32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- S16_64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- S32_64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- S8_32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- S8_64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- SELECT - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: check the third argument, if it is true, returns the first argument, otherwise the second.
- SELECT - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- set(int, Object) - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
- set(int, Object) - Method in class io.github.eutro.wasm2j.embed.Table.HandleTable
- set(int, Object) - Method in interface io.github.eutro.wasm2j.embed.Table
-
Set an element of the table.
- set(IRBuilder, Var) - Method in interface io.github.eutro.wasm2j.core.util.ValueSetter
-
Emit code to set this value.
- set(Object) - Method in class io.github.eutro.wasm2j.embed.Global.BoxGlobal
- set(Object) - Method in class io.github.eutro.wasm2j.embed.Global.HandleGlobal
- set(Object) - Method in interface io.github.eutro.wasm2j.embed.Global
-
Set the value of this global, if it is mutable.
- set(T) - Method in class io.github.eutro.wasm2j.core.util.Lazy
-
Imperatively set the value, dropping the thunk.
- setAssignsTo(List<Var>) - Method in class io.github.eutro.wasm2j.core.ssa.Effect
-
Set the list of variables this effect assigns to.
- setBlock(BasicBlock) - Method in class io.github.eutro.wasm2j.core.ssa.IRBuilder
-
Set the block this builder should insert at the end of.
- setCallingConvention(CallingConvention) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Set the calling convention of this builder.
- setControl(Control) - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
-
Set the control instruction of this block.
- setDebugOutput(File) - Method in class io.github.eutro.wasm2j.embed.Store
-
Set the file to which class bytes are dumped by this store, for debugging purposes.
- setDebugOutputDirectory(File) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Set the debug output of stores created by this embedding instance.
- setDescriptor(String) - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Set the type of the method fully to the type described by the method descriptor.
- setFunctionImports(ImportFactory<FuncImportNode, FunctionConvention>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Set the behaviour of imported functions.
- setGlobalImports(ImportFactory<GlobalImportNode, GlobalConvention>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Set the behaviour of imported globals.
- setInsn(Insn) - Method in class io.github.eutro.wasm2j.core.ssa.Control
-
Set the
underlying instruction
of this control instruction. - setInsn(Insn) - Method in class io.github.eutro.wasm2j.core.ssa.Effect
-
Set the
underlying instruction
of this effect instruction. - setMemoryImports(ImportFactory<MemImportNode, MemoryConvention>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Set the behaviour of imported memories.
- setModifyFuncConvention(ConventionModifier<FunctionConvention, Pair<FuncNode, CodeNode>>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Add a hook to modify the convention for each local function.
- setModifyGlobalConvention(ConventionModifier<GlobalConvention, GlobalNode>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Add a hook to modify the convention for each local global.
- setModifyMemConvention(ConventionModifier<MemoryConvention, MemoryNode>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Add a hook to modify the convention for each local memory.
- setModifyTableConvention(ConventionModifier<TableConvention, TableNode>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Add a hook to modify the convention for each local table.
- setMut(boolean) - Method in class io.github.eutro.wasm2j.embed.Global.BoxGlobal
-
Set the mutability of this global.
- setName(String) - Method in class io.github.eutro.wasm2j.api.ModuleCompilation
-
Set the name of the class produced by this compilation, by
modifying the conventions
. - setNameSupplier(Supplier<String>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Set the function that generates class names.
- setReturnTy(Type) - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
-
Set the return type of the method.
- setTableImports(ImportFactory<TableImportNode, TableConvention>) - Method in class io.github.eutro.wasm2j.core.conf.itf.WirJavaConventionFactory.Builder
-
Set the behaviour of imported tables.
- setter() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
-
Returns a
JClass.Handleable
that resolves to a setter handle to the field. - setValues(Object[]) - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
-
Set the underlying array of this table.
- setValues(Object[]) - Method in class io.github.eutro.wasm2j.embed.Table.ArrayTable
- SimpleOpKey - Class in io.github.eutro.wasm2j.core.ops
- SimpleOpKey(String) - Constructor for class io.github.eutro.wasm2j.core.ops.SimpleOpKey
- size() - Method in class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
- size() - Method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
- size() - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Get the size of the memory, in pages.
- size() - Method in class io.github.eutro.wasm2j.embed.Table.AbstractArrayTable
- size() - Method in class io.github.eutro.wasm2j.embed.Table.HandleTable
- size() - Method in interface io.github.eutro.wasm2j.embed.Table
-
Get the size of the table.
- SnakeLike(String, CaseStyle.Capitalisation) - Constructor for class io.github.eutro.wasm2j.api.support.CaseStyle.SnakeLike
-
Construct a
CaseStyle.SnakeLike
case with the given separator and word capitalisation rule. - splitToWords(String) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.CamelLike
- splitToWords(String) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.Detect
- splitToWords(String) - Method in class io.github.eutro.wasm2j.api.support.CaseStyle.SnakeLike
- splitToWords(String) - Method in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
Split the token into words according to this case style.
- SSA_FORM - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- SSA_OPTS - Static variable in class io.github.eutro.wasm2j.core.passes.Passes
-
Simple optimisation passes to run on an SSA-form IR.
- SSADisplay - Class in io.github.eutro.wasm2j.core.ssa.display
-
Utilities for displaying the IR to an SVG document, for debugging purposes.
- SSADisplay() - Constructor for class io.github.eutro.wasm2j.core.ssa.display.SSADisplay
- SSAify - Class in io.github.eutro.wasm2j.core.passes.form
- SSAify() - Constructor for class io.github.eutro.wasm2j.core.passes.form.SSAify
- STACKIFIED - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Var
. - STACKIFIED - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- Stackify - Class in io.github.eutro.wasm2j.core.passes.opts
- Stackify() - Constructor for class io.github.eutro.wasm2j.core.passes.opts.Stackify
- Stackify.NodeIterator<T> - Class in io.github.eutro.wasm2j.core.passes.opts
- Store - Class in io.github.eutro.wasm2j.embed
-
Formally, in the WebAssembly specification, the store contains (owns) all the values (functions, memories, tables) of a set of modules.
- storeHandle(Memory.StoreMode) - Method in class io.github.eutro.wasm2j.embed.Memory.ByteBufferMemory
- storeHandle(Memory.StoreMode) - Method in class io.github.eutro.wasm2j.embed.Memory.HandleMemory
- storeHandle(Memory.StoreMode) - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Get a method handle which stores with the specific mode.
- storeInit() - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Returns a new empty store.
- submitBinary(ByteInputStream<E>) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Submit an input stream of a WebAssembly binary for compilation.
- submitBinary(InputStream) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Submit an input stream of a WebAssembly binary for compilation.
- submitBinary(ByteBuffer) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Submit a byte buffer of a WebAssembly binary for compilation.
- submitBuf(ByteBuffer) - Method in class io.github.eutro.wasm2j.api.bits.FormatDetector
-
Submit a byte buffer to the compiler, detecting its type.
- submitFile(Path) - Method in class io.github.eutro.wasm2j.api.bits.FormatDetector
-
Submit a file to the compiler, detecting its type.
- submitNode(ModuleNode) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Submit an already parsed WebAssembly module for compilation.
- submitText(ByteInputStream<E>) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Submit a source input stream of a WebAssembly text file for compilation.
- submitText(String) - Method in class io.github.eutro.wasm2j.api.WasmCompiler
-
Submit a source string of a WebAssembly text file for compilation.
T
- Table - Interface in io.github.eutro.wasm2j.embed
-
A table extern.
- Table(ExternType.Limits, ValType) - Constructor for class io.github.eutro.wasm2j.api.types.ExternType.Table
-
Construct a table with the given limits and component type.
- TABLE - Enum constant in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
A table.
- TABLE_ARRAY - Static variable in class io.github.eutro.wasm2j.core.conf.impl.ArrayTableConvention
-
An ext that provides access to the underlying array.
- TABLE_COPY - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- TABLE_FILL - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- TABLE_GROW - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- TABLE_INIT - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- TABLE_REF - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- TABLE_SIZE - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- TABLE_STORE - Static variable in class io.github.eutro.wasm2j.core.ops.WasmOps
- Table.AbstractArrayTable - Class in io.github.eutro.wasm2j.embed
-
A table with an array as the underlying representation.
- Table.ArrayTable - Class in io.github.eutro.wasm2j.embed
-
A table which stores its elements as a table in itself.
- Table.HandleTable - Class in io.github.eutro.wasm2j.embed
-
A table which implements its methods by delegating to method handles.
- tableAlloc(Store, ExternType.Table) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Construct a new table with the given type.
- TableConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
The convention for a WebAssembly table, defining how the table can be accessed and exported, and added to the constructor.
- TableConvention.Delegating - Class in io.github.eutro.wasm2j.core.conf.itf
-
A
TableConvention
which delegates all calls to another. - tableGrow(Store, Table, int, Object) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Grow the table by a number of elements, filling it with the given value.
- tableRead(Store, Table, int) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get an element of the table.
- tableSize(Store, Table) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the size of a table.
- TABLESWITCH - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Control: an
Opcodes.TABLESWITCH
instruction. - tableType(Store, Table) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Get the type of a table extern.
- tableWrite(Store, Table, int, Object) - Method in class io.github.eutro.wasm2j.embed.WebAssembly
-
Set an element of the table.
- takeNull(Object) - Static method in class io.github.eutro.wasm2j.core.ext.CommonExts
- targets - Variable in class io.github.eutro.wasm2j.core.ssa.Control
-
The jump targets of this instruction.
- TEXT - Enum constant in enum class io.github.eutro.wasm2j.api.bits.FormatDetector.Format
-
The WebAssembly text format.
- then(IRPass<B, C>) - Method in interface io.github.eutro.wasm2j.core.passes.IRPass
-
Compose this pass with another.
- THIS - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Effect: loads the implicit receiver of a method.
- TITLE_CASE - Enum constant in enum class io.github.eutro.wasm2j.api.support.CaseStyle.Capitalisation
-
The first letter upper case, the rest lower.
- toList() - Method in interface io.github.eutro.wasm2j.core.util.GraphWalker.Order
-
Collect this order to a list.
- toString() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Func
- toString() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Global
- toString() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Limits
- toString() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Mem
- toString() - Method in class io.github.eutro.wasm2j.api.types.ExternType.Table
- toString() - Method in enum class io.github.eutro.wasm2j.api.types.ValType
- toString() - Method in class io.github.eutro.wasm2j.core.ext.Ext
- toString() - Method in class io.github.eutro.wasm2j.core.ext.MetadataState.MetaKind
- toString() - Method in class io.github.eutro.wasm2j.core.intrinsics.IntrinsicImpl
- toString() - Method in class io.github.eutro.wasm2j.core.ops.Op
- toString() - Method in class io.github.eutro.wasm2j.core.ops.OpKey
- toString() - Method in class io.github.eutro.wasm2j.core.ops.UnaryOpKey.UnaryOp
- toString() - Method in class io.github.eutro.wasm2j.core.ops.WasmOps.CallType
- toString() - Method in class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType
- toString() - Method in class io.github.eutro.wasm2j.core.ops.WasmOps.OperatorType
- toString() - Method in class io.github.eutro.wasm2j.core.ops.WasmOps.WithMemArg
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.Control
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.Effect
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.Function
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.Insn
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaField
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.JClass.JavaMethod
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.JClass
- toString() - Method in class io.github.eutro.wasm2j.core.ssa.Var
- toString() - Method in class io.github.eutro.wasm2j.embed.Import
- toTargetString() - Method in class io.github.eutro.wasm2j.core.ssa.BasicBlock
-
Format this block as a jump target, for debugging.
- TRACK_INSN_CREATIONS - Static variable in class io.github.eutro.wasm2j.core.ssa.Insn
-
Whether instruction creations should be tracked.
- TRAP - Static variable in class io.github.eutro.wasm2j.core.ops.CommonOps
-
Control: traps, (Java: throws an exception) with the given message, returns nothing
- trapWhen(IRBuilder, Insn, String) - Static method in class io.github.eutro.wasm2j.core.util.IRUtils
-
Emit code to trap with the given message if a given instruction jumps.
- TRY - Static variable in class io.github.eutro.wasm2j.core.ops.JavaOps
-
Control: introduce a try block, "jumps" to the first target in the case of an exception in its second block.
- type - Variable in class io.github.eutro.wasm2j.api.types.ExternType.Global
-
The value type of the global.
- type - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.CallType
- type - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- type - Variable in class io.github.eutro.wasm2j.embed.Export
-
The type of the export.
- type - Variable in class io.github.eutro.wasm2j.embed.Import
-
The type of the import.
- TYPE - Static variable in class io.github.eutro.wasm2j.core.ext.JavaExts
-
Attached to a
Var
, computed byInferTypes.Java
. - TYPE - Static variable in class io.github.eutro.wasm2j.core.ext.WasmExts
U
- U16_32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- U16_64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- U32_64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- U8_32 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- U8_64 - Enum constant in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
- UnaryOp(T) - Constructor for class io.github.eutro.wasm2j.core.ops.UnaryOpKey.UnaryOp
- UnaryOpKey<T> - Class in io.github.eutro.wasm2j.core.ops
- UnaryOpKey(String) - Constructor for class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- UnaryOpKey(String, Function<T, String>) - Constructor for class io.github.eutro.wasm2j.core.ops.UnaryOpKey
- UnaryOpKey.UnaryOp - Class in io.github.eutro.wasm2j.core.ops
- unboxed(IRBuilder, Var, Type, byte) - Static method in class io.github.eutro.wasm2j.core.conf.impl.BasicCallingConvention
-
Convert a Java reference into a WebAssembly value.
- UNIQUE_VAR_NAMES - Static variable in class io.github.eutro.wasm2j.core.ssa.Function
-
Whether variable name collisions should be computed.
- UNKNOWN - Enum constant in enum class io.github.eutro.wasm2j.api.bits.FormatDetector.Format
-
The format could not be detected.
- unreachable - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState.CtrlFrame
- unreachable() - Method in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- UPPER_CAMEL - Static variable in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
UpperCamelCase
- UPPER_CASE - Enum constant in enum class io.github.eutro.wasm2j.api.support.CaseStyle.Capitalisation
-
All letters upper case.
- UPPER_SNAKE - Static variable in interface io.github.eutro.wasm2j.api.support.CaseStyle
-
UPPER_SNAKE_CASE
- USED_AT - Static variable in class io.github.eutro.wasm2j.core.ext.CommonExts
-
Attached to a
Var
, computed byComputeUses
. - USES - Static variable in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Metadata that can be computed for functions.
- Utils - Class in io.github.eutro.wasm2j.embed.internal
-
Miscellaneous utilities.
- Utils() - Constructor for class io.github.eutro.wasm2j.embed.internal.Utils
V
- V128 - Enum constant in enum class io.github.eutro.wasm2j.api.types.ValType
-
A 128-bit vector, represented as a Java
ByteBuffer
. - validate() - Method in class io.github.eutro.wasm2j.embed.Module
-
Validate the module, throwing an exception if the module is invalid.
- validate(MetadataState.MetaKind...) - Method in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Mark the given metadata as valid.
- ValType - Enum Class in io.github.eutro.wasm2j.api.types
-
An enum that represents a WebAssembly type, and gives its canonical mapping to a Java class.
- value - Variable in class io.github.eutro.wasm2j.core.ops.WasmOps.WithMemArg
- value() - Element in annotation interface io.github.eutro.wasm2j.core.intrinsics.Intrinsic
-
Returns the first byte of the opcode.
- value() - Element in annotation interface io.github.eutro.wasm2j.core.ops.WasmOps.For
- value() - Element in annotation interface io.github.eutro.wasm2j.embed.Embedding
-
Returns the name of the function implemented.
- ValueGetter - Interface in io.github.eutro.wasm2j.core.util
-
A value that can be retrieved.
- ValueGetterSetter - Interface in io.github.eutro.wasm2j.core.util
-
A value that can be both retrieved and set.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.api.bits.FormatDetector.Format
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.api.support.CaseStyle.Capitalisation
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.api.support.NameMangler.IllegalSymbolPolicy
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.api.types.ValType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class io.github.eutro.wasm2j.api.bits.FormatDetector.Format
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.api.support.CaseStyle.Capitalisation
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.api.support.NameMangler.IllegalSymbolPolicy
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.api.types.ExternType.Kind
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.api.types.ValType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.core.ops.JavaOps.JumpType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.ExtType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.DerefType.LoadType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.core.ops.WasmOps.StoreType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.embed.Memory.LoadMode
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.eutro.wasm2j.embed.Memory.StoreMode
-
Returns an array containing the constants of this enum class, in the order they are declared.
- ValueSetter - Interface in io.github.eutro.wasm2j.core.util
-
A value that can be set.
- Var - Class in io.github.eutro.wasm2j.core.ssa
-
A variable, a virtual register.
- varsChanged() - Method in class io.github.eutro.wasm2j.core.ext.MetadataState
-
Invalidate everything that becomes invalid if the variables change.
- varVals - Variable in class io.github.eutro.wasm2j.core.passes.convert.WasmToWir.ConvertState
- VerifyIntegrity - Class in io.github.eutro.wasm2j.core.passes.meta
- VerifyIntegrity() - Constructor for class io.github.eutro.wasm2j.core.passes.meta.VerifyIntegrity
W
- WasmCompiler - Class in io.github.eutro.wasm2j.api
-
A compiler from WebAssembly to Java bytecode.
- WasmCompiler() - Constructor for class io.github.eutro.wasm2j.api.WasmCompiler
- WasmConvertPass - Class in io.github.eutro.wasm2j.embed.internal
-
Provides the
pass
to compile WebAssembly. - WasmConvertPass() - Constructor for class io.github.eutro.wasm2j.embed.internal.WasmConvertPass
- WasmExts - Class in io.github.eutro.wasm2j.core.ext
- WasmExts() - Constructor for class io.github.eutro.wasm2j.core.ext.WasmExts
- WasmOps - Class in io.github.eutro.wasm2j.core.ops
- WasmOps() - Constructor for class io.github.eutro.wasm2j.core.ops.WasmOps
- WasmOps.CallType - Class in io.github.eutro.wasm2j.core.ops
- WasmOps.DerefType - Class in io.github.eutro.wasm2j.core.ops
- WasmOps.DerefType.ExtType - Enum Class in io.github.eutro.wasm2j.core.ops
- WasmOps.DerefType.LoadType - Enum Class in io.github.eutro.wasm2j.core.ops
- WasmOps.For - Annotation Interface in io.github.eutro.wasm2j.core.ops
- WasmOps.OperatorType - Class in io.github.eutro.wasm2j.core.ops
- WasmOps.StoreType - Enum Class in io.github.eutro.wasm2j.core.ops
- WasmOps.WithMemArg<T> - Class in io.github.eutro.wasm2j.core.ops
- WasmToWir - Class in io.github.eutro.wasm2j.core.passes.convert
-
Converts WebAssembly code to WebAssembly IR.
- WasmToWir() - Constructor for class io.github.eutro.wasm2j.core.passes.convert.WasmToWir
- WasmToWir.Converter - Interface in io.github.eutro.wasm2j.core.passes.convert
- WasmToWir.ConvertState - Class in io.github.eutro.wasm2j.core.passes.convert
- WasmToWir.ConvertState.CtrlFrame - Class in io.github.eutro.wasm2j.core.passes.convert
- WebAssembly - Class in io.github.eutro.wasm2j.embed
-
A direct implementation of the WebAssembly embedding entry-points as defined in the embedding section of the specification.
- WebAssembly() - Constructor for class io.github.eutro.wasm2j.embed.WebAssembly
- wir - Variable in class io.github.eutro.wasm2j.api.events.WirPassesEvent
-
The WebAssembly IR.
- WirJavaConvention - Interface in io.github.eutro.wasm2j.core.conf.itf
-
Definitions for how certain WebAssembly concepts should be translated into Java.
- WirJavaConventionFactory - Interface in io.github.eutro.wasm2j.core.conf.itf
-
Creates instances of
WirJavaConvention
for compiling the contents of a WebAssembly-IRModule
into a Java-IRJClass
. - WirJavaConventionFactory.Builder - Class in io.github.eutro.wasm2j.core.conf.itf
-
A builder for a (configurable) default
WirJavaConventionFactory
. - WirPassesEvent - Class in io.github.eutro.wasm2j.api.events
-
An event fired just after the WebAssembly module is compiled to IR for the first time.
- WirPassesEvent(Module) - Constructor for class io.github.eutro.wasm2j.api.events.WirPassesEvent
-
Construct a new WirPassesEvent over the given IR.
- WirToJir - Class in io.github.eutro.wasm2j.core.passes.convert
-
Converts WebAssembly IR (possibly not in SSA form) into Java IR, according to a set of
conventions
. - WirToJir(WirJavaConventionFactory) - Constructor for class io.github.eutro.wasm2j.core.passes.convert.WirToJir
-
Construct an instance of this pass with the given conventions.
- WirToJir.WirToJirPerFunc - Class in io.github.eutro.wasm2j.core.passes.convert
- WirToJirPerFunc(WirJavaConvention, CallingConvention) - Constructor for class io.github.eutro.wasm2j.core.passes.convert.WirToJir.WirToJirPerFunc
- write(int, byte) - Method in interface io.github.eutro.wasm2j.embed.Memory
-
Write a byte to the given address.
Z
A B C D E F G H I J K L M N O P Q R S T U V W ZAll Classes and Interfaces|All Packages|Constant Field Values|Serialized Form