From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca (simark.ca [158.69.221.121]) by sourceware.org (Postfix) with ESMTPS id 9644B386F01D for ; Tue, 1 Sep 2020 14:41:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 9644B386F01D Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=simark.ca Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=simark@simark.ca Received: from [10.0.0.11] (173-246-6-90.qc.cable.ebox.net [173.246.6.90]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by simark.ca (Postfix) with ESMTPSA id 4E1901E055; Tue, 1 Sep 2020 10:41:02 -0400 (EDT) Subject: Re: [PATCH] Have partial symbol tables own psymbol vectors To: Tom Tromey Cc: gdb-patches@sourceware.org References: <20200828193304.17475-1-tom@tromey.com> <871rjo7xic.fsf@tromey.com> <87sgc27nez.fsf@tromey.com> From: Simon Marchi Message-ID: <74b64278-9789-9130-13fb-c722b06c09a9@simark.ca> Date: Tue, 1 Sep 2020 10:41:02 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: <87sgc27nez.fsf@tromey.com> Content-Type: text/plain; charset=utf-8 Content-Language: fr Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.9 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, NICE_REPLY_A, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Sep 2020 14:41:03 -0000 I went through the patch again, I think I understand it better and it looks good to me. Even though there is slightly bigger memory usage, it's much easier to understand how things are organized like this. One question here: > @@ -1666,16 +1605,6 @@ add_psymbol_to_list (gdb::string_view name, bool copy_name, > void > init_psymbol_list (struct objfile *objfile, int total_symbols) > { > - if (objfile->partial_symtabs->global_psymbols.capacity () == 0 > - && objfile->partial_symtabs->static_psymbols.capacity () == 0) > - { > - /* Current best guess is that approximately a twentieth of the > - total symbols (in a debugging file) are global or static > - oriented symbols, then multiply that by slop factor of > - two. */ > - objfile->partial_symtabs->global_psymbols.reserve (total_symbols / 10); > - objfile->partial_symtabs->static_psymbols.reserve (total_symbols / 10); > - } > } Did you keep this empty function on purpose? Simon