[llvm-commits] [llvm] r71438 - in /llvm/trunk: include/llvm/ADT/SparseBitVector.h lib/CodeGen/PrologEpilogInserter.cpp
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
> 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.
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.
More information about the llvm-commits