Refine eabi support
This commit is contained in:
parent
d971d39e46
commit
4d99a9505c
@ -1,3 +1,8 @@
|
|||||||
|
Mon Jan 22 11:03:23 1996 Michael Meissner <meissner@tiktok.cygnus.com>
|
||||||
|
|
||||||
|
* scripttempl/elfppc.sc: Refine eabi support to better support
|
||||||
|
.sdata, .sdata2, .sbss, etc. sections.
|
||||||
|
|
||||||
Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
|
Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
|
||||||
|
|
||||||
* ldgram.y (%union): Add phdr field.
|
* ldgram.y (%union): Add phdr field.
|
||||||
|
@ -53,7 +53,6 @@ SECTIONS
|
|||||||
.rela.data ${RELOCATING-0} : { *(.rela.data) }
|
.rela.data ${RELOCATING-0} : { *(.rela.data) }
|
||||||
.rela.rodata ${RELOCATING-0} : { *(.rela.rodata) }
|
.rela.rodata ${RELOCATING-0} : { *(.rela.rodata) }
|
||||||
.rela.got ${RELOCATING-0} : { *(.rela.got) }
|
.rela.got ${RELOCATING-0} : { *(.rela.got) }
|
||||||
.rela.got.neg ${RELOCATING-0} : { *(.rela.got.neg) }
|
|
||||||
.rela.got1 ${RELOCATING-0} : { *(.rela.got1) }
|
.rela.got1 ${RELOCATING-0} : { *(.rela.got1) }
|
||||||
.rela.got2 ${RELOCATING-0} : { *(.rela.got2) }
|
.rela.got2 ${RELOCATING-0} : { *(.rela.got2) }
|
||||||
.rela.ctors ${RELOCATING-0} : { *(.rela.ctors) }
|
.rela.ctors ${RELOCATING-0} : { *(.rela.ctors) }
|
||||||
@ -98,55 +97,47 @@ SECTIONS
|
|||||||
get relocated with -mrelocatable. Also put in the .fixup pointers.
|
get relocated with -mrelocatable. Also put in the .fixup pointers.
|
||||||
The current compiler no longer needs this, but keep it around for 2.7.2 */
|
The current compiler no longer needs this, but keep it around for 2.7.2 */
|
||||||
|
|
||||||
${RELOCATING+_GOT2_START_ = .;}
|
${RELOCATING+PROVIDE (_GOT2_START_ = .);}
|
||||||
.got2 ${RELOCATING-0} : { *(.got2) }
|
.got2 ${RELOCATING-0} : { *(.got2) }
|
||||||
|
|
||||||
${RELOCATING+__CTOR_LIST__ = .;}
|
${RELOCATING+PROVIDE (__CTOR_LIST__ = .);}
|
||||||
.ctors ${RELOCATING-0} : { *(.ctors) }
|
.ctors ${RELOCATING-0} : { *(.ctors) }
|
||||||
${RELOCATING+__CTOR_END__ = .;}
|
${RELOCATING+PROVIDE (__CTOR_END__ = .);}
|
||||||
|
|
||||||
${RELOCATING+__DTOR_LIST__ = .;}
|
${RELOCATING+PROVIDE (__DTOR_LIST__ = .);}
|
||||||
.dtors ${RELOCATING-0} : { *(.dtors) }
|
.dtors ${RELOCATING-0} : { *(.dtors) }
|
||||||
${RELOCATING+__DTOR_END__ = .;}
|
${RELOCATING+PROVIDE (__DTOR_END__ = .);}
|
||||||
|
|
||||||
${RELOCATING+_FIXUP_START_ = .;}
|
${RELOCATING+PROVIDE (_FIXUP_START_ = .);}
|
||||||
.fixup ${RELOCATING-0} : { *(.fixup) }
|
.fixup ${RELOCATING-0} : { *(.fixup) }
|
||||||
${RELOCATING+_FIXUP_END_ = .;}
|
${RELOCATING+PROVIDE (_FIXUP_END_ = .);}
|
||||||
${RELOCATING+_GOT2_END_ = .;}
|
${RELOCATING+PROVIDE (_GOT2_END_ = .);}
|
||||||
|
|
||||||
/* .got.neg is for items that would normally go in the .got that are addressed
|
${RELOCATING+PROVIDE (_GOT_START_ = .);}
|
||||||
negative of _GLOBAL_OFFSET_TABLE. .got.blrl is to hold the blrl instruction
|
${RELOCATING+PROVIDE (_GLOBAL_OFFSET_TABLE_ = .);}
|
||||||
that is _GLOBAL_OFFSET_TABLE_-4 so that a function can easily get the
|
|
||||||
address of _GLOBAL_OFFSET_TABLE. */
|
|
||||||
|
|
||||||
.got.neg ${RELOCATING-0} : { *(.got.neg) }
|
|
||||||
.got.blrl ${RELOCATING-0} : { *(.got.blrl) }
|
|
||||||
${RELOCATING+_GOT_START_ = .;}
|
|
||||||
${RELOCATING+_GLOBAL_OFFSET_TABLE_ = .;}
|
|
||||||
.got ${RELOCATING-0} : { *(.got) }
|
.got ${RELOCATING-0} : { *(.got) }
|
||||||
.got.plt ${RELOCATING-0} : { *(.got.plt) }
|
.got.plt ${RELOCATING-0} : { *(.got.plt) }
|
||||||
${RELOCATING+_GOT_END_ = .;}
|
${RELOCATING+PROVIDE (_GOT_END_ = .);}
|
||||||
|
|
||||||
${DATA_PLT+${PLT}}
|
${DATA_PLT+${PLT}}
|
||||||
|
|
||||||
/* We want the small data sections together, so single-instruction offsets
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
can access them all, and initialized data all before uninitialized, so
|
can access them all, and initialized data all before uninitialized, so
|
||||||
we can shorten the on-disk segment size. */
|
we can shorten the on-disk segment size. */
|
||||||
${RELOCATING+_SDA_BASE_ = . + 32768;}
|
|
||||||
.sdata ${RELOCATING-0} : { *(.sdata) }
|
.sdata ${RELOCATING-0} : { *(.sdata) }
|
||||||
${RELOCATING+_edata = .;}
|
${RELOCATING+_edata = .;}
|
||||||
${RELOCATING+PROVIDE (edata = .);}
|
${RELOCATING+PROVIDE (edata = .);}
|
||||||
.sbss ${RELOCATING-0} :
|
.sbss ${RELOCATING-0} :
|
||||||
{
|
{
|
||||||
${RELOCATING+__sbss_start = .;}
|
${RELOCATING+PROVIDE (__sbss_start = .);}
|
||||||
*(.sbss)
|
*(.sbss)
|
||||||
*(.scommon)
|
*(.scommon)
|
||||||
${RELOCATING+__sbss_end = .;}
|
${RELOCATING+PROVIDE (__sbss_end = .);}
|
||||||
}
|
}
|
||||||
.bss ${RELOCATING-0} :
|
.bss ${RELOCATING-0} :
|
||||||
{
|
{
|
||||||
${RELOCATING+${OTHER_BSS_SYMBOLS}}
|
${RELOCATING+${OTHER_BSS_SYMBOLS}}
|
||||||
${RELOCATING+__bss_start = .;}
|
${RELOCATING+PROVIDE (__bss_start = .);}
|
||||||
*(.dynbss)
|
*(.dynbss)
|
||||||
*(.bss)
|
*(.bss)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user