Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Side by Side Diff: src/isolate.cc

Issue 527093002: Make concrete classes for individual call descriptors. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: REBASE. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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/ast.h" 9 #include "src/ast.h"
10 #include "src/base/platform/platform.h" 10 #include "src/base/platform/platform.h"
(...skipping 1487 matching lines...) Expand 10 before | Expand all | Expand 10 after
1498 inner_pointer_to_code_cache_(NULL), 1498 inner_pointer_to_code_cache_(NULL),
1499 write_iterator_(NULL), 1499 write_iterator_(NULL),
1500 global_handles_(NULL), 1500 global_handles_(NULL),
1501 eternal_handles_(NULL), 1501 eternal_handles_(NULL),
1502 thread_manager_(NULL), 1502 thread_manager_(NULL),
1503 has_installed_extensions_(false), 1503 has_installed_extensions_(false),
1504 string_tracker_(NULL), 1504 string_tracker_(NULL),
1505 regexp_stack_(NULL), 1505 regexp_stack_(NULL),
1506 date_cache_(NULL), 1506 date_cache_(NULL),
1507 code_stub_interface_descriptors_(NULL), 1507 code_stub_interface_descriptors_(NULL),
1508 call_descriptors_(NULL), 1508 call_descriptor_data_(NULL),
1509 // TODO(bmeurer) Initialized lazily because it depends on flags; can 1509 // TODO(bmeurer) Initialized lazily because it depends on flags; can
1510 // be fixed once the default isolate cleanup is done. 1510 // be fixed once the default isolate cleanup is done.
1511 random_number_generator_(NULL), 1511 random_number_generator_(NULL),
1512 serializer_enabled_(false), 1512 serializer_enabled_(false),
1513 has_fatal_error_(false), 1513 has_fatal_error_(false),
1514 initialized_from_snapshot_(false), 1514 initialized_from_snapshot_(false),
1515 cpu_profiler_(NULL), 1515 cpu_profiler_(NULL),
1516 heap_profiler_(NULL), 1516 heap_profiler_(NULL),
1517 function_entry_hook_(NULL), 1517 function_entry_hook_(NULL),
1518 deferred_handles_head_(NULL), 1518 deferred_handles_head_(NULL),
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
1697 1697
1698 delete unicode_cache_; 1698 delete unicode_cache_;
1699 unicode_cache_ = NULL; 1699 unicode_cache_ = NULL;
1700 1700
1701 delete date_cache_; 1701 delete date_cache_;
1702 date_cache_ = NULL; 1702 date_cache_ = NULL;
1703 1703
1704 delete[] code_stub_interface_descriptors_; 1704 delete[] code_stub_interface_descriptors_;
1705 code_stub_interface_descriptors_ = NULL; 1705 code_stub_interface_descriptors_ = NULL;
1706 1706
1707 delete[] call_descriptors_; 1707 delete[] call_descriptor_data_;
1708 call_descriptors_ = NULL; 1708 call_descriptor_data_ = NULL;
1709 1709
1710 delete regexp_stack_; 1710 delete regexp_stack_;
1711 regexp_stack_ = NULL; 1711 regexp_stack_ = NULL;
1712 1712
1713 delete descriptor_lookup_cache_; 1713 delete descriptor_lookup_cache_;
1714 descriptor_lookup_cache_ = NULL; 1714 descriptor_lookup_cache_ = NULL;
1715 delete context_slot_cache_; 1715 delete context_slot_cache_;
1716 context_slot_cache_ = NULL; 1716 context_slot_cache_ = NULL;
1717 delete keyed_lookup_cache_; 1717 delete keyed_lookup_cache_;
1718 keyed_lookup_cache_ = NULL; 1718 keyed_lookup_cache_ = NULL;
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
1875 eternal_handles_ = new EternalHandles(); 1875 eternal_handles_ = new EternalHandles();
1876 bootstrapper_ = new Bootstrapper(this); 1876 bootstrapper_ = new Bootstrapper(this);
1877 handle_scope_implementer_ = new HandleScopeImplementer(this); 1877 handle_scope_implementer_ = new HandleScopeImplementer(this);
1878 stub_cache_ = new StubCache(this); 1878 stub_cache_ = new StubCache(this);
1879 materialized_object_store_ = new MaterializedObjectStore(this); 1879 materialized_object_store_ = new MaterializedObjectStore(this);
1880 regexp_stack_ = new RegExpStack(); 1880 regexp_stack_ = new RegExpStack();
1881 regexp_stack_->isolate_ = this; 1881 regexp_stack_->isolate_ = this;
1882 date_cache_ = new DateCache(); 1882 date_cache_ = new DateCache();
1883 code_stub_interface_descriptors_ = 1883 code_stub_interface_descriptors_ =
1884 new CodeStubInterfaceDescriptor[CodeStub::NUMBER_OF_IDS]; 1884 new CodeStubInterfaceDescriptor[CodeStub::NUMBER_OF_IDS];
1885 call_descriptors_ = 1885 call_descriptor_data_ =
1886 new CallInterfaceDescriptor[NUMBER_OF_CALL_DESCRIPTORS]; 1886 new CallInterfaceDescriptorData[CallDescriptors::NUMBER_OF_DESCRIPTORS];
1887 cpu_profiler_ = new CpuProfiler(this); 1887 cpu_profiler_ = new CpuProfiler(this);
1888 heap_profiler_ = new HeapProfiler(heap()); 1888 heap_profiler_ = new HeapProfiler(heap());
1889 1889
1890 // Enable logging before setting up the heap 1890 // Enable logging before setting up the heap
1891 logger_->SetUp(this); 1891 logger_->SetUp(this);
1892 1892
1893 // Initialize other runtime facilities 1893 // Initialize other runtime facilities
1894 #if defined(USE_SIMULATOR) 1894 #if defined(USE_SIMULATOR)
1895 #if V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || \ 1895 #if V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || \
1896 V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 1896 V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64
(...skipping 335 matching lines...) Expand 10 before | Expand all | Expand 10 after
2232 return iter.IsAtEnd(); 2232 return iter.IsAtEnd();
2233 } 2233 }
2234 2234
2235 2235
2236 CodeStubInterfaceDescriptor* 2236 CodeStubInterfaceDescriptor*
2237 Isolate::code_stub_interface_descriptor(int index) { 2237 Isolate::code_stub_interface_descriptor(int index) {
2238 return code_stub_interface_descriptors_ + index; 2238 return code_stub_interface_descriptors_ + index;
2239 } 2239 }
2240 2240
2241 2241
2242 CallInterfaceDescriptor* Isolate::call_descriptor(int index) { 2242 CallInterfaceDescriptorData* Isolate::call_descriptor_data(int index) {
2243 DCHECK(0 <= index && index < CallDescriptorKey::NUMBER_OF_CALL_DESCRIPTORS); 2243 DCHECK(0 <= index && index < CallDescriptors::NUMBER_OF_DESCRIPTORS);
2244 return &call_descriptors_[index]; 2244 return &call_descriptor_data_[index];
2245 } 2245 }
2246 2246
2247 2247
2248 Object* Isolate::FindCodeObject(Address a) { 2248 Object* Isolate::FindCodeObject(Address a) {
2249 return inner_pointer_to_code_cache()->GcSafeFindCodeForInnerPointer(a); 2249 return inner_pointer_to_code_cache()->GcSafeFindCodeForInnerPointer(a);
2250 } 2250 }
2251 2251
2252 2252
2253 #ifdef DEBUG 2253 #ifdef DEBUG
2254 #define ISOLATE_FIELD_OFFSET(type, name, ignored) \ 2254 #define ISOLATE_FIELD_OFFSET(type, name, ignored) \
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
2413 if (prev_ && prev_->Intercept(flag)) return true; 2413 if (prev_ && prev_->Intercept(flag)) return true;
2414 // Then check whether this scope intercepts. 2414 // Then check whether this scope intercepts.
2415 if ((flag & intercept_mask_)) { 2415 if ((flag & intercept_mask_)) {
2416 intercepted_flags_ |= flag; 2416 intercepted_flags_ |= flag;
2417 return true; 2417 return true;
2418 } 2418 }
2419 return false; 2419 return false;
2420 } 2420 }
2421 2421
2422 } } // namespace v8::internal 2422 } } // namespace v8::internal
OLDNEW
« src/interface-descriptors.h ('K') | « src/isolate.h ('k') | src/x64/builtins-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698