1. 29 Nov, 2011 1 commit
  2. 11 Nov, 2011 3 commits
  3. 08 Nov, 2011 2 commits
  4. 03 Nov, 2011 2 commits
  5. 27 Oct, 2011 1 commit
  6. 25 Oct, 2011 1 commit
  7. 21 Oct, 2011 1 commit
    • keuchel@chromium.org's avatar
      Reapply r9673 "Scope tree serialization and ScopeIterator cleanup." · 666c4be2
      keuchel@chromium.org authored
      This also includes the two fixes from r9674 and r9675. Here's the diff
      to the previous CL.
      
       --- a/src/runtime.cc
       +++ b/src/runtime.cc
       @@ -11133,17 +11133,26 @@ class ScopeIterator {
              context_(Context::cast(frame->context())),
              nested_scope_chain_(4) {
      
       +    // Catch the case when the debugger stops in an internal function.
       +    Handle<SharedFunctionInfo> shared_info(function_->shared());
       +    if (shared_info->script() == isolate->heap()->undefined_value()) {
       +      if (shared_info->scope_info()->HasContext()) Next();
       +      return;
       +    }
       +
            // Check whether we are in global code or function code. If there is a stack
            // slot for .result then this function has been created for evaluating
            // global code and it is not a real function.
            // Checking for the existence of .result seems fragile, but the scope info
            // saved with the code object does not otherwise have that information.
       -    int index = function_->shared()->scope_info()->
       +    int index = shared_info->scope_info()->
                StackSlotIndex(isolate_->heap()->result_symbol());
      
            // Reparse the code and analyze the scopes.
            ZoneScope zone_scope(isolate, DELETE_ON_EXIT);
       -    Handle<SharedFunctionInfo> shared_info(function_->shared());
            Handle<Script> script(Script::cast(shared_info->script()));
            Scope* scope;
            if (index >= 0) {
      
      Review URL: http://codereview.chromium.org/8344046
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      666c4be2
  8. 19 Oct, 2011 2 commits
  9. 18 Oct, 2011 1 commit
  10. 11 Oct, 2011 1 commit
  11. 27 Sep, 2011 1 commit
  12. 26 Sep, 2011 1 commit
  13. 19 Sep, 2011 1 commit
  14. 13 Sep, 2011 1 commit
  15. 09 Sep, 2011 1 commit
  16. 13 Jul, 2011 3 commits
  17. 24 May, 2011 1 commit
    • ager@chromium.org's avatar
      Fix calls of strict mode function with an implicit receiver. · 6f775f2f
      ager@chromium.org authored
      Only IA32 version for now. I'll start porting.
      
      Strict mode functions are to get 'undefined' as the receiver when
      called with an implicit receiver. Modes are bad! It forces us to have
      checks on all function calls.
      
      This change attempts to limit the cost by passing information about
      whether or not a call is with an implicit or explicit receiver in ecx
      as part of the calling convention. The cost is setting ecx on all
      calls and checking ecx on entry to strict mode functions.
      
      Implicit/explicit receiver state has to be maintained by ICs. Various
      stubs have to not clobber ecx or save and restore it.
      
      CallFunction stub needs to check if the receiver is implicit when it
      doesn't know from the context.
      
      Review URL: http://codereview.chromium.org/7039036
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      6f775f2f
  18. 19 May, 2011 1 commit
  19. 17 May, 2011 2 commits
  20. 16 May, 2011 1 commit
  21. 28 Mar, 2011 1 commit
  22. 23 Mar, 2011 1 commit
  23. 18 Mar, 2011 3 commits
  24. 11 Mar, 2011 1 commit
  25. 09 Feb, 2011 1 commit
  26. 04 Feb, 2011 1 commit
  27. 14 Jan, 2011 1 commit
  28. 07 Dec, 2010 3 commits