| Index: runtime/vm/code_patcher_x64.cc
|
| diff --git a/runtime/vm/code_patcher_x64.cc b/runtime/vm/code_patcher_x64.cc
|
| index 8e3e8898fd99f5bc7c35c912241310cabefa1f6e..0426ae785ffc090047f9e1c75dd62cb95e7cf7d9 100644
|
| --- a/runtime/vm/code_patcher_x64.cc
|
| +++ b/runtime/vm/code_patcher_x64.cc
|
| @@ -207,9 +207,9 @@ class SwitchableCall : public ValueObject {
|
|
|
| bool IsValid() const {
|
| static int16_t pattern[kCallPatternSize] = {
|
| - 0x49, 0x8b, 0x9f, -1, -1, -1, -1, // movq rbx, [PP + cache_offs]
|
| 0x4d, 0x8b, 0xa7, -1, -1, -1, -1, // movq r12, [PP + code_offs]
|
| 0x49, 0x8b, 0x4c, 0x24, 0x0f, // movq rcx, [r12 + entrypoint_off]
|
| + 0x49, 0x8b, 0x9f, -1, -1, -1, -1, // movq rbx, [PP + cache_offs]
|
| 0xff, 0xd1, // call rcx
|
| };
|
| ASSERT(ARRAY_SIZE(pattern) == kCallPatternSize);
|
| @@ -217,10 +217,10 @@ class SwitchableCall : public ValueObject {
|
| }
|
|
|
| intptr_t data_index() const {
|
| - return IndexFromPPLoad(start_ + 3);
|
| + return IndexFromPPLoad(start_ + 15);
|
| }
|
| intptr_t target_index() const {
|
| - return IndexFromPPLoad(start_ + 10);
|
| + return IndexFromPPLoad(start_ + 3);
|
| }
|
|
|
| RawObject* data() const {
|
|
|