This is the mail archive of the gdb-prs@sourceware.org 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]

[Bug tdep/12013] New: MIPS tracepoint cannot collect stack info through collect *(unsigned char *)($sp)@512


I try MIPS tracepoint but when I want to use collect *(unsigned char *)($sp)@512 
to collect the stack info, but I got:
(gdb) actions 
Enter actions for tracepoint 1, one per line.
End with a line saying just "end".
>collect *(unsigned char *)($sp)@512
'sp' is a pseudo-register; GDB cannot yet trace pseudoregister contents.

That is because in ax-gdb.c:
	reg = user_reg_map_name_to_regnum (exp->gdbarch, name, strlen (name));
	if (reg == -1)
	  internal_error (__FILE__, __LINE__,
			  _("Register $%s not available"), name);
	if (reg >= gdbarch_num_regs (exp->gdbarch))
	  error (_("'%s' is a pseudo-register; "
		   "GDB cannot yet trace pseudoregister contents."),
		 name);

In user_reg_map_name_to_regnum, it will call mips_register_name to get reg name:
But in function mips_register_name:
  /* Map [gdbarch_num_regs .. 2*gdbarch_num_regs) onto the raw registers, 
     but then don't make the raw register names visible.  */
  int rawnum = regno % gdbarch_num_regs (gdbarch);
  if (regno < gdbarch_num_regs (gdbarch))
    return "";

So it make user_reg_map_name_to_regnum just can return the "reg" bigger than 
gdbarch_num_regs.

Then it will get this error message.  Do you have some way to handle this issue?

-- 
           Summary: MIPS tracepoint cannot collect stack info through
                    collect *(unsigned char *)($sp)@512
           Product: gdb
           Version: HEAD
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: tdep
        AssignedTo: unassigned at sourceware dot org
        ReportedBy: teawater at gmail dot com
                CC: gdb-prs at sourceware dot org


http://sourceware.org/bugzilla/show_bug.cgi?id=12013

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


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