gcc-4.2.0-20060909 compiles jikes-1.22! very thanks!

2006-09-10 Thread Anny Blackyew
The snapshot gcc-4.2.0-20060909 compiles jikes-1.22. It's OK.

Thanks Andrew Pinski


Obtenga su E-mail GRATUITO en http://www.clanomega.com
___
Get your own Web-based E-mail Service at http://www.zzn.com


Re: libgfortran build broken on Darwin ppc

2006-09-10 Thread Jack Howarth
Eric,
   You definitely want the autoconf patch added
in otherwise builds of libgfortran will crash
when older cctools are used (like Xcode 2.3).
I'll try a build of current gcc trunk with 
your new darwin.c correction but without
the autoconf patch to see if all the literal16
support exists in Xcode 2.4 or if we need
a even newer cctools for that.
  Jack


Re: Branch st/cli opened to host development of CLI back-end

2006-09-10 Thread Gerald Pfeifer
Hi Roberto,

On Thu, 7 Sep 2006, Roberto COSTA wrote:
> following previous discussions in this mailing list and the approval 
> from RMS and the steering committee about a CLI port of gcc, I've opened 
> a development branch to host its development. The branch is st/cli.

would you mind adding a description of that branch (and the rules
governing it) to htdocs/svn.html in our wwwdocs CVS module, alongside
the other development branches?

If you'd like to add a page under htdocs/projects with a longer 
description, that might be a good idea as well (but that part is
optional).

Thanks,
Gerald


Re: Linker scripts

2006-09-10 Thread Segher Boessenkool

GCC passes a linker script to the linker for some
targets (e.g., powerpc-eabi with -mads).  If you specify a
linker script using -Wl,-T,script.ld, you get both
passed to the linker and there may be conflicts.

Is there any option to GCC which says to not pass
the predefined linker script to the linker?


If you use your own linker scripts, you really shouldn't use gcc
to do the linking step; call ld directly, instead.  gcc has no
idea what your linker script does, so it might well call ld with
the wrong options...


Segher



-ftree-vectorize can't vectorize plus?

2006-09-10 Thread Rask Ingemann Lambertsen
   A silly little testcase which the vectorizer doesn't vectorize:

unsigned char qa[128];
unsigned char qb[128];
unsigned char qc[128];
unsigned char qd[128];

void autovectqi (void)
{
int i;

for (i = 0; i < 128; i ++)
qd[i] = qa[i] ^ qb[i] + qc[i];
}

   Revision 116799 with '-O3 -fomit-frame-pointer -S -dp -ftree-vectorize
-march=prescott' produces:

autovectqi:
xorl%edx, %edx  # 54*movsi_xor  [length = 2]
.L2:
movzbl  qb(%edx), %eax  # 20*movqi_1/3  [length = 4]
addbqc(%edx), %al   # 21*addqi_1_lea/2  [length = 3]
xorbqa(%edx), %al   # 23*xorqi_1/1  [length = 3]
movb%al, qd(%edx)   # 24*movqi_1/7  [length = 3]
addl$1, %edx# 26*addsi_1/1  [length = 3]
cmpl$128, %edx  # 27*cmpsi_1_insn/1 [length = 6]
jne .L2 # 28*jcc_1  [length = 2]
ret # 51return_internal [length = 1]


   If I change 'qb[i] + qc[i]' to e.g. 'qb[i] & qc[i]' the vectorizer works
fine.

