From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stephen J. Turnbull" Newsgroups: gmane.emacs.devel Subject: Re: stop using P_, __P in header files Date: Tue, 06 Jul 2010 13:32:44 +0900 Message-ID: <87vd8t9qmr.fsf@uwakimon.sk.tsukuba.ac.jp> References: <4C2DB1E0.7010305@swipnet.se> <83aaqa9ml7.fsf@gnu.org> <9A690AC5-8C59-4691-88AC-EDDABCF2F704@raeburn.org> <83ocem8w6i.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1278392766 11677 80.91.229.12 (6 Jul 2010 05:06:06 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 6 Jul 2010 05:06:06 +0000 (UTC) Cc: dann@gnu.org, Eli Zaretskii , emacs-devel@gnu.org To: Ken Raeburn Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 06 07:06:04 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OW0M2-0003lE-E0 for ged-emacs-devel@m.gmane.org; Tue, 06 Jul 2010 07:05:58 +0200 Original-Received: from localhost ([127.0.0.1]:58215 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OW0M2-0005At-0H for ged-emacs-devel@m.gmane.org; Tue, 06 Jul 2010 01:05:58 -0400 Original-Received: from [140.186.70.92] (port=40749 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OW0Lv-0005Ao-1Y for emacs-devel@gnu.org; Tue, 06 Jul 2010 01:05:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OW0Lt-00056a-RI for emacs-devel@gnu.org; Tue, 06 Jul 2010 01:05:50 -0400 Original-Received: from mtps02.sk.tsukuba.ac.jp ([130.158.97.224]:43430) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OW0Lq-00054y-4j; Tue, 06 Jul 2010 01:05:46 -0400 Original-Received: from uwakimon.sk.tsukuba.ac.jp (uwakimon.sk.tsukuba.ac.jp [130.158.99.156]) by mtps02.sk.tsukuba.ac.jp (Postfix) with ESMTP id 39B49820D; Tue, 6 Jul 2010 13:37:56 +0900 (JST) Original-Received: by uwakimon.sk.tsukuba.ac.jp (Postfix, from userid 1000) id 23CD11A291A; Tue, 6 Jul 2010 13:32:44 +0900 (JST) In-Reply-To: X-Mailer: VM 8.0.12-devo-585 under 21.5 (beta29) "garbanzo" 6466bc9ebf15 XEmacs Lucid (x86_64-unknown-linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:126823 Archived-At: Ken Raeburn writes: > Do the non-GCC compilers (those that have halfway decent > optimizers) still need "register" these days to indicate what > variables belong in registers, or do the optimizers do a reasonable > job of working it out for themselves? In principle, "register" is still occasionally useful. If you have a large number of variables in a loop which has two long branches, then which variables belong in registers depend on which branch is taken more often, something that the compiler cannot know. OTOH, without profiling typically the programmer won't know, either. Also, "large" depends on the number of registers available, of course. In the case of x86, "large" is pretty small, about 8-10 IIRC.