summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/libsupc++/atexit_arm.cc
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-04 17:42:49 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-04 17:42:49 +0000
commit71ac9b47b872934e8d78ff35882d69f845545fbd (patch)
tree9487e86764e6f3b2948dceab9c0cfd84d34a1a2e /libstdc++-v3/libsupc++/atexit_arm.cc
parent97351810cb1fd99b7015a23fb07f47e10cc8797f (diff)
downloadppe42-gcc-71ac9b47b872934e8d78ff35882d69f845545fbd.tar.gz
ppe42-gcc-71ac9b47b872934e8d78ff35882d69f845545fbd.zip
* libsupc++/atexit_arm.cc: New file.
* libsupc++/vec.cc (__aeabi_atexit): Remove. * libsupc++/cxxabi.h (__cxa_atexit): Add exception specification. * libsupc++/Makefile.am: Add atexit_arm.cc. * libsupc++/Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124436 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/libsupc++/atexit_arm.cc')
-rw-r--r--libstdc++-v3/libsupc++/atexit_arm.cc44
1 files changed, 44 insertions, 0 deletions
diff --git a/libstdc++-v3/libsupc++/atexit_arm.cc b/libstdc++-v3/libsupc++/atexit_arm.cc
new file mode 100644
index 00000000000..fe2143b42b1
--- /dev/null
+++ b/libstdc++-v3/libsupc++/atexit_arm.cc
@@ -0,0 +1,44 @@
+// Copyright (C) 2007 Free Software Foundation, Inc.
+//
+// This file is part of GCC.
+//
+// GCC is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// GCC is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License
+// along with GCC; see the file COPYING. If not, write to
+// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+// Boston, MA 02110-1301, USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#include <cxxabi.h>
+
+#if defined(__arm__) && defined(__ARM_EABI__)
+
+namespace __aeabiv1
+{
+ extern "C" int
+ __aeabi_atexit (void *object,
+ void (*destructor) (void *),
+ void *dso_handle) throw ()
+ {
+ return abi::__cxa_atexit(destructor, object, dso_handle);
+ }
+} // namespace __aeabiv1
+
+#endif // defined(__arm__) && defined(__ARM_EABI__)
OpenPOWER on IntegriCloud