summaryrefslogtreecommitdiff
path: root/lib/Target/Mips/MipsMachineFunction.cpp
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@mips.com>2012-04-25 01:24:52 +0000
committerAkira Hatanaka <ahatanaka@mips.com>2012-04-25 01:24:52 +0000
commit25052f4077503d030e65a025b348c5f1e9ffb616 (patch)
treee3c589ecf156859112727f861c48e5d01275623d /lib/Target/Mips/MipsMachineFunction.cpp
parent23d59c2fb847f1869b72bcbda67052ac6b2aaee9 (diff)
downloadllvm-25052f4077503d030e65a025b348c5f1e9ffb616.tar.gz
llvm-25052f4077503d030e65a025b348c5f1e9ffb616.tar.bz2
llvm-25052f4077503d030e65a025b348c5f1e9ffb616.tar.xz
Do not use $gp as a dedicated global register if the target ABI is not O32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155522 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsMachineFunction.cpp')
-rw-r--r--lib/Target/Mips/MipsMachineFunction.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/Mips/MipsMachineFunction.cpp b/lib/Target/Mips/MipsMachineFunction.cpp
index 9d3a27b518..8535b290b4 100644
--- a/lib/Target/Mips/MipsMachineFunction.cpp
+++ b/lib/Target/Mips/MipsMachineFunction.cpp
@@ -37,8 +37,8 @@ unsigned MipsFunctionInfo::getGlobalBaseReg() {
const MipsSubtarget &ST = MF.getTarget().getSubtarget<MipsSubtarget>();
- if (FixGlobalBaseReg) // $gp is the global base register.
- return GlobalBaseReg = ST.isABI_N64() ? Mips::GP_64 : Mips::GP;
+ if (FixGlobalBaseReg && ST.isABI_O32()) // $gp is the global base register.
+ return GlobalBaseReg = Mips::GP;
const TargetRegisterClass *RC = ST.isABI_N64() ?
(const TargetRegisterClass*)&Mips::CPU64RegsRegClass :