Eliminate some unnecessary labels in low level grades.

In low level grades, do not emit labels at which we start while loops
if the only use of the label is backward branches from inside the loop,
since all these get turned into "continue" statements.

Since the assembly code we now have to surround labels with inhibit
optimization (they have to, at least to some extent, since they are designed
to prevent gcc from optimizing them away), this change yields a speedup.
On tools/speedtest, the speedup is about 1%.

compiler/llds_out_file.m:
   Find out whether we can leave labels at which we start while loops
   undefined.

   Fix some formatting.

compiler/llds_out_instr.m:
   Allow llds_out_file to tell us what it found out, by replacing a pair
   with a tuple type with a field for this info. Use this type to consolidate
   multiple arguments into one in some places.