#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 */
int /*<<< orphan*/ gint2_nai_cF_SP(double *, double, double *, double, double *,
                                   double *);
void gint2_nai_pF_SP(double *a, double a_a, double *b, double b_a, double *c,
                     double *out) {
  double tmp0, tmp1, tmp2, tmp3, tmp4, tmp5;
  gint2_nai_cF_SP(a, a_a, b, b_a, c, out);
  tmp0 = 1.09544511501033 * out[20] - 0.273861278752583 * out[12] -
         0.612372435695794 * out[0];
  tmp1 = out[36] - 0.670820393249937 * out[28] - 0.670820393249937 * out[8];
  tmp2 = 0.866025403784439 * out[8] - 0.866025403784439 * out[28];
  out[8] = 1.09544511501033 * out[32] - 0.273861278752583 * out[4] -
           0.612372435695794 * out[24];
  tmp3 = 1.09544511501033 * out[22] - 0.273861278752583 * out[14] -
         0.612372435695794 * out[2];
  tmp4 = 0.866025403784439 * out[10] - 0.866025403784439 * out[30];
  tmp5 = out[38] - 0.670820393249937 * out[10] - 0.670820393249937 * out[30];
  out[10] = 1.09544511501033 * out[34] - 0.273861278752583 * out[6] -
            0.612372435695794 * out[26];
  out[20] = 0.790569415042095 * out[0] - 1.06066017177982 * out[12];
  out[12] = tmp2;
  out[0] = tmp1;
  tmp2 = 1.09544511501033 * out[21] - 0.273861278752583 * out[13] -
         0.612372435695794 * out[1];
  out[21] = 0.790569415042095 * out[1] - 1.06066017177982 * out[13];
  out[1] = out[37] - 0.670820393249937 * out[29] - 0.670820393249937 * out[9];
  out[13] = 0.866025403784439 * out[9] - 0.866025403784439 * out[29];
  out[9] = 1.09544511501033 * out[33] - 0.273861278752583 * out[5] -
           0.612372435695794 * out[25];
  out[22] = 0.790569415042095 * out[2] - 1.06066017177982 * out[14];
  out[2] = tmp5;
  out[14] = tmp4;
  tmp1 = 1.09544511501033 * out[23] - 0.273861278752583 * out[15] -
         0.612372435695794 * out[3];
  out[23] = 0.790569415042095 * out[3] - 1.06066017177982 * out[15];
  out[3] = out[39] - 0.670820393249937 * out[11] - 0.670820393249937 * out[31];
  out[15] = 0.866025403784439 * out[11] - 0.866025403784439 * out[31];
  out[11] = 1.09544511501033 * out[35] - 0.273861278752583 * out[7] -
            0.612372435695794 * out[27];
  out[24] = 1.06066017177982 * out[4] - 0.790569415042095 * out[24];
  out[4] = tmp0;
  out[25] = 1.06066017177982 * out[5] - 0.790569415042095 * out[25];
  out[5] = tmp2;
  out[26] = 1.06066017177982 * out[6] - 0.790569415042095 * out[26];
  out[6] = tmp3;
  out[27] = 1.06066017177982 * out[7] - 0.790569415042095 * out[27];
  out[7] = tmp1;
}


