Use `SequenceToOffsetTable` to emit a consolidated string for
sub-register index names and use a table of offsets to source these
names. This follows the same scheme used for register names and help the
static storage for this data (64-bit pointer to 32-bit int per
subregister-index).
Additionally, fix a small bug in `SequenceToOffsetTable` for empty
tables on Windows (i.e, when `EmitLongStrLiterals` = false). When the
table is empty, we would generate `0 \n 0` as the table contents and
fail compilation for Windows. Fixed that omitting the extra `0` after
the call to `emit` in that case. Also force using this logic when Size
== 0 to avoid modifying the `EmitLongStrLiterals = true` case to handle
empty tables.