Do not reserve $gp as a dedicated global base register if the target ABI is not O32.

llvm-svn: 151614
This commit is contained in:
Akira Hatanaka 2012-02-28 03:17:38 +00:00
parent 2b1f3fbf7e
commit 247d834415

View File

@ -126,7 +126,8 @@ void MipsDAGToDAGISel::InitGlobalBaseReg(MachineFunction &MF) {
unsigned V0, V1, GlobalBaseReg = MipsFI->getGlobalBaseReg();
bool FixGlobalBaseReg = MipsFI->globalBaseRegFixed();
if (FixGlobalBaseReg) // $gp is the global base register.
if (Subtarget.isABI_O32() && FixGlobalBaseReg)
// $gp is the global base register.
V0 = V1 = GlobalBaseReg;
else {
const TargetRegisterClass *RC;