aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver/linux-ppc-low.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2002-04-11 20:30:08 +0000
committerDaniel Jacobowitz <drow@false.org>2002-04-11 20:30:08 +0000
commitbc1e36cac4325ccb7f5d1128adb69c744499f438 (patch)
tree5990e0dcd87748a953fab50b46d286eabc485776 /gdb/gdbserver/linux-ppc-low.c
parente3f36dbd4775498d38cb5a6d24608c2c7626c209 (diff)
downloadgdb-bc1e36cac4325ccb7f5d1128adb69c744499f438.zip
gdb-bc1e36cac4325ccb7f5d1128adb69c744499f438.tar.gz
gdb-bc1e36cac4325ccb7f5d1128adb69c744499f438.tar.bz2
2002-04-11 Daniel Jacobowitz <drow@mvista.com>
* gdbserver/linux-low.c (usr_store_inferior_registers): Support registers which are allowed to fail to store. * gdbserver/linux-low.h (linux_target_ops): Likewise. * gdbserver/linux-ppc-low.c (ppc_regmap): Support FPSCR. (ppc_cannot_store_register): FPSCR may not be storable. * regformats/reg-ppc.dat: Support FPSCR.
Diffstat (limited to 'gdb/gdbserver/linux-ppc-low.c')
-rw-r--r--gdb/gdbserver/linux-ppc-low.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gdb/gdbserver/linux-ppc-low.c b/gdb/gdbserver/linux-ppc-low.c
index e626eab..7cb315a 100644
--- a/gdb/gdbserver/linux-ppc-low.c
+++ b/gdb/gdbserver/linux-ppc-low.c
@@ -46,11 +46,15 @@ static int ppc_regmap[] =
PT_FPR0*4+192, PT_FPR0*4+200, PT_FPR0*4+208, PT_FPR0*4+216,
PT_FPR0*4+224, PT_FPR0*4+232, PT_FPR0*4+240, PT_FPR0*4+248,
PT_NIP * 4, PT_MSR * 4, PT_CCR * 4, PT_LNK * 4,
- PT_CTR * 4, PT_XER * 4, -1, };
+ PT_CTR * 4, PT_XER * 4, PT_FPSCR * 4, };
static int
ppc_cannot_store_register (int regno)
{
+ /* Some kernels do not allow us to store fpscr. */
+ if (regno == find_regno ("fpscr"))
+ return 2;
+
return 0;
}