From owner-FreeBSD-tech-jp@jp.freebsd.org  Mon Dec 28 13:34:45 1998
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) id NAA28210;
	Mon, 28 Dec 1998 13:34:45 +0900 (JST)
	(envelope-from owner-FreeBSD-tech-jp@jp.FreeBSD.org)
Received: from Foo.COM (tksm5DS04.tks.mesh.ad.jp [210.147.201.96])
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) with ESMTP id NAA28198
	for <freebsd-tech-jp@jp.freebsd.org>; Mon, 28 Dec 1998 13:34:41 +0900 (JST)
	(envelope-from shiba@mxs.mesh.ne.jp)
Received: foo.bar.org (envelope-from shiba@mxs.mesh.ne.jp)
Message-Id: <110119@mesh.ne.jp>
To: freebsd-tech-jp@jp.freebsd.org
From: shiba <shiba@mxs.mesh.ne.jp>
Mime-Version: 1.0
Content-Type: Multipart/Mixed;
	boundary="--Next_Part(Mon_Dec_28_13:33:58_1998_886)--"
Content-Transfer-Encoding: 7bit
Date: Mon, 28 Dec 1998 13:34:02 +0900
X-Dispatcher: imput version 9999999999999
Lines: 109
Reply-To: FreeBSD-tech-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+981115
X-Sequence: FreeBSD-tech-jp 1945
Subject: [FreeBSD-tech-jp 1945] how to make 'position independent code' ?
Errors-To: owner-FreeBSD-tech-jp@jp.freebsd.org
Sender: owner-FreeBSD-tech-jp@jp.freebsd.org
X-Originator: shiba@mxs.mesh.ne.jp

----Next_Part(Mon_Dec_28_13:33:58_1998_886)--
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit

libjpeg$B$r(BMMX$B2=$9$k$?$a$K(Bmozilla$B$N%=!<%9$h$jE:IU$N%Q%C%A$r:n@.(B
$B$7$F$_$^$7$?$,(B -fpic$B$rIU$1$k$H(Bcompile$B$G$-$^$;$s!#(B($BA4It$O=PMh$F(B
$B$$$^$;$s(B) 

gcc $B$N%=!<%9$r$_$k$H(B

/* Register to hold the addressing base for position independent
   code access to data items.  */
#define PIC_OFFSET_TABLE_REGNUM 3

pic$B%3!<%I$K;H$o$l$k$N$O(Bebx register$B$N$h$&$J$N$G!"(Basm$B$N0z?t$K(B
ebx$B$r4^$^$J$$$h$&$K$7$F$_$^$7$?$,F1MM$K$@$a$J$h$&$G$9!#(B

cc -S -O2 jdmerge.c
as -al jdmerge.s

$B$O$H$*$j$^$9!#(B

$B$3$3$r!"$3$&$7$m$H$+!"$b$&!"(Bjpeg$B$O(BMMX$B:Q$_$@$H$+$N%"%I%P%$%9$r(B
$B4|BTCW$7$F$*$j$^$9!#(B

#$B$d$C$Q$j(B,#include <machime/asm.h>$B$G!"(B
#PIC_PROLOGUE,PIC_EPILOGUE$B;H$C$F(Bassembler$B$G=q$/$N$G$7$g$&$+(B 


----Next_Part(Mon_Dec_28_13:33:58_1998_886)--
Content-Type: Application/Octet-Stream
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=mmx.patch.gz

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
0Eht8r+XQ1JVqj0AAA==

----Next_Part(Mon_Dec_28_13:33:58_1998_886)----
