From: Ian Lance Taylor Date: Thu, 10 Jun 1993 21:02:59 +0000 (+0000) Subject: * ldexp.c (exp_fold_tree): Don't lose the old flag bits. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9de4d8f1c0540a6a8f0343329b197156adadf220;p=binutils-gdb.git * ldexp.c (exp_fold_tree): Don't lose the old flag bits. * ldgram.y (statement_list_opt): New nonterminal, either empty or statement_list. (section): Use statement_list_opt, not statement_list. * m68kcoff.sc-sh: Gather constructors and destructors and define __CTOR_LIST__ and __DTOR_LIST__ appropriately. * sa29200.sc-sh: Gather constructors and destructors and define ___CTOR_LIST__ and ___DTOR_LIST__ appropriately. --- diff --git a/ld/m68kcoff.sc-sh b/ld/m68kcoff.sc-sh index 1ef0265d891..519791c110c 100644 --- a/ld/m68kcoff.sc-sh +++ b/ld/m68kcoff.sc-sh @@ -15,7 +15,17 @@ SECTIONS { .text : { *(.text) - ${RELOCATING+ etext = .}; + ${RELOCATING+ etext = .;} + ${CONSTRUCTING+ __CTOR_LIST__ = .;} + ${CONSTRUCTING+ LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)} + *(.ctors) + ${CONSTRUCTING+ LONG(0)} + ${CONSTRUCTING+ __CTOR_END__ = .;} + ${CONSTRUCTING+ __DTOR_LIST__ = .;} + ${CONSTRUCTING+ LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)} + *(.dtors) + ${CONSTRUCTING+ LONG(0)} + ${CONSTRUCTING+ __DTOR_END__ = .;} *(.lit) *(.shdata) } ${RELOCATING+ > text} diff --git a/ld/sa29200.sc-sh b/ld/sa29200.sc-sh index d0a395bebe3..6526614762e 100755 --- a/ld/sa29200.sc-sh +++ b/ld/sa29200.sc-sh @@ -22,6 +22,16 @@ SECTIONS { *(.data2); ${RELOCATING+_edata = .}; ${CONSTRUCTING+CONSTRUCTORS} + ${CONSTRUCTING+ ___CTOR_LIST__ = .;} + ${CONSTRUCTING+ LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2)} + *(.ctors) + ${CONSTRUCTING+ LONG(0)} + ${CONSTRUCTING+ ___CTOR_END__ = .;} + ${CONSTRUCTING+ ___DTOR_LIST__ = .;} + ${CONSTRUCTING+ LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2)} + *(.dtors) + ${CONSTRUCTING+ LONG(0)} + ${CONSTRUCTING+ ___DTOR_END__ = .;} } .bss . :