Lines Matching defs:fn
81 fnsave_to_fxsave(const struct fnsave_state *fn, struct fxsave_state *fx)
85 fx->fx_fcw = fn->f_fcw;
86 fx->fx_fsw = fn->f_fsw;
92 bcopy(&fn->f_st[i].fpr_16[0], &fx->fx_st[i].fpr_16[0],
93 sizeof (fn->f_st[0].fpr_16)); /* 80-bit x87-style floats */
99 for (tagbits = fn->f_ftw, i = 0; i < 8; i++, tagbits >>= 2)
103 fx->fx_fop = fn->f_fop;
106 fx->fx_rip = (uint64_t)fn->f_eip;
107 fx->fx_rdp = (uint64_t)fn->f_dp;
109 fx->fx_eip = fn->f_eip;
110 fx->fx_cs = fn->f_cs;
112 fx->fx_dp = fn->f_dp;
113 fx->fx_ds = fn->f_ds;
122 fxsave_to_fnsave(const struct fxsave_state *fx, struct fnsave_state *fn)
126 fn->f_fcw = fx->fx_fcw;
127 fn->__f_ign0 = 0;
128 fn->f_fsw = fx->fx_fsw;
129 fn->__f_ign1 = 0;
137 bcopy(&fx->fx_st[i].fpr_16[0], &fn->f_st[i].fpr_16[0],
138 sizeof (fn->f_st[0].fpr_16)); /* 80-bit x87-style floats */
143 fn->f_ftw = 0;
150 fn->f_ftw |= 3 << (i << 1); /* empty */
165 fn->f_ftw |= 2 << (i << 1); /* NaN */
167 fn->f_ftw |= 1 << (i << 1); /* fp zero */
170 fn->f_fop = fx->fx_fop;
172 fn->__f_ign2 = 0;
174 fn->f_eip = (uint32_t)fx->fx_rip;
175 fn->f_cs = U32CS_SEL;
176 fn->f_dp = (uint32_t)fx->fx_rdp;
177 fn->f_ds = UDS_SEL;
179 fn->f_eip = fx->fx_eip;
180 fn->f_cs = fx->fx_cs;
181 fn->f_dp = fx->fx_dp;
182 fn->f_ds = fx->fx_ds;
184 fn->__f_ign3 = 0;