From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Andrea Corallo via "Emacs development discussions." Newsgroups: gmane.emacs.devel Subject: Re: How does nativecomp compile circular lists? Date: Wed, 28 Jul 2021 15:11:47 +0000 Message-ID: References: <6247f78b-282f-27e7-e0cf-6bc3b1cdee26@gmail.com> Reply-To: Andrea Corallo Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37876"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Emacs-Devel devel To: Jimmy Yuen Ho Wong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Jul 28 17:12:53 2021 Return-path: Envelope-to: ged-emacs-devel@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 1m8lEq-0009j1-Bx for ged-emacs-devel@m.gmane-mx.org; Wed, 28 Jul 2021 17:12:52 +0200 Original-Received: from localhost ([::1]:35902 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m8lEo-0005Zk-Ox for ged-emacs-devel@m.gmane-mx.org; Wed, 28 Jul 2021 11:12:50 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42354) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m8lDw-0004Rv-QB for emacs-devel@gnu.org; Wed, 28 Jul 2021 11:11:56 -0400 Original-Received: from mx.sdf.org ([205.166.94.24]:52725) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m8lDu-0004sc-K6 for emacs-devel@gnu.org; Wed, 28 Jul 2021 11:11:56 -0400 Original-Received: from mab (ma.sdf.org [205.166.94.33]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 16SFBlDQ013871 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO); Wed, 28 Jul 2021 15:11:47 GMT In-Reply-To: (Jimmy Yuen Ho Wong's message of "Wed, 28 Jul 2021 14:49:02 +0100") Received-SPF: pass client-ip=205.166.94.24; envelope-from=akrl@sdf.org; helo=mx.sdf.org X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:271752 Archived-At: Jimmy Yuen Ho Wong writes: [...] > [re-adding the list] > > Hi Jimmy, > > thanks for the patch. > > So I guess is clear this is unrelated to circular lists and probably > disassemble is just broken for every native compiled function in this > configuration. > > We might have other architecture+OS where function labels start with '_' > but so far the patch LGTM, I just suggest a small nit. > > > diff --git a/lisp/emacs-lisp/disass.el b/lisp/emacs-lisp/disass.el > > index 6ac76f1c19..d0e3bf7bf4 100644 > > --- a/lisp/emacs-lisp/disass.el > > +++ b/lisp/emacs-lisp/disass.el > > @@ -95,6 +95,7 @@ disassemble-internal > > (re-search-forward (concat "^.*" > > (regexp-quote > > (concat "<" > > + (if (eq system-type 'darwin) "_") > ^^^ > I'd use `when' here. > > (comp-c-func-name > > (subr-name obj) "F" t) > > ">:")))) > > Do you aready have copyright assignment? > > Best Regards > > Andrea > > I do have an existing copyright assignment. No objection to using a when there, would you like me to submit a new patch > or you are fine with editing it yourself? If you could provide a complete patch (including Changelog entry) that would be appreciated thanks (please see the CONTRIBUTE file if in doubt). I'll be happy to install your patch if you don't have write access. > As to whether this is related to circular lists, I'm not so sure yet. This is certanly not related to circular lists, this is just about how lables are named on this specific triplet. > There's definitely something in native compilation > that compiles code that behaves differently when circular lists are involved, I just haven't found out what interaction > with circular lists will result in compilation failure or optimizing the result away. Any clues for what I should try is > much appreciated. If you have some code/package that behaves differently byte vs native compiled you should be able to identify the function causing the difference when executed. Once that is done we could start investigating. Regards Andrea