#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*/ d2SarTriangle3D(double *, double *, double *, double *,
                                   double *, double *, double const, double *,
                                   double *, double *, double const);
int /*<<< orphan*/ d2SvolTetra3D(double *, double *, double *, double *,
                                 double *, double *, double *, double *,
                                 double const, double *, double *, double *,
                                 double *, double, double const);
void d2S3D(double *prod, const double *yc, const double *x, const double *ARef,
           const double *VRef, const double *alpha, const double *h,
           const double *m, int n) {
  const int m1 = m[0], m2 = m[1], m3 = m[2];
  double yA[3], yB[3], yC[3], yD[3], yE[3], yF[3], yG[3], yH[3], yABDC[3],
      yBDHF[3], yABFE[3], yCAEG[3], yDCGH[3], yEFHG[3], yM[3];
  double xA[3], xB[3], xC[3], xD[3], xE[3], xF[3], xG[3], xH[3], xABDC[3],
      xBDHF[3], xABFE[3], xCAEG[3], xDCGH[3], xEFHG[3], xM[3];
  double rA[3], rB[3], rC[3], rD[3], rE[3], rF[3], rG[3], rH[3], rABDC[3],
      rBDHF[3], rABFE[3], rCAEG[3], rDCGH[3], rEFHG[3], rM[3];
  int id, i1, i2, i3, r, comp, idn;
  const double hd = h[0] * h[1] * h[2];
  const double alphaLength = alpha[0] * hd;
  const double alphaArea = alpha[1] * hd;
  const double alphaVolume = alpha[2] * hd;
  const int nn = (m1 + 1) * (m2 + 1) * (m3 + 1);
  const int inc_x = 1;
  const int inc_y = m1 + 1;
  const int inc_z = (m1 + 1) * (m2 + 1);
  const double *rptr;
  double *wptr;
#pragma omp parallel for default(shared) private(                              \
    rptr, wptr, id, i1, i2, i3, r, comp, idn, yA, yB, yC, yD, yE, yF, yG, yH,  \
    yABDC, yBDHF, yABFE, yCAEG, yDCGH, yEFHG, yM, rA, rB, rC, rD, rE, rF, rG,  \
    rH, rABDC, rBDHF, rABFE, rCAEG, rDCGH, rEFHG, rM, xA, xB, xC, xD, xE, xF,  \
    xG, xH, xABDC, xBDHF, xABFE, xCAEG, xDCGH, xEFHG, xM)
  for (i1 = 0; i1 < m1; i1++) {
    for (i2 = 0; i2 < m2; i2++) {
      for (i3 = 0; i3 < m3; i3++) {
        idn = i1 + i2 * inc_y + i3 * inc_z;
        comp = 0;
        for (r = 0; r < 3; r++) {
          rptr = yc + idn + comp;
          yA[r] = *rptr;
          rptr += inc_x;
          yB[r] = *rptr;
          rptr += inc_y;
          yD[r] = *rptr;
          rptr -= inc_x;
          yC[r] = *rptr;
          rptr += inc_z;
          yG[r] = *rptr;
          rptr += inc_x;
          yH[r] = *rptr;
          rptr -= inc_y;
          yF[r] = *rptr;
          rptr -= inc_x;
          yE[r] = *rptr;
          yABDC[r] = 0.25 * (yA[r] + yB[r] + yD[r] + yC[r]);
          yBDHF[r] = 0.25 * (yB[r] + yD[r] + yH[r] + yF[r]);
          yABFE[r] = 0.25 * (yA[r] + yB[r] + yF[r] + yE[r]);
          yCAEG[r] = 0.25 * (yC[r] + yA[r] + yE[r] + yG[r]);
          yDCGH[r] = 0.25 * (yD[r] + yC[r] + yG[r] + yH[r]);
          yEFHG[r] = 0.25 * (yE[r] + yF[r] + yH[r] + yG[r]);
          yM[r] = 0.5 * (yABDC[r] + yEFHG[r]);
          rptr = x + idn + comp;
          xA[r] = *rptr;
          rptr += inc_x;
          xB[r] = *rptr;
          rptr += inc_y;
          xD[r] = *rptr;
          rptr -= inc_x;
          xC[r] = *rptr;
          rptr += inc_z;
          xG[r] = *rptr;
          rptr += inc_x;
          xH[r] = *rptr;
          rptr -= inc_y;
          xF[r] = *rptr;
          rptr -= inc_x;
          xE[r] = *rptr;
          xABDC[r] = 0.25 * (xA[r] + xB[r] + xD[r] + xC[r]);
          xBDHF[r] = 0.25 * (xB[r] + xD[r] + xH[r] + xF[r]);
          xABFE[r] = 0.25 * (xA[r] + xB[r] + xF[r] + xE[r]);
          xCAEG[r] = 0.25 * (xC[r] + xA[r] + xE[r] + xG[r]);
          xDCGH[r] = 0.25 * (xD[r] + xC[r] + xG[r] + xH[r]);
          xEFHG[r] = 0.25 * (xE[r] + xF[r] + xH[r] + xG[r]);
          xM[r] = 0.5 * (xABDC[r] + xEFHG[r]);
          comp += nn;
          rA[r] = 0.0;
          rB[r] = 0.0;
          rC[r] = 0.0;
          rD[r] = 0.0;
          rE[r] = 0.0;
          rF[r] = 0.0;
          rG[r] = 0.0;
          rH[r] = 0.0;
          rABDC[r] = 0.0;
          rBDHF[r] = 0.0;
          rABFE[r] = 0.0;
          rCAEG[r] = 0.0;
          rDCGH[r] = 0.0;
          rEFHG[r] = 0.0;
          rM[r] = 0.0;
        }
        if (alphaArea > 0) {
          d2SarTriangle3D(yA, yB, yABDC, xA, xB, xABDC, ARef[0], rA, rB, rABDC,
                          alphaArea);
          d2SarTriangle3D(yB, yD, yABDC, xB, xD, xABDC, ARef[1], rB, rD, rABDC,
                          alphaArea);
          d2SarTriangle3D(yD, yC, yABDC, xD, xC, xABDC, ARef[2], rD, rC, rABDC,
                          alphaArea);
          d2SarTriangle3D(yC, yA, yABDC, xC, xA, xABDC, ARef[3], rC, rA, rABDC,
                          alphaArea);
          d2SarTriangle3D(yB, yD, yBDHF, xB, xD, xBDHF, ARef[4], rB, rD, rBDHF,
                          alphaArea);
          d2SarTriangle3D(yD, yH, yBDHF, xD, xH, xBDHF, ARef[5], rD, rH, rBDHF,
                          alphaArea);
          d2SarTriangle3D(yH, yF, yBDHF, xH, xF, xBDHF, ARef[6], rH, rF, rBDHF,
                          alphaArea);
          d2SarTriangle3D(yF, yB, yBDHF, xF, xB, xBDHF, ARef[7], rF, rB, rBDHF,
                          alphaArea);
          d2SarTriangle3D(yA, yB, yABFE, xA, xB, xABFE, ARef[8], rA, rB, rABFE,
                          alphaArea);
          d2SarTriangle3D(yB, yF, yABFE, xB, xF, xABFE, ARef[9], rB, rF, rABFE,
                          alphaArea);
          d2SarTriangle3D(yF, yE, yABFE, xF, xE, xABFE, ARef[10], rF, rE, rABFE,
                          alphaArea);
          d2SarTriangle3D(yE, yA, yABFE, xE, xA, xABFE, ARef[11], rE, rA, rABFE,
                          alphaArea);
          d2SarTriangle3D(yC, yA, yCAEG, xC, xA, xCAEG, ARef[12], rC, rA, rCAEG,
                          alphaArea);
          d2SarTriangle3D(yA, yE, yCAEG, xA, xE, xCAEG, ARef[13], rA, rE, rCAEG,
                          alphaArea);
          d2SarTriangle3D(yE, yG, yCAEG, xE, xG, xCAEG, ARef[14], rE, rG, rCAEG,
                          alphaArea);
          d2SarTriangle3D(yG, yC, yCAEG, xG, xC, xCAEG, ARef[15], rG, rC, rCAEG,
                          alphaArea);
          d2SarTriangle3D(yD, yC, yDCGH, xD, xC, xDCGH, ARef[16], rD, rC, rDCGH,
                          alphaArea);
          d2SarTriangle3D(yC, yG, yDCGH, xC, xG, xDCGH, ARef[17], rC, rG, rDCGH,
                          alphaArea);
          d2SarTriangle3D(yG, yH, yDCGH, xG, xH, xDCGH, ARef[18], rG, rH, rDCGH,
                          alphaArea);
          d2SarTriangle3D(yH, yD, yDCGH, xH, xD, xDCGH, ARef[19], rH, rD, rDCGH,
                          alphaArea);
          d2SarTriangle3D(yE, yF, yEFHG, xE, xF, xEFHG, ARef[20], rE, rF, rEFHG,
                          alphaArea);
          d2SarTriangle3D(yF, yH, yEFHG, xF, xH, xEFHG, ARef[21], rF, rH, rEFHG,
                          alphaArea);
          d2SarTriangle3D(yH, yG, yEFHG, xH, xG, xEFHG, ARef[22], rH, rG, rEFHG,
                          alphaArea);
          d2SarTriangle3D(yG, yE, yEFHG, xG, xE, xEFHG, ARef[23], rG, rE, rEFHG,
                          alphaArea);
        }
        if (alphaVolume > 0) {
          d2SvolTetra3D(yA, yB, yABDC, yM, xA, xB, xABDC, xM, VRef[0], rA, rB,
                        rABDC, rM, -1.0, alphaVolume);
          d2SvolTetra3D(yB, yD, yABDC, yM, xB, xD, xABDC, xM, VRef[1], rB, rD,
                        rABDC, rM, -1.0, alphaVolume);
          d2SvolTetra3D(yD, yC, yABDC, yM, xD, xC, xABDC, xM, VRef[2], rD, rC,
                        rABDC, rM, -1.0, alphaVolume);
          d2SvolTetra3D(yC, yA, yABDC, yM, xC, xA, xABDC, xM, VRef[3], rC, rA,
                        rABDC, rM, -1.0, alphaVolume);
          d2SvolTetra3D(yB, yD, yBDHF, yM, xB, xD, xBDHF, xM, VRef[4], rB, rD,
                        rBDHF, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yD, yH, yBDHF, yM, xD, xH, xBDHF, xM, VRef[5], rD, rH,
                        rBDHF, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yH, yF, yBDHF, yM, xH, xF, xBDHF, xM, VRef[6], rH, rF,
                        rBDHF, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yF, yB, yBDHF, yM, xF, xB, xBDHF, xM, VRef[7], rF, rB,
                        rBDHF, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yA, yB, yABFE, yM, xA, xB, xABFE, xM, VRef[8], rA, rB,
                        rABFE, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yB, yF, yABFE, yM, xB, xF, xABFE, xM, VRef[9], rB, rF,
                        rABFE, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yF, yE, yABFE, yM, xF, xE, xABFE, xM, VRef[10], rF, rE,
                        rABFE, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yE, yA, yABFE, yM, xE, xA, xABFE, xM, VRef[11], rE, rA,
                        rABFE, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yC, yA, yCAEG, yM, xC, xA, xCAEG, xM, VRef[12], rC, rA,
                        rCAEG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yA, yE, yCAEG, yM, xA, xE, xCAEG, xM, VRef[13], rA, rE,
                        rCAEG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yE, yG, yCAEG, yM, xE, xG, xCAEG, xM, VRef[14], rE, rG,
                        rCAEG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yG, yC, yCAEG, yM, xG, xC, xCAEG, xM, VRef[15], rG, rC,
                        rCAEG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yD, yC, yDCGH, yM, xD, xC, xDCGH, xM, VRef[16], rD, rC,
                        rDCGH, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yC, yG, yDCGH, yM, xC, xG, xDCGH, xM, VRef[17], rC, rG,
                        rDCGH, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yG, yH, yDCGH, yM, xG, xH, xDCGH, xM, VRef[18], rG, rH,
                        rDCGH, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yH, yD, yDCGH, yM, xH, xD, xDCGH, xM, VRef[19], rH, rD,
                        rDCGH, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yE, yF, yEFHG, yM, xE, xF, xEFHG, xM, VRef[20], rE, rF,
                        rEFHG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yF, yH, yEFHG, yM, xF, xH, xEFHG, xM, VRef[21], rF, rH,
                        rEFHG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yH, yG, yEFHG, yM, xH, xG, xEFHG, xM, VRef[22], rH, rG,
                        rEFHG, rM, 1.0, alphaVolume);
          d2SvolTetra3D(yG, yE, yEFHG, yM, xG, xE, xEFHG, xM, VRef[23], rG, rE,
                        rEFHG, rM, 1.0, alphaVolume);
        }
        comp = 0;
        for (r = 0; r < 3; r++) {
          rABDC[r] *= 0.25;
          rBDHF[r] *= 0.25;
          rABFE[r] *= 0.25;
          rCAEG[r] *= 0.25;
          rDCGH[r] *= 0.25;
          rEFHG[r] *= 0.25;
          rM[r] *= 0.125;
          wptr = prod + idn + comp;
#pragma omp atomic
          *wptr += rA[r] + rABDC[r] + rABFE[r] + rCAEG[r] + rM[r];
          wptr += inc_x;
#pragma omp atomic
          *wptr += rB[r] + rABDC[r] + rBDHF[r] + rABFE[r] + rM[r];
          wptr += inc_y;
#pragma omp atomic
          *wptr += rD[r] + rABDC[r] + rBDHF[r] + rDCGH[r] + rM[r];
          wptr -= inc_x;
#pragma omp atomic
          *wptr += rC[r] + rABDC[r] + rCAEG[r] + rDCGH[r] + rM[r];
          wptr += inc_z;
#pragma omp atomic
          *wptr += rG[r] + rCAEG[r] + rDCGH[r] + rEFHG[r] + rM[r];
          wptr += inc_x;
#pragma omp atomic
          *wptr += rH[r] + rBDHF[r] + rDCGH[r] + rEFHG[r] + rM[r];
          wptr -= inc_y;
#pragma omp atomic
          *wptr += rF[r] + rBDHF[r] + rABFE[r] + rEFHG[r] + rM[r];
          wptr -= inc_x;
#pragma omp atomic
          *wptr += rE[r] + rABFE[r] + rCAEG[r] + rEFHG[r] + rM[r];
          comp += nn;
        }
      }
    }
  }
}


