diff options
| author | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2018-02-09 10:16:58 +0100 |
|---|---|---|
| committer | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2018-02-09 10:55:39 +0100 |
| commit | c63ae8e10af699f2cd7bacd14a39112f28cf71ab (patch) | |
| tree | 32cb299fb122719f3679d38a5821d90a853cb179 /example | |
| parent | 4b257d2d82c6323c6bc521017d0649b8cc7b3747 (diff) | |
| download | miasm-c63ae8e10af699f2cd7bacd14a39112f28cf71ab.tar.gz miasm-c63ae8e10af699f2cd7bacd14a39112f28cf71ab.zip | |
IRBlock: getitem/len on assignblks
Diffstat (limited to 'example')
| -rw-r--r-- | example/expression/access_c.py | 8 | ||||
| -rw-r--r-- | example/ida/depgraph.py | 6 |
2 files changed, 7 insertions, 7 deletions
diff --git a/example/expression/access_c.py b/example/expression/access_c.py index 45f911ab..de158730 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.assignblks) < 2: + if len(irb) < 2: continue - assignblk = irb.assignblks[-2] + assignblk = irb[-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.assignblks) - 2)) + out.add((irb, len(irb) - 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.assignblks[index].instr + instr = irb[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/ida/depgraph.py b/example/ida/depgraph.py index a946706c..5342313a 100644 --- a/example/ida/depgraph.py +++ b/example/ida/depgraph.py @@ -110,13 +110,13 @@ Method to use: elif mode == 1: return value + 1 else: - return len(self.ira.blocks[self.label].assignblks) + return len(self.ira.blocks[self.label]) @property def elements(self): value = self.cbReg.value if value in self.stk_args: - line = self.ira.blocks[self.label].assignblks[self.line_nb].instr + line = self.ira.blocks[self.label][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].assignblks[node.line_nb].instr.offset + offset = ir_arch.blocks[node.label][node.line_nb].instr.offset except IndexError: print "Unable to highlight %s" % node continue |