[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