From: Maciej W. Rozycki Date: Mon, 6 Aug 2012 22:40:36 +0000 (+0000) Subject: ld/ X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9e8082845f85cc1cb6be434177aa4d59e00663ff;p=binutils-gdb.git ld/ * emulparams/elf32bmip.sh: Make _gp hidden. * emulparams/elf32bmipn32-defs.sh: Likewise. * emulparams/elf32mipswindiss.sh: Likewise. * scripttempl/mips.sc: Likewise. ld/testsuite/ * ld-mips-elf/rel32-o32.d: Adjust section VMAs after the removal of _gp from the global scope. * ld-mips-elf/rel32-n32.d: Likewise. * ld-mips-elf/rel64.d: Likewise. --- diff --git a/ld/ChangeLog b/ld/ChangeLog index 451f11069ea..29311f8f544 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2012-08-06 Maciej W. Rozycki + + * emulparams/elf32bmip.sh: Make _gp hidden. + * emulparams/elf32bmipn32-defs.sh: Likewise. + * emulparams/elf32mipswindiss.sh: Likewise. + * scripttempl/mips.sc: Likewise. + 2012-08-06 Maciej W. Rozycki * ldexp.h (etree_union): Add defsym member to the assign member diff --git a/ld/emulparams/elf32bmip.sh b/ld/emulparams/elf32bmip.sh index f0fcd2c4bff..118d57a2e4b 100644 --- a/ld/emulparams/elf32bmip.sh +++ b/ld/emulparams/elf32bmip.sh @@ -33,7 +33,7 @@ OTHER_GOT_RELOC_SECTIONS=" # of .got. OTHER_GOT_SYMBOLS=' . = .; - _gp = ALIGN(16) + 0x7ff0; + HIDDEN (_gp = ALIGN (16) + 0x7ff0); ' # .got.plt is only used for the PLT psABI extension. It should not be # included in the .sdata block with .got, as there is no need to access diff --git a/ld/emulparams/elf32bmipn32-defs.sh b/ld/emulparams/elf32bmipn32-defs.sh index 45bfd5d7883..12aaf72f07f 100644 --- a/ld/emulparams/elf32bmipn32-defs.sh +++ b/ld/emulparams/elf32bmipn32-defs.sh @@ -51,7 +51,7 @@ OTHER_GOT_RELOC_SECTIONS=" # of .got. OTHER_GOT_SYMBOLS=' . = .; - _gp = ALIGN(16) + 0x7ff0; + HIDDEN (_gp = ALIGN (16) + 0x7ff0); ' # .got.plt is only used for the PLT psABI extension. It should not be # included in the .sdata block with .got, as there is no need to access diff --git a/ld/emulparams/elf32mipswindiss.sh b/ld/emulparams/elf32mipswindiss.sh index 4f1148b9518..3b9678bba15 100644 --- a/ld/emulparams/elf32mipswindiss.sh +++ b/ld/emulparams/elf32mipswindiss.sh @@ -12,7 +12,7 @@ MAXPAGESIZE=0x40000 # the Diab linker. TEXT_START_ADDR=0x100000 DATA_START_SYMBOLS='__DATA_ROM = .; __DATA_RAM = .;' -SDATA_START_SYMBOLS='_SDA_BASE_ = .; _gp = . + 0x7ff0;' +SDATA_START_SYMBOLS='_SDA_BASE_ = .; HIDDEN (_gp = . + 0x7ff0);' SDATA2_START_SYMBOLS='_SDA2_BASE_ = .;' EXECUTABLE_SYMBOLS='__HEAP_START = .; __SP_INIT = 0x800000; __SP_END = __SP_INIT - 0x20000; __HEAP_END = __SP_END; __DATA_END = _edata; __BSS_START = __bss_start; __BSS_END = _end; __HEAP_START = _end;' diff --git a/ld/scripttempl/mips.sc b/ld/scripttempl/mips.sc index f53558aba4b..1be01f9a004 100644 --- a/ld/scripttempl/mips.sc +++ b/ld/scripttempl/mips.sc @@ -42,7 +42,7 @@ SECTIONS *(.data) ${CONSTRUCTING+CONSTRUCTORS} } - ${RELOCATING+ _gp = ALIGN(16) + 0x8000;} + ${RELOCATING+ HIDDEN (_gp = ALIGN (16) + 0x8000);} .lit8 : { *(.lit8) } diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 7f93d4dbdd0..cd71a9f23a1 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2012-08-06 Maciej W. Rozycki + + * ld-mips-elf/rel32-o32.d: Adjust section VMAs after the removal + of _gp from the global scope. + * ld-mips-elf/rel32-n32.d: Likewise. + * ld-mips-elf/rel64.d: Likewise. + 2012-08-06 Maciej W. Rozycki * ld-mips-elf/mips-elf.exp: Set has_newabi for all Linux targets. diff --git a/ld/testsuite/ld-mips-elf/rel32-n32.d b/ld/testsuite/ld-mips-elf/rel32-n32.d index 995161561a0..ba83d51832b 100644 --- a/ld/testsuite/ld-mips-elf/rel32-n32.d +++ b/ld/testsuite/ld-mips-elf/rel32-n32.d @@ -10,6 +10,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries: [0-9a-f ]+R_MIPS_REL32 Hex dump of section '.text': - 0x000002e0 00000000 00000000 00000000 00000000 ................ - 0x000002f0 000002f0 00000000 00000000 00000000 ................ - 0x00000300 00000000 00000000 00000000 00000000 ................ + 0x000002d0 00000000 00000000 00000000 00000000 ................ + 0x000002e0 000002e0 00000000 00000000 00000000 ................ + 0x000002f0 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/rel32-o32.d b/ld/testsuite/ld-mips-elf/rel32-o32.d index 742cdaadb4e..ac82459519a 100644 --- a/ld/testsuite/ld-mips-elf/rel32-o32.d +++ b/ld/testsuite/ld-mips-elf/rel32-o32.d @@ -10,6 +10,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries: [0-9a-f ]+R_MIPS_REL32 Hex dump of section '.text': + 0x000002c0 00000000 00000000 00000000 00000000 ................ + 0x000002d0 000002d0 00000000 00000000 00000000 ................ 0x000002e0 00000000 00000000 00000000 00000000 ................ - 0x000002f0 000002f0 00000000 00000000 00000000 ................ - 0x00000300 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/rel64.d b/ld/testsuite/ld-mips-elf/rel64.d index 01bffa39084..595762f0d98 100644 --- a/ld/testsuite/ld-mips-elf/rel64.d +++ b/ld/testsuite/ld-mips-elf/rel64.d @@ -14,6 +14,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries: +Type3: R_MIPS_NONE Hex dump of section '.text': + 0x00000430 00000000 00000000 00000000 00000000 ................ + 0x00000440 00000000 00000440 00000000 00000000 ................ 0x00000450 00000000 00000000 00000000 00000000 ................ - 0x00000460 00000000 00000460 00000000 00000000 ................ - 0x00000470 00000000 00000000 00000000 00000000 ................