From owner-FreeBSD-users-jp@jp.freebsd.org  Thu Feb  5 12:22:45 1998
Received: by jaz.jp.freebsd.org (8.8.8+3.0Wbeta7/8.7.3) id MAA18917
	Thu, 5 Feb 1998 12:22:45 +0900 (JST)
Received: by jaz.jp.freebsd.org (8.8.8+3.0Wbeta7/8.7.3) with ESMTP id MAA18907
	for <FreeBSD-users-jp@jp.freebsd.org>; Thu, 5 Feb 1998 12:22:43 +0900 (JST)
Received: from mxs.meshnet.or.jp (tksm2DS35.tks.mesh.ad.jp [133.205.221.185]) by meshsv88.tk.mesh.ad.jp (8.8.4+2.7Wbeta4/3.5Wpl1-97120411) with ESMTP id MAA24386; Thu, 5 Feb 1998 12:22:39 +0900 (JST)
Received: foo.bar.org; Thu, 5 Feb 1998 12:22:19 +0900 (JST)
Message-Id: <Lucky.199802050322.MAA20141.Lucky>
To: FreeBSD-users-jp@jp.freebsd.org, shimizu@phys.kyushu-u.ac.jp
From: Shiba <shiba@mxs.meshnet.or.jp>
In-Reply-To: Your message of "Thu, 5 Feb 1998 03:24:18 +0900 (JST)"
	<199802041824.DAA21803@psun0.phys.kyushu-u.ac.jp>
References: <199802041824.DAA21803@psun0.phys.kyushu-u.ac.jp>
X-Mailer: Mew version 1.91 on XEmacs 20.3 (Vatican City)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Date: Thu, 05 Feb 1998 12:22:18 +0900
X-Dispatcher: imput version 999999
Lines: 109
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: bulk
X-Distribute: distribute [version 2.1 (Alpha) patchlevel=24]
X-Sequence: FreeBSD-users-jp 24218
Subject: [FreeBSD-users-jp 24218] Re: Mystery of __main.o in libgcc.a
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org

