#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
double pow(float, int);
void predict_cov7(float dt, float p11, float p12, float p13, float p14,
                  float p15, float p16, float p17, float p21, float p22,
                  float p23, float p24, float p25, float p26, float p27,
                  float p31, float p32, float p33, float p34, float p35,
                  float p36, float p37, float p41, float p42, float p43,
                  float p44, float p45, float p46, float p47, float p51,
                  float p52, float p53, float p54, float p55, float p56,
                  float p57, float p61, float p62, float p63, float p64,
                  float p65, float p66, float p67, float p71, float p72,
                  float p73, float p74, float p75, float p76, float p77,
                  float q11, float q22, float q33, float q44, float q55,
                  float q66, float q77, float *out_1954641373464739435) {
  out_1954641373464739435[0] = dt * p31 + dt * (dt * p33 + p13) + p11 + q11;
  out_1954641373464739435[1] = dt * p32 + dt * (dt * p34 + p14) + p12;
  out_1954641373464739435[2] = dt * p33 + p13;
  out_1954641373464739435[3] = dt * p34 + p14;
  out_1954641373464739435[4] = 0.5 * pow(dt, 2) * (dt * p37 + p17) + dt * p35 +
                               dt * (dt * p36 + p16) + p15;
  out_1954641373464739435[5] = dt * p36 + dt * (dt * p37 + p17) + p16;
  out_1954641373464739435[6] = dt * p37 + p17;
  out_1954641373464739435[7] = dt * p41 + dt * (dt * p43 + p23) + p21;
  out_1954641373464739435[8] = dt * p42 + dt * (dt * p44 + p24) + p22 + q22;
  out_1954641373464739435[9] = dt * p43 + p23;
  out_1954641373464739435[10] = dt * p44 + p24;
  out_1954641373464739435[11] = 0.5 * pow(dt, 2) * (dt * p47 + p27) + dt * p45 +
                                dt * (dt * p46 + p26) + p25;
  out_1954641373464739435[12] = dt * p46 + dt * (dt * p47 + p27) + p26;
  out_1954641373464739435[13] = dt * p47 + p27;
  out_1954641373464739435[14] = dt * p33 + p31;
  out_1954641373464739435[15] = dt * p34 + p32;
  out_1954641373464739435[16] = p33 + q33;
  out_1954641373464739435[17] = p34;
  out_1954641373464739435[18] = 0.5 * pow(dt, 2) * p37 + dt * p36 + p35;
  out_1954641373464739435[19] = dt * p37 + p36;
  out_1954641373464739435[20] = p37;
  out_1954641373464739435[21] = dt * p43 + p41;
  out_1954641373464739435[22] = dt * p44 + p42;
  out_1954641373464739435[23] = p43;
  out_1954641373464739435[24] = p44 + q44;
  out_1954641373464739435[25] = 0.5 * pow(dt, 2) * p47 + dt * p46 + p45;
  out_1954641373464739435[26] = dt * p47 + p46;
  out_1954641373464739435[27] = p47;
  out_1954641373464739435[28] = 0.5 * pow(dt, 2) * p71 + dt * p61 +
                                dt * (0.5 * pow(dt, 2) * p73 + dt * p63 + p53) +
                                p51;
  out_1954641373464739435[29] = 0.5 * pow(dt, 2) * p72 + dt * p62 +
                                dt * (0.5 * pow(dt, 2) * p74 + dt * p64 + p54) +
                                p52;
  out_1954641373464739435[30] = 0.5 * pow(dt, 2) * p73 + dt * p63 + p53;
  out_1954641373464739435[31] = 0.5 * pow(dt, 2) * p74 + dt * p64 + p54;
  out_1954641373464739435[32] =
      0.5 * pow(dt, 2) * p75 +
      0.5 * pow(dt, 2) * (0.5 * pow(dt, 2) * p77 + dt * p67 + p57) + dt * p65 +
      dt * (0.5 * pow(dt, 2) * p76 + dt * p66 + p56) + p55 + q55;
  out_1954641373464739435[33] = 0.5 * pow(dt, 2) * p76 + dt * p66 +
                                dt * (0.5 * pow(dt, 2) * p77 + dt * p67 + p57) +
                                p56;
  out_1954641373464739435[34] = 0.5 * pow(dt, 2) * p77 + dt * p67 + p57;
  out_1954641373464739435[35] = dt * p71 + dt * (dt * p73 + p63) + p61;
  out_1954641373464739435[36] = dt * p72 + dt * (dt * p74 + p64) + p62;
  out_1954641373464739435[37] = dt * p73 + p63;
  out_1954641373464739435[38] = dt * p74 + p64;
  out_1954641373464739435[39] = 0.5 * pow(dt, 2) * (dt * p77 + p67) + dt * p75 +
                                dt * (dt * p76 + p66) + p65;
  out_1954641373464739435[40] = dt * p76 + dt * (dt * p77 + p67) + p66 + q66;
  out_1954641373464739435[41] = dt * p77 + p67;
  out_1954641373464739435[42] = dt * p73 + p71;
  out_1954641373464739435[43] = dt * p74 + p72;
  out_1954641373464739435[44] = p73;
  out_1954641373464739435[45] = p74;
  out_1954641373464739435[46] = 0.5 * pow(dt, 2) * p77 + dt * p76 + p75;
  out_1954641373464739435[47] = dt * p77 + p76;
  out_1954641373464739435[48] = p77 + q77;
}


