diff options
| author | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2018-02-08 17:02:35 +0100 |
|---|---|---|
| committer | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2018-02-09 10:55:39 +0100 |
| commit | eca476334f93f023e57048453eb9ec4ee4fab9d2 (patch) | |
| tree | 08ea36af5f8f7f27222631cdbf0b9f18aa3248cc /example | |
| parent | 47811fe5a56c8071ab5064e1f84ca64389941eec (diff) | |
| download | miasm-eca476334f93f023e57048453eb9ec4ee4fab9d2.tar.gz miasm-eca476334f93f023e57048453eb9ec4ee4fab9d2.zip | |
IRBlock: replace irs by assignblks
Diffstat (limited to 'example')
| -rw-r--r-- | example/expression/access_c.py | 8 | ||||
| -rw-r--r-- | example/expression/get_read_write.py | 2 | ||||
| -rw-r--r-- | example/ida/ctype_propagation.py | 2 | ||||
| -rw-r--r-- | example/ida/depgraph.py | 10 | ||||
| -rw-r--r-- | example/ida/graph_ir.py | 4 | ||||
| -rw-r--r-- | example/symbol_exec/depgraph.py | 2 |
6 files changed, 14 insertions, 14 deletions
diff --git a/example/expression/access_c.py b/example/expression/access_c.py index f285eb55..45f911ab 100644 --- a/example/expression/access_c.py +++ b/example/expression/access_c.py @@ -60,15 +60,15 @@ def find_call(ira): for irb in ira.blocks.values(): out = set() - if len(irb.irs) < 2: + if len(irb.assignblks) < 2: continue - assignblk = irb.irs[-2] + assignblk = irb.assignblks[-2] for src in assignblk.itervalues(): if not isinstance(src, ExprOp): continue if not src.op.startswith('call_func'): continue - out.add((irb, len(irb.irs) - 2)) + out.add((irb, len(irb.assignblks) - 2)) if len(out) != 1: continue irb, index = out.pop() @@ -98,7 +98,7 @@ def get_funcs_arg0(ctx, ira, lbl_head): element = ira.arch.regs.RSI for irb, index in find_call(ira): - instr = irb.irs[index].instr + instr = irb.assignblks[index].instr print 'Analysing references from:', hex(instr.offset), instr g_list = g_dep.get(irb.label, set([element]), index, set([lbl_head])) for dep in g_list: diff --git a/example/expression/get_read_write.py b/example/expression/get_read_write.py index f4dde4b5..a31105b2 100644 --- a/example/expression/get_read_write.py +++ b/example/expression/get_read_write.py @@ -18,7 +18,7 @@ ir_arch.add_instr(l) print '*' * 80 for lbl, b in ir_arch.blocks.items(): print b - for irs in b.irs: + for irs in b.assignblks: o_r, o_w = get_rw(irs) print 'read: ', [str(x) for x in o_r] print 'written:', [str(x) for x in o_w] diff --git a/example/ida/ctype_propagation.py b/example/ida/ctype_propagation.py index 8c64c6d2..88036bcb 100644 --- a/example/ida/ctype_propagation.py +++ b/example/ida/ctype_propagation.py @@ -114,7 +114,7 @@ class SymbExecCTypeFix(SymbExecCType): """ offset2cmt = {} - for index, assignblk in enumerate(irb.irs): + for index, assignblk in enumerate(irb.assignblks): if set(assignblk) == set([self.ir_arch.IRDst, self.ir_arch.pc]): # Don't display on jxx continue diff --git a/example/ida/depgraph.py b/example/ida/depgraph.py index 915f14bc..aee0697e 100644 --- a/example/ida/depgraph.py +++ b/example/ida/depgraph.py @@ -34,7 +34,7 @@ class depGraphSettingsForm(ida_kernwin.Form): cur_block = block assert cur_block is not None line_nb = None - for line_nb, assignblk in enumerate(cur_block.irs): + for line_nb, assignblk in enumerate(cur_block.assignblks): if assignblk.instr.offset == self.address: break assert line_nb is not None @@ -110,13 +110,13 @@ Method to use: elif mode == 1: return value + 1 else: - return len(self.ira.blocks[self.label].irs) + return len(self.ira.blocks[self.label].assignblks) @property def elements(self): value = self.cbReg.value if value in self.stk_args: - line = self.ira.blocks[self.label].irs[self.line_nb].instr + line = self.ira.blocks[self.label].assignblks[self.line_nb].instr arg_num = self.stk_args[value] stk_high = m2_expr.ExprInt(idc.GetSpd(line.offset), ir_arch.sp.size) stk_off = m2_expr.ExprInt(self.ira.sp.size/8 * arg_num, ir_arch.sp.size) @@ -174,7 +174,7 @@ def treat_element(): for node in graph.relevant_nodes: try: - offset = ir_arch.blocks[node.label].irs[node.line_nb].instr.offset + offset = ir_arch.blocks[node.label].assignblks[node.line_nb].instr.offset except IndexError: print "Unable to highlight %s" % node continue @@ -229,7 +229,7 @@ def launch_depgraph(): for irb in ir_arch.blocks.values(): irs = [] fix_stack = irb.label.offset is not None and settings.unalias_stack - for assignblk in irb.irs: + for assignblk in irb.assignblks: if fix_stack: stk_high = m2_expr.ExprInt(idc.GetSpd(assignblk.instr.offset), ir_arch.sp.size) fix_dct = {ir_arch.sp: mn.regs.regs_init[ir_arch.sp] + stk_high} diff --git a/example/ida/graph_ir.py b/example/ida/graph_ir.py index 8d9dea4f..ca4ad55c 100644 --- a/example/ida/graph_ir.py +++ b/example/ida/graph_ir.py @@ -40,7 +40,7 @@ def color_irblock(irblock, ir_arch): out = [] lbl = idaapi.COLSTR(str(irblock.label), idaapi.SCOLOR_INSN) out.append(lbl) - for assignblk in irblock.irs: + for assignblk in irblock.assignblks: for dst, src in sorted(assignblk.iteritems()): dst_f = expr2colorstr(ir_arch.arch.regs.all_regs_ids, dst) src_f = expr2colorstr(ir_arch.arch.regs.all_regs_ids, src) @@ -148,7 +148,7 @@ def build_graph(verbose=False, simplify=False): for irb in ir_arch.blocks.itervalues(): irs = [] - for assignblk in irb.irs: + for assignblk in irb.assignblks: new_assignblk = { expr_simp(dst): expr_simp(src) for dst, src in assignblk.iteritems() diff --git a/example/symbol_exec/depgraph.py b/example/symbol_exec/depgraph.py index c1d6174d..ae66fbaa 100644 --- a/example/symbol_exec/depgraph.py +++ b/example/symbol_exec/depgraph.py @@ -75,7 +75,7 @@ dg = DependencyGraph(ir_arch, implicit=args.implicit, target_addr = int(args.target_addr, 0) current_block = list(ir_arch.getby_offset(target_addr))[0] line_nb = 0 -for line_nb, assignblk in enumerate(current_block.irs): +for line_nb, assignblk in enumerate(current_block.assignblks): if assignblk.instr.offset == target_addr: break |