| 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 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 64 | 64 |
| 65 // SizeT is for holding small-ish limits like number of source | 65 // SizeT is for holding small-ish limits like number of source |
| 66 // operands in an instruction. It is used instead of size_t (which | 66 // operands in an instruction. It is used instead of size_t (which |
| 67 // may be 64-bits wide) when we want to save space. | 67 // may be 64-bits wide) when we want to save space. |
| 68 typedef uint32_t SizeT; | 68 typedef uint32_t SizeT; |
| 69 | 69 |
| 70 // InstNumberT is for holding an instruction number. Instruction | 70 // InstNumberT is for holding an instruction number. Instruction |
| 71 // numbers are used for representing Variable live ranges. | 71 // numbers are used for representing Variable live ranges. |
| 72 typedef int32_t InstNumberT; | 72 typedef int32_t InstNumberT; |
| 73 | 73 |
| 74 // A LiveBeginEndMapEntry maps a Variable::Number value to an |
| 75 // Inst::Number value, giving the instruction number that begins or |
| 76 // ends a variable's live range. |
| 77 typedef std::pair<SizeT, InstNumberT> LiveBeginEndMapEntry; |
| 78 typedef std::vector<LiveBeginEndMapEntry> LiveBeginEndMap; |
| 79 typedef llvm::BitVector LivenessBV; |
| 80 |
| 74 typedef uint32_t TimerStackIdT; | 81 typedef uint32_t TimerStackIdT; |
| 75 typedef uint32_t TimerIdT; | 82 typedef uint32_t TimerIdT; |
| 76 | 83 |
| 77 // PNaCl is ILP32, so theoretically we should only need 32-bit offsets. | 84 // PNaCl is ILP32, so theoretically we should only need 32-bit offsets. |
| 78 typedef int32_t RelocOffsetT; | 85 typedef int32_t RelocOffsetT; |
| 79 | 86 |
| 80 enum LivenessMode { | 87 enum LivenessMode { |
| 81 // Basic version of live-range-end calculation. Marks the last uses | 88 // Basic version of live-range-end calculation. Marks the last uses |
| 82 // of variables based on dataflow analysis. Records the set of | 89 // of variables based on dataflow analysis. Records the set of |
| 83 // live-in and live-out variables for each block. Identifies and | 90 // live-in and live-out variables for each block. Identifies and |
| (...skipping 22 matching lines...) Expand all Loading... |
| 106 IceV_All = ~IceV_None, | 113 IceV_All = ~IceV_None, |
| 107 IceV_Most = IceV_All & ~IceV_LinearScan | 114 IceV_Most = IceV_All & ~IceV_LinearScan |
| 108 }; | 115 }; |
| 109 typedef uint32_t VerboseMask; | 116 typedef uint32_t VerboseMask; |
| 110 | 117 |
| 111 typedef llvm::raw_ostream Ostream; | 118 typedef llvm::raw_ostream Ostream; |
| 112 | 119 |
| 113 } // end of namespace Ice | 120 } // end of namespace Ice |
| 114 | 121 |
| 115 #endif // SUBZERO_SRC_ICEDEFS_H | 122 #endif // SUBZERO_SRC_ICEDEFS_H |
| OLD | NEW |