summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>2015-02-04 05:51:56 +0000
committerBill Schmidt <wschmidt@linux.vnet.ibm.com>2015-02-04 05:51:56 +0000
commit1354f7c5fa3e08a87a4d1d6b3c401e88f928f48e (patch)
treeef123ecc1091bda86ef63b2592baa3b729f8ef07
parentbc78f1696c172476606cca189acbd8a2d70cfa55 (diff)
downloadbcm5719-llvm-1354f7c5fa3e08a87a4d1d6b3c401e88f928f48e.tar.gz
bcm5719-llvm-1354f7c5fa3e08a87a4d1d6b3c401e88f928f48e.zip
[PowerPC] Handle 32-bit targets properly in PPCTLSDynamicCall.cpp
llvm-svn: 228116
-rw-r--r--llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp4
-rw-r--r--llvm/test/CodeGen/PowerPC/tls-pic.ll4
2 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp b/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
index b0e1dfa52a4..1b74c4e76e7 100644
--- a/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
+++ b/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
@@ -56,7 +56,9 @@ protected:
MachineInstr *MI = I;
if (MI->getOpcode() != PPC::GETtlsADDR &&
- MI->getOpcode() != PPC::GETtlsldADDR)
+ MI->getOpcode() != PPC::GETtlsldADDR &&
+ MI->getOpcode() != PPC::GETtlsADDR32 &&
+ MI->getOpcode() != PPC::GETtlsldADDR32)
continue;
DEBUG(dbgs() << "TLS Dynamic Call Fixup:\n " << *MI;);
diff --git a/llvm/test/CodeGen/PowerPC/tls-pic.ll b/llvm/test/CodeGen/PowerPC/tls-pic.ll
index b6782142c7f..549cd1927a7 100644
--- a/llvm/test/CodeGen/PowerPC/tls-pic.ll
+++ b/llvm/test/CodeGen/PowerPC/tls-pic.ll
@@ -25,12 +25,12 @@ entry:
; OPT0: addis [[REG2:[0-9]+]], 3, a@dtprel@ha
; OPT0: addi {{[0-9]+}}, [[REG2]], a@dtprel@l
; OPT0-32-LABEL: main
-; OPT0-32: addi {{[0-9]+}}, {{[0-9]+}}, a@got@tlsld
+; OPT0-32: addi 3, {{[0-9]+}}, a@got@tlsld
; OPT0-32: bl __tls_get_addr(a@tlsld)@PLT
; OPT0-32: addis [[REG:[0-9]+]], 3, a@dtprel@ha
; OPT0-32: addi {{[0-9]+}}, [[REG]], a@dtprel@l
; OPT1-32-LABEL: main
-; OPT1-32: addi {{[0-9]+}}, {{[0-9]+}}, a@got@tlsld
+; OPT1-32: addi 3, {{[0-9]+}}, a@got@tlsld
; OPT1-32: bl __tls_get_addr(a@tlsld)@PLT
; OPT1-32: addis [[REG:[0-9]+]], 3, a@dtprel@ha
; OPT1-32: addi {{[0-9]+}}, [[REG]], a@dtprel@l
OpenPOWER on IntegriCloud