Use image pointer size for profile info
May fix some random crashes in dex2oat due to cross compilation.
Change-Id: I633652500e8c7dfec38044dffd07eb467973d82a
diff --git a/runtime/art_method.cc b/runtime/art_method.cc
index 65f41cc..3e3232b 100644
--- a/runtime/art_method.cc
+++ b/runtime/art_method.cc
@@ -596,12 +596,13 @@
}
ProfilingInfo* ArtMethod::CreateProfilingInfo() {
+ DCHECK(!Runtime::Current()->IsAotCompiler());
ProfilingInfo* info = ProfilingInfo::Create(this);
MemberOffset offset = ArtMethod::EntryPointFromJniOffset(sizeof(void*));
uintptr_t pointer = reinterpret_cast<uintptr_t>(this) + offset.Uint32Value();
if (!reinterpret_cast<Atomic<ProfilingInfo*>*>(pointer)->
CompareExchangeStrongSequentiallyConsistent(nullptr, info)) {
- return GetProfilingInfo();
+ return GetProfilingInfo(sizeof(void*));
} else {
return info;
}