diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-07-29 00:52:19 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-07-29 00:52:19 +0000 |
commit | 36cf119049fad322c4dc4529dda7d5347a1cd212 (patch) | |
tree | bbb556fd61de5f98603ae75a45b334b26af4c897 /llvm/lib/Support/CrashRecoveryContext.cpp | |
parent | 1222249aabae22097eb949244cc748a2172fad07 (diff) | |
download | llvm-36cf119049fad322c4dc4529dda7d5347a1cd212.zip llvm-36cf119049fad322c4dc4529dda7d5347a1cd212.tar.gz llvm-36cf119049fad322c4dc4529dda7d5347a1cd212.tar.bz2 |
Fix a bug in the -regalloc=fast handling of exotic two-address instruction with
multiple defs, like t2LDRSB_POST.
The first def could accidentally steal the physreg that the second, tied def was
required to be allocated to.
Now, the tied use-def is treated more like an early clobber, and the physreg is
reserved before allocating the other defs.
This would never be a problem when the tied def was the only def which is the
usual case.
This fixes MallocBench/gs for thumb2 -O0.
llvm-svn: 109715
Diffstat (limited to 'llvm/lib/Support/CrashRecoveryContext.cpp')
0 files changed, 0 insertions, 0 deletions