[LoopOps] Return ArrayRefs from accessors instead of iterator_ranges

Same funcitonality, but a bit friendlier for users passing it along to
APIs that take ArrayRefs.
diff --git a/mlir/include/mlir/Dialect/LoopOps/LoopOps.td b/mlir/include/mlir/Dialect/LoopOps/LoopOps.td
index e202a40..c51bf6f 100644
--- a/mlir/include/mlir/Dialect/LoopOps/LoopOps.td
+++ b/mlir/include/mlir/Dialect/LoopOps/LoopOps.td
@@ -142,10 +142,10 @@
     OpBuilder getBodyBuilder() {
       return OpBuilder(getBody(), std::prev(getBody()->end()));
     }
-    iterator_range<Block::args_iterator> getRegionIterArgs() {
+    Block::BlockArgListType getRegionIterArgs() {
       return getBody()->getArguments().drop_front();
     }
-    iterator_range<Operation::operand_iterator> getIterOperands() {
+    Operation::operand_range getIterOperands() {
       return getOperands().drop_front(getNumControlOperands());
     }
 
@@ -313,7 +313,7 @@
     unsigned getNumInductionVars() {
       return getBody()->getNumArguments();
     }
-    iterator_range<Block::args_iterator> getInductionVars() {
+    Block::BlockArgListType getInductionVars() {
       return getBody()->getArguments();
     }
     unsigned getNumLoops() { return step().size(); }