Support for external code and global labels
A test template is a sequence of blocks. Each block is either a usual block (to be unrolled to a sequence of test cases) or an external code (e.g. prologue or epilogue).
It is allowed to define global labels and jump to global labels in external code. It is prohibited to jump over usual blocks and jump to local labels.
When external code appears, the generator starts interpreting it (this may involve jumping to global labels) and does so until the control flow reaches an unhandled block.