Package ghidra.pcode.exec
Class PcodeExpression.ValueCapturingPcodeUseropLibrary<T>
java.lang.Object
ghidra.pcode.exec.AnnotatedPcodeUseropLibrary<T>
ghidra.pcode.exec.PcodeExpression.ValueCapturingPcodeUseropLibrary<T>
- Type Parameters:
T
- no type in particular, except to match the executor
- All Implemented Interfaces:
PcodeUseropLibrary<T>
- Enclosing class:
PcodeExpression
protected static class PcodeExpression.ValueCapturingPcodeUseropLibrary<T>
extends AnnotatedPcodeUseropLibrary<T>
A clever means of capturing the result of the expression.
- Implementation Notes:
- The compiled source is actually
___result(<expression>);
which allows us to capture the value (and size) of arbitrary expressions. Assigning the value to a temp variable instead of a userop does not quite suffice, since it requires a fixed size, which cannot be known ahead of time.
-
Nested Class Summary
Nested classes/interfaces inherited from class ghidra.pcode.exec.AnnotatedPcodeUseropLibrary
AnnotatedPcodeUseropLibrary.AnnotatedPcodeUseropDefinition<T>, AnnotatedPcodeUseropLibrary.FixedArgsAnnotatedPcodeUseropDefinition<T>, AnnotatedPcodeUseropLibrary.OpExecutor, AnnotatedPcodeUseropLibrary.OpLibrary, AnnotatedPcodeUseropLibrary.OpOutput, AnnotatedPcodeUseropLibrary.OpState, AnnotatedPcodeUseropLibrary.PcodeUserop, AnnotatedPcodeUseropLibrary.VariadicAnnotatedPcodeUseropDefinition<T>
Nested classes/interfaces inherited from interface ghidra.pcode.exec.PcodeUseropLibrary
PcodeUseropLibrary.EmptyPcodeUseropLibrary, PcodeUseropLibrary.PcodeUseropDefinition<T>
-
Field Summary
Fields inherited from class ghidra.pcode.exec.AnnotatedPcodeUseropLibrary
ops
Fields inherited from interface ghidra.pcode.exec.PcodeUseropLibrary
NIL
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class ghidra.pcode.exec.AnnotatedPcodeUseropLibrary
getMethodLookup, getOperandType, getUserops
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface ghidra.pcode.exec.PcodeUseropLibrary
compose, getSymbols
-
Constructor Details
-
ValueCapturingPcodeUseropLibrary
protected ValueCapturingPcodeUseropLibrary()
-
-
Method Details
-
___result
-