Revision: 15842
Author:   [email protected]
Date:     Wed Jul 24 01:00:52 2013
Log:      Fix assert/crash in HandlePolymorphicCallNamed

[email protected]
TEST=Ryan Sturgell's test runs through without crashing

Review URL: https://codereview.chromium.org/20051008

Patch from Daniel Clifford <[email protected]>.
http://code.google.com/p/v8/source/detail?r=15842

Modified:
 /branches/bleeding_edge/src/hydrogen.cc

=======================================
--- /branches/bleeding_edge/src/hydrogen.cc     Tue Jul 23 06:35:10 2013
+++ /branches/bleeding_edge/src/hydrogen.cc     Wed Jul 24 01:00:52 2013
@@ -6190,6 +6190,10 @@
   // know about and do not want to handle ones we've never seen.  Otherwise
   // use a generic IC.
if (ordered_functions == types->length() && FLAG_deoptimize_uncommon_cases) { + // 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));
     FinishExitWithHardDeoptimization(join);
   } else {
     HValue* context = environment()->LookupContext();

--
--
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.


Reply via email to