Changeset View
Changeset View
Standalone View
Standalone View
sys/conf/vdso_amd64_ia32.ldscript
- This file was added.
/*- | |||||
* SPDX-License-Identifier: BSD-2-Clause-FreeBSD | |||||
* | |||||
* Copyright (c) 2021 The FreeBSD Foundation | |||||
* | |||||
* This software was developed by Konstantin Belousov <kib@FreeBSD.org> | |||||
* under sponsorship from the FreeBSD Foundation. | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without | |||||
* modification, are permitted provided that the following conditions | |||||
* are met: | |||||
* 1. Redistributions of source code must retain the above copyright | |||||
* notice, this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright | |||||
* notice, this list of conditions and the following disclaimer in the | |||||
* documentation and/or other materials provided with the distribution. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | |||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |||||
* SUCH DAMAGE. | |||||
*/ | |||||
/* | |||||
* Linker script for ia32 (32bit) vdso on amd64. | |||||
*/ | |||||
OUTPUT_ARCH(i386) | |||||
PHDRS | |||||
{ | |||||
text PT_LOAD FILEHDR PHDRS FLAGS(5); /* PF_R|PF_X */ | |||||
dynamic PT_DYNAMIC FLAGS(5); | |||||
eh_frame_hdr PT_GNU_EH_FRAME FLAGS(5); | |||||
} | |||||
SECTIONS | |||||
{ | |||||
. = . + SIZEOF_HEADERS; | |||||
.hash : { *(.hash) } :text | |||||
.gnu.hash : { *(.gnu.hash) } :text | |||||
.dynsym : { *(.dynsym) } :text | |||||
.dynstr : { *(.dynstr) } :text | |||||
.gnu.version : { *(.gnu.version) } :text | |||||
.gnu.version_d : { *(.gnu.version_d) } :text | |||||
.gnu.version_r : { *(.gnu.version_r) } :text | |||||
.eh_frame_hdr : { *(.eh_frame_hdr) } :text :eh_frame_hdr | |||||
.eh_frame : { KEEP (*(.eh_frame)) } :text | |||||
.dynamic : { *(.dynamic) } :text :dynamic | |||||
.rodata : { *(.rodata*) } :text | |||||
.data : { | |||||
*(.got.plt) *(.got) | |||||
} :text | |||||
/DISCARD/ /* .data */: { | |||||
*(.data*) | |||||
*(.sdata*) | |||||
*(.gnu.linkonce.d.*) | |||||
*(.bss*) | |||||
*(.dynbss*) | |||||
*(.gnu.linkonce.b.*) | |||||
*(.ctors) | |||||
*(.dtors) | |||||
*(.jcr) | |||||
*(.init_array) | |||||
*(.init) | |||||
*(.fini) | |||||
*(.debug*) | |||||
*(.comment) | |||||
} | |||||
. = ALIGN(0x10); | |||||
.text : { *(.text .text*) } :text =0x90909090 | |||||
} | |||||
VERSION | |||||
{ | |||||
FBSD_1.7 { | |||||
global: | |||||
__vdso_ia32_sigcode; | |||||
__vdso_freebsd4_ia32_sigcode; | |||||
__vdso_ia32_osigcode; | |||||
__vdso_lcall_tramp; | |||||
local: | |||||
*; | |||||
}; | |||||
} |