This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Register numbers on hppa64
- From: Randolph Chung <randolph at tausq dot org>
- To: gdb at sources dot redhat dot com
- Cc: John David Anglin <dave at hiauly1 dot hia dot nrc dot ca>, Joel Brobecker <brobecker at adacore dot com>
- Date: Sat, 26 Nov 2005 15:27:39 +0800
- Subject: Register numbers on hppa64
- References: <200511260253.jAQ2rP7Z021130@hiauly1.hia.nrc.ca>
OK, this is a mess....:)
Apparently we now have at least three different register numbering
schemes for hppa64:
1) gcc "dbx":
0-31: r0-r31
72-135: fr0-fr31 (odd numbers are not used)
60: sar
2) gcc dwarf frame:
unity mapping, so:
0-31: r0-r31
32-59: fr4-fr31
60: sar
3) gdb
0-31: r0-r31
32-63: sar, pcoqh, pcsqh, other "special" registers
64-95: fr0-fr31
4) HP compilers
???
Joel, does your GNAT C compiler output something different from the
above? :-)
Obviously this will not work....
The gdb numbering scheme seems to be there for a long time. I don't know
if this is the way HP numbers registers in their debug format. Does
anybody have a pointer to this information?
I see that in late 2003/early 2004 there was a discussion about archs
with mismatched "dbx register numbers" vs "dwarf CFI register numbers"
on gcc@gcc.gnu.org and gdb-patches@gcc.gnu.org. Back then the discussion
was about ppc64, although i was not quite sure what was the conclusion
of those discussions. hppa64 is in a similar situation.
Any comments or suggestions on how to sort this out? Should I just
change gdb to match what gcc outputs? Should we change gcc to match what
gdb expects? (safer?)
randolph