diff options
| author | Michael Kuperstein <michael.m.kuperstein@intel.com> | 2015-02-24 16:13:16 +0000 |
|---|---|---|
| committer | Michael Kuperstein <michael.m.kuperstein@intel.com> | 2015-02-24 16:13:16 +0000 |
| commit | d2f3b87812cfeebf3861766562429354c9c37749 (patch) | |
| tree | bde9552ea02c45f55726a199ad3c88011373aded /llvm/lib/Target | |
| parent | 289854859881fee8f9068bcee4ffc0a1ab382f16 (diff) | |
| download | bcm5719-llvm-d2f3b87812cfeebf3861766562429354c9c37749.tar.gz bcm5719-llvm-d2f3b87812cfeebf3861766562429354c9c37749.zip | |
[x32] Mark RBX as reserved when EBX is the base pointer.
This should have gone into r230334.
llvm-svn: 230339
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/X86/X86RegisterInfo.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86RegisterInfo.cpp b/llvm/lib/Target/X86/X86RegisterInfo.cpp index 7f00fd3e4c3..cab7ce801db 100644 --- a/llvm/lib/Target/X86/X86RegisterInfo.cpp +++ b/llvm/lib/Target/X86/X86RegisterInfo.cpp @@ -355,7 +355,9 @@ BitVector X86RegisterInfo::getReservedRegs(const MachineFunction &MF) const { "Stack realignment in presence of dynamic allocas is not supported with" "this calling convention."); - for (MCSubRegIterator I(getBaseRegister(), this, /*IncludeSelf=*/true); + unsigned BasePtr = getX86SubSuperRegister(getBaseRegister(), MVT::i64, + false); + for (MCSubRegIterator I(BasePtr, this, /*IncludeSelf=*/true); I.isValid(); ++I) Reserved.set(*I); } |

