| OLD | NEW |
| 1 //===- subzero/src/IceDefs.h - Common Subzero declaraions -------*- C++ -*-===// | 1 //===- subzero/src/IceDefs.h - Common Subzero declaraions -------*- 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 various useful types and classes that have | 10 // This file declares various useful types and classes that have |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 95 // live-in and live-out variables for each block. Identifies and | 95 // live-in and live-out variables for each block. Identifies and |
| 96 // deletes dead instructions (primarily stores). | 96 // deletes dead instructions (primarily stores). |
| 97 Liveness_Basic, | 97 Liveness_Basic, |
| 98 | 98 |
| 99 // In addition to Liveness_Basic, also calculate the complete | 99 // In addition to Liveness_Basic, also calculate the complete |
| 100 // live range for each variable in a form suitable for interference | 100 // live range for each variable in a form suitable for interference |
| 101 // calculation and register allocation. | 101 // calculation and register allocation. |
| 102 Liveness_Intervals | 102 Liveness_Intervals |
| 103 }; | 103 }; |
| 104 | 104 |
| 105 enum RegAllocKind { |
| 106 RAK_Global, // full, global register allocation |
| 107 RAK_InfOnly // allocation only for infinite-weight Variables |
| 108 }; |
| 109 |
| 105 enum VerboseItem { | 110 enum VerboseItem { |
| 106 IceV_None = 0, | 111 IceV_None = 0, |
| 107 IceV_Instructions = 1 << 0, | 112 IceV_Instructions = 1 << 0, |
| 108 IceV_Deleted = 1 << 1, | 113 IceV_Deleted = 1 << 1, |
| 109 IceV_InstNumbers = 1 << 2, | 114 IceV_InstNumbers = 1 << 2, |
| 110 IceV_Preds = 1 << 3, | 115 IceV_Preds = 1 << 3, |
| 111 IceV_Succs = 1 << 4, | 116 IceV_Succs = 1 << 4, |
| 112 IceV_Liveness = 1 << 5, | 117 IceV_Liveness = 1 << 5, |
| 113 IceV_RegManager = 1 << 6, | 118 IceV_RegManager = 1 << 6, |
| 114 IceV_RegOrigins = 1 << 7, | 119 IceV_RegOrigins = 1 << 7, |
| 115 IceV_LinearScan = 1 << 8, | 120 IceV_LinearScan = 1 << 8, |
| 116 IceV_Frame = 1 << 9, | 121 IceV_Frame = 1 << 9, |
| 117 IceV_AddrOpt = 1 << 10, | 122 IceV_AddrOpt = 1 << 10, |
| 118 IceV_All = ~IceV_None, | 123 IceV_All = ~IceV_None, |
| 119 IceV_Most = IceV_All & ~IceV_LinearScan | 124 IceV_Most = IceV_All & ~IceV_LinearScan |
| 120 }; | 125 }; |
| 121 typedef uint32_t VerboseMask; | 126 typedef uint32_t VerboseMask; |
| 122 | 127 |
| 123 typedef llvm::raw_ostream Ostream; | 128 typedef llvm::raw_ostream Ostream; |
| 124 | 129 |
| 125 } // end of namespace Ice | 130 } // end of namespace Ice |
| 126 | 131 |
| 127 #endif // SUBZERO_SRC_ICEDEFS_H | 132 #endif // SUBZERO_SRC_ICEDEFS_H |
| OLD | NEW |