out of date docs? (alpha/64bit vs. 32bit vs. cross)

2008-10-19 Thread Jay

http://gcc.gnu.org/install/specific.html#alpha-dec-osf

"Note that since the Alpha is a 64-bit architecture, cross-compilers from 
32-bit machines will not generate code as efficient as that generated when the 
compiler is running on a 64-bit machine because many optimizations that depend 
on being able to represent a word on the target in an integral value on the 
host cannot be performed. Building cross-compilers on the Alpha for 32-bit 
machines has only been tested in a few cases and may not work properly. "

This is false lately, eh?
Can it be amended to note what versions it was possibly true for and what 
versions it is definitely false for?
In particular, I /assume/ it is false for any version that uses gmp.

Thanks,
 - Jay


Re: thread build on solaris

2008-10-19 Thread Jonathan Wakely
2008/10/19 Edward Peschko:
>
> That worked (thanks) but exactly why did it work? Shouldn't gcc be
> smart enough to realize that it is working either with a c++ file or
> linking to a c++ library?

http://gcc.gnu.org/onlinedocs/gcc-4.3.2/gcc/Invoking-G_002b_002b.html

"g++ ... automatically specifies linking against the C++ library"

Jonathan


Re: [PATCH]: GMP/MPFR in-tree build instructions [Was: Re: [PATCH]: bump minimum MPFR version, (includes some fortranbits)]

2008-10-19 Thread Gerald Pfeifer
On Tue, 14 Oct 2008, Tobias Schlüter wrote:
> I'll take care of this, provided Gerald approves the change.  Gerald, if 
> you think that copyright is a problem, I'll gladly rephrase it.

Thanks for the change, it looks like a good one.  You may want to make
one or the other adjustment for extra safety, but this should be on the 
harmless side.

Gerald

Re: [PATCH]: GMP/MPFR in-tree build instructions [Was: Re: [PATCH]: bump minimum MPFR version, (includes some fortranbits)]

2008-10-19 Thread Tobias Schlüter

Gerald Pfeifer wrote:

On Tue, 14 Oct 2008, Tobias Schlüter wrote:
I'll take care of this, provided Gerald approves the change.  Gerald, if 
you think that copyright is a problem, I'll gladly rephrase it.


Thanks for the change, it looks like a good one.  You may want to make
one or the other adjustment for extra safety, but this should be on the 
harmless side.


I expanded the patch somewhat, so that the information appears in a 
somewhat more user-friendly place.  See below.


Committed after make info, make dvi and make html succeeded.

Cheers,
- Tobi

2008-10-19  Tobias Schlüter  <[EMAIL PROTECTED]>

* doc/install.texi: Document in-tree building of gcc and mpfr.

Index: install.texi
===
--- install.texi(revision 141230)
+++ install.texi(working copy)
@@ -307,7 +307,9 @@ systems' @command{tar} programs will als
 Necessary to build [EMAIL PROTECTED]  If you do not have it installed in your
 library search path, you will have to configure with the
 @option{--with-gmp} configure option.  See also
[EMAIL PROTECTED] and @option{--with-gmp-include}.
[EMAIL PROTECTED] and @option{--with-gmp-include}.  Alternatively,
+if a GMP source ditribution is found in a subdirectory of you GCC
+sources named @file{gmp}, it will be built together with [EMAIL PROTECTED]
 
 @item MPFR Library version 2.3.2 (or later)
 
@@ -319,8 +321,12 @@ fixed when using this version.  It is st
 to the recommended version of MPFR.
 
 The @option{--with-mpfr} configure option should be used if your MPFR
-Library is not installed in your default library search path.  See
-also @option{--with-mpfr-lib} and @option{--with-mpfr-include}.
+Library is not installed in your default library search path.  See also
[EMAIL PROTECTED] and @option{--with-mpfr-include}.
+Alternatively, if a MPFR source ditribution is found in a subdirectory
+of you GCC sources named @file{mpfr}, it will be built together with
[EMAIL PROTECTED]
+
 
 @item @command{jar}, or InfoZIP (@command{zip} and @command{unzip})
 
