Lines Matching defs:vd
54 static void vfp_double_normalise_denormal(struct vfp_double *vd)
56 int bits = 31 - fls(vd->significand >> 32);
58 bits = 63 - fls(vd->significand);
60 vfp_double_dump("normalise_denormal: in", vd);
63 vd->exponent -= bits - 1;
64 vd->significand <<= bits;
67 vfp_double_dump("normalise_denormal: out", vd);
70 u32 vfp_double_normaliseround(int dd, struct vfp_double *vd, u32 fpscr, u32 exceptions, const char *func)
76 vfp_double_dump("pack: in", vd);
81 if (vd->exponent == 2047 && (vd->significand == 0 || exceptions))
87 if (vd->significand == 0) {
88 vd->exponent = 0;
92 exponent = vd->exponent;
93 significand = vd->significand;
104 vd->exponent = exponent;
105 vd->significand = significand;
106 vfp_double_dump("pack: normalised", vd);
117 vd->exponent = exponent;
118 vd->significand = significand;
119 vfp_double_dump("pack: tiny number", vd);
137 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vd->sign != 0))
150 vd->exponent = exponent;
151 vd->significand = significand;
152 vfp_double_dump("pack: overflow", vd);
174 vd->exponent = 2045;
175 vd->significand = 0x7fffffffffffffffULL;
177 vd->exponent = 2047; /* infinity */
178 vd->significand = 0;
187 vd->exponent = exponent;
188 vd->significand = significand >> 1;
192 vfp_double_dump("pack: final", vd);
194 s64 d = vfp_double_pack(vd);