x86 assembly (clang, -O0):
<predict_cov7>:
push   %rbp
mov    %rsp,%rbp
sub    $0x80,%rsp
movss  0x190(%rbp),%xmm8
movss  0x188(%rbp),%xmm8
movss  0x180(%rbp),%xmm8
movss  0x178(%rbp),%xmm8
movss  0x170(%rbp),%xmm8
movss  0x168(%rbp),%xmm8
movss  0x160(%rbp),%xmm8
movss  0x158(%rbp),%xmm8
movss  0x150(%rbp),%xmm8
movss  0x148(%rbp),%xmm8
movss  0x140(%rbp),%xmm8
movss  0x138(%rbp),%xmm8
movss  0x130(%rbp),%xmm8
movss  0x128(%rbp),%xmm8
movss  0x120(%rbp),%xmm8
movss  0x118(%rbp),%xmm8
movss  0x110(%rbp),%xmm8
movss  0x108(%rbp),%xmm8
movss  0x100(%rbp),%xmm8
movss  0xf8(%rbp),%xmm8
movss  0xf0(%rbp),%xmm8
movss  0xe8(%rbp),%xmm8
movss  0xe0(%rbp),%xmm8
movss  0xd8(%rbp),%xmm8
movss  0xd0(%rbp),%xmm8
movss  0xc8(%rbp),%xmm8
movss  0xc0(%rbp),%xmm8
movss  0xb8(%rbp),%xmm8
movss  0xb0(%rbp),%xmm8
movss  0xa8(%rbp),%xmm8
movss  0xa0(%rbp),%xmm8
movss  0x98(%rbp),%xmm8
movss  0x90(%rbp),%xmm8
movss  0x88(%rbp),%xmm8
movss  0x80(%rbp),%xmm8
movss  0x78(%rbp),%xmm8
movss  0x70(%rbp),%xmm8
movss  0x68(%rbp),%xmm8
movss  0x60(%rbp),%xmm8
movss  0x58(%rbp),%xmm8
movss  0x50(%rbp),%xmm8
movss  0x48(%rbp),%xmm8
movss  0x40(%rbp),%xmm8
movss  0x38(%rbp),%xmm8
movss  0x30(%rbp),%xmm8
movss  0x28(%rbp),%xmm8
movss  0x20(%rbp),%xmm8
movss  0x18(%rbp),%xmm8
movss  0x10(%rbp),%xmm8
movss  %xmm0,-0x4(%rbp)
movss  %xmm1,-0x8(%rbp)
movss  %xmm2,-0xc(%rbp)
movss  %xmm3,-0x10(%rbp)
movss  %xmm4,-0x14(%rbp)
movss  %xmm5,-0x18(%rbp)
movss  %xmm6,-0x1c(%rbp)
movss  %xmm7,-0x20(%rbp)
mov    %rdi,-0x28(%rbp)
movss  -0x4(%rbp),%xmm0
movss  0x48(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x58(%rbp),%xmm5
movss  -0x10(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  -0x8(%rbp),%xmm0
addss  0x160(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x50(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x60(%rbp),%xmm5
movss  -0x14(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  -0xc(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x4(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x58(%rbp),%xmm2
movss  -0x10(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x8(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x60(%rbp),%xmm2
movss  -0x14(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xc(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1c49(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
movss  0x78(%rbp),%xmm3
movss  -0x20(%rbp),%xmm2
mulss  %xmm3,%xmm1
addss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x68(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm2
movss  0x70(%rbp),%xmm4
movss  -0x1c(%rbp),%xmm3
mulss  %xmm4,%xmm2
addss  %xmm3,%xmm2
mulss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
movss  -0x18(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x10(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x70(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x78(%rbp),%xmm5
movss  -0x20(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  -0x1c(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x14(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x78(%rbp),%xmm2
movss  -0x20(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x18(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x80(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x90(%rbp),%xmm5
movss  0x20(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  0x10(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x1c(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x88(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x98(%rbp),%xmm5
movss  0x28(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  0x18(%rbp),%xmm0
addss  0x168(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x20(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x90(%rbp),%xmm2
movss  0x20(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x24(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x98(%rbp),%xmm2
movss  0x28(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x28(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1a7e(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
movss  0xb0(%rbp),%xmm3
movss  0x40(%rbp),%xmm2
mulss  %xmm3,%xmm1
addss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0xa0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm2
movss  0xa8(%rbp),%xmm4
movss  0x38(%rbp),%xmm3
mulss  %xmm4,%xmm2
addss  %xmm3,%xmm2
mulss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
movss  0x30(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x2c(%rax)
movss  -0x4(%rbp),%xmm0
movss  0xa8(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0xb0(%rbp),%xmm5
movss  0x40(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  0x38(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x30(%rax)
movss  -0x4(%rbp),%xmm0
movss  0xb0(%rbp),%xmm2
movss  0x40(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x34(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x58(%rbp),%xmm2
movss  0x48(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x38(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x60(%rbp),%xmm2
movss  0x50(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x3c(%rax)
movss  0x58(%rbp),%xmm0
addss  0x170(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x40(%rax)
movss  0x60(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x44(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1917(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x78(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x70(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0x68(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x48(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x78(%rbp),%xmm2
movss  0x70(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x4c(%rax)
movss  0x78(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x50(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x90(%rbp),%xmm2
movss  0x80(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x54(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x98(%rbp),%xmm2
movss  0x88(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x58(%rax)
movss  0x90(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x5c(%rax)
movss  0x98(%rbp),%xmm0
addss  0x178(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x60(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x181c(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0xb0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0xa8(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xa0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x64(%rax)
movss  -0x4(%rbp),%xmm0
movss  0xb0(%rbp),%xmm2
movss  0xa8(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x68(%rax)
movss  0xb0(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x6c(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1785(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x128(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0xf0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x80(%rbp)
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,-0x78(%rbp)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movsd  -0x80(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x78(%rbp),%xmm0
movsd  0x1725(%rip),%xmm2
mulsd  %xmm3,%xmm2
movss  0x138(%rbp),%xmm3
cvtss2sd %xmm3,%xmm4
movss  -0x4(%rbp),%xmm3
mulss  0x100(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movss  0xc8(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xb8(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x70(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x16ad(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x130(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0xf8(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x70(%rbp)
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,-0x68(%rbp)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movsd  -0x70(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x68(%rbp),%xmm0
movsd  0x164d(%rip),%xmm2
mulsd  %xmm3,%xmm2
movss  0x140(%rbp),%xmm3
cvtss2sd %xmm3,%xmm4
movss  -0x4(%rbp),%xmm3
mulss  0x108(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movss  0xd0(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xc0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x74(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x15d5(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x138(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x100(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xc8(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x78(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1575(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x140(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x108(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xd0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x7c(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1515(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movss  0x148(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,-0x58(%rbp)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x14e1(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movsd  -0x60(%rbp),%xmm1
movsd  -0x58(%rbp),%xmm2
movaps %xmm0,%xmm4
movsd  -0x50(%rbp),%xmm0
movsd  0x14af(%rip),%xmm3
mulsd  %xmm4,%xmm3
movss  0x158(%rbp),%xmm4
cvtss2sd %xmm4,%xmm5
movss  -0x4(%rbp),%xmm4
mulss  0x120(%rbp),%xmm4
cvtss2sd %xmm4,%xmm4
mulsd  %xmm5,%xmm3
addsd  %xmm4,%xmm3
movss  0xe8(%rbp),%xmm4
cvtss2sd %xmm4,%xmm4
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
mulss  0x110(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,-0x40(%rbp)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movsd  -0x48(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x40(%rbp),%xmm0
movsd  0x141e(%rip),%xmm2
mulsd  %xmm3,%xmm2
movss  0x150(%rbp),%xmm3
cvtss2sd %xmm3,%xmm4
movss  -0x4(%rbp),%xmm3
mulss  0x118(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movss  0xe0(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xd8(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
movss  0x180(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x80(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1393(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x150(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x118(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x38(%rbp)
movss  -0x4(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,-0x30(%rbp)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movsd  -0x38(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x30(%rbp),%xmm0
movsd  0x1333(%rip),%xmm2
mulsd  %xmm3,%xmm2
movss  0x158(%rbp),%xmm3
cvtss2sd %xmm3,%xmm4
movss  -0x4(%rbp),%xmm3
mulss  0x120(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movss  0xe8(%rbp),%xmm3
cvtss2sd %xmm3,%xmm3
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xe0(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x84(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x12b8(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x158(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x120(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0xe8(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x88(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x128(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x138(%rbp),%xmm5
movss  0x100(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  0xf0(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x8c(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x130(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x140(%rbp),%xmm5
movss  0x108(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  0xf8(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x90(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x138(%rbp),%xmm2
movss  0x100(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x94(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x140(%rbp),%xmm2
movss  0x108(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x98(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0x1165(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
movss  0x158(%rbp),%xmm3
movss  0x120(%rbp),%xmm2
mulss  %xmm3,%xmm1
addss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x148(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm2
movss  0x150(%rbp),%xmm4
movss  0x118(%rbp),%xmm3
mulss  %xmm4,%xmm2
addss  %xmm3,%xmm2
mulss  %xmm2,%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
movss  0x110(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0x9c(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x150(%rbp),%xmm2
movss  -0x4(%rbp),%xmm1
movss  -0x4(%rbp),%xmm3
movss  0x158(%rbp),%xmm5
movss  0x120(%rbp),%xmm4
mulss  %xmm5,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
addss  0x118(%rbp),%xmm0
addss  0x188(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xa0(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x158(%rbp),%xmm2
movss  0x120(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xa4(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x138(%rbp),%xmm2
movss  0x128(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xa8(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x140(%rbp),%xmm2
movss  0x130(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xac(%rax)
movss  0x138(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xb0(%rax)
movss  0x140(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xb4(%rax)
movss  -0x4(%rbp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
movaps %xmm0,%xmm1
movsd  0xfc5(%rip),%xmm0
mulsd  %xmm1,%xmm0
movss  0x158(%rbp),%xmm1
cvtss2sd %xmm1,%xmm2
movss  -0x4(%rbp),%xmm1
mulss  0x150(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0x148(%rbp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xb8(%rax)
movss  -0x4(%rbp),%xmm0
movss  0x158(%rbp),%xmm2
movss  0x150(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xbc(%rax)
movss  0x158(%rbp),%xmm0
addss  0x190(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movss  %xmm0,0xc0(%rax)
add    $0x80,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<predict_cov7>:
push   %rbx
sub    $0x50,%rsp
mov    %rdi,%rbx
movss  %xmm7,0x10(%rsp)
movss  %xmm6,0x8(%rsp)
movss  %xmm5,0x18(%rsp)
movaps %xmm0,%xmm5
mulss  0xa8(%rsp),%xmm5
movss  %xmm5,0x28(%rsp)
addss  %xmm5,%xmm3
movaps %xmm3,%xmm6
mulss  %xmm0,%xmm6
movaps %xmm0,%xmm5
mulss  0x98(%rsp),%xmm5
addss  %xmm6,%xmm5
addss  %xmm1,%xmm5
addss  0x1b0(%rsp),%xmm5
movss  %xmm5,(%rdi)
movaps %xmm0,%xmm5
mulss  0xb0(%rsp),%xmm0
movss  %xmm0,0x30(%rsp)
addss  %xmm0,%xmm4
movaps %xmm4,%xmm0
mulss  %xmm5,%xmm0
movaps %xmm5,%xmm1
movss  %xmm5,0x4(%rsp)
mulss  0xa0(%rsp),%xmm1
addss  %xmm0,%xmm1
addss  %xmm2,%xmm1
movss  %xmm1,0x4(%rdi)
movss  %xmm3,0x8(%rdi)
movss  %xmm4,0xc(%rdi)
movaps %xmm5,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0xe3d(%rip),%xmm0
movss  0x4(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  0xc8(%rsp),%xmm1
movss  %xmm1,0x38(%rsp)
movss  0x10(%rsp),%xmm2
addss  %xmm1,%xmm2
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  %xmm0,%xmm1
movaps %xmm5,%xmm0
mulss  0xb8(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
movaps %xmm5,%xmm3
mulss  0xc0(%rsp),%xmm3
movaps %xmm3,%xmm1
movaps %xmm3,%xmm4
movss  %xmm3,0x10(%rsp)
movss  0x8(%rsp),%xmm3
addss  %xmm3,%xmm1
mulss  %xmm5,%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
movss  0x18(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x10(%rbx)
movaps %xmm2,%xmm0
mulss  %xmm5,%xmm0
addss  %xmm4,%xmm0
addss  %xmm3,%xmm0
movss  %xmm0,0x14(%rbx)
movss  %xmm2,0x18(%rbx)
movaps %xmm5,%xmm1
mulss  0xe0(%rsp),%xmm1
movss  %xmm1,0x18(%rsp)
movss  0x70(%rsp),%xmm0
addss  %xmm1,%xmm0
movaps %xmm0,%xmm1
mulss  %xmm5,%xmm1
movaps %xmm5,%xmm2
mulss  0xd0(%rsp),%xmm2
addss  %xmm1,%xmm2
movaps %xmm5,%xmm3
mulss  0xe8(%rsp),%xmm3
movss  %xmm3,0x8(%rsp)
movss  0x78(%rsp),%xmm1
addss  %xmm3,%xmm1
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm5,%xmm4
mulss  0xd8(%rsp),%xmm4
addss  %xmm3,%xmm4
addss  0x60(%rsp),%xmm2
addss  0x68(%rsp),%xmm4
addss  0x1b8(%rsp),%xmm4
movss  %xmm2,0x1c(%rbx)
movss  %xmm4,0x20(%rbx)
movss  %xmm0,0x24(%rbx)
movss  %xmm1,0x28(%rbx)
movaps %xmm5,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0xcfa(%rip),%xmm0
movss  0x4(%rsp),%xmm3
movaps %xmm3,%xmm2
mulss  0x100(%rsp),%xmm2
movss  %xmm2,0x20(%rsp)
movss  0x90(%rsp),%xmm1
addss  %xmm2,%xmm1
xorps  %xmm2,%xmm2
cvtss2sd %xmm1,%xmm2
mulsd  %xmm0,%xmm2
movaps %xmm3,%xmm0
mulss  0xf0(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm2,%xmm0
movaps %xmm3,%xmm4
mulss  0xf8(%rsp),%xmm4
movaps %xmm4,%xmm2
movaps %xmm4,%xmm5
movss  %xmm4,0x40(%rsp)
movss  0x88(%rsp),%xmm4
addss  %xmm4,%xmm2
mulss  %xmm3,%xmm2
cvtss2sd %xmm2,%xmm2
addsd  %xmm0,%xmm2
movss  0x80(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm2,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x2c(%rbx)
movaps %xmm1,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm5,%xmm0
addss  %xmm4,%xmm0
movss  %xmm0,0x30(%rbx)
movss  %xmm1,0x34(%rbx)
movss  0x28(%rsp),%xmm0
addss  0x98(%rsp),%xmm0
movss  %xmm0,0x38(%rbx)
movss  0x30(%rsp),%xmm0
addss  0xa0(%rsp),%xmm0
movss  %xmm0,0x3c(%rbx)
movss  0xa8(%rsp),%xmm0
addss  0x1c0(%rsp),%xmm0
movss  %xmm0,0x40(%rbx)
movss  0xb0(%rsp),%xmm0
movss  %xmm0,0x44(%rbx)
movaps %xmm3,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0xbf0(%rip),%xmm0
movss  0xc8(%rsp),%xmm2
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  %xmm0,%xmm1
movss  0x10(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
movss  0xb8(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsd2ss %xmm1,%xmm0
movss  %xmm0,0x48(%rbx)
movss  0x38(%rsp),%xmm0
addss  0xc0(%rsp),%xmm0
movss  %xmm0,0x4c(%rbx)
movss  %xmm2,0x50(%rbx)
movss  0x18(%rsp),%xmm0
addss  0xd0(%rsp),%xmm0
movss  %xmm0,0x54(%rbx)
movss  0x8(%rsp),%xmm0
addss  0xd8(%rsp),%xmm0
movss  %xmm0,0x58(%rbx)
movss  0xe0(%rsp),%xmm0
movss  %xmm0,0x5c(%rbx)
movss  0xe8(%rsp),%xmm0
addss  0x1c8(%rsp),%xmm0
movss  %xmm0,0x60(%rbx)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0xb33(%rip),%xmm0
movss  0x100(%rsp),%xmm2
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  %xmm0,%xmm1
movss  0x40(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
movss  0xf0(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsd2ss %xmm1,%xmm0
movss  %xmm0,0x64(%rbx)
movss  0x20(%rsp),%xmm0
addss  0xf8(%rsp),%xmm0
movss  %xmm0,0x68(%rbx)
movss  %xmm2,0x6c(%rbx)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0xac3(%rip),%xmm0
movss  0x178(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm0,%xmm1
movss  0x4(%rsp),%xmm0
movaps %xmm0,%xmm2
mulss  0x140(%rsp),%xmm2
cvtss2sd %xmm2,%xmm2
addsd  %xmm1,%xmm2
movsd  %xmm2,0x8(%rsp)
xorps  %xmm1,%xmm1
cvtss2sd %xmm0,%xmm1
movsd  %xmm1,0x28(%rsp)
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0xa73(%rip),%xmm0
movss  0x188(%rsp),%xmm1
xorps  %xmm2,%xmm2
cvtss2sd %xmm1,%xmm2
movsd  %xmm2,0x38(%rsp)
movss  0x4(%rsp),%xmm3
movaps %xmm3,%xmm1
mulss  0x150(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x30(%rsp)
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0x118(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x18(%rsp)
addsd  %xmm1,%xmm0
mulsd  0x28(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movss  0x108(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsd2ss %xmm1,%xmm0
movss  %xmm0,0x70(%rbx)
movaps %xmm3,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x9e4(%rip),%xmm0
movss  0x180(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  %xmm0,%xmm1
movss  0x4(%rsp),%xmm0
movaps %xmm0,%xmm2
mulss  0x148(%rsp),%xmm2
cvtss2sd %xmm2,%xmm2
addsd  %xmm1,%xmm2
movsd  %xmm2,0x40(%rsp)
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x9a1(%rip),%xmm0
movss  0x190(%rsp),%xmm1
xorps  %xmm3,%xmm3
cvtss2sd %xmm1,%xmm3
movsd  %xmm3,0x10(%rsp)
movss  0x4(%rsp),%xmm2
movaps %xmm2,%xmm1
mulss  0x158(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x8(%rsp)
mulsd  %xmm3,%xmm0
addsd  %xmm1,%xmm0
movss  0x120(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x20(%rsp)
addsd  %xmm1,%xmm0
mulsd  0x28(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movss  0x110(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsd2ss %xmm1,%xmm0
movss  %xmm0,0x74(%rbx)
movaps %xmm2,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x912(%rip),%xmm0
mulsd  0x38(%rsp),%xmm0
addsd  0x30(%rsp),%xmm0
addsd  0x18(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x78(%rbx)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x8df(%rip),%xmm0
mulsd  0x10(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x7c(%rbx)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x8ac(%rip),%xmm0
movsd  %xmm0,0x10(%rsp)
movss  0x198(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
movsd  %xmm0,0x38(%rsp)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x87b(%rip),%xmm0
movsd  %xmm0,0x20(%rsp)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x85d(%rip),%xmm0
movss  0x1a8(%rsp),%xmm1
xorps  %xmm2,%xmm2
cvtss2sd %xmm1,%xmm2
movsd  %xmm2,0x30(%rsp)
movss  0x4(%rsp),%xmm3
movaps %xmm3,%xmm1
mulss  0x170(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x18(%rsp)
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movss  0x138(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x8(%rsp)
addsd  %xmm1,%xmm0
mulsd  0x20(%rsp),%xmm0
movsd  0x10(%rsp),%xmm1
mulsd  0x38(%rsp),%xmm1
addsd  %xmm0,%xmm1
movapd %xmm1,%xmm2
movaps %xmm3,%xmm0
movaps %xmm3,%xmm1
mulss  0x160(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm2,%xmm1
movsd  %xmm1,0x48(%rsp)
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x7c3(%rip),%xmm0
movss  0x1a0(%rsp),%xmm1
xorps  %xmm3,%xmm3
cvtss2sd %xmm1,%xmm3
movsd  %xmm3,0x40(%rsp)
movss  0x4(%rsp),%xmm2
movaps %xmm2,%xmm1
mulss  0x168(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x20(%rsp)
mulsd  %xmm3,%xmm0
addsd  %xmm1,%xmm0
movss  0x130(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
movsd  %xmm1,0x10(%rsp)
addsd  %xmm1,%xmm0
mulsd  0x28(%rsp),%xmm0
addsd  0x48(%rsp),%xmm0
movss  0x128(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
movss  0x1d0(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x80(%rbx)
movaps %xmm2,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x723(%rip),%xmm0
mulsd  0x40(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x6f9(%rip),%xmm0
mulsd  0x30(%rsp),%xmm0
addsd  0x18(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
mulsd  0x28(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x84(%rbx)
movss  0x4(%rsp),%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x6b1(%rip),%xmm0
mulsd  0x30(%rsp),%xmm0
addsd  0x18(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x88(%rbx)
movss  0x4(%rsp),%xmm4
movaps %xmm4,%xmm0
mulss  0x188(%rsp),%xmm0
movss  %xmm0,0x28(%rsp)
movss  0x150(%rsp),%xmm1
addss  %xmm0,%xmm1
movaps %xmm1,%xmm0
movaps %xmm1,%xmm3
mulss  %xmm4,%xmm0
movaps %xmm4,%xmm1
mulss  0x178(%rsp),%xmm1
addss  %xmm0,%xmm1
addss  0x140(%rsp),%xmm1
movss  %xmm1,0x8c(%rbx)
movaps %xmm4,%xmm0
mulss  0x190(%rsp),%xmm0
movss  %xmm0,0x18(%rsp)
movss  0x158(%rsp),%xmm1
addss  %xmm0,%xmm1
movaps %xmm1,%xmm0
movaps %xmm1,%xmm2
mulss  %xmm4,%xmm0
movaps %xmm4,%xmm1
mulss  0x180(%rsp),%xmm1
addss  %xmm0,%xmm1
addss  0x148(%rsp),%xmm1
movss  %xmm1,0x90(%rbx)
movss  %xmm3,0x94(%rbx)
movss  %xmm2,0x98(%rbx)
movaps %xmm4,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x5d4(%rip),%xmm0
movss  0x4(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  0x1a8(%rsp),%xmm1
movss  %xmm1,0x8(%rsp)
movss  0x170(%rsp),%xmm2
addss  %xmm1,%xmm2
xorps  %xmm1,%xmm1
cvtss2sd %xmm2,%xmm1
mulsd  %xmm0,%xmm1
movss  0x198(%rsp),%xmm0
mulss  %xmm4,%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
movaps %xmm4,%xmm3
mulss  0x1a0(%rsp),%xmm3
movaps %xmm3,%xmm1
movaps %xmm3,%xmm5
movss  %xmm3,0x10(%rsp)
movss  0x168(%rsp),%xmm3
addss  %xmm3,%xmm1
mulss  %xmm4,%xmm1
cvtss2sd %xmm1,%xmm1
addsd  %xmm0,%xmm1
movss  0x160(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
addsd  %xmm1,%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0x9c(%rbx)
movaps %xmm2,%xmm0
mulss  %xmm4,%xmm0
addss  %xmm5,%xmm0
addss  %xmm3,%xmm0
addss  0x1d8(%rsp),%xmm0
movss  %xmm0,0xa0(%rbx)
movss  %xmm2,0xa4(%rbx)
movss  0x28(%rsp),%xmm0
addss  0x178(%rsp),%xmm0
movss  %xmm0,0xa8(%rbx)
movss  0x18(%rsp),%xmm0
addss  0x180(%rsp),%xmm0
movss  %xmm0,0xac(%rbx)
movss  0x188(%rsp),%xmm0
movss  %xmm0,0xb0(%rbx)
movss  0x190(%rsp),%xmm0
movss  %xmm0,0xb4(%rbx)
movaps %xmm4,%xmm0
mov    $0x2,%edi
call   1030 <pow@plt>
mulsd  0x4b4(%rip),%xmm0
movss  0x10(%rsp),%xmm1
cvtss2sd %xmm1,%xmm1
mulsd  0x30(%rsp),%xmm0
addsd  %xmm1,%xmm0
addsd  0x38(%rsp),%xmm0
cvtsd2ss %xmm0,%xmm0
movss  %xmm0,0xb8(%rbx)
movss  0x8(%rsp),%xmm0
addss  0x1a0(%rsp),%xmm0
movss  %xmm0,0xbc(%rbx)
movss  0x1a8(%rsp),%xmm0
addss  0x1e0(%rsp),%xmm0
movss  %xmm0,0xc0(%rbx)
add    $0x50,%rsp
pop    %rbx
ret

LLVM IR (-O0):
define void @predict_cov7(float %0, float %1, float %2, float %3, float %4, float %5, float %6, float %7, float %8, float %9, float %10, float %11, float %12, float %13, float %14, float %15, float %16, float %17, float %18, float %19, float %20, float %21, float %22, float %23, float %24, float %25, float %26, float %27, float %28, float %29, float %30, float %31, float %32, float %33, float %34, float %35, float %36, float %37, float %38, float %39, float %40, float %41, float %42, float %43, float %44, float %45, float %46, float %47, float %48, float %49, float %50, float %51, float %52, float %53, float %54, float %55, float %56, float* %57) {
%59 = alloca float
%60 = alloca float
%61 = alloca float
%62 = alloca float
%63 = alloca float
%64 = alloca float
%65 = alloca float
%66 = alloca float
%67 = alloca float
%68 = alloca float
%69 = alloca float
%70 = alloca float
%71 = alloca float
%72 = alloca float
%73 = alloca float
%74 = alloca float
%75 = alloca float
%76 = alloca float
%77 = alloca float
%78 = alloca float
%79 = alloca float
%80 = alloca float
%81 = alloca float
%82 = alloca float
%83 = alloca float
%84 = alloca float
%85 = alloca float
%86 = alloca float
%87 = alloca float
%88 = alloca float
%89 = alloca float
%90 = alloca float
%91 = alloca float
%92 = alloca float
%93 = alloca float
%94 = alloca float
%95 = alloca float
%96 = alloca float
%97 = alloca float
%98 = alloca float
%99 = alloca float
%100 = alloca float
%101 = alloca float
%102 = alloca float
%103 = alloca float
%104 = alloca float
%105 = alloca float
%106 = alloca float
%107 = alloca float
%108 = alloca float
%109 = alloca float
%110 = alloca float
%111 = alloca float
%112 = alloca float
%113 = alloca float
%114 = alloca float
%115 = alloca float
%116 = alloca float*
store float %0, float* %59
store float %1, float* %60
store float %2, float* %61
store float %3, float* %62
store float %4, float* %63
store float %5, float* %64
store float %6, float* %65
store float %7, float* %66
store float %8, float* %67
store float %9, float* %68
store float %10, float* %69
store float %11, float* %70
store float %12, float* %71
store float %13, float* %72
store float %14, float* %73
store float %15, float* %74
store float %16, float* %75
store float %17, float* %76
store float %18, float* %77
store float %19, float* %78
store float %20, float* %79
store float %21, float* %80
store float %22, float* %81
store float %23, float* %82
store float %24, float* %83
store float %25, float* %84
store float %26, float* %85
store float %27, float* %86
store float %28, float* %87
store float %29, float* %88
store float %30, float* %89
store float %31, float* %90
store float %32, float* %91
store float %33, float* %92
store float %34, float* %93
store float %35, float* %94
store float %36, float* %95
store float %37, float* %96
store float %38, float* %97
store float %39, float* %98
store float %40, float* %99
store float %41, float* %100
store float %42, float* %101
store float %43, float* %102
store float %44, float* %103
store float %45, float* %104
store float %46, float* %105
store float %47, float* %106
store float %48, float* %107
store float %49, float* %108
store float %50, float* %109
store float %51, float* %110
store float %52, float* %111
store float %53, float* %112
store float %54, float* %113
store float %55, float* %114
store float %56, float* %115
store float* %57, float** %116
%117 = load float, float* %59
%118 = load float, float* %74
%119 = load float, float* %59
%120 = load float, float* %59
%121 = load float, float* %76
%122 = load float, float* %62
%123 = call float @llvm.fmuladd.f32(float %120, float %121, float %122)
%124 = fmul float %119, %123
%125 = call float @llvm.fmuladd.f32(float %117, float %118, float %124)
%126 = load float, float* %60
%127 = fadd float %125, %126
%128 = load float, float* %109
%129 = fadd float %127, %128
%130 = load float*, float** %116
%131 = getelementptr inbounds float, float* %130, i64 0
store float %129, float* %131
%132 = load float, float* %59
%133 = load float, float* %75
%134 = load float, float* %59
%135 = load float, float* %59
%136 = load float, float* %77
%137 = load float, float* %63
%138 = call float @llvm.fmuladd.f32(float %135, float %136, float %137)
%139 = fmul float %134, %138
%140 = call float @llvm.fmuladd.f32(float %132, float %133, float %139)
%141 = load float, float* %61
%142 = fadd float %140, %141
%143 = load float*, float** %116
%144 = getelementptr inbounds float, float* %143, i64 1
store float %142, float* %144
%145 = load float, float* %59
%146 = load float, float* %76
%147 = load float, float* %62
%148 = call float @llvm.fmuladd.f32(float %145, float %146, float %147)
%149 = load float*, float** %116
%150 = getelementptr inbounds float, float* %149, i64 2
store float %148, float* %150
%151 = load float, float* %59
%152 = load float, float* %77
%153 = load float, float* %63
%154 = call float @llvm.fmuladd.f32(float %151, float %152, float %153)
%155 = load float*, float** %116
%156 = getelementptr inbounds float, float* %155, i64 3
store float %154, float* %156
%157 = load float, float* %59
%158 = call double @pow(float %157, i32 2)
%159 = fmul double 5.000000e-01, %158
%160 = load float, float* %59
%161 = load float, float* %80
%162 = load float, float* %66
%163 = call float @llvm.fmuladd.f32(float %160, float %161, float %162)
%164 = fpext float %163 to double
%165 = load float, float* %59
%166 = load float, float* %78
%167 = fmul float %165, %166
%168 = fpext float %167 to double
%169 = call double @llvm.fmuladd.f64(double %159, double %164, double %168)
%170 = load float, float* %59
%171 = load float, float* %59
%172 = load float, float* %79
%173 = load float, float* %65
%174 = call float @llvm.fmuladd.f32(float %171, float %172, float %173)
%175 = fmul float %170, %174
%176 = fpext float %175 to double
%177 = fadd double %169, %176
%178 = load float, float* %64
%179 = fpext float %178 to double
%180 = fadd double %177, %179
%181 = fptrunc double %180 to float
%182 = load float*, float** %116
%183 = getelementptr inbounds float, float* %182, i64 4
store float %181, float* %183
%184 = load float, float* %59
%185 = load float, float* %79
%186 = load float, float* %59
%187 = load float, float* %59
%188 = load float, float* %80
%189 = load float, float* %66
%190 = call float @llvm.fmuladd.f32(float %187, float %188, float %189)
%191 = fmul float %186, %190
%192 = call float @llvm.fmuladd.f32(float %184, float %185, float %191)
%193 = load float, float* %65
%194 = fadd float %192, %193
%195 = load float*, float** %116
%196 = getelementptr inbounds float, float* %195, i64 5
store float %194, float* %196
%197 = load float, float* %59
%198 = load float, float* %80
%199 = load float, float* %66
%200 = call float @llvm.fmuladd.f32(float %197, float %198, float %199)
%201 = load float*, float** %116
%202 = getelementptr inbounds float, float* %201, i64 6
store float %200, float* %202
%203 = load float, float* %59
%204 = load float, float* %81
%205 = load float, float* %59
%206 = load float, float* %59
%207 = load float, float* %83
%208 = load float, float* %69
%209 = call float @llvm.fmuladd.f32(float %206, float %207, float %208)
%210 = fmul float %205, %209
%211 = call float @llvm.fmuladd.f32(float %203, float %204, float %210)
%212 = load float, float* %67
%213 = fadd float %211, %212
%214 = load float*, float** %116
%215 = getelementptr inbounds float, float* %214, i64 7
store float %213, float* %215
%216 = load float, float* %59
%217 = load float, float* %82
%218 = load float, float* %59
%219 = load float, float* %59
%220 = load float, float* %84
%221 = load float, float* %70
%222 = call float @llvm.fmuladd.f32(float %219, float %220, float %221)
%223 = fmul float %218, %222
%224 = call float @llvm.fmuladd.f32(float %216, float %217, float %223)
%225 = load float, float* %68
%226 = fadd float %224, %225
%227 = load float, float* %110
%228 = fadd float %226, %227
%229 = load float*, float** %116
%230 = getelementptr inbounds float, float* %229, i64 8
store float %228, float* %230
%231 = load float, float* %59
%232 = load float, float* %83
%233 = load float, float* %69
%234 = call float @llvm.fmuladd.f32(float %231, float %232, float %233)
%235 = load float*, float** %116
%236 = getelementptr inbounds float, float* %235, i64 9
store float %234, float* %236
%237 = load float, float* %59
%238 = load float, float* %84
%239 = load float, float* %70
%240 = call float @llvm.fmuladd.f32(float %237, float %238, float %239)
%241 = load float*, float** %116
%242 = getelementptr inbounds float, float* %241, i64 10
store float %240, float* %242
%243 = load float, float* %59
%244 = call double @pow(float %243, i32 2)
%245 = fmul double 5.000000e-01, %244
%246 = load float, float* %59
%247 = load float, float* %87
%248 = load float, float* %73
%249 = call float @llvm.fmuladd.f32(float %246, float %247, float %248)
%250 = fpext float %249 to double
%251 = load float, float* %59
%252 = load float, float* %85
%253 = fmul float %251, %252
%254 = fpext float %253 to double
%255 = call double @llvm.fmuladd.f64(double %245, double %250, double %254)
%256 = load float, float* %59
%257 = load float, float* %59
%258 = load float, float* %86
%259 = load float, float* %72
%260 = call float @llvm.fmuladd.f32(float %257, float %258, float %259)
%261 = fmul float %256, %260
%262 = fpext float %261 to double
%263 = fadd double %255, %262
%264 = load float, float* %71
%265 = fpext float %264 to double
%266 = fadd double %263, %265
%267 = fptrunc double %266 to float
%268 = load float*, float** %116
%269 = getelementptr inbounds float, float* %268, i64 11
store float %267, float* %269
%270 = load float, float* %59
%271 = load float, float* %86
%272 = load float, float* %59
%273 = load float, float* %59
%274 = load float, float* %87
%275 = load float, float* %73
%276 = call float @llvm.fmuladd.f32(float %273, float %274, float %275)
%277 = fmul float %272, %276
%278 = call float @llvm.fmuladd.f32(float %270, float %271, float %277)
%279 = load float, float* %72
%280 = fadd float %278, %279
%281 = load float*, float** %116
%282 = getelementptr inbounds float, float* %281, i64 12
store float %280, float* %282
%283 = load float, float* %59
%284 = load float, float* %87
%285 = load float, float* %73
%286 = call float @llvm.fmuladd.f32(float %283, float %284, float %285)
%287 = load float*, float** %116
%288 = getelementptr inbounds float, float* %287, i64 13
store float %286, float* %288
%289 = load float, float* %59
%290 = load float, float* %76
%291 = load float, float* %74
%292 = call float @llvm.fmuladd.f32(float %289, float %290, float %291)
%293 = load float*, float** %116
%294 = getelementptr inbounds float, float* %293, i64 14
store float %292, float* %294
%295 = load float, float* %59
%296 = load float, float* %77
%297 = load float, float* %75
%298 = call float @llvm.fmuladd.f32(float %295, float %296, float %297)
%299 = load float*, float** %116
%300 = getelementptr inbounds float, float* %299, i64 15
store float %298, float* %300
%301 = load float, float* %76
%302 = load float, float* %111
%303 = fadd float %301, %302
%304 = load float*, float** %116
%305 = getelementptr inbounds float, float* %304, i64 16
store float %303, float* %305
%306 = load float, float* %77
%307 = load float*, float** %116
%308 = getelementptr inbounds float, float* %307, i64 17
store float %306, float* %308
%309 = load float, float* %59
%310 = call double @pow(float %309, i32 2)
%311 = fmul double 5.000000e-01, %310
%312 = load float, float* %80
%313 = fpext float %312 to double
%314 = load float, float* %59
%315 = load float, float* %79
%316 = fmul float %314, %315
%317 = fpext float %316 to double
%318 = call double @llvm.fmuladd.f64(double %311, double %313, double %317)
%319 = load float, float* %78
%320 = fpext float %319 to double
%321 = fadd double %318, %320
%322 = fptrunc double %321 to float
%323 = load float*, float** %116
%324 = getelementptr inbounds float, float* %323, i64 18
store float %322, float* %324
%325 = load float, float* %59
%326 = load float, float* %80
%327 = load float, float* %79
%328 = call float @llvm.fmuladd.f32(float %325, float %326, float %327)
%329 = load float*, float** %116
%330 = getelementptr inbounds float, float* %329, i64 19
store float %328, float* %330
%331 = load float, float* %80
%332 = load float*, float** %116
%333 = getelementptr inbounds float, float* %332, i64 20
store float %331, float* %333
%334 = load float, float* %59
%335 = load float, float* %83
%336 = load float, float* %81
%337 = call float @llvm.fmuladd.f32(float %334, float %335, float %336)
%338 = load float*, float** %116
%339 = getelementptr inbounds float, float* %338, i64 21
store float %337, float* %339
%340 = load float, float* %59
%341 = load float, float* %84
%342 = load float, float* %82
%343 = call float @llvm.fmuladd.f32(float %340, float %341, float %342)
%344 = load float*, float** %116
%345 = getelementptr inbounds float, float* %344, i64 22
store float %343, float* %345
%346 = load float, float* %83
%347 = load float*, float** %116
%348 = getelementptr inbounds float, float* %347, i64 23
store float %346, float* %348
%349 = load float, float* %84
%350 = load float, float* %112
%351 = fadd float %349, %350
%352 = load float*, float** %116
%353 = getelementptr inbounds float, float* %352, i64 24
store float %351, float* %353
%354 = load float, float* %59
%355 = call double @pow(float %354, i32 2)
%356 = fmul double 5.000000e-01, %355
%357 = load float, float* %87
%358 = fpext float %357 to double
%359 = load float, float* %59
%360 = load float, float* %86
%361 = fmul float %359, %360
%362 = fpext float %361 to double
%363 = call double @llvm.fmuladd.f64(double %356, double %358, double %362)
%364 = load float, float* %85
%365 = fpext float %364 to double
%366 = fadd double %363, %365
%367 = fptrunc double %366 to float
%368 = load float*, float** %116
%369 = getelementptr inbounds float, float* %368, i64 25
store float %367, float* %369
%370 = load float, float* %59
%371 = load float, float* %87
%372 = load float, float* %86
%373 = call float @llvm.fmuladd.f32(float %370, float %371, float %372)
%374 = load float*, float** %116
%375 = getelementptr inbounds float, float* %374, i64 26
store float %373, float* %375
%376 = load float, float* %87
%377 = load float*, float** %116
%378 = getelementptr inbounds float, float* %377, i64 27
store float %376, float* %378
%379 = load float, float* %59
%380 = call double @pow(float %379, i32 2)
%381 = fmul double 5.000000e-01, %380
%382 = load float, float* %102
%383 = fpext float %382 to double
%384 = load float, float* %59
%385 = load float, float* %95
%386 = fmul float %384, %385
%387 = fpext float %386 to double
%388 = call double @llvm.fmuladd.f64(double %381, double %383, double %387)
%389 = load float, float* %59
%390 = fpext float %389 to double
%391 = load float, float* %59
%392 = call double @pow(float %391, i32 2)
%393 = fmul double 5.000000e-01, %392
%394 = load float, float* %104
%395 = fpext float %394 to double
%396 = load float, float* %59
%397 = load float, float* %97
%398 = fmul float %396, %397
%399 = fpext float %398 to double
%400 = call double @llvm.fmuladd.f64(double %393, double %395, double %399)
%401 = load float, float* %90
%402 = fpext float %401 to double
%403 = fadd double %400, %402
%404 = call double @llvm.fmuladd.f64(double %390, double %403, double %388)
%405 = load float, float* %88
%406 = fpext float %405 to double
%407 = fadd double %404, %406
%408 = fptrunc double %407 to float
%409 = load float*, float** %116
%410 = getelementptr inbounds float, float* %409, i64 28
store float %408, float* %410
%411 = load float, float* %59
%412 = call double @pow(float %411, i32 2)
%413 = fmul double 5.000000e-01, %412
%414 = load float, float* %103
%415 = fpext float %414 to double
%416 = load float, float* %59
%417 = load float, float* %96
%418 = fmul float %416, %417
%419 = fpext float %418 to double
%420 = call double @llvm.fmuladd.f64(double %413, double %415, double %419)
%421 = load float, float* %59
%422 = fpext float %421 to double
%423 = load float, float* %59
%424 = call double @pow(float %423, i32 2)
%425 = fmul double 5.000000e-01, %424
%426 = load float, float* %105
%427 = fpext float %426 to double
%428 = load float, float* %59
%429 = load float, float* %98
%430 = fmul float %428, %429
%431 = fpext float %430 to double
%432 = call double @llvm.fmuladd.f64(double %425, double %427, double %431)
%433 = load float, float* %91
%434 = fpext float %433 to double
%435 = fadd double %432, %434
%436 = call double @llvm.fmuladd.f64(double %422, double %435, double %420)
%437 = load float, float* %89
%438 = fpext float %437 to double
%439 = fadd double %436, %438
%440 = fptrunc double %439 to float
%441 = load float*, float** %116
%442 = getelementptr inbounds float, float* %441, i64 29
store float %440, float* %442
%443 = load float, float* %59
%444 = call double @pow(float %443, i32 2)
%445 = fmul double 5.000000e-01, %444
%446 = load float, float* %104
%447 = fpext float %446 to double
%448 = load float, float* %59
%449 = load float, float* %97
%450 = fmul float %448, %449
%451 = fpext float %450 to double
%452 = call double @llvm.fmuladd.f64(double %445, double %447, double %451)
%453 = load float, float* %90
%454 = fpext float %453 to double
%455 = fadd double %452, %454
%456 = fptrunc double %455 to float
%457 = load float*, float** %116
%458 = getelementptr inbounds float, float* %457, i64 30
store float %456, float* %458
%459 = load float, float* %59
%460 = call double @pow(float %459, i32 2)
%461 = fmul double 5.000000e-01, %460
%462 = load float, float* %105
%463 = fpext float %462 to double
%464 = load float, float* %59
%465 = load float, float* %98
%466 = fmul float %464, %465
%467 = fpext float %466 to double
%468 = call double @llvm.fmuladd.f64(double %461, double %463, double %467)
%469 = load float, float* %91
%470 = fpext float %469 to double
%471 = fadd double %468, %470
%472 = fptrunc double %471 to float
%473 = load float*, float** %116
%474 = getelementptr inbounds float, float* %473, i64 31
store float %472, float* %474
%475 = load float, float* %59
%476 = call double @pow(float %475, i32 2)
%477 = fmul double 5.000000e-01, %476
%478 = load float, float* %106
%479 = fpext float %478 to double
%480 = load float, float* %59
%481 = call double @pow(float %480, i32 2)
%482 = fmul double 5.000000e-01, %481
%483 = load float, float* %59
%484 = call double @pow(float %483, i32 2)
%485 = fmul double 5.000000e-01, %484
%486 = load float, float* %108
%487 = fpext float %486 to double
%488 = load float, float* %59
%489 = load float, float* %101
%490 = fmul float %488, %489
%491 = fpext float %490 to double
%492 = call double @llvm.fmuladd.f64(double %485, double %487, double %491)
%493 = load float, float* %94
%494 = fpext float %493 to double
%495 = fadd double %492, %494
%496 = fmul double %482, %495
%497 = call double @llvm.fmuladd.f64(double %477, double %479, double %496)
%498 = load float, float* %59
%499 = load float, float* %99
%500 = fmul float %498, %499
%501 = fpext float %500 to double
%502 = fadd double %497, %501
%503 = load float, float* %59
%504 = fpext float %503 to double
%505 = load float, float* %59
%506 = call double @pow(float %505, i32 2)
%507 = fmul double 5.000000e-01, %506
%508 = load float, float* %107
%509 = fpext float %508 to double
%510 = load float, float* %59
%511 = load float, float* %100
%512 = fmul float %510, %511
%513 = fpext float %512 to double
%514 = call double @llvm.fmuladd.f64(double %507, double %509, double %513)
%515 = load float, float* %93
%516 = fpext float %515 to double
%517 = fadd double %514, %516
%518 = call double @llvm.fmuladd.f64(double %504, double %517, double %502)
%519 = load float, float* %92
%520 = fpext float %519 to double
%521 = fadd double %518, %520
%522 = load float, float* %113
%523 = fpext float %522 to double
%524 = fadd double %521, %523
%525 = fptrunc double %524 to float
%526 = load float*, float** %116
%527 = getelementptr inbounds float, float* %526, i64 32
store float %525, float* %527
%528 = load float, float* %59
%529 = call double @pow(float %528, i32 2)
%530 = fmul double 5.000000e-01, %529
%531 = load float, float* %107
%532 = fpext float %531 to double
%533 = load float, float* %59
%534 = load float, float* %100
%535 = fmul float %533, %534
%536 = fpext float %535 to double
%537 = call double @llvm.fmuladd.f64(double %530, double %532, double %536)
%538 = load float, float* %59
%539 = fpext float %538 to double
%540 = load float, float* %59
%541 = call double @pow(float %540, i32 2)
%542 = fmul double 5.000000e-01, %541
%543 = load float, float* %108
%544 = fpext float %543 to double
%545 = load float, float* %59
%546 = load float, float* %101
%547 = fmul float %545, %546
%548 = fpext float %547 to double
%549 = call double @llvm.fmuladd.f64(double %542, double %544, double %548)
%550 = load float, float* %94
%551 = fpext float %550 to double
%552 = fadd double %549, %551
%553 = call double @llvm.fmuladd.f64(double %539, double %552, double %537)
%554 = load float, float* %93
%555 = fpext float %554 to double
%556 = fadd double %553, %555
%557 = fptrunc double %556 to float
%558 = load float*, float** %116
%559 = getelementptr inbounds float, float* %558, i64 33
store float %557, float* %559
%560 = load float, float* %59
%561 = call double @pow(float %560, i32 2)
%562 = fmul double 5.000000e-01, %561
%563 = load float, float* %108
%564 = fpext float %563 to double
%565 = load float, float* %59
%566 = load float, float* %101
%567 = fmul float %565, %566
%568 = fpext float %567 to double
%569 = call double @llvm.fmuladd.f64(double %562, double %564, double %568)
%570 = load float, float* %94
%571 = fpext float %570 to double
%572 = fadd double %569, %571
%573 = fptrunc double %572 to float
%574 = load float*, float** %116
%575 = getelementptr inbounds float, float* %574, i64 34
store float %573, float* %575
%576 = load float, float* %59
%577 = load float, float* %102
%578 = load float, float* %59
%579 = load float, float* %59
%580 = load float, float* %104
%581 = load float, float* %97
%582 = call float @llvm.fmuladd.f32(float %579, float %580, float %581)
%583 = fmul float %578, %582
%584 = call float @llvm.fmuladd.f32(float %576, float %577, float %583)
%585 = load float, float* %95
%586 = fadd float %584, %585
%587 = load float*, float** %116
%588 = getelementptr inbounds float, float* %587, i64 35
store float %586, float* %588
%589 = load float, float* %59
%590 = load float, float* %103
%591 = load float, float* %59
%592 = load float, float* %59
%593 = load float, float* %105
%594 = load float, float* %98
%595 = call float @llvm.fmuladd.f32(float %592, float %593, float %594)
%596 = fmul float %591, %595
%597 = call float @llvm.fmuladd.f32(float %589, float %590, float %596)
%598 = load float, float* %96
%599 = fadd float %597, %598
%600 = load float*, float** %116
%601 = getelementptr inbounds float, float* %600, i64 36
store float %599, float* %601
%602 = load float, float* %59
%603 = load float, float* %104
%604 = load float, float* %97
%605 = call float @llvm.fmuladd.f32(float %602, float %603, float %604)
%606 = load float*, float** %116
%607 = getelementptr inbounds float, float* %606, i64 37
store float %605, float* %607
%608 = load float, float* %59
%609 = load float, float* %105
%610 = load float, float* %98
%611 = call float @llvm.fmuladd.f32(float %608, float %609, float %610)
%612 = load float*, float** %116
%613 = getelementptr inbounds float, float* %612, i64 38
store float %611, float* %613
%614 = load float, float* %59
%615 = call double @pow(float %614, i32 2)
%616 = fmul double 5.000000e-01, %615
%617 = load float, float* %59
%618 = load float, float* %108
%619 = load float, float* %101
%620 = call float @llvm.fmuladd.f32(float %617, float %618, float %619)
%621 = fpext float %620 to double
%622 = load float, float* %59
%623 = load float, float* %106
%624 = fmul float %622, %623
%625 = fpext float %624 to double
%626 = call double @llvm.fmuladd.f64(double %616, double %621, double %625)
%627 = load float, float* %59
%628 = load float, float* %59
%629 = load float, float* %107
%630 = load float, float* %100
%631 = call float @llvm.fmuladd.f32(float %628, float %629, float %630)
%632 = fmul float %627, %631
%633 = fpext float %632 to double
%634 = fadd double %626, %633
%635 = load float, float* %99
%636 = fpext float %635 to double
%637 = fadd double %634, %636
%638 = fptrunc double %637 to float
%639 = load float*, float** %116
%640 = getelementptr inbounds float, float* %639, i64 39
store float %638, float* %640
%641 = load float, float* %59
%642 = load float, float* %107
%643 = load float, float* %59
%644 = load float, float* %59
%645 = load float, float* %108
%646 = load float, float* %101
%647 = call float @llvm.fmuladd.f32(float %644, float %645, float %646)
%648 = fmul float %643, %647
%649 = call float @llvm.fmuladd.f32(float %641, float %642, float %648)
%650 = load float, float* %100
%651 = fadd float %649, %650
%652 = load float, float* %114
%653 = fadd float %651, %652
%654 = load float*, float** %116
%655 = getelementptr inbounds float, float* %654, i64 40
store float %653, float* %655
%656 = load float, float* %59
%657 = load float, float* %108
%658 = load float, float* %101
%659 = call float @llvm.fmuladd.f32(float %656, float %657, float %658)
%660 = load float*, float** %116
%661 = getelementptr inbounds float, float* %660, i64 41
store float %659, float* %661
%662 = load float, float* %59
%663 = load float, float* %104
%664 = load float, float* %102
%665 = call float @llvm.fmuladd.f32(float %662, float %663, float %664)
%666 = load float*, float** %116
%667 = getelementptr inbounds float, float* %666, i64 42
store float %665, float* %667
%668 = load float, float* %59
%669 = load float, float* %105
%670 = load float, float* %103
%671 = call float @llvm.fmuladd.f32(float %668, float %669, float %670)
%672 = load float*, float** %116
%673 = getelementptr inbounds float, float* %672, i64 43
store float %671, float* %673
%674 = load float, float* %104
%675 = load float*, float** %116
%676 = getelementptr inbounds float, float* %675, i64 44
store float %674, float* %676
%677 = load float, float* %105
%678 = load float*, float** %116
%679 = getelementptr inbounds float, float* %678, i64 45
store float %677, float* %679
%680 = load float, float* %59
%681 = call double @pow(float %680, i32 2)
%682 = fmul double 5.000000e-01, %681
%683 = load float, float* %108
%684 = fpext float %683 to double
%685 = load float, float* %59
%686 = load float, float* %107
%687 = fmul float %685, %686
%688 = fpext float %687 to double
%689 = call double @llvm.fmuladd.f64(double %682, double %684, double %688)
%690 = load float, float* %106
%691 = fpext float %690 to double
%692 = fadd double %689, %691
%693 = fptrunc double %692 to float
%694 = load float*, float** %116
%695 = getelementptr inbounds float, float* %694, i64 46
store float %693, float* %695
%696 = load float, float* %59
%697 = load float, float* %108
%698 = load float, float* %107
%699 = call float @llvm.fmuladd.f32(float %696, float %697, float %698)
%700 = load float*, float** %116
%701 = getelementptr inbounds float, float* %700, i64 47
store float %699, float* %701
%702 = load float, float* %108
%703 = load float, float* %115
%704 = fadd float %702, %703
%705 = load float*, float** %116
%706 = getelementptr inbounds float, float* %705, i64 48
store float %704, float* %706
ret void
}

LLVM IR (-O2):
define void @predict_cov7(float %0, float %1, float %2, float %3, float %4, float %5, float %6, float %7, float %8, float %9, float %10, float %11, float %12, float %13, float %14, float %15, float %16, float %17, float %18, float %19, float %20, float %21, float %22, float %23, float %24, float %25, float %26, float %27, float %28, float %29, float %30, float %31, float %32, float %33, float %34, float %35, float %36, float %37, float %38, float %39, float %40, float %41, float %42, float %43, float %44, float %45, float %46, float %47, float %48, float %49, float %50, float %51, float %52, float %53, float %54, float %55, float %56, float* writeonly %57) {
%59 = tail call float @llvm.fmuladd.f32(float %0, float %17, float %3)
%60 = fmul float %59, %0
%61 = tail call float @llvm.fmuladd.f32(float %0, float %15, float %60)
%62 = fadd float %61, %1
%63 = fadd float %62, %50
store float %63, float* %57
%64 = tail call float @llvm.fmuladd.f32(float %0, float %18, float %4)
%65 = fmul float %64, %0
%66 = tail call float @llvm.fmuladd.f32(float %0, float %16, float %65)
%67 = fadd float %66, %2
%68 = getelementptr inbounds float, float* %57, i64 1
store float %67, float* %68
%69 = getelementptr inbounds float, float* %57, i64 2
store float %59, float* %69
%70 = getelementptr inbounds float, float* %57, i64 3
store float %64, float* %70
%71 = tail call double @pow(float %0, i32 2)
%72 = fmul double %71, 5.000000e-01
%73 = tail call float @llvm.fmuladd.f32(float %0, float %21, float %7)
%74 = fpext float %73 to double
%75 = fmul float %0, %19
%76 = fpext float %75 to double
%77 = tail call double @llvm.fmuladd.f64(double %72, double %74, double %76)
%78 = tail call float @llvm.fmuladd.f32(float %0, float %20, float %6)
%79 = fmul float %78, %0
%80 = fpext float %79 to double
%81 = fadd double %77, %80
%82 = fpext float %5 to double
%83 = fadd double %81, %82
%84 = fptrunc double %83 to float
%85 = getelementptr inbounds float, float* %57, i64 4
store float %84, float* %85
%86 = fmul float %73, %0
%87 = tail call float @llvm.fmuladd.f32(float %0, float %20, float %86)
%88 = fadd float %87, %6
%89 = getelementptr inbounds float, float* %57, i64 5
store float %88, float* %89
%90 = getelementptr inbounds float, float* %57, i64 6
store float %73, float* %90
%91 = tail call float @llvm.fmuladd.f32(float %0, float %24, float %10)
%92 = fmul float %91, %0
%93 = tail call float @llvm.fmuladd.f32(float %0, float %22, float %92)
%94 = fadd float %93, %8
%95 = getelementptr inbounds float, float* %57, i64 7
store float %94, float* %95
%96 = tail call float @llvm.fmuladd.f32(float %0, float %25, float %11)
%97 = fmul float %96, %0
%98 = tail call float @llvm.fmuladd.f32(float %0, float %23, float %97)
%99 = fadd float %98, %9
%100 = fadd float %99, %51
%101 = getelementptr inbounds float, float* %57, i64 8
store float %100, float* %101
%102 = getelementptr inbounds float, float* %57, i64 9
store float %91, float* %102
%103 = getelementptr inbounds float, float* %57, i64 10
store float %96, float* %103
%104 = tail call double @pow(float %0, i32 2)
%105 = fmul double %104, 5.000000e-01
%106 = tail call float @llvm.fmuladd.f32(float %0, float %28, float %14)
%107 = fpext float %106 to double
%108 = fmul float %0, %26
%109 = fpext float %108 to double
%110 = tail call double @llvm.fmuladd.f64(double %105, double %107, double %109)
%111 = tail call float @llvm.fmuladd.f32(float %0, float %27, float %13)
%112 = fmul float %111, %0
%113 = fpext float %112 to double
%114 = fadd double %110, %113
%115 = fpext float %12 to double
%116 = fadd double %114, %115
%117 = fptrunc double %116 to float
%118 = getelementptr inbounds float, float* %57, i64 11
store float %117, float* %118
%119 = fmul float %106, %0
%120 = tail call float @llvm.fmuladd.f32(float %0, float %27, float %119)
%121 = fadd float %120, %13
%122 = getelementptr inbounds float, float* %57, i64 12
store float %121, float* %122
%123 = getelementptr inbounds float, float* %57, i64 13
store float %106, float* %123
%124 = tail call float @llvm.fmuladd.f32(float %0, float %17, float %15)
%125 = getelementptr inbounds float, float* %57, i64 14
store float %124, float* %125
%126 = tail call float @llvm.fmuladd.f32(float %0, float %18, float %16)
%127 = getelementptr inbounds float, float* %57, i64 15
store float %126, float* %127
%128 = fadd float %17, %52
%129 = getelementptr inbounds float, float* %57, i64 16
store float %128, float* %129
%130 = getelementptr inbounds float, float* %57, i64 17
store float %18, float* %130
%131 = tail call double @pow(float %0, i32 2)
%132 = fmul double %131, 5.000000e-01
%133 = fpext float %21 to double
%134 = fmul float %0, %20
%135 = fpext float %134 to double
%136 = tail call double @llvm.fmuladd.f64(double %132, double %133, double %135)
%137 = fpext float %19 to double
%138 = fadd double %136, %137
%139 = fptrunc double %138 to float
%140 = getelementptr inbounds float, float* %57, i64 18
store float %139, float* %140
%141 = tail call float @llvm.fmuladd.f32(float %0, float %21, float %20)
%142 = getelementptr inbounds float, float* %57, i64 19
store float %141, float* %142
%143 = getelementptr inbounds float, float* %57, i64 20
store float %21, float* %143
%144 = tail call float @llvm.fmuladd.f32(float %0, float %24, float %22)
%145 = getelementptr inbounds float, float* %57, i64 21
store float %144, float* %145
%146 = tail call float @llvm.fmuladd.f32(float %0, float %25, float %23)
%147 = getelementptr inbounds float, float* %57, i64 22
store float %146, float* %147
%148 = getelementptr inbounds float, float* %57, i64 23
store float %24, float* %148
%149 = fadd float %25, %53
%150 = getelementptr inbounds float, float* %57, i64 24
store float %149, float* %150
%151 = tail call double @pow(float %0, i32 2)
%152 = fmul double %151, 5.000000e-01
%153 = fpext float %28 to double
%154 = fmul float %0, %27
%155 = fpext float %154 to double
%156 = tail call double @llvm.fmuladd.f64(double %152, double %153, double %155)
%157 = fpext float %26 to double
%158 = fadd double %156, %157
%159 = fptrunc double %158 to float
%160 = getelementptr inbounds float, float* %57, i64 25
store float %159, float* %160
%161 = tail call float @llvm.fmuladd.f32(float %0, float %28, float %27)
%162 = getelementptr inbounds float, float* %57, i64 26
store float %161, float* %162
%163 = getelementptr inbounds float, float* %57, i64 27
store float %28, float* %163
%164 = tail call double @pow(float %0, i32 2)
%165 = fmul double %164, 5.000000e-01
%166 = fpext float %43 to double
%167 = fmul float %0, %36
%168 = fpext float %167 to double
%169 = tail call double @llvm.fmuladd.f64(double %165, double %166, double %168)
%170 = fpext float %0 to double
%171 = tail call double @pow(float %0, i32 2)
%172 = fmul double %171, 5.000000e-01
%173 = fpext float %45 to double
%174 = fmul float %0, %38
%175 = fpext float %174 to double
%176 = tail call double @llvm.fmuladd.f64(double %172, double %173, double %175)
%177 = fpext float %31 to double
%178 = fadd double %176, %177
%179 = tail call double @llvm.fmuladd.f64(double %170, double %178, double %169)
%180 = fpext float %29 to double
%181 = fadd double %179, %180
%182 = fptrunc double %181 to float
%183 = getelementptr inbounds float, float* %57, i64 28
store float %182, float* %183
%184 = tail call double @pow(float %0, i32 2)
%185 = fmul double %184, 5.000000e-01
%186 = fpext float %44 to double
%187 = fmul float %0, %37
%188 = fpext float %187 to double
%189 = tail call double @llvm.fmuladd.f64(double %185, double %186, double %188)
%190 = tail call double @pow(float %0, i32 2)
%191 = fmul double %190, 5.000000e-01
%192 = fpext float %46 to double
%193 = fmul float %0, %39
%194 = fpext float %193 to double
%195 = tail call double @llvm.fmuladd.f64(double %191, double %192, double %194)
%196 = fpext float %32 to double
%197 = fadd double %195, %196
%198 = tail call double @llvm.fmuladd.f64(double %170, double %197, double %189)
%199 = fpext float %30 to double
%200 = fadd double %198, %199
%201 = fptrunc double %200 to float
%202 = getelementptr inbounds float, float* %57, i64 29
store float %201, float* %202
%203 = tail call double @pow(float %0, i32 2)
%204 = fmul double %203, 5.000000e-01
%205 = tail call double @llvm.fmuladd.f64(double %204, double %173, double %175)
%206 = fadd double %205, %177
%207 = fptrunc double %206 to float
%208 = getelementptr inbounds float, float* %57, i64 30
store float %207, float* %208
%209 = tail call double @pow(float %0, i32 2)
%210 = fmul double %209, 5.000000e-01
%211 = tail call double @llvm.fmuladd.f64(double %210, double %192, double %194)
%212 = fadd double %211, %196
%213 = fptrunc double %212 to float
%214 = getelementptr inbounds float, float* %57, i64 31
store float %213, float* %214
%215 = tail call double @pow(float %0, i32 2)
%216 = fmul double %215, 5.000000e-01
%217 = fpext float %47 to double
%218 = tail call double @pow(float %0, i32 2)
%219 = fmul double %218, 5.000000e-01
%220 = tail call double @pow(float %0, i32 2)
%221 = fmul double %220, 5.000000e-01
%222 = fpext float %49 to double
%223 = fmul float %0, %42
%224 = fpext float %223 to double
%225 = tail call double @llvm.fmuladd.f64(double %221, double %222, double %224)
%226 = fpext float %35 to double
%227 = fadd double %225, %226
%228 = fmul double %219, %227
%229 = tail call double @llvm.fmuladd.f64(double %216, double %217, double %228)
%230 = fmul float %0, %40
%231 = fpext float %230 to double
%232 = fadd double %229, %231
%233 = tail call double @pow(float %0, i32 2)
%234 = fmul double %233, 5.000000e-01
%235 = fpext float %48 to double
%236 = fmul float %0, %41
%237 = fpext float %236 to double
%238 = tail call double @llvm.fmuladd.f64(double %234, double %235, double %237)
%239 = fpext float %34 to double
%240 = fadd double %238, %239
%241 = tail call double @llvm.fmuladd.f64(double %170, double %240, double %232)
%242 = fpext float %33 to double
%243 = fadd double %241, %242
%244 = fpext float %54 to double
%245 = fadd double %243, %244
%246 = fptrunc double %245 to float
%247 = getelementptr inbounds float, float* %57, i64 32
store float %246, float* %247
%248 = tail call double @pow(float %0, i32 2)
%249 = fmul double %248, 5.000000e-01
%250 = tail call double @llvm.fmuladd.f64(double %249, double %235, double %237)
%251 = tail call double @pow(float %0, i32 2)
%252 = fmul double %251, 5.000000e-01
%253 = tail call double @llvm.fmuladd.f64(double %252, double %222, double %224)
%254 = fadd double %253, %226
%255 = tail call double @llvm.fmuladd.f64(double %170, double %254, double %250)
%256 = fadd double %255, %239
%257 = fptrunc double %256 to float
%258 = getelementptr inbounds float, float* %57, i64 33
store float %257, float* %258
%259 = tail call double @pow(float %0, i32 2)
%260 = fmul double %259, 5.000000e-01
%261 = tail call double @llvm.fmuladd.f64(double %260, double %222, double %224)
%262 = fadd double %261, %226
%263 = fptrunc double %262 to float
%264 = getelementptr inbounds float, float* %57, i64 34
store float %263, float* %264
%265 = tail call float @llvm.fmuladd.f32(float %0, float %45, float %38)
%266 = fmul float %265, %0
%267 = tail call float @llvm.fmuladd.f32(float %0, float %43, float %266)
%268 = fadd float %267, %36
%269 = getelementptr inbounds float, float* %57, i64 35
store float %268, float* %269
%270 = tail call float @llvm.fmuladd.f32(float %0, float %46, float %39)
%271 = fmul float %270, %0
%272 = tail call float @llvm.fmuladd.f32(float %0, float %44, float %271)
%273 = fadd float %272, %37
%274 = getelementptr inbounds float, float* %57, i64 36
store float %273, float* %274
%275 = getelementptr inbounds float, float* %57, i64 37
store float %265, float* %275
%276 = getelementptr inbounds float, float* %57, i64 38
store float %270, float* %276
%277 = tail call double @pow(float %0, i32 2)
%278 = fmul double %277, 5.000000e-01
%279 = tail call float @llvm.fmuladd.f32(float %0, float %49, float %42)
%280 = fpext float %279 to double
%281 = fmul float %0, %47
%282 = fpext float %281 to double
%283 = tail call double @llvm.fmuladd.f64(double %278, double %280, double %282)
%284 = tail call float @llvm.fmuladd.f32(float %0, float %48, float %41)
%285 = fmul float %284, %0
%286 = fpext float %285 to double
%287 = fadd double %283, %286
%288 = fpext float %40 to double
%289 = fadd double %287, %288
%290 = fptrunc double %289 to float
%291 = getelementptr inbounds float, float* %57, i64 39
store float %290, float* %291
%292 = fmul float %279, %0
%293 = tail call float @llvm.fmuladd.f32(float %0, float %48, float %292)
%294 = fadd float %293, %41
%295 = fadd float %294, %55
%296 = getelementptr inbounds float, float* %57, i64 40
store float %295, float* %296
%297 = getelementptr inbounds float, float* %57, i64 41
store float %279, float* %297
%298 = tail call float @llvm.fmuladd.f32(float %0, float %45, float %43)
%299 = getelementptr inbounds float, float* %57, i64 42
store float %298, float* %299
%300 = tail call float @llvm.fmuladd.f32(float %0, float %46, float %44)
%301 = getelementptr inbounds float, float* %57, i64 43
store float %300, float* %301
%302 = getelementptr inbounds float, float* %57, i64 44
store float %45, float* %302
%303 = getelementptr inbounds float, float* %57, i64 45
store float %46, float* %303
%304 = tail call double @pow(float %0, i32 2)
%305 = fmul double %304, 5.000000e-01
%306 = fmul float %0, %48
%307 = fpext float %306 to double
%308 = tail call double @llvm.fmuladd.f64(double %305, double %222, double %307)
%309 = fadd double %308, %217
%310 = fptrunc double %309 to float
%311 = getelementptr inbounds float, float* %57, i64 46
store float %310, float* %311
%312 = tail call float @llvm.fmuladd.f32(float %0, float %49, float %48)
%313 = getelementptr inbounds float, float* %57, i64 47
store float %312, float* %313
%314 = fadd float %49, %56
%315 = getelementptr inbounds float, float* %57, i64 48
store float %314, float* %315
ret void
}