From 8b148df9ac8532b4a7cd0be2fdd011d29037e435 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Mon, 18 Aug 2003 20:04:56 +0000 Subject: Index: ChangeLog 2003-08-18 Andrew Cagney * gdbarch.sh (FRAME_RED_ZONE_SIZE): New architecture method. * gdbarch.h, gdbarch.c: Re-generate. * infcall.c (call_function_by_hand): Adjust the SP by frame_red_zone_size before allocating any stack space. * rs6000-tdep.c (rs6000_gdbarch_init): Set "frame_red_zone_size". * x86-64-tdep.c (x86_64_frame_align): New function. (x86_64_init_abi): Set "frame_red_zone_size" and "frame_align". * x86-64-tdep.c (x86_64_push_arguments): Revert 2003-08-07 change. Remove code adjusting SP so that it skips over the Red Zone. Index: doc/ChangeLog 2003-08-18 Andrew Cagney * gdbint.texinfo (Target Architecture Definition): Document "frame_red_zone_size". --- gdb/doc/ChangeLog | 5 +++++ gdb/doc/gdbint.texinfo | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+) (limited to 'gdb/doc') diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 1c53074..f611a6e 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,8 @@ +2003-08-18 Andrew Cagney + + * gdbint.texinfo (Target Architecture Definition): Document + "frame_red_zone_size". + 2003-08-09 Andrew Cagney * gdb.texinfo (Backtrace): Replace "set/show backtrace-below-main" diff --git a/gdb/doc/gdbint.texinfo b/gdb/doc/gdbint.texinfo index 00c6283..30f3018 100644 --- a/gdb/doc/gdbint.texinfo +++ b/gdb/doc/gdbint.texinfo @@ -3229,6 +3229,24 @@ the direction of stack growth. By default, no frame based stack alignment is performed. +@item int frame_red_zone_size + +The number of bytes, beyond the innermost-stack-address, reserved by the +@sc{abi}. A function is permitted to use this scratch area (instead of +allocating extra stack space). + +When performing an inferior function call, to ensure that it does not +modify this area, @value{GDBN} adjusts the innermost-stack-address by +@var{frame_red_zone_size} bytes before pushing parameters onto the +stack. + +By default, zero bytes are allocated. The value must be aligned +(@pxref{frame_align}). + +The @sc{amd64} (nee x86-64) @sc{abi} documentation refers to the +@emph{red zone} when describing this scratch area. +@cindex red zone + @item DEPRECATED_FRAME_CHAIN(@var{frame}) @findex DEPRECATED_FRAME_CHAIN Given @var{frame}, return a pointer to the calling frame. -- cgit v1.1