From 63d7a4f12e71aae081676e4d15b615cc9709289c Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Mon, 7 Dec 1998 20:28:54 +0000 Subject: * rs6000-tdep.c (pop_frame): Correctly find the registers saved in the stack frame. Their offset from the previous stack frame is in fdata.gpr_offset and fdata.fpr_offset, not fdata.offset. (gdb.base/return.exp) * config/rs6000/tm-rs6000.h: Doc fixes. --- gdb/config/rs6000/tm-rs6000.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'gdb/config/rs6000') diff --git a/gdb/config/rs6000/tm-rs6000.h b/gdb/config/rs6000/tm-rs6000.h index 339d8a8..0ea9bf6 100644 --- a/gdb/config/rs6000/tm-rs6000.h +++ b/gdb/config/rs6000/tm-rs6000.h @@ -66,14 +66,16 @@ struct fp_status { /* To be used by skip_prologue. */ struct rs6000_framedata { - int offset; /* # of bytes in gpr's and fpr's are saved */ + int offset; /* total size of frame --- the distance + by which we decrement sp to allocate + the frame */ int saved_gpr; /* smallest # of saved gpr */ int saved_fpr; /* smallest # of saved fpr */ int alloca_reg; /* alloca register number (frame ptr) */ char frameless; /* true if frameless functions. */ char nosavedpc; /* true if pc not saved. */ - int gpr_offset; /* offset of saved gprs */ - int fpr_offset; /* offset of saved fprs */ + int gpr_offset; /* offset of saved gprs from prev sp */ + int fpr_offset; /* offset of saved fprs from prev sp */ int lr_offset; /* offset of saved lr */ int cr_offset; /* offset of saved cr */ }; @@ -149,7 +151,7 @@ extern void aix_process_linenos PARAMS ((void)); /* Stack grows downward. */ -#define INNER_THAN < +#define INNER_THAN(lhs,rhs) ((lhs) < (rhs)) /* This is how arguments pushed onto stack or passed in registers. Stack must be aligned on 64-bit boundaries when synthesizing -- cgit v1.1