void test2f(float x, float y) {
  if (-tanf(x - y) != tanf(y - x))
    link_error();
  if (-sinf(x - y) != sinf(y - x))
    link_error();
  if (cosf(-x * y) != cosf(x * y))
    link_error();
  if (cosf(x * -y) != cosf(x * y))
    link_error();
  if (cosf(-x / y) != cosf(x / y))
    link_error();
  if (cosf(x / -y) != cosf(x / y))
    link_error();
  if (cosf(-fabsf(tanf(x / -y))) != cosf(tanf(x / y)))
    link_error();
  if (cosf(y < 10 ? -x : y) != cosf(y < 10 ? x : y))
    link_error();
  if (cosf(y < 10 ? x : -y) != cosf(y < 10 ? x : y))
    link_error();
  if (cosf(y < 10 ? -fabsf(x) : tanf(x < 20 ? -x : -fabsf(y))) !=
      cosf(y < 10 ? x : tanf(x < 20 ? x : y)))
    link_error();
  if (cosf((y *= 3, -x)) != cosf((y *= 3, x)))
    link_error();
  if (cosf(-fabsf(tanf(x / -y))) != cosf(tanf(x / y)))
    link_error();
  if (cosf(copysignf(x, y)) != cosf(x))
    link_error();
  if (cosf(copysignf(-fabsf(x), y *= 2)) != cosf((y *= 2, x)))
    link_error();
  if (hypotf(x, 0) != fabsf(x))
    link_error();
  if (hypotf(0, x) != fabsf(x))
    link_error();
  if (hypotf(x, x) != fabsf(x) * __builtin_sqrtf(2))
    link_error();
  if (hypotf(-x, y) != hypotf(x, y))
    link_error();
  if (hypotf(x, -y) != hypotf(x, y))
    link_error();
  if (hypotf(-x, -y) != hypotf(x, y))
    link_error();
  if (hypotf(fabsf(x), y) != hypotf(x, y))
    link_error();
  if (hypotf(x, fabsf(y)) != hypotf(x, y))
    link_error();
  if (hypotf(fabsf(x), fabsf(y)) != hypotf(x, y))
    link_error();
  if (hypotf(-fabsf(-x), -fabsf(fabsf(fabsf(-y)))) != hypotf(x, y))
    link_error();
  if (hypotf(-x, 0) != fabsf(x))
    link_error();
  if (hypotf(-x, x) != fabsf(x) * __builtin_sqrtf(2))
    link_error();
  if (hypotf(puref(x), -puref(x)) != fabsf(puref(x)) * __builtin_sqrtf(2))
    link_error();
  if (hypotf(tanf(-x), tanf(-fabsf(y))) != hypotf(tanf(x), tanf(y)))
    link_error();
  if (fminf(fmaxf(x, y), y) != y)
    link_error();
  if (fminf(fmaxf(y, x), y) != y)
    link_error();
  if (fminf(x, fmaxf(x, y)) != x)
    link_error();
  if (fminf(x, fmaxf(y, x)) != x)
    link_error();
  if (fmaxf(fminf(x, y), y) != y)
    link_error();
  if (fmaxf(fminf(y, x), y) != y)
    link_error();
  if (fmaxf(x, fminf(x, y)) != x)
    link_error();
  if (fmaxf(x, fminf(y, x)) != x)
    link_error();
  if ((__complex__ float)x != -(__complex__ float)(-x))
    link_error();
  if (x + (x - y) * 1i != -(-x + (y - x) * 1i))
    link_error();
  if (x + (x - y) * 1i != -(-x - (x - y) * 1i))
    link_error();
  if (ccosf(tanf(x) + sinf(y) * 1i) != ccosf(-tanf(-x) + -sinf(-y) * 1i))
    link_error();
  if (ccosf(tanf(x) + sinf(x - y) * 1i) != ccosf(-tanf(-x) - sinf(y - x) * 1i))
    link_error();
  if (-5 + x * 1i != -~(5 + x * 1i))
    link_error();
  if (tanf(x) + tanf(y) * 1i != -~(tanf(-x) + tanf(y) * 1i))
    link_error();
}


