This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Implicit altivec vs. linux kernel build
- From: David Edelsohn <dje at watson dot ibm dot com>
- To: Benjamin Herrenschmidt <benh at kernel dot crashing dot org>, Geoff Keating <geoffk at geoffk dot org>
- Cc: gcc at gcc dot gnu dot org, Paul Mackerras <paulus at samba dot org>, Alan Modra <amodra at bigpond dot net dot au>
- Date: Sun, 27 Feb 2005 17:53:58 -0500
- Subject: Re: Implicit altivec vs. linux kernel build
- References: <1109544228.15026.225.camel@gaston>
>>>>> Benjamin Herrenschmidt writes:
Ben> There seem to be a problem with gcc 4.0 and implicit generation of
Ben> altivec instructions when -mcpu=970.
Ben> The problem is that the kernel cannot afford to use altivec instructions
Ben> (nor FPU) except in controlled environment. Specifically, things like
Ben> the RAID6 code has altivec (and SSE/2, which I think has a similar
Ben> problem) implementation which runs in the proper environment.
Ben> In order to build that, we have -mcpu=970. Unfortunately, with 4.0, that
Ben> causes gcc to implicitely generate altivec code, which breaks it all.
Geoff made the decision to enable Altivec implicitly for
processors that support it and to use Altivec for block moves. We need to
find out what he had in mind for situations like this.
One work around is to use -mcpu=power4 instead of -mcpu=970, to
avoid enabling Altivec when compiling kernel code.
David