Danilo José | 1 Oct 02:12 2004

Re: problem creating a static library

Hi!

  I have tested to do the thing you recommended me to
 do the ld -r *.o -o new.o

  Then I have done the library libgol.a using the new.o.

  And what happens is that I get still 4 undefined symbols:

 ___Q23golt13ObjAppendList1ZPQ23gol14CalcBinderDatalPCPB1
___Q23golt13ObjAppendList1ZblPCb
___ls__Q23golt13ObjAppendList1ZPQ23gol14CalcBinderDataRCPB1
___ls__Q23golt13ObjAppendList1ZbRCb

  When I apply the c++filt to them, it gets me the next output.

  0005169c s gol::ObjAppendList<gol::CalcBinderData *>::ObjAppendList(long,
gol *const *)
  0005177c s gol::ObjAppendList<bool>::ObjAppendList(long, bool const *)
  00051484 s gol::ObjAppendList<gol::CalcBinderData *>::operator<<(gol
*const &)
  000515b4 s gol::ObjAppendList<bool>::operator<<(bool const &)

  But the others undefined symbols have disappeared.
  But I can't still do the executable.

  The .s files I do not think it will be a good approach, because I need to
deliver this makefile to build the libgol.a, so others could use it.

  As far as I know the problem with this is that it has the flag 's' if it
(Continue reading)

Ian Lance Taylor | 1 Oct 02:30 2004

Re: [RFC] autopinger

"Giovanni Bajo" <giovannibajo <at> libero.it> writes:

> I'm shortly sending a first test of my autopinger script for pending patches to
> gcc-patches <at> . Any comments are welcome. The plan would be running it weekly.

For each PR, if the PR is assigned to somebody, I recommend that you
mention that person in the list.  Perhaps the patch pinger should CC
those people; perhaps not.

I also think the message should list the priority, the target
milestone, and the "known to work" and "known to fail" fields.  That
will let people more easily prioritize the information in the message
without having to go look at the PR.

Thanks for doing this.

Ian

Mike Stump | 1 Oct 02:35 2004
Picon

Re: problem creating a static library

On Sep 30, 2004, at 5:12 PM, Danilo José wrote:
>   And what happens is that I get still 4 undefined symbols:
>
>  ___Q23golt13ObjAppendList1ZPQ23gol14CalcBinderDatalPCPB1
> ___Q23golt13ObjAppendList1ZblPCb
> ___ls__Q23golt13ObjAppendList1ZPQ23gol14CalcBinderDataRCPB1
> ___ls__Q23golt13ObjAppendList1ZbRCb

