Changeset 36285 in webkit for trunk/JavaScriptCore/VM/CTI.cpp
- Timestamp:
- Sep 8, 2008, 11:55:39 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/VM/CTI.cpp
r36282 r36285 1658 1658 1659 1659 // Checks out okay! - getDirectOffset 1660 m_jit.emitMovl_mr(OBJECT_OFFSET(JSObject, m_property Map) + OBJECT_OFFSET(PropertyMap, m_u.table), MacroAssembler::eax, MacroAssembler::eax);1661 m_jit.emitMovl_mr( OBJECT_OFFSET(PropertyMapHashTable, entryIndices[0]) + (cachedOffset * sizeof(JSValue*)), MacroAssembler::eax, MacroAssembler::eax);1660 m_jit.emitMovl_mr(OBJECT_OFFSET(JSObject, m_propertyStorage), MacroAssembler::eax, MacroAssembler::eax); 1661 m_jit.emitMovl_mr(cachedOffset * sizeof(JSValue*), MacroAssembler::eax, MacroAssembler::eax); 1662 1662 m_jit.emitRet(); 1663 1663 … … 1678 1678 // referencing the prototype object - let's speculatively load it's table nice and early!) 1679 1679 JSObject* protoObject = static_cast<JSObject*>(structureID->prototype()); 1680 PropertyMapHashTable** protoTableAddress = &(protoObject->m_propertyMap.m_u.table);1681 m_jit.emitMovl_mr(static_cast<void*>(proto TableAddress), MacroAssembler::edx);1680 OwnArrayPtr<JSValue*>* protoPropertyStorage = &protoObject->m_propertyStorage; 1681 m_jit.emitMovl_mr(static_cast<void*>(protoPropertyStorage), MacroAssembler::edx); 1682 1682 1683 1683 // check eax is an object of the right StructureID. … … 1693 1693 1694 1694 // Checks out okay! - getDirectOffset 1695 1696 m_jit.emitMovl_mr(OBJECT_OFFSET(PropertyMapHashTable, entryIndices[0]) + (cachedOffset * sizeof(JSValue*)), MacroAssembler::edx, MacroAssembler::eax); 1695 m_jit.emitMovl_mr(cachedOffset * sizeof(JSValue*), MacroAssembler::edx, MacroAssembler::eax); 1697 1696 1698 1697 m_jit.emitRet(); … … 1736 1735 ASSERT(protoObject); 1737 1736 1738 PropertyMapHashTable** protoTableAddress = &(reinterpret_cast<JSObject*>(protoObject)->m_propertyMap.m_u.table);1739 m_jit.emitMovl_mr(static_cast<void*>(proto TableAddress), MacroAssembler::edx);1740 m_jit.emitMovl_mr( OBJECT_OFFSET(PropertyMapHashTable, entryIndices[0]) + (cachedOffset * sizeof(JSValue*)), MacroAssembler::edx, MacroAssembler::eax);1737 OwnArrayPtr<JSValue*>* protoPropertyStorage = &static_cast<JSObject*>(protoObject)->m_propertyStorage; 1738 m_jit.emitMovl_mr(static_cast<void*>(protoPropertyStorage), MacroAssembler::edx); 1739 m_jit.emitMovl_mr(cachedOffset * sizeof(JSValue*), MacroAssembler::edx, MacroAssembler::eax); 1741 1740 m_jit.emitRet(); 1742 1741 … … 1761 1760 1762 1761 // checks out okay! - putDirectOffset 1763 m_jit.emitMovl_mr(OBJECT_OFFSET(JSObject, m_property Map) + OBJECT_OFFSET(PropertyMap, m_u.table), MacroAssembler::eax, MacroAssembler::eax);1764 m_jit.emitMovl_rm(MacroAssembler::edx, OBJECT_OFFSET(PropertyMapHashTable, entryIndices[0]) + (cachedOffset * sizeof(JSValue*)), MacroAssembler::eax);1762 m_jit.emitMovl_mr(OBJECT_OFFSET(JSObject, m_propertyStorage), MacroAssembler::eax, MacroAssembler::eax); 1763 m_jit.emitMovl_rm(MacroAssembler::edx, cachedOffset * sizeof(JSValue*), MacroAssembler::eax); 1765 1764 m_jit.emitRet(); 1766 1765
Note:
See TracChangeset
for help on using the changeset viewer.