Reviewers: titzer,
Message:
PTAL
Description:
Pad the environment with 0 rather than the receiver to avoid influencing the
representation of the join.
Please review this at https://chromiumcodereview.appspot.com/23707055/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+2, -1 lines):
M src/hydrogen.cc
Index: src/hydrogen.cc
diff --git a/src/hydrogen.cc b/src/hydrogen.cc
index
824a3cd9dbf850cfa6e25ec255b81d9301d6d573..50a10a491753831c3157ec7eb4b65b8f53830f57
100644
--- a/src/hydrogen.cc
+++ b/src/hydrogen.cc
@@ -6108,7 +6108,8 @@ void
HOptimizedGraphBuilder::HandlePolymorphicCallNamed(
// Because the deopt may be the only path in the polymorphic call,
make sure
// that the environment stack matches the depth on deopt that it
otherwise
// would have had after a successful call.
- Drop(argument_count - (ast_context()->IsEffect() ? 0 : 1));
+ Drop(argument_count);
+ if (!ast_context()->IsEffect()) Push(graph()->GetConstant0());
FinishExitWithHardDeoptimization("Unknown map in polymorphic call",
join);
} else {
HValue* context = environment()->context();
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.