From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30777 invoked by alias); 8 Jan 2009 09:53:55 -0000 Received: (qmail 30768 invoked by uid 22791); 8 Jan 2009 09:53:54 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from rock.gnat.com (HELO rock.gnat.com) (205.232.38.15) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 08 Jan 2009 09:53:46 +0000 Received: from localhost (localhost.localdomain [127.0.0.1]) by filtered-rock.gnat.com (Postfix) with ESMTP id B3A612A9675; Thu, 8 Jan 2009 04:53:44 -0500 (EST) Received: from rock.gnat.com ([127.0.0.1]) by localhost (rock.gnat.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id LXgCEoTC6kZR; Thu, 8 Jan 2009 04:53:44 -0500 (EST) Received: from joel.gnat.com (localhost.localdomain [127.0.0.1]) by rock.gnat.com (Postfix) with ESMTP id CF4EA2A9656; Thu, 8 Jan 2009 04:53:43 -0500 (EST) Received: by joel.gnat.com (Postfix, from userid 1000) id C7259E7ACD; Thu, 8 Jan 2009 13:53:36 +0400 (RET) Date: Thu, 08 Jan 2009 09:53:00 -0000 From: Joel Brobecker To: Kai Tietz Cc: gdb-patches@sourceware.org Subject: Re: [patch] Reading coff-pe-read files Message-ID: <20090108095336.GP3664@adacore.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.2i Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-01/txt/msg00136.txt.bz2 Hello Kai, > I modified my patch, so that it doesn't need a #if clause anymore. Thanks. This was an excellent suggestion from Pierre and I'm much happier with the new patch. A few comments: First, do you think you could use a different mime type when attaching a patch? I shows up as application/octet-stream which means that my mailer doesn't treat it as text - This means that when I reply, your patch isn't quoted automatically as part of the reply. text/plain would be great. Some people also use some mailers that do not handle base64 encodings. One of them is Mark Kettenis who's still one of our active maintainers, particularly on x86/x86_64. You'll have more chances to get his comments if you use a 7bit ASCII file... Can you also provide a ChangeLog entry when submitting patches? > Index: src/gdb/coff-pe-read.c > =================================================================== > --- src.orig/gdb/coff-pe-read.c > +++ src/gdb/coff-pe-read.c > @@ -191,6 +191,8 @@ read_pe_exported_syms (struct objfile *o > unsigned char *expdata, *erva; > unsigned long name_rvas, ordinals, nexp, ordbase; > char *dll_name; > + int be64 = 0; > + int be32 = 0; Would you mind explaining what "be" stands for? > + if (be64) > + num_entries = pe_get32 (dll, opthdr_ofs + 92 + 16); > + else > + num_entries = pe_get32 (dll, opthdr_ofs + 92); Not knowing the PE format all that well, could you explain these numbers a little? 92 + 16 seems to suggest that the number of entries is no longer at the beginning of some kind of "section" but 16 bytes later. (this is for my education - I tried to find some documentation about the 64bit PE/COFF format, but the only one I found was from MS and it's in a docx format that I can't seem to be able to open with openoffice - I would be very grateful for a PDF) > - export_rva = pe_get32 (dll, opthdr_ofs + 96); > - export_size = pe_get32 (dll, opthdr_ofs + 100); > + if (be64) > + { > + export_rva = pe_get32 (dll, opthdr_ofs + 96 + 16); > + export_size = pe_get32 (dll, opthdr_ofs + 100 + 16); > + } > + else > + { > + export_rva = pe_get32 (dll, opthdr_ofs + 96); > + export_size = pe_get32 (dll, opthdr_ofs + 100); > + } Same here. I trust you that the changes are correct (and in any case only affect x86_64-windows), but I want to understand them a little bit. In the meantime, do you have write access to the GDB project? If not, let's also work on that. I see that you have a copyright assignment already in place, and an account on sourceware.org as well. -- Joel