aboutsummaryrefslogtreecommitdiff
path: root/src/jsifier.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-02-21 09:55:01 -0800
committerAlon Zakai <alonzakai@gmail.com>2012-02-21 09:55:01 -0800
commit282f297568fbdc7d347ef3cdf8a00324b39eace7 (patch)
treeaffa91349b69f1da2e91411a8bbcdf03082c4e26 /src/jsifier.js
parent3c61023b189c412302981d6d029e21a58e9b428a (diff)
parente6f092d69f1806153571e6e808caea76f8bf5190 (diff)
Merge pull request #265 from adetaylor/polymorphic-exception-handling
Polymorphic exception handling.
Diffstat (limited to 'src/jsifier.js')
-rw-r--r--src/jsifier.js5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/jsifier.js b/src/jsifier.js
index b3701112..bc827135 100644
--- a/src/jsifier.js
+++ b/src/jsifier.js
@@ -988,9 +988,8 @@ function JSify(data, functionsOnly, givenFunctions) {
}
});
makeFuncLineActor('landingpad', function(item) {
- // Just a stub
- return '{ f0: ' + makeGetValue('_llvm_eh_exception.buf', '0', 'void*') +
- ', f1:' + makeGetValue('_llvm_eh_exception.buf', QUANTUM_SIZE, 'void*') + ' }';
+ var catchTypeArray = item.catchables.map(finalizeLLVMParameter).join(',');
+ return '___cxa_find_matching_catch('+ makeGetValue('_llvm_eh_exception.buf', '0', 'void*') +',' + makeGetValue('_llvm_eh_exception.buf', QUANTUM_SIZE, 'void*') + ',[' + catchTypeArray +'])';
});
makeFuncLineActor('load', function(item) {
var value = finalizeLLVMParameter(item.pointer);