From owner-FreeBSD-users-jp@jp.freebsd.org  Sat Feb 17 14:52:23 1996
Received: by mail.jp.freebsd.org (8.7.3+2.6Wbeta5/8.7.3) id OAA26358
	Sat, 17 Feb 1996 14:52:23 +0900 (JST)
Received: by mail.jp.freebsd.org (8.7.3+2.6Wbeta5/8.7.3) with SMTP id OAA26353
	for <freebsd-users-jp@jp.freebsd.org>; Sat, 17 Feb 1996 14:52:21 +0900 (JST)
Received: (from uucp@localhost) by ns1.sharp.co.jp (8.6.12/3.4W-95091612) id OAA20387 for <freebsd-users-jp@jp.freebsd.org>; Sat, 17 Feb 1996 14:51:17 +0900
Received: from messefw.sharp.co.jp(202.32.86.10) by ns1.sharp.co.jp via smap (V1.3mjr)
	id sma020383; Sat Feb 17 14:51:07 1996
Received: from shpcsl by messe.noc.mkhar.sharp.co.jp (5.61/6.4J.6-mkhar960112)
	id AA06582; Sat, 17 Feb 96 14:51:32 +0900
Received: from slabd.slab.tnr.sharp.co.jp by shpcsl.shpcsl.sharp.co.jp (4.1/6.4J.6-csl/m3.01)
	id AA12140; Sat, 17 Feb 96 14:52:02 JST
Received: from localhost.slab.tnr.sharp.co.jp by slabd.slab.tnr.sharp.co.jp (4.1/3.3W6-slabd : 1.1 
	id AA05966; Sat, 17 Feb 96 14:52:02 JST
Message-Id: <9602170552.AA05966@slabd.slab.tnr.sharp.co.jp>
To: FreeBSD-users-jp@jp.freebsd.org
In-Reply-To: Your message of "Sat, 17 Feb 1996 07:27:38 JST."
             <199602162227.HAA00531@necom830.cc.titech.ac.jp> 
Date: Sat, 17 Feb 1996 14:52:01 +0900
From: Norihiro Kumagai <kuma@slab.tnr.sharp.co.jp>
Reply-To: FreeBSD-users-jp@jp.freebsd.org
X-Distribute: distribute [version 2.1 (Alpha) patchlevel=19]
X-Sequence: FreeBSD-users-jp 399
Subject: [FreeBSD-users-jp 399] alignment of malloc-allocated strage (was Re: Pentium)
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org

$@7'C+$G$9!#(J

malloc $@$N%"%i%$%a%s%H$K$D$$$F!"$"$^$j>\$7$$Lu$G$O$"$j$^$;$s$,!"(J
$@Nc$K$h$C$F%A%c%A%c$rF~$l$5$;$FLc$$$^$9!#(J

In Message <199602162227.HAA00531@necom830.cc.titech.ac.jp>,
  Hiroshi Murakami <hiroshi@necom830.cc.titech.ac.jp> writes:
> $@$?$7$+(J K&R $@$G$O(J, $@@53N$JJ8>O$rK:$l$^$7$?$,(J,
> (malloc $@$O0z$-?t$NCM$K$b$h$j$^$9$,(J,)
> $@4pK\7?JQ?t$N$J$+$G:G$bD9$$8lD9$NG\?t$N%"%I%l%9$r%]%$%s%?!<$H$7$F(J
> $@JV$9;EMM$K$J$C$F$$$k$h$&$K=q$+$l$F$$$?$H;W$$$^$9(J.
> [$@$G$b$3$l$r<i$i$J$1$l$P@dBP$K$$$1$J$$$o$1$G$O$J$$$G$7$g$&$1$l$I(J]

$@$=$&$G$9$M!#(J

> ANSI $@$N(J C $@$G$I$&$J$C$F$$$k$+CN$j$^$;$s$,(J,

malloc $@$NJV$9%a%b%jNN0h$N%"%i%$%a%s%H$K$D$$$F$N5,Dj$O(J
malloc,calloc,realloc $@7O$N>O$N@hF,(J(ANSI C89 $@$N(J 4.10.3)$@$K(J

  The pointer returned if the allocation succeeds is aligned so that
  it may be assigned to a pointer to any type of object and then used
  to access such an object or an array of such objects in the space
  allocated (until the space is explicitly freed or reallocated).

$@$H$"$k$@$1$G$9$M!#$3$l$O(J malloc $@$r;H$&B&$KN)$F$O!"(Jmalloc $@$NJV$7CM$N%](J
$@%$%s%?$O!"$I$s$J7?$N%G!<%?$rF~$l$F$bBg>fIW$@$H$$$&J]>Z$K$J$j$^$9$7!"(J
malloc $@%i%$%V%i%j$r:n$kB&$KN)$F$P!"2?$rF~$l$F$bBg>fIW(J($@%3%"$rEG$+$J$$$J(J
$@$I(J)$@$J$h$&$K:n$j$5$($9$l$P!"#4%P%$%H$@$m$&$H#8%P%$%H$@$m$&$H!"$I$&$$$&(J
$@%"%i%$%a%s%H$K$7$F$bNI$$$H$$$&$3$H$K$J$k$G$7$g$&!#(J

> $@$J$N$G(J, malloc $@$N=q$-J}<!Bh$H$$$($k$G$7$g$&(J.
> $@F0:n$r%W%i%C%H%U%)!<%`(J/OS$@$N%P!<%8%g%s$r1[$($FJ]>Z$7$h$&$H(J
> $@;W$($P(J, 8Byte alignment $@$r<i$k(J malloc $@$N%=!<%9$r0l=o$K(J
> $@$/$C$D$1$FG[I[$9$k$7$+$J$$$G$7$g$&(J.

$@$*$C$7$c$kDL$j!#(J

($@<+J,$G:n$k$H8@$&$N$O$h$C$]$I$N3P8g$,$$$k$H;W$&(J) $@7'C+(J $@E5Bg(J
$@%7%c!<%W!J3t!K5;=QK\It%=%U%H%&%(%"8&5f=j(J