x86 assembly (clang, -O0):
<gint2_nai_pF_SP>:
push   %rbp
mov    %rsp,%rbp
sub    $0x60,%rsp
mov    %rdi,-0x8(%rbp)
movsd  %xmm0,-0x10(%rbp)
mov    %rsi,-0x18(%rbp)
movsd  %xmm1,-0x20(%rbp)
mov    %rdx,-0x28(%rbp)
mov    %rcx,-0x30(%rbp)
mov    -0x8(%rbp),%rdi
movsd  -0x10(%rbp),%xmm0
mov    -0x18(%rbp),%rsi
movsd  -0x20(%rbp),%xmm1
mov    -0x28(%rbp),%rdx
mov    -0x30(%rbp),%rcx
call   1030 <gint2_nai_cF_SP@plt>
mov    -0x30(%rbp),%rax
movsd  0xa0(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0xeb7(%rip),%xmm0
mulsd  0x60(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0xe8b(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0xe6b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x38(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x120(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xe0(%rax),%xmm1
movsd  0xe5e(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0x40(%rax),%xmm0
movsd  0xe45(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x40(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x40(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xe1b(%rip),%xmm1
mulsd  0xe0(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0xdf4(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x100(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0xdc7(%rip),%xmm0
mulsd  0x20(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0xd9b(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0xc0(%rax),%xmm0
movsd  0xd77(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x40(%rax)
mov    -0x30(%rbp),%rax
movsd  0xb0(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0xd5e(%rip),%xmm0
mulsd  0x70(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0xd32(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  0xd11(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x50(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xd07(%rip),%xmm1
mulsd  0xf0(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0xce0(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x130(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x50(%rax),%xmm1
movsd  0xcbe(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0xf0(%rax),%xmm0
movsd  0xca2(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x110(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0xc6d(%rip),%xmm0
mulsd  0x30(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0xc41(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0xd0(%rax),%xmm0
movsd  0xc1d(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x50(%rax)
mov    -0x30(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xbe8(%rip),%xmm1
mulsd  0x60(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0xbcc(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xa0(%rax)
movsd  -0x48(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x60(%rax)
movsd  -0x40(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x30(%rbp),%rax
movsd  0xa8(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0xb9d(%rip),%xmm0
mulsd  0x68(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0xb71(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0xb50(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x8(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xb1e(%rip),%xmm1
mulsd  0x68(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0xb02(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xa8(%rax)
mov    -0x30(%rbp),%rax
movsd  0x128(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xe8(%rax),%xmm1
movsd  0xaf6(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0x48(%rax),%xmm0
movsd  0xadd(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x8(%rax)
mov    -0x30(%rbp),%rax
movsd  0x48(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0xaaf(%rip),%xmm1
mulsd  0xe8(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0xa88(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x68(%rax)
mov    -0x30(%rbp),%rax
movsd  0x108(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0xa57(%rip),%xmm0
mulsd  0x28(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0xa2b(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0xc8(%rax),%xmm0
movsd  0xa07(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x48(%rax)
mov    -0x30(%rbp),%rax
movsd  0x10(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x9d1(%rip),%xmm1
mulsd  0x70(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x9b5(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xb0(%rax)
movsd  -0x60(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x10(%rax)
movsd  -0x58(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x70(%rax)
mov    -0x30(%rbp),%rax
movsd  0xb8(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0x985(%rip),%xmm0
mulsd  0x78(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0x959(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0x18(%rax),%xmm0
movsd  0x938(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x40(%rbp)
mov    -0x30(%rbp),%rax
movsd  0x18(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x906(%rip),%xmm1
mulsd  0x78(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x8ea(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xb8(%rax)
mov    -0x30(%rbp),%rax
movsd  0x138(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x58(%rax),%xmm1
movsd  0x8e1(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0xf8(%rax),%xmm0
movsd  0x8c5(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x18(%rax)
mov    -0x30(%rbp),%rax
movsd  0x58(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x897(%rip),%xmm1
mulsd  0xf8(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x870(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x78(%rax)
mov    -0x30(%rbp),%rax
movsd  0x118(%rax),%xmm1
mov    -0x30(%rbp),%rax
movsd  0x83f(%rip),%xmm0
mulsd  0x38(%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  0x813(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
mov    -0x30(%rbp),%rax
movsd  0xd8(%rax),%xmm0
movsd  0x7ef(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x58(%rax)
mov    -0x30(%rbp),%rax
movsd  0x20(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x7c1(%rip),%xmm1
mulsd  0xc0(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x792(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xc0(%rax)
movsd  -0x38(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x20(%rax)
mov    -0x30(%rbp),%rax
movsd  0x28(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x763(%rip),%xmm1
mulsd  0xc8(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x734(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xc8(%rax)
movsd  -0x48(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x28(%rax)
mov    -0x30(%rbp),%rax
movsd  0x30(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x705(%rip),%xmm1
mulsd  0xd0(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x6d6(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xd0(%rax)
movsd  -0x50(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x30(%rax)
mov    -0x30(%rbp),%rax
movsd  0x38(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x6a7(%rip),%xmm1
mulsd  0xd8(%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x678(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0xd8(%rax)
movsd  -0x40(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x38(%rax)
add    $0x60,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<gint2_nai_pF_SP>:
push   %rbx
mov    %rcx,%rbx
call   1030 <gint2_nai_cF_SP@plt>
movupd 0xe0(%rbx),%xmm4
movupd (%rbx),%xmm5
movupd 0x10(%rbx),%xmm1
movupd 0x20(%rbx),%xmm15
movupd 0x40(%rbx),%xmm14
movupd 0xf0(%rbx),%xmm9
movupd 0x50(%rbx),%xmm6
movupd 0x60(%rbx),%xmm13
movupd 0xa0(%rbx),%xmm0
movapd 0xea6(%rip),%xmm2
movapd %xmm13,%xmm3
mulpd  %xmm2,%xmm3
movapd 0xea4(%rip),%xmm8
mulpd  %xmm8,%xmm0
addpd  %xmm3,%xmm0
movapd 0xea3(%rip),%xmm3
movapd %xmm5,%xmm10
mulpd  %xmm3,%xmm10
addpd  %xmm0,%xmm10
mulpd  0xe9b(%rip),%xmm13
movapd 0xea2(%rip),%xmm12
mulpd  %xmm12,%xmm5
addpd  %xmm13,%xmm5
movupd %xmm5,0xa0(%rbx)
movupd 0x120(%rbx),%xmm13
movapd 0xe8f(%rip),%xmm5
movapd %xmm4,%xmm0
mulpd  %xmm5,%xmm0
addpd  %xmm13,%xmm0
movapd %xmm14,%xmm7
mulpd  %xmm5,%xmm7
addpd  %xmm0,%xmm7
movupd %xmm7,(%rbx)
movapd 0xe78(%rip),%xmm13
mulpd  %xmm13,%xmm4
movapd 0xe7a(%rip),%xmm11
mulpd  %xmm11,%xmm14
addpd  %xmm4,%xmm14
movupd %xmm14,0x60(%rbx)
movupd 0x100(%rbx),%xmm7
movapd %xmm15,%xmm4
mulpd  %xmm2,%xmm4
mulpd  %xmm8,%xmm7
addpd  %xmm4,%xmm7
movupd 0xc0(%rbx),%xmm14
movapd %xmm14,%xmm4
mulpd  %xmm3,%xmm4
addpd  %xmm7,%xmm4
movupd %xmm4,0x40(%rbx)
movupd 0x70(%rbx),%xmm4
movapd %xmm4,%xmm7
mulpd  %xmm2,%xmm7
movupd 0xb0(%rbx),%xmm0
mulpd  %xmm8,%xmm0
addpd  %xmm7,%xmm0
movapd %xmm1,%xmm7
mulpd  %xmm3,%xmm7
addpd  %xmm0,%xmm7
mulpd  0xdc3(%rip),%xmm4
mulpd  %xmm12,%xmm1
addpd  %xmm4,%xmm1
movupd %xmm1,0xb0(%rbx)
movupd 0x130(%rbx),%xmm0
movapd %xmm6,%xmm1
mulpd  %xmm5,%xmm1
addpd  %xmm0,%xmm1
mulpd  %xmm9,%xmm5
addpd  %xmm1,%xmm5
movupd %xmm5,0x10(%rbx)
mulpd  %xmm13,%xmm9
mulpd  %xmm11,%xmm6
addpd  %xmm9,%xmm6
movupd %xmm6,0x70(%rbx)
movupd 0x110(%rbx),%xmm0
mulpd  %xmm8,%xmm0
movupd 0x30(%rbx),%xmm1
mulpd  %xmm1,%xmm2
addpd  %xmm2,%xmm0
movupd 0xd0(%rbx),%xmm2
mulpd  %xmm2,%xmm3
addpd  %xmm0,%xmm3
movupd %xmm3,0x50(%rbx)
movapd 0xd95(%rip),%xmm0
mulpd  %xmm0,%xmm14
movapd 0xd98(%rip),%xmm3
mulpd  %xmm3,%xmm15
addpd  %xmm14,%xmm15
movupd %xmm15,0xc0(%rbx)
movupd %xmm10,0x20(%rbx)
mulpd  %xmm0,%xmm2
mulpd  %xmm3,%xmm1
addpd  %xmm2,%xmm1
movupd %xmm1,0xd0(%rbx)
movupd %xmm7,0x30(%rbx)
pop    %rbx
ret

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

LLVM IR (-O2):
define void @gint2_nai_pF_SP(double* %0, double %1, double* %2, double %3, double* %4, double* %5) {
%7 = tail call i32 @gint2_nai_cF_SP(double* %0, double %1, double* %2, double %3, double* %4, double* %5)
%8 = getelementptr inbounds double, double* %5, i64 20
%9 = getelementptr inbounds double, double* %5, i64 12
%10 = getelementptr inbounds double, double* %5, i64 36
%11 = getelementptr inbounds double, double* %5, i64 28
%12 = getelementptr inbounds double, double* %5, i64 8
%13 = bitcast double* %11 to <2 x double>*
%14 = load <2 x double>, <2 x double>* %13
%15 = bitcast double* %12 to <2 x double>*
%16 = load <2 x double>, <2 x double>* %15
%17 = getelementptr inbounds double, double* %5, i64 32
%18 = getelementptr inbounds double, double* %5, i64 4
%19 = getelementptr inbounds double, double* %5, i64 24
%20 = getelementptr inbounds double, double* %5, i64 22
%21 = getelementptr inbounds double, double* %5, i64 14
%22 = getelementptr inbounds double, double* %5, i64 2
%23 = getelementptr inbounds double, double* %5, i64 10
%24 = getelementptr inbounds double, double* %5, i64 30
%25 = bitcast double* %24 to <2 x double>*
%26 = load <2 x double>, <2 x double>* %25
%27 = bitcast double* %23 to <2 x double>*
%28 = load <2 x double>, <2 x double>* %27
%29 = getelementptr inbounds double, double* %5, i64 38
%30 = getelementptr inbounds double, double* %5, i64 34
%31 = getelementptr inbounds double, double* %5, i64 6
%32 = getelementptr inbounds double, double* %5, i64 26
%33 = bitcast double* %9 to <2 x double>*
%34 = load <2 x double>, <2 x double>* %33
%35 = bitcast double* %5 to <2 x double>*
%36 = load <2 x double>, <2 x double>* %35
%37 = bitcast double* %8 to <2 x double>*
%38 = load <2 x double>, <2 x double>* %37
%39 = fmul <2 x double> %34, <double 0xBFD186F174F88471, double 0xBFD186F174F88471>
%40 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %38, <2 x double> <double 0x3FF186F174F88468, double 0x3FF186F174F88468>, <2 x double> %39)
%41 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %36, <2 x double> <double 0xBFE3988E1409212A, double 0xBFE3988E1409212A>, <2 x double> %40)
%42 = fmul <2 x double> %34, <double 0xBFF0F876CCDF6CD4, double 0xBFF0F876CCDF6CD4>
%43 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %36, <2 x double> <double 0x3FE94C583ADA5B54, double 0x3FE94C583ADA5B54>, <2 x double> %42)
%44 = bitcast double* %8 to <2 x double>*
store <2 x double> %43, <2 x double>* %44
%45 = bitcast double* %10 to <2 x double>*
%46 = load <2 x double>, <2 x double>* %45
%47 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %14, <2 x double> <double 0xBFE5775C544FF264, double 0xBFE5775C544FF264>, <2 x double> %46)
%48 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %16, <2 x double> <double 0xBFE5775C544FF264, double 0xBFE5775C544FF264>, <2 x double> %47)
%49 = bitcast double* %5 to <2 x double>*
store <2 x double> %48, <2 x double>* %49
%50 = fmul <2 x double> %14, <double 0xBFEBB67AE8584CAE, double 0xBFEBB67AE8584CAE>
%51 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %16, <2 x double> <double 0x3FEBB67AE8584CAE, double 0x3FEBB67AE8584CAE>, <2 x double> %50)
%52 = bitcast double* %9 to <2 x double>*
store <2 x double> %51, <2 x double>* %52
%53 = bitcast double* %17 to <2 x double>*
%54 = load <2 x double>, <2 x double>* %53
%55 = bitcast double* %18 to <2 x double>*
%56 = load <2 x double>, <2 x double>* %55
%57 = fmul <2 x double> %56, <double 0xBFD186F174F88471, double 0xBFD186F174F88471>
%58 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %54, <2 x double> <double 0x3FF186F174F88468, double 0x3FF186F174F88468>, <2 x double> %57)
%59 = bitcast double* %19 to <2 x double>*
%60 = load <2 x double>, <2 x double>* %59
%61 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %60, <2 x double> <double 0xBFE3988E1409212A, double 0xBFE3988E1409212A>, <2 x double> %58)
%62 = bitcast double* %12 to <2 x double>*
store <2 x double> %61, <2 x double>* %62
%63 = bitcast double* %21 to <2 x double>*
%64 = load <2 x double>, <2 x double>* %63
%65 = bitcast double* %22 to <2 x double>*
%66 = load <2 x double>, <2 x double>* %65
%67 = bitcast double* %20 to <2 x double>*
%68 = load <2 x double>, <2 x double>* %67
%69 = fmul <2 x double> %64, <double 0xBFD186F174F88471, double 0xBFD186F174F88471>
%70 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %68, <2 x double> <double 0x3FF186F174F88468, double 0x3FF186F174F88468>, <2 x double> %69)
%71 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %66, <2 x double> <double 0xBFE3988E1409212A, double 0xBFE3988E1409212A>, <2 x double> %70)
%72 = fmul <2 x double> %64, <double 0xBFF0F876CCDF6CD4, double 0xBFF0F876CCDF6CD4>
%73 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %66, <2 x double> <double 0x3FE94C583ADA5B54, double 0x3FE94C583ADA5B54>, <2 x double> %72)
%74 = bitcast double* %20 to <2 x double>*
store <2 x double> %73, <2 x double>* %74
%75 = bitcast double* %29 to <2 x double>*
%76 = load <2 x double>, <2 x double>* %75
%77 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %28, <2 x double> <double 0xBFE5775C544FF264, double 0xBFE5775C544FF264>, <2 x double> %76)
%78 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %26, <2 x double> <double 0xBFE5775C544FF264, double 0xBFE5775C544FF264>, <2 x double> %77)
%79 = bitcast double* %22 to <2 x double>*
store <2 x double> %78, <2 x double>* %79
%80 = fmul <2 x double> %26, <double 0xBFEBB67AE8584CAE, double 0xBFEBB67AE8584CAE>
%81 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %28, <2 x double> <double 0x3FEBB67AE8584CAE, double 0x3FEBB67AE8584CAE>, <2 x double> %80)
%82 = bitcast double* %21 to <2 x double>*
store <2 x double> %81, <2 x double>* %82
%83 = bitcast double* %30 to <2 x double>*
%84 = load <2 x double>, <2 x double>* %83
%85 = bitcast double* %31 to <2 x double>*
%86 = load <2 x double>, <2 x double>* %85
%87 = fmul <2 x double> %86, <double 0xBFD186F174F88471, double 0xBFD186F174F88471>
%88 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %84, <2 x double> <double 0x3FF186F174F88468, double 0x3FF186F174F88468>, <2 x double> %87)
%89 = bitcast double* %32 to <2 x double>*
%90 = load <2 x double>, <2 x double>* %89
%91 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %90, <2 x double> <double 0xBFE3988E1409212A, double 0xBFE3988E1409212A>, <2 x double> %88)
%92 = bitcast double* %23 to <2 x double>*
store <2 x double> %91, <2 x double>* %92
%93 = fmul <2 x double> %60, <double 0xBFE94C583ADA5B54, double 0xBFE94C583ADA5B54>
%94 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %56, <2 x double> <double 0x3FF0F876CCDF6CD4, double 0x3FF0F876CCDF6CD4>, <2 x double> %93)
%95 = bitcast double* %19 to <2 x double>*
store <2 x double> %94, <2 x double>* %95
%96 = bitcast double* %18 to <2 x double>*
store <2 x double> %41, <2 x double>* %96
%97 = fmul <2 x double> %90, <double 0xBFE94C583ADA5B54, double 0xBFE94C583ADA5B54>
%98 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %86, <2 x double> <double 0x3FF0F876CCDF6CD4, double 0x3FF0F876CCDF6CD4>, <2 x double> %97)
%99 = bitcast double* %32 to <2 x double>*
store <2 x double> %98, <2 x double>* %99
%100 = bitcast double* %31 to <2 x double>*
store <2 x double> %71, <2 x double>* %100
ret void
}