Fix for another case of context going missing
Allow Cmm code to define unwind rules

This is a bit more general than what we had before. Basically now we
can write Cmm code like

   unwind Sp = Sp + 8;

in order to tell the DWARF generation to set the unwind rule to "increase
Sp by 8" at this point. The syntax is pretty general and could probably
be extended at some point - right now back-end support is however limited
to
1) exactly "unwind Sp = Sp + x" expressions and
2) them exactly appearing as the first statement in a block

This is however enough to provide proper unwinding instructions for a
number of Cmm routines that use an explicit stack layout. Maybe at some
point we could even get the debugger to make the transition to C land
this way?
Annotate info tables with .loc directive of block

This ensures that the debugger gets the correct source code information
when misguidedly looking in front of the return address for the "call"
instruction.
Comments
Fix frame information appearing in wrong order

Well, it seems DWARF *actually* doesn't support frame information appearing
out-of-order. Would have been too easy otherwise. Should really stop
just ignoring standard where it's not convenient, I guess...

On the plus side, the code for this actually works out better than I had
feared.
New library fingerprints