ld needing libgcc
Philip Blundell
pb@nexus.co.uk
Wed Aug 25 04:08:00 GMT 1999
>What should __end__ be assigned to (end of what?, data, text, bss)?
The end of the BSS I think. The arm-coff linker does define this but the ELF
one doesn't. I've appended below a linker patch to add this symbol for the
ARM/ELF scripts. Nick, does this seem right to you? An alternative would be
to add it to elf.sc, or to fix newlib to not use this symbol in the first
place.
>Also which is the ldscripts that is used (or when is it called):
Depends on the linker options you use. The .x version will be called for most
"normal" situations. I think the -v option will tell you what script is in
use.
p.
1999-08-25 Philip Blundell <pb@nexus.co.uk>
* emulparams/armelf.sh (OTHER_BSS_SYMBOLS): Add __end__.
* emulparams/armelf_linux.sh: Likewise.
* emulparams/armelf_linux26.sh: Likewise.
Index: armelf_linux26.sh
===================================================================
RCS file: /cvs/binutils/binutils/ld/emulparams/armelf_linux26.sh,v
retrieving revision 1.2
diff -u -r1.2 armelf_linux26.sh
--- armelf_linux26.sh 1999/07/22 12:51:45 1.2
+++ armelf_linux26.sh 1999/08/25 11:00:19
@@ -9,7 +9,7 @@
DATA_START_SYMBOLS='__data_start = . ;';
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
-OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
+OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;'
# This needs to be high enough so that we can load ld.so below it,
# yet low enough to stay away from the mmap area at 0x01100000.
Index: armelf_linux.sh
===================================================================
RCS file: /cvs/binutils/binutils/ld/emulparams/armelf_linux.sh,v
retrieving revision 1.3
diff -u -r1.3 armelf_linux.sh
--- armelf_linux.sh 1999/07/22 12:51:45 1.3
+++ armelf_linux.sh 1999/08/25 11:00:19
@@ -10,7 +10,7 @@
DATA_START_SYMBOLS='__data_start = . ;';
OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)'
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
-OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
+OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;'
# This needs to be high enough so that we can load ld.so below it,
# yet low enough to stay away from the mmap area at 0x40000000.
Index: armelf.sh
===================================================================
RCS file: /cvs/binutils/binutils/ld/emulparams/armelf.sh,v
retrieving revision 1.2
diff -u -r1.2 armelf.sh
--- armelf.sh 1999/05/24 12:49:29 1.2
+++ armelf.sh 1999/08/25 11:00:19
@@ -7,7 +7,7 @@
TEMPLATE_NAME=armelf
OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)'
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
-OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
+OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;'
GENERATE_SHLIB_SCRIPT=yes
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com
More information about the crossgcc
mailing list