[llvm] [NFC][LLVM] Cleanup namespace usage in DFAJumpThreading.cpp (PR #162179)
    Rahul Joshi via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Oct  6 15:26:18 PDT 2025
    
    
  
https://github.com/jurahul created https://github.com/llvm/llvm-project/pull/162179
None
>From f3101f30985962b6aef76a4a4503d5f90454f89b Mon Sep 17 00:00:00 2001
From: Rahul Joshi <rjoshi at nvidia.com>
Date: Mon, 6 Oct 2025 15:24:47 -0700
Subject: [PATCH] [NFC][LLVM] Cleanup namespace usage in DFAJumpThreading.cpp
---
 .../Transforms/Scalar/DFAJumpThreading.cpp    | 28 ++++++++++---------
 1 file changed, 15 insertions(+), 13 deletions(-)
diff --git a/llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp b/llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
index e9a3e983bc1e2..506980455d782 100644
--- a/llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
+++ b/llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
@@ -121,7 +121,6 @@ static cl::opt<unsigned>
                   cl::Hidden, cl::init(50));
 
 namespace {
-
 class SelectInstToUnfold {
   SelectInst *SI;
   PHINode *SIUse;
@@ -134,11 +133,14 @@ class SelectInstToUnfold {
 
   explicit operator bool() const { return SI && SIUse; }
 };
+} // namespace
 
-void unfold(DomTreeUpdater *DTU, LoopInfo *LI, SelectInstToUnfold SIToUnfold,
-            std::vector<SelectInstToUnfold> *NewSIsToUnfold,
-            std::vector<BasicBlock *> *NewBBs);
+static void unfold(DomTreeUpdater *DTU, LoopInfo *LI,
+                   SelectInstToUnfold SIToUnfold,
+                   std::vector<SelectInstToUnfold> *NewSIsToUnfold,
+                   std::vector<BasicBlock *> *NewBBs);
 
+namespace {
 class DFAJumpThreading {
 public:
   DFAJumpThreading(AssumptionCache *AC, DominatorTree *DT, LoopInfo *LI,
@@ -173,10 +175,7 @@ class DFAJumpThreading {
   TargetTransformInfo *TTI;
   OptimizationRemarkEmitter *ORE;
 };
-
-} // end anonymous namespace
-
-namespace {
+} // namespace
 
 /// Unfold the select instruction held in \p SIToUnfold by replacing it with
 /// control flow.
@@ -185,9 +184,10 @@ namespace {
 /// created basic blocks into \p NewBBs.
 ///
 /// TODO: merge it with CodeGenPrepare::optimizeSelectInst() if possible.
-void unfold(DomTreeUpdater *DTU, LoopInfo *LI, SelectInstToUnfold SIToUnfold,
-            std::vector<SelectInstToUnfold> *NewSIsToUnfold,
-            std::vector<BasicBlock *> *NewBBs) {
+static void unfold(DomTreeUpdater *DTU, LoopInfo *LI,
+                   SelectInstToUnfold SIToUnfold,
+                   std::vector<SelectInstToUnfold> *NewSIsToUnfold,
+                   std::vector<BasicBlock *> *NewBBs) {
   SelectInst *SI = SIToUnfold.getInst();
   PHINode *SIUse = SIToUnfold.getUse();
   assert(SI->hasOneUse());
@@ -342,10 +342,12 @@ void unfold(DomTreeUpdater *DTU, LoopInfo *LI, SelectInstToUnfold SIToUnfold,
   SI->eraseFromParent();
 }
 
+namespace {
 struct ClonedBlock {
   BasicBlock *BB;
   APInt State; ///< \p State corresponds to the next value of a switch stmnt.
 };
+} // namespace
 
 typedef std::deque<BasicBlock *> PathType;
 typedef std::vector<PathType> PathsType;
@@ -379,6 +381,7 @@ inline raw_ostream &operator<<(raw_ostream &OS, const PathType &Path) {
 /// by cloning necessary basic blocks and replacing conditional branches with
 /// unconditional ones. A threading path includes a list of basic blocks, the
 /// exit state, and the block that determines the next state.
+namespace {
 struct ThreadingPath {
   /// Exit value is DFA's exit state for the given path.
   APInt getExitValue() const { return ExitVal; }
@@ -1336,6 +1339,7 @@ struct TransformDFA {
   SmallPtrSet<const Value *, 32> EphValues;
   std::vector<ThreadingPath> TPaths;
 };
+} // namespace
 
 bool DFAJumpThreading::run(Function &F) {
   LLVM_DEBUG(dbgs() << "\nDFA Jump threading: " << F.getName() << "\n");
@@ -1415,8 +1419,6 @@ bool DFAJumpThreading::run(Function &F) {
   return MadeChanges;
 }
 
-} // end anonymous namespace
-
 /// Integrate with the new Pass Manager
 PreservedAnalyses DFAJumpThreadingPass::run(Function &F,
                                             FunctionAnalysisManager &AM) {
    
    
More information about the llvm-commits
mailing list