From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 104178 invoked by alias); 2 May 2019 19:56:49 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 104168 invoked by uid 89); 2 May 2019 19:56:48 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-3.0 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.1 spammy=Looking X-HELO: eggs.gnu.org Received: from eggs.gnu.org (HELO eggs.gnu.org) (209.51.188.92) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 02 May 2019 19:56:47 +0000 Received: from fencepost.gnu.org ([2001:470:142:3::e]:50899) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMHp0-000061-1I; Thu, 02 May 2019 15:56:46 -0400 Received: from [176.228.60.248] (port=3041 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1hMHoy-0002iN-Pc; Thu, 02 May 2019 15:56:45 -0400 Date: Thu, 02 May 2019 19:56:00 -0000 Message-Id: <83sgtwock8.fsf@gnu.org> From: Eli Zaretskii To: Kevin Buettner CC: gdb-patches@sourceware.org, simark@simark.ca In-reply-to: <20190502124509.0d2c546c@f29-4.lan> (message from Kevin Buettner on Thu, 2 May 2019 12:45:09 -0700) Subject: Re: The 'cold' function attribute and GDB References: <83wojaovbp.fsf@gnu.org> <077aee8c-7bef-bad6-a6a1-e69f116cc18b@simark.ca> <20190501195113.69aea752@f30-4.lan> <20190502003849.6759d177@f29-4.lan> <83muk4q3rr.fsf@gnu.org> <20190502112517.64b6fa20@f29-4.lan> <83zho4ofkh.fsf@gnu.org> <20190502121305.111b5fdc@f29-4.lan> <83y33oodv2.fsf@gnu.org> <20190502124509.0d2c546c@f29-4.lan> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-IsSubscribed: yes X-SW-Source: 2019-05/txt/msg00057.txt.bz2 > Date: Thu, 2 May 2019 12:45:09 -0700 > From: Kevin Buettner > Cc: gdb-patches@sourceware.org, simark@simark.ca > > > (gdb) x/i 0x012e1ce5 > > 0x12e1ce5 : movl $0xf5,0x8(%esp) > > What I (think I) actually want to see is "x/i 0x012e1f36". (gdb) x/i 0x012e1f36 0x12e1f36 : call 0x12e7b40 > This is the address corresponding to the call of emacs_abort in the > second address range. What I want to see is whether > print_vectorlike.cold.65 is used to print the address. As you see, it is. > Looking back at your earlier email where you provided me with > the output of the disassemble command, i just noticed something > odd: > > > Address range 0x12e1ce5 to 0x12e1f3b: > > 1824 emacs_abort (); > > 0x012e1f36 <+593>: call 0x12e7b40 > > The address range includes more addresses than are shown. I would > have expected the range to be something like "0x012e1f36 to 0x12e1f3b" > instead of starting at 0x12e1ce5 as shown. As I described in an earlier message, there are many jumps to print_vectorlike.cold.65 with different offsets from various places in print_vectorlike's disassembly, the smallest offset is zero. It sounds like the 32-bit code generation produces many more "cold" paths, and puts them all together under the name print_vectorlike.cold.65.