Newsgroups: fj.lang.c
Path: galaxy.trc.rwcp.or.jp!news.trc!nf2.iij.ad.jp!nr0.iij.ad.jp!news.iij.ad.jp!rim.or.jp!Q.T.Honey!netaidnews!news6-tokyonet!tokyonet.ad.jp!feed-tokyonet!astecgw!news
From: Hisao Aoyama <aoyama@astec.co.jp>
Subject: Re: Q:volatile pointer
X-Nntp-Posting-Host: kamui.astec.co.jp
Content-Type: text/plain; charset=ISO-2022-JP
Message-ID: <v4lnvyh5q8.fsf@astec.co.jp>
Lines: 62
Sender: aoyama@kamui
Organization: ASTEC, Inc. Tokyo, Japan
X-Newsreader: Gnus v5.3/Emacs 19.34
References: <34D09B5C.5EFA@mxp.meshnet.or.jp>
Mime-Version: 1.0 (generated by tm-edit 7.105)
Date: Fri, 30 Jan 1998 05:48:47 GMT
Xref: galaxy.trc.rwcp.or.jp fj.lang.c:5849
X-originally-archived-at: http://galaxy.rwcp.or.jp/text/cgi-bin/newsarticle2?ng=fj.lang.c&nb=5849&hd=a
X-reformat-date: Mon, 18 Oct 2004 15:18:22 +0900
X-reformat-comment: Tabs were expanded into 4 column tabstops by the Galaxy's archiver. See http://katsu.watanabe.name/ancientfj/galaxy-format.html for more info.

BERO <bero@mxp.meshnet.or.jp> writes:

> volatile$B$H%]%$%s%?$K4X$9$k<ALd$G$9!#(B
> 
> $B%]%$%s%?$NCM$,DL>oJQ99$5$l$:!"(B
> $B%]%$%s%?$N;X$9CM$,(Bvolatile$B$N>l9g!"(B
> $BJQ?t@k8@$O$I$N$h$&$K$9$l$P$$$$$N$G$7$g$&$+!)(B
> $BNc$($P(Bmemory-mapped-I/O$B$N$h$&$J%+%s%8$G$9!#(B
> 
> volatile long *ptr;
> $B$H$+$9$k$H!"(Bgcc$B$G$O(Bptr$B$NCM$,(Bvolatile$B$G$"$k$+$N$h$&$J!"(Bptr$B$rKh2s%l%8%9%?(B
> $B$KBeF~$9$k$h$&$J%3!<%I$K(B
> $B$J$k$h$&$G$9!#(B

$B$H$j$"$($:!$(B

volatile long *ptr;

$B$O=q$/$N$O@5$7$$$G$7$g$&!%(B

$B@N$N(B gcc $B$O$=$l$G4|BTDL$jF0$-$^$7$?$h!%$D$^$j(B

for(...){
*buf++ = *ptr;
}

$B$H=q$$$F:GE,2=$7$F$b(B ptr $B$,;X$9%"%I%l%9$+$iKh2s%m!<%I$7$F(B
$B$/$l$?$H5-21$7$F$$$^$9!%(B

$B>e5-$N$h$&$J%k!<%W$G(B ptr $B$NCM$r%l%8%9%?$K@_Dj$9$k%3!<%I$,(B
$B%k!<%W$+$i=P$7$F$b$i$($J$$$N$,LdBj$J$N$J$i!$(Bvolatile $B$O4X(B
$B78$J$/$F:GE,2=$NLdBj$G$O$J$$$G$7$g$&$+(B?

$B$=$&$G$"$l$P!$(B

1. $B:GE,2=$N%l%Y%k$r>e$2$F$_$k(B

2. $B<!$N$h$&$K$7$F(B gcc $B$r$@$^$9(B ($B:#$N(B gcc $B$O$o$+$j$^$;(B
   $B$s$,!$@N$O$@$^$5$l$^$7$?(B)


#defineXX do{
#define YY }while(0);

XX XX XX XX XX XX XX XX XX XX XX
for(...){
*buf++ = *ptr;
}
YY YY YY YY YY YY YY YY YY YY YY

3. $B$=$NItJ,$r(B asm $BJ8$G=q$/(B

$B$/$i$$$NBP:v$,9M$($i$l$k$H;W$$$^$9!%(B

----
Hisao Aoyama $B@D;3(B $B>0IW(B
ASTEC, Inc.  $B!J3t!K%"%9%F%C%/(B
aoyama@astec.co.jp




