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; | |
200 case JS_OBJECT_TYPE: | 198 case JS_OBJECT_TYPE: |
201 case JS_ARGUMENTS_TYPE: | 199 case JS_ARGUMENTS_TYPE: |
202 case JS_ERROR_TYPE: | 200 case JS_ERROR_TYPE: |
203 case JS_GLOBAL_OBJECT_TYPE: | 201 case JS_GLOBAL_OBJECT_TYPE: |
204 case JS_GLOBAL_PROXY_TYPE: | 202 case JS_GLOBAL_PROXY_TYPE: |
205 case JS_API_OBJECT_TYPE: | 203 case JS_API_OBJECT_TYPE: |
206 case JS_SPECIAL_API_OBJECT_TYPE: | 204 case JS_SPECIAL_API_OBJECT_TYPE: |
207 if (map->is_undetectable()) return kOtherUndetectable; | 205 if (map->is_undetectable()) return kOtherUndetectable; |
208 return kOtherObject; | 206 return kOtherObject; |
209 case JS_VALUE_TYPE: | 207 case JS_VALUE_TYPE: |
(...skipping 1081 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1291 #endif | 1289 #endif |
1292 | 1290 |
1293 AstBitsetType::bitset AstBitsetType::SignedSmall() { | 1291 AstBitsetType::bitset AstBitsetType::SignedSmall() { |
1294 return i::SmiValuesAre31Bits() ? kSigned31 : kSigned32; | 1292 return i::SmiValuesAre31Bits() ? kSigned31 : kSigned32; |
1295 } | 1293 } |
1296 | 1294 |
1297 AstBitsetType::bitset AstBitsetType::UnsignedSmall() { | 1295 AstBitsetType::bitset AstBitsetType::UnsignedSmall() { |
1298 return i::SmiValuesAre31Bits() ? kUnsigned30 : kUnsigned31; | 1296 return i::SmiValuesAre31Bits() ? kUnsigned30 : kUnsigned31; |
1299 } | 1297 } |
1300 | 1298 |
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 | |
1308 // ----------------------------------------------------------------------------- | 1299 // ----------------------------------------------------------------------------- |
1309 // Instantiations. | 1300 // Instantiations. |
1310 | 1301 |
1311 template class AstType::Iterator<i::Map>; | 1302 template class AstType::Iterator<i::Map>; |
1312 template class AstType::Iterator<i::Object>; | 1303 template class AstType::Iterator<i::Object>; |
1313 | 1304 |
1314 } // namespace internal | 1305 } // namespace internal |
1315 } // namespace v8 | 1306 } // namespace v8 |
OLD | NEW |