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 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 // doesn't introduce a race -- queue_length_ may decreased in | 76 // doesn't introduce a race -- queue_length_ may decreased in |
77 // meantime, but not increased. | 77 // meantime, but not increased. |
78 return (current_length < FLAG_parallel_recompilation_queue_length); | 78 return (current_length < FLAG_parallel_recompilation_queue_length); |
79 } | 79 } |
80 | 80 |
81 #ifdef DEBUG | 81 #ifdef DEBUG |
82 bool IsOptimizerThread(); | 82 bool IsOptimizerThread(); |
83 #endif | 83 #endif |
84 | 84 |
85 ~OptimizingCompilerThread() { | 85 ~OptimizingCompilerThread() { |
| 86 delete install_mutex_; |
86 delete input_queue_semaphore_; | 87 delete input_queue_semaphore_; |
87 delete stop_semaphore_; | 88 delete stop_semaphore_; |
| 89 #ifdef DEBUG |
| 90 delete thread_id_mutex_; |
| 91 #endif |
88 } | 92 } |
89 | 93 |
90 private: | 94 private: |
91 #ifdef DEBUG | 95 #ifdef DEBUG |
92 int thread_id_; | 96 int thread_id_; |
93 Mutex* thread_id_mutex_; | 97 Mutex* thread_id_mutex_; |
94 #endif | 98 #endif |
95 | 99 |
96 Isolate* isolate_; | 100 Isolate* isolate_; |
97 Semaphore* stop_semaphore_; | 101 Semaphore* stop_semaphore_; |
98 Semaphore* input_queue_semaphore_; | 102 Semaphore* input_queue_semaphore_; |
99 UnboundQueue<OptimizingCompiler*> input_queue_; | 103 UnboundQueue<OptimizingCompiler*> input_queue_; |
100 UnboundQueue<OptimizingCompiler*> output_queue_; | 104 UnboundQueue<OptimizingCompiler*> output_queue_; |
101 Mutex* install_mutex_; | 105 Mutex* install_mutex_; |
102 volatile AtomicWord stop_thread_; | 106 volatile AtomicWord stop_thread_; |
103 volatile Atomic32 queue_length_; | 107 volatile Atomic32 queue_length_; |
104 int64_t time_spent_compiling_; | 108 int64_t time_spent_compiling_; |
105 int64_t time_spent_total_; | 109 int64_t time_spent_total_; |
106 }; | 110 }; |
107 | 111 |
108 } } // namespace v8::internal | 112 } } // namespace v8::internal |
109 | 113 |
110 #endif // V8_OPTIMIZING_COMPILER_THREAD_H_ | 114 #endif // V8_OPTIMIZING_COMPILER_THREAD_H_ |
OLD | NEW |