From: Joerg Sonnenberger Date: Thu, 28 Feb 2019 23:33:09 +0000 (+0000) Subject: [PPC] Secure PLT only has meaning for PIC X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d1c4e8542dc63cd4ba0de52d2f8cb523a615e45a;p=llvm [PPC] Secure PLT only has meaning for PIC git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@355154 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/PowerPC/PPCISelDAGToDAG.cpp b/lib/Target/PowerPC/PPCISelDAGToDAG.cpp index e28f4a7690e..08a5003e697 100644 --- a/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +++ b/lib/Target/PowerPC/PPCISelDAGToDAG.cpp @@ -4358,8 +4358,8 @@ void PPCDAGToDAGISel::Select(SDNode *N) { const Module *M = MF->getFunction().getParent(); if (PPCLowering->getPointerTy(CurDAG->getDataLayout()) != MVT::i32 || - !PPCSubTarget->isSecurePlt() || !PPCSubTarget->isTargetELF() || - M->getPICLevel() == PICLevel::SmallPIC) + (!TM.isPositionIndependent() || !PPCSubTarget->isSecurePlt()) || + !PPCSubTarget->isTargetELF() || M->getPICLevel() == PICLevel::SmallPIC) break; SDValue Op = N->getOperand(1);