summaryrefslogtreecommitdiffstats
path: root/runtime/interpreter/interpreter_switch_impl.cc
diff options
context:
space:
mode:
authorSebastien Hertz <shertz@google.com>2013-10-01 08:47:41 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-10-01 08:47:42 +0000
commit7ef126ce0593929bcf8fb73d8b1119ce3b95b3f2 (patch)
treefc5642798c75ccb61cba12ec5e5b35432bca44d3 /runtime/interpreter/interpreter_switch_impl.cc
parent5b7d0f35e5e884f53fb4a973d13ca5c98e25951a (diff)
parentc67148594b1580c278ae71e3ce5c6fd59bfa6bd3 (diff)
downloadart-7ef126ce0593929bcf8fb73d8b1119ce3b95b3f2.zip
art-7ef126ce0593929bcf8fb73d8b1119ce3b95b3f2.tar.gz
art-7ef126ce0593929bcf8fb73d8b1119ce3b95b3f2.tar.bz2
Merge "Enable thread analysis on template functions." into dalvik-dev
Diffstat (limited to 'runtime/interpreter/interpreter_switch_impl.cc')
-rw-r--r--runtime/interpreter/interpreter_switch_impl.cc16
1 files changed, 9 insertions, 7 deletions
diff --git a/runtime/interpreter/interpreter_switch_impl.cc b/runtime/interpreter/interpreter_switch_impl.cc
index 82f216a..dcc86e8 100644
--- a/runtime/interpreter/interpreter_switch_impl.cc
+++ b/runtime/interpreter/interpreter_switch_impl.cc
@@ -51,7 +51,7 @@ namespace interpreter {
#define PREAMBLE()
template<bool do_access_check>
-static JValue ExecuteSwitchImpl(Thread* self, MethodHelper& mh, const DexFile::CodeItem* code_item,
+JValue ExecuteSwitchImpl(Thread* self, MethodHelper& mh, const DexFile::CodeItem* code_item,
ShadowFrame& shadow_frame, JValue result_register) {
bool do_assignability_check = do_access_check;
if (UNLIKELY(!shadow_frame.HasReferenceArray())) {
@@ -2134,12 +2134,14 @@ static JValue ExecuteSwitchImpl(Thread* self, MethodHelper& mh, const DexFile::C
} // NOLINT(readability/fn_size)
// Explicit definitions of ExecuteSwitchImpl.
-template JValue ExecuteSwitchImpl<true>(Thread* self, MethodHelper& mh,
- const DexFile::CodeItem* code_item,
- ShadowFrame& shadow_frame, JValue result_register);
-template JValue ExecuteSwitchImpl<false>(Thread* self, MethodHelper& mh,
- const DexFile::CodeItem* code_item,
- ShadowFrame& shadow_frame, JValue result_register);
+template SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) HOT_ATTR
+JValue ExecuteSwitchImpl<true>(Thread* self, MethodHelper& mh,
+ const DexFile::CodeItem* code_item,
+ ShadowFrame& shadow_frame, JValue result_register);
+template SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) HOT_ATTR
+JValue ExecuteSwitchImpl<false>(Thread* self, MethodHelper& mh,
+ const DexFile::CodeItem* code_item,
+ ShadowFrame& shadow_frame, JValue result_register);
} // namespace interpreter
} // namespace art