From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2126) id 17D1F3844750; Sat, 4 May 2024 16:07:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 17D1F3844750 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1714838823; bh=SorGNzEviXpgODy0vfKqmgLf6It1Fubmbqt9pG6y6gA=; h=From:To:Subject:Date:From; b=oiAii+OeBpWpqE5A6mcuFLJ5XuVkGD8G7n8IANt6cxGroTBtXK8G9BXlJ91rGoio1 BlD07XKB067FVM1KmdQkvCbpyQi/dUy2GYfsoZN9uC7vmJKir2bpoDFAC+trMOgJKx 0i9/HTyixiGC2aLUm1zD7sTx9e6vd3tguxbQaQ6U= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Tom Tromey To: gdb-cvs@sourceware.org Subject: [binutils-gdb] Remove more calls to dwarf2_per_objfile::adjust X-Act-Checkin: binutils-gdb X-Git-Author: Tom Tromey X-Git-Refname: refs/heads/master X-Git-Oldrev: 91fc201ed4a822f5fa86d1075806470c327bc455 X-Git-Newrev: a5a401018905185d6b82395b2c40a15dcb229bc6 Message-Id: <20240504160703.17D1F3844750@sourceware.org> Date: Sat, 4 May 2024 16:07:03 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=3Dbinutils-gdb.git;h=3Da5a401018905= 185d6b82395b2c40a15dcb229bc6 commit a5a401018905185d6b82395b2c40a15dcb229bc6 Author: Tom Tromey Date: Fri Mar 8 13:37:50 2024 -0700 Remove more calls to dwarf2_per_objfile::adjust =20 As with the previous patch, this patch removes some calls to dwarf2_per_objfile::adjust. These calls are not needed by the cooked indexer, as it does not create symbols or look up symbols by address. =20 The call in dwarf2_ranges_read is similarly not needed, as it is only used to update an addrmap; and in any case I believe this particular call is only reached by the indexer. Diff: --- gdb/dwarf2/read.c | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index 00e8608f9ce..76330d7b784 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -10919,7 +10919,6 @@ dwarf2_ranges_read (unsigned offset, unrelocated_ad= dr *low_return, unrelocated_addr *high_return, struct dwarf2_cu *cu, addrmap_mutable *map, void *datum, dwarf_tag tag) { - dwarf2_per_objfile *per_objfile =3D cu->per_objfile; int low_set =3D 0; unrelocated_addr low =3D {}; unrelocated_addr high =3D {}; @@ -10930,13 +10929,10 @@ dwarf2_ranges_read (unsigned offset, unrelocated_= addr *low_return, { if (map !=3D nullptr) { - unrelocated_addr lowpc; - unrelocated_addr highpc; - - lowpc =3D per_objfile->adjust (range_beginning); - highpc =3D per_objfile->adjust (range_end); /* addrmap only accepts CORE_ADDR, so we must cast here. */ - map->set_empty ((CORE_ADDR) lowpc, (CORE_ADDR) highpc - 1, datum); + map->set_empty ((CORE_ADDR) range_beginning, + (CORE_ADDR) range_end - 1, + datum); } =20 /* FIXME: This is recording everything as a low-high @@ -15996,14 +15992,11 @@ cooked_indexer::check_bounds (cutu_reader *reader) cu, m_index_storage->get_addrmap (), cu->per_cu); if (cu_bounds_kind =3D=3D PC_BOUNDS_HIGH_LOW && best_lowpc < best_highpc) { - dwarf2_per_objfile *per_objfile =3D cu->per_objfile; - unrelocated_addr low =3D per_objfile->adjust (best_lowpc); - unrelocated_addr high =3D per_objfile->adjust (best_highpc); /* Store the contiguous range if it is not empty; it can be empty for CUs with no code. addrmap requires CORE_ADDR, so we cast here. */ - m_index_storage->get_addrmap ()->set_empty ((CORE_ADDR) low, - (CORE_ADDR) high - 1, + m_index_storage->get_addrmap ()->set_empty ((CORE_ADDR) best_lowpc, + (CORE_ADDR) best_highpc - 1, cu->per_cu); =20 cu->per_cu->addresses_seen =3D true; @@ -16309,13 +16302,10 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_da= ta *scanning_per_cu, =20 if (*high_pc > *low_pc) { - dwarf2_per_objfile *per_objfile =3D reader->cu->per_objfile; - unrelocated_addr lo =3D per_objfile->adjust (*low_pc); - unrelocated_addr hi =3D per_objfile->adjust (*high_pc); /* Need CORE_ADDR casts for addrmap. */ - m_index_storage->get_addrmap ()->set_empty ((CORE_ADDR) lo, - (CORE_ADDR) hi - 1, - scanning_per_cu); + m_index_storage->get_addrmap ()->set_empty + ((CORE_ADDR) *low_pc, (CORE_ADDR) *high_pc - 1, + scanning_per_cu); } }