diff options
| author | Bill Schmidt <wschmidt@linux.vnet.ibm.com> | 2015-02-04 05:51:56 +0000 |
|---|---|---|
| committer | Bill Schmidt <wschmidt@linux.vnet.ibm.com> | 2015-02-04 05:51:56 +0000 |
| commit | 1354f7c5fa3e08a87a4d1d6b3c401e88f928f48e (patch) | |
| tree | ef123ecc1091bda86ef63b2592baa3b729f8ef07 | |
| parent | bc78f1696c172476606cca189acbd8a2d70cfa55 (diff) | |
| download | bcm5719-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.cpp | 4 | ||||
| -rw-r--r-- | llvm/test/CodeGen/PowerPC/tls-pic.ll | 4 |
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 |

