diff --git a/llvm/include/llvm/Transforms/Scalar/JumpThreading.h b/llvm/include/llvm/Transforms/Scalar/JumpThreading.h index 75b5cf2371fda..a03a38466b27b 100644 --- a/llvm/include/llvm/Transforms/Scalar/JumpThreading.h +++ b/llvm/include/llvm/Transforms/Scalar/JumpThreading.h @@ -85,8 +85,8 @@ class JumpThreadingPass : public PassInfoMixin { LazyValueInfo *LVI = nullptr; AAResults *AA = nullptr; std::unique_ptr DTU; - std::optional BFI; - std::optional BPI; + BlockFrequencyInfo *BFI = nullptr; + BranchProbabilityInfo *BPI = nullptr; bool ChangedSinceLastAnalysisUpdate = false; bool HasGuards = false; #ifndef LLVM_ENABLE_ABI_BREAKING_CHECKS @@ -110,8 +110,7 @@ class JumpThreadingPass : public PassInfoMixin { TargetLibraryInfo *TLI, TargetTransformInfo *TTI, LazyValueInfo *LVI, AAResults *AA, std::unique_ptr DTU, - std::optional BFI, - std::optional BPI); + BlockFrequencyInfo *BFI, BranchProbabilityInfo *BPI); LLVM_ABI PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM); diff --git a/llvm/lib/Transforms/Scalar/JumpThreading.cpp b/llvm/lib/Transforms/Scalar/JumpThreading.cpp index 37b85bf9de811..b5dbef13289ac 100644 --- a/llvm/lib/Transforms/Scalar/JumpThreading.cpp +++ b/llvm/lib/Transforms/Scalar/JumpThreading.cpp @@ -249,7 +249,7 @@ PreservedAnalyses JumpThreadingPass::run(Function &F, runImpl(F, &AM, &TLI, &TTI, &LVI, &AA, std::make_unique( &DT, nullptr, DomTreeUpdater::UpdateStrategy::Lazy), - std::nullopt, std::nullopt); + nullptr, nullptr); if (!Changed) return PreservedAnalyses::all(); @@ -283,8 +283,8 @@ bool JumpThreadingPass::runImpl(Function &F_, FunctionAnalysisManager *FAM_, TargetTransformInfo *TTI_, LazyValueInfo *LVI_, AliasAnalysis *AA_, std::unique_ptr DTU_, - std::optional BFI_, - std::optional BPI_) { + BlockFrequencyInfo *BFI_, + BranchProbabilityInfo *BPI_) { LLVM_DEBUG(dbgs() << "Jump threading on function '" << F_.getName() << "'\n"); F = &F_; FAM = FAM_; @@ -3215,7 +3215,7 @@ BranchProbabilityInfo *JumpThreadingPass::getBPI() { assert(FAM && "Can't create BPI without FunctionAnalysisManager"); BPI = FAM->getCachedResult(*F); } - return *BPI; + return BPI; } BlockFrequencyInfo *JumpThreadingPass::getBFI() { @@ -3223,7 +3223,7 @@ BlockFrequencyInfo *JumpThreadingPass::getBFI() { assert(FAM && "Can't create BFI without FunctionAnalysisManager"); BFI = FAM->getCachedResult(*F); } - return *BFI; + return BFI; } // Important note on validity of BPI/BFI. JumpThreading tries to preserve @@ -3237,7 +3237,7 @@ BranchProbabilityInfo *JumpThreadingPass::getOrCreateBPI(bool Force) { if (Force) BPI = runExternalAnalysis(); - return *BPI; + return BPI; } BlockFrequencyInfo *JumpThreadingPass::getOrCreateBFI(bool Force) { @@ -3248,5 +3248,5 @@ BlockFrequencyInfo *JumpThreadingPass::getOrCreateBFI(bool Force) { if (Force) BFI = runExternalAnalysis(); - return *BFI; + return BFI; }