Changeset 183450 in webkit for trunk/Source/JavaScriptCore/dfg/DFGArrayMode.cpp
- Timestamp:
- Apr 27, 2015, 9:16:21 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/dfg/DFGArrayMode.cpp
r181993 r183450 98 98 case asArrayModes(NonArrayWithArrayStorage) | asArrayModes(ArrayWithArrayStorage) | asArrayModes(NonArrayWithSlowPutArrayStorage) | asArrayModes(ArrayWithSlowPutArrayStorage): 99 99 return ArrayMode(Array::SlowPutArrayStorage, Array::PossiblyArray, Array::AsIs).withProfile(locker, profile, makeSafe); 100 case Int8ArrayMode: 101 return ArrayMode(Array::Int8Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 102 case Int16ArrayMode: 103 return ArrayMode(Array::Int16Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 104 case Int32ArrayMode: 105 return ArrayMode(Array::Int32Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 106 case Uint8ArrayMode: 107 return ArrayMode(Array::Uint8Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 108 case Uint8ClampedArrayMode: 109 return ArrayMode(Array::Uint8ClampedArray, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 110 case Uint16ArrayMode: 111 return ArrayMode(Array::Uint16Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 112 case Uint32ArrayMode: 113 return ArrayMode(Array::Uint32Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 114 case Float32ArrayMode: 115 return ArrayMode(Array::Float32Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 116 case Float64ArrayMode: 117 return ArrayMode(Array::Float64Array, nonArray, Array::AsIs).withProfile(locker, profile, makeSafe); 100 118 101 119 default: … … 190 208 return withConversion(Array::RageConvert); 191 209 return *this; 192 210 211 case Array::Int8Array: 212 case Array::Int16Array: 213 case Array::Int32Array: 214 case Array::Uint8Array: 215 case Array::Uint8ClampedArray: 216 case Array::Uint16Array: 217 case Array::Uint32Array: 218 case Array::Float32Array: 219 case Array::Float64Array: 220 switch (node->op()) { 221 case PutByVal: 222 if (graph.hasExitSite(node->origin.semantic, OutOfBounds) || !isInBounds()) 223 return withSpeculation(Array::OutOfBounds); 224 return withSpeculation(Array::InBounds); 225 default: 226 return withSpeculation(Array::InBounds); 227 } 228 return *this; 193 229 case Array::Unprofiled: 194 230 case Array::SelectUsingPredictions: {
Note:
See TracChangeset
for help on using the changeset viewer.