| OLD | NEW | 
|---|
| 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 // This files contains runtime support implemented in JavaScript. | 5 // This files contains runtime support implemented in JavaScript. | 
| 6 | 6 | 
| 7 // CAUTION: Some of the functions specified in this file are called | 7 // CAUTION: Some of the functions specified in this file are called | 
| 8 // directly from compiled code. These are the functions with names in | 8 // directly from compiled code. These are the functions with names in | 
| 9 // ALL CAPS. The compiled code passes the first argument in 'this'. | 9 // ALL CAPS. The compiled code passes the first argument in 'this'. | 
| 10 | 10 | 
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 212 function AddIndexedProperty(obj, index, value) { | 212 function AddIndexedProperty(obj, index, value) { | 
| 213   if (index === TO_UINT32(index) && index !== kMaxUint32) { | 213   if (index === TO_UINT32(index) && index !== kMaxUint32) { | 
| 214     %AddElement(obj, index, value); | 214     %AddElement(obj, index, value); | 
| 215   } else { | 215   } else { | 
| 216     %AddNamedProperty(obj, TO_STRING(index), value, NONE); | 216     %AddNamedProperty(obj, TO_STRING(index), value, NONE); | 
| 217   } | 217   } | 
| 218 } | 218 } | 
| 219 %SetForceInlineFlag(AddIndexedProperty); | 219 %SetForceInlineFlag(AddIndexedProperty); | 
| 220 | 220 | 
| 221 | 221 | 
| 222 // ES6, draft 10-14-14, section 22.1.3.1.1 |  | 
| 223 function IsConcatSpreadable(O) { |  | 
| 224   if (!IS_SPEC_OBJECT(O)) return false; |  | 
| 225   var spreadable = O[isConcatSpreadableSymbol]; |  | 
| 226   if (IS_UNDEFINED(spreadable)) return IS_ARRAY(O); |  | 
| 227   return TO_BOOLEAN(spreadable); |  | 
| 228 } |  | 
| 229 |  | 
| 230 |  | 
| 231 function ToPositiveInteger(x, rangeErrorIndex) { | 222 function ToPositiveInteger(x, rangeErrorIndex) { | 
| 232   var i = TO_INTEGER_MAP_MINUS_ZERO(x); | 223   var i = TO_INTEGER_MAP_MINUS_ZERO(x); | 
| 233   if (i < 0) throw MakeRangeError(rangeErrorIndex); | 224   if (i < 0) throw MakeRangeError(rangeErrorIndex); | 
| 234   return i; | 225   return i; | 
| 235 } | 226 } | 
| 236 | 227 | 
| 237 | 228 | 
| 238 function MaxSimple(a, b) { | 229 function MaxSimple(a, b) { | 
| 239   return a > b ? a : b; | 230   return a > b ? a : b; | 
| 240 } | 231 } | 
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 274   "concat_iterable_to_array_builtin", CONCAT_ITERABLE_TO_ARRAY, | 265   "concat_iterable_to_array_builtin", CONCAT_ITERABLE_TO_ARRAY, | 
| 275   "reflect_apply_prepare_builtin", REFLECT_APPLY_PREPARE, | 266   "reflect_apply_prepare_builtin", REFLECT_APPLY_PREPARE, | 
| 276   "reflect_construct_prepare_builtin", REFLECT_CONSTRUCT_PREPARE, | 267   "reflect_construct_prepare_builtin", REFLECT_CONSTRUCT_PREPARE, | 
| 277 ]); | 268 ]); | 
| 278 | 269 | 
| 279 %InstallToContext([ | 270 %InstallToContext([ | 
| 280   "concat_iterable_to_array", ConcatIterableToArray, | 271   "concat_iterable_to_array", ConcatIterableToArray, | 
| 281 ]); | 272 ]); | 
| 282 | 273 | 
| 283 }) | 274 }) | 
| OLD | NEW | 
|---|