2011-03-31 Tristan Gingold <gingold@adacore.com>
authorTristan Gingold <gingold@adacore.com>
Thu, 31 Mar 2011 08:02:41 +0000 (08:02 +0000)
committerTristan Gingold <gingold@adacore.com>
Thu, 31 Mar 2011 08:02:41 +0000 (08:02 +0000)
* dwarf2dbg.c (DWARF2_VERSION): Define.
(out_debug_line): Use it.
(out_debug_aranges): Ditto.
(out_debug_info): Ditto.
* config/tc-ia64.h (DWARF2_VERSION): Override it.

gas/ChangeLog
gas/config/tc-ia64.h
gas/dwarf2dbg.c

index d4d4f7e..5e706c1 100644 (file)
@@ -1,3 +1,11 @@
+2011-03-31  Tristan Gingold  <gingold@adacore.com>
+
+       * dwarf2dbg.c (DWARF2_VERSION): Define.
+       (out_debug_line): Use it.
+       (out_debug_aranges): Ditto.
+       (out_debug_info): Ditto.
+       * config/tc-ia64.h (DWARF2_VERSION): Override it.
+
 2011-03-30  Michael Snyder  <msnyder@vmware.com>
 
        * obj-elf.c (obj_elf_section): Free malloced name.
index 1f5771c..96618e9 100644 (file)
@@ -323,3 +323,8 @@ typedef struct unwind_record
    && (!(FIX)->fx_pcrel                                        \
        || (FIX)->fx_r_type == BFD_RELOC_IA64_PLTOFF22  \
        || TC_FORCE_RELOCATION (FIX)))
+
+/* VMS backtraces expect dwarf version 3.  */
+#ifdef TE_VMS
+#define DWARF2_VERSION 3
+#endif
index c551a7f..41fd014 100644 (file)
 #define DWARF2_FILE_SIZE_NAME(FILENAME,DIRNAME) 0
 #endif
 
+#ifndef DWARF2_VERSION
+#define DWARF2_VERSION 2
+#endif
+
 #include "subsegs.h"
 
 #include "dwarf2.h"
@@ -1420,7 +1424,7 @@ out_debug_line (segT line_seg)
   line_end = exp.X_add_symbol;
 
   /* Version.  */
-  out_two (2);
+  out_two (DWARF2_VERSION);
 
   /* Length of the prologue following this length.  */
   prologue_end = symbol_temp_make ();
@@ -1524,7 +1528,7 @@ out_debug_aranges (segT aranges_seg, segT info_seg)
   aranges_end = exp.X_add_symbol;
 
   /* Version.  */
-  out_two (2);
+  out_two (DWARF2_VERSION);
 
   /* Offset to .debug_info.  */
   TC_DWARF2_EMIT_OFFSET (section_symbol (info_seg), sizeof_offset);
@@ -1627,7 +1631,7 @@ out_debug_info (segT info_seg, segT abbrev_seg, segT line_seg, segT ranges_seg)
   info_end = exp.X_add_symbol;
 
   /* DWARF version.  */
-  out_two (2);
+  out_two (DWARF2_VERSION);
 
   /* .debug_abbrev offset */
   TC_DWARF2_EMIT_OFFSET (section_symbol (abbrev_seg), sizeof_offset);