Parse ML function arguments, return statement operands, and for statement loop header.
Loop bounds and presumed to be constants for now and are stored in ForStmt as affine constant expressions.  ML function arguments, return statement operands and loop variable name are dropped for now.

PiperOrigin-RevId: 205256208
diff --git a/lib/IR/AsmPrinter.cpp b/lib/IR/AsmPrinter.cpp
index 424487c..570ae49 100644
--- a/lib/IR/AsmPrinter.cpp
+++ b/lib/IR/AsmPrinter.cpp
@@ -594,7 +594,12 @@
 void MLFunctionState::print(const OperationStmt *stmt) { printOperation(stmt); }
 
 void MLFunctionState::print(const ForStmt *stmt) {
-  os.indent(numSpaces) << "for {\n";
+  os.indent(numSpaces) << "for x = " << *stmt->getLowerBound();
+  os << " to " << *stmt->getUpperBound();
+  if (stmt->getStep()->getValue() != 1)
+    os << " step " << *stmt->getStep();
+
+  os << " {\n";
   print(static_cast<const StmtBlock *>(stmt));
   os.indent(numSpaces) << "}";
 }