Revision: 3302
Author: [email protected]
Date: Fri Nov 13 05:12:57 2009
Log: Disable "arguments" implementation. It was too optimistic in its  
assumptions.

Review URL: http://codereview.chromium.org/393010

http://code.google.com/p/v8/source/detail?r=3302

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

=======================================
--- /branches/bleeding_edge/src/compiler.cc     Fri Nov 13 02:02:32 2009
+++ /branches/bleeding_edge/src/compiler.cc     Fri Nov 13 05:12:57 2009
@@ -598,6 +598,11 @@
        }
      }
    }
+
+  if (scope->arguments() != NULL) {
+    if (FLAG_trace_bailout) PrintF("function uses 'arguments'\n");
+    return NORMAL;
+  }

    has_supported_syntax_ = true;
    VisitDeclarations(scope->declarations());
@@ -797,13 +802,7 @@
          BAILOUT("Lookup slot");
        }
      } else {
-      Property* property = rewrite->AsProperty();
-      // In the presence of an arguments object, parameter variables
-      // are rewritten into property accesses on that object.
-      ASSERT_NOT_NULL(property);
-      ASSERT_NE(Expression::kUninitialized, context_);
-      Visit(property);
-      property->set_context(context_);
+      BAILOUT("access to arguments object");
      }
    }
  }

--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to