From: Hans-Peter Nilsson Date: Wed, 18 Oct 2000 13:10:12 +0000 (+0000) Subject: * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32), X-Git-Tag: newlib-1_9_0~735 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c5975a4546375b88c3436f09df6032bad4768074;p=external%2Fbinutils.git * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32), for consecutive sections. --- diff --git a/ld/ChangeLog b/ld/ChangeLog index 1ec8006..7642244 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2000-10-18 Hans-Peter Nilsson + + * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32), + for consecutive sections. + 2000-10-17 Chandrakala Chavva * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific diff --git a/ld/scripttempl/crisaout.sc b/ld/scripttempl/crisaout.sc index 927ec9c..e909af3 100644 --- a/ld/scripttempl/crisaout.sc +++ b/ld/scripttempl/crisaout.sc @@ -62,6 +62,14 @@ SECTIONS ${CONSTRUCTING+ PROVIDE(___dtors_end = .);} ${CONSTRUCTING+ ___elf_ctors_dtors_end = .;} + /* We include objects that force alignment of the data segment. + Unfortunately that sometimes causes a gap between .text and .data, + which is not detectable since .data does not have a start address + of itself in the a.out header. This should only matter for + testing; for production use, .data is at a "known" location. + We assume .data does not get an alignment larger than 32 bytes. */ + ${RELOCATING+. = ALIGN (32);} + ${RELOCATING+ __Etext = .;} /* Deprecated, use __Etext. */ @@ -82,6 +90,10 @@ SECTIONS ${RELOCATING+*(.gnu.linkonce.d*)} ${RELOCATING+*(.eh_frame) /* FIXME: Make .text */} ${RELOCATING+*(.gcc_except_table)} + + /* See comment at ALIGN before __Etext. */ + ${RELOCATING+. = ALIGN (32);} + ${RELOCATING+ __Edata = .;} /* Deprecated, use __Edata. */