mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-04 02:09:44 +02:00
Added ternary flag to PcodeOp
This commit is contained in:
parent
a4e360a3e5
commit
eccf8e8595
3 changed files with 32 additions and 32 deletions
|
@ -84,7 +84,7 @@ public:
|
|||
unary = 0x8000, ///< Evaluate as unary expression
|
||||
binary = 0x10000, ///< Evaluate as binary expression
|
||||
special = 0x20000, ///< Cannot be evaluated (without special processing)
|
||||
floatingpoint = 0x40000, ///< A floating point operation
|
||||
ternary = 0x40000, ///< Evaluate as ternary operator (or higher)
|
||||
splittingbranch = 0x80000, ///< Dead edge cannot be removed as it splits
|
||||
nonprinting = 0x100000, ///< Op should not be directly printed as source
|
||||
halt = 0x200000, ///< instruction causes processor or process to halt
|
||||
|
@ -158,7 +158,7 @@ public:
|
|||
int4 getSlot(const Varnode *vn) const { int4 i,n; n=inrefs.size(); for(i=0;i<n;++i) if (inrefs[i]==vn) break; return i; }
|
||||
int4 getRepeatSlot(const Varnode *vn,int4 firstSlot,list<PcodeOp *>::const_iterator iter) const;
|
||||
/// \brief Get the evaluation type of this op
|
||||
uint4 getEvalType(void) const { return (flags&(PcodeOp::unary|PcodeOp::binary|PcodeOp::special)); }
|
||||
uint4 getEvalType(void) const { return (flags&(PcodeOp::unary|PcodeOp::binary|PcodeOp::special|PcodeOp::ternary)); }
|
||||
/// \brief Get type which indicates unusual halt in control-flow
|
||||
uint4 getHaltType(void) const { return (flags&(PcodeOp::halt|PcodeOp::badinstruction|PcodeOp::unimplemented|
|
||||
PcodeOp::noreturn|PcodeOp::missing)); }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue