diff options
author | Lars Knoll <lars.knoll@digia.com> | 2012-10-22 00:18:31 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@digia.com> | 2012-10-24 08:46:49 +0200 |
commit | 5f06c71bc1bf146977b6a189491f73ddf8792777 (patch) | |
tree | b4d83b72d235d0adb03db75bce910d2d1278c502 /qv4isel_llvm.cpp | |
parent | 2c62e69b8d1b49dd440f17c7de2f93be970699cb (diff) |
Proper exception handling
Implement exceptions using setjmp/longjmp. The
advantage is that this removes all exception
handling overhead from regular code, the only
code that still has a (very small) overhead
is the try{} catch() {} statement.
Change-Id: I43d6a60dfc9dfd4b7a20d2e99ab0a9315b4d8a2f
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'qv4isel_llvm.cpp')
-rw-r--r-- | qv4isel_llvm.cpp | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/qv4isel_llvm.cpp b/qv4isel_llvm.cpp index eae3bc46a3..040111f5ac 100644 --- a/qv4isel_llvm.cpp +++ b/qv4isel_llvm.cpp @@ -935,13 +935,6 @@ void LLVMInstructionSelection::genCallName(IR::Call *e, llvm::Value *result) _llvmValue = llvm::UndefValue::get(_valueTy); return; - case IR::Name::builtin_rethrow: - CreateCall2(_llvmModule->getFunction("__qmljs_llvm_rethrow"), - _llvmFunction->arg_begin(), result); - _llvmValue = CreateLoad(result); - return; - } - Q_UNREACHABLE(); } else { llvm::Value *name = getIdentifier(*base->id); |