From owner-cvs-all Sun Apr 21 1:49:53 2002 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 84E4137B405; Sun, 21 Apr 2002 01:49:47 -0700 (PDT) Received: (from marcel@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g3L8nle87099; Sun, 21 Apr 2002 01:49:47 -0700 (PDT) (envelope-from marcel) Message-Id: <200204210849.g3L8nle87099@freefall.freebsd.org> From: Marcel Moolenaar Date: Sun, 21 Apr 2002 01:49:47 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/boot/efi/libefi/arch/ia64 start.S X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG marcel 2002/04/21 01:49:47 PDT Modified files: sys/boot/efi/libefi/arch/ia64 start.S Log: Improve self-relocation: o We don't expect the PLT relocations to follow the .rela section anymore. We still assume that PLT relocations are long formed, o Document register usage, o Improve ILP, o Fix the FPTR relocation by creating unique OPDs per function. Comparing functions is valid now, o The IPLT relocation naturally handles the addend. Deal with it. We ignore the addend for FPTR relocations for now. It's not at all clear what it means anyway. Fix ABI misinterpretation: o For Elf_Rela relocations, the addend is explicit and should not be loaded from the memory address we're relocating. Only do that for Elf_Rel relocations (ie the short form). o DIR64LSB is not the same as REL64LSB. DIR64LSB applies to a symbol (S+A), whereas REL64LSB applies to the base address (BD+A), Revision Changes Path 1.5 +136 -106 src/sys/boot/efi/libefi/arch/ia64/start.S To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message