This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFC/RFA/hppa] unwind pc in bottom frame using correct register
> hrm, something is broken. on hppa64-hp-hpux11.11 this is causing a lot
> of unwinding failures. the hpux unwind_pc method is getting flags that
> have the magic "2" bit set, so it gets the pc from 31 instead of the
> pcoqh register.
figured it out.. we were only clearing the first half of the register on
64-bit... i committed the following patch to fix the problem.
randolph
--
Randolph Chung
Debian GNU/Linux Developer, hppa/ia64 ports
http://www.tausq.org/
2004-12-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_prev_register_helper): Zero out the entire
register for both 32- and 64-bit targets.
Index: hppa-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/hppa-tdep.c,v
retrieving revision 1.188
diff -u -p -r1.188 hppa-tdep.c
--- hppa-tdep.c 8 Dec 2004 01:48:02 -0000 1.188
+++ hppa-tdep.c 8 Dec 2004 06:09:45 -0000
@@ -2459,7 +2467,10 @@ hppa_frame_prev_register_helper (struct
if (regnum == HPPA_FLAGS_REGNUM)
{
if (valuep)
- store_unsigned_integer (valuep, 4, 0);
+ store_unsigned_integer (valuep,
+ register_size (get_frame_arch (next_frame),
+ regnum),
+ 0);
/* It's a computed value. */
*optimizedp = 0;