From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Robert Pluim Newsgroups: gmane.emacs.devel Subject: Re: Preview: portable dumper Date: Tue, 20 Feb 2018 19:09:24 +0100 Message-ID: <87r2pfh6sr.fsf@gmail.com> References: <21ee28b4-c3cd-4664-a501-8df6b78d3e48@email.android.com> <5b0c48b5-1dc2-f220-37a2-09877c6a9dcc@cs.ucla.edu> <1a9b40c9-3e24-14c2-f152-4a1a3b00e43a@dancol.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1519150586 15560 195.159.176.226 (20 Feb 2018 18:16:26 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 20 Feb 2018 18:16:26 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.91 (gnu/linux) Cc: Paul Eggert , emacs-devel@gnu.org To: Daniel Colascione Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 20 19:16:22 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eoCSj-0003a2-JY for ged-emacs-devel@m.gmane.org; Tue, 20 Feb 2018 19:16:21 +0100 Original-Received: from localhost ([::1]:57060 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eoCUl-00057Z-JC for ged-emacs-devel@m.gmane.org; Tue, 20 Feb 2018 13:18:27 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55276) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eoCM8-0005iF-QJ for emacs-devel@gnu.org; Tue, 20 Feb 2018 13:09:33 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eoCM4-0004pZ-N1 for emacs-devel@gnu.org; Tue, 20 Feb 2018 13:09:32 -0500 Original-Received: from mail-wr0-x236.google.com ([2a00:1450:400c:c0c::236]:35204) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eoCM4-0004pB-F1 for emacs-devel@gnu.org; Tue, 20 Feb 2018 13:09:28 -0500 Original-Received: by mail-wr0-x236.google.com with SMTP id l43so17000314wrc.2 for ; Tue, 20 Feb 2018 10:09:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=lceo7IcQiiEbu+ZKTRAHMFV/85gDdheJVhgNuxW9HeM=; b=F6La76TdK743D2/I0K9s1BrWldn+TBZRBMFyMeCY0CFT92D9U25TNwwzp/Tu2Bhkre qPQJ67gZImi0ZRzPeKWIgKNg2w4JVfK/Bg4pSCw4X4nmNDK5sNADVml4cwDi50I0OHGF whFdPAV/hmsQpYvPXSkO49TVLRjYrJadhJqpWijwQndIwiIG4rTa1WCp3p78a/lO7zSx G0ojMQkk7GAHmlMujM2WNsbdu/bgHQ4VlmnGmAm/ZMw1SiDj8gbMuP+so8wATq+GR9Mw TCKaBGLjn5QXaLY/u5R8n8xQoI6xcRjEEL4Q5an1XATigMHpNtjRd6nl9cn6JbyBUZ3O Oa3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=lceo7IcQiiEbu+ZKTRAHMFV/85gDdheJVhgNuxW9HeM=; b=uY61ZnJEwnwjD5i9QM/Y4inKbxeJipYPAfsS0RGQXlxRoEaH7FerobF3iU72Eg6WPa nMMWJ/c6VRlDLExi4THoIqljHJPJubvmGaosra3yzBx63qP7kuuSYbsG8RhmXSymGOTu 8yt2QPBw1PjPoGO0O778CMjK/cCNWVw9ftWV7xuD1MUn7nR0049EZjQk63o5DuON7NKH tiGfU10pt0eBWVjWatm2O4Vpo92bBS2IjY+TYScVAAkFbWwvI80EkqCdCD7Dl4LCYvp6 42KL53uq8PzJpZZ/0lONyny645RXu6FGNNbItojCGtQQjE1b+Ii1HaWPI6qpHpA8hJnP 2/QA== X-Gm-Message-State: APf1xPDneT33PgNhm7fpmk5UXQDqtTRFPcdyEyGZqVK+tShbYL9q7zhA BDU9sUWOaQfRPvSF3ocQSomFtfOkLJY= X-Google-Smtp-Source: AH8x2276vvQs2vdIAVEgfufFt6Vu+qQcdSBGlMHjeAXY8uJmGYv4TL+IghVKlK7uup2jfppNNCzb6A== X-Received: by 10.28.5.145 with SMTP id 139mr883316wmf.89.1519150166931; Tue, 20 Feb 2018 10:09:26 -0800 (PST) Original-Received: from rpluim-ubuntu (vav06-1-78-207-202-134.fbx.proxad.net. [78.207.202.134]) by smtp.gmail.com with ESMTPSA id v186sm21360190wmf.17.2018.02.20.10.09.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 Feb 2018 10:09:26 -0800 (PST) In-Reply-To: <1a9b40c9-3e24-14c2-f152-4a1a3b00e43a@dancol.org> (Daniel Colascione's message of "Tue, 20 Feb 2018 09:43:29 -0800") X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c0c::236 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:222936 Archived-At: Daniel Colascione writes: > On 02/20/2018 09:28 AM, Paul Eggert wrote: >> On 02/20/2018 09:19 AM, Daniel Colascione wrote: >>> Do you get an assertion failure if you enable assertion checking? >>> If we're seeing this kind of problem from the compiler expectation >>> alone, I'll definitely revert that change. >> >> In my experience, eassume (and 'assume') shouldn't be used for >> complicated expressions, as GCC is too-easily confused by >> them. eassume should be used only for expressions where the >> assumption really does help the compiler, either by generating >> significantly-better code or by pacifying a false alarm. > > I'd hoped things had gotten better, and some local testing seemed to > suggest it was safe to use these days. Apparently it's not, which is a > shame. It'd be nice, but not urgent, to track down which specific > assumptions caused what I think must be miscompilations so we could > report them upstream. The guilty change is: --- a/src/pdumper.c +++ b/src/pdumper.c @@ -607,7 +607,7 @@ dump_set_have_current_referrer (struct dump_context *ctx, bool have) static void DUMP_CLEAR_REFERRER (struct dump_context *ctx) { - eassert (ctx->have_current_referrer); + eassume (ctx->have_current_referrer); dump_set_have_current_referrer (ctx, false); if (dump_tracking_referrers_p (ctx)) ctx->current_referrer = Qnil; If I revert just that hunk, the build succeeds. Robert