unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Michael Welsh Duggan <mwd@md5i.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: mwd@md5i.com, Pip Cet <pipcet@gmail.com>,
	46502@debbugs.gnu.org, akrl@sdf.org
Subject: bug#46502: 28.0.50; [feature/native-comp] (d3a399dd) native-comp bootstrap failure
Date: Sun, 04 Apr 2021 22:56:40 -0400	[thread overview]
Message-ID: <87im51bfrr.fsf@md5i.com> (raw)
In-Reply-To: <jwvo8etr7hf.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Sun, 04 Apr 2021 18:49:29 -0400")

Stefan Monnier <monnier@iro.umontreal.ca> writes:

> Ping?

Sorry.  Wasn't able to trigger a failure on Friday.  (I tried.)  And
I've had other things to do on the weekend.  I'll be trying again Monday
morning.

>
> Stefan Monnier [2021-02-20 12:12:54] wrote:
>
>>>> One of the possibility is always the inlining (where we either inline
>>>> the source code or the bytecode depending on whether the function to be
>>>> inlined has already been byte-compiled).
>>> That's what it looks like. Are we supposed to fold constants in both cases?
>>
>> Not sure what you mean by "fold constants", but when inlining byte-code
>> we "disassemble" the byte code into LAP code (which is just like byte
>> code but represented as a Lisp list with symbols) an then splice that
>> into the LAP code of the caller.  So it tends to lead to slightly less
>> good code because we don't get to apply the source-level optimizer to
>> the combination of the caller and callee (but we still do apply the
>> bytecode (so called "peephole") optimizer).
>>
>> For example, Mattias's new constant propagation code and the resulting
>> constant folding opportunities doesn't work as well.
>>
>> We could change the way `defsubst` works so we *always* inline the
>> source code[1] (but at the cost of having to keep the source code
>> around).  But it doesn't seem worth it: we already have `cl-defsubst`
>> which does just that, and we also have `define-inline` which can do an
>> even better job.
>>
>>>> Can you try the patch below to see if it makes a difference?
>>> It does, no difference with the patch.
>>
>> So the effect of the patch is that the build is now (more) reproducible?
>>
>>
>>         Stefan
>>
>>
>> [1] except when cross-inlining from different dialects, of course.
>

-- 
Michael Welsh Duggan
(md5i@md5i.com)





  parent reply	other threads:[~2021-04-05  2:56 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-14  5:05 bug#46502: 28.0.50; [feature/native-comp] (d3a399dd) native-comp bootstrap failure Michael Welsh Duggan
2021-02-18  9:47 ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-02-18 10:14   ` Pip Cet
2021-02-18 10:29     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-02-18 14:34     ` Eli Zaretskii
2021-02-19 13:31       ` Pip Cet
2021-02-19 13:48         ` Eli Zaretskii
2021-02-19 14:26           ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-02-20  4:35           ` Pip Cet
2021-02-20  8:56             ` Eli Zaretskii
2021-02-20  9:15               ` Pip Cet
2021-02-20 11:21                 ` Eli Zaretskii
2021-02-20 11:48                   ` Eli Zaretskii
2021-02-20 12:03                     ` Pip Cet
2021-02-20 12:42                       ` Eli Zaretskii
2021-02-20 17:00                         ` Pip Cet
2021-02-20 17:18                           ` Eli Zaretskii
2021-02-20 15:42                   ` Stefan Monnier
2021-02-20 17:02                     ` Pip Cet
2021-02-20 17:12                       ` Stefan Monnier
     [not found]                         ` <jwvo8etr7hf.fsf-monnier+emacs@gnu.org>
2021-04-05  2:56                           ` Michael Welsh Duggan [this message]
2021-02-18 14:55   ` Michael Welsh Duggan
2021-02-18 15:12     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87im51bfrr.fsf@md5i.com \
    --to=mwd@md5i.com \
    --cc=46502@debbugs.gnu.org \
    --cc=akrl@sdf.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=pipcet@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).