SIL macro: implement GETBAL
jmp should not intervene with label assignment

If a labelled SIL instruction doesn't return a value, the labelled value should
be set to the instruction pointer. However, jmp modifies the instruction
pointer before the called instruction returns, so the instruction pointer value
needs to be captured before executing any instruction that may possibly call
jmp.