diff options
| author | 2012-09-26 16:03:51 -0700 | |
|---|---|---|
| committer | 2012-09-26 16:05:33 -0700 | |
| commit | 823433dbf4afec17169d5ca738031af5b374e140 (patch) | |
| tree | 74a1c19c016ce7bf63b043d161d96a56f4b71688 /src/compiler_llvm/gbc_expander.cc | |
| parent | 4d980b0e085ea59bc243da3eff5ea84acc7afc24 (diff) | |
Corresponding CL of thread flags for portable.
Change-Id: I6ad0c6159115e0d8879e0d9d674d760cd48f29c9
Diffstat (limited to 'src/compiler_llvm/gbc_expander.cc')
| -rw-r--r-- | src/compiler_llvm/gbc_expander.cc | 19 |
1 files changed, 1 insertions, 18 deletions
diff --git a/src/compiler_llvm/gbc_expander.cc b/src/compiler_llvm/gbc_expander.cc index bcca08d654..8750c0bed2 100644 --- a/src/compiler_llvm/gbc_expander.cc +++ b/src/compiler_llvm/gbc_expander.cc @@ -161,8 +161,6 @@ class GBCExpanderPass : public llvm::FunctionPass { void Expand_MarkGCCard(llvm::CallInst& call_inst); - llvm::Value* Expand_GetException(); - llvm::Value* Expand_LoadStringFromDexCache(llvm::Value* string_idx_value); llvm::Value* Expand_LoadTypeFromDexCache(llvm::Value* type_idx_value); @@ -775,21 +773,6 @@ void GBCExpanderPass::Expand_MarkGCCard(llvm::CallInst& call_inst) { return; } -llvm::Value* GBCExpanderPass::Expand_GetException() { - // Get thread-local exception field address - llvm::Value* exception_object_addr = - irb_.Runtime().EmitLoadFromThreadOffset(art::Thread::ExceptionOffset().Int32Value(), - irb_.getJObjectTy(), - kTBAAJRuntime); - - // Set thread-local exception field address to NULL - irb_.Runtime().EmitStoreToThreadOffset(art::Thread::ExceptionOffset().Int32Value(), - irb_.getJNull(), - kTBAAJRuntime); - - return exception_object_addr; -} - llvm::Value* GBCExpanderPass::Expand_LoadStringFromDexCache(llvm::Value* string_idx_value) { uint32_t string_idx = @@ -2721,7 +2704,7 @@ GBCExpanderPass::ExpandIntrinsic(IntrinsicHelper::IntrinsicId intr_id, return NULL; } case IntrinsicHelper::GetException: { - return Expand_GetException(); + return irb_.Runtime().EmitGetAndClearException(); } case IntrinsicHelper::IsExceptionPending: { return irb_.Runtime().EmitIsExceptionPending(); |