>>>>> <199802041824.DAA21803@psun0.phys.kyushu-u.ac.jp> $B$G(B
>>>>> shimizu@phys.kyushu-u.ac.jp (Yoshifumi R. Shimizu) $BMM(B $B$X$NJV?.$G$9!#(B

R. S> $@3N$+$K(B (Jstatic(B (Jint(B (Jinitialized(B $@$r$I$N%;%0%a%s%H$KCV$/$+$,0c$&$h$&$G$9$M!#(B
R. S> $@$?$@!"(Jint(B $@$O(B (J4byte(B $@$J$N$G(B (Jalignment(B $@$K:9$,=P$k$N$,$b$&0l$DM}2r$G$-$J$$(B
R. S> $@$N$G$9$,!JL5CN$r$5$i$1$@$9$h$&$G62=L$G$9!K!#(B

	load module$B$O(B text data bss$B$N=g$GJB$s$G$$$k$N$G!"(B
	data$BIt$KJQ99$,$"$C$FB.$/$J$C$?$H$$$&$3$H$O!"(BC$B$G$$$&$H(B
		double a[100] ={0};
	$B$_$?$$$J(Barea$B$r7W;;$K;H$C$F$$$k$N$G$O(B?
	$BB?J,!"(Bblockdata?$B$b$7$/$O!"(Bcommon $B$G<h$C$?(Barea$B$K0lIt(B
	data$BJ8$G%G!<%?$r=q$$$F$$$k$H$+!#(B

R. S> $@!!$H!"$3$3$^$G=q$$$F(B (J.align(B (J2(B $@$H$$$&$N$O(B (J2byte(B (Jboudary(B $@$H$$$&$3$H$@$H5$$E(B
R. S> $@$-$^$7$?!#(B

	2^2$B$G(B4byte boundary$B$G$O(B?
	.align x$B$O(B 2^x boundary
	.lcomm a,x$B$O(B x boundary

R. S> (J>>-malign-double(B (J-malign-functions=4(B (J-malign-loops=4(B
R. S> (J>>-malign-jumps=4(B
R. S> (J>(B
R. S> (J>$@$G$9$,!"$&$A$+$o(B $@$5$s$b$*$C$7$c$i$l$F$$$^$9$,!";d$NNc$G$d$C$F$_$^$7$?$,(B
R. S> (J>$@A4A3JQ2=$J$7$G$9!#(B

	$B$G!"$b$&$A$g$C$H$$$&$H!"(B
		(J-malign-functions=4(B (J-malign-loops=4(B (J-malign-jumps=4(B
	$B$O!"(Bcode$B$NJ}$N(Balignment$B$G!";d$N!"(Bkernel$B$G$O!"(B

f01120f0 t _exec_map_first_page
f0112270 t _exec_unmap_first_page
f01122a0 T _exec_new_vmspace
f0112350 T _exec_extract_strings
f0112480 t _exec_copyout_strings
f01127d0 t _exec_check_permissions

	$B$H!"(B16 byte boundary$B$GB7$C$F$$$^$9!#(B((J-malign-functions=4$B$@$1$N>pJs$G$9$,(B)
		(J-malign-double(B
	$B$O!"(Bdata(bss,data)$B$K8z$$$FMh$kH&$G$9!#(B

R. S> $@$N$h$&$K$J$j!"(J4byte(B $@$G(B (Jalign(B $@$5$;$k$H7k2L$O0lCW$7$^$7$?!#$=$l$K$3$NNc(B
R. S> $@$@$H(B (J3$@CJ3,$K:9$,$G$k$h$&$G$9!JI,$:$7$b(B (J2$@G\$H$$$&$o$1$G$O$J$$!K!#B>$N(B
R. S> $@ItJ,$G$N(B (Jalignment(B $@$N68$$$,=P$F$$$k$H$$$&$3$H$G$9$M!#(B

	__DYNAMIC$B$G!"(B12byte$B$H$C$F$$$k$h$&$J$N$G!"(Bdynamic
	link$B$7$?>l9g$O(B4byte$B$N(Bdummy$B$,I,MW$+$bCN$l$^$;$s!#(B

R. S> $@!!$H$$$&$3$H$G!">/$J$/$H$b$3$N(B (J__main.c(B (Jin(B (Jlibgcc.a(B $@$K$D$$$F$O(B

R. S> (J>-malign-double(B (J-malign-functions=4(B (J-malign-loops=4(B
R. S> (J>-malign-jumps=4(B

R. S> $@$H$$$&(B (Joptions(B $@$OM-8z$N$h$&$G$9!#$H$$$&$3$H$O(B (Jgcc(B (J(FreeBSD(B $@$N(B (Jcc)$@$G$O(B
R. S> $@ImB0$N(B (Jlibrary(B $@$G$O(B (J4byte(B (Jboundary(B $@$G(B (Jalign(B $@$5$l$F$$$J$$$H$$$&$3$H(B
R. S> $@$G$9$M!#LdBj$r2r7h$9$k$?$a$K$O$^$:%7%9%F%`$N$9$Y$F$N(B (Jlibrary(B $@$r(B $@$3$N(B
R. S> (Joption(B $@IU$-$G(B (Jcompile(B $@$7D>$5$J$H$$$1$J$$$o$1$G$9$M!#(B

	/etc/make.conf$B$N(BCFALGS,COPTFLAGS$B$K(Balign-double$B$rF~$l$J$1(B
	$B$l$P$J$j$^$;$s!#$G$J$$$H(Blibkvm$B$,0c$C$FMh$^$9!#(B($B9=B$BN(B
	$B$NBg$-$5$,0c$C$FMh$k$N$G(B)

	$BM#0l$NLdBj$O(Blibjpeg$B$G$9!#$3$l$O!"(B-malign-double$B$rF~$l(B
	$B$k$H!"(Bnetscape$BEy$N(Bjpeg$B$N%5%$%:$,0c$C$FMh$FJ86g$r$$$o$l(B
	$B$^$9!#(B

R. S> $@!!$=$l$H$b$&0l$D$o$+$i$J$$$3$H$,$"$k$N$G$9$,!":G=i$N%a!<%k(J[#24157]$@$G(B
R. S> (J__main.o(B $@$r(B (Jstrip(B $@$7$?$b$N$r(B (Jlink(B $@$9$k$H!"$^$?!"7k2L$,JQ$o$k$HJs9p(B

	(J__main.o(B $@$r(B (Jstrip$B$9$k$H!"(Blink$B$G$-$k$s$G$9$+(B?
	ld __main.o -x -r __main.o
	$B$@$H(BOK$B$G$9$,!#(B

R. S> $@$7$^$7$?$,!"$3$l$O$I$&$7$F$J$s$G$7$g$&!#(Jstrip(B $@$H$$$&$N$O(B (Jdebug(B $@>pJs(B
R. S> $@$J$I$r<h$j5n$k$@$1$G(B (Jlinkage(B $@$KI,MW$J>pJs$O;D$C$F$$$k$b$s$@$H;W$C$F(B
R. S> $@$$$^$7$?$,!"0c$&$N$G$7$g$&$+!#;d$O$$$D$b(B (Jdynamic-link(B (Jlibrary(B $@$r(B
R. S> $@:n$k;~(B (Jstrip(B $@$b$7$F$7$^$&$N$G$9$,!"$3$l$r$9$k$+$I$&$+$G(B (Jalignment(B
R. S> $@$N>u67$,JQ$o$j$&$k$H$$$&$3$H$G$7$g$&$+!#(B

-00000010: a401 0000 2010 0000 0000 0000 0000 0000  .... ...........
+00000010: 0000 0000 2010 0000 0000 0000 0000 0000  .... ...........

	$B$H!"(Bsymbol table$B0J30$OF1$8$+$H!">e$N(Ba4010000$B$,(Bsymbol 
	table$B$N(Bbyte$B?t$G$9(B(420)$B!#(B20100000$B$O(Bentry point

	$B$G!"JQ$o$kH&$OL5$$$H$*$b$$$^$9$,!#(B
	grep a_sym /usr/src/lib/csu/i386/*
	grep a_sym /usr/src/gnu/usr.bin/ld/rtld/*
	grep a_sym /sys/kern/*
	grep N_STROFF /usr/src/lib/csu/i386/*
	grep N_STROFF /usr/src/gnu/usr.bin/ld/rtld/*
	grep N_STROFF /sys/kern/*
	$B$G$O!"2?$b=P$^$;$s!#(B

$B!t=i?4<T8N!"$3$l0J>e$O$o$+$j$^$;$s!#(B:p

R. S> $@$&$A$+$o(B $@$5$s!"(B
R. S> (J>C$@$G=q$$$?%W%m%0%i%`$G$"$l$P(B (Jstatic(B $@JQ?t$r;H$o$J$$!"(Jmalloc(B $@$r;H$C$FJQ?t(B
R. S> (J>$@NN0h$r3NJ]$9$k$+(B (Jglobal(B $@$KJQ?t$r<h$k(J($@$G$bNI$+$C$?$h$&$J5$$,$7$^$9$,(J)$@$H(B
R. S> (J>$@$$$&$h$&$JBP=h$NJ}K!$,$"$k$N$G$9$,!"(Jg77(B $@$N>l9g$OD>@\<j$r2C$($K$/$$$N$G(B
R. S> (J>$@$O$J$$$+(J....$@$H$O;W$$$^$9$,;H$C$F$$$J$$$N$G$h$/$o$+$j$^$;$s!#(B

	$B$3$l$O!"7kO@$,0c$C$F$$$^$9!#(Bstatic$B$H(Bglobal$B$O(B
	scope$B0J30$OF1$8$G$"$C$F!"$=$l$b$$$&$J$i!"(B
	$B!X(Bstack(auto$BJQ?t(B)$B$O(Bmalign-double$BBP>]30$G$"$k$+$i!"(B
	stack$B$K(Bdouble(long double,long long$B$b(B)$B$NJQ?t$r<h$i$J(B
	$B$$!Y$,@5$7$$$G$9!#(B($BM}M3!'(BFreeBSD-users-jp 9281,
	FreeBSD-users-jp 9284,FreeBSD-users-jp 9290)
