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 <iomanip> | 5 #include <iomanip> |
6 | 6 |
7 #include "src/ast/ast-types.h" | 7 #include "src/ast/ast-types.h" |
8 | 8 |
9 #include "src/handles-inl.h" | 9 #include "src/handles-inl.h" |
10 #include "src/objects-inl.h" | 10 #include "src/objects-inl.h" |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 DCHECK(map == heap->uninitialized_map() || | 188 DCHECK(map == heap->uninitialized_map() || |
189 map == heap->no_interceptor_result_sentinel_map() || | 189 map == heap->no_interceptor_result_sentinel_map() || |
190 map == heap->termination_exception_map() || | 190 map == heap->termination_exception_map() || |
191 map == heap->arguments_marker_map() || | 191 map == heap->arguments_marker_map() || |
192 map == heap->optimized_out_map() || | 192 map == heap->optimized_out_map() || |
193 map == heap->stale_register_map()); | 193 map == heap->stale_register_map()); |
194 return kOtherInternal & kTaggedPointer; | 194 return kOtherInternal & kTaggedPointer; |
195 } | 195 } |
196 case HEAP_NUMBER_TYPE: | 196 case HEAP_NUMBER_TYPE: |
197 return kNumber & kTaggedPointer; | 197 return kNumber & kTaggedPointer; |
| 198 case SIMD128_VALUE_TYPE: |
| 199 return kSimd; |
198 case JS_OBJECT_TYPE: | 200 case JS_OBJECT_TYPE: |
199 case JS_ARGUMENTS_TYPE: | 201 case JS_ARGUMENTS_TYPE: |
200 case JS_ERROR_TYPE: | 202 case JS_ERROR_TYPE: |
201 case JS_GLOBAL_OBJECT_TYPE: | 203 case JS_GLOBAL_OBJECT_TYPE: |
202 case JS_GLOBAL_PROXY_TYPE: | 204 case JS_GLOBAL_PROXY_TYPE: |
203 case JS_API_OBJECT_TYPE: | 205 case JS_API_OBJECT_TYPE: |
204 case JS_SPECIAL_API_OBJECT_TYPE: | 206 case JS_SPECIAL_API_OBJECT_TYPE: |
205 if (map->is_undetectable()) return kOtherUndetectable; | 207 if (map->is_undetectable()) return kOtherUndetectable; |
206 return kOtherObject; | 208 return kOtherObject; |
207 case JS_VALUE_TYPE: | 209 case JS_VALUE_TYPE: |
(...skipping 1081 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1289 #endif | 1291 #endif |
1290 | 1292 |
1291 AstBitsetType::bitset AstBitsetType::SignedSmall() { | 1293 AstBitsetType::bitset AstBitsetType::SignedSmall() { |
1292 return i::SmiValuesAre31Bits() ? kSigned31 : kSigned32; | 1294 return i::SmiValuesAre31Bits() ? kSigned31 : kSigned32; |
1293 } | 1295 } |
1294 | 1296 |
1295 AstBitsetType::bitset AstBitsetType::UnsignedSmall() { | 1297 AstBitsetType::bitset AstBitsetType::UnsignedSmall() { |
1296 return i::SmiValuesAre31Bits() ? kUnsigned30 : kUnsigned31; | 1298 return i::SmiValuesAre31Bits() ? kUnsigned30 : kUnsigned31; |
1297 } | 1299 } |
1298 | 1300 |
| 1301 #define CONSTRUCT_SIMD_TYPE(NAME, Name, name, lane_count, lane_type) \ |
| 1302 AstType* AstType::Name(Isolate* isolate, Zone* zone) { \ |
| 1303 return Class(i::handle(isolate->heap()->name##_map()), zone); \ |
| 1304 } |
| 1305 SIMD128_TYPES(CONSTRUCT_SIMD_TYPE) |
| 1306 #undef CONSTRUCT_SIMD_TYPE |
| 1307 |
1299 // ----------------------------------------------------------------------------- | 1308 // ----------------------------------------------------------------------------- |
1300 // Instantiations. | 1309 // Instantiations. |
1301 | 1310 |
1302 template class AstType::Iterator<i::Map>; | 1311 template class AstType::Iterator<i::Map>; |
1303 template class AstType::Iterator<i::Object>; | 1312 template class AstType::Iterator<i::Object>; |
1304 | 1313 |
1305 } // namespace internal | 1314 } // namespace internal |
1306 } // namespace v8 | 1315 } // namespace v8 |
OLD | NEW |