Lines Matching defs:pfpsd

39 	fp_simd_type	*pfpsd,		/* Pointer to simulator data */
44 switch (pfpsd->fp_direction) {
66 fp_simd_type *pfpsd, /* Pointer to simulator data */
76 fpu_set_exception(pfpsd, fp_inexact);
77 switch (pfpsd->fp_direction) {
107 if ((pfpsd->fp_direction == fp_nearest) &&
115 fp_simd_type *pfpsd, /* Pointer to simulator data */
127 round(pfpsd, pu);
143 pfpsd->fp_current_exceptions &= ~(1 << (int)fp_inexact);
144 fpu_set_exception(pfpsd, fp_invalid);
151 fp_simd_type *pfpsd, /* Pointer to simulator data */
168 round(pfpsd, pu);
189 pfpsd->fp_current_exceptions &= ~(1 << (int)fp_inexact);
190 fpu_set_exception(pfpsd, fp_invalid);
197 fp_simd_type *pfpsd, /* Pointer to simulator data */
224 round(pfpsd, pu);
233 fpu_set_exception(pfpsd, fp_inexact);
237 if (pfpsd->fp_current_exceptions & (1 << fp_inexact))
238 fpu_set_exception(pfpsd, fp_underflow);
239 if (pfpsd->fp_fsrtem & (1<<fp_underflow)) {
240 fpu_set_exception(pfpsd, fp_underflow);
241 pfpsd->fp_current_exceptions &=
246 round(pfpsd, pu);
252 fpu_set_exception(pfpsd, fp_overflow);
253 fpu_set_exception(pfpsd, fp_inexact);
254 if (pfpsd->fp_fsrtem & (1<<fp_overflow)) {
255 pfpsd->fp_current_exceptions &=
258 if (overflow_to_infinity(pfpsd, pu->sign))
271 fp_simd_type *pfpsd, /* Pointer to simulator data */
302 round(pfpsd, pu);
312 fpu_set_exception(pfpsd, fp_inexact);
318 if (pfpsd->fp_current_exceptions & (1 << fp_inexact))
319 fpu_set_exception(pfpsd, fp_underflow);
320 if (pfpsd->fp_fsrtem & (1<<fp_underflow)) {
321 fpu_set_exception(pfpsd, fp_underflow);
322 pfpsd->fp_current_exceptions &=
327 round(pfpsd, pu);
333 fpu_set_exception(pfpsd, fp_overflow);
334 fpu_set_exception(pfpsd, fp_inexact);
335 if (pfpsd->fp_fsrtem & (1<<fp_overflow)) {
336 pfpsd->fp_current_exceptions &=
339 if (overflow_to_infinity(pfpsd, pu->sign))
355 fp_simd_type *pfpsd, /* Pointer to simulator data */
395 round(pfpsd, pu);
405 fpu_set_exception(pfpsd, fp_inexact);
407 if (pfpsd->fp_current_exceptions & (1 << fp_inexact))
408 fpu_set_exception(pfpsd, fp_underflow);
409 if (pfpsd->fp_fsrtem & (1<<fp_underflow)) {
410 fpu_set_exception(pfpsd, fp_underflow);
411 pfpsd->fp_current_exceptions &=
420 round(pfpsd, pu); /* rounding overflow handled in round() */
422 fpu_set_exception(pfpsd, fp_overflow);
423 fpu_set_exception(pfpsd, fp_inexact);
424 if (pfpsd->fp_fsrtem & (1<<fp_overflow)) {
425 pfpsd->fp_current_exceptions &=
428 if (overflow_to_infinity(pfpsd, pu->sign))
448 fp_simd_type *pfpsd, /* Pointer to simulator data */
459 packint32(pfpsd, pu, &x);
460 if (!(pfpsd->fp_current_exceptions & pfpsd->fp_fsrtem))
461 pfpsd->fp_current_write_freg(&x, n, pfpsd);
468 packint64(pfpsd, pu, &x);
471 if (!(pfpsd->fp_current_exceptions & pfpsd->fp_fsrtem))
472 pfpsd->fp_current_write_dreg(&x, DOUBLE(n), pfpsd);
479 packsingle(pfpsd, pu, &x);
480 if (!(pfpsd->fp_current_exceptions & pfpsd->fp_fsrtem))
481 pfpsd->fp_current_write_freg(&x, n, pfpsd);
492 packdouble(pfpsd, pu, &db.x[0], &db.y[1]);
493 if (!(pfpsd->fp_current_exceptions &
494 pfpsd->fp_fsrtem)) {
497 pfpsd->fp_current_write_dreg(&db.ll, DOUBLE(n),
498 pfpsd);
511 switch (pfpsd->fp_precision) {
521 packsingle(pfpsd, pu, &tx);
523 unpacksingle(pfpsd, pu, tx);
531 packdouble(pfpsd, pu, &tx, &ty);
533 unpackdouble(pfpsd, pu, tx, ty);
542 round(pfpsd, pu);
549 packextended(pfpsd, pu, &ex.x, &ex.y[1],
551 if (!(pfpsd->fp_current_exceptions &
552 pfpsd->fp_fsrtem)) {
555 pfpsd->fp_current_write_dreg(&ex.ll[0],
556 QUAD_E(n), pfpsd);
557 pfpsd->fp_current_write_dreg(&ex.ll[1],
558 QUAD_F(n), pfpsd);
568 fp_simd_type *pfpsd, /* Pointer to simulator data */
572 pfpsd->fp_current_write_freg(pu, n, pfpsd);
577 fp_simd_type *pfpsd, /* Pointer to simulator data */
583 pfpsd->fp_current_write_dreg(pu, DOUBLE(n), pfpsd);