The x86 FPR struct (which does not store just floating point registers)
was defined as a struct containing a union between two members: XSAVE
and FXSAVE. The initial layout of these two structs is identical, which
is recognised by the fact that XSAVE has FXSAVE as its first member.
This fact means that the whole union is not necessary and we can just
use XSAVE as our "fpr" struct. This reduced the amount of typing when
accessing the struct members and (I hope) makes code a bit cleaner.