float myFunc(const int vIndex, const float *restrict P,
             const float *restrict ex, const int nExamples,
             float *restrict pred) {
  float in_0, in_1;
  in_0 = ex[IN(0, nExamples, vIndex)];
  in_1 = ex[IN(1, nExamples, vIndex)];
  register float h1_0 = P[0];
  register float h1_1 = P[1];
  register float h1_2 = P[2];
  register float h1_3 = P[3];
  register float h1_4 = P[4];
  register float h1_5 = P[5];
  register float h1_6 = P[6];
  register float h1_7 = P[7];
  register float h1_8 = P[8];
  register float h1_9 = P[9];
  h1_0 += in_0 * P[10];
  h1_1 += in_0 * P[11];
  h1_2 += in_0 * P[12];
  h1_3 += in_0 * P[13];
  h1_4 += in_0 * P[14];
  h1_5 += in_0 * P[15];
  h1_6 += in_0 * P[16];
  h1_7 += in_0 * P[17];
  h1_8 += in_0 * P[18];
  h1_9 += in_0 * P[19];
  h1_0 += in_1 * P[20];
  h1_1 += in_1 * P[21];
  h1_2 += in_1 * P[22];
  h1_3 += in_1 * P[23];
  h1_4 += in_1 * P[24];
  h1_5 += in_1 * P[25];
  h1_6 += in_1 * P[26];
  h1_7 += in_1 * P[27];
  h1_8 += in_1 * P[28];
  h1_9 += in_1 * P[29];
  h1_0 = G(h1_0);
  h1_1 = G(h1_1);
  h1_2 = G(h1_2);
  h1_3 = G(h1_3);
  h1_4 = G(h1_4);
  h1_5 = G(h1_5);
  h1_6 = G(h1_6);
  h1_7 = G(h1_7);
  h1_8 = G(h1_8);
  h1_9 = G(h1_9);
  register float h2_0 = P[30];
  h2_0 += h1_0 * P[31];
  h2_0 += h1_1 * P[32];
  h2_0 += h1_2 * P[33];
  h2_0 += h1_3 * P[34];
  h2_0 += h1_4 * P[35];
  h2_0 += h1_5 * P[36];
  h2_0 += h1_6 * P[37];
  h2_0 += h1_7 * P[38];
  h2_0 += h1_8 * P[39];
  h2_0 += h1_9 * P[40];
  register float h3_0 = P[41];
  register float h3_1 = P[42];
  register float h3_2 = P[43];
  register float h3_3 = P[44];
  register float h3_4 = P[45];
  register float h3_5 = P[46];
  register float h3_6 = P[47];
  register float h3_7 = P[48];
  register float h3_8 = P[49];
  register float h3_9 = P[50];
  h3_0 += h2_0 * P[51];
  h3_1 += h2_0 * P[52];
  h3_2 += h2_0 * P[53];
  h3_3 += h2_0 * P[54];
  h3_4 += h2_0 * P[55];
  h3_5 += h2_0 * P[56];
  h3_6 += h2_0 * P[57];
  h3_7 += h2_0 * P[58];
  h3_8 += h2_0 * P[59];
  h3_9 += h2_0 * P[60];
  h3_0 = G(h3_0);
  h3_1 = G(h3_1);
  h3_2 = G(h3_2);
  h3_3 = G(h3_3);
  h3_4 = G(h3_4);
  h3_5 = G(h3_5);
  h3_6 = G(h3_6);
  h3_7 = G(h3_7);
  h3_8 = G(h3_8);
  h3_9 = G(h3_9);
  register float o, sum = 0.f;
  o = P[61];
  o += h3_0 * P[62];
  o += h3_1 * P[63];
  o += h3_2 * P[64];
  o += h3_3 * P[65];
  o += h3_4 * P[66];
  o += h3_5 * P[67];
  o += h3_6 * P[68];
  o += h3_7 * P[69];
  o += h3_8 * P[70];
  o += h3_9 * P[71];
  o -= in_0;
  sum += o * o;
  o = P[72];
  o += h3_0 * P[73];
  o += h3_1 * P[74];
  o += h3_2 * P[75];
  o += h3_3 * P[76];
  o += h3_4 * P[77];
  o += h3_5 * P[78];
  o += h3_6 * P[79];
  o += h3_7 * P[80];
  o += h3_8 * P[81];
  o += h3_9 * P[82];
  o -= in_1;
  sum += o * o;
  return (sum);
}


x86 assembly (clang, -O0):
<myFunc>:
push   %rbp
mov    %rsp,%rbp
sub    $0xa0,%rsp
mov    %edi,-0x4(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %ecx,-0x1c(%rbp)
mov    %r8,-0x28(%rbp)
mov    -0x18(%rbp),%rax
mov    %rax,-0xa0(%rbp)
mov    -0x1c(%rbp),%esi
mov    -0x4(%rbp),%edx
xor    %edi,%edi
mov    $0x0,%al
call   1040 <IN@plt>
mov    %eax,%ecx
mov    -0xa0(%rbp),%rax
movslq %ecx,%rcx
movss  (%rax,%rcx,4),%xmm0
movss  %xmm0,-0x2c(%rbp)
mov    -0x18(%rbp),%rax
mov    %rax,-0x98(%rbp)
mov    -0x1c(%rbp),%esi
mov    -0x4(%rbp),%edx
mov    $0x1,%edi
mov    $0x0,%al
call   1040 <IN@plt>
mov    %eax,%ecx
mov    -0x98(%rbp),%rax
movslq %ecx,%rcx
movss  (%rax,%rcx,4),%xmm0
movss  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
movss  %xmm0,-0x34(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
movss  %xmm0,-0x38(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
movss  %xmm0,-0x3c(%rbp)
mov    -0x10(%rbp),%rax
movss  0xc(%rax),%xmm0
movss  %xmm0,-0x40(%rbp)
mov    -0x10(%rbp),%rax
movss  0x10(%rax),%xmm0
movss  %xmm0,-0x44(%rbp)
mov    -0x10(%rbp),%rax
movss  0x14(%rax),%xmm0
movss  %xmm0,-0x48(%rbp)
mov    -0x10(%rbp),%rax
movss  0x18(%rax),%xmm0
movss  %xmm0,-0x4c(%rbp)
mov    -0x10(%rbp),%rax
movss  0x1c(%rax),%xmm0
movss  %xmm0,-0x50(%rbp)
mov    -0x10(%rbp),%rax
movss  0x20(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  0x24(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x28(%rax),%xmm2
movss  -0x34(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x34(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x2c(%rax),%xmm2
movss  -0x38(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x30(%rax),%xmm2
movss  -0x3c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x34(%rax),%xmm2
movss  -0x40(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x38(%rax),%xmm2
movss  -0x44(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x3c(%rax),%xmm2
movss  -0x48(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x40(%rax),%xmm2
movss  -0x4c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x44(%rax),%xmm2
movss  -0x50(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x48(%rax),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x2c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x4c(%rax),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x58(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x50(%rax),%xmm2
movss  -0x34(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x34(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x54(%rax),%xmm2
movss  -0x38(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x58(%rax),%xmm2
movss  -0x3c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x5c(%rax),%xmm2
movss  -0x40(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x60(%rax),%xmm2
movss  -0x44(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x64(%rax),%xmm2
movss  -0x48(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x68(%rax),%xmm2
movss  -0x4c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x6c(%rax),%xmm2
movss  -0x50(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x70(%rax),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x74(%rax),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x58(%rbp)
movss  -0x34(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x34(%rbp)
movss  -0x38(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x38(%rbp)
movss  -0x3c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x3c(%rbp)
movss  -0x40(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x40(%rbp)
movss  -0x44(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x48(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x48(%rbp)
movss  -0x4c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x4c(%rbp)
movss  -0x50(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x54(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x58(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x10(%rbp),%rax
movss  0x78(%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x34(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x7c(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x38(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x80(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x3c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x84(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x40(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x88(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x44(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x8c(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x48(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x90(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x4c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x94(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x50(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x98(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x54(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x9c(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
movss  -0x58(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xa0(%rax),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x10(%rbp),%rax
movss  0xa4(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
mov    -0x10(%rbp),%rax
movss  0xa8(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0xac(%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0xb0(%rax),%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x10(%rbp),%rax
movss  0xb4(%rax),%xmm0
movss  %xmm0,-0x70(%rbp)
mov    -0x10(%rbp),%rax
movss  0xb8(%rax),%xmm0
movss  %xmm0,-0x74(%rbp)
mov    -0x10(%rbp),%rax
movss  0xbc(%rax),%xmm0
movss  %xmm0,-0x78(%rbp)
mov    -0x10(%rbp),%rax
movss  0xc0(%rax),%xmm0
movss  %xmm0,-0x7c(%rbp)
mov    -0x10(%rbp),%rax
movss  0xc4(%rax),%xmm0
movss  %xmm0,-0x80(%rbp)
mov    -0x10(%rbp),%rax
movss  0xc8(%rax),%xmm0
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xcc(%rax),%xmm2
movss  -0x60(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xd0(%rax),%xmm2
movss  -0x64(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xd4(%rax),%xmm2
movss  -0x68(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xd8(%rax),%xmm2
movss  -0x6c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xdc(%rax),%xmm2
movss  -0x70(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xe0(%rax),%xmm2
movss  -0x74(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xe4(%rax),%xmm2
movss  -0x78(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xe8(%rax),%xmm2
movss  -0x7c(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xec(%rax),%xmm2
movss  -0x80(%rbp),%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x5c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xf0(%rax),%xmm2
movss  -0x84(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x84(%rbp)
ff
movss  -0x60(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x64(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x64(%rbp)
movss  -0x68(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x68(%rbp)
movss  -0x6c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x6c(%rbp)
movss  -0x70(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x74(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x78(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x78(%rbp)
movss  -0x7c(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x80(%rbp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x84(%rbp),%xmm0
ff
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm0
movss  %xmm0,-0x84(%rbp)
ff
xorps  %xmm0,%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
mov    -0x10(%rbp),%rax
movss  0xf4(%rax),%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x60(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xf8(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x64(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0xfc(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x68(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x100(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x6c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x104(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x70(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x108(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x74(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x10c(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x78(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x110(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x7c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x114(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x80(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x118(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x84(%rbp),%xmm0
ff
mov    -0x10(%rbp),%rax
movss  0x11c(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x2c(%rbp),%xmm1
movss  -0x88(%rbp),%xmm0
ff
subss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x88(%rbp),%xmm0
ff
movss  -0x88(%rbp),%xmm2
ff
movss  -0x8c(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
mov    -0x10(%rbp),%rax
movss  0x120(%rax),%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x60(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x124(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x64(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x128(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x68(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x12c(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x6c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x130(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x70(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x134(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x74(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x138(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x78(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x13c(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x7c(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x140(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x80(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movss  0x144(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x84(%rbp),%xmm0
ff
mov    -0x10(%rbp),%rax
movss  0x148(%rax),%xmm2
movss  -0x88(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x30(%rbp),%xmm1
movss  -0x88(%rbp),%xmm0
ff
subss  %xmm1,%xmm0
movss  %xmm0,-0x88(%rbp)
ff
movss  -0x88(%rbp),%xmm0
ff
movss  -0x88(%rbp),%xmm2
ff
movss  -0x8c(%rbp),%xmm1
ff
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x8c(%rbp)
ff
movss  -0x8c(%rbp),%xmm0
ff
add    $0xa0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<myFunc>:
push   %rbp
push   %r15
push   %r14
push   %rbx
sub    $0x38,%rsp
mov    %ecx,%r15d
mov    %rdx,%r14
mov    %rsi,%rbx
mov    %edi,%ebp
xor    %edi,%edi
mov    %ecx,%esi
mov    %ebp,%edx
xor    %eax,%eax
call   1040 <IN@plt>
cltq
movss  (%r14,%rax,4),%xmm0
movss  %xmm0,0x30(%rsp)
mov    $0x1,%edi
mov    %r15d,%esi
mov    %ebp,%edx
xor    %eax,%eax
call   1040 <IN@plt>
cltq
movss  0x28(%rbx),%xmm10
movss  0x30(%rsp),%xmm0
mulss  %xmm0,%xmm10
addss  (%rbx),%xmm10
movss  0x2c(%rbx),%xmm11
mulss  %xmm0,%xmm11
addss  0x4(%rbx),%xmm11
movss  0x30(%rbx),%xmm12
mulss  %xmm0,%xmm12
addss  0x8(%rbx),%xmm12
movss  0x34(%rbx),%xmm3
mulss  %xmm0,%xmm3
addss  0xc(%rbx),%xmm3
movss  0x38(%rbx),%xmm4
mulss  %xmm0,%xmm4
addss  0x10(%rbx),%xmm4
movss  0x3c(%rbx),%xmm5
mulss  %xmm0,%xmm5
addss  0x14(%rbx),%xmm5
movss  0x40(%rbx),%xmm6
mulss  %xmm0,%xmm6
addss  0x18(%rbx),%xmm6
movss  0x44(%rbx),%xmm7
mulss  %xmm0,%xmm7
addss  0x1c(%rbx),%xmm7
movss  0x48(%rbx),%xmm8
mulss  %xmm0,%xmm8
addss  0x20(%rbx),%xmm8
movss  0x4c(%rbx),%xmm9
mulss  %xmm0,%xmm9
addss  0x24(%rbx),%xmm9
movss  (%r14,%rax,4),%xmm1
movss  %xmm1,0x34(%rsp)
movss  0x50(%rbx),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm10,%xmm0
movss  0x54(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm11,%xmm2
movss  %xmm2,0x20(%rsp)
movss  0x58(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm12,%xmm2
movss  %xmm2,0x18(%rsp)
movss  0x5c(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movss  %xmm2,0x10(%rsp)
movss  0x60(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm4,%xmm2
movss  %xmm2,0x8(%rsp)
movss  0x64(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm5,%xmm2
movss  %xmm2,0xc(%rsp)
movss  0x68(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm6,%xmm2
movss  %xmm2,0x14(%rsp)
movss  0x6c(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm7,%xmm2
movss  %xmm2,0x1c(%rsp)
movss  0x70(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm8,%xmm2
movss  %xmm2,0x24(%rsp)
movss  0x74(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm9,%xmm2
movss  %xmm2,0x28(%rsp)
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x2c(%rsp)
movss  0x20(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x20(%rsp)
movss  0x18(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x18(%rsp)
movss  0x10(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x10(%rsp)
movss  0x8(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x8(%rsp)
movss  0xc(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0xc(%rsp)
movss  0x14(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x14(%rsp)
movss  0x1c(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x1c(%rsp)
movss  0x24(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x24(%rsp)
movss  0x28(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
cvtsi2ss %eax,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  0x7c(%rbx),%xmm0
addss  0x78(%rbx),%xmm0
movss  0x20(%rsp),%xmm2
mulss  0x80(%rbx),%xmm2
addss  %xmm0,%xmm2
movss  0x18(%rsp),%xmm0
mulss  0x84(%rbx),%xmm0
addss  %xmm2,%xmm0
movss  0x10(%rsp),%xmm2
mulss  0x88(%rbx),%xmm2
addss  %xmm0,%xmm2
movss  0x8(%rsp),%xmm0
mulss  0x8c(%rbx),%xmm0
movss  0xc(%rsp),%xmm3
mulss  0x90(%rbx),%xmm3
addss  %xmm2,%xmm0
addss  %xmm0,%xmm3
movss  0x14(%rsp),%xmm0
mulss  0x94(%rbx),%xmm0
addss  %xmm3,%xmm0
movss  0x1c(%rsp),%xmm2
mulss  0x98(%rbx),%xmm2
addss  %xmm0,%xmm2
movss  0x24(%rsp),%xmm0
mulss  0x9c(%rbx),%xmm0
mulss  0xa0(%rbx),%xmm1
addss  %xmm2,%xmm0
addss  %xmm0,%xmm1
movss  0xcc(%rbx),%xmm0
mulss  %xmm1,%xmm0
addss  0xa4(%rbx),%xmm0
movss  0xd0(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xa8(%rbx),%xmm2
movss  %xmm2,0x24(%rsp)
movss  0xd4(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xac(%rbx),%xmm2
movss  %xmm2,0x20(%rsp)
movss  0xd8(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xb0(%rbx),%xmm2
movss  %xmm2,0x18(%rsp)
movss  0xdc(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xb4(%rbx),%xmm2
movss  %xmm2,0x10(%rsp)
movss  0xe0(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xb8(%rbx),%xmm2
movss  %xmm2,0x8(%rsp)
movss  0xe4(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xbc(%rbx),%xmm2
movss  %xmm2,0xc(%rsp)
movss  0xe8(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xc0(%rbx),%xmm2
movss  %xmm2,0x14(%rsp)
movss  0xec(%rbx),%xmm2
mulss  %xmm1,%xmm2
addss  0xc4(%rbx),%xmm2
movss  %xmm2,0x1c(%rsp)
mulss  0xf0(%rbx),%xmm1
addss  0xc8(%rbx),%xmm1
movss  %xmm1,0x28(%rsp)
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x2c(%rsp)
movss  0x24(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x24(%rsp)
movss  0x20(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x20(%rsp)
movss  0x18(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x18(%rsp)
movss  0x10(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x10(%rsp)
movss  0x8(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x8(%rsp)
movss  0xc(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0xc(%rsp)
movss  0x14(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x14(%rsp)
movss  0x1c(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  %xmm0,0x1c(%rsp)
movss  0x28(%rsp),%xmm0
cvtss2sd %xmm0,%xmm0
mov    $0x1,%al
call   1030 <G@plt>
xorps  %xmm0,%xmm0
cvtsi2ss %eax,%xmm0
movss  0xf8(%rbx),%xmm1
movss  0x2c(%rsp),%xmm8
mulss  %xmm8,%xmm1
addss  0xf4(%rbx),%xmm1
movss  0xfc(%rbx),%xmm2
movss  0x24(%rsp),%xmm3
mulss  %xmm3,%xmm2
addss  %xmm1,%xmm2
movss  0x100(%rbx),%xmm1
movss  0x20(%rsp),%xmm9
mulss  %xmm9,%xmm1
addss  %xmm2,%xmm1
movss  0x104(%rbx),%xmm2
movss  0x18(%rsp),%xmm10
mulss  %xmm10,%xmm2
addss  %xmm1,%xmm2
movss  0x108(%rbx),%xmm1
movss  0x10(%rsp),%xmm4
mulss  %xmm4,%xmm1
addss  %xmm2,%xmm1
movss  0x10c(%rbx),%xmm2
movss  0x8(%rsp),%xmm11
mulss  %xmm11,%xmm2
addss  %xmm1,%xmm2
movss  0x110(%rbx),%xmm1
movss  0xc(%rsp),%xmm6
mulss  %xmm6,%xmm1
addss  %xmm2,%xmm1
movss  0x114(%rbx),%xmm2
movss  0x14(%rsp),%xmm7
mulss  %xmm7,%xmm2
addss  %xmm1,%xmm2
movss  0x118(%rbx),%xmm1
movss  0x1c(%rsp),%xmm5
mulss  %xmm5,%xmm1
addss  %xmm2,%xmm1
movss  0x11c(%rbx),%xmm2
mulss  %xmm0,%xmm2
addss  %xmm1,%xmm2
subss  0x30(%rsp),%xmm2
mulss  %xmm2,%xmm2
xorps  %xmm1,%xmm1
addss  %xmm2,%xmm1
movaps %xmm8,%xmm2
mulss  0x124(%rbx),%xmm2
addss  0x120(%rbx),%xmm2
mulss  0x128(%rbx),%xmm3
addss  %xmm2,%xmm3
movaps %xmm9,%xmm2
mulss  0x12c(%rbx),%xmm2
addss  %xmm3,%xmm2
movaps %xmm10,%xmm3
mulss  0x130(%rbx),%xmm3
mulss  0x134(%rbx),%xmm4
addss  %xmm2,%xmm3
addss  %xmm3,%xmm4
movaps %xmm11,%xmm2
mulss  0x138(%rbx),%xmm2
addss  %xmm4,%xmm2
movaps %xmm6,%xmm3
mulss  0x13c(%rbx),%xmm3
addss  %xmm2,%xmm3
movaps %xmm7,%xmm2
mulss  0x140(%rbx),%xmm2
movaps %xmm5,%xmm4
mulss  0x144(%rbx),%xmm4
addss  %xmm3,%xmm2
addss  %xmm2,%xmm4
mulss  0x148(%rbx),%xmm0
addss  %xmm4,%xmm0
subss  0x34(%rsp),%xmm0
mulss  %xmm0,%xmm0
addss  %xmm1,%xmm0
add    $0x38,%rsp
pop    %rbx
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define float @myFunc(i32 %0, float* noalias %1, float* noalias %2, i32 %3, float* noalias %4) {
%6 = alloca i32
%7 = alloca float*
%8 = alloca float*
%9 = alloca i32
%10 = alloca float*
%11 = alloca float
%12 = alloca float
%13 = alloca float
%14 = alloca float
%15 = alloca float
%16 = alloca float
%17 = alloca float
%18 = alloca float
%19 = alloca float
%20 = alloca float
%21 = alloca float
%22 = alloca float
%23 = alloca float
%24 = alloca float
%25 = alloca float
%26 = alloca float
%27 = alloca float
%28 = alloca float
%29 = alloca float
%30 = alloca float
%31 = alloca float
%32 = alloca float
%33 = alloca float
%34 = alloca float
%35 = alloca float
store i32 %0, i32* %6
store float* %1, float** %7
store float* %2, float** %8
store i32 %3, i32* %9
store float* %4, float** %10
%36 = load float*, float** %8
%37 = load i32, i32* %9
%38 = load i32, i32* %6
%39 = call i32 (i32, i32, i32, ...) bitcast (i32 (...)* @IN to i32 (i32, i32, i32, ...)*)(i32 0, i32 %37, i32 %38)
%40 = sext i32 %39 to i64
%41 = getelementptr inbounds float, float* %36, i64 %40
%42 = load float, float* %41
store float %42, float* %11
%43 = load float*, float** %8
%44 = load i32, i32* %9
%45 = load i32, i32* %6
%46 = call i32 (i32, i32, i32, ...) bitcast (i32 (...)* @IN to i32 (i32, i32, i32, ...)*)(i32 1, i32 %44, i32 %45)
%47 = sext i32 %46 to i64
%48 = getelementptr inbounds float, float* %43, i64 %47
%49 = load float, float* %48
store float %49, float* %12
%50 = load float*, float** %7
%51 = getelementptr inbounds float, float* %50, i64 0
%52 = load float, float* %51
store float %52, float* %13
%53 = load float*, float** %7
%54 = getelementptr inbounds float, float* %53, i64 1
%55 = load float, float* %54
store float %55, float* %14
%56 = load float*, float** %7
%57 = getelementptr inbounds float, float* %56, i64 2
%58 = load float, float* %57
store float %58, float* %15
%59 = load float*, float** %7
%60 = getelementptr inbounds float, float* %59, i64 3
%61 = load float, float* %60
store float %61, float* %16
%62 = load float*, float** %7
%63 = getelementptr inbounds float, float* %62, i64 4
%64 = load float, float* %63
store float %64, float* %17
%65 = load float*, float** %7
%66 = getelementptr inbounds float, float* %65, i64 5
%67 = load float, float* %66
store float %67, float* %18
%68 = load float*, float** %7
%69 = getelementptr inbounds float, float* %68, i64 6
%70 = load float, float* %69
store float %70, float* %19
%71 = load float*, float** %7
%72 = getelementptr inbounds float, float* %71, i64 7
%73 = load float, float* %72
store float %73, float* %20
%74 = load float*, float** %7
%75 = getelementptr inbounds float, float* %74, i64 8
%76 = load float, float* %75
store float %76, float* %21
%77 = load float*, float** %7
%78 = getelementptr inbounds float, float* %77, i64 9
%79 = load float, float* %78
store float %79, float* %22
%80 = load float, float* %11
%81 = load float*, float** %7
%82 = getelementptr inbounds float, float* %81, i64 10
%83 = load float, float* %82
%84 = load float, float* %13
%85 = call float @llvm.fmuladd.f32(float %80, float %83, float %84)
store float %85, float* %13
%86 = load float, float* %11
%87 = load float*, float** %7
%88 = getelementptr inbounds float, float* %87, i64 11
%89 = load float, float* %88
%90 = load float, float* %14
%91 = call float @llvm.fmuladd.f32(float %86, float %89, float %90)
store float %91, float* %14
%92 = load float, float* %11
%93 = load float*, float** %7
%94 = getelementptr inbounds float, float* %93, i64 12
%95 = load float, float* %94
%96 = load float, float* %15
%97 = call float @llvm.fmuladd.f32(float %92, float %95, float %96)
store float %97, float* %15
%98 = load float, float* %11
%99 = load float*, float** %7
%100 = getelementptr inbounds float, float* %99, i64 13
%101 = load float, float* %100
%102 = load float, float* %16
%103 = call float @llvm.fmuladd.f32(float %98, float %101, float %102)
store float %103, float* %16
%104 = load float, float* %11
%105 = load float*, float** %7
%106 = getelementptr inbounds float, float* %105, i64 14
%107 = load float, float* %106
%108 = load float, float* %17
%109 = call float @llvm.fmuladd.f32(float %104, float %107, float %108)
store float %109, float* %17
%110 = load float, float* %11
%111 = load float*, float** %7
%112 = getelementptr inbounds float, float* %111, i64 15
%113 = load float, float* %112
%114 = load float, float* %18
%115 = call float @llvm.fmuladd.f32(float %110, float %113, float %114)
store float %115, float* %18
%116 = load float, float* %11
%117 = load float*, float** %7
%118 = getelementptr inbounds float, float* %117, i64 16
%119 = load float, float* %118
%120 = load float, float* %19
%121 = call float @llvm.fmuladd.f32(float %116, float %119, float %120)
store float %121, float* %19
%122 = load float, float* %11
%123 = load float*, float** %7
%124 = getelementptr inbounds float, float* %123, i64 17
%125 = load float, float* %124
%126 = load float, float* %20
%127 = call float @llvm.fmuladd.f32(float %122, float %125, float %126)
store float %127, float* %20
%128 = load float, float* %11
%129 = load float*, float** %7
%130 = getelementptr inbounds float, float* %129, i64 18
%131 = load float, float* %130
%132 = load float, float* %21
%133 = call float @llvm.fmuladd.f32(float %128, float %131, float %132)
store float %133, float* %21
%134 = load float, float* %11
%135 = load float*, float** %7
%136 = getelementptr inbounds float, float* %135, i64 19
%137 = load float, float* %136
%138 = load float, float* %22
%139 = call float @llvm.fmuladd.f32(float %134, float %137, float %138)
store float %139, float* %22
%140 = load float, float* %12
%141 = load float*, float** %7
%142 = getelementptr inbounds float, float* %141, i64 20
%143 = load float, float* %142
%144 = load float, float* %13
%145 = call float @llvm.fmuladd.f32(float %140, float %143, float %144)
store float %145, float* %13
%146 = load float, float* %12
%147 = load float*, float** %7
%148 = getelementptr inbounds float, float* %147, i64 21
%149 = load float, float* %148
%150 = load float, float* %14
%151 = call float @llvm.fmuladd.f32(float %146, float %149, float %150)
store float %151, float* %14
%152 = load float, float* %12
%153 = load float*, float** %7
%154 = getelementptr inbounds float, float* %153, i64 22
%155 = load float, float* %154
%156 = load float, float* %15
%157 = call float @llvm.fmuladd.f32(float %152, float %155, float %156)
store float %157, float* %15
%158 = load float, float* %12
%159 = load float*, float** %7
%160 = getelementptr inbounds float, float* %159, i64 23
%161 = load float, float* %160
%162 = load float, float* %16
%163 = call float @llvm.fmuladd.f32(float %158, float %161, float %162)
store float %163, float* %16
%164 = load float, float* %12
%165 = load float*, float** %7
%166 = getelementptr inbounds float, float* %165, i64 24
%167 = load float, float* %166
%168 = load float, float* %17
%169 = call float @llvm.fmuladd.f32(float %164, float %167, float %168)
store float %169, float* %17
%170 = load float, float* %12
%171 = load float*, float** %7
%172 = getelementptr inbounds float, float* %171, i64 25
%173 = load float, float* %172
%174 = load float, float* %18
%175 = call float @llvm.fmuladd.f32(float %170, float %173, float %174)
store float %175, float* %18
%176 = load float, float* %12
%177 = load float*, float** %7
%178 = getelementptr inbounds float, float* %177, i64 26
%179 = load float, float* %178
%180 = load float, float* %19
%181 = call float @llvm.fmuladd.f32(float %176, float %179, float %180)
store float %181, float* %19
%182 = load float, float* %12
%183 = load float*, float** %7
%184 = getelementptr inbounds float, float* %183, i64 27
%185 = load float, float* %184
%186 = load float, float* %20
%187 = call float @llvm.fmuladd.f32(float %182, float %185, float %186)
store float %187, float* %20
%188 = load float, float* %12
%189 = load float*, float** %7
%190 = getelementptr inbounds float, float* %189, i64 28
%191 = load float, float* %190
%192 = load float, float* %21
%193 = call float @llvm.fmuladd.f32(float %188, float %191, float %192)
store float %193, float* %21
%194 = load float, float* %12
%195 = load float*, float** %7
%196 = getelementptr inbounds float, float* %195, i64 29
%197 = load float, float* %196
%198 = load float, float* %22
%199 = call float @llvm.fmuladd.f32(float %194, float %197, float %198)
store float %199, float* %22
%200 = load float, float* %13
%201 = fpext float %200 to double
%202 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %201)
%203 = sitofp i32 %202 to float
store float %203, float* %13
%204 = load float, float* %14
%205 = fpext float %204 to double
%206 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %205)
%207 = sitofp i32 %206 to float
store float %207, float* %14
%208 = load float, float* %15
%209 = fpext float %208 to double
%210 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %209)
%211 = sitofp i32 %210 to float
store float %211, float* %15
%212 = load float, float* %16
%213 = fpext float %212 to double
%214 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %213)
%215 = sitofp i32 %214 to float
store float %215, float* %16
%216 = load float, float* %17
%217 = fpext float %216 to double
%218 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %217)
%219 = sitofp i32 %218 to float
store float %219, float* %17
%220 = load float, float* %18
%221 = fpext float %220 to double
%222 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %221)
%223 = sitofp i32 %222 to float
store float %223, float* %18
%224 = load float, float* %19
%225 = fpext float %224 to double
%226 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %225)
%227 = sitofp i32 %226 to float
store float %227, float* %19
%228 = load float, float* %20
%229 = fpext float %228 to double
%230 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %229)
%231 = sitofp i32 %230 to float
store float %231, float* %20
%232 = load float, float* %21
%233 = fpext float %232 to double
%234 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %233)
%235 = sitofp i32 %234 to float
store float %235, float* %21
%236 = load float, float* %22
%237 = fpext float %236 to double
%238 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %237)
%239 = sitofp i32 %238 to float
store float %239, float* %22
%240 = load float*, float** %7
%241 = getelementptr inbounds float, float* %240, i64 30
%242 = load float, float* %241
store float %242, float* %23
%243 = load float, float* %13
%244 = load float*, float** %7
%245 = getelementptr inbounds float, float* %244, i64 31
%246 = load float, float* %245
%247 = load float, float* %23
%248 = call float @llvm.fmuladd.f32(float %243, float %246, float %247)
store float %248, float* %23
%249 = load float, float* %14
%250 = load float*, float** %7
%251 = getelementptr inbounds float, float* %250, i64 32
%252 = load float, float* %251
%253 = load float, float* %23
%254 = call float @llvm.fmuladd.f32(float %249, float %252, float %253)
store float %254, float* %23
%255 = load float, float* %15
%256 = load float*, float** %7
%257 = getelementptr inbounds float, float* %256, i64 33
%258 = load float, float* %257
%259 = load float, float* %23
%260 = call float @llvm.fmuladd.f32(float %255, float %258, float %259)
store float %260, float* %23
%261 = load float, float* %16
%262 = load float*, float** %7
%263 = getelementptr inbounds float, float* %262, i64 34
%264 = load float, float* %263
%265 = load float, float* %23
%266 = call float @llvm.fmuladd.f32(float %261, float %264, float %265)
store float %266, float* %23
%267 = load float, float* %17
%268 = load float*, float** %7
%269 = getelementptr inbounds float, float* %268, i64 35
%270 = load float, float* %269
%271 = load float, float* %23
%272 = call float @llvm.fmuladd.f32(float %267, float %270, float %271)
store float %272, float* %23
%273 = load float, float* %18
%274 = load float*, float** %7
%275 = getelementptr inbounds float, float* %274, i64 36
%276 = load float, float* %275
%277 = load float, float* %23
%278 = call float @llvm.fmuladd.f32(float %273, float %276, float %277)
store float %278, float* %23
%279 = load float, float* %19
%280 = load float*, float** %7
%281 = getelementptr inbounds float, float* %280, i64 37
%282 = load float, float* %281
%283 = load float, float* %23
%284 = call float @llvm.fmuladd.f32(float %279, float %282, float %283)
store float %284, float* %23
%285 = load float, float* %20
%286 = load float*, float** %7
%287 = getelementptr inbounds float, float* %286, i64 38
%288 = load float, float* %287
%289 = load float, float* %23
%290 = call float @llvm.fmuladd.f32(float %285, float %288, float %289)
store float %290, float* %23
%291 = load float, float* %21
%292 = load float*, float** %7
%293 = getelementptr inbounds float, float* %292, i64 39
%294 = load float, float* %293
%295 = load float, float* %23
%296 = call float @llvm.fmuladd.f32(float %291, float %294, float %295)
store float %296, float* %23
%297 = load float, float* %22
%298 = load float*, float** %7
%299 = getelementptr inbounds float, float* %298, i64 40
%300 = load float, float* %299
%301 = load float, float* %23
%302 = call float @llvm.fmuladd.f32(float %297, float %300, float %301)
store float %302, float* %23
%303 = load float*, float** %7
%304 = getelementptr inbounds float, float* %303, i64 41
%305 = load float, float* %304
store float %305, float* %24
%306 = load float*, float** %7
%307 = getelementptr inbounds float, float* %306, i64 42
%308 = load float, float* %307
store float %308, float* %25
%309 = load float*, float** %7
%310 = getelementptr inbounds float, float* %309, i64 43
%311 = load float, float* %310
store float %311, float* %26
%312 = load float*, float** %7
%313 = getelementptr inbounds float, float* %312, i64 44
%314 = load float, float* %313
store float %314, float* %27
%315 = load float*, float** %7
%316 = getelementptr inbounds float, float* %315, i64 45
%317 = load float, float* %316
store float %317, float* %28
%318 = load float*, float** %7
%319 = getelementptr inbounds float, float* %318, i64 46
%320 = load float, float* %319
store float %320, float* %29
%321 = load float*, float** %7
%322 = getelementptr inbounds float, float* %321, i64 47
%323 = load float, float* %322
store float %323, float* %30
%324 = load float*, float** %7
%325 = getelementptr inbounds float, float* %324, i64 48
%326 = load float, float* %325
store float %326, float* %31
%327 = load float*, float** %7
%328 = getelementptr inbounds float, float* %327, i64 49
%329 = load float, float* %328
store float %329, float* %32
%330 = load float*, float** %7
%331 = getelementptr inbounds float, float* %330, i64 50
%332 = load float, float* %331
store float %332, float* %33
%333 = load float, float* %23
%334 = load float*, float** %7
%335 = getelementptr inbounds float, float* %334, i64 51
%336 = load float, float* %335
%337 = load float, float* %24
%338 = call float @llvm.fmuladd.f32(float %333, float %336, float %337)
store float %338, float* %24
%339 = load float, float* %23
%340 = load float*, float** %7
%341 = getelementptr inbounds float, float* %340, i64 52
%342 = load float, float* %341
%343 = load float, float* %25
%344 = call float @llvm.fmuladd.f32(float %339, float %342, float %343)
store float %344, float* %25
%345 = load float, float* %23
%346 = load float*, float** %7
%347 = getelementptr inbounds float, float* %346, i64 53
%348 = load float, float* %347
%349 = load float, float* %26
%350 = call float @llvm.fmuladd.f32(float %345, float %348, float %349)
store float %350, float* %26
%351 = load float, float* %23
%352 = load float*, float** %7
%353 = getelementptr inbounds float, float* %352, i64 54
%354 = load float, float* %353
%355 = load float, float* %27
%356 = call float @llvm.fmuladd.f32(float %351, float %354, float %355)
store float %356, float* %27
%357 = load float, float* %23
%358 = load float*, float** %7
%359 = getelementptr inbounds float, float* %358, i64 55
%360 = load float, float* %359
%361 = load float, float* %28
%362 = call float @llvm.fmuladd.f32(float %357, float %360, float %361)
store float %362, float* %28
%363 = load float, float* %23
%364 = load float*, float** %7
%365 = getelementptr inbounds float, float* %364, i64 56
%366 = load float, float* %365
%367 = load float, float* %29
%368 = call float @llvm.fmuladd.f32(float %363, float %366, float %367)
store float %368, float* %29
%369 = load float, float* %23
%370 = load float*, float** %7
%371 = getelementptr inbounds float, float* %370, i64 57
%372 = load float, float* %371
%373 = load float, float* %30
%374 = call float @llvm.fmuladd.f32(float %369, float %372, float %373)
store float %374, float* %30
%375 = load float, float* %23
%376 = load float*, float** %7
%377 = getelementptr inbounds float, float* %376, i64 58
%378 = load float, float* %377
%379 = load float, float* %31
%380 = call float @llvm.fmuladd.f32(float %375, float %378, float %379)
store float %380, float* %31
%381 = load float, float* %23
%382 = load float*, float** %7
%383 = getelementptr inbounds float, float* %382, i64 59
%384 = load float, float* %383
%385 = load float, float* %32
%386 = call float @llvm.fmuladd.f32(float %381, float %384, float %385)
store float %386, float* %32
%387 = load float, float* %23
%388 = load float*, float** %7
%389 = getelementptr inbounds float, float* %388, i64 60
%390 = load float, float* %389
%391 = load float, float* %33
%392 = call float @llvm.fmuladd.f32(float %387, float %390, float %391)
store float %392, float* %33
%393 = load float, float* %24
%394 = fpext float %393 to double
%395 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %394)
%396 = sitofp i32 %395 to float
store float %396, float* %24
%397 = load float, float* %25
%398 = fpext float %397 to double
%399 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %398)
%400 = sitofp i32 %399 to float
store float %400, float* %25
%401 = load float, float* %26
%402 = fpext float %401 to double
%403 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %402)
%404 = sitofp i32 %403 to float
store float %404, float* %26
%405 = load float, float* %27
%406 = fpext float %405 to double
%407 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %406)
%408 = sitofp i32 %407 to float
store float %408, float* %27
%409 = load float, float* %28
%410 = fpext float %409 to double
%411 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %410)
%412 = sitofp i32 %411 to float
store float %412, float* %28
%413 = load float, float* %29
%414 = fpext float %413 to double
%415 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %414)
%416 = sitofp i32 %415 to float
store float %416, float* %29
%417 = load float, float* %30
%418 = fpext float %417 to double
%419 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %418)
%420 = sitofp i32 %419 to float
store float %420, float* %30
%421 = load float, float* %31
%422 = fpext float %421 to double
%423 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %422)
%424 = sitofp i32 %423 to float
store float %424, float* %31
%425 = load float, float* %32
%426 = fpext float %425 to double
%427 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %426)
%428 = sitofp i32 %427 to float
store float %428, float* %32
%429 = load float, float* %33
%430 = fpext float %429 to double
%431 = call i32 (double, ...) bitcast (i32 (...)* @G to i32 (double, ...)*)(double %430)
%432 = sitofp i32 %431 to float
store float %432, float* %33
store float 0.000000e+00, float* %35
%433 = load float*, float** %7
%434 = getelementptr inbounds float, float* %433, i64 61
%435 = load float, float* %434
store float %435, float* %34
%436 = load float, float* %24
%437 = load float*, float** %7
%438 = getelementptr inbounds float, float* %437, i64 62
%439 = load float, float* %438
%440 = load float, float* %34
%441 = call float @llvm.fmuladd.f32(float %436, float %439, float %440)
store float %441, float* %34
%442 = load float, float* %25
%443 = load float*, float** %7
%444 = getelementptr inbounds float, float* %443, i64 63
%445 = load float, float* %444
%446 = load float, float* %34
%447 = call float @llvm.fmuladd.f32(float %442, float %445, float %446)
store float %447, float* %34
%448 = load float, float* %26
%449 = load float*, float** %7
%450 = getelementptr inbounds float, float* %449, i64 64
%451 = load float, float* %450
%452 = load float, float* %34
%453 = call float @llvm.fmuladd.f32(float %448, float %451, float %452)
store float %453, float* %34
%454 = load float, float* %27
%455 = load float*, float** %7
%456 = getelementptr inbounds float, float* %455, i64 65
%457 = load float, float* %456
%458 = load float, float* %34
%459 = call float @llvm.fmuladd.f32(float %454, float %457, float %458)
store float %459, float* %34
%460 = load float, float* %28
%461 = load float*, float** %7
%462 = getelementptr inbounds float, float* %461, i64 66
%463 = load float, float* %462
%464 = load float, float* %34
%465 = call float @llvm.fmuladd.f32(float %460, float %463, float %464)
store float %465, float* %34
%466 = load float, float* %29
%467 = load float*, float** %7
%468 = getelementptr inbounds float, float* %467, i64 67
%469 = load float, float* %468
%470 = load float, float* %34
%471 = call float @llvm.fmuladd.f32(float %466, float %469, float %470)
store float %471, float* %34
%472 = load float, float* %30
%473 = load float*, float** %7
%474 = getelementptr inbounds float, float* %473, i64 68
%475 = load float, float* %474
%476 = load float, float* %34
%477 = call float @llvm.fmuladd.f32(float %472, float %475, float %476)
store float %477, float* %34
%478 = load float, float* %31
%479 = load float*, float** %7
%480 = getelementptr inbounds float, float* %479, i64 69
%481 = load float, float* %480
%482 = load float, float* %34
%483 = call float @llvm.fmuladd.f32(float %478, float %481, float %482)
store float %483, float* %34
%484 = load float, float* %32
%485 = load float*, float** %7
%486 = getelementptr inbounds float, float* %485, i64 70
%487 = load float, float* %486
%488 = load float, float* %34
%489 = call float @llvm.fmuladd.f32(float %484, float %487, float %488)
store float %489, float* %34
%490 = load float, float* %33
%491 = load float*, float** %7
%492 = getelementptr inbounds float, float* %491, i64 71
%493 = load float, float* %492
%494 = load float, float* %34
%495 = call float @llvm.fmuladd.f32(float %490, float %493, float %494)
store float %495, float* %34
%496 = load float, float* %11
%497 = load float, float* %34
%498 = fsub float %497, %496
store float %498, float* %34
%499 = load float, float* %34
%500 = load float, float* %34
%501 = load float, float* %35
%502 = call float @llvm.fmuladd.f32(float %499, float %500, float %501)
store float %502, float* %35
%503 = load float*, float** %7
%504 = getelementptr inbounds float, float* %503, i64 72
%505 = load float, float* %504
store float %505, float* %34
%506 = load float, float* %24
%507 = load float*, float** %7
%508 = getelementptr inbounds float, float* %507, i64 73
%509 = load float, float* %508
%510 = load float, float* %34
%511 = call float @llvm.fmuladd.f32(float %506, float %509, float %510)
store float %511, float* %34
%512 = load float, float* %25
%513 = load float*, float** %7
%514 = getelementptr inbounds float, float* %513, i64 74
%515 = load float, float* %514
%516 = load float, float* %34
%517 = call float @llvm.fmuladd.f32(float %512, float %515, float %516)
store float %517, float* %34
%518 = load float, float* %26
%519 = load float*, float** %7
%520 = getelementptr inbounds float, float* %519, i64 75
%521 = load float, float* %520
%522 = load float, float* %34
%523 = call float @llvm.fmuladd.f32(float %518, float %521, float %522)
store float %523, float* %34
%524 = load float, float* %27
%525 = load float*, float** %7
%526 = getelementptr inbounds float, float* %525, i64 76
%527 = load float, float* %526
%528 = load float, float* %34
%529 = call float @llvm.fmuladd.f32(float %524, float %527, float %528)
store float %529, float* %34
%530 = load float, float* %28
%531 = load float*, float** %7
%532 = getelementptr inbounds float, float* %531, i64 77
%533 = load float, float* %532
%534 = load float, float* %34
%535 = call float @llvm.fmuladd.f32(float %530, float %533, float %534)
store float %535, float* %34
%536 = load float, float* %29
%537 = load float*, float** %7
%538 = getelementptr inbounds float, float* %537, i64 78
%539 = load float, float* %538
%540 = load float, float* %34
%541 = call float @llvm.fmuladd.f32(float %536, float %539, float %540)
store float %541, float* %34
%542 = load float, float* %30
%543 = load float*, float** %7
%544 = getelementptr inbounds float, float* %543, i64 79
%545 = load float, float* %544
%546 = load float, float* %34
%547 = call float @llvm.fmuladd.f32(float %542, float %545, float %546)
store float %547, float* %34
%548 = load float, float* %31
%549 = load float*, float** %7
%550 = getelementptr inbounds float, float* %549, i64 80
%551 = load float, float* %550
%552 = load float, float* %34
%553 = call float @llvm.fmuladd.f32(float %548, float %551, float %552)
store float %553, float* %34
%554 = load float, float* %32
%555 = load float*, float** %7
%556 = getelementptr inbounds float, float* %555, i64 81
%557 = load float, float* %556
%558 = load float, float* %34
%559 = call float @llvm.fmuladd.f32(float %554, float %557, float %558)
store float %559, float* %34
%560 = load float, float* %33
%561 = load float*, float** %7
%562 = getelementptr inbounds float, float* %561, i64 82
%563 = load float, float* %562
%564 = load float, float* %34
%565 = call float @llvm.fmuladd.f32(float %560, float %563, float %564)
store float %565, float* %34
%566 = load float, float* %12
%567 = load float, float* %34
%568 = fsub float %567, %566
store float %568, float* %34
%569 = load float, float* %34
%570 = load float, float* %34
%571 = load float, float* %35
%572 = call float @llvm.fmuladd.f32(float %569, float %570, float %571)
store float %572, float* %35
%573 = load float, float* %35
ret float %573
}

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