lkml.org 
[lkml]   [1998]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Support new egcs/pgcc -mpentium(pro) options
On Sun, 13 Dec 1998, Andi Kleen wrote:

> Suggested options for PPro/egcs 1.1:
>
> -O2 -march=pentiumpro -mpentiumpro -fno-gcse

Euhm, read the docs. -march=pentiumpro IMPLIES -mpentiumpro, that is why
I haven't put that in as well. I did not know about the no-gcse thing,
however.

> and remove the -malign-* options, because egcs does now a better job
> at that. -fno-gcse is needed to prevent code bloat and excessive spill
> code on x86 (the global CSE pass does not seem to be well tuned for
> register starved machines like the x86 yet). Also it is less risky, because
> GCSE does a lot of code movement, which might uncover locking bugs (this
> applies if you want a working kernel, if you want to uncover bugs it looks
> different ;)

Besides the -fno-gcse, you should really have a closer look at my patch.
These -malign/-m options are only used if enabled in the config and
should default to off...

> The problem is that gcc 2.7.2 does not understand these new options,
> so the Makefiles have to know which compiler version is being used.

...to circumvent this.

> Now using a CONFIG_* option to select the kernel compiler is rather
> ugly, because the kernel makefile could just check for that itself. For

That would prevent the user from deciding for himself IF he wants to use
these new options.

> that something like autoconf would be needed to determine the characteristics
> of the compilation host (not of the target, because the kernel might be
> cross compiled).

Surely, the thing that matters is the compiling host. If the host does
not support a target feature, we can't have it.

> Alternatives are cheap hacks like:
>
> Makefile.pre
>
> #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8)

Am I missing something here? How can a Makefile know about the compiler?

I am just wondering if this construct can be used to pass the compiler
version to the *config scripts which then could disable the new -m
directives in turn.

> ifdef CONFIG_M686
> # the bug of -fno-strength-reduce is fixed in 2.7.x minor releases,
> # so in theory we could test for that too.

I don't care for 2.6 and older gcc any more. 2.7.2.x are stable.

--
Matthias Andree
--- How to obtain PGP public key
<mandree@dosis.uni-dortmund.de> <<< /finger/ this
<m_andree@line.org> <<< mail, subject "SEND PGP-PUBLIC-KEY"


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:46    [W:0.110 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site