summaryrefslogtreecommitdiffstats
path: root/runtime/dex_file.h
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2013-11-14 15:34:17 +0000
committerVladimir Marko <vmarko@google.com>2013-11-18 12:11:02 +0000
commit5c96e6b4dc354a7439b211b93462fbe8edea5e57 (patch)
treeb89930ae568d5219e4cb1823586a6e536bebdd9b /runtime/dex_file.h
parentca368cb576cf6a436a32c357fca51fbb3082d7a9 (diff)
downloadart-5c96e6b4dc354a7439b211b93462fbe8edea5e57.tar.gz
art-5c96e6b4dc354a7439b211b93462fbe8edea5e57.tar.bz2
art-5c96e6b4dc354a7439b211b93462fbe8edea5e57.zip
Rewrite intrinsics detection.
Intrinsic methods should be treated as a special case of inline methods. They should be detected early and used to guide other optimizations. This CL rewrites the intrinsics detection so that it can be moved to any compilation phase. Change-Id: I4424a6a869bd98b9c478953c9e3bcaf1c6de2b33
Diffstat (limited to 'runtime/dex_file.h')
-rw-r--r--runtime/dex_file.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/runtime/dex_file.h b/runtime/dex_file.h
index 51ab8d81a8..84026a46e6 100644
--- a/runtime/dex_file.h
+++ b/runtime/dex_file.h
@@ -661,7 +661,11 @@ class DexFile {
// Looks up a proto id for a given return type and signature type list
const ProtoId* FindProtoId(uint16_t return_type_idx,
- const std::vector<uint16_t>& signature_type_idxs_) const;
+ const uint16_t* signature_type_idxs, uint32_t signature_length) const;
+ const ProtoId* FindProtoId(uint16_t return_type_idx,
+ const std::vector<uint16_t>& signature_type_idxs) const {
+ return FindProtoId(return_type_idx, &signature_type_idxs[0], signature_type_idxs.size());
+ }
// Given a signature place the type ids into the given vector, returns true on success
bool CreateTypeList(const StringPiece& signature, uint16_t* return_type_idx,