diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 21 | ||||
-rw-r--r-- | ld/scripttempl/v850.sc | 39 |
2 files changed, 56 insertions, 4 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 1374d65..f79d7d4 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,24 @@ +Wed Sep 30 11:19:15 1998 Nick Clifton <nickc@cygnus.com> + + * scripttempl/v850.sc: Rename .call_table section to + .call_table_data and create a new section called + .call_table_text. + +Sun Sep 20 00:43:26 1998 Ian Lance Taylor <ian@cygnus.com> + + * scripttempl/elf.sc: Add alignment at the end of the .bss + section, so that it is included in the memsize of the segment. + +Fri Sep 18 13:42:42 1998 Catherine Moore <clm@cygnus.com> + + * emultempl/elf32.em (gld_place_orphan): Don't process for + sections with SEC_EXCLUDE flag. + +Fri Sep 4 09:24:02 1998 Nick Clifton <nickc@cygnus.com> + + * emulparams/d30velf.sh (TEXT_SIZE): Increased to 2000K. + (DATA_SIZE): Increased to 2000K. + Thu Sep 3 17:30:58 1998 Richard Henderson <rth@cygnus.com> * emulparams/d10velf.sh (TEMPLATE_NAME): Use elf32. diff --git a/ld/scripttempl/v850.sc b/ld/scripttempl/v850.sc index a1c4ff5..4b6ac64 100644 --- a/ld/scripttempl/v850.sc +++ b/ld/scripttempl/v850.sc @@ -12,9 +12,19 @@ SECTIONS .zdata ${ZDATA_START_ADDR} : { *(.zdata) - *(.rozdata) *(.zbss) *(reszdata) + *(.zcommon) + } + + /* This is the read only part of the zero data area. + Having it as a seperate section prevents its + attributes from being inherited by the zdata + section. Specifically it prevents the zdata + section from being marked READONLY. */ + + .rozdata ${ROZDATA_START_ADDR} : { + *(.rozdata) *(romzdata) *(romzbss) } @@ -58,6 +68,21 @@ SECTIONS ${RELOCATING+_etext = .;} ${RELOCATING+PROVIDE (etext = .);} +/* start-sanitize-v850e */ + /* This is special code area at the end of the normal text section. + It contains a small lookup table at the start followed by the + code pointed to by entries in the lookup table. */ + + .call_table_data ${CALL_TABLE_START_ADDR} : { + ${RELOCATING+PROVIDE(__ctbp = .);} + *(.call_table_data) + } = 0xff /* fill gaps with 0xff */ + .call_table_text : { + *(.call_table_text) + } + +/* end-sanitize-v850e */ + .fini : { *(.fini) } =0 .rodata : { *(.rodata) *(.gnu.linkonce.r*) } .rodata1 : { *(.rodata1) } @@ -86,8 +111,10 @@ SECTIONS .tdata ${TDATA_START_ADDR} : { ${RELOCATING+PROVIDE (__ep = .);} *(.tbyte) + *(.tcommon_byte) *(.tdata) *(.tbss) + *(.tcommon) } /* We want the small data sections together, so single-instruction offsets @@ -95,13 +122,17 @@ SECTIONS we can shorten the on-disk segment size. */ .sdata ${SDATA_START_ADDR} : { ${RELOCATING+PROVIDE (__gp = . + 0x8000);} - *(.rosdata) *(.sdata) ${RELOCATING+__sbss_start = .;} *(.sbss) *(.scommon) } + /* See comment about .rozdata */ + .rosdata ${ROSDATA_START_ADDR} : { + *(.rosdata) + } + ${RELOCATING+_edata = DEFINED (__sbss_start) ? __sbss_start : . ;} ${RELOCATING+PROVIDE (edata = _edata);} @@ -156,9 +187,9 @@ SECTIONS .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } -/* .stack 0xffffec00 : { _stack = .; *(.stack) }*/ + /* User stack */ .stack 0x200000 : { - ${RELOCATING+_stack = .;} + ${RELOCATING+__stack = .;} *(.stack) } /* These must appear regardless of . */ |