diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-03-05 21:49:17 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-03-05 21:49:17 +0000 |
commit | 53e000bac319a25f7c13ec8b7b413418fba5ef20 (patch) | |
tree | 5c8ebc5de029f83b7aeb5f41b1295002b85effe7 /lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
parent | a76e816844debe822c23932ef6a71c127d073063 (diff) |
Better handling of dead super registers in LiveVariables. We used to do this:
CALL ... %RAX<imp-def>
... [not using %RAX]
%EAX = ..., %RAX<imp-use, kill>
RET %EAX<imp-use,kill>
Now we do this:
CALL ... %RAX<imp-def, dead>
... [not using %RAX]
%EAX = ...
RET %EAX<imp-use,kill>
By not artificially keeping %RAX alive, we lower register pressure a bit.
The correct number of instructions for 2008-08-05-SpillerBug.ll is obviously
55, anybody can see that. Sheesh.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97838 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions