aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/library.js23
1 files changed, 14 insertions, 9 deletions
diff --git a/src/library.js b/src/library.js
index c668a5aa..f9af8a96 100644
--- a/src/library.js
+++ b/src/library.js
@@ -4427,14 +4427,6 @@ LibraryManager.library = {
throw exception;
},
- _Unwind_Resume_or_Rethrow: function(ptr) {
- {{{ makeThrow('ptr') }}};
- },
- _Unwind_RaiseException: function(ptr) {
- {{{ makeThrow('ptr') }}};
- },
- _Unwind_DeleteException: function(ptr) {},
-
terminate: '__cxa_call_unexpected',
__gxx_personality_v0__deps: ['llvm_eh_exception', '_ZSt18uncaught_exceptionv', '__cxa_find_matching_catch'],
@@ -4547,7 +4539,20 @@ LibraryManager.library = {
}
},
- _ZNSt9exceptionD2Ev: function(){}, // XXX a dependency of dlmalloc, but not actually needed if libcxx is not anyhow included
+ // Destructors for std::exception since we don't have them implemented in libcxx as we aren't using libcxxabi.
+ // These are also needed for the dlmalloc tests.
+ _ZNSt9exceptionD1Ev: function() {},
+ _ZNSt9exceptionD2Ev: function() {},
+
+ _ZNKSt9exception4whatEv__deps: ['_malloc'],
+ _ZNKSt9exception4whatEv: function() {
+ if (!__ZNKSt9exception4whatEv.buffer) {
+ var name = "std::exception";
+ __ZNKSt9exception4whatEv.buffer = _malloc(name.length + 1);
+ writeStringToMemory(name, __ZNKSt9exception4whatEv.buffer);
+ }
+ return __ZNKSt9exception4whatEv.buffer;
+ },
_ZNSt9type_infoD2Ev: function(){},