double deltaT(int year, int month) {
  double y, m, u;
  m = (double)month;
  y = year + (m - 0.5) / 12.0;
  if (year < -500) {
    u = (year - 1820) / 100.0;
    return -20 + 32 * u * u;
  } else if (year < 500) {
    u = y / 100.0;
    return 10583.6 +
           u * (-1014.41 + u * (33.78311 + u * (-5.952053 +
                                                u * (-0.1798452 +
                                                     u * (0.022174192 +
                                                          u * 0.0090316521)))));
  } else if (year < 1600) {
    u = (y - 1000) / 100.0;
    return 1574.2 +
           u * (-556.01 +
                u * (71.23472 + u * (0.319781 + u * (-0.8503463 +
                                                     u * (-0.005050998 +
                                                          u * 0.0083572073)))));
  } else if (year < 1700) {
    u = y - 1600;
    return 120 + u * (-0.9808 + u * (-0.01532 + u / 7129));
  } else if (year < 1800) {
    u = y - 1700;
    return 8.83 +
           u * (0.1603 + u * (-0.0059285 + u * (0.00013336 + u / -1174000)));
  } else if (year < 1860) {
    u = y - 1800;
    return 13.72 +
           u * (-0.332447 +
                u * (0.0068612 +
                     u * (0.0041116 +
                          u * (-0.00037436 + u * (0.0000121272 +
                                                  u * (-0.0000001699 +
                                                       u * 0.000000000875))))));
  } else if (year < 1900) {
    u = y - 1860;
    return 7.62 +
           u * (0.5737 + u * (-0.251754 + u * (0.01680668 + u * (-0.0004473624 +
                                                                 u / 233174))));
  } else if (year < 1920) {
    u = y - 1900;
    return -2.79 +
           u * (1.494119 + u * (-0.0598939 + u * (0.0061966 + u * -0.000197)));
  } else if (year < 1941) {
    u = y - 1920;
    return 21.20 + u * (0.84493 + u * (-0.076100 + u * 0.0020936));
  } else if (year < 1961) {
    u = y - 1950;
    return 29.07 + u * (0.407 + u * (-1.0 / 233 + u / 2547));
  } else if (year < 1986) {
    u = y - 1975;
    return 45.45 + u * (1.067 + u * (-1.0 / 260 + u / -718));
  } else if (year < 2005) {
    u = y - 2000;
    return 63.86 +
           u * (0.3345 +
                u * (-0.060374 +
                     u * (0.0017275 + u * (0.000651814 + u * 0.00002373599))));
  } else if (year < 2050) {
    u = y - 2000;
    return 62.92 + u * (0.32217 + u * 0.005589);
  } else if (year < 2150) {
    u = (y - 1820.0) / 100.0;
    return -20 + 32 * u * u - 0.5628 * (2150 - y);
  } else {
    u = (y - 1820.0) / 100.0;
    return -20 + 32 * u * u;
  }
}


