On Tue, 4 May 2010, Jonas Maebe wrote:
On 04 May 2010, at 12:51, Michael Van Canneyt wrote:
The i386 version of the compiler is simply much more optimized as the 64-bit
version (as are all FPC-generated binaries).
That was true pre-2.4.0, but as of 2.4.0 the assembler optimiser is no longer
enabled by default on i386 (and it didn't make that big of a difference in
previous versions either). There are still some more peephole optimisations for
i386, but I don't think the i386 code that FPC generates is that much more
optimised than that for x86_64 at this point (or even PowerPC, for that matter).
And as far as the speed of the compiler binary is concerned depending on
whether it consists of i386 or x86_64 machine code (using -a -s so that the
speed of the external assembler is not included):
i386->i386 compiler compiling itself:
user 0m8.180s
sys 0m0.694s
x86-64->i386 compiler compiling itself:
user 0m8.096s
sys 0m0.736s
So at least on Mac OS X there is no real speed difference between the two.
Hm.
On Linux, there was a major difference between i386 and x64_64
compilers when running a "make cycle'. But I admit that my last
test was definitely from before 2.4.0.
Michael.
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel