public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug lto/41597]  New: Bad .comm directive
@ 2009-10-05 22:18 danglin at gcc dot gnu dot org
  2009-10-06  0:11 ` [Bug lto/41597] " joseph at codesourcery dot com
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: danglin at gcc dot gnu dot org @ 2009-10-05 22:18 UTC (permalink / raw)
  To: gcc-bugs

Executing on host: /test/gnu/gcc/objdir/gcc/xgcc -B/test/gnu/gcc/objdir/gcc/  
-
O2 -flto  -w -c  -o 20000105-1.o
/test/gnu/gcc/gcc/gcc/testsuite/gcc.c-torture/c
ompile/20000105-1.c    (timeout = 300)
/var/tmp//cc74uIsZ.s: Assembler messages:
/var/tmp//cc74uIsZ.s:105: Error: bad or irreducible absolute expression
/var/tmp//cc74uIsZ.s:105: Error: junk at end of line, first unrecognized
charact
er is `,'
compiler exited with status 1

The directive is:

        .comm   gnu_lto_v1,1,1

This apparently comes from here:

  /* Emit LTO marker if LTO info has been previously emitted.  This is
     used by collect2 to determine whether an object file contains IL.
     We used to emit an undefined reference here, but this produces
     link errors if an object file with IL is stored into a shared
     library without invoking lto1.  */
  if (flag_generate_lto)
    fprintf (asm_out_file,"\t.comm\tgnu_lto_v1,1,1\n");


-- 
           Summary: Bad .comm directive
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: lto
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
 GCC build triplet: hppa64-hp-hpux11.11
  GCC host triplet: hppa64-hp-hpux11.11
GCC target triplet: hppa64-hp-hpux11.11


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
@ 2009-10-06  0:11 ` joseph at codesourcery dot com
  2009-10-06 10:17 ` rguenth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: joseph at codesourcery dot com @ 2009-10-06  0:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from joseph at codesourcery dot com  2009-10-06 00:10 -------
Subject: Re:   New: Bad .comm directive

On Mon, 5 Oct 2009, danglin at gcc dot gnu dot org wrote:

> The directive is:
> 
>         .comm   gnu_lto_v1,1,1
> 
> This apparently comes from here:
> 
>   /* Emit LTO marker if LTO info has been previously emitted.  This is
>      used by collect2 to determine whether an object file contains IL.
>      We used to emit an undefined reference here, but this produces
>      link errors if an object file with IL is stored into a shared
>      library without invoking lto1.  */
>   if (flag_generate_lto)
>     fprintf (asm_out_file,"\t.comm\tgnu_lto_v1,1,1\n");

I pointed out in my review that this was inappropriate, both because of 
the hardcoding of .comm syntax and because the name is in the user 
namespace.  The LTO people need to reread my comments (on all the patches, 
not just this one) and look for any others that have not been addressed or 
had PRs filed.

http://gcc.gnu.org/ml/gcc-patches/2009-09/msg02139.html has these 
particular comments.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
  2009-10-06  0:11 ` [Bug lto/41597] " joseph at codesourcery dot com
@ 2009-10-06 10:17 ` rguenth at gcc dot gnu dot org
  2009-10-06 15:55 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-10-06 10:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from rguenth at gcc dot gnu dot org  2009-10-06 10:17 -------
Btw, any help is of course appreciated.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
OtherBugsDependingO|                            |41588
              nThis|                            |
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2009-10-06 10:17:12
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
  2009-10-06  0:11 ` [Bug lto/41597] " joseph at codesourcery dot com
  2009-10-06 10:17 ` rguenth at gcc dot gnu dot org
@ 2009-10-06 15:55 ` dave at hiauly1 dot hia dot nrc dot ca
  2009-10-09 14:29 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2009-10-06 15:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from dave at hiauly1 dot hia dot nrc dot ca  2009-10-06 15:55 -------
Subject: Re:  Bad .comm directive

> Btw, any help is of course appreciated.

Using ASM_OUTPUT_ALIGNED_COMMON resolves the problem on this target.
Joseph's comment seems correct.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2009-10-06 15:55 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2009-10-09 14:29 ` rguenth at gcc dot gnu dot org
  2010-01-01 23:10 ` rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-10-09 14:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from rguenth at gcc dot gnu dot org  2009-10-09 14:29 -------
There's emit_common in varasm.c, but somebody with more experience in this
area might want to suggest a more proper way to emit this .comm.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2009-10-09 14:29 ` rguenth at gcc dot gnu dot org
@ 2010-01-01 23:10 ` rguenth at gcc dot gnu dot org
  2010-01-02 11:12 ` rguenth at gcc dot gnu dot org
  2010-01-02 11:25 ` rguenth at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-01 23:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from rguenth at gcc dot gnu dot org  2010-01-01 23:10 -------
I have a patch.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2009-10-06 10:17:12         |2010-01-01 23:10:38
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2010-01-01 23:10 ` rguenth at gcc dot gnu dot org
@ 2010-01-02 11:12 ` rguenth at gcc dot gnu dot org
  2010-01-02 11:25 ` rguenth at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-02 11:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2010-01-02 11:11 -------
Subject: Bug 41597

Author: rguenth
Date: Sat Jan  2 11:11:37 2010
New Revision: 155563

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=155563
Log:
2010-01-02  Richard Guenther  <rguenther@suse.de>

        PR lto/41597
        * toplev.c (compile_file): Emit LTO marker properly.  Change
        it to __gnu_lto_v1.
        * collect2.c (scan_prog_file): Adjust for changed LTO marker.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/collect2.c
    trunk/gcc/toplev.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug lto/41597] Bad .comm directive
  2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2010-01-02 11:12 ` rguenth at gcc dot gnu dot org
@ 2010-01-02 11:25 ` rguenth at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-02 11:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2010-01-02 11:25 -------
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41597


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2010-01-02 11:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-10-05 22:18 [Bug lto/41597] New: Bad .comm directive danglin at gcc dot gnu dot org
2009-10-06  0:11 ` [Bug lto/41597] " joseph at codesourcery dot com
2009-10-06 10:17 ` rguenth at gcc dot gnu dot org
2009-10-06 15:55 ` dave at hiauly1 dot hia dot nrc dot ca
2009-10-09 14:29 ` rguenth at gcc dot gnu dot org
2010-01-01 23:10 ` rguenth at gcc dot gnu dot org
2010-01-02 11:12 ` rguenth at gcc dot gnu dot org
2010-01-02 11:25 ` rguenth at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).