Changeset 253263 in webkit for trunk/Source/JavaScriptCore/llint
- Timestamp:
- Dec 7, 2019, 2:25:18 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
r253201 r253263 641 641 LLINT_BEGIN(); 642 642 auto bytecode = pc->as<OpTryGetById>(); 643 auto& metadata = bytecode.metadata(codeBlock);644 645 643 const Identifier& ident = codeBlock->identifier(bytecode.m_property); 646 644 JSValue baseValue = getOperand(callFrame, bytecode.m_base); 647 if (metadata.m_seenStructures.count() <= Options::getByIdICMaxNumberOfStructures())648 metadata.m_seenStructures.observe(baseValue.structureOrNull());649 645 PropertySlot slot(baseValue, PropertySlot::PropertySlot::InternalMethodType::VMInquiry); 650 646 … … 659 655 LLINT_BEGIN(); 660 656 auto bytecode = pc->as<OpGetByIdDirect>(); 661 auto& metadata = bytecode.metadata(codeBlock);662 657 const Identifier& ident = codeBlock->identifier(bytecode.m_property); 663 658 JSValue baseValue = getOperand(callFrame, bytecode.m_base); 664 if (metadata.m_seenStructures.count() <= Options::getByIdICMaxNumberOfStructures())665 metadata.m_seenStructures.observe(baseValue.structureOrNull());666 659 PropertySlot slot(baseValue, PropertySlot::PropertySlot::InternalMethodType::GetOwnProperty); 667 660 … … 672 665 673 666 if (!LLINT_ALWAYS_ACCESS_SLOW && slot.isCacheable() && !slot.isUnset()) { 667 auto& metadata = bytecode.metadata(codeBlock); 674 668 { 675 669 StructureID oldStructureID = metadata.m_structureID; … … 772 766 const Identifier& ident = codeBlock->identifier(bytecode.m_property); 773 767 JSValue baseValue = getOperand(callFrame, bytecode.m_base); 774 775 if (metadata.m_seenStructures.count() <= Options::getByIdICMaxNumberOfStructures())776 metadata.m_seenStructures.observe(baseValue.structureOrNull());777 778 768 PropertySlot slot(baseValue, PropertySlot::PropertySlot::InternalMethodType::Get); 779 769
Note:
See TracChangeset
for help on using the changeset viewer.