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

Side by Side Diff: src/optimizing-compiler-thread.h

Issue 110203002: Refactor the compiling pipeline. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: move some code Created 7 years 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 // 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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 72
73 ~OptimizingCompilerThread(); 73 ~OptimizingCompilerThread();
74 74
75 void Run(); 75 void Run();
76 void Stop(); 76 void Stop();
77 void Flush(); 77 void Flush();
78 void QueueForOptimization(RecompileJob* optimizing_compiler); 78 void QueueForOptimization(RecompileJob* optimizing_compiler);
79 void Unblock(); 79 void Unblock();
80 void InstallOptimizedFunctions(); 80 void InstallOptimizedFunctions();
81 RecompileJob* FindReadyOSRCandidate(Handle<JSFunction> function, 81 RecompileJob* FindReadyOSRCandidate(Handle<JSFunction> function,
82 uint32_t osr_pc_offset); 82 BailoutId osr_ast_id);
83 bool IsQueuedForOSR(Handle<JSFunction> function, uint32_t osr_pc_offset); 83 bool IsQueuedForOSR(Handle<JSFunction> function, BailoutId osr_ast_id);
84 84
85 bool IsQueuedForOSR(JSFunction* function); 85 bool IsQueuedForOSR(JSFunction* function);
86 86
87 inline bool IsQueueAvailable() { 87 inline bool IsQueueAvailable() {
88 LockGuard<Mutex> access_input_queue(&input_queue_mutex_); 88 LockGuard<Mutex> access_input_queue(&input_queue_mutex_);
89 return input_queue_length_ < input_queue_capacity_; 89 return input_queue_length_ < input_queue_capacity_;
90 } 90 }
91 91
92 inline void AgeBufferedOsrJobs() { 92 inline void AgeBufferedOsrJobs() {
93 // Advance cursor of the cyclic buffer to next empty slot or stale OSR job. 93 // Advance cursor of the cyclic buffer to next empty slot or stale OSR job.
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 155
156 int osr_hits_; 156 int osr_hits_;
157 int osr_attempts_; 157 int osr_attempts_;
158 158
159 int blocked_jobs_; 159 int blocked_jobs_;
160 }; 160 };
161 161
162 } } // namespace v8::internal 162 } } // namespace v8::internal
163 163
164 #endif // V8_OPTIMIZING_COMPILER_THREAD_H_ 164 #endif // V8_OPTIMIZING_COMPILER_THREAD_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698