Changeset 96883 in webkit for trunk/Source/JavaScriptCore/runtime
- Timestamp:
- Oct 6, 2011, 5:47:21 PM (14 years ago)
- Location:
- trunk/Source/JavaScriptCore/runtime
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/runtime/Structure.cpp
r96354 r96883 370 370 structure->materializePropertyMapIfNecessary(globalData); 371 371 transition->m_propertyTable = structure->copyPropertyTable(globalData, transition); 372 transition-> m_isPinnedPropertyTable = true;372 transition->pin(); 373 373 374 374 return transition; … … 386 386 structure->materializePropertyMapIfNecessary(globalData); 387 387 transition->m_propertyTable = structure->copyPropertyTable(globalData, transition); 388 transition-> m_isPinnedPropertyTable = true;388 transition->pin(); 389 389 390 390 if (transition->m_specificFunctionThrashCount == maxSpecificFunctionThrashCount) … … 406 406 structure->materializePropertyMapIfNecessary(globalData); 407 407 transition->m_propertyTable = structure->copyPropertyTable(globalData, transition); 408 transition-> m_isPinnedPropertyTable = true;408 transition->pin(); 409 409 410 410 return transition; … … 419 419 structure->materializePropertyMapIfNecessary(globalData); 420 420 transition->m_propertyTable = structure->copyPropertyTable(globalData, transition); 421 transition->m_isPinnedPropertyTable = true;422 421 transition->m_dictionaryKind = kind; 422 transition->pin(); 423 423 424 424 return transition; … … 472 472 structure->materializePropertyMapIfNecessary(globalData); 473 473 transition->m_propertyTable = structure->copyPropertyTable(globalData, transition); 474 transition->m_isPinnedPropertyTable = true;475 474 transition->m_preventExtensions = true; 475 transition->pin(); 476 476 477 477 return transition; … … 550 550 551 551 materializePropertyMapIfNecessary(globalData); 552 553 m_isPinnedPropertyTable = true;552 553 pin(); 554 554 555 555 size_t offset = putSpecificValue(globalData, propertyName, attributes, specificValue); … … 566 566 materializePropertyMapIfNecessary(globalData); 567 567 568 m_isPinnedPropertyTable = true;568 pin(); 569 569 size_t offset = remove(propertyName); 570 570 return offset; 571 } 572 573 void Structure::pin() 574 { 575 m_isPinnedPropertyTable = true; 576 m_previous.clear(); 577 m_nameInPrevious.clear(); 571 578 } 572 579 -
trunk/Source/JavaScriptCore/runtime/Structure.h
r96483 r96883 237 237 238 238 bool isValid(ExecState*, StructureChain* cachedPrototypeChain) const; 239 240 void pin(); 239 241 240 242 static const int s_maxTransitionLength = 64;
Note:
See TracChangeset
for help on using the changeset viewer.