From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32638 invoked by alias); 2 Mar 2014 02:00:16 -0000 Mailing-List: contact crossgcc-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: crossgcc-owner@sourceware.org Received: (qmail 31610 invoked by uid 89); 2 Mar 2014 02:00:13 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,MSGID_FROM_MTA_HEADER,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 X-HELO: blu0-omc3-s34.blu0.hotmail.com Received: from blu0-omc3-s34.blu0.hotmail.com (HELO blu0-omc3-s34.blu0.hotmail.com) (65.55.116.109) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 02 Mar 2014 02:00:11 +0000 Received: from BLU0-SMTP18 ([65.55.116.72]) by blu0-omc3-s34.blu0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675); Sat, 1 Mar 2014 18:00:10 -0800 X-TMN: [/jaP+6N+0+HFymb+uHZ81XQrf5t7rwxU] Message-ID: Received: from DeadDuck.sympatico.ca ([70.30.76.164]) by BLU0-SMTP18.phx.gbl over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Sat, 1 Mar 2014 18:00:09 -0800 From: Bill Pringlemeir To: Grant Edwards CC: crossgcc@sourceware.org Subject: Re: 32-bit host vs 64-bit host References: Date: Sun, 02 Mar 2014 02:00:00 -0000 In-Reply-To: (Grant Edwards's message of "Mon, 24 Feb 2014 21:26:47 +0000 (UTC)") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-IsSubscribed: yes X-SW-Source: 2014-03/txt/msg00000.txt.bz2 On 24 Feb 2014, grant.b.edwards@gmail.com wrote: > Would you expect the two toolchains to produce identical code when > given identical sources? The 64bit host tools can deal with larger files (objects and binaries). This can lead to differences, like it won't link at all with the 32bit version. Even two machines, or the same machine at different times of the year may make different binaries. We had one machine that the build person insisted on re-compiling and the binary was suppose to have a known hash. One day, the compiler changed the register allocation. The generated code was identical, it just moved things to a different set of registers to accomplish the same thing. It was effectively equivalent in all respects, but the known hash was wrong. This was with an older gcc released by some organization (not crosstool-ng) Also, I believe that some of this depends on the options used (-frandom-seed, etc). Ie, there maybe some sets of options where the binary may remain the same and others where it won't. I build both sets of compilers. An i686 and x86_64 host with ARM926 target using crosstool-ng. No one has ever noted a difference, except some very large links only work on the 64bit version. https://wiki.debian.org/ReproducibleBuilds I would expect the binaries to be different. I would also expect that the binary differences won't matter in 99% to 100% of the cases. Fwiw, Bill Pringlemeir. -- For unsubscribe information see http://sourceware.org/lists.html#faq