cygming-crtend.c (register_frame_ctor): Register __gcc_deregister_frame with atexit.
authorDanny Smith <dannysmith@users.sourceforge.net>
Fri, 25 Apr 2008 04:59:15 +0000 (04:59 +0000)
committerDanny Smith <dannysmith@gcc.gnu.org>
Fri, 25 Apr 2008 04:59:15 +0000 (04:59 +0000)
* config/i386/cygming-crtend.c (register_frame_ctor): Register
__gcc_deregister_frame with atexit.
(deregister_frame_dtor): Remove.

From-SVN: r134656

gcc/ChangeLog
gcc/config/i386/cygming-crtend.c

index ca6f960b767dce25ad05244785427450edaa50ad..c634ab396d360603cc6b6721d491e77c64dd612c 100644 (file)
@@ -1,3 +1,9 @@
+2008-04-25  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       * config/i386/cygming-crtend.c (register_frame_ctor): Register
+       __gcc_deregister_frame with atexit.
+       (deregister_frame_dtor): Remove.
+
 2008-04-24  Nathan Froyd  <froydnj@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
 
index 92e133099e443e02385943ef1f4c3837f197964e..ed2d5dba6c27f9793238946c546c940d5f7e6c2f 100644 (file)
@@ -65,22 +65,15 @@ static void *__JCR_END__[1]
    = { 0 };
 #endif
 
-
 extern void __gcc_register_frame (void); 
 extern void __gcc_deregister_frame (void);
 
 static void register_frame_ctor (void) __attribute__ ((constructor (0)));
-static void deregister_frame_dtor (void) __attribute__ ((destructor (0)));
-
 
 static void
 register_frame_ctor (void)
 {
   __gcc_register_frame ();
+  atexit (__gcc_deregister_frame);
 }
 
-static void
-deregister_frame_dtor (void)
-{
-  __gcc_deregister_frame ();
-}