diff --git a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp index 60ed72e1018..7abed29bb31 100644 --- a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp +++ b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp @@ -5148,6 +5148,7 @@ static SDValue transformCallee(const SDValue &Callee, SelectionDAG &DAG, // built with secure-PLT. bool UsePlt = Subtarget.is32BitELFABI() && !isLocalCallee() && + !(DAG.getMachineFunction().getFunction().hasFnAttribute(llvm::Attribute::NonLazyBind)) && Subtarget.getTargetMachine().getRelocationModel() == Reloc::PIC_; // On AIX, direct function calls reference the symbol for the function's