delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2015/09/01/11:49:24

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Date: Tue, 01 Sep 2015 18:49:25 +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: <CAA2C=vBjWACN4ZNsYTeCWXOr9vU9s2s23ZaXvLuCgE=OEWK1Vg@mail.gmail.com>
X-012-Sender: halo1 AT inter DOT net DOT il
To: djgpp AT delorie DOT com
Message-id: <83d1y2cf7e.fsf@gnu.org>
References: <CAA2C=vBjWACN4ZNsYTeCWXOr9vU9s2s23ZaXvLuCgE=OEWK1Vg AT mail DOT gmail 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: Tue, 1 Sep 2015 18:20:56 +0300
> From: "Ozkan Sezer (sezeroz AT gmail DOT com) [via djgpp AT delorie DOT com]" <djgpp AT delorie DOT com>
> 
> 32-bit (i686-linux fedora-9) and 64-bit (x86_64-linux fedora-20) hosted
> djgpp-targeting compiler generates different output for some sources.
> This happens with djgpp source itself too, and it isn't a nice thing
> and was not an expected thing for me. Did the following with gcc-3.4.6:
> 
> Compiled djgpp-cvs with a 32- and 64-bit hosted toolchain (gcc-3.4.6
> and binutils-2.25.1), then did:
> diff -urp --exclude=*.d --exclude=id_*.o --exclude=stub* \
>    --exclude=*.tex --exclude=*.exe --exclude=djasm.c \
>   32/src 64/src > 64.diff
> ... which results in this:

Looks like sign extension and register allocation differences.

GCC 3.4.6 is quite old, could well be a compiler bug.  Maybe it's a
good idea to repeat this experiment with a newer version, like 4.9.x?

Thanks.

- Raw text -


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