| 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 "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
| 8 #include "src/debug.h" | 8 #include "src/debug.h" |
| 9 #include "src/scopeinfo.h" | 9 #include "src/scopeinfo.h" |
| 10 | 10 |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 166 *binding_flags = (init_flag == kNeedsInitialization) | 166 *binding_flags = (init_flag == kNeedsInitialization) |
| 167 ? IMMUTABLE_CHECK_INITIALIZED | 167 ? IMMUTABLE_CHECK_INITIALIZED |
| 168 : IMMUTABLE_IS_INITIALIZED; | 168 : IMMUTABLE_IS_INITIALIZED; |
| 169 break; | 169 break; |
| 170 case CONST: | 170 case CONST: |
| 171 *attributes = READ_ONLY; | 171 *attributes = READ_ONLY; |
| 172 *binding_flags = (init_flag == kNeedsInitialization) | 172 *binding_flags = (init_flag == kNeedsInitialization) |
| 173 ? IMMUTABLE_CHECK_INITIALIZED_HARMONY | 173 ? IMMUTABLE_CHECK_INITIALIZED_HARMONY |
| 174 : IMMUTABLE_IS_INITIALIZED_HARMONY; | 174 : IMMUTABLE_IS_INITIALIZED_HARMONY; |
| 175 break; | 175 break; |
| 176 case IMPORT: |
| 177 // TODO(ES6) |
| 178 UNREACHABLE(); |
| 179 break; |
| 176 case DYNAMIC: | 180 case DYNAMIC: |
| 177 case DYNAMIC_GLOBAL: | 181 case DYNAMIC_GLOBAL: |
| 178 case DYNAMIC_LOCAL: | 182 case DYNAMIC_LOCAL: |
| 179 case TEMPORARY: | 183 case TEMPORARY: |
| 180 // Note: Fixed context slots are statically allocated by the compiler. | 184 // Note: Fixed context slots are statically allocated by the compiler. |
| 181 // Statically allocated variables always have a statically known mode, | 185 // Statically allocated variables always have a statically known mode, |
| 182 // which is the mode with which they were declared when added to the | 186 // which is the mode with which they were declared when added to the |
| 183 // scope. Thus, the DYNAMIC mode (which corresponds to dynamically | 187 // scope. Thus, the DYNAMIC mode (which corresponds to dynamically |
| 184 // declared variables that were introduced through declaration nodes) | 188 // declared variables that were introduced through declaration nodes) |
| 185 // must not appear here. | 189 // must not appear here. |
| (...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 485 bool Context::IsBootstrappingOrGlobalObject(Isolate* isolate, Object* object) { | 489 bool Context::IsBootstrappingOrGlobalObject(Isolate* isolate, Object* object) { |
| 486 // During bootstrapping we allow all objects to pass as global | 490 // During bootstrapping we allow all objects to pass as global |
| 487 // objects. This is necessary to fix circular dependencies. | 491 // objects. This is necessary to fix circular dependencies. |
| 488 return isolate->heap()->gc_state() != Heap::NOT_IN_GC || | 492 return isolate->heap()->gc_state() != Heap::NOT_IN_GC || |
| 489 isolate->bootstrapper()->IsActive() || | 493 isolate->bootstrapper()->IsActive() || |
| 490 object->IsGlobalObject(); | 494 object->IsGlobalObject(); |
| 491 } | 495 } |
| 492 #endif | 496 #endif |
| 493 | 497 |
| 494 } } // namespace v8::internal | 498 } } // namespace v8::internal |
| OLD | NEW |