/* Target-dependent code for the Xtensa port of GDB, the GNU debugger.
- Copyright (C) 2003, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GDB.
{
int winsize = 4; /* Default: No call, e.g. dummy frame. */
int insn;
- char buf[4];
+ gdb_byte buf[4];
DEBUGTRACE ("extract_call_winsize (pc = 0x%08x)\n", (int) pc);
/* Read aliases a0..a15. */
if (regnum >= A0_REGNUM && regnum <= A15_REGNUM)
{
- char *buf = (char *) alloca (MAX_REGISTER_SIZE);
+ gdb_byte *buf = (gdb_byte *) alloca (MAX_REGISTER_SIZE);
regcache_raw_read (regcache, WB_REGNUM, buf);
regnum = AREG_NUMBER (regnum, extract_unsigned_integer (buf, 4));
/* Renumber register, if aliase a0..a15. */
if (regnum >= A0_REGNUM && regnum <= A15_REGNUM)
{
- char *buf = (char *) alloca (MAX_REGISTER_SIZE);
+ gdb_byte *buf = (gdb_byte *) alloca (MAX_REGISTER_SIZE);
unsigned int wb;
regcache_raw_read (regcache, WB_REGNUM, buf);
{
DEBUGTRACE ("xtensa_regset_from_core_section "
"(..., sect_name==\"%s\", sect_size==%x) \n",
- sect_name, sect_size);
+ sect_name, (int) sect_size);
if (strcmp (sect_name, ".reg") == 0
&& sect_size >= sizeof(xtensa_elf_gregset_t))
static CORE_ADDR
xtensa_unwind_pc (struct gdbarch *gdbarch, struct frame_info *next_frame)
{
- char buf[8];
+ gdb_byte buf[8];
DEBUGTRACE ("xtensa_unwind_pc (next_frame = %p)\n", next_frame);
xtensa_unwind_dummy_id (struct gdbarch *gdbarch, struct frame_info *next_frame)
{
CORE_ADDR pc, fp;
- char buf[4];
+ gdb_byte buf[4];
/* next_frame->prev is a dummy frame. Return a frame ID of that frame. */
cache->ws = ws & ~(1 << wb);
}
- cache->pc = ((frame_func_unwind (next_frame) & 0xc0000000)
+ cache->pc = ((frame_func_unwind (next_frame, NORMAL_FRAME) & 0xc0000000)
| (ra & 0x3fffffff));
cache->ps = (ps & ~PS_CALLINC_MASK) | ((WINSIZE(ra)/4) << PS_CALLINC_SHIFT);
struct xtensa_frame_cache *cache =
xtensa_frame_cache (next_frame, this_cache);
- DEBUGTRACE ("xtensa_frame_this_id (next 0x%08x, *this 0x%08x)\n",
- (unsigned int) next_frame, (unsigned int) *this_cache);
+ DEBUGTRACE ("xtensa_frame_this_id (next %p, *this %p)\n",
+ next_frame, *this_cache);
if (cache->prev_sp == 0)
return;
CORE_ADDR saved_reg = 0;
int done = 1;
- DEBUGTRACE ("xtensa_frame_prev_register (next 0x%08x, "
- "*this 0x%08x, regnum %d (%s), ...)\n",
- (unsigned int) next_frame,
- *this_cache? (unsigned int) *this_cache : 0, regnum,
+ DEBUGTRACE ("xtensa_frame_prev_register (next %p, "
+ "*this %p, regnum %d (%s), ...)\n",
+ next_frame,
+ *this_cache ? *this_cache : 0, regnum,
xtensa_register_name (regnum));
if (regnum == WS_REGNUM)
{
int i;
int size, onstack_size;
- char *buf = (char *) alloca (16);
+ gdb_byte *buf = (gdb_byte *) alloca (16);
CORE_ADDR ra, ps;
struct argument_info
{
{
struct value *arg = args[i];
struct type *arg_type = check_typedef (value_type (arg));
- fprintf_unfiltered (gdb_stdlog, "%2d: 0x%08x %3d ",
- i, (int) arg, TYPE_LENGTH (arg_type));
+ fprintf_unfiltered (gdb_stdlog, "%2d: %p %3d ",
+ i, arg, TYPE_LENGTH (arg_type));
switch (TYPE_CODE (arg_type))
{
case TYPE_CODE_INT:
fprintf_unfiltered (gdb_stdlog, "%3d", TYPE_CODE (arg_type));
break;
}
- fprintf_unfiltered (gdb_stdlog, " 0x%08x\n",
- (unsigned int) value_contents (arg));
+ fprintf_unfiltered (gdb_stdlog, " %p\n",
+ value_contents (arg));
}
}
const unsigned char *
xtensa_breakpoint_from_pc (CORE_ADDR *pcptr, int *lenptr)
{
- static char big_breakpoint[] = BIG_BREAKPOINT;
- static char little_breakpoint[] = LITTLE_BREAKPOINT;
- static char density_big_breakpoint[] = DENSITY_BIG_BREAKPOINT;
- static char density_little_breakpoint[] = DENSITY_LITTLE_BREAKPOINT;
+ static unsigned char big_breakpoint[] = BIG_BREAKPOINT;
+ static unsigned char little_breakpoint[] = LITTLE_BREAKPOINT;
+ static unsigned char density_big_breakpoint[] = DENSITY_BIG_BREAKPOINT;
+ static unsigned char density_little_breakpoint[] = DENSITY_LITTLE_BREAKPOINT;
DEBUGTRACE ("xtensa_breakpoint_from_pc (pc = 0x%08x)\n", (int) *pcptr);