From 2c517d0eb4a66f872b052972e5a76990efb8cf3f Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Fri, 13 Dec 2002 16:11:32 +0000 Subject: [PATCH] 2002-12-13 Andrew Cagney * frame.c (frame_extra_info_zalloc): New function. * frame.h (frame_extra_info_zalloc): Declare. --- gdb/ChangeLog | 5 +++++ gdb/frame.c | 8 ++++++++ gdb/frame.h | 9 +++++---- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 11e6208b5c6..def947ccdac 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2002-12-13 Andrew Cagney + + * frame.c (frame_extra_info_zalloc): New function. + * frame.h (frame_extra_info_zalloc): Declare. + 2002-12-13 Joel Brobecker * hppa-tdep.c (hppa_pop_frame): Fix a compilation error introduced diff --git a/gdb/frame.c b/gdb/frame.c index 16a8283c46b..4ed66b3c410 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -1209,6 +1209,14 @@ get_frame_extra_info (struct frame_info *fi) return fi->extra_info; } +struct frame_extra_info * +frame_extra_info_zalloc (struct frame_info *fi, long size) +{ + fi->extra_info = frame_obstack_alloc (size); + memset (fi->extra_info, 0, size); + return fi->extra_info; +} + void _initialize_frame (void) { diff --git a/gdb/frame.h b/gdb/frame.h index 1fccc842186..d42780de55c 100644 --- a/gdb/frame.h +++ b/gdb/frame.h @@ -644,11 +644,12 @@ extern void set_current_frame (struct frame_info *); extern struct frame_info *create_new_frame (CORE_ADDR, CORE_ADDR); -/* NOTE: cagney/2002-12-10: - - Let older code access the member `extra_info'. This member is - always initialized during frame creation so is always non-null. */ +/* Create/access the frame's `extra info'. The extra info is used by + older code to store information such as the analyzed prologue. The + zalloc() should only be called by the INIT_EXTRA_INFO method. */ +extern struct frame_extra_info *frame_extra_info_zalloc (struct frame_info *fi, + long size); extern struct frame_extra_info *get_frame_extra_info (struct frame_info *fi); #endif /* !defined (FRAME_H) */ -- 2.30.2