This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB 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]

[COMMIT/BRANCH] DWARF CFI fixes


This moves the recent DWARF CFI fixes over to the branch.

Committed

Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>

	* dwarf2-frame.c (decode_frame_entry_1): Correctly skip
	personality routine in a CIE augmentation.  Avoid indirection.

Index: dwarf2-frame.c
===================================================================
RCS file: /cvs/src/src/gdb/dwarf2-frame.c,v
retrieving revision 1.38.2.1
diff -u -p -r1.38.2.1 dwarf2-frame.c
--- dwarf2-frame.c 2 Nov 2004 22:36:39 -0000 1.38.2.1
+++ dwarf2-frame.c 20 Nov 2004 09:36:52 -0000
@@ -1355,8 +1355,10 @@ decode_frame_entry_1 (struct comp_unit *
 	  /* "P" indicates a personality routine in the CIE augmentation.  */
 	  else if (*augmentation == 'P')
 	    {
-	      /* Skip.  */
-	      buf += size_of_encoded_value (*buf++);
+	      /* Skip.  Avoid indirection since we throw away the result.  */
+	      unsigned char encoding = (*buf++) & ~DW_EH_PE_indirect;
+	      read_encoded_value (unit, encoding, buf, &bytes_read);
+	      buf += bytes_read;
 	      augmentation++;
 	    }
 


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