mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-20 18:08:24 +08:00
* Patches from Jeffrey Law <law@cs.utah.edu>.
* gdb/hppa-tdep.c (frame_chain_valid): If "use_unwind" is true, then use unwind descriptors to determine if the frame chain is valid.
This commit is contained in:
@ -1,6 +1,8 @@
|
|||||||
Wed May 5 15:16:33 1993 Stu Grossman (grossman@cygnus.com)
|
Wed May 5 15:16:33 1993 Stu Grossman (grossman@cygnus.com)
|
||||||
|
|
||||||
* Patches from Jeffrey Law <law@cs.utah.edu>.
|
* Patches from Jeffrey Law <law@cs.utah.edu>.
|
||||||
|
* gdb/hppa-tdep.c (frame_chain_valid): If "use_unwind" is true, then
|
||||||
|
use unwind descriptors to determine if the frame chain is valid.
|
||||||
* gdb/hppa-tdep.c (find_dummy_frame_regs): Rework so that
|
* gdb/hppa-tdep.c (find_dummy_frame_regs): Rework so that
|
||||||
it does not assume %r4 is the frame pointer.
|
it does not assume %r4 is the frame pointer.
|
||||||
* gdb/hppa-pinsn.c (print_insn): Handle 'r' and 'R' for break, rsm,
|
* gdb/hppa-pinsn.c (print_insn): Handle 'r' and 'R' for break, rsm,
|
||||||
|
@ -437,13 +437,28 @@ frame_chain_valid (chain, thisframe)
|
|||||||
if (!chain)
|
if (!chain)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
msym = lookup_minimal_symbol_by_pc (FRAME_SAVED_PC (thisframe));
|
if (use_unwind)
|
||||||
|
{
|
||||||
|
|
||||||
if (msym
|
struct unwind_table_entry *u;
|
||||||
&& (strcmp (SYMBOL_NAME (msym), "_start") == 0))
|
|
||||||
return 0;
|
u = find_unwind_entry (thisframe->pc);
|
||||||
|
|
||||||
|
if (u && (u->Save_SP || u->Total_frame_size))
|
||||||
|
return 1;
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
return 1;
|
{
|
||||||
|
msym = lookup_minimal_symbol_by_pc (FRAME_SAVED_PC (thisframe));
|
||||||
|
|
||||||
|
if (msym
|
||||||
|
&& (strcmp (SYMBOL_NAME (msym), "_start") == 0))
|
||||||
|
return 0;
|
||||||
|
else
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user