protected void _for(Stmt init, RVal cond, Stmt step, Runnable body) {
		new ForStmt(this, init, cond, step, new BlockStmt(this, body));
	}
Generate a "for" statement

<p>
The body is usually a lambda containing the controlled statements, so that it resembles Java
/ C syntax:

<pre>
Var temp = local("temp", "/int");
Var total = local("total", "/int");
total.set(0);
_for(temp.set(0), temp.ltiu(10), temp.inc(1), () -> {
	total.addiTo(temp);
});
</pre>

<p>
TIP: If the number of repetitions is known at generation time, consider using a standard Java
for loop, as a sort of Structured Sleigh macro. For example, to broadcast element 0 to an
in-memory 16-long vector pointed to by r0:

<pre>
Var arr = lang("r0", "/int *");
for (int i = 1; i &lt; 16; i++) {
	arr.index(i).deref().set(arr.index(0).deref());
}
</pre>

<p>
Instead of generating a loop, this will generate 15 Sleigh statements.

@param init the loop initializer
@param cond the loop condition
@param step the loop stepper
@param body the body of the loop
Ghidra/Features/SystemEmulation/src/main/java/ghidra/pcode/struct/StructuredSleigh.java