aboutsummaryrefslogtreecommitdiff
path: root/gdb/hppa-tdep.c
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2003-03-18 18:26:41 +0000
committerJoel Brobecker <brobecker@gnat.com>2003-03-18 18:26:41 +0000
commit3371ccc06e3e0c51f5e43ffe228cea7161cbd59d (patch)
tree5e07d5cc29898a91affa6a06d0c80f9805b1a159 /gdb/hppa-tdep.c
parent4fbe891ea11b5631e22e8a9cb2fdc4942d8b15e9 (diff)
downloadgdb-3371ccc06e3e0c51f5e43ffe228cea7161cbd59d.zip
gdb-3371ccc06e3e0c51f5e43ffe228cea7161cbd59d.tar.gz
gdb-3371ccc06e3e0c51f5e43ffe228cea7161cbd59d.tar.bz2
* hppa-tdep.c (hppa_push_dummy_frame): Remove hack which does not
appear to be working in any case.
Diffstat (limited to 'gdb/hppa-tdep.c')
-rw-r--r--gdb/hppa-tdep.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
index f74dfd1..35ae0a1 100644
--- a/gdb/hppa-tdep.c
+++ b/gdb/hppa-tdep.c
@@ -1440,31 +1440,15 @@ hppa_push_dummy_frame (struct inferior_status *inf_status)
CORE_ADDR int_buffer;
double freg_buffer;
- /* Oh, what a hack. If we're trying to perform an inferior call
- while the inferior is asleep, we have to make sure to clear
- the "in system call" bit in the flag register (the call will
- start after the syscall returns, so we're no longer in the system
- call!) This state is kept in "inf_status", change it there.
-
- We also need a number of horrid hacks to deal with lossage in the
- PC queue registers (apparently they're not valid when the in syscall
- bit is set). */
pc = hppa_target_read_pc (inferior_ptid);
int_buffer = read_register (FLAGS_REGNUM);
if (int_buffer & 0x2)
{
- unsigned int sid;
- int_buffer &= ~0x2;
- write_inferior_status_register (inf_status, 0, int_buffer);
- write_inferior_status_register (inf_status, PCOQ_HEAD_REGNUM, pc + 0);
- write_inferior_status_register (inf_status, PCOQ_TAIL_REGNUM, pc + 4);
- sid = (pc >> 30) & 0x3;
+ const unsigned int sid = (pc >> 30) & 0x3;
if (sid == 0)
pcspace = read_register (SR4_REGNUM);
else
pcspace = read_register (SR4_REGNUM + 4 + sid);
- write_inferior_status_register (inf_status, PCSQ_HEAD_REGNUM, pcspace);
- write_inferior_status_register (inf_status, PCSQ_TAIL_REGNUM, pcspace);
}
else
pcspace = read_register (PCSQ_HEAD_REGNUM);