Changeset 47022 in webkit for trunk/JavaScriptCore/bytecode
- Timestamp:
- Aug 10, 2009, 9:35:02 PM (16 years ago)
- Location:
- trunk/JavaScriptCore/bytecode
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/bytecode/CodeBlock.cpp
r46879 r47022 1429 1429 } 1430 1430 1431 void CodeBlock::mark ()1432 { 1433 for (size_t i = 0; i < m_constantRegisters.size(); ++i) 1431 void CodeBlock::markAggregate(MarkStack& markStack) 1432 { 1433 for (size_t i = 0; i < m_constantRegisters.size(); ++i) { 1434 1434 if (!m_constantRegisters[i].marked()) 1435 m_constantRegisters[i].mark(); 1435 markStack.append(m_constantRegisters[i].jsValue()); 1436 } 1436 1437 1437 1438 for (size_t i = 0; i < m_functionExpressions.size(); ++i) 1438 m_functionExpressions[i]->body()->mark ();1439 m_functionExpressions[i]->body()->markAggregate(markStack); 1439 1440 1440 1441 if (m_rareData) { 1441 1442 for (size_t i = 0; i < m_rareData->m_functions.size(); ++i) 1442 m_rareData->m_functions[i]->body()->mark ();1443 1444 m_rareData->m_evalCodeCache.mark ();1443 m_rareData->m_functions[i]->body()->markAggregate(markStack); 1444 1445 m_rareData->m_evalCodeCache.markAggregate(markStack); 1445 1446 } 1446 1447 } -
trunk/JavaScriptCore/bytecode/CodeBlock.h
r46879 r47022 256 256 ~CodeBlock(); 257 257 258 void mark ();258 void markAggregate(MarkStack&); 259 259 void refStructures(Instruction* vPC) const; 260 260 void derefStructures(Instruction* vPC) const; -
trunk/JavaScriptCore/bytecode/EvalCodeCache.h
r44224 r47022 69 69 bool isEmpty() const { return m_cacheMap.isEmpty(); } 70 70 71 void mark ()71 void markAggregate(MarkStack& markStack) 72 72 { 73 73 EvalCacheMap::iterator end = m_cacheMap.end(); 74 74 for (EvalCacheMap::iterator ptr = m_cacheMap.begin(); ptr != end; ++ptr) 75 ptr->second->mark ();75 ptr->second->markAggregate(markStack); 76 76 } 77 77 private:
Note:
See TracChangeset
for help on using the changeset viewer.