Add an InterferenceCache class for caching per-block interference ranges.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Sat, 2 Apr 2011 06:03:35 +0000 (06:03 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Sat, 2 Apr 2011 06:03:35 +0000 (06:03 +0000)
commit5907d863659eb972ebb2afe07bc863a4c616f0ef
tree36571ce2f0dac41150c44d8a04b2f8199a744858
parenta122eaaee22750c4f92c33672e149eb2f0c538cb
Add an InterferenceCache class for caching per-block interference ranges.

When the greedy register allocator is splitting multiple global live ranges, it
tends to look at the same interference data many times. The InterferenceCache
class caches queries for unaltered LiveIntervalUnions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128764 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ADT/IntervalMap.h
lib/CodeGen/CMakeLists.txt
lib/CodeGen/InterferenceCache.cpp [new file with mode: 0644]
lib/CodeGen/InterferenceCache.h [new file with mode: 0644]
lib/CodeGen/RegAllocGreedy.cpp