all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Greg Minshall <minshall@acm.org>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
Subject: Re: make check fails? (emacs-26.1 w/modules)
Date: Fri, 07 Sep 2018 12:10:45 +0300	[thread overview]
Message-ID: <28975.1536311445@minshall-apollo.minshall.org> (raw)
In-Reply-To: Your message of "Wed, 05 Sep 2018 13:55:45 -0700." <01b1788d-b97f-2b3d-574c-d9e441acf9ad@cs.ucla.edu>

here's a possibility, but i don't really understand the plumbing.

i wonder if it's the case that in src/emacs-module.c, the member
"pending_non_local_exit" of "struct emacs_env_private" should be marked
"volatile".  my sense is that it is, among other things, what links the
lower (signal/interrupt context) and upper (thread context) halves of
emacs/emacs-module (though i can't really see it).

if so, probably also the members "non_local_exit_{symbol,data}" should
be similarly marked.

[marking pending_non_local_exit volatile *does* result in (what appears
to be) good optimization; this is hardly surprising, though, as probably
if the optimizer saw even "volatile int i;" as a member of the struct,
it would back way off any code around it.  if this is what is causing
the bad optimization, it seems likely to still be a compiler.]

cheers, Greg

ps -- it's been years, decades, since i've had occasion to think of
"volatile", and possiblly the technology of such "attributes" has
advanced in the meantime.



  parent reply	other threads:[~2018-09-07  9:10 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-03 14:39 make check fails? (emacs-26.1 w/modules) Greg Minshall
2018-09-03 15:12 ` Greg Minshall
2018-09-03 15:13 ` Eli Zaretskii
2018-09-03 15:16   ` Greg Minshall
2018-09-03 15:18   ` Greg Minshall
2018-09-04 10:39   ` Greg Minshall
2018-09-05  7:54     ` Paul Eggert
2018-09-05  9:14       ` Greg Minshall
2018-09-05 20:26       ` Greg Minshall
2018-09-05 20:55         ` Paul Eggert
2018-09-06  8:58           ` Robert Pluim
2018-09-06 10:32           ` Greg Minshall
2018-09-12 13:41             ` Robert Pluim
2018-09-12 14:56               ` Paul Eggert
2018-09-12 16:19               ` Greg Minshall
2018-09-12 16:37                 ` Robert Pluim
2018-09-12 16:27               ` Greg Minshall
2018-09-12 16:39                 ` Robert Pluim
2018-09-07  9:10           ` Greg Minshall [this message]
2018-09-03 18:27 ` Paul Eggert
2018-09-03 23:46   ` Greg Minshall

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

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

  git send-email \
    --in-reply-to=28975.1536311445@minshall-apollo.minshall.org \
    --to=minshall@acm.org \
    --cc=eggert@cs.ucla.edu \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.