Home
last modified time | relevance | path

Searched refs:string_idx (Results 1 – 23 of 23) sorted by relevance

/art/runtime/mirror/
Ddex_cache-inl.h79 inline uint32_t DexCache::StringSlotIndex(dex::StringIndex string_idx) { in StringSlotIndex() argument
80 DCHECK_LT(string_idx.index_, GetDexFile()->NumStringIds()); in StringSlotIndex()
81 const uint32_t slot_idx = string_idx.index_ % kDexCacheStringCacheSize; in StringSlotIndex()
86 inline String* DexCache::GetResolvedString(dex::StringIndex string_idx) { in GetResolvedString() argument
93 DCHECK_LT(string_idx.index_, num_preresolved_strings); in GetResolvedString()
95 mirror::String* string = preresolved_strings[string_idx.index_].Read(); in GetResolvedString()
101 return GetStrings()[StringSlotIndex(string_idx)].load( in GetResolvedString()
102 std::memory_order_relaxed).GetObjectForIndex(string_idx.index_); in GetResolvedString()
105 inline void DexCache::SetResolvedString(dex::StringIndex string_idx, ObjPtr<String> resolved) { in SetResolvedString() argument
107 GetStrings()[StringSlotIndex(string_idx)].store( in SetResolvedString()
[all …]
Ddex_cache.h276 String* GetResolvedString(dex::StringIndex string_idx) ALWAYS_INLINE
279 void SetResolvedString(dex::StringIndex string_idx, ObjPtr<mirror::String> resolved) ALWAYS_INLINE
282 void SetPreResolvedString(dex::StringIndex string_idx,
292 void ClearString(dex::StringIndex string_idx) REQUIRES_SHARED(Locks::mutator_lock_);
472 uint32_t StringSlotIndex(dex::StringIndex string_idx) REQUIRES_SHARED(Locks::mutator_lock_);
/art/libdexfile/dex/
Ddex_instruction.cc204 uint32_t string_idx = VRegB_21c(); in DumpString() local
205 if (string_idx < file->NumStringIds()) { in DumpString()
209 PrintableString(file->StringDataByIdx(dex::StringIndex(string_idx))).c_str(), in DumpString()
210 string_idx); in DumpString()
214 string_idx, in DumpString()
215 string_idx); in DumpString()
346 uint32_t string_idx = VRegB_31c(); in DumpString() local
348 if (string_idx < file->NumStringIds()) { in DumpString()
353 PrintableString(file->StringDataByIdx(dex::StringIndex(string_idx))).c_str(), in DumpString()
354 string_idx); in DumpString()
[all …]
Dtest_dex_file_builder.h105 uint32_t string_idx = 0u; in Build() local
107 entry.second.idx = string_idx; in Build()
108 string_idx += 1u; in Build()
Ddex_file.cc349 const TypeId* DexFile::FindTypeId(dex::StringIndex string_idx) const { in FindTypeId()
355 if (string_idx > type_id.descriptor_idx_) { in FindTypeId()
357 } else if (string_idx < type_id.descriptor_idx_) { in FindTypeId()
Ddex_file_verifier.cc130 dex::StringIndex string_idx) { in GetString() argument
132 DCHECK_LT(string_idx.index_, header->string_ids_size_); in GetString()
134 reinterpret_cast<const dex::StringId*>(begin + header->string_ids_off_) + string_idx.index_; in GetString()
889 uint32_t string_idx = method_id.name_idx_.index_; in CheckClassDataItemMethod() local
890 if (!CheckIndex(string_idx, header_->string_ids_size_, "method flags verification")) { in CheckClassDataItemMethod()
893 if (UNLIKELY(string_idx < init_indices_.angle_bracket_end_index) && in CheckClassDataItemMethod()
894 string_idx >= init_indices_.angle_bracket_start_index) { in CheckClassDataItemMethod()
895 if (string_idx == init_indices_.angle_clinit_angle_index) { in CheckClassDataItemMethod()
897 } else if (string_idx == init_indices_.angle_init_angle_index) { in CheckClassDataItemMethod()
Ddex_file.h308 const dex::TypeId* FindTypeId(dex::StringIndex string_idx) const;
/art/runtime/
Dclass_linker-inl.h69 inline ObjPtr<mirror::String> ClassLinker::ResolveString(dex::StringIndex string_idx, in ResolveString() argument
76 referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedString(string_idx); in ResolveString()
78 resolved = DoResolveString(string_idx, referrer->GetDexCache()); in ResolveString()
83 inline ObjPtr<mirror::String> ClassLinker::ResolveString(dex::StringIndex string_idx, in ResolveString() argument
90 referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedString(string_idx); in ResolveString()
92 resolved = DoResolveString(string_idx, referrer->GetDexCache()); in ResolveString()
97 inline ObjPtr<mirror::String> ClassLinker::ResolveString(dex::StringIndex string_idx, in ResolveString() argument
101 ObjPtr<mirror::String> resolved = dex_cache->GetResolvedString(string_idx); in ResolveString()
103 resolved = DoResolveString(string_idx, dex_cache); in ResolveString()
108 inline ObjPtr<mirror::String> ClassLinker::LookupString(dex::StringIndex string_idx, in LookupString() argument
[all …]
Dtransaction_test.cc508 dex::StringIndex string_idx = dex_file->GetIndexForStringId(*string_id); in TEST_F() local
509 ASSERT_TRUE(string_idx.IsValid()); in TEST_F()
511 EXPECT_TRUE(class_linker_->LookupString(string_idx, h_dex_cache.Get()) == nullptr); in TEST_F()
512 EXPECT_TRUE(h_dex_cache->GetResolvedString(string_idx) == nullptr); in TEST_F()
521 class_linker_->LookupString(string_idx, h_dex_cache.Get()); in TEST_F()
524 EXPECT_OBJ_PTR_EQ(s, h_dex_cache->GetResolvedString(string_idx)); in TEST_F()
528 EXPECT_TRUE(class_linker_->LookupString(string_idx, h_dex_cache.Get()) == nullptr); in TEST_F()
529 EXPECT_TRUE(h_dex_cache->GetResolvedString(string_idx) == nullptr); in TEST_F()
Dtransaction.cc262 dex::StringIndex string_idx) { in RecordResolveString() argument
264 DCHECK_LT(string_idx.index_, dex_cache->GetDexFile()->NumStringIds()); in RecordResolveString()
267 resolve_string_logs_.emplace_back(dex_cache, string_idx); in RecordResolveString()
627 dex::StringIndex string_idx) in ResolveStringLog() argument
629 string_idx_(string_idx) { in ResolveStringLog()
Dtransaction.h130 void RecordResolveString(ObjPtr<mirror::DexCache> dex_cache, dex::StringIndex string_idx)
266 ResolveStringLog(ObjPtr<mirror::DexCache> dex_cache, dex::StringIndex string_idx);
Dclass_linker.h249 ObjPtr<mirror::String> ResolveString(dex::StringIndex string_idx,
252 ObjPtr<mirror::String> ResolveString(dex::StringIndex string_idx,
258 ObjPtr<mirror::String> ResolveString(dex::StringIndex string_idx,
264 ObjPtr<mirror::String> LookupString(dex::StringIndex string_idx,
1015 ObjPtr<mirror::String> DoResolveString(dex::StringIndex string_idx,
1018 ObjPtr<mirror::String> DoResolveString(dex::StringIndex string_idx,
1023 ObjPtr<mirror::String> DoLookupString(dex::StringIndex string_idx,
Druntime.h572 void RecordResolveString(ObjPtr<mirror::DexCache> dex_cache, dex::StringIndex string_idx) const
Druntime.cc2594 dex::StringIndex string_idx) const { in RecordResolveString()
2597 GetTransaction()->RecordResolveString(dex_cache, string_idx); in RecordResolveString()
/art/cmdline/
Dtoken_range.h276 size_t string_idx = 0; in MatchSubstrings() local
283 size_t wildcard_length = string_idx - wildcard_idx; in MatchSubstrings()
296 wildcard_idx = string_idx; in MatchSubstrings()
304 } else if (next_token_idx != string_idx && wildcard_idx == std::string::npos) { in MatchSubstrings()
312 string_idx += tok.size(); in MatchSubstrings()
315 size_t remaining = string.size() - string_idx; in MatchSubstrings()
325 string_idx += remaining; in MatchSubstrings()
/art/runtime/entrypoints/quick/
Dquick_dexcache_entrypoints.cc99 dex::StringIndex string_idx, in StoreStringInBss() argument
107 string_idx.index_, in StoreStringInBss()
208 extern "C" mirror::String* artResolveStringFromCode(int32_t string_idx, Thread* self) in artResolveStringFromCode() argument
215 Runtime::Current()->GetClassLinker()->ResolveString(dex::StringIndex(string_idx), caller); in artResolveStringFromCode()
217 StoreStringInBss(caller_and_outer.outer_method, dex::StringIndex(string_idx), result); in artResolveStringFromCode()
/art/tools/dexanalyze/
Ddexanalyze_strings.cc92 std::string GetString(uint32_t string_idx) const { in GetString()
93 const size_t offset = string_offsets_[string_idx]; in GetString()
108 ALWAYS_INLINE bool Equal(uint32_t string_idx, const uint8_t* data, size_t len) const { in Equal() argument
109 const size_t offset = string_offsets_[string_idx]; in Equal()
162 std::string GetString(uint32_t string_idx) const { in GetString()
163 const size_t offset = string_offsets_[string_idx]; in GetString()
169 ALWAYS_INLINE bool Equal(uint32_t string_idx, const uint8_t* data, size_t len) const { in Equal() argument
170 const size_t offset = string_offsets_[string_idx]; in Equal()
/art/runtime/utils/
Ddex_cache_arrays_layout-inl.h111 inline size_t DexCacheArraysLayout::StringOffset(uint32_t string_idx) const { in StringOffset() argument
112 uint32_t string_hash = string_idx % mirror::DexCache::kDexCacheStringCacheSize; in StringOffset()
Ddex_cache_arrays_layout.h88 size_t StringOffset(uint32_t string_idx) const;
/art/runtime/native/
Ddalvik_system_VMRuntime.cc389 ObjPtr<mirror::DexCache> dex_cache, dex::StringIndex string_idx, StringTable& strings) in PreloadDexCachesResolveString() argument
391 uint32_t slot_idx = dex_cache->StringSlotIndex(string_idx); in PreloadDexCachesResolveString()
397 const char* utf8 = dex_file->StringDataByIdx(string_idx); in PreloadDexCachesResolveString()
402 dex_cache->SetResolvedString(string_idx, string); in PreloadDexCachesResolveString()
/art/runtime/interpreter/
Dinterpreter_common.h792 dex::StringIndex string_idx) in ResolveString() argument
807 Runtime::Current()->GetClassLinker()->ResolveString(string_idx, method); in ResolveString()
/art/dexdump/
Ddexdump.cc1753 dex::StringIndex string_idx = static_cast<dex::StringIndex>(it.GetJavaValue().i); in dumpCallSite() local
1754 value = pDexFile->StringDataByIdx(string_idx); in dumpCallSite()
/art/dex2oat/linker/
Dimage_writer.cc1372 dex::StringIndex string_idx(i); in PreloadDexCache() local
1373 uint32_t slot_idx = dex_cache->StringSlotIndex(string_idx); in PreloadDexCache()
1379 string = class_linker->LookupString(string_idx, dex_cache); in PreloadDexCache()
1380 DCHECK(string == nullptr || dex_cache->GetResolvedString(string_idx) == string); in PreloadDexCache()