This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Recognize .debug_macro/DW_AT_GNU_macros


On Tue, 2012-06-26 at 18:14 -0700, Roland McGrath wrote:
> dwarf.h should get all the new constants
I added the new constants in a followup commit.

> and it doesn't need comments with
> references.  The DW_*_GNU_* names are enough to know what to look up.
I removed the reference from the dwarf.h file, but don't agree the
constants alone are enough to know where one can find real information
(at least I often spend a lot of time trying to hunt down information on
obscure DWARF extensions). I'll create a new wiki page for it.

Cheers,

Mark
From ef5688e1c4916c669f12dee708d07cec416b4e77 Mon Sep 17 00:00:00 2001
From: Mark Wielaard <mjw@redhat.com>
Date: Wed, 27 Jun 2012 10:15:27 +0200
Subject: [PATCH] dwarf.h: Add DW_MACRO_GNU .debug_macro type encodings.

Signed-off-by: Mark Wielaard <mjw@redhat.com>
---
 libdw/ChangeLog |    4 ++++
 libdw/dwarf.h   |   15 +++++++++++++++
 2 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index 48bbaa0..5a07c46 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,3 +1,7 @@
+2012-06-27  Mark Wielaard  <mjw@redhat.com>
+
+	* dwarf.h: Add DW_MACRO_GNU .debug_macro type encodings.
+
 2012-06-26  Mark Wielaard  <mjw@redhat.com>
 
 	* libdwP.h: Add IDX_debug_macro.
diff --git a/libdw/dwarf.h b/libdw/dwarf.h
index 01aee5a..78a553a 100644
--- a/libdw/dwarf.h
+++ b/libdw/dwarf.h
@@ -673,6 +673,21 @@ enum
   };
 
 
+/* DWARF debug_macro type encodings.  GNU/DWARF5 extension.  */
+enum
+  {
+    DW_MACRO_GNU_define = 0x01,
+    DW_MACRO_GNU_undef = 0x02,
+    DW_MACRO_GNU_start_file = 0x03,
+    DW_MACRO_GNU_end_file = 0x04,
+    DW_MACRO_GNU_define_indirect = 0x05,
+    DW_MACRO_GNU_undef_indirect = 0x06,
+    DW_MACRO_GNU_transparent_include = 0x07,
+    DW_MACRO_GNU_lo_user = 0xe0,
+    DW_MACRO_GNU_hi_user = 0xff
+  };
+
+
 /* DWARF call frame instruction encodings.  */
 enum
   {
-- 
1.7.7.6


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]