Class V128SplatInstruction<TLane, TValue, TValueType>
Base class for vector instructions which fill all lanes with a scalar value.
Assembly: WaaS.Core.dll
View Source
Declaration
public abstract class V128SplatInstruction<TLane, TValue, TValueType> : Instruction where TLane : unmanaged where TValue : unmanaged where TValueType : struct, IValueType<TValue>
Inheritance: System.Object -> WaaS.Models.Instruction
Derived:
WaaS.Models.SplatF32x4, WaaS.Models.SplatF64x2, WaaS.Models.SplatI16x8, WaaS.Models.SplatI32x4, WaaS.Models.SplatI64x2, WaaS.Models.SplatI8x16
Methods
Execute(WasmStackFrame)
Executes the instruction.
View Source
Declaration
public override void Execute(WasmStackFrame current)
Parameters
| Type | Name |
|---|---|
| WaaS.Runtime.WasmStackFrame | current |
Convert(TValue)
View Source
Declaration
protected abstract TLane Convert(TValue value)
Returns
<TLane>
Parameters
| Type | Name |
|---|---|
<TValue> | value |
PreValidateStackState(in ValidationContext)
Get the number of values to pop and push from the stack to validate stack depth.
View Source
Declaration
public override (uint popCount, uint pushCount) PreValidateStackState(in ValidationContext context)
Returns
System.ValueTuple<System.UInt32,System.UInt32>
Parameters
| Type | Name |
|---|---|
| WaaS.Models.ValidationContext | context |
ValidateStackState(in ValidationContext, ref ValidationBlockStackState)
Simulates stack operations to validate the stack state.
View Source
Declaration
public override void ValidateStackState(in ValidationContext context, ref ValidationBlockStackState stackState)
Parameters
| Type | Name |
|---|---|
| WaaS.Models.ValidationContext | context |
| WaaS.Models.ValidationBlockStackState | stackState |