Use isReg(), isImm() and isFPImm().

llvm-svn: 102470
This commit is contained in:
Devang Patel 2010-04-27 22:04:41 +00:00
parent 1f34c2727d
commit cfc76fdaf1
1 changed files with 5 additions and 9 deletions

View File

@ -1537,17 +1537,15 @@ DIE *DwarfDebug::constructVariableDIE(DbgVariable *DV, DbgScope *Scope) {
if (const MachineInstr *DbgValueInsn = DV->getDbgValue()) {
if (DbgValueInsn->getNumOperands() == 3) {
// FIXME : Handle getNumOperands != 3
if (DbgValueInsn->getOperand(0).getType()
== MachineOperand::MO_Register
&& DbgValueInsn->getOperand(0).getReg()) {
if (DbgValueInsn->getOperand(0).isReg() &&
DbgValueInsn->getOperand(0).getReg()) {
MachineLocation Location;
Location.set(DbgValueInsn->getOperand(0).getReg());
addAddress(VariableDie, dwarf::DW_AT_location, Location);
if (MCSymbol *VS = DV->getDbgValueLabel())
addLabel(VariableDie, dwarf::DW_AT_start_scope, dwarf::DW_FORM_addr,
VS);
} else if (DbgValueInsn->getOperand(0).getType() ==
MachineOperand::MO_Immediate) {
} else if (DbgValueInsn->getOperand(0).isImm()) {
DIEBlock *Block = new (DIEValueAllocator) DIEBlock();
unsigned Imm = DbgValueInsn->getOperand(0).getImm();
addUInt(Block, 0, dwarf::DW_FORM_udata, Imm);
@ -1555,8 +1553,7 @@ DIE *DwarfDebug::constructVariableDIE(DbgVariable *DV, DbgScope *Scope) {
if (MCSymbol *VS = DV->getDbgValueLabel())
addLabel(VariableDie, dwarf::DW_AT_start_scope, dwarf::DW_FORM_addr,
VS);
} else if (DbgValueInsn->getOperand(0).getType() ==
MachineOperand::MO_FPImmediate) {
} else if (DbgValueInsn->getOperand(0).isFPImm()) {
DIEBlock *Block = new (DIEValueAllocator) DIEBlock();
APFloat FPImm = DbgValueInsn->getOperand(0).getFPImm()->getValueAPF();
@ -2083,8 +2080,7 @@ void DwarfDebug::collectVariableInfo() {
continue;
// Ignore Undef values.
if (MInsn->getOperand(0).getType() == MachineOperand::MO_Register
&& !MInsn->getOperand(0).getReg())
if (MInsn->getOperand(0).isReg() && !MInsn->getOperand(0).getReg())
continue;
DIVariable DV(