;; Function autovectqi (autovectqi)
[snip lots of stuff]
autovecttest.c:11: note: Access function of PHI: {0, +, 1}_1
autovecttest.c:11: note: Analyze phi: qd_23 = PHI ;
autovecttest.c:11: note: virtual phi. skip.
autovecttest.c:11: note: === vect_analyze_operations ===
autovecttest.c:11: note: examining phi: ivtmp.28_1 = PHI ;
autovecttest.c:11: note: examining phi: i_24 = PHI ;
autovecttest.c:11: note: examining phi: qd_23 = PHI ;
autovecttest.c:11: note: ==> examining statement: :
autovecttest.c:11: note: irrelevant.
autovecttest.c:11: note: ==> examining statement: D.1860_8 = qa[i_24]
autovecttest.c:11: note: num. args = 4 (not unary/binary op).
autovecttest.c:11: note: vect_is_simple_use: operand qa[i_24]
autovecttest.c:11: note: not ssa-name.
autovecttest.c:11: note: use not simple.
autovecttest.c:11: note: ==> examining statement: D.1861_9 = (signed char) 
D.1860_8
autovecttest.c:11: note: vect_is_simple_use: operand D.1860_8
autovecttest.c:11: note: def_stmt: D.1860_8 = qa[i_24]
autovecttest.c:11: note: type of def: 2.
autovecttest.c:11: note: no optab.
autovecttest.c:11: note: vect_is_simple_use: operand (signed char) D.1860_8
autovecttest.c:11: note: not ssa-name.
autovecttest.c:11: note: use not simple.
autovecttest.c:11: note: not vectorized: relevant stmt not supported: D.1861_9 
= (signed char) D.1860_8
autovecttest.c:11: note: bad operation or unsupported loop bound.
autovecttest.c:11: note: vectorized 0 loops in function.
autovectqi ()
{
  unsigned int ivtmp.28;
  int pretmp.22;
  int i;
  unsigned char D.1867;
  signed char D.1866;
  signed char D.1865;
  unsigned char D.1864;
  unsigned char D.1863;
  unsigned char D.1862;
  signed char D.1861;
  unsigned char D.1860;

:

  # ivtmp.28_1 = PHI ;
  # i_24 = PHI ;
:;
  D.1860_8 = qa[i_24];
  D.1861_9 = (signed char) D.1860_8;
  D.1862_12 = qb[i_24];
  D.1863_15 = qc[i_24];
  D.1864_16 = D.1863_15 + D.1862_12;
  D.1865_17 = (signed char) D.1864_16;
  D.1866_18 = D.1865_17 ^ D.1861_9;
  D.1867_19 = (unsigned char) D.1866_18;
  qd[i_24] = D.1867_19;
  i_21 = i_24 + 1;
  ivtmp.28_2 = ivtmp.28_1 - 1;
  if (ivtmp.28_2 != 0) goto ; else goto ;

:;
  goto  ();

:;
  return;

}
[cut]

-- 
Rask Ingemann Lambertsen


Re: Linker scripts

2006-09-10 Thread Michael Eager

Segher Boessenkool wrote:

GCC passes a linker script to the linker for some
targets (e.g., powerpc-eabi with -mads).  If you specify a
linker script using -Wl,-T,script.ld, you get both
passed to the linker and there may be conflicts.

Is there any option to GCC which says to not pass
the predefined linker script to the linker?


If you use your own linker scripts, you really shouldn't use gcc
to do the linking step; call ld directly, instead.  gcc has no
idea what your linker script does, so it might well call ld with
the wrong options...


There are a number of targets which pass linker scripts
to ld, along with whatever libraries or support files
(like crti.o) are needed.  The spec file insures that
the correct options are passed.

--
Michael Eager[EMAIL PROTECTED]
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077


Re: Linker scripts

2006-09-10 Thread Segher Boessenkool

If you use your own linker scripts, you really shouldn't use gcc
to do the linking step; call ld directly, instead.  gcc has no
idea what your linker script does, so it might well call ld with
the wrong options...


There are a number of targets which pass linker scripts
to ld, along with whatever libraries or support files
(like crti.o) are needed.  The spec file insures that
the correct options are passed.


No it doesn't, it cannot possibly know _what_ the correct options
are, nor whether it should pass library or startup file references.
Sure, for some linker scripts that are close enough to the "standard"
linker scripts, this might work (modulo the bug in the spec file
the original poster seems to hit), but in general, it cannot.

The only way to be sure if calling the linker via GCC when doing
non-standard linking things will work correctly, is to look at all
the arguments that are passed to ld; the only way to make sure it
_will_ work correctly is to pass those arguments yourself, directly
to ld.


Segher



Re: Linker scripts

2006-09-10 Thread Michael Eager

Segher Boessenkool wrote:

If you use your own linker scripts, you really shouldn't use gcc
to do the linking step; call ld directly, instead.  gcc has no
idea what your linker script does, so it might well call ld with
the wrong options...


There are a number of targets which pass linker scripts
to ld, along with whatever libraries or support files
(like crti.o) are needed.  The spec file insures that
the correct options are passed.


No it doesn't, it cannot possibly know _what_ the correct options
are, nor whether it should pass library or startup file references.
Sure, for some linker scripts that are close enough to the "standard"
linker scripts, this might work (modulo the bug in the spec file
the original poster seems to hit), but in general, it cannot.


Sorry, I'm not interested in some theoretical general solution
which might handle every possible linker script.

A linker script passed to the gcc driver should override the one
which the driver would pass by default.  The linker script which is
specified must be, as you say, close enough to the standard script
that things will work correctly.

In the real world, linker scripts may be generated automatically
to describe the memory layout of a board or processor.  There is
no compelling reason to prohibit this *correct* linker script from
being passed to the gcc driver and from there to ld.

