[RFC/TileGX 2/2] fix gdbserver runtime crash

Jiong Wang
2013-09-17T03:24:33Z

[-- Attachment #1: Type: text/plain, Size: 360 bytes --]

TileGX is always 64bit, ptrace always return 64bit data, tilegx32 is
just an ABI.

So the regset size should be regnum * 8 instead of regnum * 4. The
latter cause gdbserver crash.

gdbserver/ChangeLog:

* linux-tile-low.c (tile_regsets): Modify the size field as 64bit for
each register.

please review.

thanks.

---
Regards,
Jiong
Tilera Corporation.

[-- Attachment #2: gdb-02.patch --]
[-- Type: text/x-patch, Size: 531 bytes --]

diff --git a/gdb/gdbserver/linux-tile-low.c b/gdb/gdbserver/linux-tile-low.c
index 8963b9a..8efb34e 100644
--- a/gdb/gdbserver/linux-tile-low.c
+++ b/gdb/gdbserver/linux-tile-low.c
@@ -124,7 +124,7 @@ tile_store_gregset (struct regcache *regcache, const void *buf)

static struct regset_info tile_regsets[] =
{
- { PTRACE_GETREGS, PTRACE_SETREGS, 0, tile_num_regs * 4,
+ { PTRACE_GETREGS, PTRACE_SETREGS, 0, tile_num_regs * 8,
GENERAL_REGS, tile_fill_gregset, tile_store_gregset },
{ 0, 0, 0, -1, -1, NULL, NULL }
};