On 12/17/2015 10:07 PM, Segher Boessenkool wrote:
It turns out v4 wasn't quite complete anyway; so here "v5".
If a candidate PRE cannot get the prologue because a block BB is
reachable from it, but PRE does not dominate BB, we try again with the
dominators of PRE. That "try again" needs to again consider BB though,
we aren't done with it.
This fixes this problem. Tested on the 68909 testcase, and bootstrapped
and regression checked on powerpc64-linux. Is this okay for trunk?
This code is getting really quite confusing, and at the least I think we
need more documentation of what exactly vec is supposed to contain at
the entry to the inner while loop here.
I'm also beginning to think we should disable this part of the code for
gcc-6.
Bernd