fxsave
process_read_fpregs_xmm(l, (struct fxsave *)&mcp->__fpregs.__fxsave);
(const struct fxsave *)&mcp->__fpregs.__fxsave);
process_write_fpregs_xmm(l, (const struct fxsave *)
process_read_fpregs_xmm(l, (struct fxsave *)
#define fxsave64 fxsave
struct fxsave fxstate;
struct fxsave fxstate;
__CTASSERT(sizeof (struct fxsave) ==
process_read_fpregs_xmm(l, (struct fxsave *)
__CTASSERT(sizeof (struct fxsave) ==
process_write_fpregs_xmm(l, (const struct fxsave *)
__CTASSERT(sizeof *regs == sizeof (struct fxsave));
process_read_fpregs_xmm(l, (struct fxsave *)regs);
__CTASSERT(sizeof *regs == sizeof (struct fxsave));
process_write_fpregs_xmm(l, (const struct fxsave *)regs);
struct fxsave fxstate;
__CTASSERT_NOLINT(sizeof(struct fxsave) == 512);
struct fxsave xs_fxsave;
struct fxsave sv_xmm;
void process_xmm_to_s87(const struct fxsave *, struct save87 *);
void process_s87_to_xmm(const struct save87 *, struct fxsave *);
void process_write_fpregs_xmm(struct lwp *, const struct fxsave *);
void process_read_fpregs_xmm(struct lwp *, struct fxsave *);
process_s87_to_xmm(const struct save87 *s87, struct fxsave *sxmm)
process_xmm_to_s87(const struct fxsave *sxmm, struct save87 *s87)
struct fxsave fpusave __aligned(64);
fxsave(&fpusave);
XS64(fxsave)(area);
process_write_fpregs_xmm(struct lwp *l, const struct fxsave *fpregs)
process_read_fpregs_xmm(struct lwp *l, struct fxsave *fpregs)
x86_fpu_save_size = sizeof(struct fxsave);
struct fxsave *fxarea;
fxarea = (struct fxsave *)&mctx->__fpregs;
struct fxsave fpu;
struct fxsave *fpustate;
fpustate = (struct fxsave *)cpudata->gfpu.xsh_fxsave;
struct fxsave *fpustate;
fpustate = (struct fxsave *)cpudata->gfpu.xsh_fxsave;
struct fxsave fxsave;
: "a"(out->st), "m"(fsave), "m"(fxsave)
FORKEE_ASSERT_EQ(fsave.s87_cw, fxsave.fx_cw);
FORKEE_ASSERT_EQ(fsave.s87_sw, fxsave.fx_sw);
out->tw_abridged = fxsave.fx_tw;
out->opcode = fxsave.fx_opcode;
out->ip = fxsave.fx_ip;
out->dp = fxsave.fx_dp;
struct fxsave* fxs = NULL;
ATF_CHECK_EQ(fxsave_conv.fx_cw, fxsave.fx_cw);
ATF_CHECK_EQ(fxsave_conv.fx_sw, fxsave.fx_sw);
ATF_CHECK_EQ(fxsave_conv.fx_tw, fxsave.fx_tw);
fxsave.fx_87_ac[j].r.f87_exp_sign);
fxsave.fx_87_ac[j].r.f87_mantissa);
struct fxsave fxsave;
process_s87_to_xmm(&fsave, &fxsave);
ATF_CHECK_EQ(fxsave.fx_sw, FIXED_TEST_VECTORS[i].sw);
ATF_CHECK_EQ(fxsave.fx_tw, FIXED_TEST_VECTORS[i].tw_abridged);
ATF_CHECK_EQ(fxsave.fx_87_ac[i - j].r.f87_exp_sign,
ATF_CHECK_EQ(fxsave.fx_87_ac[i - j].r.f87_mantissa,
struct fxsave fxsave;
memset(&fxsave, 0, sizeof(fxsave));
fxsave.fx_sw = FIXED_TEST_VECTORS[i].sw;
fxsave.fx_tw = FIXED_TEST_VECTORS[i].tw_abridged;
fxsave.fx_87_ac[i - j] = ST_INPUTS[j];
process_xmm_to_s87(&fxsave, &fsave);
struct fxsave fxsave, fxsave_conv;
: "b"(ST_INPUTS), "c"(i), "m"(fsave), "m"(fxsave)
ATF_REQUIRE_EQ(fsave.s87_cw, fxsave.fx_cw);
ATF_REQUIRE_EQ(fsave.s87_sw, fxsave.fx_sw);
process_xmm_to_s87(&fxsave, &fsave_conv);