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 | 6207e5dfc3b6eee5be5703142b928e432c646d53 (patch) | |
tree | 5c8ebc5de029f83b7aeb5f41b1295002b85effe7 /include/llvm | |
parent | 4f8f6b3f37759474a0bc139d586cc2e6adc37793 (diff) | |
download | external_llvm-6207e5dfc3b6eee5be5703142b928e432c646d53.tar.gz external_llvm-6207e5dfc3b6eee5be5703142b928e432c646d53.tar.bz2 external_llvm-6207e5dfc3b6eee5be5703142b928e432c646d53.zip |
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 'include/llvm')
0 files changed, 0 insertions, 0 deletions