Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1935)

Unified Diff: runtime/vm/instructions_arm64.cc

Issue 1301963003: VM: Clean up and fix bugs in instructions patterns (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: s/Pattern::InstructionLength/Pattern::pattern_length_in_bytes/g Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/instructions_arm64.cc
diff --git a/runtime/vm/instructions_arm64.cc b/runtime/vm/instructions_arm64.cc
index 1690456a34d0fa85ea26310ea37fee4a8e789226..9987527126276f79549da9d6573594c90c416d17 100644
--- a/runtime/vm/instructions_arm64.cc
+++ b/runtime/vm/instructions_arm64.cc
@@ -208,8 +208,9 @@ uword InstructionPattern::DecodeLoadWordFromPool(uword end,
offset |= instr->Imm16Field();
}
}
+ // PP is untagged on ARM64.
ASSERT(Utils::IsAligned(offset, 8));
- *index = (offset - Array::data_offset()) / 8;
+ *index = ObjectPool::IndexFromOffset(offset - kHeapObjectTag);
return start;
}

Powered by Google App Engine
This is Rietveld 408576698