diff options
| author | 2014-06-04 23:02:08 +0000 | |
|---|---|---|
| committer | 2014-06-04 23:02:09 +0000 | |
| commit | d2395646c71d4e781d7362b025d49df482ffec94 (patch) | |
| tree | 0f7a260533765f2e257273d2cf512c5fb5efc127 | |
| parent | d37f9b04071310d60d8082da8e2e4e0ad4b22dd0 (diff) | |
| parent | 828186492aac39397ee4c139e54c2767bf3d7b66 (diff) | |
Merge "Fix GetOutVROffset to use correct Method* size."
| -rw-r--r-- | runtime/stack.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/runtime/stack.h b/runtime/stack.h index e1c8c809b4..199111563f 100644 --- a/runtime/stack.h +++ b/runtime/stack.h @@ -661,13 +661,14 @@ class StackVisitor { return locals_start + (reg * sizeof(uint32_t)); } else { // Handle ins. - return frame_size + ((reg - num_regs) * sizeof(uint32_t)) + sizeof(StackReference<mirror::ArtMethod>); + return frame_size + ((reg - num_regs) * sizeof(uint32_t)) + + sizeof(StackReference<mirror::ArtMethod>); } } static int GetOutVROffset(uint16_t out_num, InstructionSet isa) { - // According to stack model, the first out is above the Method ptr. - return GetBytesPerGprSpillLocation(isa) + (out_num * sizeof(uint32_t)); + // According to stack model, the first out is above the Method referernce. + return sizeof(StackReference<mirror::ArtMethod>) + (out_num * sizeof(uint32_t)); } uintptr_t GetCurrentQuickFramePc() const { |