Commit 7f7918d3 authored by verwaest's avatar verwaest Committed by Commit bot

Only mark 'recompute' after fetching the handler from the nexus

BUG=

Review-Url: https://codereview.chromium.org/2040393003
Cr-Commit-Position: refs/heads/master@{#36825}
parent b6a15350
......@@ -262,13 +262,14 @@ static void LookupForRead(LookupIterator* it) {
bool IC::ShouldRecomputeHandler(Handle<Object> receiver, Handle<String> name) {
if (!RecomputeHandlerForName(name)) return false;
// This is a contextual access, always just update the handler and stay
// monomorphic.
if (receiver->IsJSGlobalObject()) return true;
DCHECK(UseVector());
maybe_handler_ = nexus()->FindHandlerForMap(receiver_map());
// This is a contextual access, always just update the handler and stay
// monomorphic.
if (receiver->IsJSGlobalObject()) return true;
// The current map wasn't handled yet. There's no reason to stay monomorphic,
// *unless* we're moving from a deprecated map to its replacement, or
// to a more general elements kind.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment