Tue Nov 17 11:17:06 1992 Ian Lance Taylor (ian@cygnus.com)
authorIan Lance Taylor <ian@airs.com>
Tue, 17 Nov 1992 21:46:17 +0000 (21:46 +0000)
committerIan Lance Taylor <ian@airs.com>
Tue, 17 Nov 1992 21:46:17 +0000 (21:46 +0000)
commitcdb1cc92142acf359b07ba3e3302d51da162af31
treedb10a169ae362c1a730dbde7b3c09a1c7ebec6be
parent070ee184f7990efe6cc7e34f283458b093911ba1
Tue Nov 17 11:17:06 1992  Ian Lance Taylor  (ian@cygnus.com)

  * tm-rs6000.h (BELIEVE_PCC_PROMOTION): Define, since AIX cc gets
it right.
(aix_framedata): added nosavedpc field.
(SAVED_PC_AFTER_CALL): Don't try to optimize; just call
read_register.
(FRAMELESS_FUNCTION_INVOCATION): Pass second argument of 0.
(FRAME_SAVED_PC): If PC not saved, use SAVED_PC_AFTER_CALL.
* rs6000-tdep.c (skip_prologue): Handle gcc generated stfd
instructions as function_frame_info does.  Expand special case of
st r31,-4(r1) to be st r31,NUM(r1), since gcc can generate offsets
other than -4.
(pop_frame): Add 4 rather than sizeof (int) to avoid host
dependence.
(function_frame_info): Set frameless if the function has no frame,
and set nosavedpc if the PC was not saved.  Handle gcc generated
stfd 31,-4(31); st 31, -12(31) correctly.
(frameless_function_invocation): New second argument pcsaved; if 0
return whether the function has a frame, if 1 return whether the
function saved PC.
(frame_initial_stack_address): Correct typo: cache registers for
callee_fi, not for fi, (avoids reading garbage memory locations).
gdb/ChangeLog
gdb/rs6000-tdep.c
gdb/tm-rs6000.h