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 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
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 typedef uint32_t TimerStackIdT; | 74 typedef uint32_t TimerStackIdT; |
75 typedef uint32_t TimerIdT; | 75 typedef uint32_t TimerIdT; |
76 | 76 |
| 77 // PNaCl is ILP32, so theoretically we should only need 32-bit offsets. |
| 78 typedef int32_t RelocOffsetT; |
| 79 |
77 enum LivenessMode { | 80 enum LivenessMode { |
78 // Basic version of live-range-end calculation. Marks the last uses | 81 // Basic version of live-range-end calculation. Marks the last uses |
79 // of variables based on dataflow analysis. Records the set of | 82 // of variables based on dataflow analysis. Records the set of |
80 // live-in and live-out variables for each block. Identifies and | 83 // live-in and live-out variables for each block. Identifies and |
81 // deletes dead instructions (primarily stores). | 84 // deletes dead instructions (primarily stores). |
82 Liveness_Basic, | 85 Liveness_Basic, |
83 | 86 |
84 // In addition to Liveness_Basic, also calculate the complete | 87 // In addition to Liveness_Basic, also calculate the complete |
85 // live range for each variable in a form suitable for interference | 88 // live range for each variable in a form suitable for interference |
86 // calculation and register allocation. | 89 // calculation and register allocation. |
(...skipping 16 matching lines...) Expand all Loading... |
103 IceV_All = ~IceV_None, | 106 IceV_All = ~IceV_None, |
104 IceV_Most = IceV_All & ~IceV_LinearScan | 107 IceV_Most = IceV_All & ~IceV_LinearScan |
105 }; | 108 }; |
106 typedef uint32_t VerboseMask; | 109 typedef uint32_t VerboseMask; |
107 | 110 |
108 typedef llvm::raw_ostream Ostream; | 111 typedef llvm::raw_ostream Ostream; |
109 | 112 |
110 } // end of namespace Ice | 113 } // end of namespace Ice |
111 | 114 |
112 #endif // SUBZERO_SRC_ICEDEFS_H | 115 #endif // SUBZERO_SRC_ICEDEFS_H |
OLD | NEW |