Gentoo Archives: gentoo-dev

From: Martin Schlemmer <azarah@××××××××××××.org>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Replacing cpu-feature USE flags
Date: Fri, 07 Jul 2006 15:35:48
Message-Id: 1152286310.9384.60.camel@lycan.lan
In Reply to: Re: [gentoo-dev] Replacing cpu-feature USE flags by "Diego 'Flameeyes' Pettenò"
1 On Fri, 2006-07-07 at 16:03 +0200, Diego 'Flameeyes' Pettenò wrote:
2 > On Friday 07 July 2006 15:53, Martin Schlemmer wrote:
3 > > Check Chris Gianelloni's mail just now. For some compilers with some
4 > > -march's on x86 it did not explicitly turn on some features (or maybe
5 > > not to such a high extend).
6 > Uh no, I think he meant that for some borderline processors there's not
7 > a -march value, like for Athlon64 Revision D, that has sse3 support. In those
8 > cases you have to use -msse3 or whatever else to tell the compiler what to
9 > generate.
10 >
11 > > So where say CFLAGS="-march=pentium3" would
12 > > work, CFLAGS="-march=pentium3 -msse" would fail to build, or generate
13 > > bad code (segfaulting binaries).
14 > This might have been true with _older_ GCC, but all the series 3.3, 3.4, 4.0
15 > and 4.1 behaves correctly: -march=pentium3 implies -msse without doubt.
16 >
17 > What you might incorrectly remember is -mfpmath=sse that is totally another
18 > thing, and dies usually on bad code anyway, and it's enabled by default on
19 > 64-bit CPUs just because on there the 80-bit limit for doubles is not
20 > pertinent anymore.
21 >
22
23 As I pointed out on irc (to clarify), its still an issue even with
24 gcc-3.4.6. Its just well enough filtered, and as Mike pointed out, they
25 'fixed' it in 3.4.5 via specs, and 3.4.6 by backporting patches from
26 4.0.1 I think.
27
28 > I might seem an idiot, but I have enough experience to know what I'm talking
29 > about. Seems instead that other people confuse SEGFAULT with SIGILL and -msse
30 > with -mfpmath=sse (or simply remember just what happened with GCC 3.2).
31 >
32
33 I did not imply this as far I know, and if it seemed that way, I can
34 only say that I assumed that newer guys had the advantage of most
35 ebuilds filtering or -mno-sse/whatever for known broken stuff (I know
36 xorg was one with a few workarounds, also mozilla, etc at at some
37 stage), so would not have noticed if sse/whatever broke something.
38 That, and not being on the toolchain list you might not be familiar with
39 the extend of the issue, with the fact that its different issues with
40 different versions depending besides that on if its a i586, k6, p2, p3
41 or p4, etc.
42
43 > A little note here: tools improve. GCC 2.95 was a joke, GCC 3.0, 3.1 were
44 > almost unusable, 3.2 started to be usable but full of problems, 3.3/3.4
45 > series improved, drastically.
46 > Stuff like visibility is badly broken up to 4.0, but works fine on 4.1. You
47 > cannot think that a flag or a support will always be broken because a release
48 > had it broken, you have to watch what you're doing to do it correctly.
49 >
50
51 I'd say only 4.0.1 and upwards really solved most of those issues,
52 especially the long comming sse one.
53
54
55 --
56 Martin Schlemmer

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] Replacing cpu-feature USE flags "Diego 'Flameeyes' Pettenò" <flameeyes@g.o>