Lines Matching defs:fe

190 	struct fpemu fe;
231 fe.fe_fpstate = fs;
236 error = fpu_execute(p, &fe, instr);
272 * FBfcc or STF, for instance). On return, fe->fe_fs->fs_fsr will be
276 fpu_execute(struct proc *p, struct fpemu *fe, union instr instr)
285 DUMPSTATE(FPE_STATE, fe->fe_fpstate);
287 fs = fe->fe_fpstate;
288 fe->fe_fsr = fs->fs_fsr & ~FSR_CX;
289 fe->fe_cx = 0;
297 return (fpu_insn_fcmp(fs, fe, instr, 0));
300 return (fpu_insn_fcmp(fs, fe, instr, 1));
327 if ((err = fpu_insn_ftoi(fe, instr, &rd, rdtype, space)) != 0)
333 if ((err = fpu_insn_ftoi(fe, instr, &rd, rdtype, space)) != 0)
338 if ((err = fpu_insn_itof(fe, instr, FTYPE_INT, &rd,
344 if ((err = fpu_insn_itof(fe, instr, FTYPE_LNG, &rd,
352 if ((err = fpu_insn_ftof(fe, instr, &rd, &rdtype, space)) != 0)
357 return (fpu_insn_fmov(fs, fe, instr));
360 return (fpu_insn_fneg(fs, fe, instr));
363 return (fpu_insn_fabs(fs, fe, instr));
366 if ((err = fpu_insn_fsqrt(fe, instr, &rd, &rdtype, space)) != 0)
371 if ((err = fpu_insn_fmul(fe, instr, &rd, &rdtype, space)) != 0)
376 if ((err = fpu_insn_fdiv(fe, instr, &rd, &rdtype, space)) != 0)
381 if ((err = fpu_insn_fmulx(fe, instr, &rd, &rdtype, space)) != 0)
386 if ((err = fpu_insn_fadd(fe, instr, &rd, &rdtype, space)) != 0)
391 if ((err = fpu_insn_fsub(fe, instr, &rd, &rdtype, space)) != 0)
398 cx = fe->fe_cx;
399 fsr = fe->fe_fsr;
422 fpu_insn_fmov(struct fpstate *fs, struct fpemu *fe, union instr instr)
434 fs->fs_fsr = fe->fe_fsr;
442 fpu_insn_fabs(struct fpstate *fs, struct fpemu *fe, union instr instr)
455 fs->fs_fsr = fe->fe_fsr;
463 fpu_insn_fneg(struct fpstate *fs, struct fpemu *fe, union instr instr)
476 fs->fs_fsr = fe->fe_fsr;
484 fpu_insn_itof(struct fpemu *fe, union instr instr, int rstype, int *rdp,
500 fpu_explode(fe, &fe->fe_f1, rstype, rs);
501 fpu_implode(fe, &fe->fe_f1, rdtype, space);
511 fpu_insn_ftoi(struct fpemu *fe, union instr instr, int *rdp, int rdtype,
524 fpu_explode(fe, &fe->fe_f1, rstype, rs);
525 fpu_implode(fe, &fe->fe_f1, rdtype, space);
534 fpu_insn_ftof(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
553 fpu_explode(fe, &fe->fe_f1, rstype, rs);
554 fpu_implode(fe, &fe->fe_f1, rdtype, space);
564 fpu_insn_fsqrt(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
578 fpu_explode(fe, &fe->fe_f1, rtype, rs);
579 fp = fpu_sqrt(fe);
580 fpu_implode(fe, fp, rtype, space);
590 fpu_insn_fcmp(struct fpstate *fs, struct fpemu *fe, union instr instr,
603 fpu_explode(fe, &fe->fe_f1, rtype, rs1);
604 fpu_explode(fe, &fe->fe_f2, rtype, rs2);
605 fpu_compare(fe, cmpe);
611 cx = fe->fe_cx;
612 fsr = fe->fe_fsr | (cx << FSR_CX_SHIFT);
629 fpu_insn_fmul(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
645 fpu_explode(fe, &fe->fe_f1, rtype, rs1);
646 fpu_explode(fe, &fe->fe_f2, rtype, rs2);
647 fp = fpu_mul(fe);
648 fpu_implode(fe, fp, rtype, space);
658 fpu_insn_fmulx(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
675 fpu_explode(fe, &fe->fe_f1, rstype, rs1);
676 fpu_explode(fe, &fe->fe_f2, rstype, rs2);
677 fp = fpu_mul(fe);
678 fpu_implode(fe, fp, rdtype, space);
688 fpu_insn_fdiv(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
704 fpu_explode(fe, &fe->fe_f1, rtype, rs1);
705 fpu_explode(fe, &fe->fe_f2, rtype, rs2);
706 fp = fpu_div(fe);
707 fpu_implode(fe, fp, rtype, space);
717 fpu_insn_fadd(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
733 fpu_explode(fe, &fe->fe_f1, rtype, rs1);
734 fpu_explode(fe, &fe->fe_f2, rtype, rs2);
735 fp = fpu_add(fe);
736 fpu_implode(fe, fp, rtype, space);
746 fpu_insn_fsub(struct fpemu *fe, union instr instr, int *rdp, int *rdtypep,
762 fpu_explode(fe, &fe->fe_f1, rtype, rs1);
763 fpu_explode(fe, &fe->fe_f2, rtype, rs2);
764 fp = fpu_sub(fe);
765 fpu_implode(fe, fp, rtype, space);