Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83; site abnjh.UUCP
Path: utzoo!watmath!clyde!floyd!whuxle!spuxll!abnjh!usenet
From: usenet@abnjh.UUCP (usenet)
Newsgroups: net.arch,net.lang.c
Subject: Re: RISC perspective -- register variables
Message-ID: <502@abnjh.UUCP>
Date: Wed, 14-Mar-84 10:27:29 EST
Article-I.D.: abnjh.502
Posted: Wed Mar 14 10:27:29 1984
Date-Received: Thu, 15-Mar-84 07:24:55 EST
References: <936@hou5e.UUCP>
Organization: ATTIS, NJ
Lines: 14

The keyword 'register' does not mean just 'fast' !!!
It also means that there will never be a pointer to that variable.
(Technically, there can be no 'aliasing' problems for register
variables.)  Thus, it is meaningful and potentially useful for you
to declare all the variables in a program to be register
storage class.  The compiler can apply certain optimizations if it
knows there are no aliases for a particular variable.  Those
optimizations are not 'safe' to apply in the general case.

PCC, at least, enforces this restriction; you cannot apply the '&'
operator to a register variable.

Rick Thomas
ihnp4!abnji!rbt   or   ihnp4!abnjh!usenet