From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#47067: 28.0.50; [feature/native-comp] Crash while scrolling through dispnew.c Date: Sat, 13 Mar 2021 17:27:27 +0200 Message-ID: <83mtv7hy5c.fsf@gnu.org> References: <83sg52lykn.fsf@gnu.org> <83mtv8lrmf.fsf@gnu.org> <83czw4lelg.fsf@gnu.org> <83mtv8jgn2.fsf@gnu.org> <834khfjv7q.fsf@gnu.org> <83tupfia1m.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="29637"; mail-complaints-to="usenet@ciao.gmane.io" Cc: akrl@sdf.org, 47067@debbugs.gnu.org To: Pip Cet Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Mar 13 16:28:10 2021 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lL6BW-0007cA-Gl for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 13 Mar 2021 16:28:10 +0100 Original-Received: from localhost ([::1]:53424 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lL6BU-0001Rm-Um for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 13 Mar 2021 10:28:08 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51314) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lL6BO-0001RV-2a for bug-gnu-emacs@gnu.org; Sat, 13 Mar 2021 10:28:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:48946) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lL6BN-0003tk-RR for bug-gnu-emacs@gnu.org; Sat, 13 Mar 2021 10:28:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lL6BN-0000Dq-LR for bug-gnu-emacs@gnu.org; Sat, 13 Mar 2021 10:28:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 13 Mar 2021 15:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 47067 X-GNU-PR-Package: emacs Original-Received: via spool by 47067-submit@debbugs.gnu.org id=B47067.1615649254821 (code B ref 47067); Sat, 13 Mar 2021 15:28:01 +0000 Original-Received: (at 47067) by debbugs.gnu.org; 13 Mar 2021 15:27:34 +0000 Original-Received: from localhost ([127.0.0.1]:60492 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lL6Aw-0000DB-FP for submit@debbugs.gnu.org; Sat, 13 Mar 2021 10:27:34 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:33338) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lL6As-0000Cw-K0 for 47067@debbugs.gnu.org; Sat, 13 Mar 2021 10:27:33 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:34857) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lL6An-0003Wc-0C; Sat, 13 Mar 2021 10:27:25 -0500 Original-Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:3475 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lL6Ak-0002Tz-Qt; Sat, 13 Mar 2021 10:27:24 -0500 In-Reply-To: (message from Pip Cet on Sat, 13 Mar 2021 11:24:28 +0000) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:202266 Archived-At: > From: Pip Cet > Date: Sat, 13 Mar 2021 11:24:28 +0000 > Cc: Andrea Corallo , 47067@debbugs.gnu.org > > On Sat, Mar 13, 2021 at 11:10 AM Eli Zaretskii wrote: > > > From: Pip Cet > > > Date: Sat, 13 Mar 2021 08:53:04 +0000 > > > Cc: Andrea Corallo , 47067@debbugs.gnu.org > > > > > > It's c-beginning-of-statement-1 that I think is the immediate caller. > > > > It's nowhere in the C backtrace, only its caller > > But it was in one of the previous backtraces? Too many moons ago. The ABI was bumped since then, and so did the *.eln files. > > > Can you disassemble the function around 0x09c32285 (or, in another > > > dump, whatever calls Flss), particularly the 256 bytes or so before > > > that EIP? > > > > Below. The updated address for the caller of Flss is 0x09d82285, > > which is not in any function whose name is known to GDB. > > That's normal, assuming you didn't compile with comp-debug > 0. If that's normal, why did Andrea say that he didn't see such "??" in his backtraces? And if that's because Andrea builds with comp-debug above the default zero, then I think either the doc string or the set of values (or both) need to be updated: (defcustom comp-debug 0 "Debug level for native compilation, a number between 0 and 3. This is intended for debugging the compiler itself. 0 no debugging output. This is the recommended value unless you are debugging the compiler itself. 1 emit debug symbols and dump pseudo C code. 2 dump gcc passes and libgccjit log file. 3 dump libgccjit reproducers." The first line is somewhat deceptive, as it doesn't say portions of the backtrace will be anonymous; the backtrace is useful even if not "debugging the compiler itself". And the description of level 1 says it will also "dump pseudo C code", which I don't think is needed for most of the debugging. Maybe we need an intermediate level that just leaves the symbols without dumping the pseudo code? > > 0x09d82268: mov %edi,0x4(%esp) > > 0x09d8226c: mov %eax,-0xe8(%ebp) > > 0x09d82272: mov %edx,-0xe4(%ebp) > > 0x09d82278: movl $0x2,(%esp) > > 0x09d8227f: call *0x1318(%ebx) > > 0x09d82285: mov %edx,-0xec(%ebp) <<<<<<<<<<<<<<<<<<<< > > So EDI is bunk at this point. Can you go back a bit further to where > it's initialized? Sorry, I don't understand: I gave you the disassembly of 512 bytes before, isn't that enough to see where EDI is assigned the value? Or what do you mean by "go back"?