make inferior calls work on ia64 even when syscall is pending
David Mosberger
davidm@napali.hpl.hp.com
Thu Jan 1 02:43:00 GMT 2004
>>>>> On Thu, 1 Jan 2004 00:33:23 +0100 (CET), Mark Kettenis <kettenis@chello.nl> said:
Mark> If the gdb patch looks OK, please check it in.
Mark> David, there are two issues with the patch:
Mark> * I suspect that this approach is Linux-specific. If so, you
Mark> really shouldn't be adding this bit of code to the generic
Mark> ia64_write_pc(). Instead you should create a Linux-specific
Mark> ia64_linux_write_pc() and put it in ia64-linux-tdep.c; you'll
Mark> probably want to call the generic ia64_write_pc() from there.
Mark> Then you must hook in the Linux-specific version if the OSABI
Mark> is GDB_OSABI_LINUX.
I'm not sure how Linux-specific it really is. I think most Unixish
ia64 OSes use r10 as the syscall error flag. I'll leave this one to
the gdb experts that know the other ia64 OSes better than I do.
Mark> * You should use write_register_pid() instead of
Mark> write_register().
Ah, yes, I had the code in ia64_push_dummy_call() and failed to change
that when moving it to ia64_write_pc().
--david
More information about the Gdb-patches
mailing list