From owner-cvs-all Sat May 5 17:40:50 2001 Delivered-To: cvs-all@freebsd.org Received: from obsecurity.dyndns.org (adsl-63-207-60-108.dsl.lsan03.pacbell.net [63.207.60.108]) by hub.freebsd.org (Postfix) with ESMTP id 0648937B424; Sat, 5 May 2001 17:40:42 -0700 (PDT) (envelope-from kris@obsecurity.org) Received: by obsecurity.dyndns.org (Postfix, from userid 1000) id 379E866D67; Sat, 5 May 2001 17:40:41 -0700 (PDT) Date: Sat, 5 May 2001 17:40:40 -0700 From: Kris Kennaway To: John Polstra Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/libexec/rtld-elf rtld.c rtld.h src/libexec/rtld-elf/alpha reloc.c src/libexec/rtld-elf/i386 reloc.c Message-ID: <20010505174040.A33884@xor.obsecurity.org> References: <200105052321.f45NL5Z24754@freefall.freebsd.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="r5Pyd7+fXNt84Ff3" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <200105052321.f45NL5Z24754@freefall.freebsd.org>; from jdp@FreeBSD.org on Sat, May 05, 2001 at 04:21:05PM -0700 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG --r5Pyd7+fXNt84Ff3 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, May 05, 2001 at 04:21:05PM -0700, John Polstra wrote: > jdp 2001/05/05 16:21:05 PDT >=20 > Modified files: > libexec/rtld-elf rtld.c rtld.h=20 > libexec/rtld-elf/alpha reloc.c=20 > libexec/rtld-elf/i386 reloc.c=20 > Log: > Performance improvements for the ELF dynamic linker. These > particularly help programs which load many shared libraries with > a lot of relocations. Large C++ programs such as are found in KDE > are a prime example. > =20 > While relocating a shared object, maintain a vector of symbols > which have already been looked up, directly indexed by symbol > number. Typically, symbols which are referenced by a relocation > entry are referenced by many of them. This is the same optimization > I made to the a.out dynamic linker in 1995 (rtld.c revision 1.30). > =20 > Also, compare the first character of a sought-after symbol with its > symbol table entry before calling strcmp(). > =20 > On a PII/400 these changes reduce the start-up time of a typical > KDE program from 833 msec (elapsed) to 370 msec. Hey, nice work! Kris --r5Pyd7+fXNt84Ff3 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.5 (FreeBSD) Comment: For info see http://www.gnupg.org iD8DBQE69J2IWry0BWjoQKURAjHCAKD1snGZq3RVHgh4RlsZrXpH6kqx6gCeNJtX vA4IzsfXv/TzCKBel8umvlY= =+WKk -----END PGP SIGNATURE----- --r5Pyd7+fXNt84Ff3-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message