save/restore GS using SwapGS; works on Qemu