This is the mail archive of the
mailing list for the GCC project.
Re: 64 bit gcc?
- To: John Young <j dot e dot young at larc dot nasa dot gov>, tom at tom dot cc dot wayne dot edu
- Subject: Re: 64 bit gcc?
- From: Janis Johnson <janis187 at us dot ibm dot com>
- Date: Thu, 18 Oct 2001 12:50:37 -0700
- Cc: gcc at gcc dot gnu dot org
- References: <3BCEF43A.FB014AC2@larc.nasa.gov>
On Wed, Oct 17, 2001 at 11:09:32AM -0400, Thomas R. Stevenson wrote:
> I'm trying to create a 64-bit version of gcc (3.0.1) for a SunBlade
> 100 with Solaris 8.
> I've tried using sparc64-sun-solaris2.8 and sparcv9-sun-solaris2.8.
> The "configuration" script complains about sparc64-sun-solaris2.8, and
> the "make bootstrap" command fails with the following errors:
> Am I doing something wrong, or can't I create a 64-bit version of gcc
> (3.0.1) for solaris 8 on a SunBlade 100?
On Thu, Oct 18, 2001 at 11:24:42AM -0400, John Young wrote:
> Sorry if this is the wrong place to ask this, but I
> am not sure where to go...
> I was trying to build pidentd and got the message:
> configure: error:
> ERROR: gcc doesn't support 64-bit compilation on 'sparc-sun-solaris2.8'
> Please read the INSTALL file for more information.
> INSTALL says:
> * Some information for Solaris 7 users:
> If you want to run pidentd on a 64-bit kernel, you need to compile with a
> compiler capabable of producing 64-bit binaries. Both gcc 2.8.1 and egcs
> 1.1 cannot do this, so you need to use SunPro C 5.0.
> Is this planned for a future release of gcc?
The question of whether GCC supports 64-bit binaries on sparc comes up
quite frequently. Recently the following text was added to the
"Host/Target Specific Installation Notes" for GCC 3.0:
Starting with Solaris 7, the operating system is capable of executing
64-bit SPARC V9 binaries. GCC 3.0 doesn't properly support this yet.
Although some patches or recipes to enable this support have been posted
to various newsgroups and mailing lists, we recommend against using
them, since the compiler may either crash or, worse, silently generate
bad code. If you really need this capability now, you might try a CVS
version of GCC 3.1, which will fully support this. If all you want is
code tuned for the UltraSPARC CPU, you should try the
-mtune=ultrasparc option instead, which should be safe from
those bugs and produce code that, unlike full 64-bit code, can still run
on non-UltraSPARC machines.
Those notes also include, for both 3.0 and the CVS mainline (and probably
for 2.95, but I haven't looked there):
GCC version 2.95 is not able to compile code correctly for
sparc64 targets. Users of the Linux kernel, at least,
can use the sparc32 program to start up a new shell
invocation with an environment that causes configure to
recognize (via uname -a) the system as sparc-*-* instead.
The new text in the 3.0 installation instructions would be useful to
have in the mainline version as well, since that is the one that is
accessible from the GCC web site and is more likely to be read.
Would it be helpful if the build status lists for GCC 3.0 and 2.95
listed a few would-be popular targets that are explicitly not
Tom and John, where could we have put this information so that you
could have found it easily?