scale2
FillRoundRect(scale2(0, 9, 0, 3, Bounds()), 4, 4);
FillRoundRect(scale2(2, 7, 3, 6, Bounds()), 2, 2);
StrokeRoundRect(scale2(2, 7, 3, 6, Bounds()), 2, 2);
StrokeRoundRect(scale2(0, 9, 0, 3, Bounds()), 4, 4);
FillRect(scale2(1, 8, 1, 2, Bounds()));
BRect outerShape = scale2(2, 7, 2, 6, Bounds());
FillRect(scale2(3, 4, 4, 5, Bounds()));
FillRect(scale2(5, 6, 4, 5, Bounds()));
double x, y, exp_x, scale1, scale2;
INSERT_WORDS(scale2, (0x3ff + half_expt) << 20, 0);
return CMPLX(cos(y) * exp_x * scale1 * scale2, sin(y) * exp_x * scale1 * scale2);
float x, y, exp_x, scale1, scale2;
SET_FLOAT_WORD(scale2, (0x7f + half_expt) << 23);
return CMPLXF(cosf(y) * exp_x * scale1 * scale2,
sinf(y) * exp_x * scale1 * scale2);