🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.std.c
Article #5572

Re: volatile registers (was: The world is not ready for 'volatile')

#5572
From: Wendy Thrash
Date: Wed, 11 Jan 1989 00:45
14 lines
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!wendyt

Show 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