OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 1385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1396 transcendental_cache_(NULL), | 1396 transcendental_cache_(NULL), |
1397 memory_allocator_(NULL), | 1397 memory_allocator_(NULL), |
1398 keyed_lookup_cache_(NULL), | 1398 keyed_lookup_cache_(NULL), |
1399 context_slot_cache_(NULL), | 1399 context_slot_cache_(NULL), |
1400 descriptor_lookup_cache_(NULL), | 1400 descriptor_lookup_cache_(NULL), |
1401 handle_scope_implementer_(NULL), | 1401 handle_scope_implementer_(NULL), |
1402 unicode_cache_(NULL), | 1402 unicode_cache_(NULL), |
1403 in_use_list_(0), | 1403 in_use_list_(0), |
1404 free_list_(0), | 1404 free_list_(0), |
1405 preallocated_storage_preallocated_(false), | 1405 preallocated_storage_preallocated_(false), |
1406 pc_to_code_cache_(NULL), | 1406 inner_pointer_to_code_cache_(NULL), |
1407 write_input_buffer_(NULL), | 1407 write_input_buffer_(NULL), |
1408 global_handles_(NULL), | 1408 global_handles_(NULL), |
1409 context_switcher_(NULL), | 1409 context_switcher_(NULL), |
1410 thread_manager_(NULL), | 1410 thread_manager_(NULL), |
| 1411 fp_stubs_generated_(false), |
1411 string_tracker_(NULL), | 1412 string_tracker_(NULL), |
1412 regexp_stack_(NULL), | 1413 regexp_stack_(NULL), |
1413 embedder_data_(NULL) { | 1414 embedder_data_(NULL) { |
1414 TRACE_ISOLATE(constructor); | 1415 TRACE_ISOLATE(constructor); |
1415 | 1416 |
1416 memset(isolate_addresses_, 0, | 1417 memset(isolate_addresses_, 0, |
1417 sizeof(isolate_addresses_[0]) * (kIsolateAddressCount + 1)); | 1418 sizeof(isolate_addresses_[0]) * (kIsolateAddressCount + 1)); |
1418 | 1419 |
1419 heap_.isolate_ = this; | 1420 heap_.isolate_ = this; |
1420 zone_.isolate_ = this; | 1421 zone_.isolate_ = this; |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1568 handle_scope_implementer_ = NULL; | 1569 handle_scope_implementer_ = NULL; |
1569 delete break_access_; | 1570 delete break_access_; |
1570 break_access_ = NULL; | 1571 break_access_ = NULL; |
1571 delete debugger_access_; | 1572 delete debugger_access_; |
1572 debugger_access_ = NULL; | 1573 debugger_access_ = NULL; |
1573 | 1574 |
1574 delete compilation_cache_; | 1575 delete compilation_cache_; |
1575 compilation_cache_ = NULL; | 1576 compilation_cache_ = NULL; |
1576 delete bootstrapper_; | 1577 delete bootstrapper_; |
1577 bootstrapper_ = NULL; | 1578 bootstrapper_ = NULL; |
1578 delete pc_to_code_cache_; | 1579 delete inner_pointer_to_code_cache_; |
1579 pc_to_code_cache_ = NULL; | 1580 inner_pointer_to_code_cache_ = NULL; |
1580 delete write_input_buffer_; | 1581 delete write_input_buffer_; |
1581 write_input_buffer_ = NULL; | 1582 write_input_buffer_ = NULL; |
1582 | 1583 |
1583 delete context_switcher_; | 1584 delete context_switcher_; |
1584 context_switcher_ = NULL; | 1585 context_switcher_ = NULL; |
1585 delete thread_manager_; | 1586 delete thread_manager_; |
1586 thread_manager_ = NULL; | 1587 thread_manager_ = NULL; |
1587 | 1588 |
1588 delete string_tracker_; | 1589 delete string_tracker_; |
1589 string_tracker_ = NULL; | 1590 string_tracker_ = NULL; |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1693 #undef C | 1694 #undef C |
1694 | 1695 |
1695 string_tracker_ = new StringTracker(); | 1696 string_tracker_ = new StringTracker(); |
1696 string_tracker_->isolate_ = this; | 1697 string_tracker_->isolate_ = this; |
1697 compilation_cache_ = new CompilationCache(this); | 1698 compilation_cache_ = new CompilationCache(this); |
1698 transcendental_cache_ = new TranscendentalCache(); | 1699 transcendental_cache_ = new TranscendentalCache(); |
1699 keyed_lookup_cache_ = new KeyedLookupCache(); | 1700 keyed_lookup_cache_ = new KeyedLookupCache(); |
1700 context_slot_cache_ = new ContextSlotCache(); | 1701 context_slot_cache_ = new ContextSlotCache(); |
1701 descriptor_lookup_cache_ = new DescriptorLookupCache(); | 1702 descriptor_lookup_cache_ = new DescriptorLookupCache(); |
1702 unicode_cache_ = new UnicodeCache(); | 1703 unicode_cache_ = new UnicodeCache(); |
1703 pc_to_code_cache_ = new PcToCodeCache(this); | 1704 inner_pointer_to_code_cache_ = new InnerPointerToCodeCache(this); |
1704 write_input_buffer_ = new StringInputBuffer(); | 1705 write_input_buffer_ = new StringInputBuffer(); |
1705 global_handles_ = new GlobalHandles(this); | 1706 global_handles_ = new GlobalHandles(this); |
1706 bootstrapper_ = new Bootstrapper(); | 1707 bootstrapper_ = new Bootstrapper(); |
1707 handle_scope_implementer_ = new HandleScopeImplementer(this); | 1708 handle_scope_implementer_ = new HandleScopeImplementer(this); |
1708 stub_cache_ = new StubCache(this); | 1709 stub_cache_ = new StubCache(this); |
1709 regexp_stack_ = new RegExpStack(); | 1710 regexp_stack_ = new RegExpStack(); |
1710 regexp_stack_->isolate_ = this; | 1711 regexp_stack_->isolate_ = this; |
1711 | 1712 |
1712 // Enable logging before setting up the heap | 1713 // Enable logging before setting up the heap |
1713 logger_->Setup(); | 1714 logger_->Setup(); |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1760 } | 1761 } |
1761 | 1762 |
1762 #ifdef ENABLE_DEBUGGER_SUPPORT | 1763 #ifdef ENABLE_DEBUGGER_SUPPORT |
1763 debug_->Setup(create_heap_objects); | 1764 debug_->Setup(create_heap_objects); |
1764 #endif | 1765 #endif |
1765 stub_cache_->Initialize(create_heap_objects); | 1766 stub_cache_->Initialize(create_heap_objects); |
1766 | 1767 |
1767 // If we are deserializing, read the state into the now-empty heap. | 1768 // If we are deserializing, read the state into the now-empty heap. |
1768 if (des != NULL) { | 1769 if (des != NULL) { |
1769 des->Deserialize(); | 1770 des->Deserialize(); |
1770 stub_cache_->Clear(); | 1771 stub_cache_->Initialize(true); |
1771 } | 1772 } |
1772 | 1773 |
1773 // Deserializing may put strange things in the root array's copy of the | 1774 // Deserializing may put strange things in the root array's copy of the |
1774 // stack guard. | 1775 // stack guard. |
1775 heap_.SetStackLimits(); | 1776 heap_.SetStackLimits(); |
1776 | 1777 |
1777 deoptimizer_data_ = new DeoptimizerData; | 1778 deoptimizer_data_ = new DeoptimizerData; |
1778 runtime_profiler_ = new RuntimeProfiler(this); | 1779 runtime_profiler_ = new RuntimeProfiler(this); |
1779 runtime_profiler_->Setup(); | 1780 runtime_profiler_->Setup(); |
1780 | 1781 |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1872 | 1873 |
1873 #ifdef DEBUG | 1874 #ifdef DEBUG |
1874 #define ISOLATE_FIELD_OFFSET(type, name, ignored) \ | 1875 #define ISOLATE_FIELD_OFFSET(type, name, ignored) \ |
1875 const intptr_t Isolate::name##_debug_offset_ = OFFSET_OF(Isolate, name##_); | 1876 const intptr_t Isolate::name##_debug_offset_ = OFFSET_OF(Isolate, name##_); |
1876 ISOLATE_INIT_LIST(ISOLATE_FIELD_OFFSET) | 1877 ISOLATE_INIT_LIST(ISOLATE_FIELD_OFFSET) |
1877 ISOLATE_INIT_ARRAY_LIST(ISOLATE_FIELD_OFFSET) | 1878 ISOLATE_INIT_ARRAY_LIST(ISOLATE_FIELD_OFFSET) |
1878 #undef ISOLATE_FIELD_OFFSET | 1879 #undef ISOLATE_FIELD_OFFSET |
1879 #endif | 1880 #endif |
1880 | 1881 |
1881 } } // namespace v8::internal | 1882 } } // namespace v8::internal |
OLD | NEW |