[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-03-09 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

--- Comment #10 from Jakub Jelinek  ---
Author: jakub
Date: Fri Mar  9 09:58:49 2018
New Revision: 258382

URL: https://gcc.gnu.org/viewcvs?rev=258382=gcc=rev
Log:
PR debug/84404
* gcc.dg/graphite/pr84404.c: Only compile on pthread effective
targets.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/graphite/pr84404.c

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-03-08 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

Alexandre Oliva  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #9 from Alexandre Oliva  ---
Fixed

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-03-08 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

--- Comment #8 from Alexandre Oliva  ---
Author: aoliva
Date: Thu Mar  8 08:27:56 2018
New Revision: 258355

URL: https://gcc.gnu.org/viewcvs?rev=258355=gcc=rev
Log:
[LVU] reset view at function entry, omit views at line zero

Location views might be associated with locations that lack line
number information (line number zero), but since we omit .loc
directives that would have been issued with line number zero, we also
omit the symbolic view numbers that would have been issued at such
points.

Resetting views at function entry points address some of these issues,
and alleviate the huge chains of symbolic views that have burdened
assemblers since we disabled -ginternal-reset-location-views by
default, but other problems of undefined views remain when it's not
the whole function that lacks line number info, just parts of it.

So, when we encounter a request to output a view that may have been
referenced, but we decide to omit the .loc because the line is zero,
we will now omit the view as well, i.e., we will internally regard
that view as zero-numbered.

for  gcc/ChangeLog

PR debug/84404
PR debug/84408
* dwarf2out.c (struct dw_line_info_table): Update comments for
view == -1.
(FORCE_RESET_NEXT_VIEW): New.
(FORCE_RESETTING_VIEW_P): New.
(RESETTING_VIEW_P): Check for -1 too.
(ZERO_VIEW_P): Likewise.
(new_line_info_table): Force-reset next view.
(dwarf2out_begin_function): Likewise.
(dwarf2out_source_line): Simplify zero_view_p initialization.
Test FORCE_RESETTING_VIEW_P and RESETTING_VIEW_P instead of
view directly.  Omit view when omitting .loc at line 0.

for  gcc/testsuite/ChangeLog

PR debug/84404
PR debug/84408
* gcc.dg/graphite/pr84404.c: New.

Added:
trunk/gcc/testsuite/gcc.dg/graphite/pr84404.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/dwarf2out.c
trunk/gcc/testsuite/ChangeLog

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-21 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

Eric Gallager  changed:

   What|Removed |Added

   Keywords||patch
 CC||egallager at gcc dot gnu.org

--- Comment #7 from Eric Gallager  ---
(In reply to Alexandre Oliva from comment #6)
> Patch posted
> https://gcc.gnu.org/ml/gcc-patches/2018-02/msg01224.html

Adding "patch" keyword

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-21 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

--- Comment #6 from Alexandre Oliva  ---
Patch posted
https://gcc.gnu.org/ml/gcc-patches/2018-02/msg01224.html

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-20 Thread aoliva at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

Alexandre Oliva  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-02-21
   Assignee|unassigned at gcc dot gnu.org  |aoliva at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #5 from Alexandre Oliva  ---
On it.  At least in the x86_64 testcase in c3, the problem is that we have a
gomp function without line info, but with var loc bindings.  The bindings end
up as locview lists referencing a view that is never emitted, because there's
no line info to attach it to.

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-15 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

--- Comment #4 from Arseny Solokha  ---
(In reply to Arseny Solokha from comment #3)
> I see the same issue

This is x86_64-pc-linux-gnu.

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-15 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

Arseny Solokha  changed:

   What|Removed |Added

 CC||asolokha at gmx dot com

--- Comment #3 from Arseny Solokha  ---
I see the same issue w/ the following snippet compiled w/ -O2
-ftree-parallelize-loops=2 -floop-nest-optimize -g:

int te[9];

void
dt (int cz)
{
  while (cz < 1)
{
  int xy;

  for (xy = 0; xy < 9; ++xy)
te[xy] = 0;

  ++cz;
}
}

% gcc-8.0.0-alpha20180211 -O2 -ftree-parallelize-loops=2 -floop-nest-optimize
-g -c pr84404.c
/tmp/ccfu80w2.s: Assembler messages:
/tmp/ccfu80w2.s:700: Error: leb128 operand is an undefined symbol: .LVU12

as of r257571.

GNU as 2.30 seems to be the key here.

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-15 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

Uroš Bizjak  changed:

   What|Removed |Added

 Target||alphaev68-linux-gnu
 CC||aoliva at gcc dot gnu.org

--- Comment #2 from Uroš Bizjak  ---
$ ~/gcc-build/gcc/xgcc --version
xgcc (GCC) 8.0.1 20180214 (experimental) [trunk revision 257656]

$ as --version
GNU assembler (Gentoo 2.30 p1) 2.30.0
Copyright (C) 2018 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `alpha-unknown-linux-gnu'.

[Bug debug/84404] Several "leb128 operand is an undefined symbol" in go testsuite with latest debug improvements

2018-02-15 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84404

--- Comment #1 from Uroš Bizjak  ---
Created attachment 43427
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43427=edit
generated assembly