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/types.h" | 7 #include "src/types.h" |
8 | 8 |
9 #include "src/ostreams.h" | 9 #include "src/ostreams.h" |
10 #include "src/types-inl.h" | 10 #include "src/types-inl.h" |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
260 case MAP_TYPE: | 260 case MAP_TYPE: |
261 // When compiling stub templates, the meta map is used as a place holder | 261 // When compiling stub templates, the meta map is used as a place holder |
262 // for the actual map with which the template is later instantiated. | 262 // for the actual map with which the template is later instantiated. |
263 // We treat it as a kind of type variable whose upper bound is Any. | 263 // We treat it as a kind of type variable whose upper bound is Any. |
264 // TODO(rossberg): for caching of CompareNilIC stubs to work correctly, | 264 // TODO(rossberg): for caching of CompareNilIC stubs to work correctly, |
265 // we must exclude Undetectable here. This makes no sense, really, | 265 // we must exclude Undetectable here. This makes no sense, really, |
266 // because it means that the template isn't actually parametric. | 266 // because it means that the template isn't actually parametric. |
267 // Also, it doesn't apply elsewhere. 8-( | 267 // Also, it doesn't apply elsewhere. 8-( |
268 // We ought to find a cleaner solution for compiling stubs parameterised | 268 // We ought to find a cleaner solution for compiling stubs parameterised |
269 // over type or class variables, esp ones with bounds... | 269 // over type or class variables, esp ones with bounds... |
270 return kDetectable; | 270 return kDetectable & kTaggedPointer; |
271 case DECLARED_ACCESSOR_INFO_TYPE: | 271 case DECLARED_ACCESSOR_INFO_TYPE: |
272 case EXECUTABLE_ACCESSOR_INFO_TYPE: | 272 case EXECUTABLE_ACCESSOR_INFO_TYPE: |
273 case SHARED_FUNCTION_INFO_TYPE: | 273 case SHARED_FUNCTION_INFO_TYPE: |
274 case ACCESSOR_PAIR_TYPE: | 274 case ACCESSOR_PAIR_TYPE: |
275 case FIXED_ARRAY_TYPE: | 275 case FIXED_ARRAY_TYPE: |
276 case BYTE_ARRAY_TYPE: | 276 case BYTE_ARRAY_TYPE: |
277 case FOREIGN_TYPE: | 277 case FOREIGN_TYPE: |
278 case SCRIPT_TYPE: | 278 case SCRIPT_TYPE: |
279 case CODE_TYPE: | 279 case CODE_TYPE: |
280 return kInternal & kTaggedPointer; | 280 return kInternal & kTaggedPointer; |
(...skipping 1079 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1360 template class TypeImpl<HeapTypeConfig>::Iterator<i::Object>; | 1360 template class TypeImpl<HeapTypeConfig>::Iterator<i::Object>; |
1361 | 1361 |
1362 template TypeImpl<ZoneTypeConfig>::TypeHandle | 1362 template TypeImpl<ZoneTypeConfig>::TypeHandle |
1363 TypeImpl<ZoneTypeConfig>::Convert<HeapType>( | 1363 TypeImpl<ZoneTypeConfig>::Convert<HeapType>( |
1364 TypeImpl<HeapTypeConfig>::TypeHandle, TypeImpl<ZoneTypeConfig>::Region*); | 1364 TypeImpl<HeapTypeConfig>::TypeHandle, TypeImpl<ZoneTypeConfig>::Region*); |
1365 template TypeImpl<HeapTypeConfig>::TypeHandle | 1365 template TypeImpl<HeapTypeConfig>::TypeHandle |
1366 TypeImpl<HeapTypeConfig>::Convert<Type>( | 1366 TypeImpl<HeapTypeConfig>::Convert<Type>( |
1367 TypeImpl<ZoneTypeConfig>::TypeHandle, TypeImpl<HeapTypeConfig>::Region*); | 1367 TypeImpl<ZoneTypeConfig>::TypeHandle, TypeImpl<HeapTypeConfig>::Region*); |
1368 | 1368 |
1369 } } // namespace v8::internal | 1369 } } // namespace v8::internal |
OLD | NEW |