1 |
On Mon, Nov 28, 2011 at 1:56 PM, Florian Philipp <lists@×××××××××××.net> wrote: |
2 |
> Am 28.11.2011 18:56, schrieb Michael Mol: |
3 |
>> On Mon, Nov 28, 2011 at 11:46 AM, Pandu Poluan <pandu@××××××.info> wrote: |
4 |
>> No, you've got some ugly flags in there. -fexcess-precision and |
5 |
>> -funsafe-math-optimizations, in particular. (I must have been talking |
6 |
>> to someone else last week; sorry, I'm terrible with names.) |
7 |
>> |
8 |
> |
9 |
> I doubt -fexcess-precision=fast does anything at all. Pandu uses an |
10 |
> AMD64 system, right? Then you have -mfpmath=sse set per default and SSE |
11 |
> does not have excess precision issues (that's just for the old x87 FPU). |
12 |
> Even if you used that, is redundant because of your other flags. To |
13 |
> quote `man gcc`: |
14 |
> "-fexcess-precision=standard is not implemented for languages other than |
15 |
> C, and has no effect if -funsafe-math-optimizations or -ffast-math is |
16 |
> specified." <-- Therefore you always have ..=fast anyway. |
17 |
> |
18 |
> -funsafe-math-optimizations is really terrible. Either you us floating |
19 |
> point arithmetic, then you have to rely on it because it is hard enough |
20 |
> already to gain necessary precision with it, or you don't, then you |
21 |
> don't need that flag because it doesn't improve performance. |
22 |
|
23 |
I didn't know (or forgot) what arch he was using. |
24 |
|
25 |
>> -fomit-frame-pointer shouldn't cause any headaches unless you're |
26 |
>> feeding a gdb stack trace, and you're not adding any debugging data, |
27 |
>> so your stack traces would be pretty useless, anyway. |
28 |
>> |
29 |
> |
30 |
> If you are on an AMD64 system, this flag is implied because it doesn't |
31 |
> affect stack traces on x86_64 anymore. |
32 |
|
33 |
AMD64 puts the requisite data in its own register, right? |
34 |
|
35 |
Yeah, it sounds like Pandu's setup CFLAGS can use some cleanup. |
36 |
|
37 |
>> I don't know about -floop-interchange, -floop-strip-mine or |
38 |
>> -floop-block. I recognize at least one of them from the discussion of |
39 |
>> graphite the other day. |
40 |
>> |
41 |
> |
42 |
> These definitely need graphite to have any effect. Then they should be |
43 |
> reasonably safe (as far as anything relying on experimental compiler |
44 |
> frameworks can be considered safe). |
45 |
|
46 |
Upstream devs might take issue with them, but I'm still not sure they |
47 |
should affect bug reports of build-time failures. I would *hope* |
48 |
upstream gcc is doing tests on its own build tools compiled with its |
49 |
graphite optimizations. I don't know about make and autotools, though. |
50 |
|
51 |
-- |
52 |
:wq |