From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 4AA9038515EB; Fri, 10 Sep 2021 19:38:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4AA9038515EB From: "mehmetgelisin at aol dot com" To: gdb-prs@sourceware.org Subject: [Bug rust/27194] put rust demangler on 10.x branch Date: Fri, 10 Sep 2021 19:38:27 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gdb X-Bugzilla-Component: rust X-Bugzilla-Version: 10.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: mehmetgelisin at aol dot com X-Bugzilla-Status: RESOLVED X-Bugzilla-Resolution: FIXED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: tromey at sourceware dot org X-Bugzilla-Target-Milestone: 10.2 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gdb-prs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-prs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Sep 2021 19:38:27 -0000 https://sourceware.org/bugzilla/show_bug.cgi?id=3D27194 Mehmet gelisin changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mehmetgelisin at aol dot c= om --- Comment #14 from Mehmet gelisin --- he issue lies with the fact that we have a DIE in a CU A referring to a DIE= in a CU B (using DW_AT_abstract_origin). http://www-look-4.com/ The DIEs for = CU B are not loaded yet (or rather, have been unloaded due to DWARF CU aging stu= ff), and we try to load them using: /* If necessary, add it to the queue and load its DIEs. */ http://www.compilatori.com/ if (maybe_queue_comp_unit (cu, per_cu, per_objfile, cu->language)) load_full_comp_unit (per_cu, per_objfile, per_objfile->get_cu (per_= cu), false, cu->language); http://www.wearelondonmade.com/ Since the CU is already queued for expansion, maybe_queue_comp_unit returns false and we don't call load_full_comp_unit. http://www.jopspeech.com/ I th= ink maybe_queue_comp_unit is the wrong thing to call here, because "queuing for symtab expansion" is http://joerg.li/ unrelated to "loading the DIEs in memory". We should rather check: "are the DIEs for per_cu loaded http://connstr.net/ into memory yet? if not do it now", which is what the patch below implements. http://embermanchester.uk/=20 @@ -22937,12 +22939,15 @@ follow_die_offset (sect_offset sect_off, int offset_in_dwz, http://www.slipstone.co.uk/ per_cu =3D dwarf2_find_containing_comp_u= nit (sect_off, offset_in_dwz, per_objfile); - http://www.logoarts.co.uk/ /* If necessary, add it to the queue and = load its DIEs. */ - if (maybe_queue_comp_unit (cu, per_cu, per_objfile, cu->language)) - load_full_comp_unit (per_cu, per_objfile, per_objfile->get_cu (per_= cu), - false, cu->language); http://www.acpirateradio.co.uk/=20 - target_cu =3D per_objfile->get_cu (per_cu); + if (target_cu =3D=3D nullptr) + { + load_full_comp_unit (per_cu, per_objfile, per_objfile->get_cu https://waytowhatsnext.com/ (per_cu), + false, cu->language); + target_cu =3D per_objfile->get_cu (per_cu); + } + + gdb_assert (target_cu !=3D nullptr); } __GI_raise (sig=3Dsig@entry=3D6) at ../sysdeps/unix/sysv/linux/raise= .c:50 #1 0x00007fc878bb0859 in __GI_abort () at abort.c:79 https://www.webb-dev.co.uk/=20 #2 0x000056229e1f0e76 in dump_core () at ../../../../binutils-gdb/gdb/utils.c:204 #3 0x000056229e1f1799 in internal_vproblem(internal_problem *, const char = *, int, const char *, typedef __va_list_tag __va_list_tag *) (problem=3D0x56229f7c09e0 ,=20 http://www.iu-bloomington.com/=20 file=3D0x56229e7cb208 "../../../../binutils-gdb/gdb/dwarf2/read.c", line=3D9251,=20 fmt=3D0x56229e7ca848 "%s: Assertion `%s' failed.", ap=3D0x7ffc18d82410) at ../../../../binutils-gdb/gdb/utils.c:414 #4 0x000056229e1f1890 in internal_verror ( file=3D0x56229e7cb208 "../../../../binutils-gdb/gdb/dwarf2/read.c", line=3D9251,=20 fmt=3D0x56229e7ca848 "%s: Assertion `%s' failed.", ap=3D0x7ffc18d82410) at ../../../../binutils-gdb/gdb/utils.c:439 #5 0x000056229e685fda in internal_error ( file=3D0x56229e7cb208 "../../../../binutils-gdb/gdb/dwarf2/read.c", line=3D9251,=20 fmt=3D0x56229e7ca848 "%s: Assertion `%s' failed.") at ../../../../binutils-gdb/gdbsupport/errors.cc:55 #6 0x000056229d7c1103 in load_full_comp_unit (this_cu=3D0x5622a1d2f220, per_objfile=3D0x5622a1351a10,=20 existing_cu=3D0x5622b648d2f0, skip_partial=3Dfalse, pretend_language=3Dlanguage_minimal) https://komiya-dental.com/ at ../../../../binutils-gdb/gdb/dwarf2/read.c:9251 #7 0x000056229d783f35 in load_cu (per_cu=3D0x5622a1d2f220, per_objfile=3D0x5622a1351a10,=20 skip_partial=3Dfalse) at ../../../../binutils-gdb/gdb/dwarf2/read.c:2389 #8 0x000056229d7840ad in dw2_do_instantiate_symtab (per_cu=3D0x5622a1d2f22= 0, per_objfile=3D0x5622a1351a10,=20 skip_partial=3Dfalse) at ../../../../binutils-gdb/gdb/dwarf2/read.c:2420 #9 0x000056229d7c0926 in dwarf2_psymtab::expand_psymtab (this=3D0x5622a293= efa0, objfile=3D0x5622a1d5f4b0) at ../../../../binutils-gdb/gdb/dwarf2/read.c:9183 #10 0x000056229d7bf853 in dwarf2_psymtab::read_symtab (this=3D0x5622a293efa= 0, objfile=3D0x5622a1d5f4b0) --=20 You are receiving this mail because: You are on the CC list for the bug.=