Changeset 48582 in webkit for trunk/JavaScriptCore/jit/JITStubs.cpp
- Timestamp:
- Sep 21, 2009, 8:45:13 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/jit/JITStubs.cpp
r48580 r48582 680 680 Structure* structure = baseCell->structure(); 681 681 682 if (structure->is Dictionary()) {682 if (structure->isUncacheableDictionary()) { 683 683 ctiPatchCallByReturnAddress(codeBlock, returnAddress, FunctionPtr(cti_op_put_by_id_generic)); 684 684 return; … … 744 744 Structure* structure = baseCell->structure(); 745 745 746 if (structure->is Dictionary()) {746 if (structure->isUncacheableDictionary()) { 747 747 ctiPatchCallByReturnAddress(codeBlock, returnAddress, FunctionPtr(cti_op_get_by_id_generic)); 748 748 return; … … 1155 1155 if (baseValue.isCell() 1156 1156 && slot.isCacheable() 1157 && !(structure = asCell(baseValue)->structure())->is Dictionary()1157 && !(structure = asCell(baseValue)->structure())->isUncacheableDictionary() 1158 1158 && (slotBaseObject = asObject(slot.slotBase()))->getPropertySpecificValue(callFrame, ident, specific) 1159 1159 && specific … … 1229 1229 if (baseValue.isCell() 1230 1230 && slot.isCacheable() 1231 && !asCell(baseValue)->structure()->is Dictionary()1231 && !asCell(baseValue)->structure()->isUncacheableDictionary() 1232 1232 && slot.slotBase() == baseValue) { 1233 1233 … … 1300 1300 CHECK_FOR_EXCEPTION(); 1301 1301 1302 if (!baseValue.isCell() || !slot.isCacheable() || asCell(baseValue)->structure()->is Dictionary()) {1302 if (!baseValue.isCell() || !slot.isCacheable() || asCell(baseValue)->structure()->isUncacheableDictionary()) { 1303 1303 ctiPatchCallByReturnAddress(callFrame->codeBlock(), STUB_RETURN_ADDRESS, FunctionPtr(cti_op_get_by_id_proto_fail)); 1304 1304 return JSValue::encode(result); … … 2189 2189 if (globalObject->getPropertySlot(callFrame, ident, slot)) { 2190 2190 JSValue result = slot.getValue(callFrame, ident); 2191 if (slot.isCacheable() && !globalObject->structure()->is Dictionary() && slot.slotBase() == globalObject) {2191 if (slot.isCacheable() && !globalObject->structure()->isUncacheableDictionary() && slot.slotBase() == globalObject) { 2192 2192 GlobalResolveInfo& globalResolveInfo = callFrame->codeBlock()->globalResolveInfo(globalResolveInfoIndex); 2193 2193 if (globalResolveInfo.structure)
Note:
See TracChangeset
for help on using the changeset viewer.