From 8040830ef060f98801b797c58caba2848e36937c Mon Sep 17 00:00:00 2001 From: Brian Potchik Date: Mon, 7 Feb 2022 13:40:03 -0500 Subject: Expose HLIL GenerateSSAForm via API and add python wrapper. --- python/highlevelil.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'python') diff --git a/python/highlevelil.py b/python/highlevelil.py index 1aafd316..cb0a0980 100644 --- a/python/highlevelil.py +++ b/python/highlevelil.py @@ -2372,6 +2372,20 @@ class HighLevelILFunction: """ core.BNFinalizeHighLevelILFunction(self.handle) + def generate_ssa_form(self, variables: Optional[List["variable.Variable"]] = None) -> None: + """ + ``generate_ssa_form`` generate SSA form given the current HLIL + + :param list(Variable) variables: optional list of aliased variables + :rtype: None + """ + if variables is None: + variables = [] + variable_list = (core.BNVariable * len(variables))() + for i in range(len(variables)): + variable_list[i] = variables[i].to_BNVariable() + core.BNGenerateHighLevelILSSAForm(self.handle, variable_list, len(variable_list)) + def create_graph(self, settings: 'function.DisassemblySettings' = None) -> 'flowgraph.CoreFlowGraph': if settings is not None: settings_obj = settings.handle -- cgit v1.3.1