| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 97 | 97 |
| 98 #define BITSET_TYPE_LIST(V) \ | 98 #define BITSET_TYPE_LIST(V) \ |
| 99 V(None, 0) \ | 99 V(None, 0) \ |
| 100 V(Null, 1 << 0) \ | 100 V(Null, 1 << 0) \ |
| 101 V(Undefined, 1 << 1) \ | 101 V(Undefined, 1 << 1) \ |
| 102 V(Boolean, 1 << 2) \ | 102 V(Boolean, 1 << 2) \ |
| 103 V(Smi, 1 << 3) \ | 103 V(Smi, 1 << 3) \ |
| 104 V(OtherSigned32, 1 << 4) \ | 104 V(OtherSigned32, 1 << 4) \ |
| 105 V(Unsigned32, 1 << 5) \ | 105 V(Unsigned32, 1 << 5) \ |
| 106 V(Double, 1 << 6) \ | 106 V(Double, 1 << 6) \ |
| 107 V(Symbol, 1 << 7) \ | 107 V(Float32x4, 1 << 7) \ |
| 108 V(InternalizedString, 1 << 8) \ | 108 V(Int32x4, 1 << 8) \ |
| 109 V(OtherString, 1 << 9) \ | 109 V(Symbol, 1 << 9) \ |
| 110 V(Undetectable, 1 << 10) \ | 110 V(InternalizedString, 1 << 10) \ |
| 111 V(Array, 1 << 11) \ | 111 V(OtherString, 1 << 11) \ |
| 112 V(Function, 1 << 12) \ | 112 V(Undetectable, 1 << 12) \ |
| 113 V(RegExp, 1 << 13) \ | 113 V(Array, 1 << 13) \ |
| 114 V(OtherObject, 1 << 14) \ | 114 V(Function, 1 << 14) \ |
| 115 V(Proxy, 1 << 15) \ | 115 V(RegExp, 1 << 15) \ |
| 116 V(Internal, 1 << 16) \ | 116 V(OtherObject, 1 << 16) \ |
| 117 V(Proxy, 1 << 17) \ |
| 118 V(Internal, 1 << 18) \ |
| 117 \ | 119 \ |
| 118 V(Oddball, kBoolean | kNull | kUndefined) \ | 120 V(Oddball, kBoolean | kNull | kUndefined) \ |
| 119 V(Signed32, kSmi | kOtherSigned32) \ | 121 V(Signed32, kSmi | kOtherSigned32) \ |
| 120 V(Number, kSigned32 | kUnsigned32 | kDouble) \ | 122 V(Number, kSigned32 | kUnsigned32 | kDouble) \ |
| 121 V(String, kInternalizedString | kOtherString) \ | 123 V(String, kInternalizedString | kOtherString) \ |
| 122 V(UniqueName, kSymbol | kInternalizedString) \ | 124 V(UniqueName, kSymbol | kInternalizedString) \ |
| 123 V(Name, kSymbol | kString) \ | 125 V(Name, kSymbol | kString) \ |
| 124 V(NumberOrString, kNumber | kString) \ | 126 V(NumberOrString, kNumber | kString) \ |
| 125 V(Object, kUndetectable | kArray | kFunction | \ | 127 V(Object, kUndetectable | kArray | kFunction | \ |
| 126 kRegExp | kOtherObject) \ | 128 kRegExp | kOtherObject) \ |
| 127 V(Receiver, kObject | kProxy) \ | 129 V(Receiver, kObject | kProxy) \ |
| 128 V(Allocated, kDouble | kName | kReceiver) \ | 130 V(Allocated, kDouble | kFloat32x4 | kInt32x4 | kName | kReceiver) \ |
| 129 V(Any, kOddball | kNumber | kAllocated | kInternal) \ | 131 V(Any, kOddball | kNumber | kAllocated | kInternal) \ |
| 130 V(NonNumber, kAny - kNumber) \ | 132 V(NonNumber, kAny - kNumber) \ |
| 131 V(Detectable, kAllocated - kUndetectable) | 133 V(Detectable, kAllocated - kUndetectable) |
| 132 | 134 |
| 133 | 135 |
| 134 class Type : public Object { | 136 class Type : public Object { |
| 135 public: | 137 public: |
| 136 #define DEFINE_TYPE_CONSTRUCTOR(type, value) \ | 138 #define DEFINE_TYPE_CONSTRUCTOR(type, value) \ |
| 137 static Type* type() { return from_bitset(k##type); } | 139 static Type* type() { return from_bitset(k##type); } |
| 138 BITSET_TYPE_LIST(DEFINE_TYPE_CONSTRUCTOR) | 140 BITSET_TYPE_LIST(DEFINE_TYPE_CONSTRUCTOR) |
| 139 #undef DEFINE_TYPE_CONSTRUCTOR | 141 #undef DEFINE_TYPE_CONSTRUCTOR |
| 140 | 142 |
| (...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 328 static Bounds NarrowUpper(Bounds b, Handle<Type> t, Isolate* isl) { | 330 static Bounds NarrowUpper(Bounds b, Handle<Type> t, Isolate* isl) { |
| 329 return Bounds( | 331 return Bounds( |
| 330 handle(Type::Intersect(b.lower, t), isl), | 332 handle(Type::Intersect(b.lower, t), isl), |
| 331 handle(Type::Intersect(b.upper, t), isl)); | 333 handle(Type::Intersect(b.upper, t), isl)); |
| 332 } | 334 } |
| 333 }; | 335 }; |
| 334 | 336 |
| 335 } } // namespace v8::internal | 337 } } // namespace v8::internal |
| 336 | 338 |
| 337 #endif // V8_TYPES_H_ | 339 #endif // V8_TYPES_H_ |
| OLD | NEW |