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 |