--
Michael Eager[EMAIL PROTECTED]
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077


Re: 4.1 status?

2006-09-10 Thread Matthias Klose
Richard Guenther writes:
> On 9/9/06, Mark Mitchell <[EMAIL PROTECTED]> wrote:
> > Kenny Simpson wrote:
> > > What is the status of the 4.1 branch?  Any word on 4.1.2?
> >
> > My current plan is to do a 4.1.2 along with 4.2.0.  My concern has been
> > that with 4.2.0 moving slowly, trying to organize another release might
> > just distract the developer community.
> >
> > However, I realize that's a pretty wide gap between 4.1.1 and 4.1.2.  We
> > could also do 4.1.2 sooner, and then do 4.1.3 along with 4.2.0.  (I want
> > to do a 4.1.x release along with 4.2.0 so as to avoid the problems we
> > have in past with quality "going backwards" between releases from
> > different branches.)
> >
> > I'm sure that, a priori, people would prefer a 4.1.2 release, but it
> > does take effort.  On the other hand, many 4.1 bugs are also in 4.2.
> >
> > Any thoughts?
> 
> With my vendor hat on I'd prefer a 4.1.2 release sooner than I expect
> 4.2.0 - which would make the time we branch for 4.2.0 a good candidate.
> >From a pure GCC development side I do not care very much about
> 4.1.2 (or even 4.0.4 which I don't expect at all).
> 
> I guess a release of 4.1.2 together with branching for 4.2.0 might encourage
> to backport regression fixes from 4.2 to 4.1, as with stage1 starting, 4.1.2
> will get even less attention than 4.2.0.

+1 for a 4.1.2 release when/after the 4.2.0 branch is created.  I'll
propose this release to the Debian release managers to be included
into the upcoming Debian 4.0 release.

  Matthias


Re: Linker scripts

2006-09-10 Thread Daniel Jacobowitz
On Sun, Sep 10, 2006 at 10:16:29PM +0200, Segher Boessenkool wrote:
> >GCC passes a linker script to the linker for some
> >targets (e.g., powerpc-eabi with -mads).  If you specify a
> >linker script using -Wl,-T,script.ld, you get both
> >passed to the linker and there may be conflicts.
> >
> >Is there any option to GCC which says to not pass
> >the predefined linker script to the linker?
> 
> If you use your own linker scripts, you really shouldn't use gcc
> to do the linking step; call ld directly, instead.  gcc has no
> idea what your linker script does, so it might well call ld with
> the wrong options...

This is wrong.  Always use GCC to do the linking.  It's simply
astounding the number of bugs I've seen that were caused by someone
thinking they knew everything they needed to invoke ld correctly;
GCC encapsulates this knowledge.

If some GCC configuration passes some specific option that is wrong,
then that GCC configuration is broken and a bug should be filed.

-- 
Daniel Jacobowitz
CodeSourcery


Re: Linker scripts

2006-09-10 Thread Segher Boessenkool

A linker script passed to the gcc driver should override the one
which the driver would pass by default.


Yes, and if current GCC has some problems with that, those bugs should
be fixed.  Sorry if I gave the impression that this would be "user  
error".



The linker script which is
specified must be, as you say, close enough to the standard script
that things will work correctly.

In the real world, linker scripts may be generated automatically
to describe the memory layout of a board or processor.  There is
no compelling reason to prohibit this *correct* linker script from
being passed to the gcc driver and from there to ld.


As long as those scripts are close enough to the "standard" scripts,
it might/should work fine.

In most cases (as far as I have seen) where people use non-standard
linking scripts though, all bets are off (for more or less obvious
reasons), and those people would be much better of calling ld directly.

I only tried to warn the original poster of the perils involved, I  
didn't

try to draw away the attention from the apparent GCC bug.  I guess
I miserably failed, sorry about that :-)


Segher



gcc algol 60 milestone 1

2006-09-10 Thread Petr Machata
Hi list!

For those interested, GCC Algol 60 project, the byproduct of GCC
Frontend Howto diploma thesis, still lives, and its first milestone is
available:

http://projects.almad.net/gcc-algol/wiki/Milestones

Thanks,
PM


Re: libgfortran build broken on Darwin ppc

2006-09-10 Thread Geoffrey Keating


On 10/09/2006, at 6:48 AM, Jack Howarth wrote:


Eric,
   You definitely want the autoconf patch added
in otherwise builds of libgfortran will crash
when older cctools are used (like Xcode 2.3).


Typically what we do is just say that GCC requires a later version of  
cctools.




smime.p7s
Description: S/MIME cryptographic signature