Article View: comp.std.c
Article #5572Re: volatile registers (was: The world is not ready for 'volatile')
From: Wendy Thrash
Date: Wed, 11 Jan 1989 00:45
Date: Wed, 11 Jan 1989 00:45
14 lines
1194 bytes
1194 bytes
In article <298@twwells.uucp> bill@twwells.UUCP (T. William Wells) writes: >To alias something, one must have its >address. Registers can't have their addresses taken. Therefore >register variables can't be aliased. QED. If the above is a statement about register variables in standard-conforming C programs, it may be true; if it's a statement about computer hardware, it is false. On Pyramid hardware, for example, one is quite free to take the addresses of registers (though it takes a couple of instructions to do so). Our current implementation of C also allows taking the address of a register variable, remarking as it does that, "warning: taking the address of a register variable is not portable". We now have a proof and a counterexample.
Technical Details
Message-ID:
<54573@pyramid.pyramid.com>Path:
arc1-ca.pugleaf.net!utzoo!attcan!uunet!lll-winken!ames!oliveb!pyramid!wendytShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!lll-winken!ames!oliveb!pyramid!wendyt From: wendyt@pyrps5 (Wendy Thrash) Newsgroups: comp.std.c Subject: Re: volatile registers (was: The world is not ready for 'volatile') Message-ID: <54573@pyramid.pyramid.com> Date: 11 Jan 89 00:45:38 GMT Sender: daemon@pyramid.pyramid.com Reply-To: wendyt@pyrps5.UUCP (Wendy Thrash) Organization: Pyramid Technology Corp., Mountain View, CA Lines: 14