aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineFunction.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-04-30 18:39:57 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-04-30 18:39:57 +0000
commit007cbe91c58442ca7032eb006a68560c306c1028 (patch)
tree72fc496e40c9efa8cf341312cda12f2bd4d07326 /llvm/lib/CodeGen/MachineFunction.cpp
parentf71e656631acb06098b628d393a429349443eda3 (diff)
downloadllvm-007cbe91c58442ca7032eb006a68560c306c1028.zip
llvm-007cbe91c58442ca7032eb006a68560c306c1028.tar.gz
llvm-007cbe91c58442ca7032eb006a68560c306c1028.tar.bz2
Add a smarter heuristic to determine when to coalesce a virtual register with a physical one. More specifically, it avoid tying a virtual register in the loop with a physical register defined / used outside the loop. When it determines it's not profitable, it will use the physical register as the allocation preference instead.
This is *not* turned on by default. Testing indicates this is just as likely to pessimize code. The main issue seems to be allocation preference doesn't work effectively. That will change once I've taught register allocator "swapping". llvm-svn: 70503
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions