mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-04 10:19:23 +02:00
GP-4871 Don't ignore signed to unsigned integer casts for
FLOAT_INT2FLOAT
This commit is contained in:
parent
a4d97ff872
commit
e5969a613c
16 changed files with 408 additions and 16 deletions
|
@ -70,7 +70,8 @@ class SubvariableFlow {
|
|||
compare_patch, ///< Turn compare op inputs into logical values
|
||||
parameter_patch, ///< Convert a CALL/CALLIND/RETURN/BRANCHIND parameter into logical value
|
||||
extension_patch, ///< Convert op into something that copies/extends logical value, adding zero bits
|
||||
push_patch ///< Convert an operator output to the logical value
|
||||
push_patch, ///< Convert an operator output to the logical value
|
||||
int2float_patch ///< Zero extend logical value into FLOAT_INT2FLOAT operator
|
||||
};
|
||||
patchtype type; ///< The type of \b this patch
|
||||
PcodeOp *patchOp; ///< Op being affected
|
||||
|
@ -101,6 +102,7 @@ class SubvariableFlow {
|
|||
bool tryReturnPull(PcodeOp *op,ReplaceVarnode *rvn,int4 slot);
|
||||
bool tryCallReturnPush(PcodeOp *op,ReplaceVarnode *rvn);
|
||||
bool trySwitchPull(PcodeOp *op,ReplaceVarnode *rvn);
|
||||
bool tryInt2FloatPull(PcodeOp *op,ReplaceVarnode *rvn);
|
||||
bool traceForward(ReplaceVarnode *rvn); ///< Trace the logical data-flow forward for the given subgraph variable
|
||||
bool traceBackward(ReplaceVarnode *rvn); ///< Trace the logical data-flow backward for the given subgraph variable
|
||||
bool traceForwardSext(ReplaceVarnode *rvn); ///< Trace logical data-flow forward assuming sign-extensions
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue