| 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 152 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 163   clear_pending_message(); | 163   clear_pending_message(); | 
| 164   clear_scheduled_exception(); | 164   clear_scheduled_exception(); | 
| 165 } | 165 } | 
| 166 | 166 | 
| 167 | 167 | 
| 168 // Create a dummy thread that will wait forever on a semaphore. The only | 168 // Create a dummy thread that will wait forever on a semaphore. The only | 
| 169 // purpose for this thread is to have some stack area to save essential data | 169 // purpose for this thread is to have some stack area to save essential data | 
| 170 // into for use by a stacks only core dump (aka minidump). | 170 // into for use by a stacks only core dump (aka minidump). | 
| 171 class PreallocatedMemoryThread: public Thread { | 171 class PreallocatedMemoryThread: public Thread { | 
| 172  public: | 172  public: | 
| 173   PreallocatedMemoryThread() : keep_running_(true) { | 173   PreallocatedMemoryThread() | 
|  | 174     : Thread("v8:PreallocMem"), | 
|  | 175       keep_running_(true) { | 
| 174     wait_for_ever_semaphore_ = OS::CreateSemaphore(0); | 176     wait_for_ever_semaphore_ = OS::CreateSemaphore(0); | 
| 175     data_ready_semaphore_ = OS::CreateSemaphore(0); | 177     data_ready_semaphore_ = OS::CreateSemaphore(0); | 
| 176   } | 178   } | 
| 177 | 179 | 
| 178   // When the thread starts running it will allocate a fixed number of bytes | 180   // When the thread starts running it will allocate a fixed number of bytes | 
| 179   // on the stack and publish the location of this memory for others to use. | 181   // on the stack and publish the location of this memory for others to use. | 
| 180   void Run() { | 182   void Run() { | 
| 181     EmbeddedVector<char, 15 * 1024> local_buffer; | 183     EmbeddedVector<char, 15 * 1024> local_buffer; | 
| 182 | 184 | 
| 183     // Initialize the buffer with a known good value. | 185     // Initialize the buffer with a known good value. | 
| (...skipping 911 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1095 #ifdef V8_TARGET_ARCH_ARM | 1097 #ifdef V8_TARGET_ARCH_ARM | 
| 1096   thread_local_.simulator_ = assembler::arm::Simulator::current(); | 1098   thread_local_.simulator_ = assembler::arm::Simulator::current(); | 
| 1097 #elif V8_TARGET_ARCH_MIPS | 1099 #elif V8_TARGET_ARCH_MIPS | 
| 1098   thread_local_.simulator_ = assembler::mips::Simulator::current(); | 1100   thread_local_.simulator_ = assembler::mips::Simulator::current(); | 
| 1099 #endif | 1101 #endif | 
| 1100 #endif | 1102 #endif | 
| 1101   return from + sizeof(thread_local_); | 1103   return from + sizeof(thread_local_); | 
| 1102 } | 1104 } | 
| 1103 | 1105 | 
| 1104 } }  // namespace v8::internal | 1106 } }  // namespace v8::internal | 
| OLD | NEW | 
|---|