[llvm] 66f2ed0 - PPCReduceCRLogicals - fix static analyzer warnings. NFC
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 13 06:42:09 PST 2019
Author: Simon Pilgrim
Date: 2019-11-13T14:40:20Z
New Revision: 66f2ed07468f78768528483ab53afdd3c489172d
URL: https://github.com/llvm/llvm-project/commit/66f2ed07468f78768528483ab53afdd3c489172d
DIFF: https://github.com/llvm/llvm-project/commit/66f2ed07468f78768528483ab53afdd3c489172d.diff
LOG: PPCReduceCRLogicals - fix static analyzer warnings. NFC
- Fix uninitialized variable warnings.
- Fix null dereference warnings.
Added:
Modified:
llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp b/llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
index 3b71ed219c17..9a4c7c219d7c 100644
--- a/llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
+++ b/llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
@@ -375,10 +375,10 @@ class PPCReduceCRLogicals : public MachineFunctionPass {
};
private:
- const PPCInstrInfo *TII;
- MachineFunction *MF;
- MachineRegisterInfo *MRI;
- const MachineBranchProbabilityInfo *MBPI;
+ const PPCInstrInfo *TII = nullptr;
+ MachineFunction *MF = nullptr;
+ MachineRegisterInfo *MRI = nullptr;
+ const MachineBranchProbabilityInfo *MBPI = nullptr;
// A vector to contain all the CR logical operations
SmallVector<CRLogicalOpInfo, 16> AllCRLogicalOps;
@@ -470,21 +470,21 @@ PPCReduceCRLogicals::createCRLogicalOpInfo(MachineInstr &MIParam) {
} else {
MachineInstr *Def1 = lookThroughCRCopy(MIParam.getOperand(1).getReg(),
Ret.SubregDef1, Ret.CopyDefs.first);
+ assert(Def1 && "Must be able to find a definition of operand 1.");
Ret.DefsSingleUse &=
MRI->hasOneNonDBGUse(Def1->getOperand(0).getReg());
Ret.DefsSingleUse &=
MRI->hasOneNonDBGUse(Ret.CopyDefs.first->getOperand(0).getReg());
- assert(Def1 && "Must be able to find a definition of operand 1.");
if (isBinary(MIParam)) {
Ret.IsBinary = 1;
MachineInstr *Def2 = lookThroughCRCopy(MIParam.getOperand(2).getReg(),
Ret.SubregDef2,
Ret.CopyDefs.second);
+ assert(Def2 && "Must be able to find a definition of operand 2.");
Ret.DefsSingleUse &=
MRI->hasOneNonDBGUse(Def2->getOperand(0).getReg());
Ret.DefsSingleUse &=
MRI->hasOneNonDBGUse(Ret.CopyDefs.second->getOperand(0).getReg());
- assert(Def2 && "Must be able to find a definition of operand 2.");
Ret.TrueDefs = std::make_pair(Def1, Def2);
} else {
Ret.TrueDefs = std::make_pair(Def1, nullptr);
More information about the llvm-commits
mailing list