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] Cleanup Incomplete CFI data; unspecified registers complaint


Hello,

This patch tweaks the dwarf2-frame.c complaint:
- the register name is included
- the complaint is supressed when init_reg() fixed things up
if you were ever wondering why, even after implementing init_reg, the complaint didn't disappear, this is it.


I think this is pretty straight forward, committed,
Andrew
2004-11-05  Andrew Cagney  <cagney@gnu.org>

	* dwarf2-frame.c (dwarf2_frame_cache): Only complain when both the
	CFI and the init_reg method leave the register unspecified.
	Include the register name in the "Incomplete CFI data" complaint.
	Supress leading zeros in the address.

Index: dwarf2-frame.c
===================================================================
RCS file: /cvs/src/src/gdb/dwarf2-frame.c,v
retrieving revision 1.43
diff -p -u -r1.43 dwarf2-frame.c
--- dwarf2-frame.c	5 Nov 2004 22:35:22 -0000	1.43
+++ dwarf2-frame.c	6 Nov 2004 00:37:53 -0000
@@ -674,9 +674,13 @@ dwarf2_frame_cache (struct frame_info *n
 	   table.  We need a way of iterating through all the valid
 	   DWARF2 register numbers.  */
 	if (fs->regs.reg[column].how == DWARF2_FRAME_REG_UNSPECIFIED)
-	  complaint (&symfile_complaints,
-		     "Incomplete CFI data; unspecified registers at 0x%s",
-		     paddr (fs->pc));
+	  {
+	    if (cache->reg[regnum].how == DWARF2_FRAME_REG_UNSPECIFIED)
+	      complaint (&symfile_complaints, "\
+incomplete CFI data; unspecified registers (e.g., %s) at 0x%s",
+			 gdbarch_register_name (gdbarch, regnum),
+			 paddr_nz (fs->pc));
+	  }
 	else
 	  cache->reg[regnum] = fs->regs.reg[column];
       }

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