:-(

>   The .s files I do not think it will be a good approach, because I 
> need to
> deliver this makefile to build the libgol.a, so others could use it.

You misunderstand.  You can do

gcc foo.c -S; sed 's/notoc,//' <foo.s >foo1.s; gcc foo1.s -o foo.o

if you wanted in the makefile, not the mot pleasant of things to do, 
but not that hard either.

>   As far as I know the problem with this is that it has the flag 's' 
> if it
> were 'S' it would work. So is there any way to get the 'S' flag, with a
> makefile.

-fexport-coalesced with the 3.3 compiler, if you had to do this with 
the gcc2 compiler, sed 's/private_extern/globl/'...  :-(

(Continue reading)

Ian Lance Taylor | 1 Oct 02:39 2004

Re: [non-GCC] Writing a compiler-backend for Linux/PowerPC

Suriya Narayanan M S <suriya <at> cs.utexas.edu> writes:

> Could someone point me to some (authoritative) documents on writing a
> compiler/backend for Linux on PowerPC. I have the ISA manual. But I would
> like to have some information about the ABI for Linux (does Linux follow
> the System V ABI ?).

Linux usually more or less follows the SVR4 ABI.  For 64-bit PowerPC,
the ABI is here:
    http://www.linuxbase.org/spec/ELF/ppc64/PPC-elf64abi-1.7.html

Ian

Jerry Quinn | 1 Oct 02:41 2004
Picon

Re: AIX bootstrap failure

David Edelsohn wrote:
>>>>>>jlquinn  writes:
> 
> 
> jlquinn> I updated the tree (no local patches), and reconfigured and bootstrapped mainline.  The config is:
> jlquinn> ../gcc/configure   --prefix=/home/jlquinn/gcc/dev --with-cpu=power4
--with-gcc-version-trigger=/home/jlquinn/gcc/dev/gcc/gcc/version.c --enable-languages=c,c++,java
> 
> jlquinn> This is on AIX 5.2 pl 3, using xlc.
> 
> jlquinn> Bootstrap comparison failure!
> jlquinn> ./fold-const.o differs
> 
> 	I bootstrap with GCC, not XLC, and I have been bootstrapping
> successfully with a few local patches, but nothing that should affect
> this type of failure.
> 
> 	My local patches include a declaration of atoll(), which exists on
> AIX 5.2 but not AIX 5.1, and the header cache from GCC built on AIX 5.1
> causes problems.  The other patch adds -Wl,-bbigtoc to work around a
> recently re-introduced TOC overflow, which I am surprised that you did not
> encounter.
> 
> 	The stage1 compiler has been known to cause bootstrap miscompares,
> but it is very rare.

I refreshed today and got the same bootstrap comparison failure again 
with xlc.  Should I file a bug or is bootstrapping from xlc not going to 
be supported in the future.

(Continue reading)

Danilo José | 1 Oct 03:05 2004

Re: problem creating a static library


> -fexport-coalesced with the 3.3 compiler, if you had to do this with
> the gcc2 compiler, sed 's/private_extern/globl/'...  :-(

could you explain me a little more how to do that last line?
  I have not understood this exactly what should I do here?
  Sorry my level of unix is not very good.
 I must do it with the gcc2 compiler.
 Thanks a lot

----- Original Message ----- 
From: "Mike Stump" <mrs <at> apple.com>
To: "Danilo José" <danilo.guerrero <at> deimos-space.com>
Cc: <gcc <at> gcc.gnu.org>
Sent: Friday, October 01, 2004 2:35 AM
Subject: Re: problem creating a static library

> On Sep 30, 2004, at 5:12 PM, Danilo José wrote:
> >   And what happens is that I get still 4 undefined symbols:
> >
> >  ___Q23golt13ObjAppendList1ZPQ23gol14CalcBinderDatalPCPB1
> > ___Q23golt13ObjAppendList1ZblPCb
> > ___ls__Q23golt13ObjAppendList1ZPQ23gol14CalcBinderDataRCPB1
> > ___ls__Q23golt13ObjAppendList1ZbRCb
>
> :-(
>
> >   The .s files I do not think it will be a good approach, because I
> > need to
> > deliver this makefile to build the libgol.a, so others could use it.
(Continue reading)

Giovanni Bajo | 1 Oct 03:11 2004
Picon

Re: [RFC] autopinger

Ian Lance Taylor wrote:

> For each PR, if the PR is assigned to somebody, I recommend that you
> mention that person in the list.  Perhaps the patch pinger should CC
> those people; perhaps not.

The pinger attempts to find out the "author" of the patch. The first choice is
the author of the mail to gcc-patches; the second choice is the assigned field
in Bugzilla. As a matter of fact, right now I only post patches which have an
associated mail to gcc-patches, so the second choice is never taken. It would
become useful when/if I am asked to make it ping also patches attacched to
Bugzilla, which some people don't like because it violates our rules that each
patch should be posted to gcc-patches[1].

This said, do you believe that explicitally.listing the assignee of the bug
together with the "author" of the patch (mail sender) is still useful? What
would the rationale be?

> I also think the message should list the priority, the target
> milestone, and the "known to work" and "known to fail" fields.  That
> will let people more easily prioritize the information in the message
> without having to go look at the PR.

Sure, I will imlement these. I'm assuming that for "priority" you actually mean
"severity", since we are not using the priority field at this point.

Thanks for the feedback.

Giovanni Bajo

(Continue reading)

Mike Stump | 1 Oct 03:15 2004
Picon

Re: problem creating a static library

On Sep 30, 2004, at 6:05 PM, Danilo José wrote:
>> -fexport-coalesced with the 3.3 compiler, if you had to do this with
>> the gcc2 compiler, sed 's/private_extern/globl/'...  :-(
>
> could you explain me a little more how to do that last line?
>   I have not understood this exactly what should I do here?
>   Sorry my level of unix is not very good.

>> gcc foo.c -S; sed 's/notoc,//' <foo.s >foo1.s; gcc foo1.s -o foo.o

Combining the two, we get:

gcc foo.c -S; sed 's/private_extern/globl/' <foo.s >foo1.s; gcc foo1.s 
-o foo.o

Further help with basic makefiles and basic unix commands are well 
beyond the scope of this list...

David Edelsohn | 1 Oct 03:25 2004
Picon

Re: AIX bootstrap failure

>>>>> Jerry Quinn writes:

Jerry> David Edelsohn wrote:
>>>>>>> jlquinn  writes:
>> 
>> 
jlquinn> I updated the tree (no local patches), and reconfigured and bootstrapped mainline.  The config is:
jlquinn> ../gcc/configure   --prefix=/home/jlquinn/gcc/dev --with-cpu=power4
--with-gcc-version-trigger=/home/jlquinn/gcc/dev/gcc/gcc/version.c --enable-languages=c,c++,java
>> 
jlquinn> This is on AIX 5.2 pl 3, using xlc.
>> 
jlquinn> Bootstrap comparison failure!
jlquinn> ./fold-const.o differs
>> 
>> I bootstrap with GCC, not XLC, and I have been bootstrapping
>> successfully with a few local patches, but nothing that should affect
>> this type of failure.
>> 
>> My local patches include a declaration of atoll(), which exists on
>> AIX 5.2 but not AIX 5.1, and the header cache from GCC built on AIX 5.1
>> causes problems.  The other patch adds -Wl,-bbigtoc to work around a
>> recently re-introduced TOC overflow, which I am surprised that you did not
>> encounter.
>> 
>> The stage1 compiler has been known to cause bootstrap miscompares,
>> but it is very rare.

Jerry> I refreshed today and got the same bootstrap comparison failure again 
Jerry> with xlc.  Should I file a bug or is bootstrapping from xlc not going to 
(Continue reading)

Danilo José | 1 Oct 04:32 2004

Re: problem creating a static library

Thank you very much.

  I have done several tests with the things that you have purposed me. But I
still have the same results.

  I do not know why, but the further I get is with the ld -r *.o new.o-

  when doing this it gives me a lot of problems when compiling the object.
  sed 's/private_extern/globl/'

  When doing the
  's/,no_toc//'
  I think is like this because notoc is not found, and no_toc yes with a
comma before.
  It gets as far as if I were using the ld -r *.o -o new.o.

   So i get the same 4 undefined symbols.

   My boss is tellign me to test with machine dependant flags. The thing is
that in the same Mac OS X works with the 3.1 version of g++ but now with the
2.95.2

    So I do not know what to do, because the machine is the same.

    I have seen that the libgcc.a is not in the 2.95.2 gcc directory only in
the 3.1 directory.  Is that a problem for this. Sorry but I am really
worried about this problem.

    Thanks in advance!
    Danilo
(Continue reading)


Gmane