New wrapper around the terminate call.
authorChris Lattner <sabre@nondot.org>
Thu, 28 Aug 2003 14:35:52 +0000 (14:35 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 28 Aug 2003 14:35:52 +0000 (14:35 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8171 91177308-0d34-0410-b5e6-96231b3b80d8

runtime/GCCLibraries/crtend/C++-Exception.cpp
runtime/GCCLibraries/crtend/C++-Exception.h
runtime/GCCLibraries/libexception/C++-Exception.cpp
runtime/GCCLibraries/libexception/C++-Exception.h

index 01a72d0e5506cfa01f069a49aa7389e7769c535d..5e589301141923afd4ba113b596cd851c14ad457 100644 (file)
@@ -214,6 +214,10 @@ void __llvm_cxxeh_end_catch() /* might throw */ {
     E->ExceptionDestructor(E);        // Release memory for the exception
 }
 
+void __llvm_cxxeh_call_terminate() throw() {
+  __terminate(__terminate_handler);
+}
+
 
 // __llvm_cxxeh_rethrow - This function turns the top-level caught exception
 // into an uncaught exception, in preparation for an llvm.unwind, which should
index 81a7639d95236aa89a02ebf0a157178e82c5ab78..30d40aad26b7ba74b302b00b239454b98150becf 100644 (file)
@@ -69,6 +69,7 @@ extern "C" {
   void __llvm_cxxeh_throw(void *ObjectPtr, void *TypeInfoPtr,
                           void (*DtorPtr)(void*)) throw();
 
+  void __llvm_cxxeh_call_terminate() throw() __attribute__((noreturn));
   void * __llvm_cxxeh_current_uncaught_exception_isa(void *Ty)
     throw();
   void *__llvm_cxxeh_begin_catch() throw();
index 01a72d0e5506cfa01f069a49aa7389e7769c535d..5e589301141923afd4ba113b596cd851c14ad457 100644 (file)
@@ -214,6 +214,10 @@ void __llvm_cxxeh_end_catch() /* might throw */ {
     E->ExceptionDestructor(E);        // Release memory for the exception
 }
 
+void __llvm_cxxeh_call_terminate() throw() {
+  __terminate(__terminate_handler);
+}
+
 
 // __llvm_cxxeh_rethrow - This function turns the top-level caught exception
 // into an uncaught exception, in preparation for an llvm.unwind, which should
index 81a7639d95236aa89a02ebf0a157178e82c5ab78..30d40aad26b7ba74b302b00b239454b98150becf 100644 (file)
@@ -69,6 +69,7 @@ extern "C" {
   void __llvm_cxxeh_throw(void *ObjectPtr, void *TypeInfoPtr,
                           void (*DtorPtr)(void*)) throw();
 
+  void __llvm_cxxeh_call_terminate() throw() __attribute__((noreturn));
   void * __llvm_cxxeh_current_uncaught_exception_isa(void *Ty)
     throw();
   void *__llvm_cxxeh_begin_catch() throw();