[llvm-commits] CVS: llvm/include/llvm/CodeGen/DwarfWriter.h MachineDebugInfo.h SelectionDAGNodes.h

Jim Laskey jlaskey at apple.com
Wed Jan 4 17:25:45 PST 2006



Changes in directory llvm/include/llvm/CodeGen:

DwarfWriter.h updated: 1.5 -> 1.6
MachineDebugInfo.h updated: 1.4 -> 1.5
SelectionDAGNodes.h updated: 1.86 -> 1.87
---
Log message:

Added initial support for DEBUG_LABEL allowing debug specific labels to be
inserted in the code.


---
Diffs of the changes:  (+19 -6)

 DwarfWriter.h       |    5 +++--
 MachineDebugInfo.h  |    7 +++++++
 SelectionDAGNodes.h |   13 +++++++++----
 3 files changed, 19 insertions(+), 6 deletions(-)


Index: llvm/include/llvm/CodeGen/DwarfWriter.h
diff -u llvm/include/llvm/CodeGen/DwarfWriter.h:1.5 llvm/include/llvm/CodeGen/DwarfWriter.h:1.6
--- llvm/include/llvm/CodeGen/DwarfWriter.h:1.5	Wed Jan  4 16:28:25 2006
+++ llvm/include/llvm/CodeGen/DwarfWriter.h	Wed Jan  4 19:25:28 2006
@@ -550,8 +550,9 @@
     ///
     void EmitInitial() const;
     
-    /// ShouldEmitDwarf - Determine if dwarf declarations should be made.
-    ///
+    /// ShouldEmitDwarf - Returns true if dwarf declarations should be made.
+    /// When called it also checks to see if debug info is newly available.  if
+    /// so the initial dwarf headers are emitted.
     bool ShouldEmitDwarf();
 
     /// BeginModule - Emit all dwarf sections that should come prior to the


Index: llvm/include/llvm/CodeGen/MachineDebugInfo.h
diff -u llvm/include/llvm/CodeGen/MachineDebugInfo.h:1.4 llvm/include/llvm/CodeGen/MachineDebugInfo.h:1.5
--- llvm/include/llvm/CodeGen/MachineDebugInfo.h:1.4	Wed Jan  4 16:28:25 2006
+++ llvm/include/llvm/CodeGen/MachineDebugInfo.h	Wed Jan  4 19:25:28 2006
@@ -52,6 +52,13 @@
   ///
   unsigned getNextUniqueID() { return UniqueID++; }
   
+  /// RecordLabel - Records location information and associates it with a
+  /// debug label.  Returns unique label id.
+  unsigned RecordLabel(unsigned Line, unsigned Col, unsigned SrcFile) {
+    // FIXME - actually record.
+    return getNextUniqueID();
+  }
+  
   bool doInitialization();
   bool doFinalization();
   


Index: llvm/include/llvm/CodeGen/SelectionDAGNodes.h
diff -u llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.86 llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.87
--- llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.86	Wed Jan  4 09:04:11 2006
+++ llvm/include/llvm/CodeGen/SelectionDAGNodes.h	Wed Jan  4 19:25:28 2006
@@ -355,12 +355,17 @@
     LOCATION,
     
     // DEBUG_LOC - This node is used to represent source line information
-    // embedded in the code.  It takes token chain as input, then a line number,
-    // then a column then a file id (provided by MachineDebugInfo), then a
-    // unique id (provided by MachineDebugInfo for label gen).  It produces a
-    // token chain as output.
+    // embedded in the code.  It takes a token chain as input, then a line
+    // number, then a column then a file id (provided by MachineDebugInfo.) It
+    // produces a token chain as output.
     DEBUG_LOC,
     
+    // DEBUG_LABEL - This node is used to mark a location in the code where a
+    // label should be generated for use by the debug information.  It takes a
+    // token chain as input, the a unique id (provided by MachineDebugInfo.) It
+    // produces a token chain as output.
+    DEBUG_LABEL,
+    
     // BUILTIN_OP_END - This must be the last enum value in this list.
     BUILTIN_OP_END,
   };






More information about the llvm-commits mailing list