| OLD | NEW |
| 1 //===- subzero/src/IceTypes.h - Primitive ICE types -------------*- C++ -*-===// | 1 //===- subzero/src/IceTypes.h - Primitive ICE types -------------*- C++ -*-===// |
| 2 // | 2 // |
| 3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
| 4 // | 4 // |
| 5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
| 6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
| 7 // | 7 // |
| 8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
| 9 // | 9 // |
| 10 // This file declares a few properties of the primitive types allowed | 10 // This file declares a few properties of the primitive types allowed |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 | 36 |
| 37 const char *targetArchString(TargetArch Arch); | 37 const char *targetArchString(TargetArch Arch); |
| 38 | 38 |
| 39 inline Ostream &operator<<(Ostream &Stream, TargetArch Arch) { | 39 inline Ostream &operator<<(Ostream &Stream, TargetArch Arch) { |
| 40 return Stream << targetArchString(Arch); | 40 return Stream << targetArchString(Arch); |
| 41 } | 41 } |
| 42 | 42 |
| 43 // The list of all target instruction sets. Individual targets will | 43 // The list of all target instruction sets. Individual targets will |
| 44 // map this to include only what is valid for the target. | 44 // map this to include only what is valid for the target. |
| 45 enum TargetInstructionSet { | 45 enum TargetInstructionSet { |
| 46 // Represents baseline that can be assumed for a target (usually "Begin"). |
| 47 BaseInstructionSet, |
| 46 X86InstructionSet_Begin, | 48 X86InstructionSet_Begin, |
| 47 // SSE2 is the PNaCl baseline instruction set. | |
| 48 X86InstructionSet_SSE2 = X86InstructionSet_Begin, | 49 X86InstructionSet_SSE2 = X86InstructionSet_Begin, |
| 49 X86InstructionSet_SSE4_1, | 50 X86InstructionSet_SSE4_1, |
| 50 X86InstructionSet_End, | 51 X86InstructionSet_End, |
| 52 ARM32InstructionSet_Begin, |
| 53 ARM32InstructionSet_Neon = ARM32InstructionSet_Begin, |
| 54 ARM32InstructionSet_HWDivArm, |
| 55 ARM32InstructionSet_End, |
| 51 }; | 56 }; |
| 52 | 57 |
| 53 enum OptLevel { Opt_m1, Opt_0, Opt_1, Opt_2 }; | 58 enum OptLevel { Opt_m1, Opt_0, Opt_1, Opt_2 }; |
| 54 | 59 |
| 55 size_t typeWidthInBytes(Type Ty); | 60 size_t typeWidthInBytes(Type Ty); |
| 56 size_t typeAlignInBytes(Type Ty); | 61 size_t typeAlignInBytes(Type Ty); |
| 57 size_t typeNumElements(Type Ty); | 62 size_t typeNumElements(Type Ty); |
| 58 Type typeElementType(Type Ty); | 63 Type typeElementType(Type Ty); |
| 59 const char *typeString(Type Ty); | 64 const char *typeString(Type Ty); |
| 60 | 65 |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 148 }; | 153 }; |
| 149 | 154 |
| 150 inline Ostream &operator<<(Ostream &Stream, const FuncSigType &Sig) { | 155 inline Ostream &operator<<(Ostream &Stream, const FuncSigType &Sig) { |
| 151 Sig.dump(Stream); | 156 Sig.dump(Stream); |
| 152 return Stream; | 157 return Stream; |
| 153 } | 158 } |
| 154 | 159 |
| 155 } // end of namespace Ice | 160 } // end of namespace Ice |
| 156 | 161 |
| 157 #endif // SUBZERO_SRC_ICETYPES_H | 162 #endif // SUBZERO_SRC_ICETYPES_H |
| OLD | NEW |