thanks Jan, applied.
we encode it this way because there's no space for the 'FPU Last
Instruction Opcode' (->fop) field in the legacy user_i387_ia32_struct
that ptrace PTRACE_GETFPREGS/PTRACE_SETFPREGS uses.
it's probably pure legacy - i'd be surprised if any user-space relied on
the FPU Last Opcode in any way. But indeed we used to do it previously
so the most conservative thing is to preserve that piece of information.
FXRESTORE ignores the FOP field so the "restore" direction is
meaningless:
fxsave->fop = (u16) ((u32) env->fcs >> 16);
Ingo
--