double xatan(double arg) {
  double argsq, value;
  if (-.01 < arg && arg < .01)
    value = .89678597403663861959987488e3 / .89678597403663861962481162e3;
  else {
    argsq = arg * arg;
    value = ((((.161536412982230228262e2 * argsq + .26842548195503973794141e3) *
                   argsq +
               .11530293515404850115428136e4) *
                  argsq +
              .178040631643319697105464587e4) *
                 argsq +
             .89678597403663861959987488e3);
    value = value / (((((argsq + .5895697050844462222791e2) * argsq +
                        .536265374031215315104235e3) *
                           argsq +
                       .16667838148816337184521798e4) *
                          argsq +
                      .207933497444540981287275926e4) *
                         argsq +
                     .89678597403663861962481162e3);
  }
  return value * arg;
}


x86 assembly (clang, -O0):
<xatan>:
push   %rbp
mov    %rsp,%rbp
movsd  %xmm0,-0x8(%rbp)
movsd  -0x8(%rbp),%xmm0
movsd  0xeea(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    1145 <xatan+0x45>
movsd  0xee0(%rip),%xmm0
ucomisd -0x8(%rbp),%xmm0
jbe    1145 <xatan+0x45>
movsd  0xf1d(%rip),%xmm0
movsd  %xmm0,-0x18(%rbp)
jmp    1224 <xatan+0x124>
movsd  -0x8(%rbp),%xmm0
mulsd  -0x8(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
movsd  -0x10(%rbp),%xmm0
movsd  0xee7(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0xee3(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0xebe(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0xea1(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0xe64(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x18(%rbp)
movsd  -0x18(%rbp),%xmm0
movsd  0xe6e(%rip),%xmm1
addsd  -0x10(%rbp),%xmm1
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
movsd  0xe50(%rip),%xmm2
addsd  %xmm2,%xmm1
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
movsd  0xe33(%rip),%xmm2
addsd  %xmm2,%xmm1
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
movsd  0xe16(%rip),%xmm2
addsd  %xmm2,%xmm1
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
movsd  0xdf9(%rip),%xmm2
addsd  %xmm2,%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x18(%rbp)
movsd  -0x18(%rbp),%xmm0
mulsd  -0x8(%rbp),%xmm0
pop    %rbp
ret

x86 assembly (clang, -O2):
<xatan>:
ucomisd 0xef8(%rip),%xmm0
jbe    1122 <xatan+0x22>
movsd  0xefe(%rip),%xmm1
ucomisd %xmm0,%xmm1
jbe    1122 <xatan+0x22>
movsd  0xee8(%rip),%xmm1
jmp    118a <xatan+0x8a>
movapd %xmm0,%xmm2
mulsd  %xmm0,%xmm2
movsd  0xee6(%rip),%xmm1
addsd  %xmm2,%xmm1
movapd %xmm2,%xmm3
unpcklpd %xmm1,%xmm3
movapd 0xeda(%rip),%xmm1
unpcklpd %xmm2,%xmm1
mulpd  %xmm3,%xmm1
addpd  0xeda(%rip),%xmm1
unpcklpd %xmm2,%xmm2
mulpd  %xmm2,%xmm1
addpd  0xeda(%rip),%xmm1
mulpd  %xmm2,%xmm1
addpd  0xede(%rip),%xmm1
mulpd  %xmm2,%xmm1
addpd  0xee2(%rip),%xmm1
movapd %xmm1,%xmm2
unpckhpd %xmm1,%xmm2
divsd  %xmm2,%xmm1
mulsd  %xmm0,%xmm1
movapd %xmm1,%xmm0
ret

LLVM IR (-O0):
define double @xatan(double %0) {
%2 = alloca double
%3 = alloca double
%4 = alloca double
store double %0, double* %2
%5 = load double, double* %2
%6 = fcmp olt double -1.000000e-02, %5
br i1 %6, label %7, label %11
7: ; preds = %1
%8 = load double, double* %2
%9 = fcmp olt double %8, 1.000000e-02
br i1 %9, label %10, label %11
10: ; preds = %7
store double 1.000000e+00, double* %4
br label %35
11: ; preds = %7, %1
%12 = load double, double* %2
%13 = load double, double* %2
%14 = fmul double %12, %13
store double %14, double* %3
%15 = load double, double* %3
%16 = call double @llvm.fmuladd.f64(double 0x40302755093F2ED0, double %15, double 0x4070C6CEC62A9EF1)
%17 = load double, double* %3
%18 = call double @llvm.fmuladd.f64(double %16, double %17, double 0x4092041E0E5489E2)
%19 = load double, double* %3
%20 = call double @llvm.fmuladd.f64(double %18, double %19, double 0x409BD1A0116A41A2)
%21 = load double, double* %3
%22 = call double @llvm.fmuladd.f64(double %20, double %21, double 0x408C0649ACC176F2)
store double %22, double* %4
%23 = load double, double* %4
%24 = load double, double* %3
%25 = fadd double %24, 0x404D7A7E027680C9
%26 = load double, double* %3
%27 = call double @llvm.fmuladd.f64(double %25, double %26, double 0x4080C21F7C6B8A38)
%28 = load double, double* %3
%29 = call double @llvm.fmuladd.f64(double %27, double %28, double 0x409A0B22A05E4AF1)
%30 = load double, double* %3
%31 = call double @llvm.fmuladd.f64(double %29, double %30, double 0x40A03EAB81C54010)
%32 = load double, double* %3
%33 = call double @llvm.fmuladd.f64(double %31, double %32, double 0x408C0649ACC176F2)
%34 = fdiv double %23, %33
store double %34, double* %4
br label %35
35: ; preds = %11, %10
%36 = load double, double* %4
%37 = load double, double* %2
%38 = fmul double %36, %37
ret double %38
}

LLVM IR (-O2):
define double @xatan(double %0) {
%2 = fcmp ogt double %0, -1.000000e-02
%3 = fcmp olt double %0, 1.000000e-02
%4 = and i1 %2, %3
br i1 %4, label %19, label %5
5: ; preds = %1
%6 = fmul double %0, %0
%7 = fadd double %6, 0x404D7A7E027680C9
%8 = insertelement <2 x double> poison, double %6, i64 0
%9 = insertelement <2 x double> %8, double %7, i64 1
%10 = insertelement <2 x double> <double 0x40302755093F2ED0, double poison>, double %6, i64 1
%11 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %9, <2 x double> %10, <2 x double> <double 0x4070C6CEC62A9EF1, double 0x4080C21F7C6B8A38>)
%12 = shufflevector <2 x double> %8, <2 x double> poison, <2 x i32> zeroinitializer
%13 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %11, <2 x double> %12, <2 x double> <double 0x4092041E0E5489E2, double 0x409A0B22A05E4AF1>)
%14 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %13, <2 x double> %12, <2 x double> <double 0x409BD1A0116A41A2, double 0x40A03EAB81C54010>)
%15 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %14, <2 x double> %12, <2 x double> <double 0x408C0649ACC176F2, double 0x408C0649ACC176F2>)
%16 = extractelement <2 x double> %15, i64 0
%17 = extractelement <2 x double> %15, i64 1
%18 = fdiv double %16, %17
br label %19
19: ; preds = %1, %5
%20 = phi double [ %18, %5 ], [ 1.000000e+00, %1 ]
%21 = fmul double %20, %0
ret double %21
}