This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[commit] [patch] Fix overlapping objfiles with discontiguous CUs (PR 13346)


On Tue, 08 Nov 2011 11:52:55 +0100, Jan Kiszka wrote:
> I can confirm it fixes the issue here.

On Thu, 10 Nov 2011 16:23:58 +0100, Vimal wrote:
> Thanks Jan Kratochvil!  I can confirm that the patch fixes the issue as well.

Thanks for the testing.

There was off-list discussion about alternative ways to fix it.

The new attribute partial_symtab->psymtabs_addrmap_supported is in fact
constant for each partial_symtab->read_symtab function.  Therefore we could
"subclass" partial_symtab for each of the readers having this additional
attribute there.

Tom also suggested we could finally drop partial_symtab and IIUC just build
in-memory-only gdbindex structures instead of partial_symtab.

Neither of these methods was done.

No regressions on {x86_64,x86_64-m32,i686}-fedora16-linux-gnu.

Checked in:
	http://sourceware.org/ml/gdb-cvs/2011-12/msg00009.html

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.

This bug was a regression.


Regards,
Jan


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]