diff options
Diffstat (limited to 'deps/v8/src/compiler/js-context-specialization.cc')
-rw-r--r-- | deps/v8/src/compiler/js-context-specialization.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/deps/v8/src/compiler/js-context-specialization.cc b/deps/v8/src/compiler/js-context-specialization.cc index ef2297c9d6..1b2f3c3a7c 100644 --- a/deps/v8/src/compiler/js-context-specialization.cc +++ b/deps/v8/src/compiler/js-context-specialization.cc @@ -144,8 +144,9 @@ Reduction JSContextSpecialization::ReduceJSLoadContext(Node* node) { // Now walk up the concrete context chain for the remaining depth. ContextRef concrete = maybe_concrete.value(); + concrete.Serialize(); // TODO(neis): Remove later. for (; depth > 0; --depth) { - concrete = concrete.previous().value(); + concrete = concrete.previous(); } if (!access.immutable()) { @@ -164,7 +165,7 @@ Reduction JSContextSpecialization::ReduceJSLoadContext(Node* node) { // We must be conservative and check if the value in the slot is currently // the hole or undefined. Only if it is neither of these, can we be sure // that it won't change anymore. - OddballType oddball_type = maybe_value->oddball_type(); + OddballType oddball_type = maybe_value->AsHeapObject().map().oddball_type(); if (oddball_type == OddballType::kUndefined || oddball_type == OddballType::kHole) { maybe_value.reset(); @@ -205,8 +206,9 @@ Reduction JSContextSpecialization::ReduceJSStoreContext(Node* node) { // Now walk up the concrete context chain for the remaining depth. ContextRef concrete = maybe_concrete.value(); + concrete.Serialize(); // TODO(neis): Remove later. for (; depth > 0; --depth) { - concrete = concrete.previous().value(); + concrete = concrete.previous(); } return SimplifyJSStoreContext(node, jsgraph()->Constant(concrete), depth); |