[PATCH] LoopVectorizer: Don't attempt to vectorize extractelement instructions

Hal Finkel hfinkel at anl.gov
Fri Oct 25 14:51:54 PDT 2013


Renato,

include/llvm/Analysis/Verifier.h has the current interface to the verifier. It can be run, currently, on a Function or Module.

Nadav,

Interestingly enough, if you remove -verify from the RUN line in this test case, and replace it with -instcombine, then (even in a Debug+Asserts build), before the fix, it would crash in instcombine. And now I'm not at all sure why because, as you point out, the vectorizer run the function verifier after vectorizing.

 -Hal

----- Original Message -----
> 
> 
> The loop and SLP vectorizers run the verifier after vectorization.
> Sent from my iPhone
> 
> On Oct 25, 2013, at 14:36, Renato Golin < renato.golin at linaro.org >
> wrote:
> 
> 
> 
> 
> 
> On 25 October 2013 21:01, Hal Finkel < hfinkel at anl.gov > wrote:
> 
> 
> 
> 
> where the second extractelement is illegal because its first operand
> is not a vector. Later passes (or the verifier) would then crash.
> 
> 
> 
> On a side note, would it be possible (and desirable) to pass the
> verifier on the vectorized BBs before swapping the real code with
> it?
> 
> 
> cheers,
> --renato

-- 
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory



More information about the llvm-commits mailing list