Lines Matching defs:val

221 fixDest(bool flush, bool defaultNan, fpType val, fpType op1)
223 int fpClass = std::fpclassify(val);
226 const bool single = (sizeof(val) == sizeof(float));
230 val = bitsToFp(qnan, junk);
232 val = bitsToFp(fpToBits(op1) | qnan, junk);
235 // Turn val into a zero with the correct sign;
237 val = bitsToFp(fpToBits(val) & bitMask, junk);
241 return val;
245 float fixDest<float>(bool flush, bool defaultNan, float val, float op1);
247 double fixDest<double>(bool flush, bool defaultNan, double val, double op1);
251 fixDest(bool flush, bool defaultNan, fpType val, fpType op1, fpType op2)
253 int fpClass = std::fpclassify(val);
256 const bool single = (sizeof(val) == sizeof(float));
263 val = bitsToFp(qnan, junk);
265 val = bitsToFp(fpToBits(op1) | qnan, junk);
267 val = bitsToFp(fpToBits(op2) | qnan, junk);
269 val = op1;
271 val = op2;
274 // Turn val into a zero with the correct sign;
276 val = bitsToFp(fpToBits(val) & bitMask, junk);
280 return val;
285 float val, float op1, float op2);
288 double val, double op1, double op2);
292 fixDivDest(bool flush, bool defaultNan, fpType val, fpType op1, fpType op2)
294 fpType mid = fixDest(flush, defaultNan, val, op1, op2);
297 if ((single && (val == bitsToFp(0x00800000, junk) ||
298 val == bitsToFp(0x80800000, junk))) ||
299 (!single && (val == bitsToFp(ULL(0x0010000000000000), junk) ||
300 val == bitsToFp(ULL(0x8010000000000000), junk)))
321 float val, float op1, float op2);
324 double val, double op1, double op2);
327 fixFpDFpSDest(FPSCR fpscr, double val)
331 if (std::isnan(val)) {
332 uint64_t valBits = fpToBits(val);
338 float mid = fixDest(fpscr.fz, fpscr.dn, (float)val, op1);
345 __asm__ __volatile__("" : "=m" (val) : "m" (val));
349 temp = val;
363 fixFpSFpDDest(FPSCR fpscr, float val)
367 if (std::isnan(val)) {
368 uint32_t valBits = fpToBits(val);
374 double mid = fixDest(fpscr.fz, fpscr.dn, (double)val, op1);
377 __asm__ __volatile__("" : "=m" (val) : "m" (val));
381 temp = val;
666 uint64_t val, uint8_t width, uint8_t imm)
670 val = (uint16_t)val;
672 val = (uint32_t)val;
679 return fixDivDest(flush, defaultNan, val / scale, (float)val, scale);
684 int64_t val, uint8_t width, uint8_t imm)
688 val = sext<16>(val & mask(16));
690 val = sext<32>(val & mask(32));
698 return fixDivDest(flush, defaultNan, val / scale, (float)val, scale);
704 uint64_t val, uint8_t width, uint8_t imm)
708 val = (uint16_t)val;
710 val = (uint32_t)val;
718 return fixDivDest(flush, defaultNan, val / scale, (double)val, scale);
723 int64_t val, uint8_t width, uint8_t imm)
727 val = sext<16>(val & mask(16));
729 val = sext<32>(val & mask(32));
737 return fixDivDest(flush, defaultNan, val / scale, (double)val, scale);