@@ -496,6 +502,12 @@ components of the binutils you intend to
 (@file{bfd}, @file{binutils}, @file{gas}, @file{gprof}, @file{ld},
 @file{opcodes}, @dots{}) to the directory containing the GCC sources.
 
+Likewise, the GMP and MPFR libraries can be automatically built together
+with GCC.  Unpack the GMP and/or MPFR source distributions in the
+directory containing the GCC sources and rename their directories to
[EMAIL PROTECTED] and @file{mpfr}, respectively (or use symbolic links with the
+same name).
+
 @html
 
 


Re: thread build on solaris

2008-10-19 Thread Edward Peschko
Eric,

I don't want to be a hair-splitter, but I do think this message does
belong in gcc - it's a question of functionality, and how easy to use
gcc is.

I am trying to move to gcc-4 for its technical improvements, but I'm
finding that it seems to be far less forgiving than gcc-3.

This is having the unfortunate side effect that a lot of packages that
used to compile perfectly fine with gcc-3 are no longer doing so with
gcc-4.

IMO it should be flexible enough to 'do the right thing' when it can.
>From the point of the user, it makes it far more user friendly than
otherwise. Is there a flag,  environmental variable, or some switch
that I can use to make gcc-4 have the older, looser behaviour? (ie: to
be backwards compatible with the large volume of code I compile and
maintain).

Here's another example I'm finding:

Constructs of the form

extern enum vtype iftovt_tab[];

are now failing with forgiving

error: array type has incomplete element type

This would be fine if it was code that I controlled - but the matter
of fact is that this code is in /usr/include/sys/mode.h, which comes
bundled with solaris 10, and the upshot is that I'm going to have to
somehow hack solaris headers in order to make gcc-4.3.2 be able to
compile perl-5.10.0.

Which is just plain wrong.

Ed

On Sun, Oct 19, 2008 at 2:06 AM, Eric Botcazou <[EMAIL PROTECTED]> wrote:
> [This is not appropriate for gcc@, please use [EMAIL PROTECTED]
>
>> That worked (thanks) but exactly why did it work? Shouldn't gcc be
>> smart enough to realize that it is working either with a c++ file or
>> linking to a c++ library?
>
> gcc is the C compiler, use g++ when you're compiling C++, gfortran when you're
> compiling Fortran and so on.
>
> --
> Eric Botcazou
>


Re: thread build on solaris

2008-10-19 Thread Eric Botcazou
> This is having the unfortunate side effect that a lot of packages that
> used to compile perfectly fine with gcc-3 are no longer doing so with
> gcc-4.

The major Linux distributions use GCC 4.x so this should be doable.

> Here's another example I'm finding:
>
> Constructs of the form
>
> extern enum vtype iftovt_tab[];
>
> are now failing with forgiving
>
> error: array type has incomplete element type
>
> This would be fine if it was code that I controlled - but the matter
> of fact is that this code is in /usr/include/sys/mode.h, which comes
> bundled with solaris 10, and the upshot is that I'm going to have to
> somehow hack solaris headers in order to make gcc-4.3.2 be able to
> compile perl-5.10.0.

This should be fix-included if it's really a bug in the Solaris headers.

-- 
Eric Botcazou


Re: [lto][RFC] Do not emit hybrid object files

2008-10-19 Thread Mark Mitchell
David Edelsohn wrote:

>>> I actually think that the hybrid files should be the default.  If you
>>> are willing to make invasive changes to your build environment to
>>> support two files, then you should be willing to add extra options to
>>> support that.

> IBM XLC whole program IPA mode defaults to hybrid files.  One explicitly
> specified -qipa=noobject to avoid emitting standard object files.  Hybrid by
> default follows the rule of least surprise.

I third this suggestion.  I think having the option is very useful, but
I still think hybrid should be the default.  There are lots of reasons
LTO isn't going to work for many users for a while (like, for example, a
bug in LTO), and having hybrid object files gives them an easy way to
succeed.

As with any argument about defaults, it depends on what you think is the
"typical" use case.

-- 
Mark Mitchell
CodeSourcery
[EMAIL PROTECTED]
(650) 331-3385 x713