OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef V8_FACTORY_H_ | 5 #ifndef V8_FACTORY_H_ |
6 #define V8_FACTORY_H_ | 6 #define V8_FACTORY_H_ |
7 | 7 |
8 #include "src/feedback-vector.h" | 8 #include "src/feedback-vector.h" |
9 #include "src/globals.h" | 9 #include "src/globals.h" |
10 #include "src/isolate.h" | 10 #include "src/isolate.h" |
(...skipping 451 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
462 // Creates mutable heap number object with value field set to hole NaN. | 462 // Creates mutable heap number object with value field set to hole NaN. |
463 Handle<HeapNumber> NewMutableHeapNumber( | 463 Handle<HeapNumber> NewMutableHeapNumber( |
464 PretenureFlag pretenure = NOT_TENURED) { | 464 PretenureFlag pretenure = NOT_TENURED) { |
465 return NewHeapNumberFromBits(kHoleNanInt64, MUTABLE, pretenure); | 465 return NewHeapNumberFromBits(kHoleNanInt64, MUTABLE, pretenure); |
466 } | 466 } |
467 | 467 |
468 // Creates heap number object with not yet set value field. | 468 // Creates heap number object with not yet set value field. |
469 Handle<HeapNumber> NewHeapNumber(MutableMode mode, | 469 Handle<HeapNumber> NewHeapNumber(MutableMode mode, |
470 PretenureFlag pretenure = NOT_TENURED); | 470 PretenureFlag pretenure = NOT_TENURED); |
471 | 471 |
472 #define SIMD128_NEW_DECL(TYPE, Type, type, lane_count, lane_type) \ | |
473 Handle<Type> New##Type(lane_type lanes[lane_count], \ | |
474 PretenureFlag pretenure = NOT_TENURED); | |
475 SIMD128_TYPES(SIMD128_NEW_DECL) | |
476 #undef SIMD128_NEW_DECL | |
477 | |
478 Handle<JSWeakMap> NewJSWeakMap(); | 472 Handle<JSWeakMap> NewJSWeakMap(); |
479 | 473 |
480 Handle<JSObject> NewArgumentsObject(Handle<JSFunction> callee, int length); | 474 Handle<JSObject> NewArgumentsObject(Handle<JSFunction> callee, int length); |
481 | 475 |
482 // JS objects are pretenured when allocated by the bootstrapper and | 476 // JS objects are pretenured when allocated by the bootstrapper and |
483 // runtime. | 477 // runtime. |
484 Handle<JSObject> NewJSObject(Handle<JSFunction> constructor, | 478 Handle<JSObject> NewJSObject(Handle<JSFunction> constructor, |
485 PretenureFlag pretenure = NOT_TENURED); | 479 PretenureFlag pretenure = NOT_TENURED); |
486 // JSObject without a prototype. | 480 // JSObject without a prototype. |
487 Handle<JSObject> NewJSObjectWithNullProto( | 481 Handle<JSObject> NewJSObjectWithNullProto( |
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
845 void SetStrictFunctionInstanceDescriptor(Handle<Map> map, | 839 void SetStrictFunctionInstanceDescriptor(Handle<Map> map, |
846 FunctionMode function_mode); | 840 FunctionMode function_mode); |
847 | 841 |
848 void SetClassFunctionInstanceDescriptor(Handle<Map> map); | 842 void SetClassFunctionInstanceDescriptor(Handle<Map> map); |
849 }; | 843 }; |
850 | 844 |
851 } // namespace internal | 845 } // namespace internal |
852 } // namespace v8 | 846 } // namespace v8 |
853 | 847 |
854 #endif // V8_FACTORY_H_ | 848 #endif // V8_FACTORY_H_ |
OLD | NEW |