x86 assembly (clang, -O0):
<d2S3D>:
push   %rbp
mov    %rsp,%rbp
push   %r15
push   %r14
push   %rbx
sub    $0x668,%rsp
mov    0x20(%rbp),%eax
mov    0x18(%rbp),%rax
mov    0x10(%rbp),%rax
mov    %rdi,-0x20(%rbp)
mov    %rsi,-0x28(%rbp)
mov    %rdx,-0x30(%rbp)
mov    %rcx,-0x38(%rbp)
mov    %r8,-0x40(%rbp)
mov    %r9,-0x48(%rbp)
mov    0x18(%rbp),%rax
cvttsd2si (%rax),%eax
mov    %eax,-0x4c(%rbp)
mov    0x18(%rbp),%rax
cvttsd2si 0x8(%rax),%eax
mov    %eax,-0x50(%rbp)
mov    0x18(%rbp),%rax
cvttsd2si 0x10(%rax),%eax
mov    %eax,-0x54(%rbp)
mov    0x10(%rbp),%rax
movsd  (%rax),%xmm0
mov    0x10(%rbp),%rax
mulsd  0x8(%rax),%xmm0
mov    0x10(%rbp),%rax
mulsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x618(%rbp)
ff
mov    -0x48(%rbp),%rax
movsd  (%rax),%xmm0
mulsd  -0x618(%rbp),%xmm0
ff
movsd  %xmm0,-0x620(%rbp)
ff
mov    -0x48(%rbp),%rax
movsd  0x8(%rax),%xmm0
mulsd  -0x618(%rbp),%xmm0
ff
movsd  %xmm0,-0x628(%rbp)
ff
mov    -0x48(%rbp),%rax
movsd  0x10(%rax),%xmm0
mulsd  -0x618(%rbp),%xmm0
ff
movsd  %xmm0,-0x630(%rbp)
ff
mov    -0x4c(%rbp),%eax
add    $0x1,%eax
mov    -0x50(%rbp),%ecx
add    $0x1,%ecx
imul   %ecx,%eax
mov    -0x54(%rbp),%ecx
add    $0x1,%ecx
imul   %ecx,%eax
mov    %eax,-0x634(%rbp)
movl   $0x1,-0x638(%rbp)
mov    -0x4c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x63c(%rbp)
mov    -0x4c(%rbp),%eax
add    $0x1,%eax
mov    -0x50(%rbp),%ecx
add    $0x1,%ecx
imul   %ecx,%eax
mov    %eax,-0x640(%rbp)
movl   $0x0,-0x5f8(%rbp)
mov    -0x5f8(%rbp),%eax
cmp    -0x4c(%rbp),%eax
jge    382f <d2S3D+0x270f>
movl   $0x0,-0x5fc(%rbp)
mov    -0x5fc(%rbp),%eax
cmp    -0x50(%rbp),%eax
jge    3816 <d2S3D+0x26f6>
movl   $0x0,-0x600(%rbp)
mov    -0x600(%rbp),%eax
cmp    -0x54(%rbp),%eax
jge    37fd <d2S3D+0x26dd>
mov    -0x5f8(%rbp),%eax
mov    -0x5fc(%rbp),%ecx
imul   -0x63c(%rbp),%ecx
add    %ecx,%eax
mov    -0x600(%rbp),%ecx
imul   -0x640(%rbp),%ecx
add    %ecx,%eax
mov    %eax,-0x60c(%rbp)
movl   $0x0,-0x608(%rbp)
movl   $0x0,-0x604(%rbp)
cmpl   $0x3,-0x604(%rbp)
jge    1c0c <d2S3D+0xaec>
mov    -0x28(%rbp),%rax
movslq -0x60c(%rbp),%rcx
shl    $0x3,%rcx
add    %rcx,%rax
movslq -0x608(%rbp),%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x70(%rbp,%rax,8)
mov    -0x648(%rbp),%rax
add    $0x8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x90(%rbp,%rax,8)
ff ff
mov    -0x63c(%rbp),%ecx
mov    -0x648(%rbp),%rax
movslq %ecx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0xd0(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0xfffffffffffffff8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0xb0(%rbp,%rax,8)
ff ff
mov    -0x640(%rbp),%ecx
mov    -0x648(%rbp),%rax
movslq %ecx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x130(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0x8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x150(%rbp,%rax,8)
ff ff
mov    -0x63c(%rbp),%ecx
mov    -0x648(%rbp),%rax
movslq %ecx,%rdx
xor    %ecx,%ecx
sub    %rdx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x110(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0xfffffffffffffff8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0xf0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x70(%rbp,%rax,8),%xmm1
movslq -0x604(%rbp),%rax
addsd  -0x90(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0xd0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0xb0(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2b6f(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x170(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x90(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0xd0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x150(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x110(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2b13(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x190(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x70(%rbp,%rax,8),%xmm1
movslq -0x604(%rbp),%rax
addsd  -0x90(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x110(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0xf0(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2aba(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x1b0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0xb0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x70(%rbp,%rax,8),%xmm1
movslq -0x604(%rbp),%rax
addsd  -0xf0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x130(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2a61(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x1d0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0xd0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0xb0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x130(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x150(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2a05(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x1f0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0xf0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x110(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x150(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x130(%rbp,%rax,8),%xmm1
ff ff
movsd  0x29a9(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x210(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x170(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x210(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2975(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x230(%rbp,%rax,8)
ff ff
mov    -0x30(%rbp),%rax
movslq -0x60c(%rbp),%rcx
shl    $0x3,%rcx
add    %rcx,%rax
movslq -0x608(%rbp),%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x250(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0x8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x270(%rbp,%rax,8)
ff ff
mov    -0x63c(%rbp),%ecx
mov    -0x648(%rbp),%rax
movslq %ecx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x2b0(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0xfffffffffffffff8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x290(%rbp,%rax,8)
ff ff
mov    -0x640(%rbp),%ecx
mov    -0x648(%rbp),%rax
movslq %ecx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x310(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0x8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x330(%rbp,%rax,8)
ff ff
mov    -0x63c(%rbp),%ecx
mov    -0x648(%rbp),%rax
movslq %ecx,%rdx
xor    %ecx,%ecx
sub    %rdx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x2f0(%rbp,%rax,8)
ff ff
mov    -0x648(%rbp),%rax
add    $0xfffffffffffffff8,%rax
mov    %rax,-0x648(%rbp)
mov    -0x648(%rbp),%rax
movsd  (%rax),%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x2d0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x250(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x270(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2b0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x290(%rbp,%rax,8),%xmm1
ff ff
movsd  0x276b(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x350(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x270(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2b0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x330(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2f0(%rbp,%rax,8),%xmm1
ff ff
movsd  0x270f(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x370(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x250(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x270(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2f0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2d0(%rbp,%rax,8),%xmm1
ff ff
movsd  0x26b3(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x390(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x290(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x250(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2d0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x310(%rbp,%rax,8),%xmm1
ff ff
movsd  0x2657(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x3b0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x2b0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x290(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x310(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x330(%rbp,%rax,8),%xmm1
ff ff
movsd  0x25fb(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x3d0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x2d0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x2f0(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x330(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x310(%rbp,%rax,8),%xmm1
ff ff
movsd  0x259f(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x3f0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  -0x350(%rbp,%rax,8),%xmm1
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x3f0(%rbp,%rax,8),%xmm1
ff ff
movsd  0x256b(%rip),%xmm0
mulsd  %xmm1,%xmm0
movslq -0x604(%rbp),%rax
movsd  %xmm0,-0x410(%rbp,%rax,8)
ff ff
mov    -0x634(%rbp),%eax
add    -0x608(%rbp),%eax
mov    %eax,-0x608(%rbp)
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x430(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x450(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x470(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x490(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x4b0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x4d0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x4f0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x510(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x530(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x550(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x570(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x590(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x5b0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x5d0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x5f0(%rbp,%rax,8)
ff ff
mov    -0x604(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x604(%rbp)
jmp    12b4 <d2S3D+0x194>
movsd  -0x628(%rbp),%xmm0
ff
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jbe    256e <d2S3D+0x144e>
lea    -0x70(%rbp),%rdi
lea    -0x90(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x250(%rbp),%rcx
lea    -0x270(%rbp),%r8
lea    -0x350(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  (%rax),%xmm0
lea    -0x430(%rbp),%r11
lea    -0x450(%rbp),%r10
lea    -0x530(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x90(%rbp),%rdi
lea    -0xd0(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x270(%rbp),%rcx
lea    -0x2b0(%rbp),%r8
lea    -0x350(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x8(%rax),%xmm0
lea    -0x450(%rbp),%r11
lea    -0x490(%rbp),%r10
lea    -0x530(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xd0(%rbp),%rdi
lea    -0xb0(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x2b0(%rbp),%rcx
lea    -0x290(%rbp),%r8
lea    -0x350(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x10(%rax),%xmm0
lea    -0x490(%rbp),%r11
lea    -0x470(%rbp),%r10
lea    -0x530(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xb0(%rbp),%rdi
lea    -0x70(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x290(%rbp),%rcx
lea    -0x250(%rbp),%r8
lea    -0x350(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x18(%rax),%xmm0
lea    -0x470(%rbp),%r11
lea    -0x430(%rbp),%r10
lea    -0x530(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x90(%rbp),%rdi
lea    -0xd0(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x270(%rbp),%rcx
lea    -0x2b0(%rbp),%r8
lea    -0x370(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x20(%rax),%xmm0
lea    -0x450(%rbp),%r11
lea    -0x490(%rbp),%r10
lea    -0x550(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xd0(%rbp),%rdi
lea    -0x150(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x2b0(%rbp),%rcx
lea    -0x330(%rbp),%r8
lea    -0x370(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x28(%rax),%xmm0
lea    -0x490(%rbp),%r11
lea    -0x510(%rbp),%r10
lea    -0x550(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x150(%rbp),%rdi
lea    -0x110(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x330(%rbp),%rcx
lea    -0x2f0(%rbp),%r8
lea    -0x370(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x30(%rax),%xmm0
lea    -0x510(%rbp),%r11
lea    -0x4d0(%rbp),%r10
lea    -0x550(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x110(%rbp),%rdi
lea    -0x90(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x2f0(%rbp),%rcx
lea    -0x270(%rbp),%r8
lea    -0x370(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x38(%rax),%xmm0
lea    -0x4d0(%rbp),%r11
lea    -0x450(%rbp),%r10
lea    -0x550(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x70(%rbp),%rdi
lea    -0x90(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x250(%rbp),%rcx
lea    -0x270(%rbp),%r8
lea    -0x390(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x40(%rax),%xmm0
lea    -0x430(%rbp),%r11
lea    -0x450(%rbp),%r10
lea    -0x570(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x90(%rbp),%rdi
lea    -0x110(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x270(%rbp),%rcx
lea    -0x2f0(%rbp),%r8
lea    -0x390(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x48(%rax),%xmm0
lea    -0x450(%rbp),%r11
lea    -0x4d0(%rbp),%r10
lea    -0x570(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x110(%rbp),%rdi
lea    -0xf0(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x2f0(%rbp),%rcx
lea    -0x2d0(%rbp),%r8
lea    -0x390(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x50(%rax),%xmm0
lea    -0x4d0(%rbp),%r11
lea    -0x4b0(%rbp),%r10
lea    -0x570(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xf0(%rbp),%rdi
lea    -0x70(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x2d0(%rbp),%rcx
lea    -0x250(%rbp),%r8
lea    -0x390(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x58(%rax),%xmm0
lea    -0x4b0(%rbp),%r11
lea    -0x430(%rbp),%r10
lea    -0x570(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xb0(%rbp),%rdi
lea    -0x70(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x290(%rbp),%rcx
lea    -0x250(%rbp),%r8
lea    -0x3b0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x60(%rax),%xmm0
lea    -0x470(%rbp),%r11
lea    -0x430(%rbp),%r10
lea    -0x590(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x70(%rbp),%rdi
lea    -0xf0(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x250(%rbp),%rcx
lea    -0x2d0(%rbp),%r8
lea    -0x3b0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x68(%rax),%xmm0
lea    -0x430(%rbp),%r11
lea    -0x4b0(%rbp),%r10
lea    -0x590(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xf0(%rbp),%rdi
lea    -0x130(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x2d0(%rbp),%rcx
lea    -0x310(%rbp),%r8
lea    -0x3b0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x70(%rax),%xmm0
lea    -0x4b0(%rbp),%r11
lea    -0x4f0(%rbp),%r10
lea    -0x590(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x130(%rbp),%rdi
lea    -0xb0(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x310(%rbp),%rcx
lea    -0x290(%rbp),%r8
lea    -0x3b0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x78(%rax),%xmm0
lea    -0x4f0(%rbp),%r11
lea    -0x470(%rbp),%r10
lea    -0x590(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xd0(%rbp),%rdi
lea    -0xb0(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x2b0(%rbp),%rcx
lea    -0x290(%rbp),%r8
lea    -0x3d0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x80(%rax),%xmm0
lea    -0x490(%rbp),%r11
lea    -0x470(%rbp),%r10
lea    -0x5b0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xb0(%rbp),%rdi
lea    -0x130(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x290(%rbp),%rcx
lea    -0x310(%rbp),%r8
lea    -0x3d0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x88(%rax),%xmm0
lea    -0x470(%rbp),%r11
lea    -0x4f0(%rbp),%r10
lea    -0x5b0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x130(%rbp),%rdi
lea    -0x150(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x310(%rbp),%rcx
lea    -0x330(%rbp),%r8
lea    -0x3d0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x90(%rax),%xmm0
lea    -0x4f0(%rbp),%r11
lea    -0x510(%rbp),%r10
lea    -0x5b0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x150(%rbp),%rdi
lea    -0xd0(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x330(%rbp),%rcx
lea    -0x2b0(%rbp),%r8
lea    -0x3d0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0x98(%rax),%xmm0
lea    -0x510(%rbp),%r11
lea    -0x490(%rbp),%r10
lea    -0x5b0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0xf0(%rbp),%rdi
lea    -0x110(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x2d0(%rbp),%rcx
lea    -0x2f0(%rbp),%r8
lea    -0x3f0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0xa0(%rax),%xmm0
lea    -0x4b0(%rbp),%r11
lea    -0x4d0(%rbp),%r10
lea    -0x5d0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x110(%rbp),%rdi
lea    -0x150(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x2f0(%rbp),%rcx
lea    -0x330(%rbp),%r8
lea    -0x3f0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0xa8(%rax),%xmm0
lea    -0x4d0(%rbp),%r11
lea    -0x510(%rbp),%r10
lea    -0x5d0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x150(%rbp),%rdi
lea    -0x130(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x330(%rbp),%rcx
lea    -0x310(%rbp),%r8
lea    -0x3f0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0xb0(%rax),%xmm0
lea    -0x510(%rbp),%r11
lea    -0x4f0(%rbp),%r10
lea    -0x5d0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
lea    -0x130(%rbp),%rdi
lea    -0xf0(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x310(%rbp),%rcx
lea    -0x2d0(%rbp),%r8
lea    -0x3f0(%rbp),%r9
mov    -0x38(%rbp),%rax
movsd  0xb8(%rax),%xmm0
lea    -0x4f0(%rbp),%r11
lea    -0x4b0(%rbp),%r10
lea    -0x5d0(%rbp),%rax
movsd  -0x628(%rbp),%xmm1
ff
mov    %r11,(%rsp)
mov    %r10,0x8(%rsp)
mov    %rax,0x10(%rsp)
call   1040 <d2SarTriangle3D@plt>
movsd  -0x630(%rbp),%xmm0
ff
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jbe    32f0 <d2S3D+0x21d0>
lea    -0x70(%rbp),%rdi
lea    -0x90(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x250(%rbp),%r8
lea    -0x270(%rbp),%r9
lea    -0x350(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  (%rax),%xmm0
lea    -0x430(%rbp),%rbx
lea    -0x450(%rbp),%r11
lea    -0x530(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x1a1c(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x90(%rbp),%rdi
lea    -0xd0(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x270(%rbp),%r8
lea    -0x2b0(%rbp),%r9
lea    -0x350(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x8(%rax),%xmm0
lea    -0x450(%rbp),%rbx
lea    -0x490(%rbp),%r11
lea    -0x530(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x198d(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xd0(%rbp),%rdi
lea    -0xb0(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2b0(%rbp),%r8
lea    -0x290(%rbp),%r9
lea    -0x350(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x10(%rax),%xmm0
lea    -0x490(%rbp),%rbx
lea    -0x470(%rbp),%r11
lea    -0x530(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x18fe(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xb0(%rbp),%rdi
lea    -0x70(%rbp),%rsi
lea    -0x170(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x290(%rbp),%r8
lea    -0x250(%rbp),%r9
lea    -0x350(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x18(%rax),%xmm0
lea    -0x470(%rbp),%rbx
lea    -0x430(%rbp),%r11
lea    -0x530(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x1872(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x90(%rbp),%rdi
lea    -0xd0(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x270(%rbp),%r8
lea    -0x2b0(%rbp),%r9
lea    -0x370(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x20(%rax),%xmm0
lea    -0x450(%rbp),%rbx
lea    -0x490(%rbp),%r11
lea    -0x550(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x17db(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xd0(%rbp),%rdi
lea    -0x150(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2b0(%rbp),%r8
lea    -0x330(%rbp),%r9
lea    -0x370(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x28(%rax),%xmm0
lea    -0x490(%rbp),%rbx
lea    -0x510(%rbp),%r11
lea    -0x550(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x174c(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x150(%rbp),%rdi
lea    -0x110(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x330(%rbp),%r8
lea    -0x2f0(%rbp),%r9
lea    -0x370(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x30(%rax),%xmm0
lea    -0x510(%rbp),%rbx
lea    -0x4d0(%rbp),%r11
lea    -0x550(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x16bd(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x110(%rbp),%rdi
lea    -0x90(%rbp),%rsi
lea    -0x190(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2f0(%rbp),%r8
lea    -0x270(%rbp),%r9
lea    -0x370(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x38(%rax),%xmm0
lea    -0x4d0(%rbp),%rbx
lea    -0x450(%rbp),%r11
lea    -0x550(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x162e(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x70(%rbp),%rdi
lea    -0x90(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x250(%rbp),%r8
lea    -0x270(%rbp),%r9
lea    -0x390(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x40(%rax),%xmm0
lea    -0x430(%rbp),%rbx
lea    -0x450(%rbp),%r11
lea    -0x570(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x15a2(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x90(%rbp),%rdi
lea    -0x110(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x270(%rbp),%r8
lea    -0x2f0(%rbp),%r9
lea    -0x390(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x48(%rax),%xmm0
lea    -0x450(%rbp),%rbx
lea    -0x4d0(%rbp),%r11
lea    -0x570(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x1513(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x110(%rbp),%rdi
lea    -0xf0(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2f0(%rbp),%r8
lea    -0x2d0(%rbp),%r9
lea    -0x390(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x50(%rax),%xmm0
lea    -0x4d0(%rbp),%rbx
lea    -0x4b0(%rbp),%r11
lea    -0x570(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x1484(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xf0(%rbp),%rdi
lea    -0x70(%rbp),%rsi
lea    -0x1b0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2d0(%rbp),%r8
lea    -0x250(%rbp),%r9
lea    -0x390(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x58(%rax),%xmm0
lea    -0x4b0(%rbp),%rbx
lea    -0x430(%rbp),%r11
lea    -0x570(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x13f8(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xb0(%rbp),%rdi
lea    -0x70(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x290(%rbp),%r8
lea    -0x250(%rbp),%r9
lea    -0x3b0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x60(%rax),%xmm0
lea    -0x470(%rbp),%rbx
lea    -0x430(%rbp),%r11
lea    -0x590(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x136c(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x70(%rbp),%rdi
lea    -0xf0(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x250(%rbp),%r8
lea    -0x2d0(%rbp),%r9
lea    -0x3b0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x68(%rax),%xmm0
lea    -0x430(%rbp),%rbx
lea    -0x4b0(%rbp),%r11
lea    -0x590(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x12e0(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xf0(%rbp),%rdi
lea    -0x130(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2d0(%rbp),%r8
lea    -0x310(%rbp),%r9
lea    -0x3b0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x70(%rax),%xmm0
lea    -0x4b0(%rbp),%rbx
lea    -0x4f0(%rbp),%r11
lea    -0x590(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x1251(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x130(%rbp),%rdi
lea    -0xb0(%rbp),%rsi
lea    -0x1d0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x310(%rbp),%r8
lea    -0x290(%rbp),%r9
lea    -0x3b0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x78(%rax),%xmm0
lea    -0x4f0(%rbp),%rbx
lea    -0x470(%rbp),%r11
lea    -0x590(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x11c2(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xd0(%rbp),%rdi
lea    -0xb0(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2b0(%rbp),%r8
lea    -0x290(%rbp),%r9
lea    -0x3d0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x80(%rax),%xmm0
lea    -0x490(%rbp),%rbx
lea    -0x470(%rbp),%r11
lea    -0x5b0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x1130(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xb0(%rbp),%rdi
lea    -0x130(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x290(%rbp),%r8
lea    -0x310(%rbp),%r9
lea    -0x3d0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x88(%rax),%xmm0
lea    -0x470(%rbp),%rbx
lea    -0x4f0(%rbp),%r11
lea    -0x5b0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x109e(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x130(%rbp),%rdi
lea    -0x150(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x310(%rbp),%r8
lea    -0x330(%rbp),%r9
lea    -0x3d0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x90(%rax),%xmm0
lea    -0x4f0(%rbp),%rbx
lea    -0x510(%rbp),%r11
lea    -0x5b0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0x100c(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x150(%rbp),%rdi
lea    -0xd0(%rbp),%rsi
lea    -0x1f0(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x330(%rbp),%r8
lea    -0x2b0(%rbp),%r9
lea    -0x3d0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0x98(%rax),%xmm0
lea    -0x510(%rbp),%rbx
lea    -0x490(%rbp),%r11
lea    -0x5b0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0xf7a(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0xf0(%rbp),%rdi
lea    -0x110(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2d0(%rbp),%r8
lea    -0x2f0(%rbp),%r9
lea    -0x3f0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0xa0(%rax),%xmm0
lea    -0x4b0(%rbp),%rbx
lea    -0x4d0(%rbp),%r11
lea    -0x5d0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0xee8(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x110(%rbp),%rdi
lea    -0x150(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x2f0(%rbp),%r8
lea    -0x330(%rbp),%r9
lea    -0x3f0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0xa8(%rax),%xmm0
lea    -0x4d0(%rbp),%rbx
lea    -0x510(%rbp),%r11
lea    -0x5d0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0xe56(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x150(%rbp),%rdi
lea    -0x130(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x330(%rbp),%r8
lea    -0x310(%rbp),%r9
lea    -0x3f0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0xb0(%rax),%xmm0
lea    -0x510(%rbp),%rbx
lea    -0x4f0(%rbp),%r11
lea    -0x5d0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0xdc4(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
lea    -0x130(%rbp),%rdi
lea    -0xf0(%rbp),%rsi
lea    -0x210(%rbp),%rdx
lea    -0x230(%rbp),%rcx
lea    -0x310(%rbp),%r8
lea    -0x2d0(%rbp),%r9
lea    -0x3f0(%rbp),%r15
lea    -0x410(%rbp),%r14
mov    -0x40(%rbp),%rax
movsd  0xb8(%rax),%xmm0
lea    -0x4f0(%rbp),%rbx
lea    -0x4b0(%rbp),%r11
lea    -0x5d0(%rbp),%r10
lea    -0x5f0(%rbp),%rax
movsd  -0x630(%rbp),%xmm2
ff
movsd  0xd32(%rip),%xmm1
mov    %r15,(%rsp)
mov    %r14,0x8(%rsp)
mov    %rbx,0x10(%rsp)
mov    %r11,0x18(%rsp)
mov    %r10,0x20(%rsp)
mov    %rax,0x28(%rsp)
call   1030 <d2SvolTetra3D@plt>
movl   $0x0,-0x608(%rbp)
movl   $0x0,-0x604(%rbp)
cmpl   $0x3,-0x604(%rbp)
jge    37e4 <d2S3D+0x26c4>
movslq -0x604(%rbp),%rax
movsd  0xcf8(%rip),%xmm0
mulsd  -0x530(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x530(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  0xcd7(%rip),%xmm0
mulsd  -0x550(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x550(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  0xcb6(%rip),%xmm0
mulsd  -0x570(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x570(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  0xc95(%rip),%xmm0
mulsd  -0x590(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x590(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  0xc74(%rip),%xmm0
mulsd  -0x5b0(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x5b0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  0xc53(%rip),%xmm0
mulsd  -0x5d0(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x5d0(%rbp,%rax,8)
ff ff
movslq -0x604(%rbp),%rax
movsd  0xc2a(%rip),%xmm0
mulsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
movsd  %xmm0,-0x5f0(%rbp,%rax,8)
ff ff
mov    -0x20(%rbp),%rax
movslq -0x60c(%rbp),%rcx
shl    $0x3,%rcx
add    %rcx,%rax
movslq -0x608(%rbp),%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x430(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x530(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x570(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x590(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x650(%rbp),%rax
add    $0x8,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x450(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x530(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x550(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x570(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x63c(%rbp),%ecx
mov    -0x650(%rbp),%rax
movslq %ecx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x490(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x530(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x550(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5b0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x650(%rbp),%rax
add    $0xfffffffffffffff8,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x470(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x530(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x590(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5b0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x640(%rbp),%ecx
mov    -0x650(%rbp),%rax
movslq %ecx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x4f0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x590(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5b0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5d0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x650(%rbp),%rax
add    $0x8,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x510(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x550(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5b0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5d0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x63c(%rbp),%ecx
mov    -0x650(%rbp),%rax
movslq %ecx,%rdx
xor    %ecx,%ecx
sub    %rdx,%rcx
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x4d0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x550(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x570(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5d0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x650(%rbp),%rax
add    $0xfffffffffffffff8,%rax
mov    %rax,-0x650(%rbp)
movslq -0x604(%rbp),%rax
movsd  -0x4b0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x570(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x590(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5d0(%rbp,%rax,8),%xmm0
ff ff
movslq -0x604(%rbp),%rax
addsd  -0x5f0(%rbp,%rax,8),%xmm0
ff ff
mov    -0x650(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,(%rax)
mov    -0x634(%rbp),%eax
add    -0x608(%rbp),%eax
mov    %eax,-0x608(%rbp)
mov    -0x604(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x604(%rbp)
jmp    3304 <d2S3D+0x21e4>
jmp    37e9 <d2S3D+0x26c9>
mov    -0x600(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x600(%rbp)
jmp    1267 <d2S3D+0x147>
jmp    3802 <d2S3D+0x26e2>
mov    -0x5fc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x5fc(%rbp)
jmp    124e <d2S3D+0x12e>
jmp    381b <d2S3D+0x26fb>
mov    -0x5f8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x5f8(%rbp)
jmp    1235 <d2S3D+0x115>
add    $0x668,%rsp
pop    %rbx
pop    %r14
pop    %r15
pop    %rbp
ret

x86 assembly (clang, -O2):
<d2S3D>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x718,%rsp
mov    %r8,0x6d8(%rsp)
mov    %rcx,0x6d0(%rsp)
mov    %rdi,0x248(%rsp)
mov    0x758(%rsp),%rcx
cvttsd2si (%rcx),%eax
test   %eax,%eax
jle    30a1 <d2S3D+0x1f81>
mov    0x750(%rsp),%rdi
cvttsd2si 0x8(%rcx),%r8d
cvttsd2si 0x10(%rcx),%r10d
movsd  (%rdi),%xmm0
mulsd  0x8(%rdi),%xmm0
mulsd  0x10(%rdi),%xmm0
movsd  0x8(%r9),%xmm1
mulsd  %xmm0,%xmm1
movsd  %xmm1,(%rsp)
mulsd  0x10(%r9),%xmm0
movsd  %xmm0,0x8(%rsp)
lea    0x1(%rax),%ecx
lea    0x1(%r8),%edi
imul   %ecx,%edi
lea    0x1(%r10),%ebp
imul   %edi,%ebp
mov    %ecx,%ecx
movslq %edi,%rbx
movslq %ebp,%rdi
mov    %eax,%eax
mov    %rax,0x698(%rsp)
lea    0x8(%rsi),%rax
mov    %rax,0x3d8(%rsp)
lea    0x8(%rsi,%rcx,8),%rax
mov    %rax,0x3d0(%rsp)
lea    (%rbx,%rcx,1),%rax
lea    0x8(%rsi,%rax,8),%rbp
mov    %rbp,0x3c8(%rsp)
lea    0x8(%rsi,%rbx,8),%rsi
mov    %rsi,0x3c0(%rsp)
lea    0x8(%rdx),%rsi
mov    %rsi,0x3b8(%rsp)
lea    0x8(%rdx,%rcx,8),%rsi
mov    %rsi,0x3b0(%rsp)
lea    0x8(%rdx,%rax,8),%rsi
mov    %rsi,0x3a8(%rsp)
lea    0x8(%rdx,%rbx,8),%rdx
mov    %rdx,0x3a0(%rsp)
lea    0x0(,%rcx,8),%rdx
mov    %rdx,0x6b8(%rsp)
mov    0x248(%rsp),%rdx
lea    (%rdx,%rcx,8),%rcx
mov    %rcx,0x398(%rsp)
lea    0x8(%rdx,%rax,8),%rax
mov    %rax,0x390(%rsp)
lea    0x0(,%rbx,8),%rax
mov    %rax,0x6e8(%rsp)
lea    0x8(%rdx,%rbx,8),%rax
mov    %rax,0x388(%rsp)
movsd  0x2d82(%rip),%xmm10
movsd  0x2d81(%rip),%xmm11
xorpd  %xmm12,%xmm12
movapd 0x2d9b(%rip),%xmm13
movsd  0x2d82(%rip),%xmm14
mov    %r8,0x6a0(%rsp)
mov    %r8d,%eax
mov    %rax,0x6b0(%rsp)
mov    %r10,0x6c0(%rsp)
mov    %r10d,%eax
mov    %rax,0x6e0(%rsp)
lea    0x0(,%rdi,8),%rax
mov    %rax,0x710(%rsp)
xor    %eax,%eax
mov    %rdi,%rdx
mov    %rdi,0x440(%rsp)
jmp    1376 <d2S3D+0x256>
cs nopw 0x0(%rax,%rax,1)
mov    0x6a8(%rsp),%rax
add    $0x1,%rax
addq   $0x8,0x3d8(%rsp)
addq   $0x8,0x3d0(%rsp)
addq   $0x8,0x3c8(%rsp)
addq   $0x8,0x3c0(%rsp)
addq   $0x8,0x3b8(%rsp)
addq   $0x8,0x3b0(%rsp)
addq   $0x8,0x3a8(%rsp)
addq   $0x8,0x3a0(%rsp)
addq   $0x8,0x248(%rsp)
addq   $0x8,0x398(%rsp)
addq   $0x8,0x390(%rsp)
addq   $0x8,0x388(%rsp)
cmp    0x698(%rsp),%rax
je     30a1 <d2S3D+0x1f81>
mov    %rax,0x6a8(%rsp)
cmpl   $0x0,0x6a0(%rsp)
jle    12f0 <d2S3D+0x1d0>
mov    0x388(%rsp),%rax
mov    %rax,0x438(%rsp)
mov    0x390(%rsp),%rax
mov    %rax,0x430(%rsp)
mov    0x398(%rsp),%rax
mov    %rax,0x428(%rsp)
mov    0x248(%rsp),%rax
mov    %rax,0x420(%rsp)
mov    0x3a0(%rsp),%rax
mov    %rax,0x418(%rsp)
mov    0x3a8(%rsp),%rax
mov    %rax,0x410(%rsp)
mov    0x3b0(%rsp),%rax
mov    %rax,0x408(%rsp)
mov    0x3b8(%rsp),%rax
mov    %rax,0x400(%rsp)
mov    0x3c0(%rsp),%rax
mov    %rax,0x3f8(%rsp)
mov    0x3c8(%rsp),%rax
mov    %rax,0x3f0(%rsp)
mov    0x3d0(%rsp),%rax
mov    %rax,0x3e8(%rsp)
mov    0x3d8(%rsp),%rax
mov    %rax,0x3e0(%rsp)
xor    %ecx,%ecx
jmp    14e2 <d2S3D+0x3c2>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
mov    0x6c8(%rsp),%rcx
add    $0x1,%rcx
mov    0x6b8(%rsp),%rax
add    %rax,0x3e0(%rsp)
add    %rax,0x3e8(%rsp)
add    %rax,0x3f0(%rsp)
add    %rax,0x3f8(%rsp)
add    %rax,0x400(%rsp)
add    %rax,0x408(%rsp)
add    %rax,0x410(%rsp)
add    %rax,0x418(%rsp)
add    %rax,0x420(%rsp)
add    %rax,0x428(%rsp)
add    %rax,0x430(%rsp)
add    %rax,0x438(%rsp)
cmp    0x6b0(%rsp),%rcx
je     12f0 <d2S3D+0x1d0>
mov    %rcx,0x6c8(%rsp)
cmpl   $0x0,0x6c0(%rsp)
jle    1460 <d2S3D+0x340>
mov    0x438(%rsp),%r12
mov    0x430(%rsp),%r14
mov    0x428(%rsp),%rsi
mov    0x420(%rsp),%rbp
mov    0x418(%rsp),%rbx
mov    0x410(%rsp),%r8
mov    0x408(%rsp),%r9
mov    0x400(%rsp),%r10
mov    0x3f8(%rsp),%r11
mov    0x3f0(%rsp),%r13
mov    0x3e8(%rsp),%r15
mov    0x3e0(%rsp),%rdi
xor    %ecx,%ecx
nopw   0x0(%rax,%rax,1)
mov    %rcx,0x6f0(%rsp)
xorpd  %xmm0,%xmm0
movapd %xmm0,0x110(%rsp)
movq   $0x0,0x120(%rsp)
movapd %xmm0,0x150(%rsp)
movq   $0x0,0x160(%rsp)
movapd %xmm0,0xf0(%rsp)
movq   $0x0,0x100(%rsp)
movapd %xmm0,0xd0(%rsp)
movq   $0x0,0xe0(%rsp)
movapd %xmm0,0x130(%rsp)
movq   $0x0,0x140(%rsp)
movapd %xmm0,0xb0(%rsp)
movq   $0x0,0xc0(%rsp)
movapd %xmm0,0x90(%rsp)
movq   $0x0,0xa0(%rsp)
movapd %xmm0,0x70(%rsp)
movq   $0x0,0x80(%rsp)
movapd %xmm0,0x210(%rsp)
movq   $0x0,0x220(%rsp)
movapd %xmm0,0x1f0(%rsp)
movq   $0x0,0x200(%rsp)
movapd %xmm0,0x1d0(%rsp)
movq   $0x0,0x1e0(%rsp)
movapd %xmm0,0x1b0(%rsp)
movq   $0x0,0x1c0(%rsp)
movapd %xmm0,0x190(%rsp)
movq   $0x0,0x1a0(%rsp)
movapd %xmm0,0x170(%rsp)
movq   $0x0,0x180(%rsp)
movapd %xmm0,0x10(%rsp)
movq   $0x0,0x20(%rsp)
xor    %eax,%eax
xor    %ecx,%ecx
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
movsd  -0x8(%rdi,%rcx,1),%xmm5
movsd  %xmm5,0x2d0(%rsp,%rax,1)
movsd  (%rdi,%rcx,1),%xmm1
movsd  %xmm1,0x250(%rsp,%rax,1)
movsd  (%r15,%rcx,1),%xmm2
movsd  %xmm2,0x2b0(%rsp,%rax,1)
movsd  -0x8(%r15,%rcx,1),%xmm7
movsd  %xmm7,0x580(%rsp,%rax,1)
movsd  -0x8(%r13,%rcx,1),%xmm8
movsd  %xmm8,0x640(%rsp,%rax,1)
movsd  0x0(%r13,%rcx,1),%xmm9
movsd  %xmm9,0x540(%rsp,%rax,1)
movsd  (%r11,%rcx,1),%xmm0
movsd  %xmm0,0x560(%rsp,%rax,1)
movsd  -0x8(%r11,%rcx,1),%xmm6
movsd  %xmm6,0x370(%rsp,%rax,1)
movapd %xmm5,%xmm4
addsd  %xmm1,%xmm4
movapd %xmm4,%xmm3
addsd  %xmm2,%xmm3
addsd  %xmm7,%xmm3
mulsd  %xmm10,%xmm3
movsd  %xmm3,0x680(%rsp,%rax,1)
addsd  %xmm2,%xmm1
addsd  %xmm9,%xmm1
addsd  %xmm0,%xmm1
mulsd  %xmm10,%xmm1
movsd  %xmm1,0x520(%rsp,%rax,1)
addsd  %xmm0,%xmm4
addsd  %xmm6,%xmm4
mulsd  %xmm10,%xmm4
movsd  %xmm4,0x620(%rsp,%rax,1)
addsd  %xmm7,%xmm5
addsd  %xmm6,%xmm5
addsd  %xmm8,%xmm5
mulsd  %xmm10,%xmm5
movsd  %xmm5,0x500(%rsp,%rax,1)
addsd  %xmm7,%xmm2
addsd  %xmm8,%xmm2
addsd  %xmm9,%xmm2
mulsd  %xmm10,%xmm2
movsd  %xmm2,0x600(%rsp,%rax,1)
addsd  %xmm6,%xmm0
addsd  %xmm9,%xmm0
addsd  %xmm8,%xmm0
mulsd  %xmm10,%xmm0
movsd  %xmm0,0x660(%rsp,%rax,1)
addsd  %xmm3,%xmm0
mulsd  %xmm11,%xmm0
movsd  %xmm0,0x30(%rsp,%rax,1)
movsd  -0x8(%r10,%rcx,1),%xmm5
movsd  %xmm5,0x230(%rsp,%rax,1)
movsd  (%r10,%rcx,1),%xmm1
movsd  %xmm1,0x350(%rsp,%rax,1)
movsd  (%r9,%rcx,1),%xmm2
movsd  %xmm2,0x270(%rsp,%rax,1)
movsd  -0x8(%r9,%rcx,1),%xmm7
movsd  %xmm7,0x290(%rsp,%rax,1)
movsd  -0x8(%r8,%rcx,1),%xmm8
movsd  %xmm8,0x5e0(%rsp,%rax,1)
movsd  (%r8,%rcx,1),%xmm9
movsd  %xmm9,0x4c0(%rsp,%rax,1)
movsd  (%rbx,%rcx,1),%xmm0
movsd  %xmm0,0x4e0(%rsp,%rax,1)
movsd  -0x8(%rbx,%rcx,1),%xmm6
movsd  %xmm6,0x330(%rsp,%rax,1)
movapd %xmm5,%xmm4
addsd  %xmm1,%xmm4
movapd %xmm4,%xmm3
addsd  %xmm2,%xmm3
addsd  %xmm7,%xmm3
mulsd  %xmm10,%xmm3
movsd  %xmm3,0x310(%rsp,%rax,1)
addsd  %xmm2,%xmm1
addsd  %xmm9,%xmm1
addsd  %xmm0,%xmm1
mulsd  %xmm10,%xmm1
movsd  %xmm1,0x5c0(%rsp,%rax,1)
addsd  %xmm0,%xmm4
addsd  %xmm6,%xmm4
mulsd  %xmm10,%xmm4
movsd  %xmm4,0x5a0(%rsp,%rax,1)
addsd  %xmm7,%xmm5
addsd  %xmm6,%xmm5
addsd  %xmm8,%xmm5
mulsd  %xmm10,%xmm5
movsd  %xmm5,0x2f0(%rsp,%rax,1)
addsd  %xmm7,%xmm2
addsd  %xmm8,%xmm2
addsd  %xmm9,%xmm2
mulsd  %xmm10,%xmm2
movsd  %xmm2,0x4a0(%rsp,%rax,1)
addsd  %xmm6,%xmm0
addsd  %xmm9,%xmm0
addsd  %xmm8,%xmm0
mulsd  %xmm10,%xmm0
movsd  %xmm0,0x480(%rsp,%rax,1)
addsd  %xmm3,%xmm0
mulsd  %xmm11,%xmm0
movsd  %xmm0,0x50(%rsp,%rax,1)
add    0x710(%rsp),%rcx
add    $0x8,%rax
cmp    $0x18,%rax
jne    16b0 <d2S3D+0x590>
mov    %rdi,0x6f8(%rsp)
mov    %r15,0x700(%rsp)
mov    %r13,0x708(%rsp)
movsd  (%rsp),%xmm0
ucomisd %xmm12,%xmm0
mov    %rsi,0x478(%rsp)
mov    %rbp,0x470(%rsp)
mov    %rbx,0x468(%rsp)
mov    %r8,0x460(%rsp)
mov    %r9,0x458(%rsp)
mov    %r10,0x450(%rsp)
mov    %r11,0x448(%rsp)
jbe    22e4 <d2S3D+0x11c4>
mov    0x6d0(%rsp),%r15
movsd  (%r15),%xmm0
sub    $0x8,%rsp
lea    0x2d8(%rsp),%rdi
lea    0x258(%rsp),%rsi
lea    0x688(%rsp),%r13
mov    %r13,%rdx
lea    0x238(%rsp),%rcx
lea    0x358(%rsp),%rax
mov    %rax,%r8
mov    %rax,%rbx
lea    0x318(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x218(%rsp),%rax
push   %rax
lea    0x160(%rsp),%rax
push   %rax
lea    0x128(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x8(%r15),%xmm0
sub    $0x8,%rsp
lea    0x258(%rsp),%rdi
lea    0x2b8(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
mov    %rbx,%rcx
lea    0x278(%rsp),%rbx
mov    %rbx,%r8
lea    0x318(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x218(%rsp),%rax
push   %rax
lea    0xe0(%rsp),%rax
push   %rax
lea    0x168(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x10(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x588(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
mov    %rbx,%rcx
lea    0x298(%rsp),%rbx
mov    %rbx,%r8
lea    0x318(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x218(%rsp),%rax
push   %rax
lea    0x100(%rsp),%r13
push   %r13
lea    0xe8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x18(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x2d8(%rsp),%rsi
lea    0x688(%rsp),%rdx
mov    %rbx,%rcx
lea    0x238(%rsp),%r8
lea    0x318(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x218(%rsp),%rax
push   %rax
lea    0x120(%rsp),%rax
push   %rax
push   %r13
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x20(%r15),%xmm0
sub    $0x8,%rsp
lea    0x258(%rsp),%rdi
lea    0x2b8(%rsp),%rbp
mov    %rbp,%rsi
lea    0x528(%rsp),%rbx
mov    %rbx,%rdx
lea    0x358(%rsp),%rcx
lea    0x278(%rsp),%r8
lea    0x5c8(%rsp),%r13
mov    %r13,%r9
movsd  0x8(%rsp),%xmm1
lea    0x1f8(%rsp),%rax
push   %rax
lea    0xe0(%rsp),%rax
push   %rax
lea    0x168(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x28(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x548(%rsp),%rbp
mov    %rbp,%rsi
mov    %rbx,%rdx
lea    0x278(%rsp),%rcx
lea    0x4c8(%rsp),%rbx
mov    %rbx,%r8
mov    %r13,%r9
movsd  0x8(%rsp),%xmm1
lea    0x1f8(%rsp),%rax
push   %rax
lea    0x80(%rsp),%rax
push   %rax
lea    0xe8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x30(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x568(%rsp),%rbp
mov    %rbp,%rsi
lea    0x528(%rsp),%rdx
mov    %rbx,%rcx
lea    0x4e8(%rsp),%rbx
mov    %rbx,%r8
mov    %r13,%r9
movsd  0x8(%rsp),%xmm1
lea    0x1f8(%rsp),%rax
push   %rax
lea    0xc0(%rsp),%rax
push   %rax
lea    0x88(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x38(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x258(%rsp),%rbp
mov    %rbp,%rsi
lea    0x528(%rsp),%rdx
mov    %rbx,%rcx
lea    0x358(%rsp),%r13
mov    %r13,%r8
lea    0x5c8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x1f8(%rsp),%rax
push   %rax
lea    0x160(%rsp),%rbx
push   %rbx
lea    0xc8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x40(%r15),%xmm0
sub    $0x8,%rsp
lea    0x2d8(%rsp),%rdi
mov    %rbp,%rsi
lea    0x628(%rsp),%rbp
mov    %rbp,%rdx
lea    0x238(%rsp),%rcx
mov    %r13,%r8
lea    0x5a8(%rsp),%r13
mov    %r13,%r9
movsd  0x8(%rsp),%xmm1
lea    0x1d8(%rsp),%rax
push   %rax
push   %rbx
lea    0x128(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x48(%r15),%xmm0
sub    $0x8,%rsp
lea    0x258(%rsp),%rdi
lea    0x568(%rsp),%rsi
mov    %rbp,%rdx
lea    0x358(%rsp),%rcx
lea    0x4e8(%rsp),%rbp
mov    %rbp,%r8
mov    %r13,%r9
mov    %r13,%rbx
movsd  0x8(%rsp),%xmm1
lea    0x1d8(%rsp),%rax
push   %rax
lea    0xc0(%rsp),%rax
push   %rax
lea    0x168(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x50(%r15),%xmm0
sub    $0x8,%rsp
lea    0x568(%rsp),%rdi
lea    0x378(%rsp),%r13
mov    %r13,%rsi
lea    0x628(%rsp),%rdx
mov    %rbp,%rcx
lea    0x338(%rsp),%rbp
mov    %rbp,%r8
mov    %rbx,%r9
movsd  0x8(%rsp),%xmm1
lea    0x1d8(%rsp),%rax
push   %rax
lea    0x140(%rsp),%rax
push   %rax
lea    0xc8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x58(%r15),%xmm0
sub    $0x8,%rsp
mov    %r13,%rdi
lea    0x2d8(%rsp),%rbx
mov    %rbx,%rsi
lea    0x628(%rsp),%rdx
mov    %rbp,%rcx
lea    0x238(%rsp),%rbp
mov    %rbp,%r8
lea    0x5a8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x1d8(%rsp),%rax
push   %rax
lea    0x120(%rsp),%r13
push   %r13
lea    0x148(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x60(%r15),%xmm0
sub    $0x8,%rsp
lea    0x588(%rsp),%rdi
mov    %rbx,%rsi
lea    0x508(%rsp),%rbx
mov    %rbx,%rdx
lea    0x298(%rsp),%rcx
mov    %rbp,%r8
lea    0x2f8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x1b8(%rsp),%rax
push   %rax
push   %r13
lea    0x108(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x68(%r15),%xmm0
sub    $0x8,%rsp
lea    0x2d8(%rsp),%rdi
lea    0x378(%rsp),%rbp
mov    %rbp,%rsi
mov    %rbx,%rdx
lea    0x238(%rsp),%rcx
lea    0x338(%rsp),%rbx
mov    %rbx,%r8
lea    0x2f8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x1b8(%rsp),%rax
push   %rax
lea    0x140(%rsp),%r13
push   %r13
lea    0x128(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x70(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x648(%rsp),%rbp
mov    %rbp,%rsi
lea    0x508(%rsp),%rdx
mov    %rbx,%rcx
lea    0x5e8(%rsp),%rbx
mov    %rbx,%r8
lea    0x2f8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x1b8(%rsp),%rax
push   %rax
lea    0xa0(%rsp),%rax
push   %rax
push   %r13
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x78(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x588(%rsp),%rbp
mov    %rbp,%rsi
lea    0x508(%rsp),%rdx
mov    %rbx,%rcx
lea    0x298(%rsp),%rbx
mov    %rbx,%r8
lea    0x2f8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x1b8(%rsp),%rax
push   %rax
lea    0x100(%rsp),%rax
push   %rax
lea    0xa8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x80(%r15),%xmm0
sub    $0x8,%rsp
lea    0x2b8(%rsp),%rdi
mov    %rbp,%rsi
lea    0x608(%rsp),%r13
mov    %r13,%rdx
lea    0x278(%rsp),%rcx
mov    %rbx,%r8
lea    0x4a8(%rsp),%rbx
mov    %rbx,%r9
movsd  0x8(%rsp),%xmm1
lea    0x198(%rsp),%rax
push   %rax
lea    0x100(%rsp),%rax
push   %rax
lea    0xe8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x88(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x648(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
lea    0x298(%rsp),%rcx
lea    0x5e8(%rsp),%r13
mov    %r13,%r8
mov    %rbx,%r9
movsd  0x8(%rsp),%xmm1
lea    0x198(%rsp),%rax
push   %rax
lea    0xa0(%rsp),%rax
push   %rax
lea    0x108(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x90(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x548(%rsp),%rbx
mov    %rbx,%rsi
lea    0x608(%rsp),%rdx
mov    %r13,%rcx
lea    0x4c8(%rsp),%rbp
mov    %rbp,%r8
lea    0x4a8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x198(%rsp),%rax
push   %rax
lea    0x80(%rsp),%r13
push   %r13
lea    0xa8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0x98(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbx,%rdi
lea    0x2b8(%rsp),%rsi
lea    0x608(%rsp),%rdx
mov    %rbp,%rcx
lea    0x278(%rsp),%r8
lea    0x4a8(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x198(%rsp),%rax
push   %rax
lea    0xe0(%rsp),%rax
push   %rax
push   %r13
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0xa0(%r15),%xmm0
sub    $0x8,%rsp
lea    0x378(%rsp),%rdi
lea    0x568(%rsp),%rbp
mov    %rbp,%rsi
lea    0x668(%rsp),%r13
mov    %r13,%rdx
lea    0x338(%rsp),%rcx
lea    0x4e8(%rsp),%rbx
mov    %rbx,%r8
lea    0x488(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x178(%rsp),%rax
push   %rax
lea    0xc0(%rsp),%rax
push   %rax
lea    0x148(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0xa8(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x548(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
mov    %rbx,%rcx
lea    0x4c8(%rsp),%rbx
mov    %rbx,%r8
lea    0x488(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x178(%rsp),%rax
push   %rax
lea    0x80(%rsp),%rax
push   %rax
lea    0xc8(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0xb0(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x648(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
mov    %rbx,%rcx
lea    0x5e8(%rsp),%rbx
mov    %rbx,%r8
lea    0x488(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x178(%rsp),%rax
push   %rax
lea    0xa0(%rsp),%r13
push   %r13
lea    0x88(%rsp),%rax
push   %rax
call   1040 <d2SarTriangle3D@plt>
add    $0x20,%rsp
movsd  0xb8(%r15),%xmm0
sub    $0x8,%rsp
mov    %rbp,%rdi
lea    0x378(%rsp),%rsi
lea    0x668(%rsp),%rdx
mov    %rbx,%rcx
lea    0x338(%rsp),%r8
lea    0x488(%rsp),%r9
movsd  0x8(%rsp),%xmm1
lea    0x178(%rsp),%rax
push   %rax
lea    0x140(%rsp),%rax
push   %rax
push   %r13
call   1040 <d2SarTriangle3D@plt>
mov    0x468(%rsp),%r11
mov    0x470(%rsp),%r10
mov    0x478(%rsp),%r9
mov    0x480(%rsp),%r8
mov    0x488(%rsp),%rbx
mov    0x490(%rsp),%rbp
mov    0x498(%rsp),%rsi
movsd  0x1d68(%rip),%xmm14
movapd 0x1d6f(%rip),%xmm13
xorpd  %xmm12,%xmm12
movsd  0x1d39(%rip),%xmm11
movsd  0x1d28(%rip),%xmm10
mov    0x460(%rsp),%rdx
add    $0x20,%rsp
movsd  0x8(%rsp),%xmm0
ucomisd %xmm12,%xmm0
jbe    2e68 <d2S3D+0x1d48>
mov    0x6d8(%rsp),%r15
movsd  (%r15),%xmm0
lea    0x2d0(%rsp),%rdi
lea    0x250(%rsp),%rsi
lea    0x680(%rsp),%rdx
lea    0x30(%rsp),%rcx
lea    0x230(%rsp),%r8
lea    0x350(%rsp),%r13
mov    %r13,%r9
movsd  0x1cd6(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x218(%rsp),%rax
push   %rax
lea    0x160(%rsp),%rax
push   %rax
lea    0x128(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x338(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x8(%r15),%xmm0
lea    0x250(%rsp),%rdi
lea    0x2b0(%rsp),%rsi
lea    0x680(%rsp),%rbx
mov    %rbx,%rdx
lea    0x30(%rsp),%rbp
mov    %rbp,%rcx
mov    %r13,%r8
lea    0x270(%rsp),%r13
mov    %r13,%r9
movsd  0x1c58(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x218(%rsp),%rax
push   %rax
lea    0xe0(%rsp),%rax
push   %rax
lea    0x168(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x338(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x10(%r15),%xmm0
lea    0x2b0(%rsp),%rdi
lea    0x580(%rsp),%rsi
mov    %rbx,%rdx
mov    %rbp,%rcx
mov    %r13,%r8
lea    0x290(%rsp),%rbp
mov    %rbp,%r9
movsd  0x1be7(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%r13
push   %r13
lea    0x218(%rsp),%rax
push   %rax
lea    0x100(%rsp),%rax
push   %rax
lea    0xe8(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x338(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x18(%r15),%xmm0
lea    0x580(%rsp),%rdi
lea    0x2d0(%rsp),%rsi
lea    0x680(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbp,%r8
lea    0x230(%rsp),%r9
movsd  0x1b71(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
push   %r13
lea    0x218(%rsp),%rax
push   %rax
lea    0x120(%rsp),%rax
push   %rax
lea    0x108(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x338(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x20(%r15),%xmm0
lea    0x250(%rsp),%rdi
lea    0x2b0(%rsp),%rbp
mov    %rbp,%rsi
lea    0x520(%rsp),%rdx
lea    0x30(%rsp),%rcx
lea    0x350(%rsp),%r8
lea    0x270(%rsp),%rbx
mov    %rbx,%r9
movsd  0x1afd(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
push   %r13
lea    0x1f8(%rsp),%rax
push   %rax
lea    0xe0(%rsp),%r13
push   %r13
lea    0x168(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x5e8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x28(%r15),%xmm0
mov    %rbp,%rdi
lea    0x540(%rsp),%rbp
mov    %rbp,%rsi
lea    0x520(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x4c0(%rsp),%rbx
mov    %rbx,%r9
movsd  0x1a8a(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1f8(%rsp),%rax
push   %rax
lea    0x80(%rsp),%rax
push   %rax
push   %r13
lea    0x70(%rsp),%rax
push   %rax
lea    0x5e8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x30(%r15),%xmm0
mov    %rbp,%rdi
lea    0x560(%rsp),%r13
mov    %r13,%rsi
lea    0x520(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x4e0(%rsp),%rbp
mov    %rbp,%r9
movsd  0x1a1b(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1f8(%rsp),%rax
push   %rax
lea    0xc0(%rsp),%rax
push   %rax
lea    0x88(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x5e8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x38(%r15),%xmm0
mov    %r13,%rdi
lea    0x250(%rsp),%rbx
mov    %rbx,%rsi
lea    0x520(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbp,%r8
lea    0x350(%rsp),%rbp
mov    %rbp,%r9
movsd  0x19a5(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1f8(%rsp),%rax
push   %rax
lea    0x160(%rsp),%r13
push   %r13
lea    0xc8(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x5e8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x40(%r15),%xmm0
lea    0x2d0(%rsp),%rdi
mov    %rbx,%rsi
lea    0x620(%rsp),%rbx
mov    %rbx,%rdx
lea    0x30(%rsp),%rcx
lea    0x230(%rsp),%r8
mov    %rbp,%r9
movsd  0x1931(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1d8(%rsp),%rax
push   %rax
push   %r13
lea    0x128(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x5c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x48(%r15),%xmm0
lea    0x250(%rsp),%rdi
lea    0x560(%rsp),%rbp
mov    %rbp,%rsi
mov    %rbx,%rdx
lea    0x30(%rsp),%rcx
lea    0x350(%rsp),%r8
lea    0x4e0(%rsp),%rbx
mov    %rbx,%r9
movsd  0x18bd(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1d8(%rsp),%rax
push   %rax
lea    0xc0(%rsp),%r13
push   %r13
lea    0x168(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x5c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x50(%r15),%xmm0
mov    %rbp,%rdi
lea    0x370(%rsp),%rbp
mov    %rbp,%rsi
lea    0x620(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x330(%rsp),%rbx
mov    %rbx,%r9
movsd  0x1846(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1d8(%rsp),%rax
push   %rax
lea    0x140(%rsp),%rax
push   %rax
push   %r13
lea    0x70(%rsp),%rax
push   %rax
lea    0x5c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x58(%r15),%xmm0
mov    %rbp,%rdi
lea    0x2d0(%rsp),%rbp
mov    %rbp,%rsi
lea    0x620(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x230(%rsp),%r9
movsd  0x17da(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1d8(%rsp),%rax
push   %rax
lea    0x120(%rsp),%r13
push   %r13
lea    0x148(%rsp),%rax
push   %rax
lea    0x70(%rsp),%r13
push   %r13
lea    0x5c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x60(%r15),%xmm0
lea    0x580(%rsp),%rdi
mov    %rbp,%rsi
lea    0x500(%rsp),%rdx
lea    0x30(%rsp),%rbx
mov    %rbx,%rcx
lea    0x290(%rsp),%r8
lea    0x230(%rsp),%r9
movsd  0x1760(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1b8(%rsp),%rax
push   %rax
lea    0x120(%rsp),%rax
push   %rax
lea    0x108(%rsp),%rax
push   %rax
push   %r13
lea    0x318(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x68(%r15),%xmm0
mov    %rbp,%rdi
lea    0x370(%rsp),%rbp
mov    %rbp,%rsi
lea    0x500(%rsp),%rdx
mov    %rbx,%rcx
lea    0x230(%rsp),%r8
lea    0x330(%rsp),%rbx
mov    %rbx,%r9
movsd  0x16eb(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1b8(%rsp),%rax
push   %rax
lea    0x140(%rsp),%r13
push   %r13
lea    0x128(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x318(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x70(%r15),%xmm0
mov    %rbp,%rdi
lea    0x640(%rsp),%rbp
mov    %rbp,%rsi
lea    0x500(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x5e0(%rsp),%rbx
mov    %rbx,%r9
movsd  0x1674(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x1b8(%rsp),%rax
push   %rax
lea    0xa0(%rsp),%rax
push   %rax
push   %r13
lea    0x70(%rsp),%r13
push   %r13
lea    0x318(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x78(%r15),%xmm0
mov    %rbp,%rdi
lea    0x580(%rsp),%rbp
mov    %rbp,%rsi
lea    0x500(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x290(%rsp),%r9
movsd  0x1607(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rbx
push   %rbx
lea    0x1b8(%rsp),%rax
push   %rax
lea    0x100(%rsp),%rax
push   %rax
lea    0xa8(%rsp),%rax
push   %rax
push   %r13
lea    0x318(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x80(%r15),%xmm0
lea    0x2b0(%rsp),%rdi
mov    %rbp,%rsi
lea    0x600(%rsp),%r13
mov    %r13,%rdx
lea    0x30(%rsp),%rcx
lea    0x270(%rsp),%r8
lea    0x290(%rsp),%r9
movsd  0x1590(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
push   %rbx
lea    0x198(%rsp),%rax
push   %rax
lea    0x100(%rsp),%rax
push   %rax
lea    0xe8(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rbx
push   %rbx
lea    0x4c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x88(%r15),%xmm0
mov    %rbp,%rdi
lea    0x640(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
lea    0x30(%rsp),%rcx
lea    0x290(%rsp),%r8
lea    0x5e0(%rsp),%r13
mov    %r13,%r9
movsd  0x151c(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x198(%rsp),%rax
push   %rax
lea    0xa0(%rsp),%rax
push   %rax
lea    0x108(%rsp),%rax
push   %rax
push   %rbx
lea    0x4c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x90(%r15),%xmm0
mov    %rbp,%rdi
lea    0x540(%rsp),%rbx
mov    %rbx,%rsi
lea    0x600(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %r13,%r8
lea    0x4c0(%rsp),%rbp
mov    %rbp,%r9
movsd  0x14a8(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x198(%rsp),%rax
push   %rax
lea    0x80(%rsp),%r13
push   %r13
lea    0xa8(%rsp),%rax
push   %rax
lea    0x70(%rsp),%r13
push   %r13
lea    0x4c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0x98(%r15),%xmm0
mov    %rbx,%rdi
lea    0x2b0(%rsp),%rsi
lea    0x600(%rsp),%rdx
lea    0x30(%rsp),%rbx
mov    %rbx,%rcx
mov    %rbp,%r8
lea    0x270(%rsp),%r9
movsd  0x1430(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rbp
push   %rbp
lea    0x198(%rsp),%rax
push   %rax
lea    0xe0(%rsp),%rax
push   %rax
lea    0x88(%rsp),%rax
push   %rax
push   %r13
lea    0x4c8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0xa0(%r15),%xmm0
lea    0x370(%rsp),%rdi
lea    0x560(%rsp),%r13
mov    %r13,%rsi
lea    0x660(%rsp),%rdx
mov    %rbx,%rcx
lea    0x330(%rsp),%r8
lea    0x4e0(%rsp),%r9
movsd  0x13b6(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
push   %rbp
lea    0x178(%rsp),%rax
push   %rax
lea    0xc0(%rsp),%rbp
push   %rbp
lea    0x148(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rbp
push   %rbp
lea    0x4a8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0xa8(%r15),%xmm0
mov    %r13,%rdi
lea    0x540(%rsp),%rsi
lea    0x660(%rsp),%r13
mov    %r13,%rdx
lea    0x30(%rsp),%rbx
mov    %rbx,%rcx
lea    0x4e0(%rsp),%r8
lea    0x4c0(%rsp),%r9
movsd  0x133d(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x178(%rsp),%rax
push   %rax
lea    0x80(%rsp),%rax
push   %rax
lea    0xc8(%rsp),%rax
push   %rax
push   %rbp
lea    0x4a8(%rsp),%rax
push   %rax
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0xb0(%r15),%xmm0
lea    0x540(%rsp),%rdi
lea    0x640(%rsp),%rbp
mov    %rbp,%rsi
mov    %r13,%rdx
mov    %rbx,%rcx
lea    0x4c0(%rsp),%r8
lea    0x5e0(%rsp),%rbx
mov    %rbx,%r9
movsd  0x12c6(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x178(%rsp),%rax
push   %rax
lea    0xa0(%rsp),%r13
push   %r13
lea    0x88(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
lea    0x4a8(%rsp),%r13
push   %r13
call   1030 <d2SvolTetra3D@plt>
add    $0x30,%rsp
movsd  0xb8(%r15),%xmm0
mov    %rbp,%rdi
lea    0x370(%rsp),%rsi
lea    0x660(%rsp),%rdx
lea    0x30(%rsp),%rcx
mov    %rbx,%r8
lea    0x330(%rsp),%r9
movsd  0x1251(%rip),%xmm1
movsd  0x8(%rsp),%xmm2
lea    0x10(%rsp),%rax
push   %rax
lea    0x178(%rsp),%rax
push   %rax
lea    0x140(%rsp),%rax
push   %rax
lea    0xa8(%rsp),%rax
push   %rax
lea    0x70(%rsp),%rax
push   %rax
push   %r13
call   1030 <d2SvolTetra3D@plt>
mov    0x478(%rsp),%r11
mov    0x480(%rsp),%r10
mov    0x488(%rsp),%r9
mov    0x490(%rsp),%r8
mov    0x498(%rsp),%rbx
mov    0x4a0(%rsp),%rbp
mov    0x4a8(%rsp),%rsi
movsd  0x11e4(%rip),%xmm14
movapd 0x11eb(%rip),%xmm13
xorpd  %xmm12,%xmm12
movsd  0x11b5(%rip),%xmm11
movsd  0x11a4(%rip),%xmm10
mov    0x470(%rsp),%rdx
add    $0x30,%rsp
xor    %eax,%eax
xor    %ecx,%ecx
nopl   0x0(%rax)
movsd  0x210(%rsp,%rax,1),%xmm6
mulsd  %xmm10,%xmm6
movsd  %xmm6,0x210(%rsp,%rax,1)
movsd  0x1b0(%rsp,%rax,1),%xmm3
movhpd 0x1f0(%rsp,%rax,1),%xmm3
mulpd  %xmm13,%xmm3
movapd %xmm3,%xmm2
movhpd %xmm3,0x1f0(%rsp,%rax,1)
movsd  0x1d0(%rsp,%rax,1),%xmm1
mulsd  %xmm10,%xmm1
movsd  %xmm1,0x1d0(%rsp,%rax,1)
movlpd %xmm3,0x1b0(%rsp,%rax,1)
movsd  0x190(%rsp,%rax,1),%xmm9
mulsd  %xmm10,%xmm9
movsd  %xmm9,0x190(%rsp,%rax,1)
movsd  0x170(%rsp,%rax,1),%xmm8
mulsd  %xmm10,%xmm8
movsd  %xmm8,0x170(%rsp,%rax,1)
movsd  0x10(%rsp,%rax,1),%xmm4
mulsd  %xmm14,%xmm4
movsd  %xmm4,0x10(%rsp,%rax,1)
unpcklpd %xmm6,%xmm6
movsd  0x110(%rsp,%rax,1),%xmm7
movhpd 0x150(%rsp,%rax,1),%xmm7
addpd  %xmm6,%xmm7
movapd %xmm3,%xmm0
movsd  %xmm1,%xmm0
addpd  %xmm7,%xmm0
movapd %xmm3,%xmm7
unpcklpd %xmm1,%xmm7
addpd  %xmm0,%xmm7
movapd %xmm4,%xmm0
unpcklpd %xmm4,%xmm0
addpd  %xmm0,%xmm7
movupd 0x0(%rbp,%rcx,8),%xmm5
addpd  %xmm7,%xmm5
movupd %xmm5,0x0(%rbp,%rcx,8)
movsd  0xf0(%rsp,%rax,1),%xmm5
movhpd 0xd0(%rsp,%rax,1),%xmm5
unpckhpd %xmm3,%xmm2
addpd  %xmm6,%xmm5
addpd  %xmm3,%xmm5
movapd %xmm9,%xmm6
unpcklpd %xmm9,%xmm6
addpd  %xmm5,%xmm6
addpd  %xmm0,%xmm6
movupd (%rsi,%rcx,8),%xmm0
addpd  %xmm6,%xmm0
movupd %xmm0,(%rsi,%rcx,8)
movsd  0x90(%rsp,%rax,1),%xmm0
addsd  %xmm3,%xmm0
addsd  %xmm9,%xmm0
addsd  %xmm8,%xmm0
addsd  %xmm4,%xmm0
addsd  -0x8(%r14,%rcx,8),%xmm0
movsd  %xmm0,-0x8(%r14,%rcx,8)
movsd  0x70(%rsp,%rax,1),%xmm0
addsd  %xmm2,%xmm0
addsd  %xmm9,%xmm0
addsd  %xmm8,%xmm0
addsd  %xmm4,%xmm0
addsd  (%r14,%rcx,8),%xmm0
movsd  %xmm0,(%r14,%rcx,8)
addsd  0xb0(%rsp,%rax,1),%xmm2
addsd  %xmm1,%xmm2
addsd  %xmm8,%xmm2
addsd  %xmm4,%xmm2
addsd  (%r12,%rcx,8),%xmm2
movsd  %xmm2,(%r12,%rcx,8)
addsd  0x130(%rsp,%rax,1),%xmm1
addsd  %xmm3,%xmm1
addsd  %xmm8,%xmm1
addsd  %xmm4,%xmm1
addsd  -0x8(%r12,%rcx,8),%xmm1
movsd  %xmm1,-0x8(%r12,%rcx,8)
add    %rdx,%rcx
add    $0x8,%rax
cmp    $0x18,%rax
jne    2e70 <d2S3D+0x1d50>
mov    0x6f0(%rsp),%rcx
add    $0x1,%rcx
mov    0x6e8(%rsp),%rax
mov    0x6f8(%rsp),%rdi
add    %rax,%rdi
mov    0x700(%rsp),%r15
add    %rax,%r15
mov    0x708(%rsp),%r13
add    %rax,%r13
add    %rax,%r11
add    %rax,%r10
add    %rax,%r9
add    %rax,%r8
add    %rax,%rbx
add    %rax,%rbp
add    %rax,%rsi
add    %rax,%r14
add    %rax,%r12
cmp    0x6e0(%rsp),%rcx
jne    1560 <d2S3D+0x440>
jmp    1460 <d2S3D+0x340>
add    $0x718,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define void @d2S3D(double* %0, double* %1, double* %2, double* %3, double* %4, double* %5, double* %6, double* %7, i32 %8) {
%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 i32
%19 = alloca i32
%20 = alloca i32
%21 = alloca i32
%22 = alloca [3 x double]
%23 = alloca [3 x double]
%24 = alloca [3 x double]
%25 = alloca [3 x double]
%26 = alloca [3 x double]
%27 = alloca [3 x double]
%28 = alloca [3 x double]
%29 = alloca [3 x double]
%30 = alloca [3 x double]
%31 = alloca [3 x double]
%32 = alloca [3 x double]
%33 = alloca [3 x double]
%34 = alloca [3 x double]
%35 = alloca [3 x double]
%36 = alloca [3 x double]
%37 = alloca [3 x double]
%38 = alloca [3 x double]
%39 = alloca [3 x double]
%40 = alloca [3 x double]
%41 = alloca [3 x double]
%42 = alloca [3 x double]
%43 = alloca [3 x double]
%44 = alloca [3 x double]
%45 = alloca [3 x double]
%46 = alloca [3 x double]
%47 = alloca [3 x double]
%48 = alloca [3 x double]
%49 = alloca [3 x double]
%50 = alloca [3 x double]
%51 = alloca [3 x double]
%52 = alloca [3 x double]
%53 = alloca [3 x double]
%54 = alloca [3 x double]
%55 = alloca [3 x double]
%56 = alloca [3 x double]
%57 = alloca [3 x double]
%58 = alloca [3 x double]
%59 = alloca [3 x double]
%60 = alloca [3 x double]
%61 = alloca [3 x double]
%62 = alloca [3 x double]
%63 = alloca [3 x double]
%64 = alloca [3 x double]
%65 = alloca [3 x double]
%66 = alloca [3 x double]
%67 = alloca i32
%68 = alloca i32
%69 = alloca i32
%70 = alloca i32
%71 = alloca i32
%72 = alloca i32
%73 = alloca i32
%74 = alloca double
%75 = alloca double
%76 = alloca double
%77 = alloca double
%78 = alloca i32
%79 = alloca i32
%80 = alloca i32
%81 = alloca i32
%82 = alloca double*
%83 = alloca double*
store double* %0, double** %10
store double* %1, double** %11
store double* %2, double** %12
store double* %3, double** %13
store double* %4, double** %14
store double* %5, double** %15
store double* %6, double** %16
store double* %7, double** %17
store i32 %8, i32* %18
%84 = load double*, double** %17
%85 = getelementptr inbounds double, double* %84, i64 0
%86 = load double, double* %85
%87 = fptosi double %86 to i32
store i32 %87, i32* %19
%88 = load double*, double** %17
%89 = getelementptr inbounds double, double* %88, i64 1
%90 = load double, double* %89
%91 = fptosi double %90 to i32
store i32 %91, i32* %20
%92 = load double*, double** %17
%93 = getelementptr inbounds double, double* %92, i64 2
%94 = load double, double* %93
%95 = fptosi double %94 to i32
store i32 %95, i32* %21
%96 = load double*, double** %16
%97 = getelementptr inbounds double, double* %96, i64 0
%98 = load double, double* %97
%99 = load double*, double** %16
%100 = getelementptr inbounds double, double* %99, i64 1
%101 = load double, double* %100
%102 = fmul double %98, %101
%103 = load double*, double** %16
%104 = getelementptr inbounds double, double* %103, i64 2
%105 = load double, double* %104
%106 = fmul double %102, %105
store double %106, double* %74
%107 = load double*, double** %15
%108 = getelementptr inbounds double, double* %107, i64 0
%109 = load double, double* %108
%110 = load double, double* %74
%111 = fmul double %109, %110
store double %111, double* %75
%112 = load double*, double** %15
%113 = getelementptr inbounds double, double* %112, i64 1
%114 = load double, double* %113
%115 = load double, double* %74
%116 = fmul double %114, %115
store double %116, double* %76
%117 = load double*, double** %15
%118 = getelementptr inbounds double, double* %117, i64 2
%119 = load double, double* %118
%120 = load double, double* %74
%121 = fmul double %119, %120
store double %121, double* %77
%122 = load i32, i32* %19
%123 = add nsw i32 %122, 1
%124 = load i32, i32* %20
%125 = add nsw i32 %124, 1
%126 = mul nsw i32 %123, %125
%127 = load i32, i32* %21
%128 = add nsw i32 %127, 1
%129 = mul nsw i32 %126, %128
store i32 %129, i32* %78
store i32 1, i32* %79
%130 = load i32, i32* %19
%131 = add nsw i32 %130, 1
store i32 %131, i32* %80
%132 = load i32, i32* %19
%133 = add nsw i32 %132, 1
%134 = load i32, i32* %20
%135 = add nsw i32 %134, 1
%136 = mul nsw i32 %133, %135
store i32 %136, i32* %81
store i32 0, i32* %68
br label %137
137: ; preds = %1705, %9
%138 = load i32, i32* %68
%139 = load i32, i32* %19
%140 = icmp slt i32 %138, %139
br i1 %140, label %141, label %1708
141: ; preds = %137
store i32 0, i32* %69
br label %142
142: ; preds = %1701, %141
%143 = load i32, i32* %69
%144 = load i32, i32* %20
%145 = icmp slt i32 %143, %144
br i1 %145, label %146, label %1704
146: ; preds = %142
store i32 0, i32* %70
br label %147
147: ; preds = %1697, %146
%148 = load i32, i32* %70
%149 = load i32, i32* %21
%150 = icmp slt i32 %148, %149
br i1 %150, label %151, label %1700
151: ; preds = %147
%152 = load i32, i32* %68
%153 = load i32, i32* %69
%154 = load i32, i32* %80
%155 = mul nsw i32 %153, %154
%156 = add nsw i32 %152, %155
%157 = load i32, i32* %70
%158 = load i32, i32* %81
%159 = mul nsw i32 %157, %158
%160 = add nsw i32 %156, %159
store i32 %160, i32* %73
store i32 0, i32* %72
store i32 0, i32* %71
br label %161
161: ; preds = %651, %151
%162 = load i32, i32* %71
%163 = icmp slt i32 %162, 3
br i1 %163, label %164, label %654
164: ; preds = %161
%165 = load double*, double** %11
%166 = load i32, i32* %73
%167 = sext i32 %166 to i64
%168 = getelementptr inbounds double, double* %165, i64 %167
%169 = load i32, i32* %72
%170 = sext i32 %169 to i64
%171 = getelementptr inbounds double, double* %168, i64 %170
store double* %171, double** %82
%172 = load double*, double** %82
%173 = load double, double* %172
%174 = load i32, i32* %71
%175 = sext i32 %174 to i64
%176 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 %175
store double %173, double* %176
%177 = load double*, double** %82
%178 = getelementptr inbounds double, double* %177, i64 1
store double* %178, double** %82
%179 = load double*, double** %82
%180 = load double, double* %179
%181 = load i32, i32* %71
%182 = sext i32 %181 to i64
%183 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 %182
store double %180, double* %183
%184 = load i32, i32* %80
%185 = load double*, double** %82
%186 = sext i32 %184 to i64
%187 = getelementptr inbounds double, double* %185, i64 %186
store double* %187, double** %82
%188 = load double*, double** %82
%189 = load double, double* %188
%190 = load i32, i32* %71
%191 = sext i32 %190 to i64
%192 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 %191
store double %189, double* %192
%193 = load double*, double** %82
%194 = getelementptr inbounds double, double* %193, i64 -1
store double* %194, double** %82
%195 = load double*, double** %82
%196 = load double, double* %195
%197 = load i32, i32* %71
%198 = sext i32 %197 to i64
%199 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 %198
store double %196, double* %199
%200 = load i32, i32* %81
%201 = load double*, double** %82
%202 = sext i32 %200 to i64
%203 = getelementptr inbounds double, double* %201, i64 %202
store double* %203, double** %82
%204 = load double*, double** %82
%205 = load double, double* %204
%206 = load i32, i32* %71
%207 = sext i32 %206 to i64
%208 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 %207
store double %205, double* %208
%209 = load double*, double** %82
%210 = getelementptr inbounds double, double* %209, i64 1
store double* %210, double** %82
%211 = load double*, double** %82
%212 = load double, double* %211
%213 = load i32, i32* %71
%214 = sext i32 %213 to i64
%215 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 %214
store double %212, double* %215
%216 = load i32, i32* %80
%217 = load double*, double** %82
%218 = sext i32 %216 to i64
%219 = sub i64 0, %218
%220 = getelementptr inbounds double, double* %217, i64 %219
store double* %220, double** %82
%221 = load double*, double** %82
%222 = load double, double* %221
%223 = load i32, i32* %71
%224 = sext i32 %223 to i64
%225 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 %224
store double %222, double* %225
%226 = load double*, double** %82
%227 = getelementptr inbounds double, double* %226, i64 -1
store double* %227, double** %82
%228 = load double*, double** %82
%229 = load double, double* %228
%230 = load i32, i32* %71
%231 = sext i32 %230 to i64
%232 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 %231
store double %229, double* %232
%233 = load i32, i32* %71
%234 = sext i32 %233 to i64
%235 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 %234
%236 = load double, double* %235
%237 = load i32, i32* %71
%238 = sext i32 %237 to i64
%239 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 %238
%240 = load double, double* %239
%241 = fadd double %236, %240
%242 = load i32, i32* %71
%243 = sext i32 %242 to i64
%244 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 %243
%245 = load double, double* %244
%246 = fadd double %241, %245
%247 = load i32, i32* %71
%248 = sext i32 %247 to i64
%249 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 %248
%250 = load double, double* %249
%251 = fadd double %246, %250
%252 = fmul double 2.500000e-01, %251
%253 = load i32, i32* %71
%254 = sext i32 %253 to i64
%255 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 %254
store double %252, double* %255
%256 = load i32, i32* %71
%257 = sext i32 %256 to i64
%258 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 %257
%259 = load double, double* %258
%260 = load i32, i32* %71
%261 = sext i32 %260 to i64
%262 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 %261
%263 = load double, double* %262
%264 = fadd double %259, %263
%265 = load i32, i32* %71
%266 = sext i32 %265 to i64
%267 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 %266
%268 = load double, double* %267
%269 = fadd double %264, %268
%270 = load i32, i32* %71
%271 = sext i32 %270 to i64
%272 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 %271
%273 = load double, double* %272
%274 = fadd double %269, %273
%275 = fmul double 2.500000e-01, %274
%276 = load i32, i32* %71
%277 = sext i32 %276 to i64
%278 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 %277
store double %275, double* %278
%279 = load i32, i32* %71
%280 = sext i32 %279 to i64
%281 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 %280
%282 = load double, double* %281
%283 = load i32, i32* %71
%284 = sext i32 %283 to i64
%285 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 %284
%286 = load double, double* %285
%287 = fadd double %282, %286
%288 = load i32, i32* %71
%289 = sext i32 %288 to i64
%290 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 %289
%291 = load double, double* %290
%292 = fadd double %287, %291
%293 = load i32, i32* %71
%294 = sext i32 %293 to i64
%295 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 %294
%296 = load double, double* %295
%297 = fadd double %292, %296
%298 = fmul double 2.500000e-01, %297
%299 = load i32, i32* %71
%300 = sext i32 %299 to i64
%301 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 %300
store double %298, double* %301
%302 = load i32, i32* %71
%303 = sext i32 %302 to i64
%304 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 %303
%305 = load double, double* %304
%306 = load i32, i32* %71
%307 = sext i32 %306 to i64
%308 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 %307
%309 = load double, double* %308
%310 = fadd double %305, %309
%311 = load i32, i32* %71
%312 = sext i32 %311 to i64
%313 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 %312
%314 = load double, double* %313
%315 = fadd double %310, %314
%316 = load i32, i32* %71
%317 = sext i32 %316 to i64
%318 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 %317
%319 = load double, double* %318
%320 = fadd double %315, %319
%321 = fmul double 2.500000e-01, %320
%322 = load i32, i32* %71
%323 = sext i32 %322 to i64
%324 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 %323
store double %321, double* %324
%325 = load i32, i32* %71
%326 = sext i32 %325 to i64
%327 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 %326
%328 = load double, double* %327
%329 = load i32, i32* %71
%330 = sext i32 %329 to i64
%331 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 %330
%332 = load double, double* %331
%333 = fadd double %328, %332
%334 = load i32, i32* %71
%335 = sext i32 %334 to i64
%336 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 %335
%337 = load double, double* %336
%338 = fadd double %333, %337
%339 = load i32, i32* %71
%340 = sext i32 %339 to i64
%341 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 %340
%342 = load double, double* %341
%343 = fadd double %338, %342
%344 = fmul double 2.500000e-01, %343
%345 = load i32, i32* %71
%346 = sext i32 %345 to i64
%347 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 %346
store double %344, double* %347
%348 = load i32, i32* %71
%349 = sext i32 %348 to i64
%350 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 %349
%351 = load double, double* %350
%352 = load i32, i32* %71
%353 = sext i32 %352 to i64
%354 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 %353
%355 = load double, double* %354
%356 = fadd double %351, %355
%357 = load i32, i32* %71
%358 = sext i32 %357 to i64
%359 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 %358
%360 = load double, double* %359
%361 = fadd double %356, %360
%362 = load i32, i32* %71
%363 = sext i32 %362 to i64
%364 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 %363
%365 = load double, double* %364
%366 = fadd double %361, %365
%367 = fmul double 2.500000e-01, %366
%368 = load i32, i32* %71
%369 = sext i32 %368 to i64
%370 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 %369
store double %367, double* %370
%371 = load i32, i32* %71
%372 = sext i32 %371 to i64
%373 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 %372
%374 = load double, double* %373
%375 = load i32, i32* %71
%376 = sext i32 %375 to i64
%377 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 %376
%378 = load double, double* %377
%379 = fadd double %374, %378
%380 = fmul double 5.000000e-01, %379
%381 = load i32, i32* %71
%382 = sext i32 %381 to i64
%383 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 %382
store double %380, double* %383
%384 = load double*, double** %12
%385 = load i32, i32* %73
%386 = sext i32 %385 to i64
%387 = getelementptr inbounds double, double* %384, i64 %386
%388 = load i32, i32* %72
%389 = sext i32 %388 to i64
%390 = getelementptr inbounds double, double* %387, i64 %389
store double* %390, double** %82
%391 = load double*, double** %82
%392 = load double, double* %391
%393 = load i32, i32* %71
%394 = sext i32 %393 to i64
%395 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 %394
store double %392, double* %395
%396 = load double*, double** %82
%397 = getelementptr inbounds double, double* %396, i64 1
store double* %397, double** %82
%398 = load double*, double** %82
%399 = load double, double* %398
%400 = load i32, i32* %71
%401 = sext i32 %400 to i64
%402 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 %401
store double %399, double* %402
%403 = load i32, i32* %80
%404 = load double*, double** %82
%405 = sext i32 %403 to i64
%406 = getelementptr inbounds double, double* %404, i64 %405
store double* %406, double** %82
%407 = load double*, double** %82
%408 = load double, double* %407
%409 = load i32, i32* %71
%410 = sext i32 %409 to i64
%411 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 %410
store double %408, double* %411
%412 = load double*, double** %82
%413 = getelementptr inbounds double, double* %412, i64 -1
store double* %413, double** %82
%414 = load double*, double** %82
%415 = load double, double* %414
%416 = load i32, i32* %71
%417 = sext i32 %416 to i64
%418 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 %417
store double %415, double* %418
%419 = load i32, i32* %81
%420 = load double*, double** %82
%421 = sext i32 %419 to i64
%422 = getelementptr inbounds double, double* %420, i64 %421
store double* %422, double** %82
%423 = load double*, double** %82
%424 = load double, double* %423
%425 = load i32, i32* %71
%426 = sext i32 %425 to i64
%427 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 %426
store double %424, double* %427
%428 = load double*, double** %82
%429 = getelementptr inbounds double, double* %428, i64 1
store double* %429, double** %82
%430 = load double*, double** %82
%431 = load double, double* %430
%432 = load i32, i32* %71
%433 = sext i32 %432 to i64
%434 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 %433
store double %431, double* %434
%435 = load i32, i32* %80
%436 = load double*, double** %82
%437 = sext i32 %435 to i64
%438 = sub i64 0, %437
%439 = getelementptr inbounds double, double* %436, i64 %438
store double* %439, double** %82
%440 = load double*, double** %82
%441 = load double, double* %440
%442 = load i32, i32* %71
%443 = sext i32 %442 to i64
%444 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 %443
store double %441, double* %444
%445 = load double*, double** %82
%446 = getelementptr inbounds double, double* %445, i64 -1
store double* %446, double** %82
%447 = load double*, double** %82
%448 = load double, double* %447
%449 = load i32, i32* %71
%450 = sext i32 %449 to i64
%451 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 %450
store double %448, double* %451
%452 = load i32, i32* %71
%453 = sext i32 %452 to i64
%454 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 %453
%455 = load double, double* %454
%456 = load i32, i32* %71
%457 = sext i32 %456 to i64
%458 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 %457
%459 = load double, double* %458
%460 = fadd double %455, %459
%461 = load i32, i32* %71
%462 = sext i32 %461 to i64
%463 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 %462
%464 = load double, double* %463
%465 = fadd double %460, %464
%466 = load i32, i32* %71
%467 = sext i32 %466 to i64
%468 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 %467
%469 = load double, double* %468
%470 = fadd double %465, %469
%471 = fmul double 2.500000e-01, %470
%472 = load i32, i32* %71
%473 = sext i32 %472 to i64
%474 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 %473
store double %471, double* %474
%475 = load i32, i32* %71
%476 = sext i32 %475 to i64
%477 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 %476
%478 = load double, double* %477
%479 = load i32, i32* %71
%480 = sext i32 %479 to i64
%481 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 %480
%482 = load double, double* %481
%483 = fadd double %478, %482
%484 = load i32, i32* %71
%485 = sext i32 %484 to i64
%486 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 %485
%487 = load double, double* %486
%488 = fadd double %483, %487
%489 = load i32, i32* %71
%490 = sext i32 %489 to i64
%491 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 %490
%492 = load double, double* %491
%493 = fadd double %488, %492
%494 = fmul double 2.500000e-01, %493
%495 = load i32, i32* %71
%496 = sext i32 %495 to i64
%497 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 %496
store double %494, double* %497
%498 = load i32, i32* %71
%499 = sext i32 %498 to i64
%500 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 %499
%501 = load double, double* %500
%502 = load i32, i32* %71
%503 = sext i32 %502 to i64
%504 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 %503
%505 = load double, double* %504
%506 = fadd double %501, %505
%507 = load i32, i32* %71
%508 = sext i32 %507 to i64
%509 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 %508
%510 = load double, double* %509
%511 = fadd double %506, %510
%512 = load i32, i32* %71
%513 = sext i32 %512 to i64
%514 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 %513
%515 = load double, double* %514
%516 = fadd double %511, %515
%517 = fmul double 2.500000e-01, %516
%518 = load i32, i32* %71
%519 = sext i32 %518 to i64
%520 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 %519
store double %517, double* %520
%521 = load i32, i32* %71
%522 = sext i32 %521 to i64
%523 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 %522
%524 = load double, double* %523
%525 = load i32, i32* %71
%526 = sext i32 %525 to i64
%527 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 %526
%528 = load double, double* %527
%529 = fadd double %524, %528
%530 = load i32, i32* %71
%531 = sext i32 %530 to i64
%532 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 %531
%533 = load double, double* %532
%534 = fadd double %529, %533
%535 = load i32, i32* %71
%536 = sext i32 %535 to i64
%537 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 %536
%538 = load double, double* %537
%539 = fadd double %534, %538
%540 = fmul double 2.500000e-01, %539
%541 = load i32, i32* %71
%542 = sext i32 %541 to i64
%543 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 %542
store double %540, double* %543
%544 = load i32, i32* %71
%545 = sext i32 %544 to i64
%546 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 %545
%547 = load double, double* %546
%548 = load i32, i32* %71
%549 = sext i32 %548 to i64
%550 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 %549
%551 = load double, double* %550
%552 = fadd double %547, %551
%553 = load i32, i32* %71
%554 = sext i32 %553 to i64
%555 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 %554
%556 = load double, double* %555
%557 = fadd double %552, %556
%558 = load i32, i32* %71
%559 = sext i32 %558 to i64
%560 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 %559
%561 = load double, double* %560
%562 = fadd double %557, %561
%563 = fmul double 2.500000e-01, %562
%564 = load i32, i32* %71
%565 = sext i32 %564 to i64
%566 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 %565
store double %563, double* %566
%567 = load i32, i32* %71
%568 = sext i32 %567 to i64
%569 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 %568
%570 = load double, double* %569
%571 = load i32, i32* %71
%572 = sext i32 %571 to i64
%573 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 %572
%574 = load double, double* %573
%575 = fadd double %570, %574
%576 = load i32, i32* %71
%577 = sext i32 %576 to i64
%578 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 %577
%579 = load double, double* %578
%580 = fadd double %575, %579
%581 = load i32, i32* %71
%582 = sext i32 %581 to i64
%583 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 %582
%584 = load double, double* %583
%585 = fadd double %580, %584
%586 = fmul double 2.500000e-01, %585
%587 = load i32, i32* %71
%588 = sext i32 %587 to i64
%589 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 %588
store double %586, double* %589
%590 = load i32, i32* %71
%591 = sext i32 %590 to i64
%592 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 %591
%593 = load double, double* %592
%594 = load i32, i32* %71
%595 = sext i32 %594 to i64
%596 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 %595
%597 = load double, double* %596
%598 = fadd double %593, %597
%599 = fmul double 5.000000e-01, %598
%600 = load i32, i32* %71
%601 = sext i32 %600 to i64
%602 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 %601
store double %599, double* %602
%603 = load i32, i32* %78
%604 = load i32, i32* %72
%605 = add nsw i32 %604, %603
store i32 %605, i32* %72
%606 = load i32, i32* %71
%607 = sext i32 %606 to i64
%608 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 %607
store double 0.000000e+00, double* %608
%609 = load i32, i32* %71
%610 = sext i32 %609 to i64
%611 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 %610
store double 0.000000e+00, double* %611
%612 = load i32, i32* %71
%613 = sext i32 %612 to i64
%614 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 %613
store double 0.000000e+00, double* %614
%615 = load i32, i32* %71
%616 = sext i32 %615 to i64
%617 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 %616
store double 0.000000e+00, double* %617
%618 = load i32, i32* %71
%619 = sext i32 %618 to i64
%620 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 %619
store double 0.000000e+00, double* %620
%621 = load i32, i32* %71
%622 = sext i32 %621 to i64
%623 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 %622
store double 0.000000e+00, double* %623
%624 = load i32, i32* %71
%625 = sext i32 %624 to i64
%626 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 %625
store double 0.000000e+00, double* %626
%627 = load i32, i32* %71
%628 = sext i32 %627 to i64
%629 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 %628
store double 0.000000e+00, double* %629
%630 = load i32, i32* %71
%631 = sext i32 %630 to i64
%632 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 %631
store double 0.000000e+00, double* %632
%633 = load i32, i32* %71
%634 = sext i32 %633 to i64
%635 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 %634
store double 0.000000e+00, double* %635
%636 = load i32, i32* %71
%637 = sext i32 %636 to i64
%638 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 %637
store double 0.000000e+00, double* %638
%639 = load i32, i32* %71
%640 = sext i32 %639 to i64
%641 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 %640
store double 0.000000e+00, double* %641
%642 = load i32, i32* %71
%643 = sext i32 %642 to i64
%644 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 %643
store double 0.000000e+00, double* %644
%645 = load i32, i32* %71
%646 = sext i32 %645 to i64
%647 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 %646
store double 0.000000e+00, double* %647
%648 = load i32, i32* %71
%649 = sext i32 %648 to i64
%650 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %649
store double 0.000000e+00, double* %650
br label %651
651: ; preds = %164
%652 = load i32, i32* %71
%653 = add nsw i32 %652, 1
store i32 %653, i32* %71
br label %161
654: ; preds = %161
%655 = load double, double* %76
%656 = fcmp ogt double %655, 0.000000e+00
br i1 %656, label %657, label %994
657: ; preds = %654
%658 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%659 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%660 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%661 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%662 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%663 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%664 = load double*, double** %13
%665 = getelementptr inbounds double, double* %664, i64 0
%666 = load double, double* %665
%667 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%668 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%669 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%670 = load double, double* %76
%671 = call i32 @d2SarTriangle3D(double* %658, double* %659, double* %660, double* %661, double* %662, double* %663, double %666, double* %667, double* %668, double* %669, double %670)
%672 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%673 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%674 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%675 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%676 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%677 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%678 = load double*, double** %13
%679 = getelementptr inbounds double, double* %678, i64 1
%680 = load double, double* %679
%681 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%682 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%683 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%684 = load double, double* %76
%685 = call i32 @d2SarTriangle3D(double* %672, double* %673, double* %674, double* %675, double* %676, double* %677, double %680, double* %681, double* %682, double* %683, double %684)
%686 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%687 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%688 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%689 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%690 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%691 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%692 = load double*, double** %13
%693 = getelementptr inbounds double, double* %692, i64 2
%694 = load double, double* %693
%695 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%696 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%697 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%698 = load double, double* %76
%699 = call i32 @d2SarTriangle3D(double* %686, double* %687, double* %688, double* %689, double* %690, double* %691, double %694, double* %695, double* %696, double* %697, double %698)
%700 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%701 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%702 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%703 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%704 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%705 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%706 = load double*, double** %13
%707 = getelementptr inbounds double, double* %706, i64 3
%708 = load double, double* %707
%709 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%710 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%711 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%712 = load double, double* %76
%713 = call i32 @d2SarTriangle3D(double* %700, double* %701, double* %702, double* %703, double* %704, double* %705, double %708, double* %709, double* %710, double* %711, double %712)
%714 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%715 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%716 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%717 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%718 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%719 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%720 = load double*, double** %13
%721 = getelementptr inbounds double, double* %720, i64 4
%722 = load double, double* %721
%723 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%724 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%725 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%726 = load double, double* %76
%727 = call i32 @d2SarTriangle3D(double* %714, double* %715, double* %716, double* %717, double* %718, double* %719, double %722, double* %723, double* %724, double* %725, double %726)
%728 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%729 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%730 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%731 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%732 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%733 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%734 = load double*, double** %13
%735 = getelementptr inbounds double, double* %734, i64 5
%736 = load double, double* %735
%737 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%738 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%739 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%740 = load double, double* %76
%741 = call i32 @d2SarTriangle3D(double* %728, double* %729, double* %730, double* %731, double* %732, double* %733, double %736, double* %737, double* %738, double* %739, double %740)
%742 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%743 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%744 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%745 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%746 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%747 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%748 = load double*, double** %13
%749 = getelementptr inbounds double, double* %748, i64 6
%750 = load double, double* %749
%751 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%752 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%753 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%754 = load double, double* %76
%755 = call i32 @d2SarTriangle3D(double* %742, double* %743, double* %744, double* %745, double* %746, double* %747, double %750, double* %751, double* %752, double* %753, double %754)
%756 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%757 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%758 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%759 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%760 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%761 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%762 = load double*, double** %13
%763 = getelementptr inbounds double, double* %762, i64 7
%764 = load double, double* %763
%765 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%766 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%767 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%768 = load double, double* %76
%769 = call i32 @d2SarTriangle3D(double* %756, double* %757, double* %758, double* %759, double* %760, double* %761, double %764, double* %765, double* %766, double* %767, double %768)
%770 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%771 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%772 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%773 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%774 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%775 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%776 = load double*, double** %13
%777 = getelementptr inbounds double, double* %776, i64 8
%778 = load double, double* %777
%779 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%780 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%781 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%782 = load double, double* %76
%783 = call i32 @d2SarTriangle3D(double* %770, double* %771, double* %772, double* %773, double* %774, double* %775, double %778, double* %779, double* %780, double* %781, double %782)
%784 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%785 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%786 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%787 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%788 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%789 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%790 = load double*, double** %13
%791 = getelementptr inbounds double, double* %790, i64 9
%792 = load double, double* %791
%793 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%794 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%795 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%796 = load double, double* %76
%797 = call i32 @d2SarTriangle3D(double* %784, double* %785, double* %786, double* %787, double* %788, double* %789, double %792, double* %793, double* %794, double* %795, double %796)
%798 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%799 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%800 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%801 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%802 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%803 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%804 = load double*, double** %13
%805 = getelementptr inbounds double, double* %804, i64 10
%806 = load double, double* %805
%807 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%808 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%809 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%810 = load double, double* %76
%811 = call i32 @d2SarTriangle3D(double* %798, double* %799, double* %800, double* %801, double* %802, double* %803, double %806, double* %807, double* %808, double* %809, double %810)
%812 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%813 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%814 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%815 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%816 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%817 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%818 = load double*, double** %13
%819 = getelementptr inbounds double, double* %818, i64 11
%820 = load double, double* %819
%821 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%822 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%823 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%824 = load double, double* %76
%825 = call i32 @d2SarTriangle3D(double* %812, double* %813, double* %814, double* %815, double* %816, double* %817, double %820, double* %821, double* %822, double* %823, double %824)
%826 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%827 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%828 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%829 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%830 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%831 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%832 = load double*, double** %13
%833 = getelementptr inbounds double, double* %832, i64 12
%834 = load double, double* %833
%835 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%836 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%837 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%838 = load double, double* %76
%839 = call i32 @d2SarTriangle3D(double* %826, double* %827, double* %828, double* %829, double* %830, double* %831, double %834, double* %835, double* %836, double* %837, double %838)
%840 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%841 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%842 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%843 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%844 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%845 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%846 = load double*, double** %13
%847 = getelementptr inbounds double, double* %846, i64 13
%848 = load double, double* %847
%849 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%850 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%851 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%852 = load double, double* %76
%853 = call i32 @d2SarTriangle3D(double* %840, double* %841, double* %842, double* %843, double* %844, double* %845, double %848, double* %849, double* %850, double* %851, double %852)
%854 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%855 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%856 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%857 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%858 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%859 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%860 = load double*, double** %13
%861 = getelementptr inbounds double, double* %860, i64 14
%862 = load double, double* %861
%863 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%864 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%865 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%866 = load double, double* %76
%867 = call i32 @d2SarTriangle3D(double* %854, double* %855, double* %856, double* %857, double* %858, double* %859, double %862, double* %863, double* %864, double* %865, double %866)
%868 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%869 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%870 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%871 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%872 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%873 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%874 = load double*, double** %13
%875 = getelementptr inbounds double, double* %874, i64 15
%876 = load double, double* %875
%877 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%878 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%879 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%880 = load double, double* %76
%881 = call i32 @d2SarTriangle3D(double* %868, double* %869, double* %870, double* %871, double* %872, double* %873, double %876, double* %877, double* %878, double* %879, double %880)
%882 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%883 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%884 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%885 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%886 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%887 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%888 = load double*, double** %13
%889 = getelementptr inbounds double, double* %888, i64 16
%890 = load double, double* %889
%891 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%892 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%893 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%894 = load double, double* %76
%895 = call i32 @d2SarTriangle3D(double* %882, double* %883, double* %884, double* %885, double* %886, double* %887, double %890, double* %891, double* %892, double* %893, double %894)
%896 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%897 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%898 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%899 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%900 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%901 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%902 = load double*, double** %13
%903 = getelementptr inbounds double, double* %902, i64 17
%904 = load double, double* %903
%905 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%906 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%907 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%908 = load double, double* %76
%909 = call i32 @d2SarTriangle3D(double* %896, double* %897, double* %898, double* %899, double* %900, double* %901, double %904, double* %905, double* %906, double* %907, double %908)
%910 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%911 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%912 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%913 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%914 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%915 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%916 = load double*, double** %13
%917 = getelementptr inbounds double, double* %916, i64 18
%918 = load double, double* %917
%919 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%920 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%921 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%922 = load double, double* %76
%923 = call i32 @d2SarTriangle3D(double* %910, double* %911, double* %912, double* %913, double* %914, double* %915, double %918, double* %919, double* %920, double* %921, double %922)
%924 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%925 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%926 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%927 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%928 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%929 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%930 = load double*, double** %13
%931 = getelementptr inbounds double, double* %930, i64 19
%932 = load double, double* %931
%933 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%934 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%935 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%936 = load double, double* %76
%937 = call i32 @d2SarTriangle3D(double* %924, double* %925, double* %926, double* %927, double* %928, double* %929, double %932, double* %933, double* %934, double* %935, double %936)
%938 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%939 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%940 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%941 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%942 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%943 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%944 = load double*, double** %13
%945 = getelementptr inbounds double, double* %944, i64 20
%946 = load double, double* %945
%947 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%948 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%949 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%950 = load double, double* %76
%951 = call i32 @d2SarTriangle3D(double* %938, double* %939, double* %940, double* %941, double* %942, double* %943, double %946, double* %947, double* %948, double* %949, double %950)
%952 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%953 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%954 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%955 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%956 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%957 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%958 = load double*, double** %13
%959 = getelementptr inbounds double, double* %958, i64 21
%960 = load double, double* %959
%961 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%962 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%963 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%964 = load double, double* %76
%965 = call i32 @d2SarTriangle3D(double* %952, double* %953, double* %954, double* %955, double* %956, double* %957, double %960, double* %961, double* %962, double* %963, double %964)
%966 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%967 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%968 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%969 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%970 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%971 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%972 = load double*, double** %13
%973 = getelementptr inbounds double, double* %972, i64 22
%974 = load double, double* %973
%975 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%976 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%977 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%978 = load double, double* %76
%979 = call i32 @d2SarTriangle3D(double* %966, double* %967, double* %968, double* %969, double* %970, double* %971, double %974, double* %975, double* %976, double* %977, double %978)
%980 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%981 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%982 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%983 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%984 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%985 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%986 = load double*, double** %13
%987 = getelementptr inbounds double, double* %986, i64 23
%988 = load double, double* %987
%989 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%990 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%991 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%992 = load double, double* %76
%993 = call i32 @d2SarTriangle3D(double* %980, double* %981, double* %982, double* %983, double* %984, double* %985, double %988, double* %989, double* %990, double* %991, double %992)
br label %994
994: ; preds = %657, %654
%995 = load double, double* %77
%996 = fcmp ogt double %995, 0.000000e+00
br i1 %996, label %997, label %1406
997: ; preds = %994
%998 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%999 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%1000 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%1001 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1002 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%1003 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%1004 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%1005 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1006 = load double*, double** %14
%1007 = getelementptr inbounds double, double* %1006, i64 0
%1008 = load double, double* %1007
%1009 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%1010 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%1011 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%1012 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1013 = load double, double* %77
%1014 = call i32 @d2SvolTetra3D(double* %998, double* %999, double* %1000, double* %1001, double* %1002, double* %1003, double* %1004, double* %1005, double %1008, double* %1009, double* %1010, double* %1011, double* %1012, double -1.000000e+00, double %1013)
%1015 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%1016 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%1017 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%1018 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1019 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%1020 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%1021 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%1022 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1023 = load double*, double** %14
%1024 = getelementptr inbounds double, double* %1023, i64 1
%1025 = load double, double* %1024
%1026 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%1027 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%1028 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%1029 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1030 = load double, double* %77
%1031 = call i32 @d2SvolTetra3D(double* %1015, double* %1016, double* %1017, double* %1018, double* %1019, double* %1020, double* %1021, double* %1022, double %1025, double* %1026, double* %1027, double* %1028, double* %1029, double -1.000000e+00, double %1030)
%1032 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%1033 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%1034 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%1035 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1036 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%1037 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%1038 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%1039 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1040 = load double*, double** %14
%1041 = getelementptr inbounds double, double* %1040, i64 2
%1042 = load double, double* %1041
%1043 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%1044 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%1045 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%1046 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1047 = load double, double* %77
%1048 = call i32 @d2SvolTetra3D(double* %1032, double* %1033, double* %1034, double* %1035, double* %1036, double* %1037, double* %1038, double* %1039, double %1042, double* %1043, double* %1044, double* %1045, double* %1046, double -1.000000e+00, double %1047)
%1049 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%1050 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%1051 = getelementptr inbounds [3 x double], [3 x double]* %30, i64 0, i64 0
%1052 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1053 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%1054 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%1055 = getelementptr inbounds [3 x double], [3 x double]* %45, i64 0, i64 0
%1056 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1057 = load double*, double** %14
%1058 = getelementptr inbounds double, double* %1057, i64 3
%1059 = load double, double* %1058
%1060 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%1061 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%1062 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 0
%1063 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1064 = load double, double* %77
%1065 = call i32 @d2SvolTetra3D(double* %1049, double* %1050, double* %1051, double* %1052, double* %1053, double* %1054, double* %1055, double* %1056, double %1059, double* %1060, double* %1061, double* %1062, double* %1063, double -1.000000e+00, double %1064)
%1066 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%1067 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%1068 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%1069 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1070 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%1071 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%1072 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%1073 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1074 = load double*, double** %14
%1075 = getelementptr inbounds double, double* %1074, i64 4
%1076 = load double, double* %1075
%1077 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%1078 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%1079 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%1080 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1081 = load double, double* %77
%1082 = call i32 @d2SvolTetra3D(double* %1066, double* %1067, double* %1068, double* %1069, double* %1070, double* %1071, double* %1072, double* %1073, double %1076, double* %1077, double* %1078, double* %1079, double* %1080, double 1.000000e+00, double %1081)
%1083 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%1084 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%1085 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%1086 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1087 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%1088 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%1089 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%1090 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1091 = load double*, double** %14
%1092 = getelementptr inbounds double, double* %1091, i64 5
%1093 = load double, double* %1092
%1094 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%1095 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%1096 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%1097 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1098 = load double, double* %77
%1099 = call i32 @d2SvolTetra3D(double* %1083, double* %1084, double* %1085, double* %1086, double* %1087, double* %1088, double* %1089, double* %1090, double %1093, double* %1094, double* %1095, double* %1096, double* %1097, double 1.000000e+00, double %1098)
%1100 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%1101 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%1102 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%1103 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1104 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%1105 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%1106 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%1107 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1108 = load double*, double** %14
%1109 = getelementptr inbounds double, double* %1108, i64 6
%1110 = load double, double* %1109
%1111 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%1112 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%1113 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%1114 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1115 = load double, double* %77
%1116 = call i32 @d2SvolTetra3D(double* %1100, double* %1101, double* %1102, double* %1103, double* %1104, double* %1105, double* %1106, double* %1107, double %1110, double* %1111, double* %1112, double* %1113, double* %1114, double 1.000000e+00, double %1115)
%1117 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%1118 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%1119 = getelementptr inbounds [3 x double], [3 x double]* %31, i64 0, i64 0
%1120 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1121 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%1122 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%1123 = getelementptr inbounds [3 x double], [3 x double]* %46, i64 0, i64 0
%1124 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1125 = load double*, double** %14
%1126 = getelementptr inbounds double, double* %1125, i64 7
%1127 = load double, double* %1126
%1128 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%1129 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%1130 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 0
%1131 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1132 = load double, double* %77
%1133 = call i32 @d2SvolTetra3D(double* %1117, double* %1118, double* %1119, double* %1120, double* %1121, double* %1122, double* %1123, double* %1124, double %1127, double* %1128, double* %1129, double* %1130, double* %1131, double 1.000000e+00, double %1132)
%1134 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%1135 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%1136 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%1137 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1138 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%1139 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%1140 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%1141 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1142 = load double*, double** %14
%1143 = getelementptr inbounds double, double* %1142, i64 8
%1144 = load double, double* %1143
%1145 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%1146 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%1147 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%1148 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1149 = load double, double* %77
%1150 = call i32 @d2SvolTetra3D(double* %1134, double* %1135, double* %1136, double* %1137, double* %1138, double* %1139, double* %1140, double* %1141, double %1144, double* %1145, double* %1146, double* %1147, double* %1148, double 1.000000e+00, double %1149)
%1151 = getelementptr inbounds [3 x double], [3 x double]* %23, i64 0, i64 0
%1152 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%1153 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%1154 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1155 = getelementptr inbounds [3 x double], [3 x double]* %38, i64 0, i64 0
%1156 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%1157 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%1158 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1159 = load double*, double** %14
%1160 = getelementptr inbounds double, double* %1159, i64 9
%1161 = load double, double* %1160
%1162 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 0
%1163 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%1164 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%1165 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1166 = load double, double* %77
%1167 = call i32 @d2SvolTetra3D(double* %1151, double* %1152, double* %1153, double* %1154, double* %1155, double* %1156, double* %1157, double* %1158, double %1161, double* %1162, double* %1163, double* %1164, double* %1165, double 1.000000e+00, double %1166)
%1168 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%1169 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%1170 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%1171 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1172 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%1173 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%1174 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%1175 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1176 = load double*, double** %14
%1177 = getelementptr inbounds double, double* %1176, i64 10
%1178 = load double, double* %1177
%1179 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%1180 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%1181 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%1182 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1183 = load double, double* %77
%1184 = call i32 @d2SvolTetra3D(double* %1168, double* %1169, double* %1170, double* %1171, double* %1172, double* %1173, double* %1174, double* %1175, double %1178, double* %1179, double* %1180, double* %1181, double* %1182, double 1.000000e+00, double %1183)
%1185 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%1186 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%1187 = getelementptr inbounds [3 x double], [3 x double]* %32, i64 0, i64 0
%1188 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1189 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%1190 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%1191 = getelementptr inbounds [3 x double], [3 x double]* %47, i64 0, i64 0
%1192 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1193 = load double*, double** %14
%1194 = getelementptr inbounds double, double* %1193, i64 11
%1195 = load double, double* %1194
%1196 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%1197 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%1198 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 0
%1199 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1200 = load double, double* %77
%1201 = call i32 @d2SvolTetra3D(double* %1185, double* %1186, double* %1187, double* %1188, double* %1189, double* %1190, double* %1191, double* %1192, double %1195, double* %1196, double* %1197, double* %1198, double* %1199, double 1.000000e+00, double %1200)
%1202 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%1203 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%1204 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%1205 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1206 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%1207 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%1208 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%1209 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1210 = load double*, double** %14
%1211 = getelementptr inbounds double, double* %1210, i64 12
%1212 = load double, double* %1211
%1213 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%1214 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%1215 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%1216 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1217 = load double, double* %77
%1218 = call i32 @d2SvolTetra3D(double* %1202, double* %1203, double* %1204, double* %1205, double* %1206, double* %1207, double* %1208, double* %1209, double %1212, double* %1213, double* %1214, double* %1215, double* %1216, double 1.000000e+00, double %1217)
%1219 = getelementptr inbounds [3 x double], [3 x double]* %22, i64 0, i64 0
%1220 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%1221 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%1222 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1223 = getelementptr inbounds [3 x double], [3 x double]* %37, i64 0, i64 0
%1224 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%1225 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%1226 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1227 = load double*, double** %14
%1228 = getelementptr inbounds double, double* %1227, i64 13
%1229 = load double, double* %1228
%1230 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 0
%1231 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%1232 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%1233 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1234 = load double, double* %77
%1235 = call i32 @d2SvolTetra3D(double* %1219, double* %1220, double* %1221, double* %1222, double* %1223, double* %1224, double* %1225, double* %1226, double %1229, double* %1230, double* %1231, double* %1232, double* %1233, double 1.000000e+00, double %1234)
%1236 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%1237 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%1238 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%1239 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1240 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%1241 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%1242 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%1243 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1244 = load double*, double** %14
%1245 = getelementptr inbounds double, double* %1244, i64 14
%1246 = load double, double* %1245
%1247 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%1248 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%1249 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%1250 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1251 = load double, double* %77
%1252 = call i32 @d2SvolTetra3D(double* %1236, double* %1237, double* %1238, double* %1239, double* %1240, double* %1241, double* %1242, double* %1243, double %1246, double* %1247, double* %1248, double* %1249, double* %1250, double 1.000000e+00, double %1251)
%1253 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%1254 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%1255 = getelementptr inbounds [3 x double], [3 x double]* %33, i64 0, i64 0
%1256 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1257 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%1258 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%1259 = getelementptr inbounds [3 x double], [3 x double]* %48, i64 0, i64 0
%1260 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1261 = load double*, double** %14
%1262 = getelementptr inbounds double, double* %1261, i64 15
%1263 = load double, double* %1262
%1264 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%1265 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%1266 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 0
%1267 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1268 = load double, double* %77
%1269 = call i32 @d2SvolTetra3D(double* %1253, double* %1254, double* %1255, double* %1256, double* %1257, double* %1258, double* %1259, double* %1260, double %1263, double* %1264, double* %1265, double* %1266, double* %1267, double 1.000000e+00, double %1268)
%1270 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%1271 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%1272 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%1273 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1274 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%1275 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%1276 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%1277 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1278 = load double*, double** %14
%1279 = getelementptr inbounds double, double* %1278, i64 16
%1280 = load double, double* %1279
%1281 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%1282 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%1283 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%1284 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1285 = load double, double* %77
%1286 = call i32 @d2SvolTetra3D(double* %1270, double* %1271, double* %1272, double* %1273, double* %1274, double* %1275, double* %1276, double* %1277, double %1280, double* %1281, double* %1282, double* %1283, double* %1284, double 1.000000e+00, double %1285)
%1287 = getelementptr inbounds [3 x double], [3 x double]* %24, i64 0, i64 0
%1288 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%1289 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%1290 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1291 = getelementptr inbounds [3 x double], [3 x double]* %39, i64 0, i64 0
%1292 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%1293 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%1294 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1295 = load double*, double** %14
%1296 = getelementptr inbounds double, double* %1295, i64 17
%1297 = load double, double* %1296
%1298 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 0
%1299 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%1300 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%1301 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1302 = load double, double* %77
%1303 = call i32 @d2SvolTetra3D(double* %1287, double* %1288, double* %1289, double* %1290, double* %1291, double* %1292, double* %1293, double* %1294, double %1297, double* %1298, double* %1299, double* %1300, double* %1301, double 1.000000e+00, double %1302)
%1304 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%1305 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%1306 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%1307 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1308 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%1309 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%1310 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%1311 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1312 = load double*, double** %14
%1313 = getelementptr inbounds double, double* %1312, i64 18
%1314 = load double, double* %1313
%1315 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%1316 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%1317 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%1318 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1319 = load double, double* %77
%1320 = call i32 @d2SvolTetra3D(double* %1304, double* %1305, double* %1306, double* %1307, double* %1308, double* %1309, double* %1310, double* %1311, double %1314, double* %1315, double* %1316, double* %1317, double* %1318, double 1.000000e+00, double %1319)
%1321 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%1322 = getelementptr inbounds [3 x double], [3 x double]* %25, i64 0, i64 0
%1323 = getelementptr inbounds [3 x double], [3 x double]* %34, i64 0, i64 0
%1324 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1325 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%1326 = getelementptr inbounds [3 x double], [3 x double]* %40, i64 0, i64 0
%1327 = getelementptr inbounds [3 x double], [3 x double]* %49, i64 0, i64 0
%1328 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1329 = load double*, double** %14
%1330 = getelementptr inbounds double, double* %1329, i64 19
%1331 = load double, double* %1330
%1332 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%1333 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 0
%1334 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 0
%1335 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1336 = load double, double* %77
%1337 = call i32 @d2SvolTetra3D(double* %1321, double* %1322, double* %1323, double* %1324, double* %1325, double* %1326, double* %1327, double* %1328, double %1331, double* %1332, double* %1333, double* %1334, double* %1335, double 1.000000e+00, double %1336)
%1338 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%1339 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%1340 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%1341 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1342 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%1343 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%1344 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%1345 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1346 = load double*, double** %14
%1347 = getelementptr inbounds double, double* %1346, i64 20
%1348 = load double, double* %1347
%1349 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%1350 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%1351 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%1352 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1353 = load double, double* %77
%1354 = call i32 @d2SvolTetra3D(double* %1338, double* %1339, double* %1340, double* %1341, double* %1342, double* %1343, double* %1344, double* %1345, double %1348, double* %1349, double* %1350, double* %1351, double* %1352, double 1.000000e+00, double %1353)
%1355 = getelementptr inbounds [3 x double], [3 x double]* %27, i64 0, i64 0
%1356 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%1357 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%1358 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1359 = getelementptr inbounds [3 x double], [3 x double]* %42, i64 0, i64 0
%1360 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%1361 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%1362 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1363 = load double*, double** %14
%1364 = getelementptr inbounds double, double* %1363, i64 21
%1365 = load double, double* %1364
%1366 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 0
%1367 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%1368 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%1369 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1370 = load double, double* %77
%1371 = call i32 @d2SvolTetra3D(double* %1355, double* %1356, double* %1357, double* %1358, double* %1359, double* %1360, double* %1361, double* %1362, double %1365, double* %1366, double* %1367, double* %1368, double* %1369, double 1.000000e+00, double %1370)
%1372 = getelementptr inbounds [3 x double], [3 x double]* %29, i64 0, i64 0
%1373 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%1374 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%1375 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1376 = getelementptr inbounds [3 x double], [3 x double]* %44, i64 0, i64 0
%1377 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%1378 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%1379 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1380 = load double*, double** %14
%1381 = getelementptr inbounds double, double* %1380, i64 22
%1382 = load double, double* %1381
%1383 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 0
%1384 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%1385 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%1386 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1387 = load double, double* %77
%1388 = call i32 @d2SvolTetra3D(double* %1372, double* %1373, double* %1374, double* %1375, double* %1376, double* %1377, double* %1378, double* %1379, double %1382, double* %1383, double* %1384, double* %1385, double* %1386, double 1.000000e+00, double %1387)
%1389 = getelementptr inbounds [3 x double], [3 x double]* %28, i64 0, i64 0
%1390 = getelementptr inbounds [3 x double], [3 x double]* %26, i64 0, i64 0
%1391 = getelementptr inbounds [3 x double], [3 x double]* %35, i64 0, i64 0
%1392 = getelementptr inbounds [3 x double], [3 x double]* %36, i64 0, i64 0
%1393 = getelementptr inbounds [3 x double], [3 x double]* %43, i64 0, i64 0
%1394 = getelementptr inbounds [3 x double], [3 x double]* %41, i64 0, i64 0
%1395 = getelementptr inbounds [3 x double], [3 x double]* %50, i64 0, i64 0
%1396 = getelementptr inbounds [3 x double], [3 x double]* %51, i64 0, i64 0
%1397 = load double*, double** %14
%1398 = getelementptr inbounds double, double* %1397, i64 23
%1399 = load double, double* %1398
%1400 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 0
%1401 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 0
%1402 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 0
%1403 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 0
%1404 = load double, double* %77
%1405 = call i32 @d2SvolTetra3D(double* %1389, double* %1390, double* %1391, double* %1392, double* %1393, double* %1394, double* %1395, double* %1396, double %1399, double* %1400, double* %1401, double* %1402, double* %1403, double 1.000000e+00, double %1404)
br label %1406
1406: ; preds = %997, %994
store i32 0, i32* %72
store i32 0, i32* %71
br label %1407
1407: ; preds = %1693, %1406
%1408 = load i32, i32* %71
%1409 = icmp slt i32 %1408, 3
br i1 %1409, label %1410, label %1696
1410: ; preds = %1407
%1411 = load i32, i32* %71
%1412 = sext i32 %1411 to i64
%1413 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 %1412
%1414 = load double, double* %1413
%1415 = fmul double %1414, 2.500000e-01
store double %1415, double* %1413
%1416 = load i32, i32* %71
%1417 = sext i32 %1416 to i64
%1418 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 %1417
%1419 = load double, double* %1418
%1420 = fmul double %1419, 2.500000e-01
store double %1420, double* %1418
%1421 = load i32, i32* %71
%1422 = sext i32 %1421 to i64
%1423 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 %1422
%1424 = load double, double* %1423
%1425 = fmul double %1424, 2.500000e-01
store double %1425, double* %1423
%1426 = load i32, i32* %71
%1427 = sext i32 %1426 to i64
%1428 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 %1427
%1429 = load double, double* %1428
%1430 = fmul double %1429, 2.500000e-01
store double %1430, double* %1428
%1431 = load i32, i32* %71
%1432 = sext i32 %1431 to i64
%1433 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 %1432
%1434 = load double, double* %1433
%1435 = fmul double %1434, 2.500000e-01
store double %1435, double* %1433
%1436 = load i32, i32* %71
%1437 = sext i32 %1436 to i64
%1438 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 %1437
%1439 = load double, double* %1438
%1440 = fmul double %1439, 2.500000e-01
store double %1440, double* %1438
%1441 = load i32, i32* %71
%1442 = sext i32 %1441 to i64
%1443 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1442
%1444 = load double, double* %1443
%1445 = fmul double %1444, 1.250000e-01
store double %1445, double* %1443
%1446 = load double*, double** %10
%1447 = load i32, i32* %73
%1448 = sext i32 %1447 to i64
%1449 = getelementptr inbounds double, double* %1446, i64 %1448
%1450 = load i32, i32* %72
%1451 = sext i32 %1450 to i64
%1452 = getelementptr inbounds double, double* %1449, i64 %1451
store double* %1452, double** %83
%1453 = load i32, i32* %71
%1454 = sext i32 %1453 to i64
%1455 = getelementptr inbounds [3 x double], [3 x double]* %52, i64 0, i64 %1454
%1456 = load double, double* %1455
%1457 = load i32, i32* %71
%1458 = sext i32 %1457 to i64
%1459 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 %1458
%1460 = load double, double* %1459
%1461 = fadd double %1456, %1460
%1462 = load i32, i32* %71
%1463 = sext i32 %1462 to i64
%1464 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 %1463
%1465 = load double, double* %1464
%1466 = fadd double %1461, %1465
%1467 = load i32, i32* %71
%1468 = sext i32 %1467 to i64
%1469 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 %1468
%1470 = load double, double* %1469
%1471 = fadd double %1466, %1470
%1472 = load i32, i32* %71
%1473 = sext i32 %1472 to i64
%1474 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1473
%1475 = load double, double* %1474
%1476 = fadd double %1471, %1475
%1477 = load double*, double** %83
%1478 = load double, double* %1477
%1479 = fadd double %1478, %1476
store double %1479, double* %1477
%1480 = load double*, double** %83
%1481 = getelementptr inbounds double, double* %1480, i64 1
store double* %1481, double** %83
%1482 = load i32, i32* %71
%1483 = sext i32 %1482 to i64
%1484 = getelementptr inbounds [3 x double], [3 x double]* %53, i64 0, i64 %1483
%1485 = load double, double* %1484
%1486 = load i32, i32* %71
%1487 = sext i32 %1486 to i64
%1488 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 %1487
%1489 = load double, double* %1488
%1490 = fadd double %1485, %1489
%1491 = load i32, i32* %71
%1492 = sext i32 %1491 to i64
%1493 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 %1492
%1494 = load double, double* %1493
%1495 = fadd double %1490, %1494
%1496 = load i32, i32* %71
%1497 = sext i32 %1496 to i64
%1498 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 %1497
%1499 = load double, double* %1498
%1500 = fadd double %1495, %1499
%1501 = load i32, i32* %71
%1502 = sext i32 %1501 to i64
%1503 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1502
%1504 = load double, double* %1503
%1505 = fadd double %1500, %1504
%1506 = load double*, double** %83
%1507 = load double, double* %1506
%1508 = fadd double %1507, %1505
store double %1508, double* %1506
%1509 = load i32, i32* %80
%1510 = load double*, double** %83
%1511 = sext i32 %1509 to i64
%1512 = getelementptr inbounds double, double* %1510, i64 %1511
store double* %1512, double** %83
%1513 = load i32, i32* %71
%1514 = sext i32 %1513 to i64
%1515 = getelementptr inbounds [3 x double], [3 x double]* %55, i64 0, i64 %1514
%1516 = load double, double* %1515
%1517 = load i32, i32* %71
%1518 = sext i32 %1517 to i64
%1519 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 %1518
%1520 = load double, double* %1519
%1521 = fadd double %1516, %1520
%1522 = load i32, i32* %71
%1523 = sext i32 %1522 to i64
%1524 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 %1523
%1525 = load double, double* %1524
%1526 = fadd double %1521, %1525
%1527 = load i32, i32* %71
%1528 = sext i32 %1527 to i64
%1529 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 %1528
%1530 = load double, double* %1529
%1531 = fadd double %1526, %1530
%1532 = load i32, i32* %71
%1533 = sext i32 %1532 to i64
%1534 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1533
%1535 = load double, double* %1534
%1536 = fadd double %1531, %1535
%1537 = load double*, double** %83
%1538 = load double, double* %1537
%1539 = fadd double %1538, %1536
store double %1539, double* %1537
%1540 = load double*, double** %83
%1541 = getelementptr inbounds double, double* %1540, i64 -1
store double* %1541, double** %83
%1542 = load i32, i32* %71
%1543 = sext i32 %1542 to i64
%1544 = getelementptr inbounds [3 x double], [3 x double]* %54, i64 0, i64 %1543
%1545 = load double, double* %1544
%1546 = load i32, i32* %71
%1547 = sext i32 %1546 to i64
%1548 = getelementptr inbounds [3 x double], [3 x double]* %60, i64 0, i64 %1547
%1549 = load double, double* %1548
%1550 = fadd double %1545, %1549
%1551 = load i32, i32* %71
%1552 = sext i32 %1551 to i64
%1553 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 %1552
%1554 = load double, double* %1553
%1555 = fadd double %1550, %1554
%1556 = load i32, i32* %71
%1557 = sext i32 %1556 to i64
%1558 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 %1557
%1559 = load double, double* %1558
%1560 = fadd double %1555, %1559
%1561 = load i32, i32* %71
%1562 = sext i32 %1561 to i64
%1563 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1562
%1564 = load double, double* %1563
%1565 = fadd double %1560, %1564
%1566 = load double*, double** %83
%1567 = load double, double* %1566
%1568 = fadd double %1567, %1565
store double %1568, double* %1566
%1569 = load i32, i32* %81
%1570 = load double*, double** %83
%1571 = sext i32 %1569 to i64
%1572 = getelementptr inbounds double, double* %1570, i64 %1571
store double* %1572, double** %83
%1573 = load i32, i32* %71
%1574 = sext i32 %1573 to i64
%1575 = getelementptr inbounds [3 x double], [3 x double]* %58, i64 0, i64 %1574
%1576 = load double, double* %1575
%1577 = load i32, i32* %71
%1578 = sext i32 %1577 to i64
%1579 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 %1578
%1580 = load double, double* %1579
%1581 = fadd double %1576, %1580
%1582 = load i32, i32* %71
%1583 = sext i32 %1582 to i64
%1584 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 %1583
%1585 = load double, double* %1584
%1586 = fadd double %1581, %1585
%1587 = load i32, i32* %71
%1588 = sext i32 %1587 to i64
%1589 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 %1588
%1590 = load double, double* %1589
%1591 = fadd double %1586, %1590
%1592 = load i32, i32* %71
%1593 = sext i32 %1592 to i64
%1594 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1593
%1595 = load double, double* %1594
%1596 = fadd double %1591, %1595
%1597 = load double*, double** %83
%1598 = load double, double* %1597
%1599 = fadd double %1598, %1596
store double %1599, double* %1597
%1600 = load double*, double** %83
%1601 = getelementptr inbounds double, double* %1600, i64 1
store double* %1601, double** %83
%1602 = load i32, i32* %71
%1603 = sext i32 %1602 to i64
%1604 = getelementptr inbounds [3 x double], [3 x double]* %59, i64 0, i64 %1603
%1605 = load double, double* %1604
%1606 = load i32, i32* %71
%1607 = sext i32 %1606 to i64
%1608 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 %1607
%1609 = load double, double* %1608
%1610 = fadd double %1605, %1609
%1611 = load i32, i32* %71
%1612 = sext i32 %1611 to i64
%1613 = getelementptr inbounds [3 x double], [3 x double]* %64, i64 0, i64 %1612
%1614 = load double, double* %1613
%1615 = fadd double %1610, %1614
%1616 = load i32, i32* %71
%1617 = sext i32 %1616 to i64
%1618 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 %1617
%1619 = load double, double* %1618
%1620 = fadd double %1615, %1619
%1621 = load i32, i32* %71
%1622 = sext i32 %1621 to i64
%1623 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1622
%1624 = load double, double* %1623
%1625 = fadd double %1620, %1624
%1626 = load double*, double** %83
%1627 = load double, double* %1626
%1628 = fadd double %1627, %1625
store double %1628, double* %1626
%1629 = load i32, i32* %80
%1630 = load double*, double** %83
%1631 = sext i32 %1629 to i64
%1632 = sub i64 0, %1631
%1633 = getelementptr inbounds double, double* %1630, i64 %1632
store double* %1633, double** %83
%1634 = load i32, i32* %71
%1635 = sext i32 %1634 to i64
%1636 = getelementptr inbounds [3 x double], [3 x double]* %57, i64 0, i64 %1635
%1637 = load double, double* %1636
%1638 = load i32, i32* %71
%1639 = sext i32 %1638 to i64
%1640 = getelementptr inbounds [3 x double], [3 x double]* %61, i64 0, i64 %1639
%1641 = load double, double* %1640
%1642 = fadd double %1637, %1641
%1643 = load i32, i32* %71
%1644 = sext i32 %1643 to i64
%1645 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 %1644
%1646 = load double, double* %1645
%1647 = fadd double %1642, %1646
%1648 = load i32, i32* %71
%1649 = sext i32 %1648 to i64
%1650 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 %1649
%1651 = load double, double* %1650
%1652 = fadd double %1647, %1651
%1653 = load i32, i32* %71
%1654 = sext i32 %1653 to i64
%1655 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1654
%1656 = load double, double* %1655
%1657 = fadd double %1652, %1656
%1658 = load double*, double** %83
%1659 = load double, double* %1658
%1660 = fadd double %1659, %1657
store double %1660, double* %1658
%1661 = load double*, double** %83
%1662 = getelementptr inbounds double, double* %1661, i64 -1
store double* %1662, double** %83
%1663 = load i32, i32* %71
%1664 = sext i32 %1663 to i64
%1665 = getelementptr inbounds [3 x double], [3 x double]* %56, i64 0, i64 %1664
%1666 = load double, double* %1665
%1667 = load i32, i32* %71
%1668 = sext i32 %1667 to i64
%1669 = getelementptr inbounds [3 x double], [3 x double]* %62, i64 0, i64 %1668
%1670 = load double, double* %1669
%1671 = fadd double %1666, %1670
%1672 = load i32, i32* %71
%1673 = sext i32 %1672 to i64
%1674 = getelementptr inbounds [3 x double], [3 x double]* %63, i64 0, i64 %1673
%1675 = load double, double* %1674
%1676 = fadd double %1671, %1675
%1677 = load i32, i32* %71
%1678 = sext i32 %1677 to i64
%1679 = getelementptr inbounds [3 x double], [3 x double]* %65, i64 0, i64 %1678
%1680 = load double, double* %1679
%1681 = fadd double %1676, %1680
%1682 = load i32, i32* %71
%1683 = sext i32 %1682 to i64
%1684 = getelementptr inbounds [3 x double], [3 x double]* %66, i64 0, i64 %1683
%1685 = load double, double* %1684
%1686 = fadd double %1681, %1685
%1687 = load double*, double** %83
%1688 = load double, double* %1687
%1689 = fadd double %1688, %1686
store double %1689, double* %1687
%1690 = load i32, i32* %78
%1691 = load i32, i32* %72
%1692 = add nsw i32 %1691, %1690
store i32 %1692, i32* %72
br label %1693
1693: ; preds = %1410
%1694 = load i32, i32* %71
%1695 = add nsw i32 %1694, 1
store i32 %1695, i32* %71
br label %1407
1696: ; preds = %1407
br label %1697
1697: ; preds = %1696
%1698 = load i32, i32* %70
%1699 = add nsw i32 %1698, 1
store i32 %1699, i32* %70
br label %147
1700: ; preds = %147
br label %1701
1701: ; preds = %1700
%1702 = load i32, i32* %69
%1703 = add nsw i32 %1702, 1
store i32 %1703, i32* %69
br label %142
1704: ; preds = %142
br label %1705
1705: ; preds = %1704
%1706 = load i32, i32* %68
%1707 = add nsw i32 %1706, 1
store i32 %1707, i32* %68
br label %137
1708: ; preds = %137
ret void
}

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