mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-02-23 11:04:32 +00:00
Fix s390 GNU/Linux gdb and gdbserver builds
Now that gdb/gdbserver compile as C++ programs by default, the s390 GNU/Linux build started failing with: In file included from ../../src/gdb/common/common-defs.h:64:0, from ../../src/gdb/defs.h:28, from ../../src/gdb/s390-linux-nat.c:22: ../../src/gdb/s390-linux-nat.c: In function ‘void fetch_regset(regcache*, int, int, int, const regset*)’: ../../src/gdb/../include/libiberty.h:711:38: error: invalid conversion from ‘void*’ to ‘gdb_byte* {aka unsigned char*}’ [-fpermissive] # define alloca(x) __builtin_alloca(x) ^ ../../src/gdb/s390-linux-nat.c:297:19: note: in expansion of macro ‘alloca’ gdb_byte *buf = alloca (regsize); ^ etc. gdb/ChangeLog: 2016-04-21 Pedro Alves <palves@redhat.com> * s390-linux-nat.c (fetch_regset, store_regset, check_regset): Use void * instead of gdb_byte *. gdb/gdbserver/ChangeLog: 2016-04-21 Pedro Alves <palves@redhat.com> * linux-s390-low.c (s390_collect_ptrace_register) (s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and add casts. (s390_check_regset): Use void * instead of gdb_byte *.
This commit is contained in:
parent
b36cec19e8
commit
3451269c41
@ -1,3 +1,8 @@
|
||||
2016-04-21 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* s390-linux-nat.c (fetch_regset, store_regset, check_regset): Use
|
||||
void * instead of gdb_byte *.
|
||||
|
||||
2016-04-21 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* dwarf2read.c (try_open_dwop_file, open_dwo_file)
|
||||
|
@ -1,3 +1,10 @@
|
||||
2016-04-21 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* linux-s390-low.c (s390_collect_ptrace_register)
|
||||
(s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
|
||||
add casts.
|
||||
(s390_check_regset): Use void * instead of gdb_byte *.
|
||||
|
||||
2016-04-20 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* configure: Renegerate.
|
||||
|
@ -171,7 +171,7 @@ s390_collect_ptrace_register (struct regcache *regcache, int regno, char *buf)
|
||||
{
|
||||
/* Convert 4-byte PSW mask to 8 bytes by clearing bit 12 and copying
|
||||
the basic addressing mode bit from the PSW address. */
|
||||
char *addr = alloca (register_size (regcache->tdesc, regno ^ 1));
|
||||
gdb_byte *addr = (gdb_byte *) alloca (register_size (regcache->tdesc, regno ^ 1));
|
||||
collect_register (regcache, regno, buf);
|
||||
collect_register (regcache, regno ^ 1, addr);
|
||||
buf[1] &= ~0x8;
|
||||
@ -216,8 +216,8 @@ s390_supply_ptrace_register (struct regcache *regcache,
|
||||
{
|
||||
/* Convert 8-byte PSW mask to 4 bytes by setting bit 12 and copying
|
||||
the basic addressing mode into the PSW address. */
|
||||
char *mask = alloca (size);
|
||||
char *addr = alloca (register_size (regcache->tdesc, regno ^ 1));
|
||||
gdb_byte *mask = (gdb_byte *) alloca (size);
|
||||
gdb_byte *addr = (gdb_byte *) alloca (register_size (regcache->tdesc, regno ^ 1));
|
||||
memcpy (mask, buf, size);
|
||||
mask[1] |= 0x8;
|
||||
supply_register (regcache, regno, mask);
|
||||
@ -231,7 +231,7 @@ s390_supply_ptrace_register (struct regcache *regcache,
|
||||
{
|
||||
/* Convert 8-byte PSW address to 4 bytes by truncating, but
|
||||
keeping the addressing mode bit (which was set from the mask). */
|
||||
char *addr = alloca (size);
|
||||
gdb_byte *addr = (gdb_byte *) alloca (size);
|
||||
char amode;
|
||||
collect_register (regcache, regno, addr);
|
||||
amode = addr[0] & 0x80;
|
||||
@ -442,7 +442,7 @@ static unsigned long
|
||||
s390_get_hwcap (const struct target_desc *tdesc)
|
||||
{
|
||||
int wordsize = register_size (tdesc, 0);
|
||||
unsigned char *data = alloca (2 * wordsize);
|
||||
gdb_byte *data = (gdb_byte *) alloca (2 * wordsize);
|
||||
int offset = 0;
|
||||
|
||||
while ((*the_target->read_auxv) (offset, data, 2 * wordsize) == 2 * wordsize)
|
||||
@ -469,7 +469,7 @@ s390_get_hwcap (const struct target_desc *tdesc)
|
||||
static int
|
||||
s390_check_regset (int pid, int regset, int regsize)
|
||||
{
|
||||
gdb_byte *buf = alloca (regsize);
|
||||
void *buf = alloca (regsize);
|
||||
struct iovec iov;
|
||||
|
||||
iov.iov_base = buf;
|
||||
|
@ -294,7 +294,7 @@ static void
|
||||
fetch_regset (struct regcache *regcache, int tid,
|
||||
int regset_id, int regsize, const struct regset *regset)
|
||||
{
|
||||
gdb_byte *buf = alloca (regsize);
|
||||
void *buf = alloca (regsize);
|
||||
struct iovec iov;
|
||||
|
||||
iov.iov_base = buf;
|
||||
@ -318,7 +318,7 @@ static void
|
||||
store_regset (struct regcache *regcache, int tid,
|
||||
int regset_id, int regsize, const struct regset *regset)
|
||||
{
|
||||
gdb_byte *buf = alloca (regsize);
|
||||
void *buf = alloca (regsize);
|
||||
struct iovec iov;
|
||||
|
||||
iov.iov_base = buf;
|
||||
@ -338,7 +338,7 @@ store_regset (struct regcache *regcache, int tid,
|
||||
static int
|
||||
check_regset (int tid, int regset, int regsize)
|
||||
{
|
||||
gdb_byte *buf = alloca (regsize);
|
||||
void *buf = alloca (regsize);
|
||||
struct iovec iov;
|
||||
|
||||
iov.iov_base = buf;
|
||||
|
Loading…
x
Reference in New Issue
Block a user