diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-12-02 01:28:55 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-12-02 01:28:55 +0000 |
commit | 9750bca92c8e67e36ac1b9724abfcb814efaf48f (patch) | |
tree | 6161738a1dcf9feccf4570fc2e413cf6d40ab797 /gdb/psympriv.h | |
parent | f28c316a0bbb40b341e36d9e328a4d60121c395a (diff) | |
download | gdb-9750bca92c8e67e36ac1b9724abfcb814efaf48f.zip gdb-9750bca92c8e67e36ac1b9724abfcb814efaf48f.tar.gz gdb-9750bca92c8e67e36ac1b9724abfcb814efaf48f.tar.bz2 |
gdb/
PR breakpoints/13346
* dwarf2read.c (process_psymtab_comp_unit): Set
PSYMTABS_ADDRMAP_SUPPORTED.
* psympriv.h (struct partial_symtab): Comment textlow and texthigh
validity. New field psymtabs_addrmap_supported.
* psymtab.c (find_pc_sect_psymtab_closer): New gdb_assert on
psymtabs_addrmap_supported.
(find_pc_sect_psymtab): Do not fallback to TEXTLOW and TEXTHIGH for
!PSYMTABS_ADDRMAP_SUPPORTED.
(dump_psymtab, maintenance_info_psymtabs): Print also
psymtabs_addrmap_supported.
gdb/testsuite/
PR breakpoints/13346
* gdb.dwarf2/dw2-objfile-overlap-inner.S: New file.
* gdb.dwarf2/dw2-objfile-overlap-outer.S: New file.
* gdb.dwarf2/dw2-objfile-overlap.exp: New file.
Diffstat (limited to 'gdb/psympriv.h')
-rw-r--r-- | gdb/psympriv.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gdb/psympriv.h b/gdb/psympriv.h index 95d7676..cee3994 100644 --- a/gdb/psympriv.h +++ b/gdb/psympriv.h @@ -92,7 +92,8 @@ struct partial_symtab struct section_offsets *section_offsets; /* Range of text addresses covered by this file; texthigh is the - beginning of the next section. */ + beginning of the next section. Do not use if PSYMTABS_ADDRMAP_SUPPORTED + is set. */ CORE_ADDR textlow; CORE_ADDR texthigh; @@ -135,6 +136,12 @@ struct partial_symtab unsigned char readin; + /* True iff objfile->psymtabs_addrmap is properly populated for this + partial_symtab. For discontiguous overlapping psymtabs is the only usable + info in PSYMTABS_ADDRMAP. */ + + unsigned char psymtabs_addrmap_supported; + /* Pointer to symtab eventually allocated for this source file, 0 if !readin or if we haven't looked for the symtab after it was readin. */ |