Interface AccessGen<JT extends JitType>
- Type Parameters:
JT- the JIT type of the operand
- All Known Subinterfaces:
ExportsLegAccessGen, MpAccessGen, SimpleAccessGen<T,JT>
- All Known Implementing Classes:
DoubleAccessGen, FloatAccessGen, IntAccessGen, LongAccessGen, MpIntAccessGen
public interface AccessGen<JT extends JitType>
-
Method Summary
Static MethodsModifier and TypeMethodDescriptionstatic <THIS extends JitCompiledPassage, N extends Emitter.Next>
Emitter<Emitter.Ent<N, Types.TInt>> genReadToBool(Emitter<N> em, Local<Types.TRef<THIS>> localThis, JitCodeGenerator<THIS> gen, Varnode vn) Emit bytecode to read the given varnode onto the stack as a p-code bool (JVM int)Lookup the generator for accessing variables for the given type and byte orderstatic MpIntAccessGenLookup the generator for accessing variables of multi-precision integer type and the given byte orderstatic <T extends Types.BPrim<?>, JT extends JitType.SimpleJitType<T,JT>>
SimpleAccessGen<T, JT> lookupSimple(Endian endian, JT type) Lookup the generator for accessing variables of simple types and the given byte order
-
Method Details
-
lookup
-
lookupSimple
static <T extends Types.BPrim<?>, JT extends JitType.SimpleJitType<T,JT>> SimpleAccessGen<T,JT> lookupSimple(Endian endian, JT type) Lookup the generator for accessing variables of simple types and the given byte order- Type Parameters:
T- the JVM type of the variableJT- the p-code type of the variable- Parameters:
endian- the byte ordertype- the p-code type of the variable- Returns:
- the access generator
-
lookupMp
Lookup the generator for accessing variables of multi-precision integer type and the given byte order- Parameters:
endian- the byte order- Returns:
- the access generator
-
genReadToBool
static <THIS extends JitCompiledPassage, N extends Emitter.Next> Emitter<Emitter.Ent<N, Types.TInt>> genReadToBool(Emitter<N> em, Local<Types.TRef<THIS>> localThis, JitCodeGenerator<THIS> gen, Varnode vn) Emit bytecode to read the given varnode onto the stack as a p-code bool (JVM int)- Type Parameters:
THIS- the type of the generated passageN- the incoming stack- Parameters:
em- the emitter typed with the incoming stacklocalThis- a handle to the local holding thethisreferencegen- the code generatorvn- the varnode- Returns:
- the emitter typed with the resulting stack, i.e., having pushed the value
-