mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-02-23 11:04:32 +00:00
2004-10-27 Andrew Cagney <cagney@gnu.org>
* trad-frame.c (trad_frame_get_prev_register): Use frame_unwind_register instead of frame_register_unwind, do not recurse the register's location. * xstormy16-tdep.c (xstormy16_frame_prev_register): * sparc-tdep.c (sparc32_frame_prev_register): Ditto. * sparc64-tdep.c (sparc64_frame_prev_register): Ditto. * sh-tdep.c (sh_frame_prev_register): Ditto. * m68k-tdep.c (m68k_frame_prev_register): Ditto. * i386-tdep.c (i386_frame_prev_register): Ditto. * dwarf2-frame.c (dwarf2_frame_prev_register): Ditto. * amd64-tdep.c (amd64_frame_prev_register): Ditto.
This commit is contained in:
parent
dd891d7edb
commit
00b25ff323
@ -1,3 +1,17 @@
|
||||
2004-10-27 Andrew Cagney <cagney@gnu.org>
|
||||
|
||||
* trad-frame.c (trad_frame_get_prev_register): Use
|
||||
frame_unwind_register instead of frame_register_unwind, do not
|
||||
recurse the register's location.
|
||||
* xstormy16-tdep.c (xstormy16_frame_prev_register):
|
||||
* sparc-tdep.c (sparc32_frame_prev_register): Ditto.
|
||||
* sparc64-tdep.c (sparc64_frame_prev_register): Ditto.
|
||||
* sh-tdep.c (sh_frame_prev_register): Ditto.
|
||||
* m68k-tdep.c (m68k_frame_prev_register): Ditto.
|
||||
* i386-tdep.c (i386_frame_prev_register): Ditto.
|
||||
* dwarf2-frame.c (dwarf2_frame_prev_register): Ditto.
|
||||
* amd64-tdep.c (amd64_frame_prev_register): Ditto.
|
||||
|
||||
2004-10-28 Mark Kettenis <kettenis@jive.nl>
|
||||
|
||||
* proc-events.c: Fix several coding-style issues. Consistently
|
||||
|
@ -898,8 +898,12 @@ amd64_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
return;
|
||||
}
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
}
|
||||
|
||||
static const struct frame_unwind amd64_frame_unwind =
|
||||
|
@ -770,9 +770,12 @@ dwarf2_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
break;
|
||||
|
||||
case DWARF2_FRAME_REG_SAVED_REG:
|
||||
regnum = DWARF2_REG_TO_REGNUM (cache->reg[regnum].loc.reg);
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = DWARF2_REG_TO_REGNUM (cache->reg[regnum].loc.reg);
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
break;
|
||||
|
||||
case DWARF2_FRAME_REG_SAVED_EXP:
|
||||
@ -797,13 +800,21 @@ dwarf2_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
"undefined"). Code above issues a complaint about this.
|
||||
Here just fudge the books, assume GCC, and that the value is
|
||||
more inner on the stack. */
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
break;
|
||||
|
||||
case DWARF2_FRAME_REG_SAME_VALUE:
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
break;
|
||||
|
||||
case DWARF2_FRAME_REG_CFA:
|
||||
|
@ -984,8 +984,12 @@ i386_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
|
||||
if (regnum == I386_EIP_REGNUM && cache->pc_in_eax)
|
||||
{
|
||||
frame_register_unwind (next_frame, I386_EAX_REGNUM,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = I386_EAX_REGNUM;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1018,8 +1022,12 @@ i386_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
return;
|
||||
}
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
}
|
||||
|
||||
static const struct frame_unwind i386_frame_unwind =
|
||||
|
@ -862,8 +862,12 @@ m68k_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
return;
|
||||
}
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
}
|
||||
|
||||
static const struct frame_unwind m68k_frame_unwind =
|
||||
|
@ -2363,8 +2363,12 @@ sh_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
return;
|
||||
}
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -763,8 +763,12 @@ sparc32_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
&& regnum >= SPARC_O0_REGNUM && regnum <= SPARC_O7_REGNUM)
|
||||
regnum += (SPARC_I0_REGNUM - SPARC_O0_REGNUM);
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
}
|
||||
|
||||
static const struct frame_unwind sparc32_frame_unwind =
|
||||
|
@ -544,8 +544,12 @@ sparc64_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
&& regnum >= SPARC_O0_REGNUM && regnum <= SPARC_O7_REGNUM)
|
||||
regnum += (SPARC_I0_REGNUM - SPARC_O0_REGNUM);
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, regnum, valuep);
|
||||
}
|
||||
|
||||
static const struct frame_unwind sparc64_frame_unwind =
|
||||
|
@ -145,9 +145,13 @@ trad_frame_get_prev_register (struct frame_info *next_frame,
|
||||
}
|
||||
else if (trad_frame_realreg_p (this_saved_regs, regnum))
|
||||
{
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realregp = this_saved_regs[regnum].realreg;
|
||||
/* Ask the next frame to return the value of the register. */
|
||||
frame_register_unwind (next_frame, this_saved_regs[regnum].realreg,
|
||||
optimizedp, lvalp, addrp, realregp, bufferp);
|
||||
if (bufferp)
|
||||
frame_unwind_register (next_frame, (*realregp), bufferp);
|
||||
}
|
||||
else if (trad_frame_value_p (this_saved_regs, regnum))
|
||||
{
|
||||
|
@ -712,8 +712,12 @@ xstormy16_frame_prev_register (struct frame_info *next_frame, void **this_cache,
|
||||
return;
|
||||
}
|
||||
|
||||
frame_register_unwind (next_frame, regnum,
|
||||
optimizedp, lvalp, addrp, realnump, valuep);
|
||||
*optimizedp = 0;
|
||||
*lvalp = lval_register;
|
||||
*addrp = 0;
|
||||
*realnump = regnum;
|
||||
if (valuep)
|
||||
frame_unwind_register (next_frame, (*realnump), valuep);
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
x
Reference in New Issue
Block a user