Fix Kraken regression due to optimistic monomorphic element transitions
authordanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 14 Jun 2012 08:57:34 +0000 (08:57 +0000)
committerdanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 14 Jun 2012 08:57:34 +0000 (08:57 +0000)
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/10539141

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/ic.cc

index d7f0f32..47a72b4 100644 (file)
--- a/src/ic.cc
+++ b/src/ic.cc
@@ -1602,7 +1602,7 @@ Handle<Code> KeyedIC::ComputeStub(Handle<JSObject> receiver,
     monomorphic = true;
   } else {
     GetReceiverMapsForStub(Handle<Code>(target()), &target_receiver_maps);
-    if (ic_state == MONOMORPHIC && is_transition_stub) {
+    if (ic_state == MONOMORPHIC && (is_transition_stub || stub_kind == LOAD)) {
       // The first time a receiver is seen that is a transitioned version of the
       // previous monomorphic receiver type, assume the new ElementsKind is the
       // monomorphic type. This benefits global arrays that only transition