summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang/CIndex.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-07-26 23:41:46 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-07-26 23:41:46 +0000
commitdab4b9a4b287758b069bb18ce20c1dddb854039f (patch)
treefdd8010a9654eee5f7262fa62d59efb980a4e7d3 /clang/tools/libclang/CIndex.cpp
parentfde54ab8b5e6cbd0a370ef132015f7777a3179f7 (diff)
downloadbcm5719-llvm-dab4b9a4b287758b069bb18ce20c1dddb854039f.tar.gz
bcm5719-llvm-dab4b9a4b287758b069bb18ce20c1dddb854039f.zip
Add support for multi-way live range splitting.
When splitting global live ranges, it is now possible to split for multiple destination intervals at once. Previously, we only had the main and stack intervals. Each edge bundle is assigned to a split candidate, and splitAroundRegion will insert copies between the candidate intervals and the stack interval as needed. The multi-way splitting is used to split around compact regions when enabled with -compact-regions. The best candidate register still gets all the bundles it wants, but everything outside the main interval is first split around compact regions before we create single-block intervals. Compact region splitting still causes some regressions, so it is not enabled by default. llvm-svn: 136186
Diffstat (limited to 'clang/tools/libclang/CIndex.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud