fx_pow: x^y – NaN when x or y is NaN, 1 for y == 0, 0 for x <= 0, x for y == 1, else
2^(y log2 x) on the x87 unit with 64-bit precision and round to nearest (fyl2x, then
frndint / f2xm1 / fscale), rounded once to double [fx_lut.s fx_pow]
2^x as rz_exp2 computes it (|x| < 2^30): i = cvtsd2si x, f = x - i (SSE), then on the x87
unit f2xm1 f, + 1 (faddp: rounded by the process’s precision control, as in the
assembly), fscale by i, rounded to double [PaintCraft dlg_rotzoom.s rz_exp2]