* sparc-tdep.c, lynx-nat.c, config/sparc/tm-sparc.h,
config/sparc/tm-sparclynx.h: Move defs of FRAME_SAVED_I0/L0 to tm-sparc.h so they can be overridden if necessary.
This commit is contained in:
parent
eae821453c
commit
8bf94f44bc
5 changed files with 37 additions and 15 deletions
|
@ -346,10 +346,18 @@ CORE_ADDR sparc_frame_chain ();
|
|||
#define FRAMELESS_FUNCTION_INVOCATION(FI, FRAMELESS) \
|
||||
(FRAMELESS) = frameless_look_for_prologue(FI)
|
||||
|
||||
/* The location of I0 w.r.t SP. This is actually dependent on how the system's
|
||||
window overflow/underflow routines are written. Most vendors save the L regs
|
||||
followed by the I regs (at the higher address). Some vendors get it wrong.
|
||||
*/
|
||||
|
||||
#define FRAME_SAVED_L0 0
|
||||
#define FRAME_SAVED_I0 (8 * REGISTER_RAW_SIZE (L0_REGNUM))
|
||||
|
||||
/* Where is the PC for a specific frame */
|
||||
|
||||
#define FRAME_SAVED_PC(FRAME) frame_saved_pc (FRAME)
|
||||
CORE_ADDR frame_saved_pc ();
|
||||
#define FRAME_SAVED_PC(FRAME) sparc_frame_saved_pc (FRAME)
|
||||
CORE_ADDR sparc_frame_saved_pc ();
|
||||
|
||||
/* If the argument is on the stack, it will be here. */
|
||||
#define FRAME_ARGS_ADDRESS(fi) ((fi)->frame)
|
||||
|
|
|
@ -25,4 +25,12 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||
/* Use generic Sparc definitions. */
|
||||
#include "sparc/tm-sparc.h"
|
||||
|
||||
/* Lynx does this backwards from everybody else */
|
||||
|
||||
#undef FRAME_SAVED_I0
|
||||
#undef FRAME_SAVED_L0
|
||||
|
||||
#define FRAME_SAVED_I0 0
|
||||
#define FRAME_SAVED_L0 (8 * REGISTER_RAW_SIZE (I0_REGNUM))
|
||||
|
||||
#endif /* TM_SPARCLYNX_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue