| 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/types.h" | 5 #include "src/types.h" |
| 6 | 6 |
| 7 #include "src/ostreams.h" | 7 #include "src/ostreams.h" |
| 8 #include "src/types-inl.h" | 8 #include "src/types-inl.h" |
| 9 | 9 |
| 10 namespace v8 { | 10 namespace v8 { |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 240 // because it means that the template isn't actually parametric. | 240 // because it means that the template isn't actually parametric. |
| 241 // Also, it doesn't apply elsewhere. 8-( | 241 // Also, it doesn't apply elsewhere. 8-( |
| 242 // We ought to find a cleaner solution for compiling stubs parameterised | 242 // We ought to find a cleaner solution for compiling stubs parameterised |
| 243 // over type or class variables, esp ones with bounds... | 243 // over type or class variables, esp ones with bounds... |
| 244 return kDetectable; | 244 return kDetectable; |
| 245 case DECLARED_ACCESSOR_INFO_TYPE: | 245 case DECLARED_ACCESSOR_INFO_TYPE: |
| 246 case EXECUTABLE_ACCESSOR_INFO_TYPE: | 246 case EXECUTABLE_ACCESSOR_INFO_TYPE: |
| 247 case SHARED_FUNCTION_INFO_TYPE: | 247 case SHARED_FUNCTION_INFO_TYPE: |
| 248 case ACCESSOR_PAIR_TYPE: | 248 case ACCESSOR_PAIR_TYPE: |
| 249 case FIXED_ARRAY_TYPE: | 249 case FIXED_ARRAY_TYPE: |
| 250 case BYTE_ARRAY_TYPE: |
| 250 case FOREIGN_TYPE: | 251 case FOREIGN_TYPE: |
| 251 case CODE_TYPE: | 252 case CODE_TYPE: |
| 252 return kInternal & kTaggedPtr; | 253 return kInternal & kTaggedPtr; |
| 253 default: | 254 default: |
| 254 UNREACHABLE(); | 255 UNREACHABLE(); |
| 255 return kNone; | 256 return kNone; |
| 256 } | 257 } |
| 257 } | 258 } |
| 258 | 259 |
| 259 | 260 |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 429 } | 430 } |
| 430 return false; | 431 return false; |
| 431 } | 432 } |
| 432 | 433 |
| 433 if (that->IsRange()) { | 434 if (that->IsRange()) { |
| 434 return (this->IsRange() && Contains(that->AsRange(), this->AsRange())) | 435 return (this->IsRange() && Contains(that->AsRange(), this->AsRange())) |
| 435 || (this->IsConstant() && | 436 || (this->IsConstant() && |
| 436 Contains(that->AsRange(), *this->AsConstant()->Value())); | 437 Contains(that->AsRange(), *this->AsConstant()->Value())); |
| 437 } | 438 } |
| 438 if (this->IsRange()) return false; | 439 if (this->IsRange()) return false; |
| 440 |
| 439 return this->SimplyEquals(that); | 441 return this->SimplyEquals(that); |
| 440 } | 442 } |
| 441 | 443 |
| 442 | 444 |
| 443 template<class Config> | 445 template<class Config> |
| 444 bool TypeImpl<Config>::NowIs(TypeImpl* that) { | 446 bool TypeImpl<Config>::NowIs(TypeImpl* that) { |
| 445 DisallowHeapAllocation no_allocation; | 447 DisallowHeapAllocation no_allocation; |
| 446 | 448 |
| 447 // TODO(rossberg): this is incorrect for | 449 // TODO(rossberg): this is incorrect for |
| 448 // Union(Constant(V), T)->NowIs(Class(M)) | 450 // Union(Constant(V), T)->NowIs(Class(M)) |
| (...skipping 635 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1084 template class TypeImpl<HeapTypeConfig>::Iterator<i::Object>; | 1086 template class TypeImpl<HeapTypeConfig>::Iterator<i::Object>; |
| 1085 | 1087 |
| 1086 template TypeImpl<ZoneTypeConfig>::TypeHandle | 1088 template TypeImpl<ZoneTypeConfig>::TypeHandle |
| 1087 TypeImpl<ZoneTypeConfig>::Convert<HeapType>( | 1089 TypeImpl<ZoneTypeConfig>::Convert<HeapType>( |
| 1088 TypeImpl<HeapTypeConfig>::TypeHandle, TypeImpl<ZoneTypeConfig>::Region*); | 1090 TypeImpl<HeapTypeConfig>::TypeHandle, TypeImpl<ZoneTypeConfig>::Region*); |
| 1089 template TypeImpl<HeapTypeConfig>::TypeHandle | 1091 template TypeImpl<HeapTypeConfig>::TypeHandle |
| 1090 TypeImpl<HeapTypeConfig>::Convert<Type>( | 1092 TypeImpl<HeapTypeConfig>::Convert<Type>( |
| 1091 TypeImpl<ZoneTypeConfig>::TypeHandle, TypeImpl<HeapTypeConfig>::Region*); | 1093 TypeImpl<ZoneTypeConfig>::TypeHandle, TypeImpl<HeapTypeConfig>::Region*); |
| 1092 | 1094 |
| 1093 } } // namespace v8::internal | 1095 } } // namespace v8::internal |
| OLD | NEW |