x86 assembly (clang, -O0):
<deltaT>:
push   %rbp
mov    %rsp,%rbp
mov    %edi,-0xc(%rbp)
mov    %esi,-0x10(%rbp)
cvtsi2sdl -0x10(%rbp),%xmm0
movsd  %xmm0,-0x20(%rbp)
cvtsi2sdl -0xc(%rbp),%xmm0
movsd  -0x20(%rbp),%xmm1
movsd  0xee2(%rip),%xmm2
subsd  %xmm2,%xmm1
movsd  0xece(%rip),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x18(%rbp)
cmpl   $0xfffffe0c,-0xc(%rbp)
jge    1195 <deltaT+0x95>
mov    -0xc(%rbp),%eax
sub    $0x71c,%eax
cvtsi2sd %eax,%xmm0
movsd  0xec0(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  0xea7(%rip),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0xe89(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x1f4,-0xc(%rbp)
jge    1248 <deltaT+0x148>
movsd  -0x18(%rbp),%xmm0
movsd  0xe71(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm3
movsd  -0x28(%rbp),%xmm4
movsd  -0x28(%rbp),%xmm5
movsd  0x109a(%rip),%xmm6
mulsd  %xmm6,%xmm5
movsd  0x1096(%rip),%xmm6
addsd  %xmm6,%xmm5
mulsd  %xmm5,%xmm4
movsd  0x1076(%rip),%xmm5
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
movsd  0x105e(%rip),%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0x1046(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0x102e(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0x1016(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x640,-0xc(%rbp)
jge    1307 <deltaT+0x207>
movsd  -0x18(%rbp),%xmm0
movsd  0xfe6(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  0xdb2(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm3
movsd  -0x28(%rbp),%xmm4
movsd  -0x28(%rbp),%xmm5
movsd  0xf9b(%rip),%xmm6
mulsd  %xmm6,%xmm5
movsd  0xf97(%rip),%xmm6
addsd  %xmm6,%xmm5
mulsd  %xmm5,%xmm4
movsd  0xf77(%rip),%xmm5
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
movsd  0xf5f(%rip),%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0xf47(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xf2f(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xf17(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x6a4,-0xc(%rbp)
jge    137b <deltaT+0x27b>
movsd  -0x18(%rbp),%xmm0
movsd  0xee7(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm3
movsd  0xebf(%rip),%xmm2
divsd  %xmm2,%xmm3
movsd  0xeab(%rip),%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xe93(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xe7b(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x708,-0xc(%rbp)
jge    1404 <deltaT+0x304>
movsd  -0x18(%rbp),%xmm0
movsd  0xe4b(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm4
movsd  0xe1e(%rip),%xmm3
divsd  %xmm3,%xmm4
movsd  0xe0a(%rip),%xmm3
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0xdf2(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xdda(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xdc2(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x744,-0xc(%rbp)
jge    14cc <deltaT+0x3cc>
movsd  -0x18(%rbp),%xmm0
movsd  0xd92(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm3
movsd  -0x28(%rbp),%xmm4
movsd  -0x28(%rbp),%xmm5
movsd  -0x28(%rbp),%xmm6
movsd  0xd4e(%rip),%xmm7
mulsd  %xmm7,%xmm6
movsd  0xd4a(%rip),%xmm7
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm5
movsd  0xd2a(%rip),%xmm6
addsd  %xmm6,%xmm5
mulsd  %xmm5,%xmm4
movsd  0xd12(%rip),%xmm5
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
movsd  0xcfa(%rip),%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0xce2(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xcca(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xcb2(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x76c,-0xc(%rbp)
jge    156a <deltaT+0x46a>
movsd  -0x18(%rbp),%xmm0
movsd  0xc82(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm3
movsd  -0x28(%rbp),%xmm5
movsd  0xc50(%rip),%xmm4
divsd  %xmm4,%xmm5
movsd  0xc3c(%rip),%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
movsd  0xc24(%rip),%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0xc0c(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xbf4(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xbdc(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x780,-0xc(%rbp)
jge    15f3 <deltaT+0x4f3>
movsd  -0x18(%rbp),%xmm0
movsd  0xbac(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm3
movsd  0xb77(%rip),%xmm4
mulsd  %xmm4,%xmm3
movsd  0xb73(%rip),%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0xb53(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xb3b(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xb23(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x795,-0xc(%rbp)
jge    1667 <deltaT+0x567>
movsd  -0x18(%rbp),%xmm0
movsd  0xaf3(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  0xac3(%rip),%xmm3
mulsd  %xmm3,%xmm2
movsd  0xabf(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xa9f(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0xa87(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x7a9,-0xc(%rbp)
jge    16db <deltaT+0x5db>
movsd  -0x18(%rbp),%xmm0
movsd  0xa57(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm3
movsd  0xa2f(%rip),%xmm2
divsd  %xmm2,%xmm3
movsd  0xa1b(%rip),%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0xa03(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0x9eb(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x7c2,-0xc(%rbp)
jge    174f <deltaT+0x64f>
movsd  -0x18(%rbp),%xmm0
movsd  0x9bb(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm3
movsd  0x993(%rip),%xmm2
divsd  %xmm2,%xmm3
movsd  0x97f(%rip),%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0x967(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0x94f(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x7d5,-0xc(%rbp)
jge    17ed <deltaT+0x6ed>
movsd  -0x18(%rbp),%xmm0
movsd  0x8ef(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  -0x28(%rbp),%xmm3
movsd  -0x28(%rbp),%xmm4
movsd  0x8ed(%rip),%xmm5
mulsd  %xmm5,%xmm4
movsd  0x8e9(%rip),%xmm5
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
movsd  0x8c9(%rip),%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm2
movsd  0x8b1(%rip),%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
movsd  0x899(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0x881(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x802,-0xc(%rbp)
jge    184c <deltaT+0x74c>
movsd  -0x18(%rbp),%xmm0
movsd  0x851(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
movsd  0x826(%rip),%xmm2
mulsd  %xmm2,%xmm1
movsd  0x822(%rip),%xmm2
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  0x802(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
cmpl   $0x866,-0xc(%rbp)
jge    18c4 <deltaT+0x7c4>
movsd  -0x18(%rbp),%xmm0
movsd  0x7c2(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  0x7ae(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  0x795(%rip),%xmm1
mulsd  -0x28(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm0
mulsd  %xmm0,%xmm1
movsd  0x777(%rip),%xmm0
addsd  %xmm0,%xmm1
movsd  0x793(%rip),%xmm0
subsd  -0x18(%rbp),%xmm0
movsd  0x77e(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    190d <deltaT+0x80d>
movsd  -0x18(%rbp),%xmm0
movsd  0x757(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  0x743(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  0x72a(%rip),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x70c(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
movsd  -0x8(%rbp),%xmm0
pop    %rbp
ret

x86 assembly (clang, -O2):
<deltaT>:
cmp    $0xfffffe0b,%edi
jg     1133 <deltaT+0x33>
add    $0xfffff8e4,%edi
cvtsi2sd %edi,%xmm1
divsd  0xefe(%rip),%xmm1
movsd  0xefe(%rip),%xmm0
mulsd  %xmm1,%xmm0
mulsd  %xmm1,%xmm0
addsd  0xef6(%rip),%xmm0
ret
cvtsi2sd %esi,%xmm2
cvtsi2sd %edi,%xmm0
addsd  0xebd(%rip),%xmm2
divsd  0xebd(%rip),%xmm2
addsd  %xmm0,%xmm2
cmp    $0x1f3,%edi
jg     11b0 <deltaT+0xb0>
divsd  0xeb9(%rip),%xmm2
movsd  0x10e9(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x10e5(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x10e1(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x10dd(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x10d9(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x10d5(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x10d1(%rip),%xmm0
ret
cmp    $0x63f,%edi
ja     1219 <deltaT+0x119>
addsd  0x1050(%rip),%xmm2
divsd  0xe50(%rip),%xmm2
movsd  0x1048(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x1044(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x1040(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x103c(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x1038(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x1034(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x1030(%rip),%xmm0
ret
cmp    $0x6a3,%edi
ja     1256 <deltaT+0x156>
addsd  0xfbf(%rip),%xmm2
movapd %xmm2,%xmm0
divsd  0xfbb(%rip),%xmm0
addsd  0xfbb(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xfb7(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xfb3(%rip),%xmm0
ret
cmp    $0x707,%edi
ja     129f <deltaT+0x19f>
addsd  0xf52(%rip),%xmm2
movapd %xmm2,%xmm0
divsd  0xf4e(%rip),%xmm0
addsd  0xf4e(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xf4a(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xf46(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xf42(%rip),%xmm0
ret
cmp    $0x743,%edi
ja     130c <deltaT+0x20c>
addsd  0xec1(%rip),%xmm2
movsd  0xec1(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xebd(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xeb9(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xeb5(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xeb1(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xead(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xea9(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xea5(%rip),%xmm0
ret
cmp    $0x76b,%edi
ja     1361 <deltaT+0x261>
addsd  0xe1c(%rip),%xmm2
movapd %xmm2,%xmm0
divsd  0xe18(%rip),%xmm0
addsd  0xe18(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xe14(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xe10(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xe0c(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xe08(%rip),%xmm0
ret
cmp    $0x77f,%edi
ja     13aa <deltaT+0x2aa>
addsd  0xd97(%rip),%xmm2
movsd  0xd97(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd93(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd8f(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd8b(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd87(%rip),%xmm0
ret
cmp    $0x794,%edi
ja     13e7 <deltaT+0x2e7>
addsd  0xd26(%rip),%xmm2
movsd  0xd26(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd22(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd1e(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xd1a(%rip),%xmm0
ret
cmp    $0x7a8,%edi
ja     1424 <deltaT+0x324>
addsd  0xcc1(%rip),%xmm2
movapd %xmm2,%xmm0
divsd  0xcbd(%rip),%xmm0
addsd  0xcbd(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xcb9(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xcb5(%rip),%xmm0
ret
cmp    $0x7c1,%edi
ja     1461 <deltaT+0x361>
addsd  0xc5c(%rip),%xmm2
movapd %xmm2,%xmm0
divsd  0xc58(%rip),%xmm0
addsd  0xc58(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xc54(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xc50(%rip),%xmm0
ret
cmp    $0x7d4,%edi
ja     14b6 <deltaT+0x3b6>
addsd  0xbcf(%rip),%xmm2
movsd  0xbe7(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xbe3(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xbdf(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xbdb(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xbd7(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xbd3(%rip),%xmm0
ret
cmp    $0x801,%edi
ja     14e7 <deltaT+0x3e7>
addsd  0xb7a(%rip),%xmm2
movsd  0xb7a(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xb76(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0xb72(%rip),%xmm0
ret
movsd  0xb21(%rip),%xmm1
addsd  %xmm2,%xmm1
divsd  0xb1d(%rip),%xmm1
movsd  0xb1d(%rip),%xmm0
mulsd  %xmm1,%xmm0
mulsd  %xmm1,%xmm0
addsd  0xb15(%rip),%xmm0
cmp    $0x865,%edi
ja     1537 <deltaT+0x437>
movsd  0xb0d(%rip),%xmm1
subsd  %xmm2,%xmm1
mulsd  0xb09(%rip),%xmm1
addsd  %xmm0,%xmm1
movapd %xmm1,%xmm0
ret

LLVM IR (-O0):
define double @deltaT(i32 %0, i32 %1) {
%3 = alloca double
%4 = alloca i32
%5 = alloca i32
%6 = alloca double
%7 = alloca double
%8 = alloca double
store i32 %0, i32* %4
store i32 %1, i32* %5
%9 = load i32, i32* %5
%10 = sitofp i32 %9 to double
store double %10, double* %7
%11 = load i32, i32* %4
%12 = sitofp i32 %11 to double
%13 = load double, double* %7
%14 = fsub double %13, 5.000000e-01
%15 = fdiv double %14, 1.200000e+01
%16 = fadd double %12, %15
store double %16, double* %6
%17 = load i32, i32* %4
%18 = icmp slt i32 %17, -500
br i1 %18, label %19, label %28
19: ; preds = %2
%20 = load i32, i32* %4
%21 = sub nsw i32 %20, 1820
%22 = sitofp i32 %21 to double
%23 = fdiv double %22, 1.000000e+02
store double %23, double* %8
%24 = load double, double* %8
%25 = fmul double 3.200000e+01, %24
%26 = load double, double* %8
%27 = call double @llvm.fmuladd.f64(double %25, double %26, double -2.000000e+01)
store double %27, double* %3
br label %230
28: ; preds = %2
%29 = load i32, i32* %4
%30 = icmp slt i32 %29, 500
br i1 %30, label %31, label %46
31: ; preds = %28
%32 = load double, double* %6
%33 = fdiv double %32, 1.000000e+02
store double %33, double* %8
%34 = load double, double* %8
%35 = load double, double* %8
%36 = load double, double* %8
%37 = load double, double* %8
%38 = load double, double* %8
%39 = load double, double* %8
%40 = call double @llvm.fmuladd.f64(double %39, double 0x3F827F2FD32FD1FB, double 0x3F96B4D4D5D22675)
%41 = call double @llvm.fmuladd.f64(double %38, double %40, double 0xBFC7052AE22BD9A3)
%42 = call double @llvm.fmuladd.f64(double %37, double %41, double 0xC017CEE6FB4C3C19)
%43 = call double @llvm.fmuladd.f64(double %36, double %42, double 0x4040E43CF2CF95D5)
%44 = call double @llvm.fmuladd.f64(double %35, double %43, double -1.014410e+03)
%45 = call double @llvm.fmuladd.f64(double %34, double %44, double 1.058360e+04)
store double %45, double* %3
br label %230
46: ; preds = %28
%47 = load i32, i32* %4
%48 = icmp slt i32 %47, 1600
br i1 %48, label %49, label %65
49: ; preds = %46
%50 = load double, double* %6
%51 = fsub double %50, 1.000000e+03
%52 = fdiv double %51, 1.000000e+02
store double %52, double* %8
%53 = load double, double* %8
%54 = load double, double* %8
%55 = load double, double* %8
%56 = load double, double* %8
%57 = load double, double* %8
%58 = load double, double* %8
%59 = call double @llvm.fmuladd.f64(double %58, double 0x3F811D956050ACFF, double 0xBF74B05AF38DF91F)
%60 = call double @llvm.fmuladd.f64(double %57, double %59, double 0xBFEB36097198C990)
%61 = call double @llvm.fmuladd.f64(double %56, double %60, double 3.197810e-01)
%62 = call double @llvm.fmuladd.f64(double %55, double %61, double 0x4051CF05A708EDE5)
%63 = call double @llvm.fmuladd.f64(double %54, double %62, double -5.560100e+02)
%64 = call double @llvm.fmuladd.f64(double %53, double %63, double 1.574200e+03)
store double %64, double* %3
br label %230
65: ; preds = %46
%66 = load i32, i32* %4
%67 = icmp slt i32 %66, 1700
br i1 %67, label %68, label %78
68: ; preds = %65
%69 = load double, double* %6
%70 = fsub double %69, 1.600000e+03
store double %70, double* %8
%71 = load double, double* %8
%72 = load double, double* %8
%73 = load double, double* %8
%74 = fdiv double %73, 7.129000e+03
%75 = fadd double -1.532000e-02, %74
%76 = call double @llvm.fmuladd.f64(double %72, double %75, double -9.808000e-01)
%77 = call double @llvm.fmuladd.f64(double %71, double %76, double 1.200000e+02)
store double %77, double* %3
br label %230
78: ; preds = %65
%79 = load i32, i32* %4
%80 = icmp slt i32 %79, 1800
br i1 %80, label %81, label %93
81: ; preds = %78
%82 = load double, double* %6
%83 = fsub double %82, 1.700000e+03
store double %83, double* %8
%84 = load double, double* %8
%85 = load double, double* %8
%86 = load double, double* %8
%87 = load double, double* %8
%88 = fdiv double %87, -1.174000e+06
%89 = fadd double 1.333600e-04, %88
%90 = call double @llvm.fmuladd.f64(double %86, double %89, double -5.928500e-03)
%91 = call double @llvm.fmuladd.f64(double %85, double %90, double 1.603000e-01)
%92 = call double @llvm.fmuladd.f64(double %84, double %91, double 8.830000e+00)
store double %92, double* %3
br label %230
93: ; preds = %78
%94 = load i32, i32* %4
%95 = icmp slt i32 %94, 1860
br i1 %95, label %96, label %113
96: ; preds = %93
%97 = load double, double* %6
%98 = fsub double %97, 1.800000e+03
store double %98, double* %8
%99 = load double, double* %8
%100 = load double, double* %8
%101 = load double, double* %8
%102 = load double, double* %8
%103 = load double, double* %8
%104 = load double, double* %8
%105 = load double, double* %8
%106 = call double @llvm.fmuladd.f64(double %105, double 8.750000e-10, double -1.699000e-07)
%107 = call double @llvm.fmuladd.f64(double %104, double %106, double 1.212720e-05)
%108 = call double @llvm.fmuladd.f64(double %103, double %107, double -3.743600e-04)
%109 = call double @llvm.fmuladd.f64(double %102, double %108, double 4.111600e-03)
%110 = call double @llvm.fmuladd.f64(double %101, double %109, double 6.861200e-03)
%111 = call double @llvm.fmuladd.f64(double %100, double %110, double -3.324470e-01)
%112 = call double @llvm.fmuladd.f64(double %99, double %111, double 1.372000e+01)
store double %112, double* %3
br label %230
113: ; preds = %93
%114 = load i32, i32* %4
%115 = icmp slt i32 %114, 1900
br i1 %115, label %116, label %130
116: ; preds = %113
%117 = load double, double* %6
%118 = fsub double %117, 1.860000e+03
store double %118, double* %8
%119 = load double, double* %8
%120 = load double, double* %8
%121 = load double, double* %8
%122 = load double, double* %8
%123 = load double, double* %8
%124 = fdiv double %123, 2.331740e+05
%125 = fadd double 0xBF3D517EE0A13922, %124
%126 = call double @llvm.fmuladd.f64(double %122, double %125, double 0x3F9135C533D13DCB)
%127 = call double @llvm.fmuladd.f64(double %121, double %126, double -2.517540e-01)
%128 = call double @llvm.fmuladd.f64(double %120, double %127, double 5.737000e-01)
%129 = call double @llvm.fmuladd.f64(double %119, double %128, double 7.620000e+00)
store double %129, double* %3
br label %230
130: ; preds = %113
%131 = load i32, i32* %4
%132 = icmp slt i32 %131, 1920
br i1 %132, label %133, label %144
133: ; preds = %130
%134 = load double, double* %6
%135 = fsub double %134, 1.900000e+03
store double %135, double* %8
%136 = load double, double* %8
%137 = load double, double* %8
%138 = load double, double* %8
%139 = load double, double* %8
%140 = call double @llvm.fmuladd.f64(double %139, double -1.970000e-04, double 6.196600e-03)
%141 = call double @llvm.fmuladd.f64(double %138, double %140, double -5.989390e-02)
%142 = call double @llvm.fmuladd.f64(double %137, double %141, double 0x3FF7E7E9531550CA)
%143 = call double @llvm.fmuladd.f64(double %136, double %142, double -2.790000e+00)
store double %143, double* %3
br label %230
144: ; preds = %130
%145 = load i32, i32* %4
%146 = icmp slt i32 %145, 1941
br i1 %146, label %147, label %156
147: ; preds = %144
%148 = load double, double* %6
%149 = fsub double %148, 1.920000e+03
store double %149, double* %8
%150 = load double, double* %8
%151 = load double, double* %8
%152 = load double, double* %8
%153 = call double @llvm.fmuladd.f64(double %152, double 2.093600e-03, double -7.610000e-02)
%154 = call double @llvm.fmuladd.f64(double %151, double %153, double 0x3FEB09AAA3AD18D2)
%155 = call double @llvm.fmuladd.f64(double %150, double %154, double 2.120000e+01)
store double %155, double* %3
br label %230
156: ; preds = %144
%157 = load i32, i32* %4
%158 = icmp slt i32 %157, 1961
br i1 %158, label %159, label %169
159: ; preds = %156
%160 = load double, double* %6
%161 = fsub double %160, 1.950000e+03
store double %161, double* %8
%162 = load double, double* %8
%163 = load double, double* %8
%164 = load double, double* %8
%165 = fdiv double %164, 2.547000e+03
%166 = fadd double 0xBF719453808CA29C, %165
%167 = call double @llvm.fmuladd.f64(double %163, double %166, double 4.070000e-01)
%168 = call double @llvm.fmuladd.f64(double %162, double %167, double 2.907000e+01)
store double %168, double* %3
br label %230
169: ; preds = %156
%170 = load i32, i32* %4
%171 = icmp slt i32 %170, 1986
br i1 %171, label %172, label %182
172: ; preds = %169
%173 = load double, double* %6
%174 = fsub double %173, 1.975000e+03
store double %174, double* %8
%175 = load double, double* %8
%176 = load double, double* %8
%177 = load double, double* %8
%178 = fdiv double %177, -7.180000e+02
%179 = fadd double 0xBF6F81F81F81F820, %178
%180 = call double @llvm.fmuladd.f64(double %176, double %179, double 1.067000e+00)
%181 = call double @llvm.fmuladd.f64(double %175, double %180, double 4.545000e+01)
store double %181, double* %3
br label %230
182: ; preds = %169
%183 = load i32, i32* %4
%184 = icmp slt i32 %183, 2005
br i1 %184, label %185, label %198
185: ; preds = %182
%186 = load double, double* %6
%187 = fsub double %186, 2.000000e+03
store double %187, double* %8
%188 = load double, double* %8
%189 = load double, double* %8
%190 = load double, double* %8
%191 = load double, double* %8
%192 = load double, double* %8
%193 = call double @llvm.fmuladd.f64(double %192, double 0x3EF8E394D0074513, double 6.518140e-04)
%194 = call double @llvm.fmuladd.f64(double %191, double %193, double 1.727500e-03)
%195 = call double @llvm.fmuladd.f64(double %190, double %194, double -6.037400e-02)
%196 = call double @llvm.fmuladd.f64(double %189, double %195, double 3.345000e-01)
%197 = call double @llvm.fmuladd.f64(double %188, double %196, double 6.386000e+01)
store double %197, double* %3
br label %230
198: ; preds = %182
%199 = load i32, i32* %4
%200 = icmp slt i32 %199, 2050
br i1 %200, label %201, label %208
201: ; preds = %198
%202 = load double, double* %6
%203 = fsub double %202, 2.000000e+03
store double %203, double* %8
%204 = load double, double* %8
%205 = load double, double* %8
%206 = call double @llvm.fmuladd.f64(double %205, double 5.589000e-03, double 3.221700e-01)
%207 = call double @llvm.fmuladd.f64(double %204, double %206, double 6.292000e+01)
store double %207, double* %3
br label %230
208: ; preds = %198
%209 = load i32, i32* %4
%210 = icmp slt i32 %209, 2150
br i1 %210, label %211, label %222
211: ; preds = %208
%212 = load double, double* %6
%213 = fsub double %212, 1.820000e+03
%214 = fdiv double %213, 1.000000e+02
store double %214, double* %8
%215 = load double, double* %8
%216 = fmul double 3.200000e+01, %215
%217 = load double, double* %8
%218 = call double @llvm.fmuladd.f64(double %216, double %217, double -2.000000e+01)
%219 = load double, double* %6
%220 = fsub double 2.150000e+03, %219
%221 = call double @llvm.fmuladd.f64(double -5.628000e-01, double %220, double %218)
store double %221, double* %3
br label %230
222: ; preds = %208
%223 = load double, double* %6
%224 = fsub double %223, 1.820000e+03
%225 = fdiv double %224, 1.000000e+02
store double %225, double* %8
%226 = load double, double* %8
%227 = fmul double 3.200000e+01, %226
%228 = load double, double* %8
%229 = call double @llvm.fmuladd.f64(double %227, double %228, double -2.000000e+01)
store double %229, double* %3
br label %230
230: ; preds = %222, %211, %201, %185, %172, %159, %147, %133, %116, %96, %81, %68, %49, %31, %19
%231 = load double, double* %3
ret double %231
}

LLVM IR (-O2):
define double @deltaT(i32 %0, i32 %1) {
%3 = sitofp i32 %1 to double
%4 = sitofp i32 %0 to double
%5 = fadd double %3, -5.000000e-01
%6 = fdiv double %5, 1.200000e+01
%7 = fadd double %6, %4
%8 = icmp slt i32 %0, -500
br i1 %8, label %9, label %15
9: ; preds = %2
%10 = add nsw i32 %0, -1820
%11 = sitofp i32 %10 to double
%12 = fdiv double %11, 1.000000e+02
%13 = fmul double %12, 3.200000e+01
%14 = tail call double @llvm.fmuladd.f64(double %13, double %12, double -2.000000e+01)
br label %129
15: ; preds = %2
%16 = icmp slt i32 %0, 500
br i1 %16, label %17, label %25
17: ; preds = %15
%18 = fdiv double %7, 1.000000e+02
%19 = tail call double @llvm.fmuladd.f64(double %18, double 0x3F827F2FD32FD1FB, double 0x3F96B4D4D5D22675)
%20 = tail call double @llvm.fmuladd.f64(double %18, double %19, double 0xBFC7052AE22BD9A3)
%21 = tail call double @llvm.fmuladd.f64(double %18, double %20, double 0xC017CEE6FB4C3C19)
%22 = tail call double @llvm.fmuladd.f64(double %18, double %21, double 0x4040E43CF2CF95D5)
%23 = tail call double @llvm.fmuladd.f64(double %18, double %22, double -1.014410e+03)
%24 = tail call double @llvm.fmuladd.f64(double %18, double %23, double 1.058360e+04)
br label %129
25: ; preds = %15
%26 = icmp ult i32 %0, 1600
br i1 %26, label %27, label %36
27: ; preds = %25
%28 = fadd double %7, -1.000000e+03
%29 = fdiv double %28, 1.000000e+02
%30 = tail call double @llvm.fmuladd.f64(double %29, double 0x3F811D956050ACFF, double 0xBF74B05AF38DF91F)
%31 = tail call double @llvm.fmuladd.f64(double %29, double %30, double 0xBFEB36097198C990)
%32 = tail call double @llvm.fmuladd.f64(double %29, double %31, double 3.197810e-01)
%33 = tail call double @llvm.fmuladd.f64(double %29, double %32, double 0x4051CF05A708EDE5)
%34 = tail call double @llvm.fmuladd.f64(double %29, double %33, double -5.560100e+02)
%35 = tail call double @llvm.fmuladd.f64(double %29, double %34, double 1.574200e+03)
br label %129
36: ; preds = %25
%37 = icmp ult i32 %0, 1700
br i1 %37, label %38, label %44
38: ; preds = %36
%39 = fadd double %7, -1.600000e+03
%40 = fdiv double %39, 7.129000e+03
%41 = fadd double %40, -1.532000e-02
%42 = tail call double @llvm.fmuladd.f64(double %39, double %41, double -9.808000e-01)
%43 = tail call double @llvm.fmuladd.f64(double %39, double %42, double 1.200000e+02)
br label %129
44: ; preds = %36
%45 = icmp ult i32 %0, 1800
br i1 %45, label %46, label %53
46: ; preds = %44
%47 = fadd double %7, -1.700000e+03
%48 = fdiv double %47, 1.174000e+06
%49 = fsub double 1.333600e-04, %48
%50 = tail call double @llvm.fmuladd.f64(double %47, double %49, double -5.928500e-03)
%51 = tail call double @llvm.fmuladd.f64(double %47, double %50, double 1.603000e-01)
%52 = tail call double @llvm.fmuladd.f64(double %47, double %51, double 8.830000e+00)
br label %129
53: ; preds = %44
%54 = icmp ult i32 %0, 1860
br i1 %54, label %55, label %64
55: ; preds = %53
%56 = fadd double %7, -1.800000e+03
%57 = tail call double @llvm.fmuladd.f64(double %56, double 8.750000e-10, double -1.699000e-07)
%58 = tail call double @llvm.fmuladd.f64(double %56, double %57, double 1.212720e-05)
%59 = tail call double @llvm.fmuladd.f64(double %56, double %58, double -3.743600e-04)
%60 = tail call double @llvm.fmuladd.f64(double %56, double %59, double 4.111600e-03)
%61 = tail call double @llvm.fmuladd.f64(double %56, double %60, double 6.861200e-03)
%62 = tail call double @llvm.fmuladd.f64(double %56, double %61, double -3.324470e-01)
%63 = tail call double @llvm.fmuladd.f64(double %56, double %62, double 1.372000e+01)
br label %129
64: ; preds = %53
%65 = icmp ult i32 %0, 1900
br i1 %65, label %66, label %74
66: ; preds = %64
%67 = fadd double %7, -1.860000e+03
%68 = fdiv double %67, 2.331740e+05
%69 = fadd double %68, 0xBF3D517EE0A13922
%70 = tail call double @llvm.fmuladd.f64(double %67, double %69, double 0x3F9135C533D13DCB)
%71 = tail call double @llvm.fmuladd.f64(double %67, double %70, double -2.517540e-01)
%72 = tail call double @llvm.fmuladd.f64(double %67, double %71, double 5.737000e-01)
%73 = tail call double @llvm.fmuladd.f64(double %67, double %72, double 7.620000e+00)
br label %129
74: ; preds = %64
%75 = icmp ult i32 %0, 1920
br i1 %75, label %76, label %82
76: ; preds = %74
%77 = fadd double %7, -1.900000e+03
%78 = tail call double @llvm.fmuladd.f64(double %77, double -1.970000e-04, double 6.196600e-03)
%79 = tail call double @llvm.fmuladd.f64(double %77, double %78, double -5.989390e-02)
%80 = tail call double @llvm.fmuladd.f64(double %77, double %79, double 0x3FF7E7E9531550CA)
%81 = tail call double @llvm.fmuladd.f64(double %77, double %80, double -2.790000e+00)
br label %129
82: ; preds = %74
%83 = icmp ult i32 %0, 1941
br i1 %83, label %84, label %89
84: ; preds = %82
%85 = fadd double %7, -1.920000e+03
%86 = tail call double @llvm.fmuladd.f64(double %85, double 2.093600e-03, double -7.610000e-02)
%87 = tail call double @llvm.fmuladd.f64(double %85, double %86, double 0x3FEB09AAA3AD18D2)
%88 = tail call double @llvm.fmuladd.f64(double %85, double %87, double 2.120000e+01)
br label %129
89: ; preds = %82
%90 = icmp ult i32 %0, 1961
br i1 %90, label %91, label %97
91: ; preds = %89
%92 = fadd double %7, -1.950000e+03
%93 = fdiv double %92, 2.547000e+03
%94 = fadd double %93, 0xBF719453808CA29C
%95 = tail call double @llvm.fmuladd.f64(double %92, double %94, double 4.070000e-01)
%96 = tail call double @llvm.fmuladd.f64(double %92, double %95, double 2.907000e+01)
br label %129
97: ; preds = %89
%98 = icmp ult i32 %0, 1986
br i1 %98, label %99, label %105
99: ; preds = %97
%100 = fadd double %7, -1.975000e+03
%101 = fdiv double %100, 7.180000e+02
%102 = fsub double 0xBF6F81F81F81F820, %101
%103 = tail call double @llvm.fmuladd.f64(double %100, double %102, double 1.067000e+00)
%104 = tail call double @llvm.fmuladd.f64(double %100, double %103, double 4.545000e+01)
br label %129
105: ; preds = %97
%106 = icmp ult i32 %0, 2005
br i1 %106, label %107, label %114
107: ; preds = %105
%108 = fadd double %7, -2.000000e+03
%109 = tail call double @llvm.fmuladd.f64(double %108, double 0x3EF8E394D0074513, double 6.518140e-04)
%110 = tail call double @llvm.fmuladd.f64(double %108, double %109, double 1.727500e-03)
%111 = tail call double @llvm.fmuladd.f64(double %108, double %110, double -6.037400e-02)
%112 = tail call double @llvm.fmuladd.f64(double %108, double %111, double 3.345000e-01)
%113 = tail call double @llvm.fmuladd.f64(double %108, double %112, double 6.386000e+01)
br label %129
114: ; preds = %105
%115 = icmp ult i32 %0, 2050
br i1 %115, label %116, label %120
116: ; preds = %114
%117 = fadd double %7, -2.000000e+03
%118 = tail call double @llvm.fmuladd.f64(double %117, double 5.589000e-03, double 3.221700e-01)
%119 = tail call double @llvm.fmuladd.f64(double %117, double %118, double 6.292000e+01)
br label %129
120: ; preds = %114
%121 = icmp ult i32 %0, 2150
%122 = fadd double %7, -1.820000e+03
%123 = fdiv double %122, 1.000000e+02
%124 = fmul double %123, 3.200000e+01
%125 = tail call double @llvm.fmuladd.f64(double %124, double %123, double -2.000000e+01)
br i1 %121, label %126, label %129
126: ; preds = %120
%127 = fsub double 2.150000e+03, %7
%128 = tail call double @llvm.fmuladd.f64(double %127, double -5.628000e-01, double %125)
br label %129
129: ; preds = %120, %126, %116, %107, %99, %91, %84, %76, %66, %55, %46, %38, %27, %17, %9
%130 = phi double [ %14, %9 ], [ %24, %17 ], [ %35, %27 ], [ %43, %38 ], [ %52, %46 ], [ %63, %55 ], [ %73, %66 ], [ %81, %76 ], [ %88, %84 ], [ %96, %91 ], [ %104, %99 ], [ %113, %107 ], [ %119, %116 ], [ %128, %126 ], [ %125, %120 ]
ret double %130
}