diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-09-22 13:14:21 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-09-22 13:14:21 +0000 |
| commit | 837959077001fabc556dbfe553e96dcfa8b8a9b8 (patch) | |
| tree | 62bce07d2fdc0b6fa26dc57bd25d1c3485cb99dd /llvm/lib/Target | |
| parent | a56bd6c51e9fbbc88a63fbec442964b5ebd8c3a0 (diff) | |
| download | bcm5719-llvm-837959077001fabc556dbfe553e96dcfa8b8a9b8.tar.gz bcm5719-llvm-837959077001fabc556dbfe553e96dcfa8b8a9b8.zip | |
[Lanai] LanaiAsmParser - Silence static analyzer dyn_cast null dereference warnings. NFCI.
We were already doing this dyn_cast && isa<> && cast<> pattern for some add*Operands methods, just do this more consistently to stop clang static analyzer warning so much.
llvm-svn: 372503
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp b/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp index b629a24a99f..ec82e3a41f2 100644 --- a/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp +++ b/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp @@ -469,13 +469,14 @@ public: else if (isa<LanaiMCExpr>(getImm())) { #ifndef NDEBUG const LanaiMCExpr *SymbolRefExpr = dyn_cast<LanaiMCExpr>(getImm()); - assert(SymbolRefExpr->getKind() == LanaiMCExpr::VK_Lanai_ABS_LO); + assert(SymbolRefExpr && + SymbolRefExpr->getKind() == LanaiMCExpr::VK_Lanai_ABS_LO); #endif Inst.addOperand(MCOperand::createExpr(getImm())); } else if (isa<MCBinaryExpr>(getImm())) { #ifndef NDEBUG const MCBinaryExpr *BinaryExpr = dyn_cast<MCBinaryExpr>(getImm()); - assert(isa<LanaiMCExpr>(BinaryExpr->getLHS()) && + assert(BinaryExpr && isa<LanaiMCExpr>(BinaryExpr->getLHS()) && cast<LanaiMCExpr>(BinaryExpr->getLHS())->getKind() == LanaiMCExpr::VK_Lanai_ABS_LO); #endif @@ -499,13 +500,14 @@ public: else if (isa<LanaiMCExpr>(getImm())) { #ifndef NDEBUG const LanaiMCExpr *SymbolRefExpr = dyn_cast<LanaiMCExpr>(getImm()); - assert(SymbolRefExpr->getKind() == LanaiMCExpr::VK_Lanai_ABS_HI); + assert(SymbolRefExpr && + SymbolRefExpr->getKind() == LanaiMCExpr::VK_Lanai_ABS_HI); #endif Inst.addOperand(MCOperand::createExpr(getImm())); } else if (isa<MCBinaryExpr>(getImm())) { #ifndef NDEBUG const MCBinaryExpr *BinaryExpr = dyn_cast<MCBinaryExpr>(getImm()); - assert(isa<LanaiMCExpr>(BinaryExpr->getLHS()) && + assert(BinaryExpr && isa<LanaiMCExpr>(BinaryExpr->getLHS()) && cast<LanaiMCExpr>(BinaryExpr->getLHS())->getKind() == LanaiMCExpr::VK_Lanai_ABS_HI); #endif @@ -544,10 +546,9 @@ public: } else if (isa<MCBinaryExpr>(getImm())) { #ifndef NDEBUG const MCBinaryExpr *BinaryExpr = dyn_cast<MCBinaryExpr>(getImm()); - const LanaiMCExpr *SymbolRefExpr = - dyn_cast<LanaiMCExpr>(BinaryExpr->getLHS()); - assert(SymbolRefExpr && - SymbolRefExpr->getKind() == LanaiMCExpr::VK_Lanai_None); + assert(BinaryExpr && isa<LanaiMCExpr>(BinaryExpr->getLHS()) && + cast<LanaiMCExpr>(BinaryExpr->getLHS())->getKind() == + LanaiMCExpr::VK_Lanai_None); #endif Inst.addOperand(MCOperand::createExpr(getImm())); } else |

