diff options
author | devans <devans@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-13 06:20:12 +0000 |
---|---|---|
committer | devans <devans@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-13 06:20:12 +0000 |
commit | 1a6e428506f776b744d338e0dc2feac23664b11d (patch) | |
tree | 8fca9cbca92c0172cfd2c146410c90e4c6d7a1af /gcc/config/m32r | |
parent | 267ea1c0b7859a743fe99faccc251bac55f75d22 (diff) | |
download | gcc-1a6e428506f776b744d338e0dc2feac23664b11d.tar.gz |
back out previous patch, instead do
* config/m32r/initfini.c (__CTOR_LIST__,__DTOR_LIST__): Attribute used.
(__do_global_ctors,__do_global_dtors): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67886 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m32r')
-rw-r--r-- | gcc/config/m32r/initfini.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/gcc/config/m32r/initfini.c b/gcc/config/m32r/initfini.c index 8ae3085cf6f..5cbf8e16f1d 100644 --- a/gcc/config/m32r/initfini.c +++ b/gcc/config/m32r/initfini.c @@ -46,12 +46,12 @@ typedef void (*func_ptr) (void); refer to only the __CTOR_END__ symbol in crtfini.o and the __DTOR_LIST__ symbol in crtinit.o, where they are defined. */ -func_ptr __CTOR_LIST__[1] - __attribute__ ((section (".ctors"))) +static func_ptr __CTOR_LIST__[1] + __attribute__ ((used, section (".ctors"))) = { (func_ptr) (-1) }; -func_ptr __DTOR_LIST__[1] - __attribute__ ((section (".dtors"))) +static func_ptr __DTOR_LIST__[1] + __attribute__ ((used, section (".dtors"))) = { (func_ptr) (-1) }; /* Run all the global destructors on exit from the program. */ @@ -68,11 +68,11 @@ func_ptr __DTOR_LIST__[1] refers to one particular associated `__DTOR_LIST__' which belongs to the same particular root executable or shared library file. */ -void __do_global_dtors (void) -asm ("__do_global_dtors") __attribute__ ((section (".text"))); +static void __do_global_dtors (void) +asm ("__do_global_dtors") __attribute__ ((used, section (".text"))); -void -__do_global_dtors (void) +static void +__do_global_dtors () { func_ptr *p; @@ -122,22 +122,22 @@ __fini:\n\ last, these words naturally end up at the very ends of the two lists contained in these two sections. */ -func_ptr __CTOR_END__[1] - __attribute__ ((section (".ctors"))) +static func_ptr __CTOR_END__[1] + __attribute__ ((used, section (".ctors"))) = { (func_ptr) 0 }; -func_ptr __DTOR_END__[1] - __attribute__ ((section (".dtors"))) +static func_ptr __DTOR_END__[1] + __attribute__ ((used, section (".dtors"))) = { (func_ptr) 0 }; /* Run all global constructors for the program. Note that they are run in reverse order. */ -void __do_global_ctors (void) -asm ("__do_global_ctors") __attribute__ ((section (".text"))); +static void __do_global_ctors (void) +asm ("__do_global_ctors") __attribute__ ((used, section (".text"))); -void -__do_global_ctors (void) +static void +__do_global_ctors () { func_ptr *p; |