miasm
Reverse engineering framework
miasm.arch.msp430.ira.ir_a_msp430_base Class Reference
Inheritance diagram for miasm.arch.msp430.ira.ir_a_msp430_base:
Collaboration diagram for miasm.arch.msp430.ira.ir_a_msp430_base:

Public Member Functions

def __init__ (self, loc_db)
 
def call_effects (self, addr, instr)
 
- Public Member Functions inherited from miasm.arch.msp430.sem.ir_msp430
def mod_pc (self, instr, instr_ir, extra_ir)
 
def get_ir (self, instr)
 
def mod_sr (self, instr, instr_ir, extra_ir)
 
- Public Member Functions inherited from miasm.ir.ir.IntermediateRepresentation
def __init__ (self, arch, attrib, loc_db)
 
def new_ircfg (self, *args, **kwargs)
 
def new_ircfg_from_asmcfg (self, asmcfg, *args, **kwargs)
 
def instr2ir (self, instr)
 
def add_instr_to_ircfg (self, instr, ircfg, loc_key=None, gen_pc_updt=False)
 
def gen_pc_update (self, assignments, instr)
 
def add_asmblock_to_ircfg (self, block, ircfg, gen_pc_updt=False)
 
def add_block (self, block, gen_pc_updt=False)
 
def add_bloc (self, block, gen_pc_updt=False)
 
def get_next_loc_key (self, instr)
 
def get_loc_key_for_instr (self, instr)
 
def gen_loc_key_and_expr (self, size)
 
def expr_fix_regs_for_mode (self, expr, *args, **kwargs)
 
def expraff_fix_regs_for_mode (self, expr, *args, **kwargs)
 
def irbloc_fix_regs_for_mode (self, irblock, *args, **kwargs)
 
def is_pc_written (self, block)
 
def set_empty_dst_to_next (self, block, ir_blocks)
 
def post_add_asmblock_to_ircfg (self, block, ircfg, ir_blocks)
 
- Public Member Functions inherited from miasm.ir.analysis.ira
def add_instr_to_current_state (self, instr, block, assignments, ir_blocks_all, gen_pc_updt)
 
def sizeof_char (self)
 
def sizeof_short (self)
 
def sizeof_int (self)
 
def sizeof_long (self)
 
def sizeof_pointer (self)
 

Public Attributes

 ret_reg
 
- Public Attributes inherited from miasm.arch.msp430.sem.ir_msp430
 pc
 
 sp
 
 IRDst
 
 addrsize
 
- Public Attributes inherited from miasm.ir.ir.IntermediateRepresentation
 pc
 
 sp
 
 arch
 
 attrib
 
 loc_db
 
 IRDst
 

Additional Inherited Members

- Static Public Attributes inherited from miasm.ir.analysis.ira
 ret_reg = None
 

Constructor & Destructor Documentation

◆ __init__()

def miasm.arch.msp430.ira.ir_a_msp430_base.__init__ (   self,
  loc_db 
)

Member Function Documentation

◆ call_effects()

def miasm.arch.msp430.ira.ir_a_msp430_base.call_effects (   self,
  addr,
  instr 
)
Default modelisation of a function call to @addr. This may be used to:

* insert dependencies to arguments (stack base, registers, ...)
* add some side effects (stack clean, return value, ...)

Return a couple:
* list of assignments to add to the current irblock
* list of additional irblocks

@addr: (Expr) address of the called function
@instr: native instruction which is responsible of the call

Reimplemented from miasm.ir.analysis.ira.

Here is the caller graph for this function:

Member Data Documentation

◆ ret_reg

miasm.arch.msp430.ira.ir_a_msp430_base.ret_reg

The documentation for this class was generated from the following file: