From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3971 invoked by alias); 4 Jun 2003 00:27:19 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 3820 invoked from network); 4 Jun 2003 00:27:16 -0000 Received: from unknown (HELO takamaka.act-europe.fr) (142.179.108.108) by sources.redhat.com with SMTP; 4 Jun 2003 00:27:16 -0000 Received: by takamaka.act-europe.fr (Postfix, from userid 507) id BCA00D2DAF; Tue, 3 Jun 2003 17:27:02 -0700 (PDT) Date: Wed, 04 Jun 2003 00:27:00 -0000 From: Joel Brobecker To: gdb-patches@sources.redhat.com Subject: [RFC/RFA/frame stuff] Fix build failure in alpha-osf1-tdep.c Message-ID: <20030604002702.GP919@gnat.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="6Nae48J/T25AfBN4" Content-Disposition: inline User-Agent: Mutt/1.4i X-SW-Source: 2003-06/txt/msg00154.txt.bz2 --6Nae48J/T25AfBN4 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-length: 832 This is the second source of problems in alpha-osf-tdep.c: The frame_info structure has become opaque, but this file still had some references to its old fields. Looking at the documentation in frames.h (very useful, btw), it seems that the following change should be correct. Andrew, could you have a close look (I am unable to test it, as I have a 3rd build failure, which I will report shortly)? Regardless of your review, I will NOT commit this change until have I have full build that I can test. 2003-06-03 J. Brobecker * alpha-osf1-tdep.c (alpha_osf1_skip_sigtramp_frame): Replace references to struct frame_info fields by calls to the equivalent accessors. Necessary now that frame_info is opaque. (alpha_osf1_pc_in_sigtramp): Likewise. Looks ok? Thanks, -- Joel --6Nae48J/T25AfBN4 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="frames.diff" Content-length: 1105 Index: alpha-osf1-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/alpha-osf1-tdep.c,v retrieving revision 1.12 diff -u -3 -p -r1.12 alpha-osf1-tdep.c --- alpha-osf1-tdep.c 3 Jun 2003 23:49:32 -0000 1.12 +++ alpha-osf1-tdep.c 4 Jun 2003 00:19:41 -0000 @@ -37,7 +37,7 @@ alpha_osf1_skip_sigtramp_frame (struct f find_pc_partial_function (pc, &name, (CORE_ADDR *) NULL, (CORE_ADDR *) NULL); if (PC_IN_SIGTRAMP (pc, name)) - return frame->frame; + return get_frame_base (frame); return 0; } @@ -50,8 +50,12 @@ alpha_osf1_pc_in_sigtramp (CORE_ADDR pc, static CORE_ADDR alpha_osf1_sigcontext_addr (struct frame_info *frame) { - return (read_memory_integer (frame->next ? frame->next->frame - : frame->frame, 8)); + struct frame_info *next_frame = get_next_frame (frame); + + if (next_frame != NULL) + return (read_memory_integer (get_frame_base (next_frame), 8)); + else + return (read_memory_integer (get_frame_base (frame), 8)); } /* This is the definition of CALL_DUMMY_ADDRESS. It's a heuristic that is used --6Nae48J/T25AfBN4--