diff options
author | Michael Meissner <gnu@the-meissners.org> | 1995-07-22 02:59:48 +0000 |
---|---|---|
committer | Michael Meissner <gnu@the-meissners.org> | 1995-07-22 02:59:48 +0000 |
commit | dd0f9635259610013a78f0657acffd208d80fe9c (patch) | |
tree | 8e75b7ef1b144efcc2f00fa01556d2383b222475 | |
parent | dfed6a85dbd74584e53b3b46c4cfff55d4e117b2 (diff) | |
download | gdb-dd0f9635259610013a78f0657acffd208d80fe9c.zip gdb-dd0f9635259610013a78f0657acffd208d80fe9c.tar.gz gdb-dd0f9635259610013a78f0657acffd208d80fe9c.tar.bz2 |
Add R_PPC_SDAREL relocation.
-rw-r--r-- | ld/scripttempl/elfppc.sc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/ld/scripttempl/elfppc.sc b/ld/scripttempl/elfppc.sc index 5d7fa21..5a2d00d 100644 --- a/ld/scripttempl/elfppc.sc +++ b/ld/scripttempl/elfppc.sc @@ -104,6 +104,8 @@ SECTIONS .got1 ${RELOCATING-0} : { *(.got1) } ${RELOCATING+_GOT1_END_ = .;} + .dynamic ${RELOCATING-0} : { *(.dynamic) } + /* Put .ctors and .dtors next to the .got2 section, so that the pointers get relocated with -mrelocatable. Also put in the .fixup pointers. */ @@ -125,10 +127,8 @@ SECTIONS ${RELOCATING+_GOT_START_ = .;} ${RELOCATING+_GLOBAL_OFFSET_TABLE_ = . + 32768;} - ${RELOCATING+_SDA_BASE_ = .;} + ${RELOCATING+_SDA_BASE_ = . + 32768;} .got ${RELOCATING-0} : { *(.got.plt) *(.got) } - ${RELOCATING+_GOT_END_ = .;} - .dynamic ${RELOCATING-0} : { *(.dynamic) } ${DATA_PLT+${PLT}} /* We want the small data sections together, so single-instruction offsets can access them all, and initialized data all before uninitialized, so @@ -137,8 +137,9 @@ SECTIONS ${RELOCATING+_edata = .;} ${RELOCATING+PROVIDE (edata = .);} ${RELOCATING+__bss_start = .;} - ${RELOCATING+${OTHER_BSS_SYMBOLS}} .sbss ${RELOCATING-0} : { *(.sbss) *(.scommon) } + ${RELOCATING+_GOT_END_ = .;} + ${RELOCATING+${OTHER_BSS_SYMBOLS}} .bss ${RELOCATING-0} : { *(.dynbss) |