From owner-svn-src-all@FreeBSD.ORG Fri Jan 20 18:52:31 2012 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7D928106564A; Fri, 20 Jan 2012 18:52:31 +0000 (UTC) (envelope-from andreast@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 4D7BE8FC0A; Fri, 20 Jan 2012 18:52:31 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q0KIqVwU054212; Fri, 20 Jan 2012 18:52:31 GMT (envelope-from andreast@svn.freebsd.org) Received: (from andreast@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q0KIqVrY054210; Fri, 20 Jan 2012 18:52:31 GMT (envelope-from andreast@svn.freebsd.org) Message-Id: <201201201852.q0KIqVrY054210@svn.freebsd.org> From: Andreas Tobler Date: Fri, 20 Jan 2012 18:52:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r230391 - head/sys/conf X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Jan 2012 18:52:31 -0000 Author: andreast Date: Fri Jan 20 18:52:31 2012 New Revision: 230391 URL: http://svn.freebsd.org/changeset/base/230391 Log: Add the .opd section, this is helps booting a profiled kernel. Adjust the OUTPUT_ARCH and use the builtin ALIGN() to adjust the data segment. Modified: head/sys/conf/ldscript.powerpc64 Modified: head/sys/conf/ldscript.powerpc64 ============================================================================== --- head/sys/conf/ldscript.powerpc64 Fri Jan 20 18:49:47 2012 (r230390) +++ head/sys/conf/ldscript.powerpc64 Fri Jan 20 18:52:31 2012 (r230391) @@ -1,7 +1,7 @@ /* $FreeBSD$ */ OUTPUT_FORMAT("elf64-powerpc", "elf64-powerpc", "elf64-powerpc") -OUTPUT_ARCH(powerpc) +OUTPUT_ARCH(powerpc:common64) ENTRY(__start) SEARCH_DIR(/usr/lib); PROVIDE (__stack = 0); @@ -56,15 +56,19 @@ SECTIONS .sdata2 : { *(.sdata2) } .sbss2 : { *(.sbss2) } /* Adjust the address for the data segment to the next page up. */ - . = ((. + 0x1000) & ~(0x1000 - 1)); + . = ALIGN(4096); .data : { *(.data) *(.gnu.linkonce.d*) CONSTRUCTORS } - .data1 : { *(.data1) } - .got1 : { *(.got1) } + .data1 : { *(.data1) } + .toc1 : ALIGN(8) { *(.toc1) } + .opd : ALIGN(8) { KEEP (*(.opd)) } + .branch_lt : ALIGN(8) { *(.branch_lt) } + .got : ALIGN(8) { *(.got .toc) } + .dynamic : { *(.dynamic) } /* Put .ctors and .dtors next to the .got2 section, so that the pointers get relocated with -mrelocatable. Also put in the .fixup pointers. @@ -81,10 +85,6 @@ SECTIONS .fixup : { *(.fixup) } PROVIDE (_FIXUP_END_ = .); PROVIDE (_GOT2_END_ = .); - PROVIDE (_GOT_START_ = .); - .got : { *(.got) } - .got.plt : { *(.got.plt) } - PROVIDE (_GOT_END_ = .); /* We want the small data sections together, so single-instruction offsets can access them all, and initialized data all before uninitialized, so we can shorten the on-disk segment size. */