summaryrefslogtreecommitdiff
path: root/compiler/jni/quick/calling_convention.h
diff options
context:
space:
mode:
author Dmitry Petrochenko <dmitry.petrochenko@intel.com> 2014-03-31 09:12:31 +0700
committer Dmitry Petrochenko <dmitry.petrochenko@intel.com> 2014-04-01 10:24:51 +0700
commitf0513c591271f93df76c46d672eed4a00cd4184b (patch)
treef1648f9a920218bb74bdd81b230a0f71055ffa12 /compiler/jni/quick/calling_convention.h
parent81ed34e686532cebc1e17a273110decf0dd24e81 (diff)
art: Make calling convention immune to SIRT structure change
Introduce stack_indirect_reference_table::referencesOffset and rely on it in calling convention to avoid issues if SIRT structure change. Change-Id: Icc0c5c5b1313173df2ee519ab8934183074fdfb6 Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
Diffstat (limited to 'compiler/jni/quick/calling_convention.h')
-rw-r--r--compiler/jni/quick/calling_convention.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/compiler/jni/quick/calling_convention.h b/compiler/jni/quick/calling_convention.h
index fe3d1cd551..4950905d4c 100644
--- a/compiler/jni/quick/calling_convention.h
+++ b/compiler/jni/quick/calling_convention.h
@@ -298,9 +298,8 @@ class JniCallingConvention : public CallingConvention {
}
FrameOffset SirtReferencesOffset() const {
- // The StackIndirectReferenceTable::number_of_references_ type is uint32_t
- return FrameOffset(SirtNumRefsOffset().Int32Value() +
- sizeof(uint32_t));
+ return FrameOffset(SirtOffset().Int32Value() +
+ StackIndirectReferenceTable::ReferencesOffset());
}
virtual ~JniCallingConvention() {}