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

Side by Side Diff: src/isolate.cc

Issue 366153002: Add script streaming API (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: special chars fix Created 6 years, 4 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
« include/v8.h ('K') | « src/isolate.h ('k') | src/parser.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/background-parser-thread.h"
10 #include "src/base/platform/platform.h" 11 #include "src/base/platform/platform.h"
11 #include "src/base/utils/random-number-generator.h" 12 #include "src/base/utils/random-number-generator.h"
12 #include "src/bootstrapper.h" 13 #include "src/bootstrapper.h"
13 #include "src/codegen.h" 14 #include "src/codegen.h"
14 #include "src/compilation-cache.h" 15 #include "src/compilation-cache.h"
15 #include "src/cpu-profiler.h" 16 #include "src/cpu-profiler.h"
16 #include "src/debug.h" 17 #include "src/debug.h"
17 #include "src/deoptimizer.h" 18 #include "src/deoptimizer.h"
18 #include "src/heap/spaces.h" 19 #include "src/heap/spaces.h"
19 #include "src/heap/sweeper-thread.h" 20 #include "src/heap/sweeper-thread.h"
(...skipping 1443 matching lines...) Expand 10 before | Expand all | Expand 10 after
1463 // be fixed once the default isolate cleanup is done. 1464 // be fixed once the default isolate cleanup is done.
1464 random_number_generator_(NULL), 1465 random_number_generator_(NULL),
1465 serializer_enabled_(false), 1466 serializer_enabled_(false),
1466 has_fatal_error_(false), 1467 has_fatal_error_(false),
1467 initialized_from_snapshot_(false), 1468 initialized_from_snapshot_(false),
1468 cpu_profiler_(NULL), 1469 cpu_profiler_(NULL),
1469 heap_profiler_(NULL), 1470 heap_profiler_(NULL),
1470 function_entry_hook_(NULL), 1471 function_entry_hook_(NULL),
1471 deferred_handles_head_(NULL), 1472 deferred_handles_head_(NULL),
1472 optimizing_compiler_thread_(NULL), 1473 optimizing_compiler_thread_(NULL),
1474 background_parser_thread_(NULL),
1473 sweeper_thread_(NULL), 1475 sweeper_thread_(NULL),
1474 num_sweeper_threads_(0), 1476 num_sweeper_threads_(0),
1475 stress_deopt_count_(0), 1477 stress_deopt_count_(0),
1476 next_optimization_id_(0), 1478 next_optimization_id_(0),
1477 use_counter_callback_(NULL) { 1479 use_counter_callback_(NULL) {
1478 id_ = base::NoBarrier_AtomicIncrement(&isolate_counter_, 1); 1480 id_ = base::NoBarrier_AtomicIncrement(&isolate_counter_, 1);
1479 TRACE_ISOLATE(constructor); 1481 TRACE_ISOLATE(constructor);
1480 1482
1481 memset(isolate_addresses_, 0, 1483 memset(isolate_addresses_, 0,
1482 sizeof(isolate_addresses_[0]) * (kIsolateAddressCount + 1)); 1484 sizeof(isolate_addresses_[0]) * (kIsolateAddressCount + 1));
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
1551 TRACE_ISOLATE(deinit); 1553 TRACE_ISOLATE(deinit);
1552 1554
1553 debug()->Unload(); 1555 debug()->Unload();
1554 1556
1555 if (concurrent_recompilation_enabled()) { 1557 if (concurrent_recompilation_enabled()) {
1556 optimizing_compiler_thread_->Stop(); 1558 optimizing_compiler_thread_->Stop();
1557 delete optimizing_compiler_thread_; 1559 delete optimizing_compiler_thread_;
1558 optimizing_compiler_thread_ = NULL; 1560 optimizing_compiler_thread_ = NULL;
1559 } 1561 }
1560 1562
1563 if (background_parser_thread_) {
1564 background_parser_thread_->Stop();
1565 delete background_parser_thread_;
1566 background_parser_thread_ = NULL;
1567 }
1568
1561 for (int i = 0; i < num_sweeper_threads_; i++) { 1569 for (int i = 0; i < num_sweeper_threads_; i++) {
1562 sweeper_thread_[i]->Stop(); 1570 sweeper_thread_[i]->Stop();
1563 delete sweeper_thread_[i]; 1571 delete sweeper_thread_[i];
1564 sweeper_thread_[i] = NULL; 1572 sweeper_thread_[i] = NULL;
1565 } 1573 }
1566 delete[] sweeper_thread_; 1574 delete[] sweeper_thread_;
1567 sweeper_thread_ = NULL; 1575 sweeper_thread_ = NULL;
1568 1576
1569 if (FLAG_job_based_sweeping && 1577 if (FLAG_job_based_sweeping &&
1570 heap_.mark_compact_collector()->sweeping_in_progress()) { 1578 heap_.mark_compact_collector()->sweeping_in_progress()) {
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after
1911 } 1919 }
1912 1920
1913 if (num_sweeper_threads_ > 0) { 1921 if (num_sweeper_threads_ > 0) {
1914 sweeper_thread_ = new SweeperThread*[num_sweeper_threads_]; 1922 sweeper_thread_ = new SweeperThread*[num_sweeper_threads_];
1915 for (int i = 0; i < num_sweeper_threads_; i++) { 1923 for (int i = 0; i < num_sweeper_threads_; i++) {
1916 sweeper_thread_[i] = new SweeperThread(this); 1924 sweeper_thread_[i] = new SweeperThread(this);
1917 sweeper_thread_[i]->Start(); 1925 sweeper_thread_[i]->Start();
1918 } 1926 }
1919 } 1927 }
1920 1928
1929 background_parser_thread_ = new BackgroundParserThread();
1930 background_parser_thread_->Start();
1931
1921 // If we are deserializing, read the state into the now-empty heap. 1932 // If we are deserializing, read the state into the now-empty heap.
1922 if (!create_heap_objects) { 1933 if (!create_heap_objects) {
1923 des->Deserialize(this); 1934 des->Deserialize(this);
1924 } 1935 }
1925 stub_cache_->Initialize(); 1936 stub_cache_->Initialize();
1926 1937
1927 // Finish initialization of ThreadLocal after deserialization is done. 1938 // Finish initialization of ThreadLocal after deserialization is done.
1928 clear_pending_exception(); 1939 clear_pending_exception();
1929 clear_pending_message(); 1940 clear_pending_message();
1930 clear_scheduled_exception(); 1941 clear_scheduled_exception();
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after
2364 if (prev_ && prev_->Intercept(flag)) return true; 2375 if (prev_ && prev_->Intercept(flag)) return true;
2365 // Then check whether this scope intercepts. 2376 // Then check whether this scope intercepts.
2366 if ((flag & intercept_mask_)) { 2377 if ((flag & intercept_mask_)) {
2367 intercepted_flags_ |= flag; 2378 intercepted_flags_ |= flag;
2368 return true; 2379 return true;
2369 } 2380 }
2370 return false; 2381 return false;
2371 } 2382 }
2372 2383
2373 } } // namespace v8::internal 2384 } } // namespace v8::internal
OLDNEW
« include/v8.h ('K') | « src/isolate.h ('k') | src/parser.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698