Package ghidra.pcode.emu.jit.gen
Interface InstanceFieldReq<T extends Types.BNonVoid>
- Type Parameters:
T- the JVM type of the field
- All Superinterfaces:
FieldReq<T>
- All Known Implementing Classes:
FieldForArrDirect,FieldForExitSlot,FieldForSpaceIndirect,FieldForUserop
An instance field request initialized in the class constructor
-
Method Summary
Modifier and TypeMethodDescription<THIS extends JitCompiledPassage,N extends Emitter.Next>
Emitter<N> genInit(Emitter<N> em, Local<Types.TRef<THIS>> localThis, JitCodeGenerator<THIS> gen, org.objectweb.asm.ClassVisitor cv) Emit the field declaration and its initialization bytecode<THIS extends JitCompiledPassage,N extends Emitter.Next>
Emitter<Emitter.Ent<N, T>> genLoad(Emitter<N> em, Local<Types.TRef<THIS>> localThis, JitCodeGenerator<THIS> gen) Emit code to load the field onto the JVM stack
-
Method Details
-
genInit
<THIS extends JitCompiledPassage,N extends Emitter.Next> Emitter<N> genInit(Emitter<N> em, Local<Types.TRef<THIS>> localThis, JitCodeGenerator<THIS> gen, org.objectweb.asm.ClassVisitor cv) Emit the field declaration and its initialization bytecodeThe declaration is emitted into the class definition, and the initialization code is emitted into the class constructor.
- Type Parameters:
THIS- the type of the compiled passageN- the incoming stack- Parameters:
em- the emitter typed with the incoming stacklocalThis- a handle to the local holding thethisreferencegen- the code generatorcv- the visitor for the class definition- Returns:
- the emitter typed with the incoming stack
-
genLoad
<THIS extends JitCompiledPassage,N extends Emitter.Next> Emitter<Emitter.Ent<N,T>> genLoad(Emitter<N> em, Local<Types.TRef<THIS>> localThis, JitCodeGenerator<THIS> gen) Emit code to load the field onto the JVM stack- Type Parameters:
THIS- the type of the compiled passageN- the incoming stack- Parameters:
em- the emitter typed with the incoming stacklocalThis- a handle to the local holding thethisreferencegen- the code generator- Returns:
- the emitter typed with the resulting stack, i.e., having pushed the value
-