freebsd-skq/sys/boot/ia64/efi/ldscript.ia64
dfr 1455d39753 Add the two sections used for PLT entries to the text and sdata sections
respectively. This makes IPLTLSB relocations work properly (these are
generated for weak symbols, particularly for _longjmp).
2001-10-25 08:50:14 +00:00

80 lines
1.4 KiB
Plaintext

/* $FreeBSD$ */
OUTPUT_FORMAT("elf64-ia64-little", "elf64-ia64-little", "elf64-ia64-little")
OUTPUT_ARCH(ia64)
ENTRY(_start_plabel)
SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0;
ImageBase = .;
. += 4096;
.text :
{
*(.text)
*(.stub)
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning)
*(.gnu.linkonce.t*)
*(.plt)
}
. = ALIGN(4096);
.hash : { *(.hash) }
. = ALIGN(4096);
.data :
{
*(.rodata)
*(.rodata1)
*(.set.*)
*(.ctors)
*(.data)
*(.data1)
*(.gnu.linkonce.d*)
*(.plabel)
*(.IA_64.unwind)
*(.IA_64.unwind_info)
*(.bss)
*(.dynbss)
*(COMMON)
}
. = ALIGN(4096);
__gp = .;
.sdata :
{
*(.got.plt)
*(.got)
*(.IA_64.pltoff)
*(.sdata)
*(.sbss)
*(.scommon)
}
. = ALIGN(4096);
.dynamic : { *(.dynamic) }
. = ALIGN(4096);
.rela :
{
*(.rela.text)
*(.rela.gnu.linkonce.t*)
*(.rela.set.*)
*(.rela.sdata)
*(.rela.data)
*(.rela.gnu.linkonce.d*)
*(.rela.got)
*(.rela.stab)
*(.rela.ctors)
*(.relaset_*)
*(.rela.IA_64.pltoff)
}
. = ALIGN(4096);
.reloc : { *(.reloc) }
. = ALIGN(4096);
.dynsym : { *(.dynsym) }
. = ALIGN(4096);
.dynstr : { *(.dynstr) }
.ignored :
{
*(.rela.plabel)
*(.rela.reloc)
}
}