This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See crosstool-NG for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
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
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |