[Lldb-commits] [lldb] r248286 - Remove IRToDWARF.h

Bruce Mitchener via lldb-commits lldb-commits at lists.llvm.org
Tue Sep 22 09:30:26 PDT 2015


Author: brucem
Date: Tue Sep 22 11:30:26 2015
New Revision: 248286

URL: http://llvm.org/viewvc/llvm-project?rev=248286&view=rev
Log:
Remove IRToDWARF.h

Summary:
The corresponding .cpp file was removed in September of 2011 in
r139772.

Reviewers: spyffe, clayborg

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D13043

Removed:
    lldb/trunk/include/lldb/Expression/IRToDWARF.h

Removed: lldb/trunk/include/lldb/Expression/IRToDWARF.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Expression/IRToDWARF.h?rev=248285&view=auto
==============================================================================
--- lldb/trunk/include/lldb/Expression/IRToDWARF.h (original)
+++ lldb/trunk/include/lldb/Expression/IRToDWARF.h (removed)
@@ -1,111 +0,0 @@
-//===-- IRToDWARF.h ---------------------------------------------*- C++ -*-===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef liblldb_IRToDWARF_h_
-#define liblldb_IRToDWARF_h_
-
-#include "llvm/Pass.h"
-#include "llvm/IR/LegacyPassManager.h"
-
-#include "lldb/lldb-public.h"
-
-class Relocator;
-//----------------------------------------------------------------------
-/// @class IRToDWARF IRToDWARF.h "lldb/Expression/IRToDWARF.h"
-/// @brief Transforms the IR for a function into a DWARF location expression
-///
-/// Once an expression has been parsed and converted to IR, it can run
-/// in two contexts: interpreted by LLDB as a DWARF location expression,
-/// or compiled by the JIT and inserted into the target process for
-/// execution.
-///
-/// IRToDWARF makes the first possible, by traversing the control flow
-/// graph and writing the code for each basic block out as location
-/// expression bytecode.  To ensure that the links between the basic blocks
-/// remain intact, it uses a relocator that records the location of every
-/// location expression instruction that has a relocatable operand, the
-/// target of that operand (as a basic block), and the mapping of each basic
-/// block to an actual location.  After all code has been written out, the
-/// relocator post-processes it and performs all necessary relocations.
-//----------------------------------------------------------------------
-class IRToDWARF : public llvm::ModulePass
-{
-public:
-    //------------------------------------------------------------------
-    /// Constructor
-    ///
-    /// @param[in] local_vars
-    ///     A list of variables to populate with the local variables this
-    ///     expression uses.
-    ///
-    /// @param[in] decl_map
-    ///     The list of externally-referenced variables for the expression,
-    ///     for use in looking up globals.
-    ///
-    /// @param[in] stream
-    ///     The stream to dump DWARF bytecode onto.
-    ///
-    /// @param[in] func_name
-    ///     The name of the function to translate to DWARF.
-    //------------------------------------------------------------------
-    IRToDWARF(lldb_private::ClangExpressionVariableList &local_vars, 
-              lldb_private::ClangExpressionDeclMap *decl_map,
-              lldb_private::StreamString &strm,
-              const char* func_name = "$__lldb_expr");
-    
-    //------------------------------------------------------------------
-    /// Destructor
-    //------------------------------------------------------------------
-    virtual ~IRToDWARF();
-    
-    //------------------------------------------------------------------
-    /// Run this IR transformer on a single module
-    ///
-    /// @param[in] M
-    ///     The module to run on.  This module is searched for the function
-    ///     $__lldb_expr, and that function is converted to a location
-    ///     expression.
-    ///
-    /// @return
-    ///     True on success; false otherwise
-    //------------------------------------------------------------------
-    bool runOnModule(llvm::Module &M);
-    
-    //------------------------------------------------------------------
-    /// Interface stub
-    //------------------------------------------------------------------
-    void assignPassManager(llvm::PMStack &PMS,
-                           llvm::PassManagerType T = llvm::PMT_ModulePassManager);
-    
-    //------------------------------------------------------------------
-    /// Returns PMT_ModulePassManager
-    //------------------------------------------------------------------
-    llvm::PassManagerType getPotentialPassManagerType() const;
-private:
-    //------------------------------------------------------------------
-    /// Run this IR transformer on a single basic block
-    ///
-    /// @param[in] BB
-    ///     The basic block to transform.
-    ///
-    /// @param[in] Relocator
-    ///     The relocator to use when registering branches.
-    ///
-    /// @return
-    ///     True on success; false otherwise
-    //------------------------------------------------------------------
-    bool runOnBasicBlock(llvm::BasicBlock &BB, Relocator &Relocator);
-    
-    std::string m_func_name;                                    ///< The name of the function to translate
-    lldb_private::ClangExpressionVariableList &m_local_vars;   ///< The list of local variables to populate while transforming
-    lldb_private::ClangExpressionDeclMap *m_decl_map;           ///< The list of external variables
-    lldb_private::StreamString &m_strm;                         ///< The stream to write bytecode to
-};
-
-#endif




More information about the lldb-commits mailing list