Add iterator_range for MachineInstr defs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206238 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jim Grosbach 2014-04-15 02:14:06 +00:00
parent 67ed710684
commit c17bcb8b34

View File

@ -318,6 +318,22 @@ public:
return iterator_range<const_mop_iterator>(explicit_operands().end(),
operands_end());
}
iterator_range<mop_iterator> defs() {
return iterator_range<mop_iterator>(
operands_begin(), operands_begin() + getDesc().getNumDefs());
}
iterator_range<const_mop_iterator> defs() const {
return iterator_range<const_mop_iterator>(
operands_begin(), operands_begin() + getDesc().getNumDefs());
}
iterator_range<mop_iterator> uses() {
return iterator_range<mop_iterator>(
operands_begin() + getDesc().getNumDefs(), operands_end());
}
iterator_range<const_mop_iterator> uses() const {
return iterator_range<const_mop_iterator>(
operands_begin() + getDesc().getNumDefs(), operands_end());
}
/// Access to memory operands of the instruction
mmo_iterator memoperands_begin() const { return MemRefs; }