aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/CodeGen/MachineFunction.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/CodeGen/MachineFunction.h')
-rw-r--r--include/llvm/CodeGen/MachineFunction.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/include/llvm/CodeGen/MachineFunction.h b/include/llvm/CodeGen/MachineFunction.h
index 835c8a37c5..1397b84677 100644
--- a/include/llvm/CodeGen/MachineFunction.h
+++ b/include/llvm/CodeGen/MachineFunction.h
@@ -19,6 +19,7 @@
#define LLVM_CODEGEN_MACHINEFUNCTION_H
#include "llvm/ADT/ilist.h"
+#include "llvm/CodeGen/DebugLoc.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/Support/Annotation.h"
#include "llvm/Support/Allocator.h"
@@ -27,11 +28,11 @@
namespace llvm {
class Function;
-class TargetMachine;
class MachineRegisterInfo;
class MachineFrameInfo;
class MachineConstantPool;
class MachineJumpTableInfo;
+class TargetMachine;
template <>
struct ilist_traits<MachineBasicBlock>
@@ -94,6 +95,9 @@ class MachineFunction : private Annotation {
typedef ilist<MachineBasicBlock> BasicBlockListType;
BasicBlockListType BasicBlocks;
+ // Tracks debug locations.
+ DebugLocTracker DebugLocInfo;
+
public:
MachineFunction(const Function *Fn, const TargetMachine &TM);
~MachineFunction();
@@ -302,6 +306,15 @@ public:
/// DeleteMachineBasicBlock - Delete the given MachineBasicBlock.
///
void DeleteMachineBasicBlock(MachineBasicBlock *MBB);
+
+ //===--------------------------------------------------------------------===//
+ // Debug location.
+ //
+
+ /// lookUpDebugLocId - Look up the DebugLocTuple index with the given
+ /// filename, line, and column. It may add a new filename and / or
+ /// a new DebugLocTuple.
+ unsigned lookUpDebugLocId(const char *Filename, unsigned Line, unsigned Col);
};
//===--------------------------------------------------------------------===//