x86 assembly (clang, -O0):
<test2f>:
push   %rbp
mov    %rsp,%rbp
sub    $0x290,%rsp
movss  %xmm0,-0x4(%rbp)
movss  %xmm1,-0x8(%rbp)
movss  -0x4(%rbp),%xmm0
subss  -0x8(%rbp),%xmm0
call   1050 <tanf@plt>
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xac(%rbp)
ff
movss  -0x8(%rbp),%xmm0
subss  -0x4(%rbp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm1
movss  -0xac(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    11e7 <test2f+0x67>
jp     11e7 <test2f+0x67>
jmp    11ee <test2f+0x6e>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
subss  -0x8(%rbp),%xmm0
call   1030 <sinf@plt>
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xb0(%rbp)
ff
movss  -0x8(%rbp),%xmm0
subss  -0x4(%rbp),%xmm0
call   1030 <sinf@plt>
movaps %xmm0,%xmm1
movss  -0xb0(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1240 <test2f+0xc0>
jp     1240 <test2f+0xc0>
jmp    1247 <test2f+0xc7>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
mulss  -0x8(%rbp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xb4(%rbp)
ff
movss  -0x4(%rbp),%xmm0
mulss  -0x8(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xb4(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1299 <test2f+0x119>
jp     1299 <test2f+0x119>
jmp    12a0 <test2f+0x120>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xb8(%rbp)
ff
movss  -0x4(%rbp),%xmm0
mulss  -0x8(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xb8(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    12f6 <test2f+0x176>
jp     12f6 <test2f+0x176>
jmp    12fd <test2f+0x17d>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
divss  -0x8(%rbp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xbc(%rbp)
ff
movss  -0x4(%rbp),%xmm0
divss  -0x8(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xbc(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    134f <test2f+0x1cf>
jp     134f <test2f+0x1cf>
jmp    1356 <test2f+0x1d6>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
divss  %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xc0(%rbp)
ff
movss  -0x4(%rbp),%xmm0
divss  -0x8(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xc0(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    13ac <test2f+0x22c>
jp     13ac <test2f+0x22c>
jmp    13b3 <test2f+0x233>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
divss  %xmm1,%xmm0
call   1050 <tanf@plt>
movaps 0x2c26(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xc4(%rbp)
ff
movss  -0x4(%rbp),%xmm0
divss  -0x8(%rbp),%xmm0
call   1050 <tanf@plt>
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xc4(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    142b <test2f+0x2ab>
jp     142b <test2f+0x2ab>
jmp    1432 <test2f+0x2b2>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  0x2be6(%rip),%xmm0
ucomiss -0x8(%rbp),%xmm0
jbe    1463 <test2f+0x2e3>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xc8(%rbp)
ff
jmp    1470 <test2f+0x2f0>
movss  -0x8(%rbp),%xmm0
movss  %xmm0,-0xc8(%rbp)
ff
movss  -0xc8(%rbp),%xmm0
ff
call   1060 <cosf@plt>
movss  %xmm0,-0xcc(%rbp)
ff
movss  0x2b93(%rip),%xmm0
ucomiss -0x8(%rbp),%xmm0
jbe    14a9 <test2f+0x329>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0xd0(%rbp)
ff
jmp    14b6 <test2f+0x336>
movss  -0x8(%rbp),%xmm0
movss  %xmm0,-0xd0(%rbp)
ff
movss  -0xd0(%rbp),%xmm0
ff
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xcc(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    14e2 <test2f+0x362>
jp     14e2 <test2f+0x362>
jmp    14e9 <test2f+0x369>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  0x2b2f(%rip),%xmm0
ucomiss -0x8(%rbp),%xmm0
jbe    150d <test2f+0x38d>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0xd4(%rbp)
ff
jmp    1527 <test2f+0x3a7>
movss  -0x8(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xd4(%rbp)
ff
movss  -0xd4(%rbp),%xmm0
ff
call   1060 <cosf@plt>
movss  %xmm0,-0xd8(%rbp)
ff
movss  0x2adc(%rip),%xmm0
ucomiss -0x8(%rbp),%xmm0
jbe    1560 <test2f+0x3e0>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0xdc(%rbp)
ff
jmp    156d <test2f+0x3ed>
movss  -0x8(%rbp),%xmm0
movss  %xmm0,-0xdc(%rbp)
ff
movss  -0xdc(%rbp),%xmm0
ff
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xd8(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1599 <test2f+0x419>
jp     1599 <test2f+0x419>
jmp    15a0 <test2f+0x420>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  0x2a78(%rip),%xmm0
ucomiss -0x8(%rbp),%xmm0
jbe    15dc <test2f+0x45c>
movss  -0x4(%rbp),%xmm0
movaps 0x2a42(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xe0(%rbp)
ff
jmp    1647 <test2f+0x4c7>
movss  0x2a40(%rip),%xmm0
ucomiss -0x4(%rbp),%xmm0
jbe    160d <test2f+0x48d>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xe4(%rbp)
ff
jmp    1632 <test2f+0x4b2>
movss  -0x8(%rbp),%xmm0
movaps 0x29e7(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0xe4(%rbp)
ff
movss  -0xe4(%rbp),%xmm0
ff
call   1050 <tanf@plt>
movss  %xmm0,-0xe0(%rbp)
ff
movss  -0xe0(%rbp),%xmm0
ff
call   1060 <cosf@plt>
movss  %xmm0,-0xe8(%rbp)
ff
movss  0x29bc(%rip),%xmm0
ucomiss -0x8(%rbp),%xmm0
jbe    1680 <test2f+0x500>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0xec(%rbp)
ff
jmp    16c6 <test2f+0x546>
movss  0x299c(%rip),%xmm0
ucomiss -0x4(%rbp),%xmm0
jbe    16a4 <test2f+0x524>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0xf0(%rbp)
ff
jmp    16b1 <test2f+0x531>
movss  -0x8(%rbp),%xmm0
movss  %xmm0,-0xf0(%rbp)
ff
movss  -0xf0(%rbp),%xmm0
ff
call   1050 <tanf@plt>
movss  %xmm0,-0xec(%rbp)
ff
movss  -0xec(%rbp),%xmm0
ff
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xe8(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    16f2 <test2f+0x572>
jp     16f2 <test2f+0x572>
jmp    16f9 <test2f+0x579>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  0x2927(%rip),%xmm0
mulss  -0x8(%rbp),%xmm0
movss  %xmm0,-0x8(%rbp)
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xf4(%rbp)
ff
movss  0x28f6(%rip),%xmm0
mulss  -0x8(%rbp),%xmm0
movss  %xmm0,-0x8(%rbp)
movss  -0x4(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xf4(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1765 <test2f+0x5e5>
jp     1765 <test2f+0x5e5>
jmp    176c <test2f+0x5ec>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
divss  %xmm1,%xmm0
call   1050 <tanf@plt>
movaps 0x286d(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xf8(%rbp)
ff
movss  -0x4(%rbp),%xmm0
divss  -0x8(%rbp),%xmm0
call   1050 <tanf@plt>
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xf8(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    17e4 <test2f+0x664>
jp     17e4 <test2f+0x664>
jmp    17eb <test2f+0x66b>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movaps 0x2814(%rip),%xmm2
pand   %xmm2,%xmm1
movaps 0x27f9(%rip),%xmm2
pand   %xmm2,%xmm0
por    %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0xfc(%rbp)
ff
movss  -0x4(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0xfc(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1845 <test2f+0x6c5>
jp     1845 <test2f+0x6c5>
jmp    184c <test2f+0x6cc>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movaps 0x27a8(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  0x27bb(%rip),%xmm1
mulss  -0x8(%rbp),%xmm1
movss  %xmm1,-0x8(%rbp)
movaps 0x278e(%rip),%xmm2
pand   %xmm2,%xmm1
movaps 0x2773(%rip),%xmm2
pand   %xmm2,%xmm0
por    %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,-0x100(%rbp)
ff
movss  0x2782(%rip),%xmm0
mulss  -0x8(%rbp),%xmm0
movss  %xmm0,-0x8(%rbp)
movss  -0x4(%rbp),%xmm0
call   1060 <cosf@plt>
movaps %xmm0,%xmm1
movss  -0x100(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    18dd <test2f+0x75d>
jp     18dd <test2f+0x75d>
jmp    18e4 <test2f+0x764>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
xorps  %xmm1,%xmm1
call   1040 <hypotf@plt>
movss  -0x4(%rbp),%xmm1
movaps 0x2703(%rip),%xmm2
pand   %xmm2,%xmm1
ucomiss %xmm1,%xmm0
jne    1915 <test2f+0x795>
jp     1915 <test2f+0x795>
jmp    191c <test2f+0x79c>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm1
xorps  %xmm0,%xmm0
call   1040 <hypotf@plt>
movss  -0x4(%rbp),%xmm1
movaps 0x26cb(%rip),%xmm2
pand   %xmm2,%xmm1
ucomiss %xmm1,%xmm0
jne    194d <test2f+0x7cd>
jp     194d <test2f+0x7cd>
jmp    1954 <test2f+0x7d4>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x4(%rbp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x104(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movaps 0x2689(%rip),%xmm1
pand   %xmm1,%xmm0
movss  %xmm0,-0x108(%rbp)
ff
movss  0x26a1(%rip),%xmm0
call   1080 <sqrtf@plt>
movss  -0x108(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movss  -0x104(%rbp),%xmm0
ff
mulss  %xmm2,%xmm1
ucomiss %xmm1,%xmm0
jne    19bb <test2f+0x83b>
jp     19bb <test2f+0x83b>
jmp    19c2 <test2f+0x842>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x10c(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x10c(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1a14 <test2f+0x894>
jp     1a14 <test2f+0x894>
jmp    1a1b <test2f+0x89b>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x110(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x110(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1a6d <test2f+0x8ed>
jp     1a6d <test2f+0x8ed>
jmp    1a74 <test2f+0x8f4>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x114(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x114(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1ad3 <test2f+0x953>
jp     1ad3 <test2f+0x953>
jmp    1ada <test2f+0x95a>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movaps 0x251a(%rip),%xmm1
pand   %xmm1,%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x118(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x118(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1b2a <test2f+0x9aa>
jp     1b2a <test2f+0x9aa>
jmp    1b31 <test2f+0x9b1>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
movaps 0x24be(%rip),%xmm2
pand   %xmm2,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x11c(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x11c(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1b81 <test2f+0xa01>
jp     1b81 <test2f+0xa01>
jmp    1b88 <test2f+0xa08>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movaps 0x246c(%rip),%xmm1
pand   %xmm1,%xmm0
movss  -0x8(%rbp),%xmm1
movaps 0x245c(%rip),%xmm2
pand   %xmm2,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x120(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x120(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1be3 <test2f+0xa63>
jp     1be3 <test2f+0xa63>
jmp    1bea <test2f+0xa6a>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movaps 0x23fd(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  -0x8(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
movaps 0x23d3(%rip),%xmm2
pand   %xmm2,%xmm1
movaps 0x23c8(%rip),%xmm2
pand   %xmm2,%xmm1
movaps 0x23bd(%rip),%xmm2
pand   %xmm2,%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x124(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  -0x8(%rbp),%xmm1
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x124(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1c8f <test2f+0xb0f>
jp     1c8f <test2f+0xb0f>
jmp    1c96 <test2f+0xb16>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
xorps  %xmm1,%xmm1
call   1040 <hypotf@plt>
movss  -0x4(%rbp),%xmm1
movaps 0x2344(%rip),%xmm2
pand   %xmm2,%xmm1
ucomiss %xmm1,%xmm0
jne    1cd4 <test2f+0xb54>
jp     1cd4 <test2f+0xb54>
jmp    1cdb <test2f+0xb5b>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  -0x4(%rbp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x128(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movaps 0x22f5(%rip),%xmm1
pand   %xmm1,%xmm0
movss  %xmm0,-0x12c(%rbp)
ff
movss  0x230d(%rip),%xmm0
call   1080 <sqrtf@plt>
movss  -0x12c(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movss  -0x128(%rbp),%xmm0
ff
mulss  %xmm2,%xmm1
ucomiss %xmm1,%xmm0
jne    1d4f <test2f+0xbcf>
jp     1d4f <test2f+0xbcf>
jmp    1d56 <test2f+0xbd6>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   10a0 <puref@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x138(%rbp)
ff
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   10a0 <puref@plt>
movss  -0x138(%rbp),%xmm0
ff
mov    %eax,%ecx
xor    %eax,%eax
sub    %ecx,%eax
cvtsi2ss %eax,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,-0x130(%rbp)
ff
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   10a0 <puref@plt>
cvtsi2ss %eax,%xmm0
movaps 0x2244(%rip),%xmm1
pand   %xmm1,%xmm0
movss  %xmm0,-0x134(%rbp)
ff
movss  0x225c(%rip),%xmm0
call   1080 <sqrtf@plt>
movss  -0x134(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movss  -0x130(%rbp),%xmm0
ff
mulss  %xmm2,%xmm1
ucomiss %xmm1,%xmm0
jne    1e00 <test2f+0xc80>
jp     1e00 <test2f+0xc80>
jmp    1e07 <test2f+0xc87>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x144(%rbp)
ff
movss  -0x8(%rbp),%xmm0
movaps 0x21ce(%rip),%xmm1
pand   %xmm1,%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm1
movss  -0x144(%rbp),%xmm0
ff
call   1040 <hypotf@plt>
movss  %xmm0,-0x13c(%rbp)
ff
movss  -0x4(%rbp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x140(%rbp)
ff
movss  -0x8(%rbp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm1
movss  -0x140(%rbp),%xmm0
ff
call   1040 <hypotf@plt>
movaps %xmm0,%xmm1
movss  -0x13c(%rbp),%xmm0
ff
ucomiss %xmm1,%xmm0
jne    1eab <test2f+0xd2b>
jp     1eab <test2f+0xd2b>
jmp    1eb2 <test2f+0xd32>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm2
movss  -0x8(%rbp),%xmm1
movaps %xmm1,%xmm4
movaps %xmm2,%xmm3
cmpunordss %xmm3,%xmm3
movaps %xmm3,%xmm0
pand   %xmm4,%xmm0
maxss  %xmm2,%xmm1
pandn  %xmm1,%xmm3
por    %xmm0,%xmm3
movss  -0x8(%rbp),%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
minss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x8(%rbp),%xmm0
jne    1f12 <test2f+0xd92>
jp     1f12 <test2f+0xd92>
jmp    1f19 <test2f+0xd99>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x8(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movaps %xmm1,%xmm4
movaps %xmm2,%xmm3
cmpunordss %xmm3,%xmm3
movaps %xmm3,%xmm0
pand   %xmm4,%xmm0
maxss  %xmm2,%xmm1
pandn  %xmm1,%xmm3
por    %xmm0,%xmm3
movss  -0x8(%rbp),%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
minss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x8(%rbp),%xmm0
jne    1f79 <test2f+0xdf9>
jp     1f79 <test2f+0xdf9>
jmp    1f80 <test2f+0xe00>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm3
movss  -0x4(%rbp),%xmm4
movss  -0x8(%rbp),%xmm1
movaps %xmm1,%xmm5
movaps %xmm4,%xmm2
cmpunordss %xmm2,%xmm2
movaps %xmm2,%xmm0
pand   %xmm5,%xmm0
maxss  %xmm4,%xmm1
pandn  %xmm1,%xmm2
por    %xmm0,%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
minss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x4(%rbp),%xmm0
jne    1fe0 <test2f+0xe60>
jp     1fe0 <test2f+0xe60>
jmp    1fe7 <test2f+0xe67>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm3
movss  -0x8(%rbp),%xmm4
movss  -0x4(%rbp),%xmm1
movaps %xmm1,%xmm5
movaps %xmm4,%xmm2
cmpunordss %xmm2,%xmm2
movaps %xmm2,%xmm0
pand   %xmm5,%xmm0
maxss  %xmm4,%xmm1
pandn  %xmm1,%xmm2
por    %xmm0,%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
minss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x4(%rbp),%xmm0
jne    2047 <test2f+0xec7>
jp     2047 <test2f+0xec7>
jmp    204e <test2f+0xece>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm2
movss  -0x8(%rbp),%xmm1
movaps %xmm1,%xmm4
movaps %xmm2,%xmm3
cmpunordss %xmm3,%xmm3
movaps %xmm3,%xmm0
pand   %xmm4,%xmm0
minss  %xmm2,%xmm1
pandn  %xmm1,%xmm3
por    %xmm0,%xmm3
movss  -0x8(%rbp),%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
maxss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x8(%rbp),%xmm0
jne    20ae <test2f+0xf2e>
jp     20ae <test2f+0xf2e>
jmp    20b5 <test2f+0xf35>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x8(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movaps %xmm1,%xmm4
movaps %xmm2,%xmm3
cmpunordss %xmm3,%xmm3
movaps %xmm3,%xmm0
pand   %xmm4,%xmm0
minss  %xmm2,%xmm1
pandn  %xmm1,%xmm3
por    %xmm0,%xmm3
movss  -0x8(%rbp),%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
maxss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x8(%rbp),%xmm0
jne    2115 <test2f+0xf95>
jp     2115 <test2f+0xf95>
jmp    211c <test2f+0xf9c>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm3
movss  -0x4(%rbp),%xmm4
movss  -0x8(%rbp),%xmm1
movaps %xmm1,%xmm5
movaps %xmm4,%xmm2
cmpunordss %xmm2,%xmm2
movaps %xmm2,%xmm0
pand   %xmm5,%xmm0
minss  %xmm4,%xmm1
pandn  %xmm1,%xmm2
por    %xmm0,%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
maxss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x4(%rbp),%xmm0
jne    217c <test2f+0xffc>
jp     217c <test2f+0xffc>
jmp    2183 <test2f+0x1003>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm3
movss  -0x8(%rbp),%xmm4
movss  -0x4(%rbp),%xmm1
movaps %xmm1,%xmm5
movaps %xmm4,%xmm2
cmpunordss %xmm2,%xmm2
movaps %xmm2,%xmm0
pand   %xmm5,%xmm0
minss  %xmm4,%xmm1
pandn  %xmm1,%xmm2
por    %xmm0,%xmm2
movaps %xmm2,%xmm4
movaps %xmm3,%xmm0
cmpunordss %xmm0,%xmm0
movaps %xmm0,%xmm1
pand   %xmm4,%xmm1
maxss  %xmm3,%xmm2
pandn  %xmm2,%xmm0
por    %xmm1,%xmm0
ucomiss -0x4(%rbp),%xmm0
jne    21e3 <test2f+0x1063>
jp     21e3 <test2f+0x1063>
jmp    21ea <test2f+0x106a>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  -0x4(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
ucomiss %xmm1,%xmm0
setne  %al
setp   %cl
or     %cl,%al
or     $0x0,%al
test   $0x1,%al
jne    2228 <test2f+0x10a8>
jmp    222f <test2f+0x10af>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0x15c(%rbp)
ff
movss  -0x4(%rbp),%xmm0
subss  -0x8(%rbp),%xmm0
movss  %xmm0,-0x158(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x1dd0(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x154(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x150(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x14c(%rbp)
ff
movss  %xmm0,-0x148(%rbp)
ff
jnp    22fe <test2f+0x117e>
movss  -0x150(%rbp),%xmm0
ff
movss  -0x154(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x14c(%rbp)
ff
movss  %xmm0,-0x148(%rbp)
ff
jnp    22fe <test2f+0x117e>
movss  -0x158(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1d59(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x10(%rbp)
movss  -0x10(%rbp),%xmm1
movss  -0xc(%rbp),%xmm0
movss  %xmm1,-0x14c(%rbp)
ff
movss  %xmm0,-0x148(%rbp)
ff
movss  -0x15c(%rbp),%xmm0
ff
movss  -0x14c(%rbp),%xmm1
ff
movss  -0x148(%rbp),%xmm2
ff
movss  %xmm2,-0x17c(%rbp)
ff
addss  %xmm1,%xmm0
movss  %xmm0,-0x178(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0x174(%rbp)
ff
movss  -0x8(%rbp),%xmm0
subss  -0x4(%rbp),%xmm0
movss  %xmm0,-0x170(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x1cc8(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x16c(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x168(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x164(%rbp)
ff
movss  %xmm0,-0x160(%rbp)
ff
jnp    2406 <test2f+0x1286>
movss  -0x168(%rbp),%xmm0
ff
movss  -0x16c(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x164(%rbp)
ff
movss  %xmm0,-0x160(%rbp)
ff
jnp    2406 <test2f+0x1286>
movss  -0x170(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1c51(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x18(%rbp)
movss  -0x18(%rbp),%xmm1
movss  -0x14(%rbp),%xmm0
movss  %xmm1,-0x164(%rbp)
ff
movss  %xmm0,-0x160(%rbp)
ff
movss  -0x17c(%rbp),%xmm0
ff
movss  -0x178(%rbp),%xmm2
ff
movss  -0x174(%rbp),%xmm3
ff
movss  -0x164(%rbp),%xmm4
ff
movss  -0x160(%rbp),%xmm1
ff
addss  %xmm4,%xmm3
movd   %xmm3,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm3
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
ucomiss %xmm3,%xmm2
setne  %al
setp   %cl
or     %cl,%al
ucomiss %xmm1,%xmm0
setne  %cl
setp   %dl
or     %dl,%cl
or     %cl,%al
test   $0x1,%al
jne    2471 <test2f+0x12f1>
jmp    2478 <test2f+0x12f8>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0x194(%rbp)
ff
movss  -0x4(%rbp),%xmm0
subss  -0x8(%rbp),%xmm0
movss  %xmm0,-0x190(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x1b87(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x18c(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x188(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x184(%rbp)
ff
movss  %xmm0,-0x180(%rbp)
ff
jnp    2547 <test2f+0x13c7>
movss  -0x188(%rbp),%xmm0
ff
movss  -0x18c(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x184(%rbp)
ff
movss  %xmm0,-0x180(%rbp)
ff
jnp    2547 <test2f+0x13c7>
movss  -0x190(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1b10(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x20(%rbp)
movss  -0x20(%rbp),%xmm1
movss  -0x1c(%rbp),%xmm0
movss  %xmm1,-0x184(%rbp)
ff
movss  %xmm0,-0x180(%rbp)
ff
movss  -0x194(%rbp),%xmm0
ff
movss  -0x184(%rbp),%xmm1
ff
movss  -0x180(%rbp),%xmm2
ff
movss  %xmm2,-0x1b4(%rbp)
ff
addss  %xmm1,%xmm0
movss  %xmm0,-0x1b0(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0x1ac(%rbp)
ff
movss  -0x4(%rbp),%xmm0
subss  -0x8(%rbp),%xmm0
movss  %xmm0,-0x1a8(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x1a7f(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x1a4(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x1a0(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x19c(%rbp)
ff
movss  %xmm0,-0x198(%rbp)
ff
jnp    264f <test2f+0x14cf>
movss  -0x1a0(%rbp),%xmm0
ff
movss  -0x1a4(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x19c(%rbp)
ff
movss  %xmm0,-0x198(%rbp)
ff
jnp    264f <test2f+0x14cf>
movss  -0x1a8(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1a08(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x28(%rbp)
movss  -0x28(%rbp),%xmm1
movss  -0x24(%rbp),%xmm0
movss  %xmm1,-0x19c(%rbp)
ff
movss  %xmm0,-0x198(%rbp)
ff
movss  -0x1b4(%rbp),%xmm0
ff
movss  -0x1b0(%rbp),%xmm2
ff
movss  -0x1ac(%rbp),%xmm3
ff
movss  -0x19c(%rbp),%xmm4
ff
movss  -0x198(%rbp),%xmm1
ff
subss  %xmm4,%xmm3
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
movd   %xmm3,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm3
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
ucomiss %xmm3,%xmm2
setne  %al
setp   %cl
or     %cl,%al
ucomiss %xmm1,%xmm0
setne  %cl
setp   %dl
or     %dl,%cl
or     %cl,%al
test   $0x1,%al
jne    26c7 <test2f+0x1547>
jmp    26ce <test2f+0x154e>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x1cc(%rbp)
ff
movss  -0x8(%rbp),%xmm0
call   1030 <sinf@plt>
movss  %xmm0,-0x1c8(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x192c(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x1c4(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x1c0(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x1bc(%rbp)
ff
movss  %xmm0,-0x1b8(%rbp)
ff
jnp    27a2 <test2f+0x1622>
movss  -0x1c0(%rbp),%xmm0
ff
movss  -0x1c4(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x1bc(%rbp)
ff
movss  %xmm0,-0x1b8(%rbp)
ff
jnp    27a2 <test2f+0x1622>
movss  -0x1c8(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x18b5(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x30(%rbp)
movss  -0x30(%rbp),%xmm1
movss  -0x2c(%rbp),%xmm0
movss  %xmm1,-0x1bc(%rbp)
ff
movss  %xmm0,-0x1b8(%rbp)
ff
movss  -0x1cc(%rbp),%xmm1
ff
movss  -0x1bc(%rbp),%xmm2
ff
movss  -0x1b8(%rbp),%xmm0
ff
addss  %xmm2,%xmm1
movss  %xmm1,-0x38(%rbp)
movss  %xmm0,-0x34(%rbp)
movsd  -0x38(%rbp),%xmm0
call   1070 <ccosf@plt>
movlpd %xmm0,-0x40(%rbp)
movss  -0x40(%rbp),%xmm0
movss  %xmm0,-0x1ec(%rbp)
ff
movss  -0x3c(%rbp),%xmm0
movss  %xmm0,-0x1e8(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1050 <tanf@plt>
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0x1e4(%rbp)
ff
movss  -0x8(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1030 <sinf@plt>
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0x1e0(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x17d5(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x1dc(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x1d8(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x1d4(%rbp)
ff
movss  %xmm0,-0x1d0(%rbp)
ff
jnp    28f9 <test2f+0x1779>
movss  -0x1d8(%rbp),%xmm0
ff
movss  -0x1dc(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x1d4(%rbp)
ff
movss  %xmm0,-0x1d0(%rbp)
ff
jnp    28f9 <test2f+0x1779>
movss  -0x1e0(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x175e(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x48(%rbp)
movss  -0x48(%rbp),%xmm1
movss  -0x44(%rbp),%xmm0
movss  %xmm1,-0x1d4(%rbp)
ff
movss  %xmm0,-0x1d0(%rbp)
ff
movss  -0x1e4(%rbp),%xmm1
movss  -0x1d4(%rbp),%xmm2
ff
movss  -0x1d0(%rbp),%xmm0
ff
addss  %xmm2,%xmm1
movss  %xmm1,-0x50(%rbp)
movss  %xmm0,-0x4c(%rbp)
movsd  -0x50(%rbp),%xmm0
call   1070 <ccosf@plt>
movss  -0x1ec(%rbp),%xmm2
ff
movaps %xmm0,%xmm1
movss  -0x1e8(%rbp),%xmm0
ff
movlpd %xmm1,-0x58(%rbp)
movss  -0x58(%rbp),%xmm3
movss  -0x54(%rbp),%xmm1
ucomiss %xmm3,%xmm2
setne  %al
setp   %cl
or     %cl,%al
ucomiss %xmm1,%xmm0
setne  %cl
setp   %dl
or     %dl,%cl
or     %cl,%al
test   $0x1,%al
jne    2970 <test2f+0x17f0>
jmp    2977 <test2f+0x17f7>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x204(%rbp)
ff
movss  -0x4(%rbp),%xmm0
subss  -0x8(%rbp),%xmm0
call   1030 <sinf@plt>
movss  %xmm0,-0x200(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x167e(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x1fc(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x1f8(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x1f4(%rbp)
ff
movss  %xmm0,-0x1f0(%rbp)
ff
jnp    2a50 <test2f+0x18d0>
movss  -0x1f8(%rbp),%xmm0
ff
movss  -0x1fc(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x1f4(%rbp)
ff
movss  %xmm0,-0x1f0(%rbp)
ff
jnp    2a50 <test2f+0x18d0>
movss  -0x200(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1607(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x60(%rbp)
movss  -0x60(%rbp),%xmm1
movss  -0x5c(%rbp),%xmm0
movss  %xmm1,-0x1f4(%rbp)
ff
movss  %xmm0,-0x1f0(%rbp)
ff
movss  -0x204(%rbp),%xmm1
ff
movss  -0x1f4(%rbp),%xmm2
ff
movss  -0x1f0(%rbp),%xmm0
ff
addss  %xmm2,%xmm1
movss  %xmm1,-0x68(%rbp)
movss  %xmm0,-0x64(%rbp)
movsd  -0x68(%rbp),%xmm0
call   1070 <ccosf@plt>
movlpd %xmm0,-0x70(%rbp)
movss  -0x70(%rbp),%xmm0
movss  %xmm0,-0x224(%rbp)
ff
movss  -0x6c(%rbp),%xmm0
movss  %xmm0,-0x220(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1050 <tanf@plt>
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
movss  %xmm0,-0x21c(%rbp)
ff
movss  -0x8(%rbp),%xmm0
subss  -0x4(%rbp),%xmm0
call   1030 <sinf@plt>
movss  %xmm0,-0x218(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x153c(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x214(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x210(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x20c(%rbp)
ff
movss  %xmm0,-0x208(%rbp)
ff
jnp    2b92 <test2f+0x1a12>
movss  -0x210(%rbp),%xmm0
ff
movss  -0x214(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x20c(%rbp)
ff
movss  %xmm0,-0x208(%rbp)
ff
jnp    2b92 <test2f+0x1a12>
movss  -0x218(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x14c5(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x78(%rbp)
movss  -0x78(%rbp),%xmm1
movss  -0x74(%rbp),%xmm0
movss  %xmm1,-0x20c(%rbp)
ff
movss  %xmm0,-0x208(%rbp)
ff
movss  -0x21c(%rbp),%xmm1
ff
movss  -0x20c(%rbp),%xmm2
ff
movss  -0x208(%rbp),%xmm0
ff
subss  %xmm2,%xmm1
movaps 0x145b(%rip),%xmm2
pxor   %xmm2,%xmm0
movss  %xmm1,-0x80(%rbp)
movss  %xmm0,-0x7c(%rbp)
movsd  -0x80(%rbp),%xmm0
call   1070 <ccosf@plt>
movss  -0x224(%rbp),%xmm2
ff
movaps %xmm0,%xmm1
movss  -0x220(%rbp),%xmm0
ff
movlpd %xmm1,-0x88(%rbp)
ff
movss  -0x88(%rbp),%xmm3
ff
movss  -0x84(%rbp),%xmm1
ff
ucomiss %xmm3,%xmm2
setne  %al
setp   %cl
or     %cl,%al
ucomiss %xmm1,%xmm0
setne  %cl
setp   %dl
or     %dl,%cl
or     %cl,%al
test   $0x1,%al
jne    2c1d <test2f+0x1a9d>
jmp    2c24 <test2f+0x1aa4>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0x238(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x13ed(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x234(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x230(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x22c(%rbp)
ff
movss  %xmm0,-0x228(%rbp)
ff
jnp    2cea <test2f+0x1b6a>
movss  -0x230(%rbp),%xmm0
ff
movss  -0x234(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x22c(%rbp)
ff
movss  %xmm0,-0x228(%rbp)
ff
jnp    2cea <test2f+0x1b6a>
movss  -0x238(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1376(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x90(%rbp)
ff
movss  -0x90(%rbp),%xmm1
ff
movss  -0x8c(%rbp),%xmm0
ff
movss  %xmm1,-0x22c(%rbp)
ff
movss  %xmm0,-0x228(%rbp)
ff
movss  -0x22c(%rbp),%xmm2
ff
movss  -0x228(%rbp),%xmm1
ff
movss  0x1332(%rip),%xmm0
addss  %xmm2,%xmm0
movss  %xmm0,-0x254(%rbp)
ff
xorps  %xmm0,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x250(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movss  %xmm0,-0x24c(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x12f4(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x248(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x244(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x240(%rbp)
ff
movss  %xmm0,-0x23c(%rbp)
ff
jnp    2de3 <test2f+0x1c63>
movss  -0x244(%rbp),%xmm0
ff
movss  -0x248(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x240(%rbp)
ff
movss  %xmm0,-0x23c(%rbp)
ff
jnp    2de3 <test2f+0x1c63>
movss  -0x24c(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x127d(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0x98(%rbp)
ff
movss  -0x98(%rbp),%xmm1
ff
movss  -0x94(%rbp),%xmm0
ff
movss  %xmm1,-0x240(%rbp)
ff
movss  %xmm0,-0x23c(%rbp)
ff
movss  -0x250(%rbp),%xmm0
ff
movss  -0x254(%rbp),%xmm2
ff
movss  -0x240(%rbp),%xmm1
ff
movss  -0x23c(%rbp),%xmm4
ff
movss  0x122d(%rip),%xmm3
addss  %xmm1,%xmm3
xorps  %xmm1,%xmm1
addss  %xmm4,%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
movd   %xmm3,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm3
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
ucomiss %xmm3,%xmm2
setne  %al
setp   %cl
or     %cl,%al
ucomiss %xmm1,%xmm0
setne  %cl
setp   %dl
or     %dl,%cl
or     %cl,%al
test   $0x1,%al
jne    2e62 <test2f+0x1ce2>
jmp    2e69 <test2f+0x1ce9>
mov    $0x0,%al
call   1090 <link_error@plt>
movss  -0x4(%rbp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x26c(%rbp)
ff
movss  -0x8(%rbp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x268(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x1191(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x264(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x260(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x25c(%rbp)
ff
movss  %xmm0,-0x258(%rbp)
ff
jnp    2f46 <test2f+0x1dc6>
movss  -0x260(%rbp),%xmm0
ff
movss  -0x264(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x25c(%rbp)
ff
movss  %xmm0,-0x258(%rbp)
ff
jnp    2f46 <test2f+0x1dc6>
movss  -0x268(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x111a(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0xa0(%rbp)
ff
movss  -0xa0(%rbp),%xmm1
ff
movss  -0x9c(%rbp),%xmm0
ff
movss  %xmm1,-0x25c(%rbp)
ff
movss  %xmm0,-0x258(%rbp)
ff
movss  -0x26c(%rbp),%xmm0
ff
movss  -0x25c(%rbp),%xmm1
ff
movss  -0x258(%rbp),%xmm2
ff
movss  %xmm2,-0x28c(%rbp)
ff
addss  %xmm1,%xmm0
movss  %xmm0,-0x288(%rbp)
ff
movss  -0x4(%rbp),%xmm0
movd   %xmm0,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x284(%rbp)
ff
movss  -0x8(%rbp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,-0x280(%rbp)
ff
xorps  %xmm2,%xmm2
movaps %xmm0,%xmm1
mulss  %xmm2,%xmm1
movss  0x107b(%rip),%xmm2
mulss  %xmm2,%xmm0
xorps  %xmm2,%xmm2
subss  %xmm2,%xmm1
movss  %xmm1,-0x27c(%rbp)
ff
xorps  %xmm2,%xmm2
addss  %xmm2,%xmm0
movss  %xmm0,-0x278(%rbp)
ff
ucomiss %xmm1,%xmm1
movss  %xmm1,-0x274(%rbp)
ff
movss  %xmm0,-0x270(%rbp)
ff
jnp    305c <test2f+0x1edc>
movss  -0x278(%rbp),%xmm0
ff
movss  -0x27c(%rbp),%xmm1
ff
ucomiss %xmm0,%xmm0
movss  %xmm1,-0x274(%rbp)
movss  %xmm0,-0x270(%rbp)
ff
jnp    305c <test2f+0x1edc>
movss  -0x280(%rbp),%xmm0
ff
xorps  %xmm2,%xmm2
movss  0x1004(%rip),%xmm3
movaps %xmm2,%xmm1
call   30f0 <__mulsc3>
movlpd %xmm0,-0xa8(%rbp)
ff
movss  -0xa8(%rbp),%xmm1
ff
movss  -0xa4(%rbp),%xmm0
ff
movss  %xmm1,-0x274(%rbp)
ff
movss  %xmm0,-0x270(%rbp)
ff
movss  -0x28c(%rbp),%xmm0
ff
movss  -0x288(%rbp),%xmm2
ff
movss  -0x284(%rbp),%xmm3
ff
movss  -0x274(%rbp),%xmm4
ff
movss  -0x270(%rbp),%xmm1
ff
addss  %xmm4,%xmm3
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
movd   %xmm3,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm3
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
ucomiss %xmm3,%xmm2
setne  %al
setp   %cl
or     %cl,%al
ucomiss %xmm1,%xmm0
setne  %cl
setp   %dl
or     %dl,%cl
or     %cl,%al
test   $0x1,%al
jne    30d4 <test2f+0x1f54>
jmp    30db <test2f+0x1f5b>
mov    $0x0,%al
call   1090 <link_error@plt>
add    $0x290,%rsp
pop    %rbp
ret
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax

x86 assembly (clang, -O2):
<test2f>:
sub    $0xa8,%rsp
movaps %xmm1,0x20(%rsp)
movaps %xmm0,(%rsp)
subss  %xmm1,%xmm0
movaps %xmm0,0x60(%rsp)
call   1050 <tanf@plt>
xorps  0x1e6b(%rip),%xmm0
movaps %xmm0,0x40(%rsp)
movaps 0x20(%rsp),%xmm0
subss  (%rsp),%xmm0
movaps %xmm0,0x10(%rsp)
call   1050 <tanf@plt>
ucomiss 0x40(%rsp),%xmm0
jne    11b7 <test2f+0x47>
jnp    11be <test2f+0x4e>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x60(%rsp),%xmm0
call   1030 <sinf@plt>
xorps  0x1e31(%rip),%xmm0
movaps %xmm0,0x60(%rsp)
movaps 0x10(%rsp),%xmm0
call   1030 <sinf@plt>
ucomiss 0x60(%rsp),%xmm0
jne    11e7 <test2f+0x77>
jnp    11ee <test2f+0x7e>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x1e0b(%rip),%xmm0
xorps  (%rsp),%xmm0
movaps %xmm0,0x60(%rsp)
mulss  0x20(%rsp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x10(%rsp)
movaps (%rsp),%xmm0
mulss  0x20(%rsp),%xmm0
movaps %xmm0,0x40(%rsp)
call   1060 <cosf@plt>
movss  0x10(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1230 <test2f+0xc0>
jnp    1237 <test2f+0xc7>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x1dc2(%rip),%xmm0
xorps  0x20(%rsp),%xmm0
movaps %xmm0,0x10(%rsp)
mulss  (%rsp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x30(%rsp)
movaps 0x40(%rsp),%xmm0
call   1060 <cosf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    126f <test2f+0xff>
jnp    1276 <test2f+0x106>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x60(%rsp),%xmm0
divss  0x20(%rsp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x30(%rsp)
movaps (%rsp),%xmm0
divss  0x20(%rsp),%xmm0
movaps %xmm0,0x40(%rsp)
call   1060 <cosf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    12ad <test2f+0x13d>
jnp    12b4 <test2f+0x144>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm0
divss  0x10(%rsp),%xmm0
movaps %xmm0,0x30(%rsp)
call   1060 <cosf@plt>
movss  %xmm0,0x50(%rsp)
movaps 0x40(%rsp),%xmm0
call   1060 <cosf@plt>
movss  0x50(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    12e5 <test2f+0x175>
jnp    12ec <test2f+0x17c>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x30(%rsp),%xmm0
call   1050 <tanf@plt>
andps  0x1d13(%rip),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x30(%rsp)
movaps 0x40(%rsp),%xmm0
call   1050 <tanf@plt>
call   1060 <cosf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1324 <test2f+0x1b4>
jnp    132b <test2f+0x1bb>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x20(%rsp),%xmm2
movaps %xmm2,%xmm0
cmpltss 0x1ce4(%rip),%xmm0
movaps %xmm0,%xmm1
andps  0x60(%rsp),%xmm1
andnps %xmm2,%xmm0
orps   %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x30(%rsp)
movaps 0x20(%rsp),%xmm0
movss  0x1cbe(%rip),%xmm1
ucomiss %xmm0,%xmm1
movaps (%rsp),%xmm1
ja     136e <test2f+0x1fe>
movaps %xmm0,%xmm1
movss  %xmm1,0x40(%rsp)
movaps %xmm1,%xmm0
call   1060 <cosf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1389 <test2f+0x219>
jnp    1390 <test2f+0x220>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x20(%rsp),%xmm0
cmpltss 0x1c82(%rip),%xmm0
movaps %xmm0,%xmm1
andps  (%rsp),%xmm1
andnps 0x10(%rsp),%xmm0
orps   %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x10(%rsp)
movss  0x40(%rsp),%xmm0
call   1060 <cosf@plt>
movss  0x10(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    13d0 <test2f+0x260>
jnp    13d7 <test2f+0x267>
xor    %eax,%eax
call   1080 <link_error@plt>
movss  0x1c41(%rip),%xmm0
ucomiss 0x20(%rsp),%xmm0
jbe    1402 <test2f+0x292>
movaps 0x1c23(%rip),%xmm0
andps  (%rsp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x10(%rsp)
movaps (%rsp),%xmm0
jmp    1452 <test2f+0x2e2>
movss  0x1c1a(%rip),%xmm1
movaps (%rsp),%xmm0
ucomiss %xmm0,%xmm1
ja     141f <test2f+0x2af>
movaps 0x1bf6(%rip),%xmm0
andps  0x20(%rsp),%xmm0
call   1050 <tanf@plt>
call   1060 <cosf@plt>
movss  %xmm0,0x10(%rsp)
movaps (%rsp),%xmm2
movaps %xmm2,%xmm0
cmpltss 0x1be5(%rip),%xmm0
movaps %xmm0,%xmm1
andps  %xmm2,%xmm1
andnps 0x20(%rsp),%xmm0
orps   %xmm1,%xmm0
call   1050 <tanf@plt>
call   1060 <cosf@plt>
movss  0x10(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1464 <test2f+0x2f4>
jnp    146b <test2f+0x2fb>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x20(%rsp),%xmm0
mulss  0x1bb0(%rip),%xmm0
movaps %xmm0,0x20(%rsp)
movaps (%rsp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x10(%rsp)
movaps 0x20(%rsp),%xmm0
mulss  0x1b8f(%rip),%xmm0
movaps %xmm0,0x20(%rsp)
movaps (%rsp),%xmm0
call   1060 <cosf@plt>
movss  0x10(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    14b4 <test2f+0x344>
jnp    14bb <test2f+0x34b>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x1b3e(%rip),%xmm1
xorps  0x20(%rsp),%xmm1
movaps (%rsp),%xmm0
divss  %xmm1,%xmm0
call   1050 <tanf@plt>
andps  0x1b35(%rip),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x10(%rsp)
movaps (%rsp),%xmm0
divss  0x20(%rsp),%xmm0
call   1050 <tanf@plt>
call   1060 <cosf@plt>
movss  0x10(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1507 <test2f+0x397>
jnp    150e <test2f+0x39e>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x1aeb(%rip),%xmm0
andps  0x20(%rsp),%xmm0
movaps 0x1aef(%rip),%xmm1
andps  (%rsp),%xmm1
movaps %xmm1,0x10(%rsp)
orps   %xmm1,%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x40(%rsp)
movaps (%rsp),%xmm0
call   1060 <cosf@plt>
movss  0x40(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    154e <test2f+0x3de>
jnp    1555 <test2f+0x3e5>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x20(%rsp),%xmm1
addss  %xmm1,%xmm1
movaps 0x1a9b(%rip),%xmm0
movaps %xmm1,0x20(%rsp)
andps  %xmm1,%xmm0
orps   0x10(%rsp),%xmm0
call   1060 <cosf@plt>
movss  %xmm0,0x40(%rsp)
movaps (%rsp),%xmm0
call   1060 <cosf@plt>
movss  0x40(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1593 <test2f+0x423>
jnp    159a <test2f+0x42a>
xor    %eax,%eax
call   1080 <link_error@plt>
xorps  %xmm1,%xmm1
movaps (%rsp),%xmm0
call   1040 <hypotf@plt>
ucomiss 0x10(%rsp),%xmm0
jne    15af <test2f+0x43f>
jnp    15b6 <test2f+0x446>
xor    %eax,%eax
call   1080 <link_error@plt>
xorps  %xmm0,%xmm0
movaps (%rsp),%xmm1
call   1040 <hypotf@plt>
ucomiss 0x10(%rsp),%xmm0
jne    15cb <test2f+0x45b>
jnp    15d2 <test2f+0x462>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x20(%rsp),%xmm0
addss  %xmm0,%xmm0
movaps %xmm0,0x20(%rsp)
movaps (%rsp),%xmm0
movaps %xmm0,%xmm1
call   1040 <hypotf@plt>
movss  0x1a38(%rip),%xmm1
mulss  0x10(%rsp),%xmm1
movss  %xmm1,0x50(%rsp)
ucomiss %xmm1,%xmm0
jne    1607 <test2f+0x497>
jnp    160e <test2f+0x49e>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x60(%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,0x40(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x40(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    163e <test2f+0x4ce>
jnp    1645 <test2f+0x4d5>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x19b4(%rip),%xmm1
xorps  0x20(%rsp),%xmm1
movaps (%rsp),%xmm0
movaps %xmm1,0x40(%rsp)
call   1040 <hypotf@plt>
movss  %xmm0,0x30(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1680 <test2f+0x510>
jnp    1687 <test2f+0x517>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x60(%rsp),%xmm0
movaps 0x40(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,0x30(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    16b7 <test2f+0x547>
jnp    16be <test2f+0x54e>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x10(%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,0x30(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x30(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    16ee <test2f+0x57e>
jnp    16f5 <test2f+0x585>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x1914(%rip),%xmm1
andps  0x20(%rsp),%xmm1
movaps (%rsp),%xmm0
movaps %xmm1,0x30(%rsp)
call   1040 <hypotf@plt>
movss  %xmm0,0x70(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x70(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1730 <test2f+0x5c0>
jnp    1737 <test2f+0x5c7>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x10(%rsp),%xmm0
movaps 0x30(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,0x70(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x70(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1767 <test2f+0x5f7>
jnp    176e <test2f+0x5fe>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x188b(%rip),%xmm2
movaps 0x60(%rsp),%xmm0
orps   %xmm2,%xmm0
movaps 0x40(%rsp),%xmm1
orps   %xmm2,%xmm1
call   1040 <hypotf@plt>
movss  %xmm0,0x70(%rsp)
movaps (%rsp),%xmm0
movaps 0x20(%rsp),%xmm1
call   1040 <hypotf@plt>
movss  0x70(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    17ab <test2f+0x63b>
jnp    17b2 <test2f+0x642>
xor    %eax,%eax
call   1080 <link_error@plt>
xorps  %xmm1,%xmm1
movaps 0x60(%rsp),%xmm0
call   1040 <hypotf@plt>
ucomiss 0x10(%rsp),%xmm0
jne    17c8 <test2f+0x658>
jnp    17cf <test2f+0x65f>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x60(%rsp),%xmm0
movaps (%rsp),%xmm1
call   1040 <hypotf@plt>
ucomiss 0x50(%rsp),%xmm0
jne    17e6 <test2f+0x676>
jnp    17ed <test2f+0x67d>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,0x10(%rsp)
mov    $0x1,%al
call   1090 <puref@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x50(%rsp)
movsd  0x10(%rsp),%xmm0
mov    $0x1,%al
call   1090 <puref@plt>
neg    %eax
xorps  %xmm1,%xmm1
cvtsi2ss %eax,%xmm1
movss  0x50(%rsp),%xmm0
call   1040 <hypotf@plt>
movss  %xmm0,0x50(%rsp)
movsd  0x10(%rsp),%xmm0
mov    $0x1,%al
call   1090 <puref@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
andps  0x17bf(%rip),%xmm0
mulss  0x17d3(%rip),%xmm0
movss  0x50(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1866 <test2f+0x6f6>
jnp    186d <test2f+0x6fd>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x60(%rsp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,0x10(%rsp)
movaps 0x30(%rsp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm1
xorps  0x176f(%rip),%xmm1
movss  0x10(%rsp),%xmm0
call   1040 <hypotf@plt>
movss  %xmm0,0x10(%rsp)
movaps (%rsp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,0x30(%rsp)
movaps 0x20(%rsp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm1
movss  0x30(%rsp),%xmm0
call   1040 <hypotf@plt>
movss  0x10(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    18d6 <test2f+0x766>
jnp    18dd <test2f+0x76d>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm4
movaps %xmm4,%xmm5
cmpunordss %xmm4,%xmm5
movaps %xmm5,%xmm1
movaps 0x20(%rsp),%xmm3
andps  %xmm3,%xmm1
movaps %xmm3,%xmm0
maxss  %xmm4,%xmm0
movaps %xmm5,%xmm6
andnps %xmm0,%xmm6
movaps %xmm1,0x30(%rsp)
orps   %xmm1,%xmm6
movaps %xmm3,%xmm0
minss  %xmm6,%xmm0
movaps %xmm6,%xmm1
cmpunordss %xmm6,%xmm1
movaps %xmm1,%xmm2
andnps %xmm0,%xmm2
andps  %xmm3,%xmm1
orps   %xmm2,%xmm1
ucomiss %xmm3,%xmm1
movaps %xmm5,0x10(%rsp)
jne    1930 <test2f+0x7c0>
jnp    1951 <test2f+0x7e1>
xor    %eax,%eax
movaps %xmm6,0x50(%rsp)
call   1080 <link_error@plt>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x50(%rsp),%xmm6
movaps 0x10(%rsp),%xmm5
movaps (%rsp),%xmm4
movaps %xmm5,%xmm0
andps  %xmm6,%xmm0
minss  %xmm4,%xmm6
movaps %xmm5,%xmm1
andnps %xmm6,%xmm1
orps   %xmm0,%xmm1
ucomiss %xmm4,%xmm1
jne    196b <test2f+0x7fb>
jnp    1982 <test2f+0x812>
xor    %eax,%eax
call   1080 <link_error@plt>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x10(%rsp),%xmm5
movaps (%rsp),%xmm4
movaps 0x20(%rsp),%xmm3
movaps %xmm3,%xmm0
minss  %xmm4,%xmm0
movaps %xmm5,%xmm6
andnps %xmm0,%xmm6
orps   0x30(%rsp),%xmm6
movaps %xmm3,%xmm0
maxss  %xmm6,%xmm0
movaps %xmm6,%xmm1
cmpunordss %xmm6,%xmm1
movaps %xmm1,%xmm2
andnps %xmm0,%xmm2
andps  %xmm3,%xmm1
orps   %xmm2,%xmm1
ucomiss %xmm3,%xmm1
jne    19bb <test2f+0x84b>
jnp    19dc <test2f+0x86c>
xor    %eax,%eax
movaps %xmm6,0x30(%rsp)
call   1080 <link_error@plt>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps 0x30(%rsp),%xmm6
movaps 0x10(%rsp),%xmm5
movaps (%rsp),%xmm4
movaps %xmm5,%xmm0
andps  %xmm6,%xmm0
maxss  %xmm4,%xmm6
andnps %xmm6,%xmm5
orps   %xmm0,%xmm5
ucomiss %xmm4,%xmm5
jne    19f3 <test2f+0x883>
jnp    1a05 <test2f+0x895>
xor    %eax,%eax
call   1080 <link_error@plt>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm4
ucomiss %xmm4,%xmm4
movaps 0x20(%rsp),%xmm0
jp     1d57 <test2f+0xbe7>
movaps %xmm4,%xmm1
subss  %xmm0,%xmm1
xorps  %xmm6,%xmm6
movaps %xmm1,%xmm3
mulss  %xmm6,%xmm3
movaps %xmm1,0x30(%rsp)
movaps %xmm1,%xmm5
addss  %xmm6,%xmm5
ucomiss %xmm3,%xmm3
movaps %xmm3,%xmm7
movaps %xmm5,%xmm8
movaps 0x15bf(%rip),%xmm1
jp     1d6c <test2f+0xbfc>
addss  %xmm4,%xmm7
movaps %xmm0,%xmm2
subss  %xmm4,%xmm2
movaps %xmm2,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm2,0x10(%rsp)
addss  %xmm2,%xmm6
ucomiss %xmm0,%xmm0
jp     1dcc <test2f+0xc5c>
subss  %xmm4,%xmm0
xorps  %xmm1,%xmm0
ucomiss %xmm0,%xmm7
jne    1a84 <test2f+0x914>
jp     1a84 <test2f+0x914>
xorps  %xmm1,%xmm6
ucomiss %xmm6,%xmm8
jne    1a84 <test2f+0x914>
jnp    1aa3 <test2f+0x933>
xor    %eax,%eax
movaps %xmm3,0x50(%rsp)
movaps %xmm5,0x70(%rsp)
call   1080 <link_error@plt>
movaps 0x70(%rsp),%xmm5
movaps 0x50(%rsp),%xmm3
movaps (%rsp),%xmm4
ucomiss %xmm3,%xmm3
jp     1e3a <test2f+0xcca>
movaps %xmm3,%xmm0
movaps %xmm5,%xmm1
addss  %xmm4,%xmm3
movaps 0x60(%rsp),%xmm2
subss  %xmm0,%xmm2
xorps  0x153a(%rip),%xmm2
ucomiss %xmm2,%xmm3
jne    1ad4 <test2f+0x964>
jp     1ad4 <test2f+0x964>
ucomiss %xmm1,%xmm5
jne    1ad4 <test2f+0x964>
jnp    1adf <test2f+0x96f>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm4
movaps %xmm4,%xmm0
call   1050 <tanf@plt>
movaps %xmm0,0x50(%rsp)
movaps 0x20(%rsp),%xmm0
call   1030 <sinf@plt>
movaps %xmm0,%xmm4
xorps  %xmm2,%xmm2
mulss  %xmm2,%xmm0
movaps %xmm4,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm0,%xmm0
jp     1ea1 <test2f+0xd31>
movaps 0x50(%rsp),%xmm2
addss  %xmm0,%xmm2
unpcklps %xmm1,%xmm2
movaps %xmm2,%xmm0
call   1070 <ccosf@plt>
movaps %xmm0,0x50(%rsp)
movaps 0x60(%rsp),%xmm0
call   1050 <tanf@plt>
movss  %xmm0,0x70(%rsp)
movaps 0x40(%rsp),%xmm0
call   1030 <sinf@plt>
movaps %xmm0,%xmm4
movss  0x14e6(%rip),%xmm0
mulss  %xmm4,%xmm0
xorps  %xmm1,%xmm1
subss  %xmm4,%xmm1
ucomiss %xmm0,%xmm0
jp     1ecc <test2f+0xd5c>
subss  0x70(%rsp),%xmm0
unpcklps %xmm1,%xmm0
call   1070 <ccosf@plt>
movaps 0x50(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1b89 <test2f+0xa19>
jp     1b89 <test2f+0xa19>
cmpneqps %xmm0,%xmm1
pextrw $0x2,%xmm1,%eax
test   $0x1,%al
je     1b90 <test2f+0xa20>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,0x40(%rsp)
movaps 0x30(%rsp),%xmm0
call   1030 <sinf@plt>
movaps %xmm0,%xmm4
xorps  %xmm2,%xmm2
mulss  %xmm2,%xmm0
movaps %xmm4,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm0,%xmm0
jp     1efe <test2f+0xd8e>
movaps 0x40(%rsp),%xmm2
addss  %xmm0,%xmm2
unpcklps %xmm1,%xmm2
movaps %xmm2,%xmm0
call   1070 <ccosf@plt>
movaps %xmm0,0x40(%rsp)
movaps 0x60(%rsp),%xmm0
call   1050 <tanf@plt>
xorps  0x1414(%rip),%xmm0
movaps %xmm0,0x30(%rsp)
movaps 0x10(%rsp),%xmm0
call   1030 <sinf@plt>
movaps %xmm0,%xmm4
xorps  %xmm1,%xmm1
mulss  %xmm1,%xmm0
addss  %xmm4,%xmm1
ucomiss %xmm0,%xmm0
jp     1f29 <test2f+0xdb9>
movaps 0x30(%rsp),%xmm2
subss  %xmm0,%xmm2
xorps  0x13de(%rip),%xmm1
unpcklps %xmm1,%xmm2
movaps %xmm2,%xmm0
call   1070 <ccosf@plt>
movaps 0x40(%rsp),%xmm1
ucomiss %xmm0,%xmm1
jne    1c46 <test2f+0xad6>
jp     1c46 <test2f+0xad6>
cmpneqps %xmm0,%xmm1
pextrw $0x2,%xmm1,%eax
test   $0x1,%al
je     1c4d <test2f+0xadd>
xor    %eax,%eax
call   1080 <link_error@plt>
xorps  %xmm2,%xmm2
movaps (%rsp),%xmm6
movaps %xmm6,%xmm5
mulss  %xmm2,%xmm5
movaps %xmm6,%xmm4
addss  %xmm2,%xmm4
ucomiss %xmm5,%xmm5
jp     1f54 <test2f+0xde4>
movaps %xmm5,%xmm0
movaps %xmm4,%xmm1
addss  0x13bf(%rip),%xmm5
addss  0x13bb(%rip),%xmm0
xorps  0x1378(%rip),%xmm0
ucomiss %xmm0,%xmm5
jne    1c9a <test2f+0xb2a>
jp     1c9a <test2f+0xb2a>
addss  %xmm2,%xmm1
ucomiss %xmm1,%xmm4
jne    1c9a <test2f+0xb2a>
jnp    1ca5 <test2f+0xb35>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm6
movaps %xmm6,%xmm0
call   1050 <tanf@plt>
movss  %xmm0,(%rsp)
movaps 0x20(%rsp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm4
xorps  %xmm1,%xmm1
mulss  %xmm1,%xmm0
movaps %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps %xmm2,0x10(%rsp)
ucomiss %xmm0,%xmm0
jp     1fc3 <test2f+0xe53>
movss  (%rsp),%xmm1
addss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movaps 0x60(%rsp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,0x60(%rsp)
movaps 0x20(%rsp),%xmm0
call   1050 <tanf@plt>
movaps %xmm0,%xmm4
xorps  %xmm1,%xmm1
mulss  %xmm1,%xmm0
addss  %xmm4,%xmm1
ucomiss %xmm0,%xmm0
jp     1ff8 <test2f+0xe88>
movaps 0x60(%rsp),%xmm2
addss  %xmm0,%xmm2
xorps  0x12d7(%rip),%xmm2
movss  (%rsp),%xmm0
ucomiss %xmm2,%xmm0
jne    1d49 <test2f+0xbd9>
jp     1d49 <test2f+0xbd9>
movaps 0x10(%rsp),%xmm0
ucomiss %xmm1,%xmm0
jne    1d49 <test2f+0xbd9>
jp     1d49 <test2f+0xbd9>
add    $0xa8,%rsp
ret
xor    %eax,%eax
add    $0xa8,%rsp
jmp    1080 <link_error@plt>
xor    %eax,%eax
call   1080 <link_error@plt>
movaps (%rsp),%xmm4
movaps 0x20(%rsp),%xmm0
jmp    1a13 <test2f+0x8a3>
ucomiss %xmm5,%xmm5
movaps %xmm3,%xmm7
movaps %xmm5,%xmm8
jnp    1a47 <test2f+0x8d7>
movaps %xmm3,0x50(%rsp)
movss  0x12a7(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps 0x30(%rsp),%xmm0
movaps %xmm5,0x70(%rsp)
call   2030 <__mulsc3>
xorps  %xmm6,%xmm6
movaps 0x70(%rsp),%xmm5
movaps 0x50(%rsp),%xmm3
movaps 0x124e(%rip),%xmm1
movaps (%rsp),%xmm4
movaps %xmm0,%xmm7
movaps 0x20(%rsp),%xmm0
movaps %xmm7,%xmm8
shufps $0x55,%xmm7,%xmm8
jmp    1a47 <test2f+0x8d7>
ucomiss %xmm6,%xmm6
jnp    1a6b <test2f+0x8fb>
movaps %xmm3,0x50(%rsp)
movss  0x124e(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps 0x10(%rsp),%xmm0
movaps %xmm5,0x70(%rsp)
movaps %xmm8,0x90(%rsp)
movaps %xmm7,0x80(%rsp)
call   2030 <__mulsc3>
movaps 0x80(%rsp),%xmm7
movaps 0x90(%rsp),%xmm8
movaps 0x70(%rsp),%xmm5
movaps 0x50(%rsp),%xmm3
movaps 0x11d6(%rip),%xmm1
movaps (%rsp),%xmm4
movaps %xmm0,%xmm6
shufps $0x55,%xmm0,%xmm6
jmp    1a6b <test2f+0x8fb>
ucomiss %xmm5,%xmm5
movaps %xmm3,%xmm0
movaps %xmm5,%xmm1
jnp    1ab2 <test2f+0x942>
movss  0x11df(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps 0x30(%rsp),%xmm0
call   2030 <__mulsc3>
movaps %xmm0,0x50(%rsp)
shufps $0x55,%xmm0,%xmm0
movaps %xmm0,0x70(%rsp)
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps 0x30(%rsp),%xmm0
movss  0x11ae(%rip),%xmm3
call   2030 <__mulsc3>
movaps 0x70(%rsp),%xmm5
movaps 0x50(%rsp),%xmm3
movaps (%rsp),%xmm4
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1ab2 <test2f+0x942>
ucomiss %xmm1,%xmm1
jnp    1b10 <test2f+0x9a0>
movss  0x117e(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm4,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1b10 <test2f+0x9a0>
ucomiss %xmm1,%xmm1
jnp    1b62 <test2f+0x9f2>
xorps  0x1124(%rip),%xmm4
movss  0x114c(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm4,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1b62 <test2f+0x9f2>
ucomiss %xmm1,%xmm1
jnp    1bc2 <test2f+0xa52>
movss  0x1121(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm4,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1bc2 <test2f+0xa52>
ucomiss %xmm1,%xmm1
jnp    1c12 <test2f+0xaa2>
movss  0x10f6(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm4,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1c12 <test2f+0xaa2>
ucomiss %xmm4,%xmm4
movaps %xmm5,%xmm0
movaps %xmm4,%xmm1
jnp    1c71 <test2f+0xb01>
movss  0x10c5(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm6,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,0x10(%rsp)
shufps $0x55,%xmm0,%xmm0
addss  0x10b6(%rip),%xmm0
movaps %xmm0,0x40(%rsp)
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps (%rsp),%xmm0
movss  0x108f(%rip),%xmm3
call   2030 <__mulsc3>
movaps 0x10(%rsp),%xmm5
movaps 0x40(%rsp),%xmm4
xorps  %xmm2,%xmm2
movaps (%rsp),%xmm6
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1c71 <test2f+0xb01>
movaps 0x10(%rsp),%xmm1
ucomiss %xmm1,%xmm1
jnp    1cdb <test2f+0xb6b>
movss  0x1057(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm4,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
movaps %xmm1,0x10(%rsp)
jmp    1cdb <test2f+0xb6b>
ucomiss %xmm1,%xmm1
jnp    1d19 <test2f+0xba9>
movss  0x1027(%rip),%xmm3
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
movaps %xmm4,%xmm0
call   2030 <__mulsc3>
movaps %xmm0,%xmm1
shufps $0x55,%xmm0,%xmm1
jmp    1d19 <test2f+0xba9>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)

LLVM IR (-O0):
define void @test2f(float %0, float %1) {
%3 = alloca float
%4 = alloca float
%5 = alloca { float, float }
%6 = alloca { float, float }
%7 = alloca { float, float }
%8 = alloca { float, float }
%9 = alloca { float, float }
%10 = alloca { float, float }
%11 = alloca { float, float }
%12 = alloca { float, float }
%13 = alloca { float, float }
%14 = alloca { float, float }
%15 = alloca { float, float }
%16 = alloca { float, float }
%17 = alloca { float, float }
%18 = alloca { float, float }
%19 = alloca { float, float }
%20 = alloca { float, float }
%21 = alloca { float, float }
%22 = alloca { float, float }
%23 = alloca { float, float }
%24 = alloca { float, float }
store float %0, float* %3
store float %1, float* %4
%25 = load float, float* %3
%26 = load float, float* %4
%27 = fsub float %25, %26
%28 = call float @tanf(float %27)
%29 = fneg float %28
%30 = load float, float* %4
%31 = load float, float* %3
%32 = fsub float %30, %31
%33 = call float @tanf(float %32)
%34 = fcmp une float %29, %33
br i1 %34, label %35, label %37
35: ; preds = %2
%36 = call i32 (...) @link_error()
br label %37
37: ; preds = %35, %2
%38 = load float, float* %3
%39 = load float, float* %4
%40 = fsub float %38, %39
%41 = call float @sinf(float %40)
%42 = fneg float %41
%43 = load float, float* %4
%44 = load float, float* %3
%45 = fsub float %43, %44
%46 = call float @sinf(float %45)
%47 = fcmp une float %42, %46
br i1 %47, label %48, label %50
48: ; preds = %37
%49 = call i32 (...) @link_error()
br label %50
50: ; preds = %48, %37
%51 = load float, float* %3
%52 = fneg float %51
%53 = load float, float* %4
%54 = fmul float %52, %53
%55 = call float @cosf(float %54)
%56 = load float, float* %3
%57 = load float, float* %4
%58 = fmul float %56, %57
%59 = call float @cosf(float %58)
%60 = fcmp une float %55, %59
br i1 %60, label %61, label %63
61: ; preds = %50
%62 = call i32 (...) @link_error()
br label %63
63: ; preds = %61, %50
%64 = load float, float* %3
%65 = load float, float* %4
%66 = fneg float %65
%67 = fmul float %64, %66
%68 = call float @cosf(float %67)
%69 = load float, float* %3
%70 = load float, float* %4
%71 = fmul float %69, %70
%72 = call float @cosf(float %71)
%73 = fcmp une float %68, %72
br i1 %73, label %74, label %76
74: ; preds = %63
%75 = call i32 (...) @link_error()
br label %76
76: ; preds = %74, %63
%77 = load float, float* %3
%78 = fneg float %77
%79 = load float, float* %4
%80 = fdiv float %78, %79
%81 = call float @cosf(float %80)
%82 = load float, float* %3
%83 = load float, float* %4
%84 = fdiv float %82, %83
%85 = call float @cosf(float %84)
%86 = fcmp une float %81, %85
br i1 %86, label %87, label %89
87: ; preds = %76
%88 = call i32 (...) @link_error()
br label %89
89: ; preds = %87, %76
%90 = load float, float* %3
%91 = load float, float* %4
%92 = fneg float %91
%93 = fdiv float %90, %92
%94 = call float @cosf(float %93)
%95 = load float, float* %3
%96 = load float, float* %4
%97 = fdiv float %95, %96
%98 = call float @cosf(float %97)
%99 = fcmp une float %94, %98
br i1 %99, label %100, label %102
100: ; preds = %89
%101 = call i32 (...) @link_error()
br label %102
102: ; preds = %100, %89
%103 = load float, float* %3
%104 = load float, float* %4
%105 = fneg float %104
%106 = fdiv float %103, %105
%107 = call float @tanf(float %106)
%108 = call float @llvm.fabs.f32(float %107)
%109 = fneg float %108
%110 = call float @cosf(float %109)
%111 = load float, float* %3
%112 = load float, float* %4
%113 = fdiv float %111, %112
%114 = call float @tanf(float %113)
%115 = call float @cosf(float %114)
%116 = fcmp une float %110, %115
br i1 %116, label %117, label %119
117: ; preds = %102
%118 = call i32 (...) @link_error()
br label %119
119: ; preds = %117, %102
%120 = load float, float* %4
%121 = fcmp olt float %120, 1.000000e+01
br i1 %121, label %122, label %125
122: ; preds = %119
%123 = load float, float* %3
%124 = fneg float %123
br label %127
125: ; preds = %119
%126 = load float, float* %4
br label %127
127: ; preds = %125, %122
%128 = phi float [ %124, %122 ], [ %126, %125 ]
%129 = call float @cosf(float %128)
%130 = load float, float* %4
%131 = fcmp olt float %130, 1.000000e+01
br i1 %131, label %132, label %134
132: ; preds = %127
%133 = load float, float* %3
br label %136
134: ; preds = %127
%135 = load float, float* %4
br label %136
136: ; preds = %134, %132
%137 = phi float [ %133, %132 ], [ %135, %134 ]
%138 = call float @cosf(float %137)
%139 = fcmp une float %129, %138
br i1 %139, label %140, label %142
140: ; preds = %136
%141 = call i32 (...) @link_error()
br label %142
142: ; preds = %140, %136
%143 = load float, float* %4
%144 = fcmp olt float %143, 1.000000e+01
br i1 %144, label %145, label %147
145: ; preds = %142
%146 = load float, float* %3
br label %150
147: ; preds = %142
%148 = load float, float* %4
%149 = fneg float %148
br label %150
150: ; preds = %147, %145
%151 = phi float [ %146, %145 ], [ %149, %147 ]
%152 = call float @cosf(float %151)
%153 = load float, float* %4
%154 = fcmp olt float %153, 1.000000e+01
br i1 %154, label %155, label %157
155: ; preds = %150
%156 = load float, float* %3
br label %159
157: ; preds = %150
%158 = load float, float* %4
br label %159
159: ; preds = %157, %155
%160 = phi float [ %156, %155 ], [ %158, %157 ]
%161 = call float @cosf(float %160)
%162 = fcmp une float %152, %161
br i1 %162, label %163, label %165
163: ; preds = %159
%164 = call i32 (...) @link_error()
br label %165
165: ; preds = %163, %159
%166 = load float, float* %4
%167 = fcmp olt float %166, 1.000000e+01
br i1 %167, label %168, label %172
168: ; preds = %165
%169 = load float, float* %3
%170 = call float @llvm.fabs.f32(float %169)
%171 = fneg float %170
br label %185
172: ; preds = %165
%173 = load float, float* %3
%174 = fcmp olt float %173, 2.000000e+01
br i1 %174, label %175, label %178
175: ; preds = %172
%176 = load float, float* %3
%177 = fneg float %176
br label %182
178: ; preds = %172
%179 = load float, float* %4
%180 = call float @llvm.fabs.f32(float %179)
%181 = fneg float %180
br label %182
182: ; preds = %178, %175
%183 = phi float [ %177, %175 ], [ %181, %178 ]
%184 = call float @tanf(float %183)
br label %185
185: ; preds = %182, %168
%186 = phi float [ %171, %168 ], [ %184, %182 ]
%187 = call float @cosf(float %186)
%188 = load float, float* %4
%189 = fcmp olt float %188, 1.000000e+01
br i1 %189, label %190, label %192
190: ; preds = %185
%191 = load float, float* %3
br label %202
192: ; preds = %185
%193 = load float, float* %3
%194 = fcmp olt float %193, 2.000000e+01
br i1 %194, label %195, label %197
195: ; preds = %192
%196 = load float, float* %3
br label %199
197: ; preds = %192
%198 = load float, float* %4
br label %199
199: ; preds = %197, %195
%200 = phi float [ %196, %195 ], [ %198, %197 ]
%201 = call float @tanf(float %200)
br label %202
202: ; preds = %199, %190
%203 = phi float [ %191, %190 ], [ %201, %199 ]
%204 = call float @cosf(float %203)
%205 = fcmp une float %187, %204
br i1 %205, label %206, label %208
206: ; preds = %202
%207 = call i32 (...) @link_error()
br label %208
208: ; preds = %206, %202
%209 = load float, float* %4
%210 = fmul float %209, 3.000000e+00
store float %210, float* %4
%211 = load float, float* %3
%212 = fneg float %211
%213 = call float @cosf(float %212)
%214 = load float, float* %4
%215 = fmul float %214, 3.000000e+00
store float %215, float* %4
%216 = load float, float* %3
%217 = call float @cosf(float %216)
%218 = fcmp une float %213, %217
br i1 %218, label %219, label %221
219: ; preds = %208
%220 = call i32 (...) @link_error()
br label %221
221: ; preds = %219, %208
%222 = load float, float* %3
%223 = load float, float* %4
%224 = fneg float %223
%225 = fdiv float %222, %224
%226 = call float @tanf(float %225)
%227 = call float @llvm.fabs.f32(float %226)
%228 = fneg float %227
%229 = call float @cosf(float %228)
%230 = load float, float* %3
%231 = load float, float* %4
%232 = fdiv float %230, %231
%233 = call float @tanf(float %232)
%234 = call float @cosf(float %233)
%235 = fcmp une float %229, %234
br i1 %235, label %236, label %238
236: ; preds = %221
%237 = call i32 (...) @link_error()
br label %238
238: ; preds = %236, %221
%239 = load float, float* %3
%240 = load float, float* %4
%241 = call float @llvm.copysign.f32(float %239, float %240)
%242 = call float @cosf(float %241)
%243 = load float, float* %3
%244 = call float @cosf(float %243)
%245 = fcmp une float %242, %244
br i1 %245, label %246, label %248
246: ; preds = %238
%247 = call i32 (...) @link_error()
br label %248
248: ; preds = %246, %238
%249 = load float, float* %3
%250 = call float @llvm.fabs.f32(float %249)
%251 = fneg float %250
%252 = load float, float* %4
%253 = fmul float %252, 2.000000e+00
store float %253, float* %4
%254 = call float @llvm.copysign.f32(float %251, float %253)
%255 = call float @cosf(float %254)
%256 = load float, float* %4
%257 = fmul float %256, 2.000000e+00
store float %257, float* %4
%258 = load float, float* %3
%259 = call float @cosf(float %258)
%260 = fcmp une float %255, %259
br i1 %260, label %261, label %263
261: ; preds = %248
%262 = call i32 (...) @link_error()
br label %263
263: ; preds = %261, %248
%264 = load float, float* %3
%265 = call float @hypotf(float %264, float 0.000000e+00)
%266 = load float, float* %3
%267 = call float @llvm.fabs.f32(float %266)
%268 = fcmp une float %265, %267
br i1 %268, label %269, label %271
269: ; preds = %263
%270 = call i32 (...) @link_error()
br label %271
271: ; preds = %269, %263
%272 = load float, float* %3
%273 = call float @hypotf(float 0.000000e+00, float %272)
%274 = load float, float* %3
%275 = call float @llvm.fabs.f32(float %274)
%276 = fcmp une float %273, %275
br i1 %276, label %277, label %279
277: ; preds = %271
%278 = call i32 (...) @link_error()
br label %279
279: ; preds = %277, %271
%280 = load float, float* %3
%281 = load float, float* %3
%282 = call float @hypotf(float %280, float %281)
%283 = load float, float* %3
%284 = call float @llvm.fabs.f32(float %283)
%285 = call float @sqrtf(float 2.000000e+00)
%286 = fmul float %284, %285
%287 = fcmp une float %282, %286
br i1 %287, label %288, label %290
288: ; preds = %279
%289 = call i32 (...) @link_error()
br label %290
290: ; preds = %288, %279
%291 = load float, float* %3
%292 = fneg float %291
%293 = load float, float* %4
%294 = call float @hypotf(float %292, float %293)
%295 = load float, float* %3
%296 = load float, float* %4
%297 = call float @hypotf(float %295, float %296)
%298 = fcmp une float %294, %297
br i1 %298, label %299, label %301
299: ; preds = %290
%300 = call i32 (...) @link_error()
br label %301
301: ; preds = %299, %290
%302 = load float, float* %3
%303 = load float, float* %4
%304 = fneg float %303
%305 = call float @hypotf(float %302, float %304)
%306 = load float, float* %3
%307 = load float, float* %4
%308 = call float @hypotf(float %306, float %307)
%309 = fcmp une float %305, %308
br i1 %309, label %310, label %312
310: ; preds = %301
%311 = call i32 (...) @link_error()
br label %312
312: ; preds = %310, %301
%313 = load float, float* %3
%314 = fneg float %313
%315 = load float, float* %4
%316 = fneg float %315
%317 = call float @hypotf(float %314, float %316)
%318 = load float, float* %3
%319 = load float, float* %4
%320 = call float @hypotf(float %318, float %319)
%321 = fcmp une float %317, %320
br i1 %321, label %322, label %324
322: ; preds = %312
%323 = call i32 (...) @link_error()
br label %324
324: ; preds = %322, %312
%325 = load float, float* %3
%326 = call float @llvm.fabs.f32(float %325)
%327 = load float, float* %4
%328 = call float @hypotf(float %326, float %327)
%329 = load float, float* %3
%330 = load float, float* %4
%331 = call float @hypotf(float %329, float %330)
%332 = fcmp une float %328, %331
br i1 %332, label %333, label %335
333: ; preds = %324
%334 = call i32 (...) @link_error()
br label %335
335: ; preds = %333, %324
%336 = load float, float* %3
%337 = load float, float* %4
%338 = call float @llvm.fabs.f32(float %337)
%339 = call float @hypotf(float %336, float %338)
%340 = load float, float* %3
%341 = load float, float* %4
%342 = call float @hypotf(float %340, float %341)
%343 = fcmp une float %339, %342
br i1 %343, label %344, label %346
344: ; preds = %335
%345 = call i32 (...) @link_error()
br label %346
346: ; preds = %344, %335
%347 = load float, float* %3
%348 = call float @llvm.fabs.f32(float %347)
%349 = load float, float* %4
%350 = call float @llvm.fabs.f32(float %349)
%351 = call float @hypotf(float %348, float %350)
%352 = load float, float* %3
%353 = load float, float* %4
%354 = call float @hypotf(float %352, float %353)
%355 = fcmp une float %351, %354
br i1 %355, label %356, label %358
356: ; preds = %346
%357 = call i32 (...) @link_error()
br label %358
358: ; preds = %356, %346
%359 = load float, float* %3
%360 = fneg float %359
%361 = call float @llvm.fabs.f32(float %360)
%362 = fneg float %361
%363 = load float, float* %4
%364 = fneg float %363
%365 = call float @llvm.fabs.f32(float %364)
%366 = call float @llvm.fabs.f32(float %365)
%367 = call float @llvm.fabs.f32(float %366)
%368 = fneg float %367
%369 = call float @hypotf(float %362, float %368)
%370 = load float, float* %3
%371 = load float, float* %4
%372 = call float @hypotf(float %370, float %371)
%373 = fcmp une float %369, %372
br i1 %373, label %374, label %376
374: ; preds = %358
%375 = call i32 (...) @link_error()
br label %376
376: ; preds = %374, %358
%377 = load float, float* %3
%378 = fneg float %377
%379 = call float @hypotf(float %378, float 0.000000e+00)
%380 = load float, float* %3
%381 = call float @llvm.fabs.f32(float %380)
%382 = fcmp une float %379, %381
br i1 %382, label %383, label %385
383: ; preds = %376
%384 = call i32 (...) @link_error()
br label %385
385: ; preds = %383, %376
%386 = load float, float* %3
%387 = fneg float %386
%388 = load float, float* %3
%389 = call float @hypotf(float %387, float %388)
%390 = load float, float* %3
%391 = call float @llvm.fabs.f32(float %390)
%392 = call float @sqrtf(float 2.000000e+00)
%393 = fmul float %391, %392
%394 = fcmp une float %389, %393
br i1 %394, label %395, label %397
395: ; preds = %385
%396 = call i32 (...) @link_error()
br label %397
397: ; preds = %395, %385
%398 = load float, float* %3
%399 = fpext float %398 to double
%400 = call i32 (double, ...) bitcast (i32 (...)* @puref to i32 (double, ...)*)(double %399)
%401 = sitofp i32 %400 to float
%402 = load float, float* %3
%403 = fpext float %402 to double
%404 = call i32 (double, ...) bitcast (i32 (...)* @puref to i32 (double, ...)*)(double %403)
%405 = sub nsw i32 0, %404
%406 = sitofp i32 %405 to float
%407 = call float @hypotf(float %401, float %406)
%408 = load float, float* %3
%409 = fpext float %408 to double
%410 = call i32 (double, ...) bitcast (i32 (...)* @puref to i32 (double, ...)*)(double %409)
%411 = sitofp i32 %410 to float
%412 = call float @llvm.fabs.f32(float %411)
%413 = call float @sqrtf(float 2.000000e+00)
%414 = fmul float %412, %413
%415 = fcmp une float %407, %414
br i1 %415, label %416, label %418
416: ; preds = %397
%417 = call i32 (...) @link_error()
br label %418
418: ; preds = %416, %397
%419 = load float, float* %3
%420 = fneg float %419
%421 = call float @tanf(float %420)
%422 = load float, float* %4
%423 = call float @llvm.fabs.f32(float %422)
%424 = fneg float %423
%425 = call float @tanf(float %424)
%426 = call float @hypotf(float %421, float %425)
%427 = load float, float* %3
%428 = call float @tanf(float %427)
%429 = load float, float* %4
%430 = call float @tanf(float %429)
%431 = call float @hypotf(float %428, float %430)
%432 = fcmp une float %426, %431
br i1 %432, label %433, label %435
433: ; preds = %418
%434 = call i32 (...) @link_error()
br label %435
435: ; preds = %433, %418
%436 = load float, float* %3
%437 = load float, float* %4
%438 = call float @llvm.maxnum.f32(float %436, float %437)
%439 = load float, float* %4
%440 = call float @llvm.minnum.f32(float %438, float %439)
%441 = load float, float* %4
%442 = fcmp une float %440, %441
br i1 %442, label %443, label %445
443: ; preds = %435
%444 = call i32 (...) @link_error()
br label %445
445: ; preds = %443, %435
%446 = load float, float* %4
%447 = load float, float* %3
%448 = call float @llvm.maxnum.f32(float %446, float %447)
%449 = load float, float* %4
%450 = call float @llvm.minnum.f32(float %448, float %449)
%451 = load float, float* %4
%452 = fcmp une float %450, %451
br i1 %452, label %453, label %455
453: ; preds = %445
%454 = call i32 (...) @link_error()
br label %455
455: ; preds = %453, %445
%456 = load float, float* %3
%457 = load float, float* %3
%458 = load float, float* %4
%459 = call float @llvm.maxnum.f32(float %457, float %458)
%460 = call float @llvm.minnum.f32(float %456, float %459)
%461 = load float, float* %3
%462 = fcmp une float %460, %461
br i1 %462, label %463, label %465
463: ; preds = %455
%464 = call i32 (...) @link_error()
br label %465
465: ; preds = %463, %455
%466 = load float, float* %3
%467 = load float, float* %4
%468 = load float, float* %3
%469 = call float @llvm.maxnum.f32(float %467, float %468)
%470 = call float @llvm.minnum.f32(float %466, float %469)
%471 = load float, float* %3
%472 = fcmp une float %470, %471
br i1 %472, label %473, label %475
473: ; preds = %465
%474 = call i32 (...) @link_error()
br label %475
475: ; preds = %473, %465
%476 = load float, float* %3
%477 = load float, float* %4
%478 = call float @llvm.minnum.f32(float %476, float %477)
%479 = load float, float* %4
%480 = call float @llvm.maxnum.f32(float %478, float %479)
%481 = load float, float* %4
%482 = fcmp une float %480, %481
br i1 %482, label %483, label %485
483: ; preds = %475
%484 = call i32 (...) @link_error()
br label %485
485: ; preds = %483, %475
%486 = load float, float* %4
%487 = load float, float* %3
%488 = call float @llvm.minnum.f32(float %486, float %487)
%489 = load float, float* %4
%490 = call float @llvm.maxnum.f32(float %488, float %489)
%491 = load float, float* %4
%492 = fcmp une float %490, %491
br i1 %492, label %493, label %495
493: ; preds = %485
%494 = call i32 (...) @link_error()
br label %495
495: ; preds = %493, %485
%496 = load float, float* %3
%497 = load float, float* %3
%498 = load float, float* %4
%499 = call float @llvm.minnum.f32(float %497, float %498)
%500 = call float @llvm.maxnum.f32(float %496, float %499)
%501 = load float, float* %3
%502 = fcmp une float %500, %501
br i1 %502, label %503, label %505
503: ; preds = %495
%504 = call i32 (...) @link_error()
br label %505
505: ; preds = %503, %495
%506 = load float, float* %3
%507 = load float, float* %4
%508 = load float, float* %3
%509 = call float @llvm.minnum.f32(float %507, float %508)
%510 = call float @llvm.maxnum.f32(float %506, float %509)
%511 = load float, float* %3
%512 = fcmp une float %510, %511
br i1 %512, label %513, label %515
513: ; preds = %505
%514 = call i32 (...) @link_error()
br label %515
515: ; preds = %513, %505
%516 = load float, float* %3
%517 = load float, float* %3
%518 = fneg float %517
%519 = fneg float %518
%520 = fcmp une float %516, %519
%521 = or i1 %520, false
br i1 %521, label %522, label %524
522: ; preds = %515
%523 = call i32 (...) @link_error()
br label %524
524: ; preds = %522, %515
%525 = load float, float* %3
%526 = load float, float* %3
%527 = load float, float* %4
%528 = fsub float %526, %527
%529 = fmul float %528, 0.000000e+00
%530 = fmul float %528, 1.000000e+00
%531 = fsub float %529, 0.000000e+00
%532 = fadd float %530, 0.000000e+00
%533 = fcmp uno float %531, %531
br i1 %533, label %534, label %543
534: ; preds = %524
%535 = fcmp uno float %532, %532
br i1 %535, label %536, label %543
536: ; preds = %534
%537 = call <2 x float> @__mulsc3(float %528, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%538 = bitcast { float, float }* %5 to <2 x float>*
store <2 x float> %537, <2 x float>* %538
%539 = getelementptr inbounds { float, float }, { float, float }* %5, i32 0, i32 0
%540 = load float, float* %539
%541 = getelementptr inbounds { float, float }, { float, float }* %5, i32 0, i32 1
%542 = load float, float* %541
br label %543
543: ; preds = %536, %534, %524
%544 = phi float [ %531, %524 ], [ %531, %534 ], [ %540, %536 ]
%545 = phi float [ %532, %524 ], [ %532, %534 ], [ %542, %536 ]
%546 = fadd float %525, %544
%547 = load float, float* %3
%548 = fneg float %547
%549 = load float, float* %4
%550 = load float, float* %3
%551 = fsub float %549, %550
%552 = fmul float %551, 0.000000e+00
%553 = fmul float %551, 1.000000e+00
%554 = fsub float %552, 0.000000e+00
%555 = fadd float %553, 0.000000e+00
%556 = fcmp uno float %554, %554
br i1 %556, label %557, label %566
557: ; preds = %543
%558 = fcmp uno float %555, %555
br i1 %558, label %559, label %566
559: ; preds = %557
%560 = call <2 x float> @__mulsc3(float %551, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%561 = bitcast { float, float }* %6 to <2 x float>*
store <2 x float> %560, <2 x float>* %561
%562 = getelementptr inbounds { float, float }, { float, float }* %6, i32 0, i32 0
%563 = load float, float* %562
%564 = getelementptr inbounds { float, float }, { float, float }* %6, i32 0, i32 1
%565 = load float, float* %564
br label %566
566: ; preds = %559, %557, %543
%567 = phi float [ %554, %543 ], [ %554, %557 ], [ %563, %559 ]
%568 = phi float [ %555, %543 ], [ %555, %557 ], [ %565, %559 ]
%569 = fadd float %548, %567
%570 = fneg float %569
%571 = fneg float %568
%572 = fcmp une float %546, %570
%573 = fcmp une float %545, %571
%574 = or i1 %572, %573
br i1 %574, label %575, label %577
575: ; preds = %566
%576 = call i32 (...) @link_error()
br label %577
577: ; preds = %575, %566
%578 = load float, float* %3
%579 = load float, float* %3
%580 = load float, float* %4
%581 = fsub float %579, %580
%582 = fmul float %581, 0.000000e+00
%583 = fmul float %581, 1.000000e+00
%584 = fsub float %582, 0.000000e+00
%585 = fadd float %583, 0.000000e+00
%586 = fcmp uno float %584, %584
br i1 %586, label %587, label %596
587: ; preds = %577
%588 = fcmp uno float %585, %585
br i1 %588, label %589, label %596
589: ; preds = %587
%590 = call <2 x float> @__mulsc3(float %581, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%591 = bitcast { float, float }* %7 to <2 x float>*
store <2 x float> %590, <2 x float>* %591
%592 = getelementptr inbounds { float, float }, { float, float }* %7, i32 0, i32 0
%593 = load float, float* %592
%594 = getelementptr inbounds { float, float }, { float, float }* %7, i32 0, i32 1
%595 = load float, float* %594
br label %596
596: ; preds = %589, %587, %577
%597 = phi float [ %584, %577 ], [ %584, %587 ], [ %593, %589 ]
%598 = phi float [ %585, %577 ], [ %585, %587 ], [ %595, %589 ]
%599 = fadd float %578, %597
%600 = load float, float* %3
%601 = fneg float %600
%602 = load float, float* %3
%603 = load float, float* %4
%604 = fsub float %602, %603
%605 = fmul float %604, 0.000000e+00
%606 = fmul float %604, 1.000000e+00
%607 = fsub float %605, 0.000000e+00
%608 = fadd float %606, 0.000000e+00
%609 = fcmp uno float %607, %607
br i1 %609, label %610, label %619
610: ; preds = %596
%611 = fcmp uno float %608, %608
br i1 %611, label %612, label %619
612: ; preds = %610
%613 = call <2 x float> @__mulsc3(float %604, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%614 = bitcast { float, float }* %8 to <2 x float>*
store <2 x float> %613, <2 x float>* %614
%615 = getelementptr inbounds { float, float }, { float, float }* %8, i32 0, i32 0
%616 = load float, float* %615
%617 = getelementptr inbounds { float, float }, { float, float }* %8, i32 0, i32 1
%618 = load float, float* %617
br label %619
619: ; preds = %612, %610, %596
%620 = phi float [ %607, %596 ], [ %607, %610 ], [ %616, %612 ]
%621 = phi float [ %608, %596 ], [ %608, %610 ], [ %618, %612 ]
%622 = fsub float %601, %620
%623 = fneg float %621
%624 = fneg float %622
%625 = fneg float %623
%626 = fcmp une float %599, %624
%627 = fcmp une float %598, %625
%628 = or i1 %626, %627
br i1 %628, label %629, label %631
629: ; preds = %619
%630 = call i32 (...) @link_error()
br label %631
631: ; preds = %629, %619
%632 = load float, float* %3
%633 = call float @tanf(float %632)
%634 = load float, float* %4
%635 = call float @sinf(float %634)
%636 = fmul float %635, 0.000000e+00
%637 = fmul float %635, 1.000000e+00
%638 = fsub float %636, 0.000000e+00
%639 = fadd float %637, 0.000000e+00
%640 = fcmp uno float %638, %638
br i1 %640, label %641, label %650
641: ; preds = %631
%642 = fcmp uno float %639, %639
br i1 %642, label %643, label %650
643: ; preds = %641
%644 = call <2 x float> @__mulsc3(float %635, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%645 = bitcast { float, float }* %9 to <2 x float>*
store <2 x float> %644, <2 x float>* %645
%646 = getelementptr inbounds { float, float }, { float, float }* %9, i32 0, i32 0
%647 = load float, float* %646
%648 = getelementptr inbounds { float, float }, { float, float }* %9, i32 0, i32 1
%649 = load float, float* %648
br label %650
650: ; preds = %643, %641, %631
%651 = phi float [ %638, %631 ], [ %638, %641 ], [ %647, %643 ]
%652 = phi float [ %639, %631 ], [ %639, %641 ], [ %649, %643 ]
%653 = fadd float %633, %651
%654 = getelementptr inbounds { float, float }, { float, float }* %10, i32 0, i32 0
%655 = getelementptr inbounds { float, float }, { float, float }* %10, i32 0, i32 1
store float %653, float* %654
store float %652, float* %655
%656 = bitcast { float, float }* %10 to <2 x float>*
%657 = load <2 x float>, <2 x float>* %656
%658 = call <2 x float> @ccosf(<2 x float> %657)
%659 = bitcast { float, float }* %11 to <2 x float>*
store <2 x float> %658, <2 x float>* %659
%660 = getelementptr inbounds { float, float }, { float, float }* %11, i32 0, i32 0
%661 = load float, float* %660
%662 = getelementptr inbounds { float, float }, { float, float }* %11, i32 0, i32 1
%663 = load float, float* %662
%664 = load float, float* %3
%665 = fneg float %664
%666 = call float @tanf(float %665)
%667 = fneg float %666
%668 = load float, float* %4
%669 = fneg float %668
%670 = call float @sinf(float %669)
%671 = fneg float %670
%672 = fmul float %671, 0.000000e+00
%673 = fmul float %671, 1.000000e+00
%674 = fsub float %672, 0.000000e+00
%675 = fadd float %673, 0.000000e+00
%676 = fcmp uno float %674, %674
br i1 %676, label %677, label %686
677: ; preds = %650
%678 = fcmp uno float %675, %675
br i1 %678, label %679, label %686
679: ; preds = %677
%680 = call <2 x float> @__mulsc3(float %671, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%681 = bitcast { float, float }* %12 to <2 x float>*
store <2 x float> %680, <2 x float>* %681
%682 = getelementptr inbounds { float, float }, { float, float }* %12, i32 0, i32 0
%683 = load float, float* %682
%684 = getelementptr inbounds { float, float }, { float, float }* %12, i32 0, i32 1
%685 = load float, float* %684
br label %686
686: ; preds = %679, %677, %650
%687 = phi float [ %674, %650 ], [ %674, %677 ], [ %683, %679 ]
%688 = phi float [ %675, %650 ], [ %675, %677 ], [ %685, %679 ]
%689 = fadd float %667, %687
%690 = getelementptr inbounds { float, float }, { float, float }* %13, i32 0, i32 0
%691 = getelementptr inbounds { float, float }, { float, float }* %13, i32 0, i32 1
store float %689, float* %690
store float %688, float* %691
%692 = bitcast { float, float }* %13 to <2 x float>*
%693 = load <2 x float>, <2 x float>* %692
%694 = call <2 x float> @ccosf(<2 x float> %693)
%695 = bitcast { float, float }* %14 to <2 x float>*
store <2 x float> %694, <2 x float>* %695
%696 = getelementptr inbounds { float, float }, { float, float }* %14, i32 0, i32 0
%697 = load float, float* %696
%698 = getelementptr inbounds { float, float }, { float, float }* %14, i32 0, i32 1
%699 = load float, float* %698
%700 = fcmp une float %661, %697
%701 = fcmp une float %663, %699
%702 = or i1 %700, %701
br i1 %702, label %703, label %705
703: ; preds = %686
%704 = call i32 (...) @link_error()
br label %705
705: ; preds = %703, %686
%706 = load float, float* %3
%707 = call float @tanf(float %706)
%708 = load float, float* %3
%709 = load float, float* %4
%710 = fsub float %708, %709
%711 = call float @sinf(float %710)
%712 = fmul float %711, 0.000000e+00
%713 = fmul float %711, 1.000000e+00
%714 = fsub float %712, 0.000000e+00
%715 = fadd float %713, 0.000000e+00
%716 = fcmp uno float %714, %714
br i1 %716, label %717, label %726
717: ; preds = %705
%718 = fcmp uno float %715, %715
br i1 %718, label %719, label %726
719: ; preds = %717
%720 = call <2 x float> @__mulsc3(float %711, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%721 = bitcast { float, float }* %15 to <2 x float>*
store <2 x float> %720, <2 x float>* %721
%722 = getelementptr inbounds { float, float }, { float, float }* %15, i32 0, i32 0
%723 = load float, float* %722
%724 = getelementptr inbounds { float, float }, { float, float }* %15, i32 0, i32 1
%725 = load float, float* %724
br label %726
726: ; preds = %719, %717, %705
%727 = phi float [ %714, %705 ], [ %714, %717 ], [ %723, %719 ]
%728 = phi float [ %715, %705 ], [ %715, %717 ], [ %725, %719 ]
%729 = fadd float %707, %727
%730 = getelementptr inbounds { float, float }, { float, float }* %16, i32 0, i32 0
%731 = getelementptr inbounds { float, float }, { float, float }* %16, i32 0, i32 1
store float %729, float* %730
store float %728, float* %731
%732 = bitcast { float, float }* %16 to <2 x float>*
%733 = load <2 x float>, <2 x float>* %732
%734 = call <2 x float> @ccosf(<2 x float> %733)
%735 = bitcast { float, float }* %17 to <2 x float>*
store <2 x float> %734, <2 x float>* %735
%736 = getelementptr inbounds { float, float }, { float, float }* %17, i32 0, i32 0
%737 = load float, float* %736
%738 = getelementptr inbounds { float, float }, { float, float }* %17, i32 0, i32 1
%739 = load float, float* %738
%740 = load float, float* %3
%741 = fneg float %740
%742 = call float @tanf(float %741)
%743 = fneg float %742
%744 = load float, float* %4
%745 = load float, float* %3
%746 = fsub float %744, %745
%747 = call float @sinf(float %746)
%748 = fmul float %747, 0.000000e+00
%749 = fmul float %747, 1.000000e+00
%750 = fsub float %748, 0.000000e+00
%751 = fadd float %749, 0.000000e+00
%752 = fcmp uno float %750, %750
br i1 %752, label %753, label %762
753: ; preds = %726
%754 = fcmp uno float %751, %751
br i1 %754, label %755, label %762
755: ; preds = %753
%756 = call <2 x float> @__mulsc3(float %747, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%757 = bitcast { float, float }* %18 to <2 x float>*
store <2 x float> %756, <2 x float>* %757
%758 = getelementptr inbounds { float, float }, { float, float }* %18, i32 0, i32 0
%759 = load float, float* %758
%760 = getelementptr inbounds { float, float }, { float, float }* %18, i32 0, i32 1
%761 = load float, float* %760
br label %762
762: ; preds = %755, %753, %726
%763 = phi float [ %750, %726 ], [ %750, %753 ], [ %759, %755 ]
%764 = phi float [ %751, %726 ], [ %751, %753 ], [ %761, %755 ]
%765 = fsub float %743, %763
%766 = fneg float %764
%767 = getelementptr inbounds { float, float }, { float, float }* %19, i32 0, i32 0
%768 = getelementptr inbounds { float, float }, { float, float }* %19, i32 0, i32 1
store float %765, float* %767
store float %766, float* %768
%769 = bitcast { float, float }* %19 to <2 x float>*
%770 = load <2 x float>, <2 x float>* %769
%771 = call <2 x float> @ccosf(<2 x float> %770)
%772 = bitcast { float, float }* %20 to <2 x float>*
store <2 x float> %771, <2 x float>* %772
%773 = getelementptr inbounds { float, float }, { float, float }* %20, i32 0, i32 0
%774 = load float, float* %773
%775 = getelementptr inbounds { float, float }, { float, float }* %20, i32 0, i32 1
%776 = load float, float* %775
%777 = fcmp une float %737, %774
%778 = fcmp une float %739, %776
%779 = or i1 %777, %778
br i1 %779, label %780, label %782
780: ; preds = %762
%781 = call i32 (...) @link_error()
br label %782
782: ; preds = %780, %762
%783 = load float, float* %3
%784 = fmul float %783, 0.000000e+00
%785 = fmul float %783, 1.000000e+00
%786 = fsub float %784, 0.000000e+00
%787 = fadd float %785, 0.000000e+00
%788 = fcmp uno float %786, %786
br i1 %788, label %789, label %798
789: ; preds = %782
%790 = fcmp uno float %787, %787
br i1 %790, label %791, label %798
791: ; preds = %789
%792 = call <2 x float> @__mulsc3(float %783, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%793 = bitcast { float, float }* %21 to <2 x float>*
store <2 x float> %792, <2 x float>* %793
%794 = getelementptr inbounds { float, float }, { float, float }* %21, i32 0, i32 0
%795 = load float, float* %794
%796 = getelementptr inbounds { float, float }, { float, float }* %21, i32 0, i32 1
%797 = load float, float* %796
br label %798
798: ; preds = %791, %789, %782
%799 = phi float [ %786, %782 ], [ %786, %789 ], [ %795, %791 ]
%800 = phi float [ %787, %782 ], [ %787, %789 ], [ %797, %791 ]
%801 = fadd float -5.000000e+00, %799
%802 = fadd float 0.000000e+00, %800
%803 = load float, float* %3
%804 = fmul float %803, 0.000000e+00
%805 = fmul float %803, 1.000000e+00
%806 = fsub float %804, 0.000000e+00
%807 = fadd float %805, 0.000000e+00
%808 = fcmp uno float %806, %806
br i1 %808, label %809, label %818
809: ; preds = %798
%810 = fcmp uno float %807, %807
br i1 %810, label %811, label %818
811: ; preds = %809
%812 = call <2 x float> @__mulsc3(float %803, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%813 = bitcast { float, float }* %22 to <2 x float>*
store <2 x float> %812, <2 x float>* %813
%814 = getelementptr inbounds { float, float }, { float, float }* %22, i32 0, i32 0
%815 = load float, float* %814
%816 = getelementptr inbounds { float, float }, { float, float }* %22, i32 0, i32 1
%817 = load float, float* %816
br label %818
818: ; preds = %811, %809, %798
%819 = phi float [ %806, %798 ], [ %806, %809 ], [ %815, %811 ]
%820 = phi float [ %807, %798 ], [ %807, %809 ], [ %817, %811 ]
%821 = fadd float 5.000000e+00, %819
%822 = fadd float 0.000000e+00, %820
%823 = fneg float %822
%824 = fneg float %821
%825 = fneg float %823
%826 = fcmp une float %801, %824
%827 = fcmp une float %802, %825
%828 = or i1 %826, %827
br i1 %828, label %829, label %831
829: ; preds = %818
%830 = call i32 (...) @link_error()
br label %831
831: ; preds = %829, %818
%832 = load float, float* %3
%833 = call float @tanf(float %832)
%834 = load float, float* %4
%835 = call float @tanf(float %834)
%836 = fmul float %835, 0.000000e+00
%837 = fmul float %835, 1.000000e+00
%838 = fsub float %836, 0.000000e+00
%839 = fadd float %837, 0.000000e+00
%840 = fcmp uno float %838, %838
br i1 %840, label %841, label %850
841: ; preds = %831
%842 = fcmp uno float %839, %839
br i1 %842, label %843, label %850
843: ; preds = %841
%844 = call <2 x float> @__mulsc3(float %835, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%845 = bitcast { float, float }* %23 to <2 x float>*
store <2 x float> %844, <2 x float>* %845
%846 = getelementptr inbounds { float, float }, { float, float }* %23, i32 0, i32 0
%847 = load float, float* %846
%848 = getelementptr inbounds { float, float }, { float, float }* %23, i32 0, i32 1
%849 = load float, float* %848
br label %850
850: ; preds = %843, %841, %831
%851 = phi float [ %838, %831 ], [ %838, %841 ], [ %847, %843 ]
%852 = phi float [ %839, %831 ], [ %839, %841 ], [ %849, %843 ]
%853 = fadd float %833, %851
%854 = load float, float* %3
%855 = fneg float %854
%856 = call float @tanf(float %855)
%857 = load float, float* %4
%858 = call float @tanf(float %857)
%859 = fmul float %858, 0.000000e+00
%860 = fmul float %858, 1.000000e+00
%861 = fsub float %859, 0.000000e+00
%862 = fadd float %860, 0.000000e+00
%863 = fcmp uno float %861, %861
br i1 %863, label %864, label %873
864: ; preds = %850
%865 = fcmp uno float %862, %862
br i1 %865, label %866, label %873
866: ; preds = %864
%867 = call <2 x float> @__mulsc3(float %858, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%868 = bitcast { float, float }* %24 to <2 x float>*
store <2 x float> %867, <2 x float>* %868
%869 = getelementptr inbounds { float, float }, { float, float }* %24, i32 0, i32 0
%870 = load float, float* %869
%871 = getelementptr inbounds { float, float }, { float, float }* %24, i32 0, i32 1
%872 = load float, float* %871
br label %873
873: ; preds = %866, %864, %850
%874 = phi float [ %861, %850 ], [ %861, %864 ], [ %870, %866 ]
%875 = phi float [ %862, %850 ], [ %862, %864 ], [ %872, %866 ]
%876 = fadd float %856, %874
%877 = fneg float %875
%878 = fneg float %876
%879 = fneg float %877
%880 = fcmp une float %853, %878
%881 = fcmp une float %852, %879
%882 = or i1 %880, %881
br i1 %882, label %883, label %885
883: ; preds = %873
%884 = call i32 (...) @link_error()
br label %885
885: ; preds = %883, %873
ret void
}

LLVM IR (-O2):
define void @test2f(float %0, float %1) {
%3 = fsub float %0, %1
%4 = tail call float @tanf(float %3)
%5 = fneg float %4
%6 = fsub float %1, %0
%7 = tail call float @tanf(float %6)
%8 = fcmp une float %7, %5
br i1 %8, label %9, label %11
9: ; preds = %2
%10 = tail call i32 (...) @link_error()
br label %11
11: ; preds = %9, %2
%12 = tail call float @sinf(float %3)
%13 = fneg float %12
%14 = tail call float @sinf(float %6)
%15 = fcmp une float %14, %13
br i1 %15, label %16, label %18
16: ; preds = %11
%17 = tail call i32 (...) @link_error()
br label %18
18: ; preds = %16, %11
%19 = fneg float %0
%20 = fmul float %19, %1
%21 = tail call float @cosf(float %20)
%22 = fmul float %0, %1
%23 = tail call float @cosf(float %22)
%24 = fcmp une float %21, %23
br i1 %24, label %25, label %27
25: ; preds = %18
%26 = tail call i32 (...) @link_error()
br label %27
27: ; preds = %25, %18
%28 = fneg float %1
%29 = fmul float %28, %0
%30 = tail call float @cosf(float %29)
%31 = tail call float @cosf(float %22)
%32 = fcmp une float %30, %31
br i1 %32, label %33, label %35
33: ; preds = %27
%34 = tail call i32 (...) @link_error()
br label %35
35: ; preds = %33, %27
%36 = fdiv float %19, %1
%37 = tail call float @cosf(float %36)
%38 = fdiv float %0, %1
%39 = tail call float @cosf(float %38)
%40 = fcmp une float %37, %39
br i1 %40, label %41, label %43
41: ; preds = %35
%42 = tail call i32 (...) @link_error()
br label %43
43: ; preds = %41, %35
%44 = fdiv float %0, %28
%45 = tail call float @cosf(float %44)
%46 = tail call float @cosf(float %38)
%47 = fcmp une float %45, %46
br i1 %47, label %48, label %50
48: ; preds = %43
%49 = tail call i32 (...) @link_error()
br label %50
50: ; preds = %48, %43
%51 = tail call float @tanf(float %44)
%52 = tail call float @llvm.fabs.f32(float %51)
%53 = tail call float @cosf(float %52)
%54 = tail call float @tanf(float %38)
%55 = tail call float @cosf(float %54)
%56 = fcmp une float %53, %55
br i1 %56, label %57, label %59
57: ; preds = %50
%58 = tail call i32 (...) @link_error()
br label %59
59: ; preds = %57, %50
%60 = fcmp olt float %1, 1.000000e+01
%61 = select i1 %60, float %19, float %1
%62 = tail call float @cosf(float %61)
%63 = select i1 %60, float %0, float %1
%64 = tail call float @cosf(float %63)
%65 = fcmp une float %62, %64
br i1 %65, label %66, label %68
66: ; preds = %59
%67 = tail call i32 (...) @link_error()
br label %68
68: ; preds = %66, %59
%69 = select i1 %60, float %0, float %28
%70 = tail call float @cosf(float %69)
%71 = tail call float @cosf(float %63)
%72 = fcmp une float %70, %71
br i1 %72, label %73, label %75
73: ; preds = %68
%74 = tail call i32 (...) @link_error()
br label %75
75: ; preds = %73, %68
br i1 %60, label %76, label %79
76: ; preds = %75
%77 = tail call float @llvm.fabs.f32(float %0)
%78 = tail call float @cosf(float %77)
br label %87
79: ; preds = %75
%80 = fcmp olt float %0, 2.000000e+01
%81 = tail call float @llvm.fabs.f32(float %1)
%82 = select i1 %80, float %0, float %81
%83 = tail call float @tanf(float %82)
%84 = tail call float @cosf(float %83)
%85 = select i1 %80, float %0, float %1
%86 = tail call float @tanf(float %85)
br label %87
87: ; preds = %76, %79
%88 = phi float [ %84, %79 ], [ %78, %76 ]
%89 = phi float [ %86, %79 ], [ %0, %76 ]
%90 = tail call float @cosf(float %89)
%91 = fcmp une float %88, %90
br i1 %91, label %92, label %94
92: ; preds = %87
%93 = tail call i32 (...) @link_error()
br label %94
94: ; preds = %92, %87
%95 = fmul float %1, 3.000000e+00
%96 = tail call float @cosf(float %0)
%97 = fmul float %95, 3.000000e+00
%98 = tail call float @cosf(float %0)
%99 = fcmp une float %96, %98
br i1 %99, label %100, label %102
100: ; preds = %94
%101 = tail call i32 (...) @link_error()
br label %102
102: ; preds = %100, %94
%103 = fneg float %97
%104 = fdiv float %0, %103
%105 = tail call float @tanf(float %104)
%106 = tail call float @llvm.fabs.f32(float %105)
%107 = tail call float @cosf(float %106)
%108 = fdiv float %0, %97
%109 = tail call float @tanf(float %108)
%110 = tail call float @cosf(float %109)
%111 = fcmp une float %107, %110
br i1 %111, label %112, label %114
112: ; preds = %102
%113 = tail call i32 (...) @link_error()
br label %114
114: ; preds = %112, %102
%115 = tail call float @llvm.copysign.f32(float %0, float %97)
%116 = tail call float @cosf(float %115)
%117 = tail call float @cosf(float %0)
%118 = fcmp une float %116, %117
br i1 %118, label %119, label %121
119: ; preds = %114
%120 = tail call i32 (...) @link_error()
br label %121
121: ; preds = %119, %114
%122 = tail call float @llvm.fabs.f32(float %0)
%123 = fmul float %97, 2.000000e+00
%124 = tail call float @llvm.copysign.f32(float %0, float %123)
%125 = tail call float @cosf(float %124)
%126 = fmul float %123, 2.000000e+00
%127 = tail call float @cosf(float %0)
%128 = fcmp une float %125, %127
br i1 %128, label %129, label %131
129: ; preds = %121
%130 = tail call i32 (...) @link_error()
br label %131
131: ; preds = %129, %121
%132 = tail call float @hypotf(float %0, float 0.000000e+00)
%133 = fcmp une float %132, %122
br i1 %133, label %134, label %136
134: ; preds = %131
%135 = tail call i32 (...) @link_error()
br label %136
136: ; preds = %134, %131
%137 = tail call float @hypotf(float 0.000000e+00, float %0)
%138 = fcmp une float %137, %122
br i1 %138, label %139, label %141
139: ; preds = %136
%140 = tail call i32 (...) @link_error()
br label %141
141: ; preds = %139, %136
%142 = tail call float @hypotf(float %0, float %0)
%143 = fmul float %122, 0x3FF6A09E60000000
%144 = fcmp une float %142, %143
br i1 %144, label %145, label %147
145: ; preds = %141
%146 = tail call i32 (...) @link_error()
br label %147
147: ; preds = %145, %141
%148 = tail call float @hypotf(float %19, float %126)
%149 = tail call float @hypotf(float %0, float %126)
%150 = fcmp une float %148, %149
br i1 %150, label %151, label %153
151: ; preds = %147
%152 = tail call i32 (...) @link_error()
br label %153
153: ; preds = %151, %147
%154 = fneg float %126
%155 = tail call float @hypotf(float %0, float %154)
%156 = tail call float @hypotf(float %0, float %126)
%157 = fcmp une float %155, %156
br i1 %157, label %158, label %160
158: ; preds = %153
%159 = tail call i32 (...) @link_error()
br label %160
160: ; preds = %158, %153
%161 = tail call float @hypotf(float %19, float %154)
%162 = tail call float @hypotf(float %0, float %126)
%163 = fcmp une float %161, %162
br i1 %163, label %164, label %166
164: ; preds = %160
%165 = tail call i32 (...) @link_error()
br label %166
166: ; preds = %164, %160
%167 = tail call float @hypotf(float %122, float %126)
%168 = tail call float @hypotf(float %0, float %126)
%169 = fcmp une float %167, %168
br i1 %169, label %170, label %172
170: ; preds = %166
%171 = tail call i32 (...) @link_error()
br label %172
172: ; preds = %170, %166
%173 = tail call float @llvm.fabs.f32(float %126)
%174 = tail call float @hypotf(float %0, float %173)
%175 = tail call float @hypotf(float %0, float %126)
%176 = fcmp une float %174, %175
br i1 %176, label %177, label %179
177: ; preds = %172
%178 = tail call i32 (...) @link_error()
br label %179
179: ; preds = %177, %172
%180 = tail call float @hypotf(float %122, float %173)
%181 = tail call float @hypotf(float %0, float %126)
%182 = fcmp une float %180, %181
br i1 %182, label %183, label %185
183: ; preds = %179
%184 = tail call i32 (...) @link_error()
br label %185
185: ; preds = %183, %179
%186 = tail call float @llvm.fabs.f32(float %19)
%187 = fneg float %186
%188 = tail call float @llvm.fabs.f32(float %154)
%189 = fneg float %188
%190 = tail call float @hypotf(float %187, float %189)
%191 = tail call float @hypotf(float %0, float %126)
%192 = fcmp une float %190, %191
br i1 %192, label %193, label %195
193: ; preds = %185
%194 = tail call i32 (...) @link_error()
br label %195
195: ; preds = %193, %185
%196 = tail call float @hypotf(float %19, float 0.000000e+00)
%197 = fcmp une float %196, %122
br i1 %197, label %198, label %200
198: ; preds = %195
%199 = tail call i32 (...) @link_error()
br label %200
200: ; preds = %198, %195
%201 = tail call float @hypotf(float %19, float %0)
%202 = fcmp une float %201, %143
br i1 %202, label %203, label %205
203: ; preds = %200
%204 = tail call i32 (...) @link_error()
br label %205
205: ; preds = %203, %200
%206 = fpext float %0 to double
%207 = tail call i32 (double, ...) bitcast (i32 (...)* @puref to i32 (double, ...)*)(double %206)
%208 = sitofp i32 %207 to float
%209 = tail call i32 (double, ...) bitcast (i32 (...)* @puref to i32 (double, ...)*)(double %206)
%210 = sub nsw i32 0, %209
%211 = sitofp i32 %210 to float
%212 = tail call float @hypotf(float %208, float %211)
%213 = tail call i32 (double, ...) bitcast (i32 (...)* @puref to i32 (double, ...)*)(double %206)
%214 = sitofp i32 %213 to float
%215 = tail call float @llvm.fabs.f32(float %214)
%216 = fmul float %215, 0x3FF6A09E60000000
%217 = fcmp une float %212, %216
br i1 %217, label %218, label %220
218: ; preds = %205
%219 = tail call i32 (...) @link_error()
br label %220
220: ; preds = %218, %205
%221 = tail call float @tanf(float %19)
%222 = tail call float @tanf(float %173)
%223 = fneg float %222
%224 = tail call float @hypotf(float %221, float %223)
%225 = tail call float @tanf(float %0)
%226 = tail call float @tanf(float %126)
%227 = tail call float @hypotf(float %225, float %226)
%228 = fcmp une float %224, %227
br i1 %228, label %229, label %231
229: ; preds = %220
%230 = tail call i32 (...) @link_error()
br label %231
231: ; preds = %229, %220
%232 = tail call float @llvm.maxnum.f32(float %0, float %126)
%233 = tail call float @llvm.minnum.f32(float %232, float %126)
%234 = fcmp une float %233, %126
br i1 %234, label %235, label %238
235: ; preds = %231
%236 = tail call i32 (...) @link_error()
%237 = tail call i32 (...) @link_error()
br label %238
238: ; preds = %231, %235
%239 = tail call float @llvm.minnum.f32(float %0, float %232)
%240 = fcmp une float %239, %0
br i1 %240, label %241, label %244
241: ; preds = %238
%242 = tail call i32 (...) @link_error()
%243 = tail call i32 (...) @link_error()
br label %244
244: ; preds = %238, %241
%245 = tail call float @llvm.minnum.f32(float %0, float %126)
%246 = tail call float @llvm.maxnum.f32(float %245, float %126)
%247 = fcmp une float %246, %126
br i1 %247, label %248, label %251
248: ; preds = %244
%249 = tail call i32 (...) @link_error()
%250 = tail call i32 (...) @link_error()
br label %251
251: ; preds = %244, %248
%252 = tail call float @llvm.maxnum.f32(float %0, float %245)
%253 = fcmp une float %252, %0
br i1 %253, label %254, label %257
254: ; preds = %251
%255 = tail call i32 (...) @link_error()
%256 = tail call i32 (...) @link_error()
br label %257
257: ; preds = %251, %254
%258 = fcmp uno float %0, 0.000000e+00
br i1 %258, label %259, label %261
259: ; preds = %257
%260 = tail call i32 (...) @link_error()
br label %261
261: ; preds = %259, %257
%262 = fsub float %0, %126
%263 = fmul float %262, 0.000000e+00
%264 = fadd float %262, 0.000000e+00
%265 = fcmp uno float %263, 0.000000e+00
br i1 %265, label %266, label %272
266: ; preds = %261
%267 = fcmp uno float %264, 0.000000e+00
br i1 %267, label %268, label %272
268: ; preds = %266
%269 = tail call <2 x float> @__mulsc3(float %262, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%270 = extractelement <2 x float> %269, i64 0
%271 = extractelement <2 x float> %269, i64 1
br label %272
272: ; preds = %268, %266, %261
%273 = phi float [ %263, %261 ], [ %263, %266 ], [ %270, %268 ]
%274 = phi float [ %264, %261 ], [ %264, %266 ], [ %271, %268 ]
%275 = fadd float %273, %0
%276 = fsub float %126, %0
%277 = fmul float %276, 0.000000e+00
%278 = fadd float %276, 0.000000e+00
%279 = fcmp uno float %277, 0.000000e+00
br i1 %279, label %280, label %286
280: ; preds = %272
%281 = fcmp uno float %278, 0.000000e+00
br i1 %281, label %282, label %286
282: ; preds = %280
%283 = tail call <2 x float> @__mulsc3(float %276, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%284 = extractelement <2 x float> %283, i64 0
%285 = extractelement <2 x float> %283, i64 1
br label %286
286: ; preds = %282, %280, %272
%287 = phi float [ %277, %272 ], [ %277, %280 ], [ %284, %282 ]
%288 = phi float [ %278, %272 ], [ %278, %280 ], [ %285, %282 ]
%289 = fsub float %287, %0
%290 = fneg float %289
%291 = fneg float %288
%292 = fcmp une float %275, %290
%293 = fcmp une float %274, %291
%294 = or i1 %292, %293
br i1 %294, label %295, label %297
295: ; preds = %286
%296 = tail call i32 (...) @link_error()
br label %297
297: ; preds = %295, %286
br i1 %265, label %298, label %307
298: ; preds = %297
%299 = fcmp uno float %264, 0.000000e+00
br i1 %299, label %300, label %307
300: ; preds = %298
%301 = tail call <2 x float> @__mulsc3(float %262, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%302 = extractelement <2 x float> %301, i64 0
%303 = extractelement <2 x float> %301, i64 1
%304 = tail call <2 x float> @__mulsc3(float %262, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%305 = extractelement <2 x float> %304, i64 0
%306 = extractelement <2 x float> %304, i64 1
br label %307
307: ; preds = %298, %297, %300
%308 = phi float [ %302, %300 ], [ %263, %297 ], [ %263, %298 ]
%309 = phi float [ %303, %300 ], [ %264, %297 ], [ %264, %298 ]
%310 = phi float [ %305, %300 ], [ %263, %297 ], [ %263, %298 ]
%311 = phi float [ %306, %300 ], [ %264, %297 ], [ %264, %298 ]
%312 = fadd float %308, %0
%313 = fsub float %19, %310
%314 = fneg float %313
%315 = fcmp une float %312, %314
%316 = fcmp une float %309, %311
%317 = or i1 %315, %316
br i1 %317, label %318, label %320
318: ; preds = %307
%319 = tail call i32 (...) @link_error()
br label %320
320: ; preds = %318, %307
%321 = tail call float @tanf(float %0)
%322 = tail call float @sinf(float %126)
%323 = fmul float %322, 0.000000e+00
%324 = fadd float %322, 0.000000e+00
%325 = fcmp uno float %323, 0.000000e+00
br i1 %325, label %326, label %332
326: ; preds = %320
%327 = fcmp uno float %324, 0.000000e+00
br i1 %327, label %328, label %332
328: ; preds = %326
%329 = tail call <2 x float> @__mulsc3(float %322, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%330 = extractelement <2 x float> %329, i64 0
%331 = extractelement <2 x float> %329, i64 1
br label %332
332: ; preds = %328, %326, %320
%333 = phi float [ %323, %320 ], [ %323, %326 ], [ %330, %328 ]
%334 = phi float [ %324, %320 ], [ %324, %326 ], [ %331, %328 ]
%335 = fadd float %321, %333
%336 = insertelement <2 x float> undef, float %335, i64 0
%337 = insertelement <2 x float> %336, float %334, i64 1
%338 = tail call <2 x float> @ccosf(<2 x float> %337)
%339 = extractelement <2 x float> %338, i64 0
%340 = tail call float @tanf(float %19)
%341 = tail call float @sinf(float %154)
%342 = fneg float %341
%343 = fmul float %341, -0.000000e+00
%344 = fsub float 0.000000e+00, %341
%345 = fcmp uno float %343, 0.000000e+00
br i1 %345, label %346, label %352
346: ; preds = %332
%347 = fcmp uno float %344, 0.000000e+00
br i1 %347, label %348, label %352
348: ; preds = %346
%349 = tail call <2 x float> @__mulsc3(float %342, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%350 = extractelement <2 x float> %349, i64 0
%351 = extractelement <2 x float> %349, i64 1
br label %352
352: ; preds = %348, %346, %332
%353 = phi float [ %343, %332 ], [ %343, %346 ], [ %350, %348 ]
%354 = phi float [ %344, %332 ], [ %344, %346 ], [ %351, %348 ]
%355 = fsub float %353, %340
%356 = insertelement <2 x float> undef, float %355, i64 0
%357 = insertelement <2 x float> %356, float %354, i64 1
%358 = tail call <2 x float> @ccosf(<2 x float> %357)
%359 = extractelement <2 x float> %358, i64 0
%360 = fcmp une float %339, %359
%361 = fcmp une <2 x float> %338, %358
%362 = extractelement <2 x i1> %361, i64 1
%363 = or i1 %360, %362
br i1 %363, label %364, label %366
364: ; preds = %352
%365 = tail call i32 (...) @link_error()
br label %366
366: ; preds = %364, %352
%367 = tail call float @tanf(float %0)
%368 = tail call float @sinf(float %262)
%369 = fmul float %368, 0.000000e+00
%370 = fadd float %368, 0.000000e+00
%371 = fcmp uno float %369, 0.000000e+00
br i1 %371, label %372, label %378
372: ; preds = %366
%373 = fcmp uno float %370, 0.000000e+00
br i1 %373, label %374, label %378
374: ; preds = %372
%375 = tail call <2 x float> @__mulsc3(float %368, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%376 = extractelement <2 x float> %375, i64 0
%377 = extractelement <2 x float> %375, i64 1
br label %378
378: ; preds = %374, %372, %366
%379 = phi float [ %369, %366 ], [ %369, %372 ], [ %376, %374 ]
%380 = phi float [ %370, %366 ], [ %370, %372 ], [ %377, %374 ]
%381 = fadd float %367, %379
%382 = insertelement <2 x float> undef, float %381, i64 0
%383 = insertelement <2 x float> %382, float %380, i64 1
%384 = tail call <2 x float> @ccosf(<2 x float> %383)
%385 = extractelement <2 x float> %384, i64 0
%386 = tail call float @tanf(float %19)
%387 = fneg float %386
%388 = tail call float @sinf(float %276)
%389 = fmul float %388, 0.000000e+00
%390 = fadd float %388, 0.000000e+00
%391 = fcmp uno float %389, 0.000000e+00
br i1 %391, label %392, label %398
392: ; preds = %378
%393 = fcmp uno float %390, 0.000000e+00
br i1 %393, label %394, label %398
394: ; preds = %392
%395 = tail call <2 x float> @__mulsc3(float %388, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%396 = extractelement <2 x float> %395, i64 0
%397 = extractelement <2 x float> %395, i64 1
br label %398
398: ; preds = %394, %392, %378
%399 = phi float [ %389, %378 ], [ %389, %392 ], [ %396, %394 ]
%400 = phi float [ %390, %378 ], [ %390, %392 ], [ %397, %394 ]
%401 = fsub float %387, %399
%402 = fneg float %400
%403 = insertelement <2 x float> undef, float %401, i64 0
%404 = insertelement <2 x float> %403, float %402, i64 1
%405 = tail call <2 x float> @ccosf(<2 x float> %404)
%406 = extractelement <2 x float> %405, i64 0
%407 = fcmp une float %385, %406
%408 = fcmp une <2 x float> %384, %405
%409 = extractelement <2 x i1> %408, i64 1
%410 = or i1 %407, %409
br i1 %410, label %411, label %413
411: ; preds = %398
%412 = tail call i32 (...) @link_error()
br label %413
413: ; preds = %411, %398
%414 = fmul float %0, 0.000000e+00
%415 = fadd float %0, 0.000000e+00
%416 = fcmp uno float %414, 0.000000e+00
br i1 %416, label %417, label %427
417: ; preds = %413
%418 = fcmp uno float %415, 0.000000e+00
br i1 %418, label %419, label %427
419: ; preds = %417
%420 = tail call <2 x float> @__mulsc3(float %0, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%421 = extractelement <2 x float> %420, i64 0
%422 = extractelement <2 x float> %420, i64 1
%423 = fadd float %422, 0.000000e+00
%424 = tail call <2 x float> @__mulsc3(float %0, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%425 = extractelement <2 x float> %424, i64 0
%426 = extractelement <2 x float> %424, i64 1
br label %427
427: ; preds = %417, %413, %419
%428 = phi float [ %423, %419 ], [ %415, %413 ], [ %415, %417 ]
%429 = phi float [ %421, %419 ], [ %414, %413 ], [ %414, %417 ]
%430 = phi float [ %425, %419 ], [ %414, %413 ], [ %414, %417 ]
%431 = phi float [ %426, %419 ], [ %415, %413 ], [ %415, %417 ]
%432 = fadd float %429, -5.000000e+00
%433 = fadd float %430, 5.000000e+00
%434 = fadd float %431, 0.000000e+00
%435 = fneg float %433
%436 = fcmp une float %432, %435
%437 = fcmp une float %428, %434
%438 = or i1 %436, %437
br i1 %438, label %439, label %441
439: ; preds = %427
%440 = tail call i32 (...) @link_error()
br label %441
441: ; preds = %439, %427
%442 = tail call float @tanf(float %0)
%443 = tail call float @tanf(float %126)
%444 = fmul float %443, 0.000000e+00
%445 = fadd float %443, 0.000000e+00
%446 = fcmp uno float %444, 0.000000e+00
br i1 %446, label %447, label %453
447: ; preds = %441
%448 = fcmp uno float %445, 0.000000e+00
br i1 %448, label %449, label %453
449: ; preds = %447
%450 = tail call <2 x float> @__mulsc3(float %443, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%451 = extractelement <2 x float> %450, i64 0
%452 = extractelement <2 x float> %450, i64 1
br label %453
453: ; preds = %449, %447, %441
%454 = phi float [ %444, %441 ], [ %444, %447 ], [ %451, %449 ]
%455 = phi float [ %445, %441 ], [ %445, %447 ], [ %452, %449 ]
%456 = fadd float %442, %454
%457 = tail call float @tanf(float %19)
%458 = tail call float @tanf(float %126)
%459 = fmul float %458, 0.000000e+00
%460 = fadd float %458, 0.000000e+00
%461 = fcmp uno float %459, 0.000000e+00
br i1 %461, label %462, label %468
462: ; preds = %453
%463 = fcmp uno float %460, 0.000000e+00
br i1 %463, label %464, label %468
464: ; preds = %462
%465 = tail call <2 x float> @__mulsc3(float %458, float 0.000000e+00, float 0.000000e+00, float 1.000000e+00)
%466 = extractelement <2 x float> %465, i64 0
%467 = extractelement <2 x float> %465, i64 1
br label %468
468: ; preds = %464, %462, %453
%469 = phi float [ %459, %453 ], [ %459, %462 ], [ %466, %464 ]
%470 = phi float [ %460, %453 ], [ %460, %462 ], [ %467, %464 ]
%471 = fadd float %457, %469
%472 = fneg float %471
%473 = fcmp une float %456, %472
%474 = fcmp une float %455, %470
%475 = or i1 %473, %474
br i1 %475, label %476, label %478
476: ; preds = %468
%477 = tail call i32 (...) @link_error()
br label %478
478: ; preds = %476, %468
ret void
}