[RFA] eh_frame handling

Elena Zannoni ezannoni@redhat.com
Mon May 20 18:10:00 GMT 2002


Michal Ludvig writes:
 > Michal Ludvig wrote:
 > > Hi all,
 > > these changes will allow backtrace even through objects without 
 > > debug_frame section. Note that gcc must produce all information 
 > > necessary in eh_frame (perhaps -fasynchronous-unwind-tables flag?).
 > > 
 > > 2002-05-14  Michal Ludvig  <mludvig@suse.cz>
 > >         * dwarf2cfi.c (frame_state_for): Added safety check for a valid
 > >         fde->cie_ptr.
 > >         (dwarf2_build_frame_info): Added handling for eh_frame.
 > 
 > I have slightly rewritten finding the appropriate CIE for a given FDE so 
 > that it counts with multiple objfiles now.
 > 
 > Any comments? Can I commit?
 > 
 > Michal Ludvig
 > -- 
 > * SuSE CR, s.r.o     * mludvig@suse.cz
 > * +420 2 9654 5373   * http://www.suse.cz
 > Index: dwarf2cfi.c
 > ===================================================================
 > RCS file: /cvs/src/src/gdb/dwarf2cfi.c,v
 > retrieving revision 1.5
 > diff -c -3 -p -r1.5 dwarf2cfi.c
 > *** dwarf2cfi.c	14 May 2002 08:24:26 -0000	1.5
 > --- dwarf2cfi.c	15 May 2002 13:59:06 -0000
 > *************** frame_state_for (struct context *context
 > *** 802,812 ****
 >     context->args_size = 0;
 >     context->lsda = 0;
 >   
 > !   if ((fde = get_fde_for_addr (context->ra - 1)) != NULL)
 > !     {
 > !       fs->pc = fde->initial_location;
 >   
 >         cie = fde->cie_ptr;
 >         fs->code_align = cie->code_align;
 >         fs->data_align = cie->data_align;
 >         fs->retaddr_column = cie->ra;
 > --- 802,816 ----
 >     context->args_size = 0;
 >     context->lsda = 0;
 >   
 > !   if ((fde = get_fde_for_addr (context->ra - 1)) == NULL)
 > !     return;
 > !   

We shouldn't be using assignments inside conditions. Could you split
this up?

The rest is approved.

I have a general question about this file. There are basically no
comments in it, would it be possible to add something here and there
to help figure out what's going on?

Thanks
Elena



More information about the Gdb-patches mailing list