| Index: src/IceDefs.h
|
| diff --git a/src/IceDefs.h b/src/IceDefs.h
|
| index 9870716d7b27391530adede5fffd58c53e9b7abe..4c616f832bb68c19cb67412c91483c6a91c297a4 100644
|
| --- a/src/IceDefs.h
|
| +++ b/src/IceDefs.h
|
| @@ -50,6 +50,8 @@ class GlobalContext;
|
| class Inst;
|
| class InstPhi;
|
| class InstTarget;
|
| +class LiveRange;
|
| +class Liveness;
|
| class Operand;
|
| class TargetLowering;
|
| class Variable;
|
| @@ -68,6 +70,23 @@ typedef std::vector<Constant *> ConstantList;
|
| // may be 64-bits wide) when we want to save space.
|
| typedef uint32_t SizeT;
|
|
|
| +// InstNumberT is for holding an instruction number. Instruction
|
| +// numbers are used for representing Variable live ranges.
|
| +typedef int32_t InstNumberT;
|
| +
|
| +enum LivenessMode {
|
| + // Basic version of live-range-end calculation. Marks the last uses
|
| + // of variables based on dataflow analysis. Records the set of
|
| + // live-in and live-out variables for each block. Identifies and
|
| + // deletes dead instructions (primarily stores).
|
| + Liveness_Basic,
|
| +
|
| + // In addition to Liveness_Basic, also calculate the complete
|
| + // live range for each variable in a form suitable for interference
|
| + // calculation and register allocation.
|
| + Liveness_Intervals
|
| +};
|
| +
|
| enum VerboseItem {
|
| IceV_None = 0,
|
| IceV_Instructions = 1 << 0,
|
|
|