http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52857

--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> 2012-04-03 23:28:42 
UTC ---
Does this patch

diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index ca88fc5..935c86f 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -11664,7 +11664,8 @@ mem_loc_descriptor (rtx rtl, enum machine_mode mode,

     if (dwarf_strict)
       break;
-    if (REGNO (rtl) > FIRST_PSEUDO_REGISTER)
+    if (REGNO (rtl) > FIRST_PSEUDO_REGISTER
+        || dbx_reg_number (rtl) == INVALID_REGNUM)
       break;
     type_die = base_type_for_mode (mode,
                GET_MODE_CLASS (mode) == MODE_INT);

make senses?

Reply via email to