This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch]: Dump of .pdata/.xdata for x64 coff


2009/4/20 Dave Korn <dave.korn.cygwin@googlemail.com>:
> Kai Tietz wrote:
>> Hello,
>>
>> I reworked the patch and add some constants, helper macros, and
>> structures for pdata/xdata interpretation to coff/x86_64.h file. So
>> the code gets a bit more clear. Additional I could clarify the
>> unwind_info flag value 3.
>
> ? ?Hi Kai,
>
> ?This is all excellent now, thanks for doing such a great job!
>
>> Tested for x86_64-pc-mingw32 and regression test on i686-pc-cygwin.
>>
>> Ok for apply?
>
> ?... I have a suggestion: since .pdata and .xdata are only features of PE
> targets, shouldn't it work just as well to put the data structures and macros
> into include/coff/pe.h?
>
> ?I've attached a minor respin of your patch, which does this. ?I also tweaked
> a couple of tiny grammar/spelling nits, and I added a bit of constification;
> you have these functions that play a sort of _swap_XXX_in role, so I thought
> it would be nice if they consistently took a const pointer to the raw external
> format data. ?That had a minor knock-on effect via ui->rawUnwindCodes and
> ui->rawScopeEntries, so the outcome was that I made everything below the level
> of pex64_bfd_print_pdata() treat the external data as const. ?Oh, and I found
> an unused file scope version of "struct pex64_scope_entry se;" and removed it.
>
> ?What do you think? ?I tested it on i686-pc-cygwin and cross to
> x86_64-pc-mingw32 without any regressions, and I've kicked off an overnight
> test run against my standard list of 70-or-so random PE and COFF (and just a
> couple of ELF!) targets. ?If you like it, I'll leave it to you to adjust the
> changelog entry when the formal OK is given.
>
> ? ?cheers,
> ? ? ?DaveK
>
>

Hello Dave,

Thanks for going through the language nits ;) To move the definitions
into pe.h is fine for me. I putted it into coff/x86_64.h because they
are x64 dependent only, but pe.h is fine, too.
About the const of the data block. I made it first const, too, like
you did now. I reverted this, because otherwise we would have to
redefine a new structure, when we begin to generate those entries.
Without const we can do without this need. So with the const in
structures I am not that happy here.

Cheers,
Kai

-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]