Changeset 102442 in webkit for trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
- Timestamp:
- Dec 9, 2011, 12:45:46 AM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
r102167 r102442 1208 1208 if (firstArg + 1 != lastArg) 1209 1209 return false; 1210 1211 NodeIndex charCode = addToGraph(StringCharCodeAt, get(firstArg), getToInt32(firstArg + 1)); 1210 if (!(m_graph[get(firstArg)].prediction() & PredictString)) 1211 return false; 1212 1213 NodeIndex storage = addToGraph(GetIndexedPropertyStorage, get(firstArg), getToInt32(firstArg + 1)); 1214 NodeIndex charCode = addToGraph(StringCharCodeAt, get(firstArg), getToInt32(firstArg + 1), storage); 1212 1215 if (usesResult) 1213 1216 set(resultOperand, charCode); … … 1218 1221 if (firstArg + 1 != lastArg) 1219 1222 return false; 1220 1221 NodeIndex charCode = addToGraph(StringCharAt, get(firstArg), getToInt32(firstArg + 1)); 1223 if (!(m_graph[get(firstArg)].prediction() & PredictString)) 1224 return false; 1225 1226 NodeIndex storage = addToGraph(GetIndexedPropertyStorage, get(firstArg), getToInt32(firstArg + 1)); 1227 NodeIndex charCode = addToGraph(StringCharAt, get(firstArg), getToInt32(firstArg + 1), storage); 1222 1228 if (usesResult) 1223 1229 set(resultOperand, charCode); … … 1612 1618 NodeIndex base = get(currentInstruction[2].u.operand); 1613 1619 NodeIndex property = get(currentInstruction[3].u.operand); 1614 1615 NodeIndex getByVal = addToGraph(GetByVal, OpInfo(0), OpInfo(prediction), base, property );1620 NodeIndex propertyStorage = addToGraph(GetIndexedPropertyStorage, base, property); 1621 NodeIndex getByVal = addToGraph(GetByVal, OpInfo(0), OpInfo(prediction), base, property, propertyStorage); 1616 1622 set(currentInstruction[1].u.operand, getByVal); 1617 1623
Note:
See TracChangeset
for help on using the changeset viewer.