Modify the tree builder to use a fixed-size binding environment rather
than one that is potentially proportional to the length of the input
BB.  This changes its complexity from quadratic to linear (in the
length of the BB) and gives a noticable increase in the overall speed
of vex.  The tradeoff is that it can no longer guarantee to build
maximal trees, but in practice in only rarely fails to do so (about 1
in 100 bbs) and so the resulting degradation in code quality is
completely insignificant (unmeasurable).



git-svn-id: svn://svn.valgrind.org/vex/trunk@1474 8f6e269a-dfd6-0310-a8e1-e2731360e62c
diff --git a/priv/main/vex_main.c b/priv/main/vex_main.c
index 26cdcc2..7d453ad 100644
--- a/priv/main/vex_main.c
+++ b/priv/main/vex_main.c
@@ -520,9 +520,9 @@
       vex_printf("\n");
    }
 
-   /* Turn it into virtual-registerised code. */
-   do_deadcode_BB( irbb );
-   do_treebuild_BB( irbb );
+   /* Turn it into virtual-registerised code.  Build trees -- this
+      also throws away any dead bindings. */
+   ado_treebuild_BB( irbb );
 
    vexAllocSanityCheck();