OSDN Git Service

* config/i386/cygming-crtend.c (register_frame_ctor): Register
authordannysmith <dannysmith@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 25 Apr 2008 04:59:15 +0000 (04:59 +0000)
committerdannysmith <dannysmith@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 25 Apr 2008 04:59:15 +0000 (04:59 +0000)
__gcc_deregister_frame with atexit.
(deregister_frame_dtor): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@134656 138bc75d-0d04-0410-961f-82ee72b054a4

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

index ca6f960..c634ab3 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 92e1330..ed2d5db 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 ();
-}