15 const cl_SF scale_float (const cl_SF& x, sintL delta)
18 // x=0.0 -> x als Ergebnis
19 // delta muß betragsmäßig <= SF_exp_high-SF_exp_low sein.
20 // Neues SF mit um delta vergrößertem Exponenten bilden.
25 SF_decode(x, { return x; }, sign=,exp=,mant=);
28 { var uintL udelta = delta;
29 if (udelta <= (uintL)(SF_exp_high-SF_exp_low))
31 return encode_SF(sign,exp,mant);
34 { cl_error_floating_point_overflow(); }
38 { var uintL udelta = -delta;
39 if (udelta <= (uintL)(SF_exp_high-SF_exp_low))
41 return encode_SF(sign,exp,mant);
44 if (underflow_allowed())
45 { cl_error_floating_point_underflow(); }