diff --git a/llvm/tools/opt/BreakpointPrinter.h b/llvm/tools/opt/BreakpointPrinter.h deleted file mode 100644 --- a/llvm/tools/opt/BreakpointPrinter.h +++ /dev/null @@ -1,24 +0,0 @@ -//===- BreakpointPrinter.h - Breakpoint location printer ------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// -/// -/// \file -/// Breakpoint location printer. -/// -//===----------------------------------------------------------------------===// -#ifndef LLVM_TOOLS_OPT_BREAKPOINTPRINTER_H -#define LLVM_TOOLS_OPT_BREAKPOINTPRINTER_H - -namespace llvm { - -class ModulePass; -class raw_ostream; - -ModulePass *createBreakpointPrinter(raw_ostream &out); -} - -#endif // LLVM_TOOLS_OPT_BREAKPOINTPRINTER_H diff --git a/llvm/tools/opt/BreakpointPrinter.cpp b/llvm/tools/opt/BreakpointPrinter.cpp deleted file mode 100644 --- a/llvm/tools/opt/BreakpointPrinter.cpp +++ /dev/null @@ -1,71 +0,0 @@ -//===- BreakpointPrinter.cpp - Breakpoint location printer ----------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// -/// -/// \file -/// Breakpoint location printer. -/// -//===----------------------------------------------------------------------===// -#include "BreakpointPrinter.h" -#include "llvm/ADT/StringSet.h" -#include "llvm/IR/DebugInfo.h" -#include "llvm/IR/Module.h" -#include "llvm/Pass.h" -#include "llvm/Support/raw_ostream.h" - -using namespace llvm; - -namespace { - -struct BreakpointPrinter : public ModulePass { - raw_ostream &Out; - static char ID; - - BreakpointPrinter(raw_ostream &out) : ModulePass(ID), Out(out) {} - - void getContextName(const DIScope *Context, std::string &N) { - if (auto *NS = dyn_cast(Context)) { - if (!NS->getName().empty()) { - getContextName(NS->getScope(), N); - N = N + NS->getName().str() + "::"; - } - } else if (auto *TY = dyn_cast(Context)) { - if (!TY->getName().empty()) { - getContextName(TY->getScope(), N); - N = N + TY->getName().str() + "::"; - } - } - } - - bool runOnModule(Module &M) override { - StringSet<> Processed; - if (NamedMDNode *NMD = M.getNamedMetadata("llvm.dbg.sp")) - for (unsigned i = 0, e = NMD->getNumOperands(); i != e; ++i) { - std::string Name; - auto *SP = cast_or_null(NMD->getOperand(i)); - if (!SP) - continue; - getContextName(SP->getScope(), Name); - Name = Name + SP->getName().str(); - if (!Name.empty() && Processed.insert(Name).second) { - Out << Name << "\n"; - } - } - return false; - } - - void getAnalysisUsage(AnalysisUsage &AU) const override { - AU.setPreservesAll(); - } -}; - -char BreakpointPrinter::ID = 0; -} - -ModulePass *llvm::createBreakpointPrinter(raw_ostream &out) { - return new BreakpointPrinter(out); -} diff --git a/llvm/tools/opt/CMakeLists.txt b/llvm/tools/opt/CMakeLists.txt --- a/llvm/tools/opt/CMakeLists.txt +++ b/llvm/tools/opt/CMakeLists.txt @@ -31,7 +31,6 @@ add_llvm_tool(opt AnalysisWrappers.cpp - BreakpointPrinter.cpp NewPMDriver.cpp opt.cpp diff --git a/llvm/tools/opt/opt.cpp b/llvm/tools/opt/opt.cpp --- a/llvm/tools/opt/opt.cpp +++ b/llvm/tools/opt/opt.cpp @@ -11,7 +11,6 @@ // //===----------------------------------------------------------------------===// -#include "BreakpointPrinter.h" #include "NewPMDriver.h" #include "llvm/Analysis/CallGraph.h" #include "llvm/Analysis/CallGraphSCCPass.h" @@ -203,10 +202,6 @@ cl::desc("Start the pipeline with collecting and end it with checking of " "debug info preservation.")); -static cl::opt -PrintBreakpoints("print-breakpoints-for-testing", - cl::desc("Print select breakpoints location for testing")); - static cl::opt ClDataLayout("data-layout", cl::desc("data layout string to use"), cl::value_desc("layout-string"), @@ -780,24 +775,6 @@ std::unique_ptr FPasses; - if (PrintBreakpoints) { - // Default to standard output. - if (!Out) { - if (OutputFilename.empty()) - OutputFilename = "-"; - - std::error_code EC; - Out = std::make_unique(OutputFilename, EC, - sys::fs::OF_None); - if (EC) { - errs() << EC.message() << '\n'; - return 1; - } - } - Passes.add(createBreakpointPrinter(Out->os())); - NoOutput = true; - } - if (TM) { // FIXME: We should dyn_cast this when supported. auto <M = static_cast(*TM); @@ -909,7 +886,7 @@ exportDebugifyStats(DebugifyExport, Passes.getDebugifyStatsMap()); // Declare success. - if (!NoOutput || PrintBreakpoints) + if (!NoOutput) Out->keep(); if (RemarksFile) diff --git a/llvm/utils/gn/secondary/llvm/tools/opt/BUILD.gn b/llvm/utils/gn/secondary/llvm/tools/opt/BUILD.gn --- a/llvm/utils/gn/secondary/llvm/tools/opt/BUILD.gn +++ b/llvm/utils/gn/secondary/llvm/tools/opt/BUILD.gn @@ -23,7 +23,6 @@ ] sources = [ "AnalysisWrappers.cpp", - "BreakpointPrinter.cpp", "NewPMDriver.cpp", "opt.cpp", ]