From owner-freebsd-hackers Thu Aug 28 17:35:51 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id RAA29925 for hackers-outgoing; Thu, 28 Aug 1997 17:35:51 -0700 (PDT) Received: from whizzo.TransSys.COM (whizzo.TransSys.COM [144.202.42.10]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id RAA29902 for ; Thu, 28 Aug 1997 17:35:39 -0700 (PDT) Received: from localhost.transsys.com (localhost.transsys.com [127.0.0.1]) by whizzo.TransSys.COM (8.8.7/8.7.3) with SMTP id UAA17627; Thu, 28 Aug 1997 20:35:26 -0400 (EDT) Message-Id: <199708290035.UAA17627@whizzo.TransSys.COM> X-Mailer: exmh version 2.0zeta 7/24/97 To: Warner Losh cc: Dave Hayes , Sean Eric Fagan , hackers@FreeBSD.ORG From: "Louis A. Mamakos" Subject: Re: shared libraries? References: <199708281846.LAA10799@hokkshideh.jetcafe.org> In-reply-to: Your message of "Thu, 28 Aug 1997 16:32:14 MDT." Mime-Version: 1.0 Content-Type: text/plain Date: Thu, 28 Aug 1997 20:35:25 -0400 Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > In message <199708281846.LAA10799@hokkshideh.jetcafe.org> Dave Hayes writes: > : Correct me if I am wrong (and you most undoubtedly will), but isn't > : this counter-intuitive to almost every other architechure out there? > > Generally, on most architectures PIC code is slower than non-PIC code. > At least on sparc, 68k, mips and alpha (as well as x86). The > generally quoted number is 10%. That's what various docs that I've > seen over the years have quoted. That's one reason why many > benchmarks are done with static binaries... But on other architectures (like the 68K), you've got a pile of index registers you can use to point at stuff, and the compiler isn't repeatedly computing an address, and loading it into the (one or two) registers you can index off of. Not that I'm a real whiz on the i386 assembly code, but you've already chewed up on index register pointing at the base of the stack frame; all the other references compete for BX and you're using AX to compute the addresses. The 68K has got a nice architecture with 8 general purpose accumulators, and another 8 address/index registers.. louie