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 #ifndef V8_COMPILER_MACHINE_TYPE_H_ | 5 #ifndef V8_COMPILER_MACHINE_TYPE_H_ |
6 #define V8_COMPILER_MACHINE_TYPE_H_ | 6 #define V8_COMPILER_MACHINE_TYPE_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 kMachFloat32 = kRepFloat32 | kTypeNumber, | 43 kMachFloat32 = kRepFloat32 | kTypeNumber, |
44 kMachFloat64 = kRepFloat64 | kTypeNumber, | 44 kMachFloat64 = kRepFloat64 | kTypeNumber, |
45 kMachInt8 = kRepWord8 | kTypeInt32, | 45 kMachInt8 = kRepWord8 | kTypeInt32, |
46 kMachUint8 = kRepWord8 | kTypeUint32, | 46 kMachUint8 = kRepWord8 | kTypeUint32, |
47 kMachInt16 = kRepWord16 | kTypeInt32, | 47 kMachInt16 = kRepWord16 | kTypeInt32, |
48 kMachUint16 = kRepWord16 | kTypeUint32, | 48 kMachUint16 = kRepWord16 | kTypeUint32, |
49 kMachInt32 = kRepWord32 | kTypeInt32, | 49 kMachInt32 = kRepWord32 | kTypeInt32, |
50 kMachUint32 = kRepWord32 | kTypeUint32, | 50 kMachUint32 = kRepWord32 | kTypeUint32, |
51 kMachInt64 = kRepWord64 | kTypeInt64, | 51 kMachInt64 = kRepWord64 | kTypeInt64, |
52 kMachUint64 = kRepWord64 | kTypeUint64, | 52 kMachUint64 = kRepWord64 | kTypeUint64, |
| 53 kMachIntPtr = (kPointerSize == 4) ? kMachInt32 : kMachInt64, |
| 54 kMachUintPtr = (kPointerSize == 4) ? kMachUint32 : kMachUint64, |
53 kMachPtr = (kPointerSize == 4) ? kRepWord32 : kRepWord64, | 55 kMachPtr = (kPointerSize == 4) ? kRepWord32 : kRepWord64, |
54 kMachAnyTagged = kRepTagged | kTypeAny | 56 kMachAnyTagged = kRepTagged | kTypeAny |
55 }; | 57 }; |
56 | 58 |
57 std::ostream& operator<<(std::ostream& os, const MachineType& type); | 59 std::ostream& operator<<(std::ostream& os, const MachineType& type); |
58 | 60 |
59 typedef uint16_t MachineTypeUnion; | 61 typedef uint16_t MachineTypeUnion; |
60 | 62 |
61 // Globally useful machine types and constants. | 63 // Globally useful machine types and constants. |
62 const MachineTypeUnion kRepMask = kRepBit | kRepWord8 | kRepWord16 | | 64 const MachineTypeUnion kRepMask = kRepBit | kRepWord8 | kRepWord16 | |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 size_t parameter_count_; | 166 size_t parameter_count_; |
165 T* reps_; | 167 T* reps_; |
166 }; | 168 }; |
167 | 169 |
168 typedef Signature<MachineType> MachineSignature; | 170 typedef Signature<MachineType> MachineSignature; |
169 } // namespace compiler | 171 } // namespace compiler |
170 } // namespace internal | 172 } // namespace internal |
171 } // namespace v8 | 173 } // namespace v8 |
172 | 174 |
173 #endif // V8_COMPILER_MACHINE_TYPE_H_ | 175 #endif // V8_COMPILER_MACHINE_TYPE_H_ |
OLD | NEW |