OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1653 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1664 Thread::SetThreadLocal(per_isolate_thread_data_key_, data); | 1664 Thread::SetThreadLocal(per_isolate_thread_data_key_, data); |
1665 } | 1665 } |
1666 | 1666 |
1667 | 1667 |
1668 Isolate::~Isolate() { | 1668 Isolate::~Isolate() { |
1669 TRACE_ISOLATE(destructor); | 1669 TRACE_ISOLATE(destructor); |
1670 | 1670 |
1671 // Has to be called while counters_ are still alive | 1671 // Has to be called while counters_ are still alive |
1672 runtime_zone_.DeleteKeptSegment(); | 1672 runtime_zone_.DeleteKeptSegment(); |
1673 | 1673 |
1674 // The entry stack must be empty when we get here, | 1674 // The entry stack must be empty when we get here. |
1675 // except for the default isolate, where it can | |
1676 // still contain up to one entry stack item | |
1677 ASSERT(entry_stack_ == NULL || this == default_isolate_); | |
1678 ASSERT(entry_stack_ == NULL || entry_stack_->previous_item == NULL); | 1675 ASSERT(entry_stack_ == NULL || entry_stack_->previous_item == NULL); |
1679 | 1676 |
1680 delete entry_stack_; | 1677 delete entry_stack_; |
1681 entry_stack_ = NULL; | 1678 entry_stack_ = NULL; |
1682 | 1679 |
1683 delete[] assembler_spare_buffer_; | 1680 delete[] assembler_spare_buffer_; |
1684 assembler_spare_buffer_ = NULL; | 1681 assembler_spare_buffer_ = NULL; |
1685 | 1682 |
1686 delete unicode_cache_; | 1683 delete unicode_cache_; |
1687 unicode_cache_ = NULL; | 1684 unicode_cache_ = NULL; |
(...skipping 578 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2266 Handle<JSObject> obj = factory()->NewJSObjectFromMap(map); | 2263 Handle<JSObject> obj = factory()->NewJSObjectFromMap(map); |
2267 JSObject::NormalizeProperties(obj, KEEP_INOBJECT_PROPERTIES, 8); | 2264 JSObject::NormalizeProperties(obj, KEEP_INOBJECT_PROPERTIES, 8); |
2268 JSObject::SetProperty(registry, name, obj, NONE, STRICT).Assert(); | 2265 JSObject::SetProperty(registry, name, obj, NONE, STRICT).Assert(); |
2269 } | 2266 } |
2270 } | 2267 } |
2271 return Handle<JSObject>::cast(factory()->symbol_registry()); | 2268 return Handle<JSObject>::cast(factory()->symbol_registry()); |
2272 } | 2269 } |
2273 | 2270 |
2274 | 2271 |
2275 } } // namespace v8::internal | 2272 } } // namespace v8::internal |
OLD | NEW |