[polly] r252726 - ScopDetection: Tighten the check for always executed 'error blocks'

Tobias Grosser via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 11 12:42:00 PST 2015


On 11/11/2015 06:31 PM, Johannes Doerfert wrote:
> We should not go for dominance at all but for post-dominance instead and
> use it to compute control conditions (see below). Hence, if the
> (immediate) control condition of a error block is a conditional we should
> consider it to be an error block, otherwise not.
>
> Below:
> - copied from https://www.cs.utexas.edu/~pingali/CS380C/2013/lectures/Dominators.pdf
>
> Control dependence: given a CFG G, a node w is control-dependent on an edge (u -> v) if
>    – w postdominates v
>    – w does not strictly postdominate u

Right. As Chandler said, making use of post-dominance makes sense at a 
couple of different places. However, we currently do not yet preserve 
post-dominance in polly. We should probably add this (and also fix 
LLVM's post-dominance pass to correctly model unreachables), but this 
might take a little. To get our bots green quickly, without disabling 
all the error-block features, I decided to go for a patch with minimal 
impact. To my understanding the patch should be conservatively correct.

Best,
Tobias


More information about the llvm-commits mailing list