IsDef can only be accessed / set if operand is a register.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30119 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng 2006-09-05 20:20:04 +00:00
parent d8f44e07b8
commit f89e2a9416

View File

@ -143,10 +143,22 @@ public:
return contents.SymbolName; return contents.SymbolName;
} }
bool isUse() const { return !IsDef; } bool isUse() const {
bool isDef() const { return IsDef; } assert(isRegister() && "Wrong MachineOperand accessor");
void setIsUse() { IsDef = false; } return !IsDef;
void setIsDef() { IsDef = true; } }
bool isDef() const {
assert(isRegister() && "Wrong MachineOperand accessor");
return IsDef;
}
void setIsUse() {
assert(isRegister() && "Wrong MachineOperand accessor");
IsDef = false;
}
void setIsDef() {
assert(isRegister() && "Wrong MachineOperand accessor");
IsDef = true;
}
/// getReg - Returns the register number. /// getReg - Returns the register number.
/// ///
@ -295,7 +307,6 @@ public:
void addImmOperand(int64_t Val) { void addImmOperand(int64_t Val) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_Immediate; Op.opType = MachineOperand::MO_Immediate;
Op.IsDef = false;
Op.contents.immedVal = Val; Op.contents.immedVal = Val;
Op.offset = 0; Op.offset = 0;
} }
@ -303,7 +314,6 @@ public:
void addMachineBasicBlockOperand(MachineBasicBlock *MBB) { void addMachineBasicBlockOperand(MachineBasicBlock *MBB) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_MachineBasicBlock; Op.opType = MachineOperand::MO_MachineBasicBlock;
Op.IsDef = false;
Op.contents.MBB = MBB; Op.contents.MBB = MBB;
Op.offset = 0; Op.offset = 0;
} }
@ -313,7 +323,6 @@ public:
void addFrameIndexOperand(unsigned Idx) { void addFrameIndexOperand(unsigned Idx) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_FrameIndex; Op.opType = MachineOperand::MO_FrameIndex;
Op.IsDef = false;
Op.contents.immedVal = Idx; Op.contents.immedVal = Idx;
Op.offset = 0; Op.offset = 0;
} }
@ -324,7 +333,6 @@ public:
void addConstantPoolIndexOperand(unsigned Idx, int Offset) { void addConstantPoolIndexOperand(unsigned Idx, int Offset) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_ConstantPoolIndex; Op.opType = MachineOperand::MO_ConstantPoolIndex;
Op.IsDef = false;
Op.contents.immedVal = Idx; Op.contents.immedVal = Idx;
Op.offset = Offset; Op.offset = Offset;
} }
@ -335,7 +343,6 @@ public:
void addJumpTableIndexOperand(unsigned Idx) { void addJumpTableIndexOperand(unsigned Idx) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_JumpTableIndex; Op.opType = MachineOperand::MO_JumpTableIndex;
Op.IsDef = false;
Op.contents.immedVal = Idx; Op.contents.immedVal = Idx;
Op.offset = 0; Op.offset = 0;
} }
@ -343,7 +350,6 @@ public:
void addGlobalAddressOperand(GlobalValue *GV, int Offset) { void addGlobalAddressOperand(GlobalValue *GV, int Offset) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_GlobalAddress; Op.opType = MachineOperand::MO_GlobalAddress;
Op.IsDef = false;
Op.contents.GV = GV; Op.contents.GV = GV;
Op.offset = Offset; Op.offset = Offset;
} }
@ -353,7 +359,6 @@ public:
void addExternalSymbolOperand(const char *SymName) { void addExternalSymbolOperand(const char *SymName) {
MachineOperand &Op = AddNewOperand(); MachineOperand &Op = AddNewOperand();
Op.opType = MachineOperand::MO_ExternalSymbol; Op.opType = MachineOperand::MO_ExternalSymbol;
Op.IsDef = false;
Op.contents.SymbolName = SymName; Op.contents.SymbolName = SymName;
Op.offset = 0; Op.offset = 0;
} }