From: Paul Eggert <eggert@cs.ucla.edu>
To: Eli Zaretskii <eliz@gnu.org>
Cc: fabrice.popineau@supelec.fr, emacs-devel@gnu.org,
ajmr@ilovetortilladepatatas.com
Subject: Re: Windows 64 port
Date: Fri, 02 Mar 2012 12:35:38 -0800 [thread overview]
Message-ID: <4F512F1A.7080806@cs.ucla.edu> (raw)
In-Reply-To: <83ty27bbmn.fsf@gnu.org>
On 03/02/2012 01:22 AM, Eli Zaretskii wrote:
> it is beyond ridiculous to say that a single extra clock cycle
> in a program such as Emacs should be seriously considered as an
> important factor to weigh against code cleanness and maintainability.
My primary objection to the change has always been maintainability
and cleanness; any extra instructions are in the noise.
ABLOCKS_BUSY is sometimes a pointer and sometimes an integer
(converted to a pointer). At the point when this code is executed:
int i = 0, aligned = (intptr_t) ABLOCKS_BUSY (abase);
ABLOCKS_BUSY is an integer. Changing the code to look like this:
int i = 0, aligned = (ABLOCKS_BUSY (abase) != NULL);
would cause a reader of the code to naturally make the
incorrect assumption that ABLOCKS_BUSY is a pointer. On
this ground alone the patch is dubious. The facts that
the patch is not needed for Windows 64 and that it might
slow things down a bit on some platforms are merely
icing on the cake.
I'm not saying the code can't be cleaned up -- it's pretty
messy and this one line is just one corner of the mess. But
any cleanup can and should be done independently of the Windows 64
port, and should be systematic rather than just fiddling
with this one line and making this line inconsistent with
the (ab)use of ABLOCKS_BUSY in the rest of the module.
My compilation was an optimized one, not that this matters
much.
next prev parent reply other threads:[~2012-03-02 20:35 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-19 20:18 Windows 64 port AJMR
2012-02-19 21:26 ` Eli Zaretskii
2012-02-19 22:05 ` Fabrice Popineau
2012-02-20 3:53 ` Eli Zaretskii
2012-02-20 17:48 ` Paul Eggert
2012-02-20 19:20 ` Fabrice Popineau
2012-02-20 20:43 ` Paul Eggert
2012-02-20 20:58 ` Eli Zaretskii
2012-02-20 23:11 ` Fabrice Popineau
2012-02-20 23:46 ` Paul Eggert
2012-02-21 13:22 ` Stefan Monnier
2012-02-21 18:26 ` Paul Eggert
2012-02-22 10:39 ` Richard Stallman
2012-02-22 16:27 ` Eli Zaretskii
2012-02-23 18:44 ` Richard Stallman
2012-02-23 19:16 ` Aurélien
2012-02-23 19:50 ` Lennart Borgman
2012-02-23 20:48 ` Fabrice Popineau
2012-02-24 5:52 ` Aurélien
2012-02-28 21:00 ` Fabrice Popineau
2012-02-28 22:09 ` Paul Eggert
2012-02-28 22:39 ` Fabrice Popineau
2012-02-29 18:08 ` Eli Zaretskii
2012-02-29 22:08 ` Paul Eggert
2012-02-29 18:04 ` Eli Zaretskii
2012-02-29 19:43 ` Paul Eggert
2012-02-29 21:24 ` Eli Zaretskii
2012-03-01 3:34 ` Paul Eggert
2012-03-01 4:03 ` Eli Zaretskii
2012-03-01 6:28 ` Paul Eggert
2012-03-01 7:04 ` Fabrice Popineau
2012-03-22 17:31 ` Fabrice Popineau
2012-03-23 18:26 ` Paul Eggert
2012-03-24 9:27 ` Fabrice Popineau
2012-03-22 17:39 ` Fabrice Popineau
2012-03-22 18:02 ` Andreas Schwab
2012-03-22 18:34 ` Fabrice Popineau
2012-03-22 22:46 ` Andreas Schwab
2012-03-22 23:06 ` Fabrice Popineau
2012-03-22 23:38 ` Andreas Schwab
2012-03-23 8:12 ` Eli Zaretskii
2012-03-23 9:45 ` Andreas Schwab
2012-03-23 10:27 ` Fabrice Popineau
2012-03-23 10:42 ` Andreas Schwab
2012-03-23 12:21 ` Eli Zaretskii
2012-03-23 10:11 ` Fabrice Popineau
2012-03-23 18:13 ` Paul Eggert
2012-02-20 20:47 ` Eli Zaretskii
2012-02-26 20:17 ` AJMR
2012-02-26 21:25 ` Eli Zaretskii
2012-02-27 17:37 ` AJMR
2012-02-28 21:32 ` Fabrice Popineau
2012-03-01 3:23 ` Paul Eggert
2012-03-01 7:24 ` Fabrice Popineau
2012-03-01 8:58 ` Paul Eggert
2012-03-01 17:45 ` Eli Zaretskii
2012-03-01 20:05 ` Fabrice Popineau
2012-03-02 9:22 ` Eli Zaretskii
2012-03-02 20:35 ` Paul Eggert [this message]
2012-03-02 21:32 ` Fabrice Popineau
2012-03-02 22:06 ` Eli Zaretskii
2012-03-03 5:42 ` Paul Eggert
2012-03-03 7:18 ` Eli Zaretskii
2012-03-04 21:48 ` Paul Eggert
2012-03-03 7:58 ` Eli Zaretskii
2012-03-10 13:43 ` Eli Zaretskii
2012-03-22 17:15 ` Fabrice Popineau
2012-03-22 17:22 ` Fabrice Popineau
2012-03-22 18:29 ` Fabrice Popineau
2012-03-22 20:53 ` Stefan Monnier
2012-03-27 12:47 ` Fabrice Popineau
2012-03-27 16:08 ` Paul Eggert
2012-02-20 9:41 ` Richard Stallman
2012-02-20 10:28 ` Dani Moncayo
2012-02-21 12:10 ` Richard Stallman
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=4F512F1A.7080806@cs.ucla.edu \
--to=eggert@cs.ucla.edu \
--cc=ajmr@ilovetortilladepatatas.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=fabrice.popineau@supelec.fr \
/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.