delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2015/09/02/15:09:06

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Date: Wed, 02 Sep 2015 22:07:27 +0300
From: "Eli Zaretskii (eliz AT gnu DOT org) [via djgpp AT delorie DOT com]" <djgpp AT delorie DOT com>
Subject: Re: different binary output with 32- and 64-bit hosted compilers
In-reply-to: <201509021853.t82Irxko012877@envy.delorie.com>
X-012-Sender: halo1 AT inter DOT net DOT il
To: DJ Delorie <dj AT delorie DOT com>
Cc: djgpp AT delorie DOT com
Message-id: <83zj14abdc.fsf@gnu.org>
References: <CAA2C=vBjWACN4ZNsYTeCWXOr9vU9s2s23ZaXvLuCgE=OEWK1Vg AT mail DOT gmail DOT com> <83d1y2cf7e DOT fsf AT gnu DOT org> <CAA2C=vCu9fjcEDr_3_FLMXoRzuvmXw57zRkwchbYRD1SpqS4NA AT mail DOT gmail DOT com> <ms63dr$3k4$1 AT speranza DOT aioe DOT org> <CAA2C=vABL08je+e-uOpgkSAR+_Zrs80AkAzQEbXUc6CJhOq4AA AT mail DOT gmail DOT com> <83fv2wc2jf DOT fsf AT gnu DOT org> <CAA2C=vDk747gQcYU+j9TL_QFiikkYkcENLYFO1mSSOa7dSv5nA AT mail DOT gmail DOT com> <837fo8byx8 DOT fsf AT gnu DOT org> <201509021853 DOT t82Irxko012877 AT envy DOT delorie DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Date: Wed, 2 Sep 2015 14:53:59 -0400
> From: DJ Delorie <dj AT delorie DOT com>
> 
> > Could someone who feels more at home with assembly please take a look?
> > DJ?
> 
> The difference is in GAS itself, which chooses a longer form of the JE
> opcode here (and no, I can't think of a good reason why):

Perhaps this should be reported to the Binutils maintainers.

> 32:    21d3:	0f 84 47 00 00 00    	je     2220 <_fire_grenade2+0x270>
> 64:    21d3:	74 4b                	je     2220 <_fire_grenade2+0x270>
> 
> There are no other root differences - every other difference is due to
> addresses being different, and even that is limited as an alignment
> shortly after that resynchromizes everything.

Thanks.

So I guess we can conclude that these differences can be disregarded,
at least with a new enough version of GCC.  The fact there are
differences is, of course, an annoyance, but it looks like we will
have to live with that.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019