[llvm-commits] [llvm] r149468 - in /llvm/trunk: docs/ include/llvm-c/ include/llvm-c/Transforms/ include/llvm/ include/llvm/Transforms/ include/llvm/Transforms/IPO/ lib/Transforms/ lib/Transforms/IPO/ lib/Transforms/Vectorize/ test/Transforms/BBVectorize/ tools/bugpoint/ tools/llvm-ld/ tools/lto/ tools/opt/
Duncan Sands
baldrick at free.fr
Wed Feb 1 00:35:52 PST 2012
Hi Hal,
>>> + if (Vectorize) {
>>> + MPM.add(createBBVectorizePass());
>>> + MPM.add(createInstructionCombiningPass());
>>> + if (OptLevel> 1)
>>> + MPM.add(createGVNPass()); // Remove redundancies
>>
>> Whooooaa... GVN is *really* expensive, I find it hard to believe that
>> you want to run it twice even with vectorization on. Are you sure? What
>> is this doing that instcombine isn't?
>
> As I recall, this actually makes a big difference in the resulting code
> quality. I'll revisit this and make some more specific comments.
there is also the EarlyCSE pass, though of course it does much less than GVN.
Ciao, Duncan.
More information about the llvm-commits
mailing list