OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
151 return thread_local_.scheduled_exception_; | 151 return thread_local_.scheduled_exception_; |
152 } | 152 } |
153 static bool has_scheduled_exception() { | 153 static bool has_scheduled_exception() { |
154 return !thread_local_.scheduled_exception_->IsTheHole(); | 154 return !thread_local_.scheduled_exception_->IsTheHole(); |
155 } | 155 } |
156 static void clear_scheduled_exception() { | 156 static void clear_scheduled_exception() { |
157 thread_local_.scheduled_exception_ = Heap::the_hole_value(); | 157 thread_local_.scheduled_exception_ = Heap::the_hole_value(); |
158 } | 158 } |
159 | 159 |
160 static void setup_external_caught() { | 160 static void setup_external_caught() { |
161 if (!thread_local_.external_caught_exception_) { | 161 thread_local_.external_caught_exception_ = |
162 thread_local_.external_caught_exception_ = | 162 (!thread_local_.pending_exception_->IsTheHole()) && |
163 has_pending_exception() && | 163 (thread_local_.catcher_ != NULL) && |
164 (thread_local_.catcher_ != NULL) && | 164 (Top::thread_local_.try_catch_handler_ == Top::thread_local_.catcher_); |
165 (thread_local_.try_catch_handler_ == thread_local_.catcher_); | |
166 } | |
167 } | 165 } |
168 | 166 |
169 // Tells whether the current context has experienced an out of memory | 167 // Tells whether the current context has experienced an out of memory |
170 // exception. | 168 // exception. |
171 static bool is_out_of_memory(); | 169 static bool is_out_of_memory(); |
172 | 170 |
173 // JS execution stack (see frames.h). | 171 // JS execution stack (see frames.h). |
174 static Address c_entry_fp(ThreadLocalTop* thread) { | 172 static Address c_entry_fp(ThreadLocalTop* thread) { |
175 return thread->c_entry_fp_; | 173 return thread->c_entry_fp_; |
176 } | 174 } |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
371 | 369 |
372 class ExecutionAccess BASE_EMBEDDED { | 370 class ExecutionAccess BASE_EMBEDDED { |
373 public: | 371 public: |
374 ExecutionAccess(); | 372 ExecutionAccess(); |
375 ~ExecutionAccess(); | 373 ~ExecutionAccess(); |
376 }; | 374 }; |
377 | 375 |
378 } } // namespace v8::internal | 376 } } // namespace v8::internal |
379 | 377 |
380 #endif // V8_TOP_H_ | 378 #endif // V8_TOP_H_ |
OLD | NEW |