diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | elf/sofini.c | 6 |
2 files changed, 8 insertions, 3 deletions
@@ -1,5 +1,10 @@ 2003-07-22 Andreas Jaeger <aj@suse.de> + * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc + will not optimize it away. + (__DTOR_END__): Likewise. + (__CTOR_END__): Likewise. + * include/libc-symbols.h (_elf_set_element): Use attribute used so that gcc will not optimize it away. (link_warning): Likewise. diff --git a/elf/sofini.c b/elf/sofini.c index 077399f0ce..16e77e72ad 100644 --- a/elf/sofini.c +++ b/elf/sofini.c @@ -2,10 +2,10 @@ null pointer words in the `.ctors' and `.dtors' sections. */ static void (*const __CTOR_END__[1]) (void) - __attribute__ ((unused, section (".ctors"))) + __attribute__ ((used, section (".ctors"))) = { 0 }; static void (*const __DTOR_END__[1]) (void) - __attribute__ ((unused, section (".dtors"))) + __attribute__ ((used, section (".dtors"))) = { 0 }; #ifdef HAVE_DWARF2_UNWIND_INFO @@ -14,6 +14,6 @@ static void (*const __DTOR_END__[1]) (void) typedef unsigned int ui32 __attribute__ ((mode (SI))); static ui32 __FRAME_END__[1] - __attribute__ ((unused, section (".eh_frame"))) + __attribute__ ((used, section (".eh_frame"))) = { 0 }; #endif |