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 #include "src/factory.h" | 5 #include "src/factory.h" |
6 | 6 |
7 #include "src/accessors.h" | 7 #include "src/accessors.h" |
8 #include "src/allocation-site-scopes.h" | 8 #include "src/allocation-site-scopes.h" |
9 #include "src/ast/ast.h" | 9 #include "src/ast/ast.h" |
10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
(...skipping 1322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1333 return NewHeapNumber(FastUI2D(value), IMMUTABLE, pretenure); | 1333 return NewHeapNumber(FastUI2D(value), IMMUTABLE, pretenure); |
1334 } | 1334 } |
1335 | 1335 |
1336 Handle<HeapNumber> Factory::NewHeapNumber(MutableMode mode, | 1336 Handle<HeapNumber> Factory::NewHeapNumber(MutableMode mode, |
1337 PretenureFlag pretenure) { | 1337 PretenureFlag pretenure) { |
1338 CALL_HEAP_FUNCTION(isolate(), | 1338 CALL_HEAP_FUNCTION(isolate(), |
1339 isolate()->heap()->AllocateHeapNumber(mode, pretenure), | 1339 isolate()->heap()->AllocateHeapNumber(mode, pretenure), |
1340 HeapNumber); | 1340 HeapNumber); |
1341 } | 1341 } |
1342 | 1342 |
| 1343 #define SIMD128_NEW_DEF(TYPE, Type, type, lane_count, lane_type) \ |
| 1344 Handle<Type> Factory::New##Type(lane_type lanes[lane_count], \ |
| 1345 PretenureFlag pretenure) { \ |
| 1346 CALL_HEAP_FUNCTION( \ |
| 1347 isolate(), isolate()->heap()->Allocate##Type(lanes, pretenure), Type); \ |
| 1348 } |
| 1349 SIMD128_TYPES(SIMD128_NEW_DEF) |
| 1350 #undef SIMD128_NEW_DEF |
| 1351 |
| 1352 |
1343 Handle<Object> Factory::NewError(Handle<JSFunction> constructor, | 1353 Handle<Object> Factory::NewError(Handle<JSFunction> constructor, |
1344 MessageTemplate::Template template_index, | 1354 MessageTemplate::Template template_index, |
1345 Handle<Object> arg0, Handle<Object> arg1, | 1355 Handle<Object> arg0, Handle<Object> arg1, |
1346 Handle<Object> arg2) { | 1356 Handle<Object> arg2) { |
1347 HandleScope scope(isolate()); | 1357 HandleScope scope(isolate()); |
1348 if (isolate()->bootstrapper()->IsActive()) { | 1358 if (isolate()->bootstrapper()->IsActive()) { |
1349 // During bootstrapping we cannot construct error objects. | 1359 // During bootstrapping we cannot construct error objects. |
1350 return scope.CloseAndEscape(NewStringFromAsciiChecked( | 1360 return scope.CloseAndEscape(NewStringFromAsciiChecked( |
1351 MessageTemplate::TemplateString(template_index))); | 1361 MessageTemplate::TemplateString(template_index))); |
1352 } | 1362 } |
(...skipping 1512 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2865 Handle<AccessorInfo> prototype = | 2875 Handle<AccessorInfo> prototype = |
2866 Accessors::FunctionPrototypeInfo(isolate(), rw_attribs); | 2876 Accessors::FunctionPrototypeInfo(isolate(), rw_attribs); |
2867 Descriptor d = Descriptor::AccessorConstant( | 2877 Descriptor d = Descriptor::AccessorConstant( |
2868 Handle<Name>(Name::cast(prototype->name())), prototype, rw_attribs); | 2878 Handle<Name>(Name::cast(prototype->name())), prototype, rw_attribs); |
2869 map->AppendDescriptor(&d); | 2879 map->AppendDescriptor(&d); |
2870 } | 2880 } |
2871 } | 2881 } |
2872 | 2882 |
2873 } // namespace internal | 2883 } // namespace internal |
2874 } // namespace v8 | 2884 } // namespace v8 |
OLD | NEW |