Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!ukma!gatech!amdcad!crackle!tim
From: tim@crackle.amd.com (Tim Olson)
Newsgroups: comp.lang.c
Subject: Re: *devaddr = 0 and volatile
Message-ID: <23706@amdcad.AMD.COM>
Date: 5 Dec 88 23:08:46 GMT
References: <674@quintus.UUCP> <117@halcdc.UUCP> <468@auspex.UUCP> <13784@oberon.USC.EDU> <14832@mimsy.UUCP> <9059@smoke.BRL.MIL> <21686@apple.Apple.COM>
Sender: news@amdcad.AMD.COM
Reply-To: tim@crackle.amd.com (Tim Olson)
Organization: Advanced Micro Devices, Inc. Sunnyvale CA
Lines: 20
Summary:
Expires:
Sender:
Followup-To:

In article <21686@apple.Apple.COM> desnoyer@Apple.COM (Peter Desnoyers) writes:
| In article <9059@smoke.BRL.MIL> gwyn@brl.arpa (Doug Gwyn (VLD/VMB) ) writes:
| >In article <14832@mimsy.UUCP> chris@mimsy.UUCP (Chris Torek) writes:
| >>I would suggest that the compiler complain about volatile references
| >>that it cannot compile `properly'.
| >
| >Sounds like a reasonable suggestion to me.
| >After all, if the programmer specified "volatile" it is safe to
| >assume that he had a reason for doing so, and if it can't be honored
| >then something is probably going to break.

I was speaking to Richard Relph about this subject, and he brought up
the problem of unaligned accesses through a pointer to a volatile object
which is larger than a char, but is not properly aligned [what a
mouthful!].  These also require multiple accesses to be performed
"correctly."  What should be done here?

	-- Tim Olson
	Advanced Micro Devices
	(tim@crackle.amd.com)