summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp')
-rw-r--r--llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp b/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
index bb8e9176826..5540859ebdd 100644
--- a/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
+++ b/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
@@ -356,7 +356,7 @@ void LegacyDivergenceAnalysis::print(raw_ostream &OS, const Module *) const {
if ((!gpuDA || !gpuDA->hasDivergence()) && DivergentValues.empty())
return;
- const Function *F;
+ const Function *F = nullptr;
if (!DivergentValues.empty()) {
const Value *FirstDivergentValue = *DivergentValues.begin();
if (const Argument *Arg = dyn_cast<Argument>(FirstDivergentValue)) {
@@ -370,6 +370,8 @@ void LegacyDivergenceAnalysis::print(raw_ostream &OS, const Module *) const {
} else if (gpuDA) {
F = &gpuDA->getFunction();
}
+ if (!F)
+ return;
// Dumps all divergent values in F, arguments and then instructions.
for (auto &Arg : F->args()) {
OpenPOWER on IntegriCloud