Package ghidra.pcode.emu.jit.alloc
Interface SubInLongHandler<ST extends Types.BPrim<?>,SJT extends JitType.SimpleJitType<ST,SJT>>
- Type Parameters:
ST- the JVM type of the sub variableSJT- the p-code type of the sub variable
- All Superinterfaces:
SubVarHandler<ST,,SJT, Types.TLong, JitType.LongJitType> VarHandler
- All Known Implementing Classes:
IntInLongHandler,LongInLongHandler
public interface SubInLongHandler<ST extends Types.BPrim<?>,SJT extends JitType.SimpleJitType<ST,SJT>>
extends SubVarHandler<ST,SJT,Types.TLong,JitType.LongJitType>
A handler for a p-code variable stored in part of a JVM
long.-
Method Summary
Modifier and TypeMethodDescriptiondefault <N extends Emitter.Next>
Emitter<Emitter.Ent<N, Types.TInt>> genLoadToBool(Emitter<N> em, JitCodeGenerator<?> gen) Emit bytecode to load the varnode's value, interpreted as a boolean, as an integer onto the JVM stack.default <FT extends Types.BPrim<?>,FJT extends JitType.SimpleJitType<FT, FJT>, N1 extends Emitter.Next, N0 extends Emitter.Ent<N1, FT>>
Emitter<N1> genStoreFromStack(Emitter<N0> em, JitCodeGenerator<?> gen, FJT type, Opnd.Ext ext, Scope scope) Emit bytecode to store a value into a variable from the JVM stack.Methods inherited from interface ghidra.pcode.emu.jit.alloc.SubVarHandler
assertShiftFits, bitShift, bitSize, byteShift, genLoadToArray, genLoadToOpnd, genStoreFromArray, genStoreFromOpnd, getConvToSub, intMask, local, longMask, typeMethods inherited from interface ghidra.pcode.emu.jit.alloc.VarHandler
genLoadLegToStack, genLoadToStack, name, subpiece, vn
-
Method Details
-
genLoadToBool
default <N extends Emitter.Next> Emitter<Emitter.Ent<N,Types.TInt>> genLoadToBool(Emitter<N> em, JitCodeGenerator<?> gen) Description copied from interface:VarHandlerEmit bytecode to load the varnode's value, interpreted as a boolean, as an integer onto the JVM stack.- Specified by:
genLoadToBoolin interfaceVarHandler- Type Parameters:
N- the incoming stack- Parameters:
em- the emitter typed with the incoming stackgen- the code generator- Returns:
- the emitter typed with the resulting stack, i.e., having the int boolean pushed onto it
-
genStoreFromStack
default <FT extends Types.BPrim<?>,FJT extends JitType.SimpleJitType<FT, Emitter<N1> genStoreFromStackFJT>, N1 extends Emitter.Next, N0 extends Emitter.Ent<N1, FT>> (Emitter<N0> em, JitCodeGenerator<?> gen, FJT type, Opnd.Ext ext, Scope scope) Description copied from interface:VarHandlerEmit bytecode to store a value into a variable from the JVM stack.- Specified by:
genStoreFromStackin interfaceVarHandler- Type Parameters:
FT- the JVM type of the value on the stackFJT- the p-code type of the value on the stackN1- the tail of the incoming stackN0- the incoming stack having the value to store on top- Parameters:
em- the emitter typed with the incoming stackgen- the code generatortype- the p-code type of the value on the stackext- the kind of extension to applyscope- a scope for generating temporary local storage- Returns:
- the emitter typed with the resulting stack, i.e., having popped the value
-