[RFC] Add support for printing pdata for x86_64 pe coff objects

Pierre Muller pierre.muller@ics-cnrs.unistra.fr
Tue Dec 23 23:08:00 GMT 2014


Hi Nicholas,

  thanks for the approval...
The problem is that my patch doesn't seem to work correctly anymore :(
This seems at least partially related to your recent fix for 
PR 17512.
  
  Firstly, the check for a zero size is before the
code that I added to support PE object for which size is first zero,
but virtual size must be used instead.
 But even after moving the check, I still get only part
of unwind code, while most is simply replaced by
"Too many unwind codes ("...
messages.

  This happen while simply trying to display pdata from
windres.o just as complied in binutils build directory for
x86_64-w64-mingw32
using cygwin environment.
  It also happens for ./objdump -p ./objdump.exe
which represents a regression as compared to previous behavior.


  Did you test my patch after your commit?
But, after testing, it appears that even pristine git shows the same
problem..

I don't know what I should do...

Pierre


> -----Message d'origine-----
> De : Nicholas Clifton [mailto:nickc@redhat.com]
> Envoyé : mardi 23 décembre 2014 18:40
> À : Pierre Muller; binutils@sourceware.org
> Objet : Re: [RFC] Add support for printing pdata for x86_64 pe coff
> objects
> 
> Hi Pierre,
> 
> > bfd/ChangeLog  entry:
> >
> > 2014-10-01  Pierre Muller  <muller@sourceware.org>
> >
> >          Add support for pdata output for pe coff objects.
> >          * pe-x86_64.c (pex64_bfd_print_pdata): Add external
> >          declaration.
> >          (bfd_pe_print_data): Set macro to pex64_bfd_print_data.
> >          * pei-x86_64.c (pex64_bfd_print_pdata): Changed to
> >          global function. Now handles multiple .pdata sections.
> >          (pex_bfd_print_pdata_section): New static helper function,
> >          using most of old pex_bfd_print_pdata function code, but
> adding
> >          support for coff pe objects, which might have some fields
> >          starting at zero offset.
> >          (pex64_print_all_pdata_sections) : New static helper
> function,
> >          used in call to bfd_map_over_sections inside new
> >          pex66_bfd_print_pdata function.
> >          (bfd_boolean pdata_count): New static variable, used to
> return
> >          bfd_boolean value for pex64_bfd_print_pdata function.
> 
> Approved - please apply.
> 
> Sorry for the long delay in reviewing.
> 
> Cheers
>    Nick



More information about the Binutils mailing list