From 6a5c0a8e2615dae942e84ac3bfe1b9920096e54b Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Mon, 11 Jul 1994 14:45:30 -0600 Subject: [PATCH] pa.h (DEBUGGER_ARG_OFFSET): Define. * pa.h (DEBUGGER_ARG_OFFSET): Define. If no frame pointer is available, then adjust the offset by the size of the current frame. From-SVN: r7713 --- gcc/config/pa/pa.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index f3280771b62..2991f4fb72f 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -140,8 +140,8 @@ extern int target_flags; /* GDB always assumes the current function's frame begins at the value of the stack pointer upon entry to the current function. Accessing - local variables is done using the base of the frame + an offset - provided by GCC. + local variables and parameters passed on the stack is done using the + base of the frame + an offset provided by GCC. For functions which have frame pointers this method works fine; the (frame pointer) == (stack pointer at function entry) and GCC provides @@ -155,6 +155,10 @@ extern int target_flags; ((GET_CODE (X) == PLUS ? INTVAL (XEXP (X, 1)) : 0) \ + (frame_pointer_needed ? 0 : compute_frame_size (get_frame_size (), 0))) +#define DEBUGGER_ARG_OFFSET(OFFSET, X) \ + ((GET_CODE (X) == PLUS ? OFFSET : 0) \ + + (frame_pointer_needed ? 0 : compute_frame_size (get_frame_size (), 0))) + #if (TARGET_DEFAULT & 1) == 0 #define CPP_SPEC "%{msnake:-D__hp9000s700 -D_PA_RISC1_1}\ %{mpa-risc-1-1:-D__hp9000s700 -D_PA_RISC1_1}" -- 2.30.2