summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocLinearScan.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-01-06 01:21:53 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-01-06 01:21:53 +0000
commit8e236eac74fc8f34aeda1247152c42775afd406c (patch)
treec9a35a59b2230a6da8cdd8dcfdc870f885cf59ff /llvm/lib/CodeGen/RegAllocLinearScan.cpp
parent2b898548e85b5a08dc06beb05344bcdf96d91dc5 (diff)
downloadbcm5719-llvm-8e236eac74fc8f34aeda1247152c42775afd406c.tar.gz
bcm5719-llvm-8e236eac74fc8f34aeda1247152c42775afd406c.zip
Add the SpillPlacement analysis pass.
This pass precomputes CFG block frequency information that can be used by the register allocator to find optimal spill code placement. Given an interference pattern, placeSpills() will compute which basic blocks should have the current variable enter or exit in a register, and which blocks prefer the stack. The algorithm is ready to consume block frequencies from profiling data, but for now it gets by with the static estimates used for spill weights. This is a work in progress and still not hooked up to RegAllocGreedy. llvm-svn: 122938
Diffstat (limited to 'llvm/lib/CodeGen/RegAllocLinearScan.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud