Loading...
Searching...
No Matches
BinaryNinja::LowLevelILOneOperandInstruction Struct Reference

Public Member Functions

LowLevelILInstruction GetSourceExpr () const
Public Member Functions inherited from BinaryNinja::LowLevelILInstructionBase
LowLevelILOperandList GetOperands () const
uint64_t GetRawOperandAsInteger (size_t operand) const
uint32_t GetRawOperandAsRegister (size_t operand) const
size_t GetRawOperandAsIndex (size_t operand) const
BNLowLevelILFlagCondition GetRawOperandAsFlagCondition (size_t operand) const
LowLevelILInstruction GetRawOperandAsExpr (size_t operand) const
SSARegister GetRawOperandAsSSARegister (size_t operand) const
SSARegisterStack GetRawOperandAsSSARegisterStack (size_t operand) const
SSARegisterStack GetRawOperandAsPartialSSARegisterStackSource (size_t operand) const
SSAFlag GetRawOperandAsSSAFlag (size_t operand) const
LowLevelILIndexList GetRawOperandAsIndexList (size_t operand) const
LowLevelILIndexMap GetRawOperandAsIndexMap (size_t operand) const
LowLevelILInstructionList GetRawOperandAsExprList (size_t operand) const
LowLevelILRegisterOrFlagList GetRawOperandAsRegisterOrFlagList (size_t operand) const
LowLevelILSSARegisterList GetRawOperandAsSSARegisterList (size_t operand) const
LowLevelILSSARegisterStackList GetRawOperandAsSSARegisterStackList (size_t operand) const
LowLevelILSSAFlagList GetRawOperandAsSSAFlagList (size_t operand) const
LowLevelILSSARegisterOrFlagList GetRawOperandAsSSARegisterOrFlagList (size_t operand) const
std::map< uint32_t, int32_t > GetRawOperandAsRegisterStackAdjustments (size_t operand) const
PossibleValueSet GetRawOperandAsPossibleValueSet (size_t operand) const
void UpdateRawOperand (size_t operandIndex, ExprId value)
void UpdateRawOperandAsSSARegisterList (size_t operandIndex, const std::vector< SSARegister > &regs)
void UpdateRawOperandAsSSARegisterOrFlagList (size_t operandIndex, const std::vector< SSARegisterOrFlag > &outputs)
RegisterValue GetValue () const
PossibleValueSet GetPossibleValues (const std::set< BNDataFlowQueryOption > &options=std::set< BNDataFlowQueryOption >()) const
RegisterValue GetRegisterValue (uint32_t reg)
RegisterValue GetRegisterValueAfter (uint32_t reg)
PossibleValueSet GetPossibleRegisterValues (uint32_t reg)
PossibleValueSet GetPossibleRegisterValuesAfter (uint32_t reg)
RegisterValue GetFlagValue (uint32_t flag)
RegisterValue GetFlagValueAfter (uint32_t flag)
PossibleValueSet GetPossibleFlagValues (uint32_t flag)
PossibleValueSet GetPossibleFlagValuesAfter (uint32_t flag)
RegisterValue GetStackContents (int32_t offset, size_t len)
RegisterValue GetStackContentsAfter (int32_t offset, size_t len)
PossibleValueSet GetPossibleStackContents (int32_t offset, size_t len)
PossibleValueSet GetPossibleStackContentsAfter (int32_t offset, size_t len)
size_t GetSSAInstructionIndex () const
size_t GetNonSSAInstructionIndex () const
size_t GetSSAExprIndex () const
size_t GetNonSSAExprIndex () const
LowLevelILInstruction GetSSAForm () const
LowLevelILInstruction GetNonSSAForm () const
size_t GetMediumLevelILInstructionIndex () const
size_t GetMediumLevelILExprIndex () const
size_t GetMappedMediumLevelILInstructionIndex () const
size_t GetMappedMediumLevelILExprIndex () const
bool HasMediumLevelIL () const
bool HasMappedMediumLevelIL () const
MediumLevelILInstruction GetMediumLevelIL () const
MediumLevelILInstruction GetMappedMediumLevelIL () const
char * Dump () const
void Replace (ExprId expr)
void SetAttributes (uint32_t attributes)
void SetAttribute (BNILInstructionAttribute attribute, bool state=true)
void ClearAttribute (BNILInstructionAttribute attribute)
template<BNLowLevelILOperation N>
LowLevelILInstructionAccessor< N > & As ()
LowLevelILOneOperandInstructionAsOneOperand ()
LowLevelILTwoOperandInstructionAsTwoOperand ()
LowLevelILTwoOperandWithCarryInstructionAsTwoOperandWithCarry ()
template<BNLowLevelILOperation N>
const LowLevelILInstructionAccessor< N > & As () const
const LowLevelILConstantInstructionAsConstant () const
const LowLevelILOneOperandInstructionAsOneOperand () const
const LowLevelILTwoOperandInstructionAsTwoOperand () const
const LowLevelILTwoOperandWithCarryInstructionAsTwoOperandWithCarry () const

Additional Inherited Members

Public Attributes inherited from BinaryNinja::LowLevelILInstructionBase
Ref< LowLevelILFunctionfunction
size_t exprIndex
size_t instructionIndex
Public Attributes inherited from BNLowLevelILInstruction
BNLowLevelILOperation operation
uint32_t attributes
size_t size
uint32_t flags
uint32_t sourceOperand
uint64_t operands [4]
uint64_t address
Static Public Attributes inherited from BinaryNinja::LowLevelILInstructionBase
static std::unordered_map< LowLevelILOperandUsage, LowLevelILOperandTypeoperandTypeForUsage
static std::unordered_map< BNLowLevelILOperation, std::vector< LowLevelILOperandUsage > > operationOperandUsage
static std::unordered_map< BNLowLevelILOperation, std::unordered_map< LowLevelILOperandUsage, size_t > > operationOperandIndex = GetOperandIndexForOperandUsages()

Member Function Documentation

◆ GetSourceExpr()

LowLevelILInstruction BinaryNinja::LowLevelILOneOperandInstruction::GetSourceExpr ( ) const
inline