[PowerPC] fix up in sign-/zero-extension elimination
authorHiroshi Inoue <inouehrs@jp.ibm.com>
Mon, 16 Oct 2017 12:11:15 +0000 (12:11 +0000)
committerHiroshi Inoue <inouehrs@jp.ibm.com>
Mon, 16 Oct 2017 12:11:15 +0000 (12:11 +0000)
This patch fixes a potential problem in my previous commit (https://reviews.llvm.org/rL315888) by adding a null check.

llvm-svn: 315900

llvm/lib/Target/PowerPC/PPCInstrInfo.cpp

index 9da20d9..b4da2d6 100644 (file)
@@ -2256,6 +2256,8 @@ PPCInstrInfo::isSignOrZeroExtended(const MachineInstr &MI, bool SignExt,
           if (CallMI.isCall() && CallMI.getOperand(0).isGlobal()) {
             const Function *CalleeFn =
               dyn_cast<Function>(CallMI.getOperand(0).getGlobal());
+            if (!CalleeFn)
+              return false;
             const IntegerType *IntTy =
               dyn_cast<IntegerType>(CalleeFn->getReturnType());
             const AttributeSet &Attrs =