diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-02-22 12:29:38 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-02-22 12:29:38 -0800 |
commit | 2c14a7b749fff05b62bdb69afff9de7dfff96572 (patch) | |
tree | 4858a63ff03d30b1bbbad0b243702e5f67c46ed4 /src | |
parent | dd979ed995ce4a82b505fba2f29a8f32dc900bdd (diff) |
use libcxxabi for dynamic_cast
Diffstat (limited to 'src')
-rw-r--r-- | src/library.js | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/src/library.js b/src/library.js index cda318d7..56370b79 100644 --- a/src/library.js +++ b/src/library.js @@ -4374,28 +4374,6 @@ LibraryManager.library = { __cxa_guard_release: function() {}, __cxa_guard_abort: function() {}, - _ZTVN10__cxxabiv119__pointer_type_infoE: [0], // is a pointer - _ZTVN10__cxxabiv117__class_type_infoE: [1], // no inherited classes - _ZTVN10__cxxabiv120__si_class_type_infoE: [2], // yes inherited classes - - __dynamic_cast: function(ptr, knownTI, attemptedTI, idunno) { - var ptrTV = {{{ makeGetValue('ptr', '0', '*') }}}; - var count = {{{ makeGetValue('ptrTV', '0', '*') }}}; - ptrTV -= {{{ Runtime.QUANTUM_SIZE }}}; - var TI = {{{ makeGetValue('ptrTV', '0', '*') }}}; - do { - if (TI == attemptedTI) return ptr; - // Go to parent class - var type_infoAddr = {{{ makeGetValue('TI', '0', '*') }}} - {{{ Runtime.QUANTUM_SIZE*2 }}}; - var type_info = {{{ makeGetValue('type_infoAddr', '0', '*') }}}; - if (type_info == 1) return 0; // no parent class - var TIAddr = TI + {{{ Runtime.QUANTUM_SIZE*2 }}}; - var TI = {{{ makeGetValue('TIAddr', '0', '*') }}}; - } while (1); - - return 0; - }, - // Exceptions __cxa_allocate_exception: function(size) { return _malloc(size); |