summaryrefslogtreecommitdiffstats
path: root/llvm/include/llvm/IR/PassManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/include/llvm/IR/PassManager.h')
-rw-r--r--llvm/include/llvm/IR/PassManager.h24
1 files changed, 1 insertions, 23 deletions
diff --git a/llvm/include/llvm/IR/PassManager.h b/llvm/include/llvm/IR/PassManager.h
index 108465478d37..d701481202f8 100644
--- a/llvm/include/llvm/IR/PassManager.h
+++ b/llvm/include/llvm/IR/PassManager.h
@@ -64,23 +64,6 @@ extern llvm::cl::opt<bool> UseNewDbgInfoFormat;
namespace llvm {
-// RemoveDIs: Provide facilities for converting debug-info from one form to
-// another, which are no-ops for everything but modules.
-template <class IRUnitT> inline bool shouldConvertDbgInfo(IRUnitT &IR) {
- return false;
-}
-template <> inline bool shouldConvertDbgInfo(Module &IR) {
- return !IR.IsNewDbgInfoFormat && UseNewDbgInfoFormat;
-}
-template <class IRUnitT> inline void doConvertDbgInfoToNew(IRUnitT &IR) {}
-template <> inline void doConvertDbgInfoToNew(Module &IR) {
- IR.convertToNewDbgValues();
-}
-template <class IRUnitT> inline void doConvertDebugInfoToOld(IRUnitT &IR) {}
-template <> inline void doConvertDebugInfoToOld(Module &IR) {
- IR.convertFromNewDbgValues();
-}
-
// Forward declare the analysis manager template.
template <typename IRUnitT, typename... ExtraArgTs> class AnalysisManager;
@@ -229,9 +212,7 @@ public:
// RemoveDIs: if requested, convert debug-info to DbgRecord representation
// for duration of these passes.
- bool ShouldConvertDbgInfo = shouldConvertDbgInfo(IR);
- if (ShouldConvertDbgInfo)
- doConvertDbgInfoToNew(IR);
+ ScopedDbgInfoFormatSetter FormatSetter(IR, UseNewDbgInfoFormat);
for (auto &Pass : Passes) {
// Check the PassInstrumentation's BeforePass callbacks before running the
@@ -255,9 +236,6 @@ public:
PA.intersect(std::move(PassPA));
}
- if (ShouldConvertDbgInfo)
- doConvertDebugInfoToOld(IR);
-
// Invalidation was handled after each pass in the above loop for the
// current unit of IR. Therefore, the remaining analysis results in the
// AnalysisManager are preserved. We mark this with a set so that we don't