diff options
author | Chris Lattner <sabre@nondot.org> | 2005-10-05 18:30:19 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-10-05 18:30:19 +0000 |
commit | 22480c43504eca3092f79d9b42bdbb1b413e8e53 (patch) | |
tree | a71efdd3ca74c1b3c5bcbe13f2517b333ef44943 /lib/Target/Alpha/AlphaISelPattern.cpp | |
parent | f5c6e6b7452a4aba6d3067896c3d95c4f9457c87 (diff) |
Fix a bug in the local spiller, where we could take code like this:
store r12 -> [ss#2]
R3 = load [ss#1]
use R3
R3 = load [ss#2]
R4 = load [ss#1]
and turn it into this code:
store R12 -> [ss#2]
R3 = load [ss#1]
use R3
R3 = R12
R4 = R3 <- oops!
The problem was that promoting R3 = load[ss#2] to a copy missed the fact that
the instruction invalidated R3 at that point.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23638 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Alpha/AlphaISelPattern.cpp')
0 files changed, 0 insertions, 0 deletions