]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Add FlowAnalyzer.analyze_body to simplify code
authorJürg Billeter <j@bitron.ch>
Wed, 23 Dec 2009 19:29:13 +0000 (20:29 +0100)
committerJürg Billeter <j@bitron.ch>
Wed, 23 Dec 2009 19:29:13 +0000 (20:29 +0100)
vala/valaflowanalyzer.vala

index 364a2cdfa9fb51a45cd021720091a0bf04176e24..6e1d3b7eedc7a846ef610932ddcf29fad410df7a 100644 (file)
@@ -169,10 +169,14 @@ public class Vala.FlowAnalyzer : CodeVisitor {
                        current_block.connect (m.exit_block);
                }
 
-               build_dominator_tree (m.entry_block);
-               build_dominator_frontier (m.entry_block);
-               insert_phi_functions (m.entry_block);
-               check_variables (m.entry_block);
+               analyze_body (m.entry_block);
+       }
+
+       void analyze_body (BasicBlock entry_block) {
+               build_dominator_tree (entry_block);
+               build_dominator_frontier (entry_block);
+               insert_phi_functions (entry_block);
+               check_variables (entry_block);
        }
 
        List<BasicBlock> get_depth_first_list (BasicBlock entry_block) {
@@ -508,10 +512,7 @@ public class Vala.FlowAnalyzer : CodeVisitor {
                        current_block.connect (acc.exit_block);
                }
 
-               build_dominator_tree (acc.entry_block);
-               build_dominator_frontier (acc.entry_block);
-               insert_phi_functions (acc.entry_block);
-               check_variables (acc.entry_block);
+               analyze_body (acc.entry_block);
        }
 
        public override void visit_block (Block b) {