[llvm-commits] [llvm] r166423 - in /llvm/trunk: lib/Transforms/Vectorize/BBVectorize.cpp test/Transforms/BBVectorize/simple-ldstr.ll

Duncan Sands baldrick at free.fr
Tue Oct 23 00:28:57 PDT 2012


Hi Hal,

> BBVectorize should ignore unreachable blocks.
>
> Unreachable blocks can have invalid instructions. For example,
> jump threading can produce self-referential instructions in
> unreachable blocks. Also, we should not be spending time
> optimizing unreachable code. Fixes PR14133.

it seems a pity to require the domtree just for this, and it seems somehow
wrong for a per-basic-block pass to be looking at the overall geometry of
the function.  Is it feasible to instead notice these kinds of circular
self-uses (which may involve several instructions) and bail out when you
see one?

Ciao, Duncan.




More information about the llvm-commits mailing list