Re: Compiler opt
[ I am subscribed to the list; there is no reason to Cc. ]
On Sat, 2004-08-28 at 20:25 +0100, Paul Brook wrote:
> On Saturday 28 August 2004 19:55, Karl Hegbloom wrote:
> > On Sat, 2004-08-28 at 12:11 +0200, Sebastian Steinlechner wrote:
> > > On Sat, 2004-08-28 at 02:22, Karl Hegbloom wrote:
> > > > How do I determine the default compiler optimization settings? I'm
> > > > wonder if it will be worth while to try and recompile things like
> > > > python2.3 and python2.3-numeric with '-m64'? Or is '-m64' already the
> > > > default?
> > >
> > > If you're compiling on pure64, then you'll get 64-bit ELFs/libs (so -m64
> > > is the default).
> > Ok. So then -m64 implies -march=k8 ?
> No, but also we want binaries to work on Intel em64t cpus (right?). Using
> -march=k8 would prevent this (by potential use of 3dnow instructions).
Ok, so, at least potentially, recompiling things like libc6, refblas3,
atlas3-base, and linpack3 with '-march=k8 -O3' could provide faster run
times for maths code?
I would assume that the stock amd64 Linux kernel image was built with -
march=k8 already... or is it meant to run on the em64t as well?
Is it correct that both em64t and amd64 have sse2? (Don't quiz me on
what exactly that is yet... I'm a beginner in that area. I'll find it
on my own... unless yous can recommend a good book on the subject?)
> If you're asking for binaries for a particular CPU, this something entirely
> different, and is not specific to AMD64. The same applies to i386 vs i686 vs
> k7, armv4 vs armv5 vs xscale, and probably most other architectures.
Do you know if there are plans to, or any real reason to, create a
What exactly does -m64 buy me?
Without -march=k8, does it only use the legacy i386 register set and
instructions, or does -m64 cause it to use them?
Where is this stuff documented, for my benefit as well as those who grep
this list archive? I did not find satisfactory answers to these
questions in the gcc-3.4-doc 'info'. I've filed a bug, so hopefully it
will end up documented there, where it belongs, and/or in a Debian-amd64
specific README shipped with the compiler.