Changeset 73545 in webkit for trunk/JavaScriptCore/runtime
- Timestamp:
- Dec 8, 2010, 1:44:38 PM (14 years ago)
- Location:
- trunk/JavaScriptCore/runtime
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/Collector.cpp
r73223 r73545 686 686 continue; 687 687 markStack.append(reinterpret_cast<JSCell*>(xAsBits)); 688 markStack.drain();689 688 } 690 689 } … … 698 697 void* stackBase = currentThreadStackBase(); 699 698 markConservatively(markStack, stackPointer, stackBase); 699 markStack.drain(); 700 700 } 701 701 … … 860 860 // mark the thread's registers 861 861 markConservatively(markStack, static_cast<void*>(®s), static_cast<void*>(reinterpret_cast<char*>(®s) + regSize)); 862 markStack.drain(); 862 863 863 864 void* stackPointer = otherThreadStackPointer(regs); 864 865 markConservatively(markStack, stackPointer, thread->stackBase); 866 markStack.drain(); 865 867 866 868 resumeThread(thread->platformThread); -
trunk/JavaScriptCore/runtime/JSArray.h
r65588 r73545 223 223 inline void MarkStack::drain() 224 224 { 225 #if !ASSERT_DISABLED 226 ASSERT(!m_isDraining); 227 m_isDraining = true; 228 #endif 225 229 while (!m_markSets.isEmpty() || !m_values.isEmpty()) { 226 230 while (!m_markSets.isEmpty() && m_values.size() < 50) { … … 261 265 markChildren(m_values.removeLast()); 262 266 } 267 #if !ASSERT_DISABLED 268 m_isDraining = false; 269 #endif 263 270 } 264 271 -
trunk/JavaScriptCore/runtime/MarkStack.h
r73091 r73545 42 42 MarkStack(void* jsArrayVPtr) 43 43 : m_jsArrayVPtr(jsArrayVPtr) 44 #if ndef NDEBUG44 #if !ASSERT_DISABLED 45 45 , m_isCheckingForDefaultMarkViolation(false) 46 , m_isDraining(false) 46 47 #endif 47 48 { … … 179 180 static size_t s_pageSize; 180 181 181 #if ndef NDEBUG182 #if !ASSERT_DISABLED 182 183 public: 183 184 bool m_isCheckingForDefaultMarkViolation; 185 bool m_isDraining; 184 186 #endif 185 187 };
Note:
See TracChangeset
for help on using the changeset viewer.