Yasm and bad Windows executables using Mingw/ld

Peter Johnson peter at tortall.net
Wed Dec 13 23:40:25 PST 2006


On Wed, 13 Dec 2006, Peter Tanski wrote:
> On Dec 13, 2006, at 2:11 PM, Peter Johnson wrote:
>
>> On Tue, 12 Dec 2006, Peter Tanski wrote:
>>> For compatibility with binutils/ld, which loads .comment sections into 
>>> memory (invalid in PE-COFF files), and since the section must be read 
>>> only, GAS outputs the .comment section to a specially named ".rdata" 
>>> section: ".rdata$zzz".
>>> 
>>> So modification would only be necessary for compatibility with 
>>> binutils/ld. I can look into modifications to Yasm to save you some time; 
>>> I am not sure whether you would *want* to modify Yasm's output just for 
>>> compatibility with binutils/ld, unless that was specified by a different 
>>> output format than win32.
>> 
>> I'll go ahead and handle it for compatibility's sake.  It makes it 
>> significantly easier that it comes in through the .ident directive (I 
>> should have guessed that was the case).
>> 
>> Thanks for tracking down the cause.  I'll take care of getting it patched 
>> in Yasm.
>
> No problem: I'm glad I could help :)  Thanks for patching Yasm.

Fix committed in r1712 (now Yasm mimics the GAS behavior on Win32 of 
putting the .ident data into a .rdata$zzz section).

Thanks,
Peter


More information about the yasm-devel mailing list