Actually, let's not split phis on entry just yet; because we split vregs one at
authorDavid Given <dg@cowlark.com>
Thu, 15 Dec 2016 23:33:50 +0000 (00:33 +0100)
committerDavid Given <dg@cowlark.com>
Thu, 15 Dec 2016 23:33:50 +0000 (00:33 +0100)
a time, splitting several in a row just causes half of them to interfere with
the other half, which doesn't really help.

mach/proto/mcg/pass_splitliveranges.c

index b64ad55..a37ca6d 100644 (file)
@@ -94,12 +94,6 @@ void pass_split_live_ranges(void)
     {
         current_bb = dominance.preorder.item[i];
 
-        for (j=0; j<current_bb->phis.count; j++)
-        {
-            struct vreg* vreg = current_bb->phis.item[j].left;
-            insert_move_after(0, vreg);
-        }
-
         for (j=0; j<current_bb->hops.count; j++)
         {
             struct hop* hop = current_bb->hops.item[j];