From owner-p4-projects@FreeBSD.ORG Tue Sep 2 18:26:10 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 27DA41065687; Tue, 2 Sep 2008 18:26:10 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DDE7D106567F for ; Tue, 2 Sep 2008 18:26:09 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CFC5B8FC0C for ; Tue, 2 Sep 2008 18:26:09 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.2/8.14.2) with ESMTP id m82IQ9W0055397 for ; Tue, 2 Sep 2008 18:26:09 GMT (envelope-from rpaulo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.2/8.14.1/Submit) id m82IQ9CR055395 for perforce@freebsd.org; Tue, 2 Sep 2008 18:26:09 GMT (envelope-from rpaulo@FreeBSD.org) Date: Tue, 2 Sep 2008 18:26:09 GMT Message-Id: <200809021826.m82IQ9CR055395@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rpaulo@FreeBSD.org using -f From: Rui Paulo To: Perforce Change Reviews Cc: Subject: PERFORCE change 149070 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Sep 2008 18:26:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=149070 Change 149070 by rpaulo@rpaulo_phi on 2008/09/02 18:25:35 We really need a separate section for the Xcommand_set. I understood that we needed this, but I failed to see if the section was being copied to loader.efi by objcopy. Now we have a working EFI boot loader for ia32 (tested on a MacBook). objcopy tip thanks to: Marcel Affected files ... .. //depot/projects/efi/boot/i386/efi/Makefile#6 edit .. //depot/projects/efi/boot/i386/efi/ldscript.amd64#2 edit .. //depot/projects/efi/boot/i386/efi/ldscript.i386#2 edit Differences ... ==== //depot/projects/efi/boot/i386/efi/Makefile#6 (text+ko) ==== @@ -55,7 +55,7 @@ exit 1; \ fi ${OBJCOPY} -j .data -j .dynamic -j .dynstr -j .dynsym -j .hash \ - -j .rel.dyn -j .reloc -j .sdata -j .text \ + -j .rel.dyn -j .reloc -j .sdata -j .text -j set_Xcommand_set \ --target=efi-app-ia32 ${.ALLSRC} ${.TARGET} LIBEFI= ${.OBJDIR}/../../efi/libefi/libefi.a ==== //depot/projects/efi/boot/i386/efi/ldscript.amd64#2 (text+ko) ==== @@ -22,9 +22,6 @@ *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) *(.opd) - __start_set_Xcommand_set = .; - *(set_Xcommand_set) - __stop_set_Xcommand_set = .; *(.data .data.* .gnu.linkonce.d.*) *(.data1) *(.plabel) @@ -33,6 +30,12 @@ *(COMMON) } . = ALIGN(4096); + set_Xcommand_set : { + __start_set_Xcommand_set = .; + *(set_Xcommand_set) + __stop_set_Xcommand_set = .; + } + . = ALIGN(4096); __gp = .; .sdata : { *(.got.plt .got) ==== //depot/projects/efi/boot/i386/efi/ldscript.i386#2 (text+ko) ==== @@ -22,9 +22,6 @@ *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) *(.opd) - __start_set_Xcommand_set = .; - *(set_Xcommand_set) - __stop_set_Xcommand_set = .; *(.data .data.* .gnu.linkonce.d.*) *(.data1) *(.plabel) @@ -33,6 +30,12 @@ *(COMMON) } . = ALIGN(4096); + set_Xcommand_set : { + __start_set_Xcommand_set = .; + *(set_Xcommand_set) + __stop_set_Xcommand_set = .; + } + . = ALIGN(4096); __gp = .; .sdata : { *(.got.plt .got)