From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1062) id B1CF3385735D; Thu, 21 Jul 2022 05:32:59 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B1CF3385735D Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Alan Modra To: bfd-cvs@sourceware.org Subject: [binutils-gdb] PR29337, readelf CU/TU mixup in .gdb_index X-Act-Checkin: binutils-gdb X-Git-Author: Alan Modra X-Git-Refname: refs/heads/master X-Git-Oldrev: 695c6dfe7e85006b98c8b746f3fd5f913c94ebff X-Git-Newrev: e82295b23d0e52b0dadffb8c0d0b99462cd20fa8 Message-Id: <20220721053259.B1CF3385735D@sourceware.org> Date: Thu, 21 Jul 2022 05:32:59 +0000 (GMT) X-BeenThere: binutils-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Jul 2022 05:32:59 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dbinutils-gdb.git;h=3De82295b23d0e= 52b0dadffb8c0d0b99462cd20fa8 commit e82295b23d0e52b0dadffb8c0d0b99462cd20fa8 Author: Alan Modra Date: Thu Jul 21 14:54:54 2022 +0930 PR29337, readelf CU/TU mixup in .gdb_index =20 Commit 244e19c79111 changed a number of variables in display_gdb_index to count entries rather than words. =20 PR 29337 * dwarf.c (display_gdb_index): Correct use of cu_list_elements. Diff: --- binutils/dwarf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/binutils/dwarf.c b/binutils/dwarf.c index 99fb3566994..7d0a9ffefea 100644 --- a/binutils/dwarf.c +++ b/binutils/dwarf.c @@ -10671,9 +10671,9 @@ display_gdb_index (struct dwarf_section *section, kind =3D GDB_INDEX_SYMBOL_KIND_VALUE (cu); cu =3D GDB_INDEX_CU_VALUE (cu); /* Convert to TU number if it's for a type unit. */ - if (cu >=3D cu_list_elements / 2) + if (cu >=3D cu_list_elements) printf ("%cT%lu", num_cus > 1 ? '\t' : ' ', - (unsigned long) (cu - cu_list_elements / 2)); + (unsigned long) (cu - cu_list_elements)); else printf ("%c%lu", num_cus > 1 ? '\t' : ' ', (unsigned long) cu);