public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types
@ 2012-05-23 21:13 jan.kratochvil at redhat dot com
2012-05-24 0:16 ` [Bug symtab/14148] " dje at google dot com
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: jan.kratochvil at redhat dot com @ 2012-05-23 21:13 UTC (permalink / raw)
To: gdb-prs
http://sourceware.org/bugzilla/show_bug.cgi?id=14148
Bug #: 14148
Summary: -fdebug-types-section regresses ststic scope of types
Product: gdb
Version: HEAD
Status: NEW
Severity: normal
Priority: P2
Component: symtab
AssignedTo: unassigned@sourceware.org
ReportedBy: jan.kratochvil@redhat.com
Classification: Unclassified
FAILing new testcase for -fdebug-types-section [Re: [RFC - Python scripting]
New methods Symtab.global_block and Symtab.static_block (docs included)]
http://sourceware.org/ml/gdb-patches/2012-05/msg00132.html
PASS:
C="gcc -fno-debug-types-section -g -c -x c -";echo 'struct s { int i; }; extern
void f (void); int main (void) { struct s a; f (); return 0; }'|$C -o 36.o;echo
'struct s { int j; }; void f (void) { struct s b; }'|$C -o 36b.o;gcc -o 36 36.o
36b.o;./gdb -readnow ./36 -ex start -ex 'ptype struct s' -ex step -ex 'ptype
struct s' -ex c -ex q 2>/dev/null|grep -w int
int i;
int j;
FAIL:
C="gcc -fdebug-types-section -g -c -x c -";echo 'struct s { int i; }; extern
void f (void); int main (void) { struct s a; f (); return 0; }'|$C -o 36.o;echo
'struct s { int j; }; void f (void) { struct s b; }'|$C -o 36b.o;gcc -o 36 36.o
36b.o;./gdb -readnow ./36 -ex start -ex 'ptype struct s' -ex step -ex 'ptype
struct s' -ex c -ex q 2>/dev/null|grep -w int
int j;
int j;
In a different more readable form:
==> 36.c <==
struct s { int i; };
extern void f (void);
int main (void) {
struct s a;
f ();
return 0;
}
==> 36b.c <==
struct s { int j; };
void f (void) {
struct s b;
}
$ gcc -fdebug-types-section -o 36 36.c 36b.c -Wall -g
$ ./gdb -readnow ./36
(gdb) start
(gdb) ptype struct s
type = struct s {
int j;
}
(gdb) ptype a
type = struct s {
int i;
}
(gdb) whatis a
type = struct s
That is with -fdebug-types-section GDB no longer provides STATIC_BLOCK scope
for DW_TAG_type_unit types.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses ststic scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
@ 2012-05-24 0:16 ` dje at google dot com
2012-05-24 2:18 ` [Bug symtab/14148] -fdebug-types-section regresses static " jan.kratochvil at redhat dot com
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: dje at google dot com @ 2012-05-24 0:16 UTC (permalink / raw)
To: gdb-prs
http://sourceware.org/bugzilla/show_bug.cgi?id=14148
dje at google dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ccoutant at google dot com,
| |dje at google dot com
--- Comment #1 from dje at google dot com 2012-05-24 00:15:47 UTC ---
Cary told me that Jason is changing gcc to always create a skeleton type in the
CU with the DW_FORM_ref_sig8 living in the skeleton entry.
It's a space saving optimization.
Whether we need to care about producers that don't do this, I'm not sure.
Expanding scan_partial_symbols to watch for type unit references feels
problematic.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
2012-05-24 0:16 ` [Bug symtab/14148] " dje at google dot com
@ 2012-05-24 2:18 ` jan.kratochvil at redhat dot com
2012-05-24 4:35 ` dje at google dot com
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jan.kratochvil at redhat dot com @ 2012-05-24 2:18 UTC (permalink / raw)
To: gdb-prs
http://sourceware.org/bugzilla/show_bug.cgi?id=14148
Jan Kratochvil <jan.kratochvil at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|-fdebug-types-section |-fdebug-types-section
|regresses ststic scope of |regresses static scope of
|types |types
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
2012-05-24 0:16 ` [Bug symtab/14148] " dje at google dot com
2012-05-24 2:18 ` [Bug symtab/14148] -fdebug-types-section regresses static " jan.kratochvil at redhat dot com
@ 2012-05-24 4:35 ` dje at google dot com
2020-04-13 21:33 ` vries at gcc dot gnu.org
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: dje at google dot com @ 2012-05-24 4:35 UTC (permalink / raw)
To: gdb-prs
http://sourceware.org/bugzilla/show_bug.cgi?id=14148
--- Comment #2 from dje at google dot com 2012-05-24 04:34:49 UTC ---
>From Jan:
Jason's patch should be http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53235 which
(a) still regresses and (b) it will use / uses DW_AT_declaration so I guess it
will not work out of the box, but maybe a GDB fix can be easier on top of it.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
` (2 preceding siblings ...)
2012-05-24 4:35 ` dje at google dot com
@ 2020-04-13 21:33 ` vries at gcc dot gnu.org
2020-04-17 13:39 ` vries at gcc dot gnu.org
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: vries at gcc dot gnu.org @ 2020-04-13 21:33 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=14148
--- Comment #4 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #3)
> So, AFAICT gcc drops the top-level struct s dies. I think this is a gcc bug,
> I'll file a PR.
PR gcc/90232 - "gcc drops top-level dies with -fdebug-types-section" (
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90232 ).
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
` (3 preceding siblings ...)
2020-04-13 21:33 ` vries at gcc dot gnu.org
@ 2020-04-17 13:39 ` vries at gcc dot gnu.org
2020-04-25 15:13 ` vries at gcc dot gnu.org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: vries at gcc dot gnu.org @ 2020-04-17 13:39 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=14148
--- Comment #5 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #3)
> I'm not sure if this causes the difference with and without -readnow
> described in comment 0.
With a tentative patch for the gcc PR in place, and this gdb patch:
...
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 4910c9b6fc..cf81092691 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -15458,7 +15458,8 @@ process_structure_scope (struct die_info *die, struct
dwarf2_cu *cu)
these DIEs are identified by the fact that they have no byte_size
attribute, and a declaration attribute. */
if (dwarf2_attr (die, DW_AT_byte_size, cu) != NULL
- || !die_is_declaration (die, cu))
+ || !die_is_declaration (die, cu)
+ || dwarf2_attr (die, DW_AT_signature, cu) != NULL)
{
struct symbol *sym = new_symbol (die, type, cu);
...
we have the expected behaviour.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
` (4 preceding siblings ...)
2020-04-17 13:39 ` vries at gcc dot gnu.org
@ 2020-04-25 15:13 ` vries at gcc dot gnu.org
2020-04-25 15:19 ` cvs-commit at gcc dot gnu.org
2020-04-29 11:23 ` vries at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: vries at gcc dot gnu.org @ 2020-04-25 15:13 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=14148
--- Comment #6 from Tom de Vries <vries at gcc dot gnu.org> ---
https://sourceware.org/pipermail/gdb-patches/2020-April/167842.html
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
` (5 preceding siblings ...)
2020-04-25 15:13 ` vries at gcc dot gnu.org
@ 2020-04-25 15:19 ` cvs-commit at gcc dot gnu.org
2020-04-29 11:23 ` vries at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-04-25 15:19 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=14148
--- Comment #7 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tom de Vries <vries@sourceware.org>:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d472f0fbaac80ed6363f26c3f417b9eee7d5e7fc
commit d472f0fbaac80ed6363f26c3f417b9eee7d5e7fc
Author: Tom de Vries <tdevries@suse.de>
Date: Sat Apr 25 17:19:26 2020 +0200
[gdb/testsuite] Add target board debug-types
This patch adds a target board debug-types that switches on
-fdebug-types-section by default.
This -fdebug-types-section option is a gcc option that enables the
generation
of a .debug_types section, which is only effective for DWARF version 4.
There are two other boards that enable this: dwarf4-gdb-index and fisson,
but
while those test some meaningful combination of options, this board is
intended to test only -fdebug-types-section.
Current results with gcc 7.5.0 are:
...
=== gdb Summary ===
# of expected passes 75832
# of unexpected failures 2841
# of expected failures 130
# of known failures 75
# of unresolved testcases 22
# of untested testcases 37
# of unsupported tests 83
...
Related known issues:
- PR gcc/90232 - "gcc drops top-level dies with -fdebug-types-section"
- PR gdb/25875 - "segv in ada_discrete_type_low_bound"
- PR gdb/14148 - "-fdebug-types-section regresses static scope of types"
Tested on x86_64-linux.
gdb/testsuite/ChangeLog:
2020-04-25 Tom de Vries <tdevries@suse.de>
* boards/debug-types.exp: New file.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug symtab/14148] -fdebug-types-section regresses static scope of types
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
` (6 preceding siblings ...)
2020-04-25 15:19 ` cvs-commit at gcc dot gnu.org
@ 2020-04-29 11:23 ` vries at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: vries at gcc dot gnu.org @ 2020-04-29 11:23 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=14148
Tom de Vries <vries at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #8 from Tom de Vries <vries at gcc dot gnu.org> ---
GDB patch with test-case committed (
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=15cd93d05e8e84644acc8bbeaa3d5f4280cc5159
).
The testsuite test-cases which fail due to the gcc PR have been xfailed (
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=6e4e3fe1b6d68bde1f4e022bd0675fe36420e976
).
Marking resolved-fixed.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-04-29 11:23 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-23 21:13 [Bug symtab/14148] New: -fdebug-types-section regresses ststic scope of types jan.kratochvil at redhat dot com
2012-05-24 0:16 ` [Bug symtab/14148] " dje at google dot com
2012-05-24 2:18 ` [Bug symtab/14148] -fdebug-types-section regresses static " jan.kratochvil at redhat dot com
2012-05-24 4:35 ` dje at google dot com
2020-04-13 21:33 ` vries at gcc dot gnu.org
2020-04-17 13:39 ` vries at gcc dot gnu.org
2020-04-25 15:13 ` vries at gcc dot gnu.org
2020-04-25 15:19 ` cvs-commit at gcc dot gnu.org
2020-04-29 11:23 ` vries at gcc dot gnu.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).