https://github.com/kinu created https://github.com/llvm/llvm-project/pull/65932:
No one seems to be using transferBlock() in TypeErasedDataflowAnalysis, it is likely a remnant of old code >From dc808e4edccdd8d405660729713dd169c87daf71 Mon Sep 17 00:00:00 2001 From: Kinuko Yasuda <kin...@chromium.org> Date: Fri, 8 Sep 2023 21:47:25 +0000 Subject: [PATCH] [clang][dataflow] Remove unused function: transferBlock() No one seems to be using transferBlock() in TypeErasedDataflowAnalysis, it is likely a remnant of old code --- .../TypeErasedDataflowAnalysis.h | 19 ------------------- .../TypeErasedDataflowAnalysis.cpp | 12 ------------ 2 files changed, 31 deletions(-) diff --git a/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h b/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h index 88a33d19f7d8f61..67c323dbf45e1b2 100644 --- a/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h +++ b/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h @@ -132,25 +132,6 @@ struct TypeErasedDataflowAnalysisState { } }; -/// Transfers the state of a basic block by evaluating each of its elements in -/// the context of `Analysis` and the states of its predecessors that are -/// available in `BlockStates`. `PostVisitCFG` (if provided) will be applied to -/// each element in the block, after it is evaluated. -/// -/// Requirements: -/// -/// All predecessors of `Block` except those with loop back edges must have -/// already been transferred. States in `BlockStates` that are set to -/// `std::nullopt` represent basic blocks that are not evaluated yet. -TypeErasedDataflowAnalysisState transferBlock( - const ControlFlowContext &CFCtx, - llvm::ArrayRef<std::optional<TypeErasedDataflowAnalysisState>> BlockStates, - const CFGBlock &Block, const Environment &InitEnv, - TypeErasedDataflowAnalysis &Analysis, - std::function<void(const CFGElement &, - const TypeErasedDataflowAnalysisState &)> - PostVisitCFG = nullptr); - /// Performs dataflow analysis and returns a mapping from basic block IDs to /// dataflow analysis states that model the respective basic blocks. Indices of /// the returned vector correspond to basic block IDs. Returns an error if the diff --git a/clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp b/clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp index 626b57b43755ec7..900aa97e9f6de64 100644 --- a/clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp +++ b/clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp @@ -495,18 +495,6 @@ transferCFGBlock(const CFGBlock &Block, AnalysisContext &AC, return State; } -TypeErasedDataflowAnalysisState transferBlock( - const ControlFlowContext &CFCtx, - llvm::ArrayRef<std::optional<TypeErasedDataflowAnalysisState>> BlockStates, - const CFGBlock &Block, const Environment &InitEnv, - TypeErasedDataflowAnalysis &Analysis, - std::function<void(const CFGElement &, - const TypeErasedDataflowAnalysisState &)> - PostVisitCFG) { - AnalysisContext AC(CFCtx, Analysis, InitEnv, BlockStates); - return transferCFGBlock(Block, AC, PostVisitCFG); -} - llvm::Expected<std::vector<std::optional<TypeErasedDataflowAnalysisState>>> runTypeErasedDataflowAnalysis( const ControlFlowContext &CFCtx, TypeErasedDataflowAnalysis &Analysis, _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits