public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug debug/40126]  New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
@ 2009-05-12 20:39 gerald at pfeifer dot com
  2009-05-12 20:40 ` [Bug debug/40126] " gerald at pfeifer dot com
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: gerald at pfeifer dot com @ 2009-05-12 20:39 UTC (permalink / raw)
  To: gcc-bugs

When building tools/widl/typelib.c from Wine with -O2 -g, we started
getting the following some three days ago:

/var/tmp//cc43jwq2.s: Assembler messages:
/var/tmp//cc43jwq2.s:2059: Error: can't resolve `.LFE95' {*UND* section} -
`.Ltext0' {.text section}

This is on i386-unknown-freebsd7.1 with GNU as 2.15.

Both -O2 and -g are needed; neither -O1 -g nor just -O2 reproduces this.


-- 
           Summary: [4.5 regression] -O2 -g results in: can't resolve
                    `.LFE95' {*UND* section} - `.Ltext0' {.text section}
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: debug
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: gerald at pfeifer dot com
  GCC host triplet: i386-unknown-freebsd7.1


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


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

* [Bug debug/40126] [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
@ 2009-05-12 20:40 ` gerald at pfeifer dot com
  2009-05-13  9:53 ` [Bug debug/40126] [4.5 Regression] " rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: gerald at pfeifer dot com @ 2009-05-12 20:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from gerald at pfeifer dot com  2009-05-12 20:40 -------
Created an attachment (id=17855)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17855&action=view)
Preprocessed source file; test with $GCC -g -O2


-- 


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
  2009-05-12 20:40 ` [Bug debug/40126] " gerald at pfeifer dot com
@ 2009-05-13  9:53 ` rguenth at gcc dot gnu dot org
  2009-05-13 16:07 ` reichelt at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-05-13  9:53 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu dot
                   |                            |org
            Summary|[4.5 regression] -O2 -g     |[4.5 Regression] -O2 -g
                   |results in: can't resolve   |results in: can't resolve
                   |`.LFE95' {*UND* section} -  |`.LFE95' {*UND* section} -
                   |`.Ltext0' {.text section}   |`.Ltext0' {.text section}
   Target Milestone|---                         |4.5.0


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
  2009-05-12 20:40 ` [Bug debug/40126] " gerald at pfeifer dot com
  2009-05-13  9:53 ` [Bug debug/40126] [4.5 Regression] " rguenth at gcc dot gnu dot org
@ 2009-05-13 16:07 ` reichelt at gcc dot gnu dot org
  2009-05-13 16:32 ` hjl dot tools at gmail dot com
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2009-05-13 16:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from reichelt at gcc dot gnu dot org  2009-05-13 16:07 -------
Confirmed (with "-m32 -O2 -g" on x86_64-unknown-linux-gnu). Reduced testcase:

======================================================
typedef struct A
{
  int i;
  struct A *p;
} A;

static int f1(A *t)
{
  if (t->i)
    return 0;
  return t->i;
}

static A *f2(A *t)
{
  if (t->i)
    return f2(t);
  else
    return t;
}

static int f3(A *t)
{
  return f1(f2(t));
}

static A *f4(A *t)
{
  if (f3(f2(t)))
    g0(0, 0, 0, 0);
  return t->p;
}

int f5(A *t)
{
  return f3(t);
}

static int f6(int *p, A *t)
{
  return g2(p, 0) || g3(t, 0) || f5(t) || g1(f4(t));
}

static int f7(A *t)
{
  return f6(&t->i, t);
}

int foo(A *t)
{
  return f7(t);
}
======================================================


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2009-05-13 16:07:15
               date|                            |


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (2 preceding siblings ...)
  2009-05-13 16:07 ` reichelt at gcc dot gnu dot org
@ 2009-05-13 16:32 ` hjl dot tools at gmail dot com
  2009-05-14 15:29 ` hubicka at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: hjl dot tools at gmail dot com @ 2009-05-13 16:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from hjl dot tools at gmail dot com  2009-05-13 16:32 -------
It is caused by revision 14734:

http://gcc.gnu.org/ml/gcc-cvs/2009-05/msg00316.html


-- 


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (3 preceding siblings ...)
  2009-05-13 16:32 ` hjl dot tools at gmail dot com
@ 2009-05-14 15:29 ` hubicka at gcc dot gnu dot org
  2009-05-21 11:03 ` rguenth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2009-05-14 15:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from hubicka at gcc dot gnu dot org  2009-05-14 15:29 -------
This looks like latent bug in dwarf2out.  There is location list:
.LLST2: 
        .long   .LVL0-.Ltext0   # Location list begin address (*.LLST2)
        .long   .LVL1-.Ltext0   # Location list end address (*.LLST2)
        .value  0x2     # Location expression size
        .byte   0x91    # DW_OP_fbreg
        .sleb128 0
        .long   .LVL1-.Ltext0   # Location list begin address (*.LLST2)
        .long   .LFE6-.Ltext0   # Location list end address (*.LLST2)
        .value  0x2     # Location expression size
        .byte   0x75    # DW_OP_breg5
        .sleb128 8
        .long   0x0     # Location list terminator begin (*.LLST2)
        .long   0x0     # Location list terminator end (*.LLST2)

and LFE6 is not defined.  It is used from from foo as:

        .uleb128 0xb    # (DIE (0x297) DW_TAG_lexical_block)
        .uleb128 0x10   # (DIE (0x298) DW_TAG_formal_parameter)
        .long   0x20d   # DW_AT_abstract_origin
        .long   .LLST2  # DW_AT_location

       .uleb128 0x10   # (DIE (0x20d) DW_TAG_formal_parameter)
        .long   0xd5    # DW_AT_abstract_origin
        .long   .LLST1  # DW_AT_location

        .uleb128 0x8    # (DIE (0xd5) DW_TAG_formal_parameter)
        .ascii "t\0"    # DW_AT_name
        .byte   0x1     # DW_AT_decl_file (b.c)
        .byte   0x22    # DW_AT_decl_line
        .long   0x78    # DW_AT_type


-- 


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (4 preceding siblings ...)
  2009-05-14 15:29 ` hubicka at gcc dot gnu dot org
@ 2009-05-21 11:03 ` rguenth at gcc dot gnu dot org
  2009-06-08 11:03 ` reichelt at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-05-21 11:03 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-debug
           Priority|P3                          |P1


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (5 preceding siblings ...)
  2009-05-21 11:03 ` rguenth at gcc dot gnu dot org
@ 2009-06-08 11:03 ` reichelt at gcc dot gnu dot org
  2009-06-08 12:04 ` reichelt at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2009-06-08 11:03 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from reichelt at gcc dot gnu dot org  2009-06-08 11:03 -------
*** Bug 40253 has been marked as a duplicate of this bug. ***


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marcus at jet dot franken
                   |                            |dot de


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (6 preceding siblings ...)
  2009-06-08 11:03 ` reichelt at gcc dot gnu dot org
@ 2009-06-08 12:04 ` reichelt at gcc dot gnu dot org
  2009-06-08 18:35 ` hubicka at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2009-06-08 12:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from reichelt at gcc dot gnu dot org  2009-06-08 12:03 -------
The testcase from comment #2 doesn't show the bug anymore.
Here's a slightly modified version that does:

========================================================
typedef struct A
{
  int i : 2;
  struct A *p;
} A;

static int f1(A *t)
{
  if (t->i)
    return 0;
  return t->i;
}

static A *f2(A *t)
{
  if (t->i)
    return f2(t->p);
  else
    return t;
}

static int f3(A *t)
{
  return f1(f2(t));
}

static int f4(A *t)
{
  if (f3(f2(t)))
    g(0, 0, 0, 0, 0, 0, 0);
  return t->i;
}

int f5(A *t)
{
  return f3(t);
}

static int f6(A *t)
{
  return f5(t) || f5(f2(t));
}

static int f7(A *t)
{
  return f6(t) || f4(t);
}

int foo(A *t)
{
  return f7(t);
}
========================================================


-- 


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (7 preceding siblings ...)
  2009-06-08 12:04 ` reichelt at gcc dot gnu dot org
@ 2009-06-08 18:35 ` hubicka at gcc dot gnu dot org
  2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
  2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
  10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2009-06-08 18:35 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from hubicka at gcc dot gnu dot org  2009-06-08 18:34 -------
OK,
problem seems to be that we keep stale location list hash that confuse
dwarf2out when outputting abstract function
Index: dwarf2out.c
===================================================================
--- dwarf2out.c (revision 148287)
+++ dwarf2out.c (working copy)
@@ -13792,6 +13792,7 @@ dwarf2out_abstract_function (tree decl)

   /* Make sure we have the actual abstract inline, not a clone.  */
   decl = DECL_ORIGIN (decl);
+  htab_empty (decl_loc_table);

   old_die = lookup_decl_die (decl);
   if (old_die && get_AT (old_die, DW_AT_inline))


-- 


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (9 preceding siblings ...)
  2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
@ 2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
  10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2009-06-08 19:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from hubicka at gcc dot gnu dot org  2009-06-08 19:26 -------
Fixed.


-- 

hubicka at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


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


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

* [Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}
  2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
                   ` (8 preceding siblings ...)
  2009-06-08 18:35 ` hubicka at gcc dot gnu dot org
@ 2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
  2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
  10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2009-06-08 19:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from hubicka at gcc dot gnu dot org  2009-06-08 19:26 -------
Subject: Bug 40126

Author: hubicka
Date: Mon Jun  8 19:25:51 2009
New Revision: 148293

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=148293
Log:
        PR debug/40126
        * dwarf2out.c (dwarf2out_abstract_function): Free decl_loc_table.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/dwarf2out.c


-- 


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


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

end of thread, other threads:[~2009-06-08 19:26 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-12 20:39 [Bug debug/40126] New: [4.5 regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section} gerald at pfeifer dot com
2009-05-12 20:40 ` [Bug debug/40126] " gerald at pfeifer dot com
2009-05-13  9:53 ` [Bug debug/40126] [4.5 Regression] " rguenth at gcc dot gnu dot org
2009-05-13 16:07 ` reichelt at gcc dot gnu dot org
2009-05-13 16:32 ` hjl dot tools at gmail dot com
2009-05-14 15:29 ` hubicka at gcc dot gnu dot org
2009-05-21 11:03 ` rguenth at gcc dot gnu dot org
2009-06-08 11:03 ` reichelt at gcc dot gnu dot org
2009-06-08 12:04 ` reichelt at gcc dot gnu dot org
2009-06-08 18:35 ` hubicka at gcc dot gnu dot org
2009-06-08 19:26 ` hubicka at gcc dot gnu dot org
2009-06-08 19:26 ` hubicka 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).