diff options
author | Shih-wei Liao <sliao@google.com> | 2012-04-02 19:22:28 -0700 |
---|---|---|
committer | Shih-wei Liao <sliao@google.com> | 2012-04-02 23:36:14 -0700 |
commit | 9e0e54daee9d171c7f54f1b739bb9beca4cb631b (patch) | |
tree | 22cda1dd4541cf79ad7e818377a45f23478ee776 | |
parent | c5f40bf576e2acc148366b84a22842f321290aab (diff) | |
download | art-9e0e54daee9d171c7f54f1b739bb9beca4cb631b.zip art-9e0e54daee9d171c7f54f1b739bb9beca4cb631b.tar.gz art-9e0e54daee9d171c7f54f1b739bb9beca4cb631b.tar.bz2 |
Should not call PushNativeToManagedRecord.
Change-Id: Ib1e7e7c6cc6953575e3e1d4d02222837e9460be9
-rw-r--r-- | src/compiler_llvm/runtime_support_llvm.cc | 4 | ||||
-rw-r--r-- | src/object.cc | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/compiler_llvm/runtime_support_llvm.cc b/src/compiler_llvm/runtime_support_llvm.cc index 917b57e..59b8efb 100644 --- a/src/compiler_llvm/runtime_support_llvm.cc +++ b/src/compiler_llvm/runtime_support_llvm.cc @@ -419,7 +419,7 @@ Object* art_decode_jobject_in_thread(Thread* thread, jobject obj) { } //---------------------------------------------------------------------------- -// RTTI +// Type checking, in the nature of casting //---------------------------------------------------------------------------- int32_t art_is_assignable_from_code(const Class* dest_type, const Class* src_type) { @@ -429,7 +429,7 @@ int32_t art_is_assignable_from_code(const Class* dest_type, const Class* src_typ } void art_check_cast_from_code(const Class* dest_type, const Class* src_type) { - DCHECK(dest_type->IsClass()) << PrettyClass(dest_type); +DCHECK(dest_type->IsClass()) << PrettyClass(dest_type); DCHECK(src_type->IsClass()) << PrettyClass(src_type); if (UNLIKELY(!dest_type->IsAssignableFrom(src_type))) { Thread::Current()->ThrowNewExceptionF("Ljava/lang/ClassCastException;", diff --git a/src/object.cc b/src/object.cc index ad0f6b9..2cf8a6c 100644 --- a/src/object.cc +++ b/src/object.cc @@ -559,8 +559,10 @@ uint32_t Method::FindCatchBlock(Class* exception_type, uint32_t dex_pc) const { void Method::Invoke(Thread* self, Object* receiver, JValue* args, JValue* result) const { // Push a transition back into managed code onto the linked list in thread. CHECK_EQ(Thread::kRunnable, self->GetState()); +#if !defined(ART_USE_LLVM_COMPILER) NativeToManagedRecord record; self->PushNativeToManagedRecord(&record); +#endif // Call the invoke stub associated with the method. // Pass everything as arguments. @@ -588,8 +590,10 @@ void Method::Invoke(Thread* self, Object* receiver, JValue* args, JValue* result } } +#if !defined(ART_USE_LLVM_COMPILER) // Pop transition. self->PopNativeToManagedRecord(record); +#endif } bool Method::IsRegistered() const { |