[llvm-commits] [llvm] r158392 - in /llvm/trunk: lib/Transforms/Utils/SimplifyCFG.cpp test/Transforms/SimplifyCFG/branch-fold.ll

Nuno Lopes nunoplopes at sapo.pt
Thu Jun 14 06:10:30 PDT 2012


> On Jun 13, 2012, at 6:51 AM, Nuno Lopes wrote:
>
> - Not really related with your patch, but rather a more broaden question:
> Now that the register allocator can rematerialize instructions when the 
> live
> intervals are too long (Jakob: please correct if I'm wrong), doesn't it 
> make
> sense to actually reuse all computations done in dominating basic blocks?
> This patch is looking for opportunities to reuse redundant computations in
> adjacent blocks, but I believe we could do it for arbitrary BBs, as long 
> as
> one of them dominates the other.
>
>
> LLVM IR optimization passes like LICM, CSE, and GVN generally work like 
> this:
>
> 1. IR optimizer is fully aggressive, ignoring register pressure.
> 2. Then a miracle occurs.
> 3. Good code comes out.
>
> We are still working on step 2, but in general IR optimization passes 
> don't need to worry about register pressure.

I see..  So can I call you God Jakob from now on? :P
But more seriously, it's great that the optimizers don't need to care about 
register pressure!

Nuno 




More information about the llvm-commits mailing list