static double const g6 = +1.584913968010406737453818113376196281e-10; static double const h0 = -26.341948828084285793999800429353262077276; static double const k0 = -1.08806277220235986965689107689742933423e9; static double const k1 = +7.93079555301218967065588825984794326999e7; static double const k2 = +4.37062943795503065408953946441919908735e6; static double const k3 = -150971.41825478552924834006430076220180011; static double const k4 = +6978.7832873060107784538212995884003951306; double sin9(double x) { double xp = g6 * x; double y = x * x + h0; double y2 = y * y; //__asm__("" : "+x" (y), "+x" (y2), "+x" (xp)); return (k0 + k1 * y + y2 * (k2 + k3 * y + y2 * (k4 + y2))) * xp; }