Index: src/IceOperand.h |
diff --git a/src/IceOperand.h b/src/IceOperand.h |
index 91e9de0f3be83633cf5638664f972907083f0576..61de5ecb2085fb631c15604179d89f01b615ea56 100644 |
--- a/src/IceOperand.h |
+++ b/src/IceOperand.h |
@@ -534,17 +534,16 @@ public: |
return "lv$" + getName(Func); |
} |
- static constexpr int32_t NoRegister = -1; |
- bool hasReg() const { return getRegNum() != NoRegister; } |
- int32_t getRegNum() const { return RegNum; } |
- void setRegNum(int32_t NewRegNum) { |
+ bool hasReg() const { return getRegNum() != RegNumT::NoRegister; } |
+ RegNumT getRegNum() const { return RegNum; } |
+ void setRegNum(RegNumT NewRegNum) { |
// Regnum shouldn't be set more than once. |
assert(!hasReg() || RegNum == NewRegNum); |
RegNum = NewRegNum; |
} |
- bool hasRegTmp() const { return getRegNumTmp() != NoRegister; } |
- int32_t getRegNumTmp() const { return RegNumTmp; } |
- void setRegNumTmp(int32_t NewRegNum) { RegNumTmp = NewRegNum; } |
+ bool hasRegTmp() const { return getRegNumTmp() != RegNumT::NoRegister; } |
+ RegNumT getRegNumTmp() const { return RegNumTmp; } |
+ void setRegNumTmp(RegNumT NewRegNum) { RegNumTmp = NewRegNum; } |
RegWeight getWeight(const Cfg *Func) const; |
@@ -554,7 +553,7 @@ public: |
bool mustNotHaveReg() const { |
return RegRequirement == RR_MustNotHaveRegister; |
} |
- void setRematerializable(int32_t NewRegNum, int32_t NewOffset) { |
+ void setRematerializable(RegNumT NewRegNum, int32_t NewOffset) { |
IsRematerializable = true; |
setRegNum(NewRegNum); |
setStackOffset(NewOffset); |
@@ -593,14 +592,14 @@ public: |
/// IsImplicitArgument, IgnoreLiveness, RegNumTmp, Live, LoVar, HiVar, |
/// VarsReal. If NewRegNum!=NoRegister, then that register assignment is made |
/// instead of copying the existing assignment. |
- const Variable *asType(Type Ty, int32_t NewRegNum) const; |
+ const Variable *asType(Type Ty, RegNumT NewRegNum) const; |
void emit(const Cfg *Func) const override; |
using Operand::dump; |
void dump(const Cfg *Func, Ostream &Str) const override; |
/// Return reg num of base register, if different from stack/frame register. |
- virtual int32_t getBaseRegNum() const { return NoRegister; } |
+ virtual RegNumT getBaseRegNum() const { return RegNumT::NoRegister; } |
static bool classof(const Operand *Operand) { |
OperandKind Kind = Operand->getKind(); |
@@ -632,9 +631,9 @@ protected: |
RegClass RegisterClass; |
/// RegNum is the allocated register, or NoRegister if it isn't |
/// register-allocated. |
- int32_t RegNum = NoRegister; |
+ RegNumT RegNum = RegNumT::NoRegister; |
/// RegNumTmp is the tentative assignment during register allocation. |
- int32_t RegNumTmp = NoRegister; |
+ RegNumT RegNumTmp = RegNumT::NoRegister; |
/// StackOffset is the canonical location on stack (only if |
/// RegNum==NoRegister || IsArgument). |
int32_t StackOffset = 0; |