Пример #1
0
 def check_ext_target(self,t):
     if t.cst is None: return False
     if t.cst._is_ext:
         b = code.xfunc(t.cst)
         vtx = cfg.node(b)
         e = cfg.link(t.parent,vtx,data=t.econd)
         e = t.parent.c.add_edge(e)
         self.update_spool(e.v[1],t.parent)
         return True
     return False
Пример #2
0
 def check_ext_target(self,t):
     """check if the target is the address of an external function.
     If True, the :class:`code.xfunc` node is linked to the parent
     and the spool is updated with this node.
         
     Returns:
         `True` if target is external, `False` otherwise.
     """
     if t.cst is None: return False
     if t.cst._is_ext:
         b = code.xfunc(t.cst)
         vtx = cfg.node(b)
         e = cfg.link(t.parent,vtx,data=t.econd)
         e = t.parent.c.add_edge(e)
         self.update_spool(e.v[1],t.parent)
         self.check_func(e.v[1])
         return True
     return False