[llvm-commits] [llvm] r71438 - in /llvm/trunk: include/llvm/ADT/SparseBitVector.h lib/CodeGen/PrologEpilogInserter.cpp

Chris Lattner clattner at apple.com
Mon May 11 12:45:25 PDT 2009


On May 11, 2009, at 10:04 AM, John Mosby wrote:

> Author: jdm
> Date: Mon May 11 12:04:19 2009
> New Revision: 71438
>
> URL: http://llvm.org/viewvc/llvm-project?rev=71438&view=rev
> Log:
>
> Shrink wrapping in PEI:
> - reduces _static_ callee saved register spills
>  and restores similar to Chow's original algorithm.
> - iterative implementation with simple heuristic
>  limits to mitigate compile time impact.
> - handles placing spills/restores for multi-entry,
>  multi-exit regions in the Machine CFG without
>  splitting edges.
> - passes test-suite in LLCBETA mode.

How John,

I haven't looked in detail at this code, but would it be possible to  
split the shrink wrapping pieces of PEI out into a new  
ShrinkWrapping.cpp file?  It doesn't need to be a separate pass, but  
it would just make it logically easier to understand.

-Chris



More information about the llvm-commits mailing list