| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stdlib.h> | 5 #include <stdlib.h> |
| 6 | 6 |
| 7 #include "src/v8.h" | 7 #include "src/v8.h" |
| 8 | 8 |
| 9 #include "src/scopeinfo.h" | 9 #include "src/scopeinfo.h" |
| 10 #include "src/scopes.h" | 10 #include "src/scopes.h" |
| 11 | 11 |
| 12 namespace v8 { | 12 namespace v8 { |
| 13 namespace internal { | 13 namespace internal { |
| 14 | 14 |
| 15 | 15 |
| 16 Handle<ScopeInfo> ScopeInfo::Create(Scope* scope, Zone* zone) { | 16 Handle<ScopeInfo> ScopeInfo::Create(Scope* scope, Zone* zone) { |
| 17 ASSERT(!scope->is_script_scope()); |
| 18 |
| 17 // Collect stack and context locals. | 19 // Collect stack and context locals. |
| 18 ZoneList<Variable*> stack_locals(scope->StackLocalCount(), zone); | 20 ZoneList<Variable*> stack_locals(scope->StackLocalCount(), zone); |
| 19 ZoneList<Variable*> context_locals(scope->ContextLocalCount(), zone); | 21 ZoneList<Variable*> context_locals(scope->ContextLocalCount(), zone); |
| 20 scope->CollectStackAndContextLocals(&stack_locals, &context_locals); | 22 scope->CollectStackAndContextLocals(&stack_locals, &context_locals); |
| 21 const int stack_local_count = stack_locals.length(); | 23 const int stack_local_count = stack_locals.length(); |
| 22 const int context_local_count = context_locals.length(); | 24 const int context_local_count = context_locals.length(); |
| 23 // Make sure we allocate the correct amount. | 25 // Make sure we allocate the correct amount. |
| 24 ASSERT(scope->StackLocalCount() == stack_local_count); | 26 ASSERT(scope->StackLocalCount() == stack_local_count); |
| 25 ASSERT(scope->ContextLocalCount() == context_local_count); | 27 ASSERT(scope->ContextLocalCount() == context_local_count); |
| 26 | 28 |
| (...skipping 521 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 548 } else { | 550 } else { |
| 549 ASSERT(var->index() >= 0); | 551 ASSERT(var->index() >= 0); |
| 550 info->set_index(i, var->index()); | 552 info->set_index(i, var->index()); |
| 551 } | 553 } |
| 552 } | 554 } |
| 553 ASSERT(i == info->length()); | 555 ASSERT(i == info->length()); |
| 554 return info; | 556 return info; |
| 555 } | 557 } |
| 556 | 558 |
| 557 } } // namespace v8::internal | 559 } } // namespace v8::internal |
| OLD | NEW |