[llvm] f5fe998 - [Transforms] Remove bugpoint references
via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 5 20:52:02 PDT 2026
Author: Aiden Grossman
Date: 2026-08-05T20:51:57-07:00
New Revision: f5fe9982129debf32e2814aee3180cf312d65843
URL: https://github.com/llvm/llvm-project/commit/f5fe9982129debf32e2814aee3180cf312d65843
DIFF: https://github.com/llvm/llvm-project/commit/f5fe9982129debf32e2814aee3180cf312d65843.diff
LOG: [Transforms] Remove bugpoint references
Bugpoint was removed in 9d5574dda60151dcd1eb6f315c20e4d9120596f9.
Reviewers: rnk, arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/214253
Added:
Modified:
llvm/include/llvm/LinkAllPasses.h
llvm/include/llvm/Support/DebugCounter.h
llvm/include/llvm/Transforms/IPO.h
llvm/include/llvm/Transforms/Utils/MetaRenamer.h
llvm/lib/CodeGen/MachineBasicBlock.cpp
llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
Removed:
################################################################################
diff --git a/llvm/include/llvm/LinkAllPasses.h b/llvm/include/llvm/LinkAllPasses.h
index 6b8c1e22521ad..d1d714f499532 100644
--- a/llvm/include/llvm/LinkAllPasses.h
+++ b/llvm/include/llvm/LinkAllPasses.h
@@ -7,7 +7,7 @@
//===----------------------------------------------------------------------===//
//
// This header file pulls in all transformation and analysis passes for tools
-// like opt and bugpoint that need this functionality.
+// like opt that need this functionality.
//
//===----------------------------------------------------------------------===//
diff --git a/llvm/include/llvm/Support/DebugCounter.h b/llvm/include/llvm/Support/DebugCounter.h
index 017c16e774160..8df853063e994 100644
--- a/llvm/include/llvm/Support/DebugCounter.h
+++ b/llvm/include/llvm/Support/DebugCounter.h
@@ -11,15 +11,15 @@
/// thing happening.
///
/// To give a use case: Imagine you have a file, very large, and you
-/// are trying to understand the minimal transformation that breaks it. Bugpoint
-/// and bisection is often helpful here in narrowing it down to a specific pass,
-/// but it's still a very large file, and a very complicated pass to try to
-/// debug. That is where debug counting steps in. You can instrument the pass
-/// with a debug counter before it does a certain thing, and depending on the
-/// counts, it will either execute that thing or not. The debug counter itself
-/// consists of a list of chunks (inclusive numeric intervals). `shouldExecute`
-/// returns true iff the list is empty or the current count is in one of the
-/// chunks.
+/// are trying to understand the minimal transformation that breaks it.
+/// llvm-reduce and bisection is often helpful here in narrowing it down to a
+/// specific pass, but it's still a very large file, and a very complicated pass
+/// to try to debug. That is where debug counting steps in. You can instrument
+/// the pass with a debug counter before it does a certain thing, and depending
+/// on the counts, it will either execute that thing or not. The debug counter
+/// itself consists of a list of chunks (inclusive numeric intervals).
+/// `shouldExecute` returns true iff the list is empty or the current count is
+/// in one of the chunks.
///
/// Note that a counter set to a negative number will always execute. For a
/// concrete example, during predicateinfo creation, the renaming pass replaces
diff --git a/llvm/include/llvm/Transforms/IPO.h b/llvm/include/llvm/Transforms/IPO.h
index 7c2135084cacc..6f5693110c8a4 100644
--- a/llvm/include/llvm/Transforms/IPO.h
+++ b/llvm/include/llvm/Transforms/IPO.h
@@ -28,11 +28,6 @@ class raw_ostream;
///
LLVM_ABI ModulePass *createDeadArgEliminationPass();
-/// DeadArgHacking pass - Same as DAE, but delete arguments of external
-/// functions as well. This is definitely not safe, and should only be used by
-/// bugpoint.
-LLVM_ABI ModulePass *createDeadArgHackingPass();
-
//===----------------------------------------------------------------------===//
/// createBarrierNoopPass - This pass is purely a module pass barrier in a pass
/// manager.
diff --git a/llvm/include/llvm/Transforms/Utils/MetaRenamer.h b/llvm/include/llvm/Transforms/Utils/MetaRenamer.h
index ba189087ee3c4..2c61afa6a4b89 100644
--- a/llvm/include/llvm/Transforms/Utils/MetaRenamer.h
+++ b/llvm/include/llvm/Transforms/Utils/MetaRenamer.h
@@ -7,7 +7,7 @@
//===----------------------------------------------------------------------===//
//
// This pass renames everything with metasyntatic names. The intent is to use
-// this pass after bugpoint reduction to conceal the nature of the original
+// this pass after llvm-reduce reduction to conceal the nature of the original
// program.
//
//===----------------------------------------------------------------------===//
diff --git a/llvm/lib/CodeGen/MachineBasicBlock.cpp b/llvm/lib/CodeGen/MachineBasicBlock.cpp
index 2870bf404644c..f4fe9116c3a15 100644
--- a/llvm/lib/CodeGen/MachineBasicBlock.cpp
+++ b/llvm/lib/CodeGen/MachineBasicBlock.cpp
@@ -1462,10 +1462,10 @@ bool MachineBasicBlock::canSplitCriticalEdge(const MachineBasicBlock *Succ,
/*AllowModify*/ false))
return false;
- // Avoid bugpoint weirdness: A block may end with a conditional branch but
- // jumps to the same MBB is either case. We have duplicate CFG edges in that
- // case that we can't handle. Since this never happens in properly optimized
- // code, just skip those edges.
+ // Handle weird inputs (e.g., generated by a test case reducer/fuzzer): A
+ // block may end with a conditional branch but jumps to the same MBB is either
+ // case. We have duplicate CFG edges in that case that we can't handle. Since
+ // this never happens in properly optimized code, just skip those edges.
if (TBB && TBB == FBB) {
LLVM_DEBUG(dbgs() << "Won't split critical edge after degenerate "
<< printMBBReference(*this) << '\n');
diff --git a/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp b/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
index 993fc85438d89..95a9bcb839ee4 100644
--- a/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
+++ b/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
@@ -639,7 +639,8 @@ bool ObjCARCContract::run(Function &F, AAResults *A, DominatorTree *D) {
// Function for replacing uses of Arg dominated by Inst.
auto ReplaceArgUses = [Inst, this](Value *Arg) {
- // If we're compiling bugpointed code, don't get in trouble.
+ // If we're compiling fuzzer generated/test reducer produced IR, don't get
+ // in trouble.
if (!isa<Instruction>(Arg) && !isa<Argument>(Arg))
return;
diff --git a/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp b/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
index 44600acf5b418..91222c9a9af1b 100644
--- a/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
+++ b/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
@@ -664,7 +664,7 @@ InsertSafepointPoll(BasicBlock::iterator InsertBefore,
BasicBlock::iterator Start = IsBegin ? OrigBB->begin() : std::next(Before);
// If your poll function includes an unreachable at the end, that's not
- // valid. Bugpoint likes to create this, so check for it.
+ // valid. Fuzzers/test case reducers can create this, so check for it.
assert(isPotentiallyReachable(&*Start, &*After) &&
"malformed poll function");
More information about the llvm-commits
mailing list