#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 get_mtx_index(int, int, int);
void calculate_TE_contributions_multi(
    long double *T, long double *E, long double *E_2, long double *E_3,
    long double *E_4, long double *T_lab, long double *E_lab,
    long double *E_lab_2, long double *E_lab_3, long double *E_lab_4,
    long double *T_ulab, long double *E_ulab, long double *E_ulab_2,
    long double *E_ulab_3, long double *E_ulab_4, long double *emissions,
    long double *emissions_2, long double *emissions_3,
    long double *emissions_4, long double *transitions, int nr_v, int a_size,
    int a_size_2, int a_size_3, int a_size_4, long double *emiss_prior_scalers,
    long double *emiss_prior_scalers_2, long double *emiss_prior_scalers_3,
    long double *emiss_prior_scalers_4, int rd, int nr_alphabets) {
  int v, w;
  int a;
  int x, y, y_2, y_3, y_4;
  long double rowsum;
  long double T_divider, E_divider, E_divider_2, E_divider_3, E_divider_4,
      max_T_ulab;
  long double max_E_ulab, max_E_ulab_2, max_E_ulab_3, max_E_ulab_4;
  long double E_limiter, E_limiter_2, E_limiter_3, E_limiter_4, T_limiter;
  static long double DIVIDER_SCALER = 1.0;
  for (v = 0; v < nr_v - 1; v++) {
    for (w = 1; w < nr_v - 1; w++) {
      x = get_mtx_index(v, w, nr_v);
      *(T + x) = *(transitions + x);
    }
  }
  for (v = 1; v < nr_v - 1; v++) {
    for (a = 0; a < a_size; a++) {
      y = get_mtx_index(v, a, a_size);
      *(E + y) = *(emissions + y);
    }
  }
  if (nr_alphabets > 1) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_2; a++) {
        y = get_mtx_index(v, a, a_size_2);
        *(E_2 + y) = *(emissions_2 + y);
      }
    }
  }
  if (nr_alphabets > 2) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_3; a++) {
        y = get_mtx_index(v, a, a_size_3);
        *(E_3 + y) = *(emissions_3 + y);
      }
    }
  }
  if (nr_alphabets > 3) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_4; a++) {
        y = get_mtx_index(v, a, a_size_4);
        *(E_4 + y) = *(emissions_4 + y);
      }
    }
  }
  T_divider = 1.0;
  E_divider = 1.0;
  E_divider_2 = 1.0;
  E_divider_3 = 1.0;
  E_divider_4 = 1.0;
  for (v = 0; v < nr_v - 1; v++) {
    for (w = 1; w < nr_v - 1; w++) {
      x = get_mtx_index(v, w, nr_v);
      T_limiter = *(T + x);
      if (*(T + x) > (1.0 - *(T + x))) {
        T_limiter = 1.0 - *(T + x);
      }
      if (T_limiter != 0.0 &&
          (*(T_ulab + x) - *(T_lab + x)) / T_limiter > T_divider) {
        T_divider = (*(T_ulab + x) - *(T_lab + x)) / T_limiter;
      }
    }
  }
  for (v = 1; v < nr_v - 1; v++) {
    for (a = 0; a < a_size; a++) {
      y = get_mtx_index(v, a, a_size);
      E_limiter = *(E + y);
      if (*(E + y) > (1.0 - *(E + y))) {
        E_limiter = 1.0 - *(E + y);
      }
      if (*(E + y) != 0.0 &&
          (*(E_ulab + y) - *(E_lab + y)) / E_limiter > E_divider) {
        E_divider = (*(E_ulab + y) - *(E_lab + y)) / E_limiter;
      }
    }
  }
  if (nr_alphabets > 1) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_2; a++) {
        y = get_mtx_index(v, a, a_size_2);
        E_limiter_2 = *(E_2 + y);
        if (*(E_2 + y) > (1.0 - *(E_2 + y))) {
          E_limiter_2 = 1.0 - *(E_2 + y);
        }
        if (*(E_2 + y) != 0.0 &&
            (*(E_ulab_2 + y) - *(E_lab_2 + y)) / E_limiter > E_divider_2) {
          E_divider_2 = (*(E_ulab_2 + y) - *(E_lab_2 + y)) / *(E_2 + y);
        }
      }
    }
  }
  if (nr_alphabets > 2) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_3; a++) {
        y = get_mtx_index(v, a, a_size_3);
        E_limiter_3 = *(E_3 + y);
        if (*(E_3 + y) > (1.0 - *(E_3 + y))) {
          E_limiter_3 = 1.0 - *(E_3 + y);
        }
        if (*(E_3 + y) != 0.0 &&
            (*(E_ulab_3 + y) - *(E_lab_3 + y)) / E_limiter_3 > E_divider_3) {
          E_divider_3 = (*(E_ulab_3 + y) - *(E_lab_3 + y)) / *(E_3 + y);
        }
      }
    }
  }
  if (nr_alphabets > 3) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_4; a++) {
        y = get_mtx_index(v, a, a_size_4);
        E_limiter_4 = *(E_4 + y);
        if (*(E_4 + y) > (1.0 - *(E_4 + y))) {
          E_limiter_4 = 1.0 - *(E_4 + y);
        }
        if (*(E_4 + y) != 0.0 &&
            (*(E_ulab_4 + y) - *(E_lab_4 + y)) / E_limiter_4 > E_divider_4) {
          E_divider_4 = (*(E_ulab_4 + y) - *(E_lab_4 + y)) / *(E_4 + y);
        }
      }
    }
  }
  T_divider = T_divider * DIVIDER_SCALER;
  E_divider = E_divider * DIVIDER_SCALER;
  E_divider_2 = E_divider_2 * DIVIDER_SCALER;
  E_divider_3 = E_divider_3 * DIVIDER_SCALER;
  E_divider_4 = E_divider_4 * DIVIDER_SCALER;
  for (v = 0; v < nr_v - 1; v++) {
    for (w = 1; w < nr_v - 1; w++) {
      x = get_mtx_index(v, w, nr_v);
      *(T + x) += (*(T_lab + x) - *(T_ulab + x)) / T_divider;
      if (*(T + x) < 0.0) {
        *(T + x) = 0.0;
      }
    }
  }
  for (v = 1; v < nr_v - 1; v++) {
    for (a = 0; a < a_size; a++) {
      y = get_mtx_index(v, a, a_size);
      *(E + y) += (*(E_lab + y) - *(E_ulab + y)) /
                  (E_divider * *(emiss_prior_scalers + v));
      if (*(E + y) < 0.0) {
        *(E + y) = 0.0;
      }
    }
  }
  if (nr_alphabets > 1) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_2; a++) {
        y = get_mtx_index(v, a, a_size_2);
        *(E_2 + y) += (*(E_lab_2 + y) - *(E_ulab_2 + y)) /
                      (E_divider_2 * *(emiss_prior_scalers_2 + v));
        if (*(E_2 + y) < 0.0) {
          *(E_2 + y) = 0.0;
        }
      }
    }
  }
  if (nr_alphabets > 2) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_3; a++) {
        y = get_mtx_index(v, a, a_size_3);
        *(E_3 + y) += (*(E_lab_3 + y) - *(E_ulab_3 + y)) /
                      (E_divider_3 * *(emiss_prior_scalers_3 + v));
        if (*(E_3 + y) < 0.0) {
          *(E_3 + y) = 0.0;
        }
      }
    }
  }
  if (nr_alphabets > 3) {
    for (v = 1; v < nr_v - 1; v++) {
      for (a = 0; a < a_size_4; a++) {
        y = get_mtx_index(v, a, a_size_4);
        *(E_4 + y) += (*(E_lab_4 + y) - *(E_ulab_4 + y)) /
                      (E_divider_4 * *(emiss_prior_scalers_4 + v));
        if (*(E_4 + y) < 0.0) {
          *(E_4 + y) = 0.0;
        }
      }
    }
  }
  for (v = 0; v < nr_v - 1; v++) {
    rowsum = 0.0;
    for (w = 1; w < nr_v - 1; w++) {
      x = get_mtx_index(v, w, nr_v);
      rowsum += *(transitions + x);
    }
    if (rowsum != 0.0) {
      for (w = 1; w < nr_v - 1; w++) {
        x = get_mtx_index(v, w, nr_v);
        *(transitions + x) = *(transitions + x) / rowsum;
      }
    }
  }
  for (v = 1; v < nr_v - 1; v++) {
    rowsum = 0.0;
    for (a = 0; a < a_size; a++) {
      y = get_mtx_index(v, a, a_size);
      rowsum += *(emissions + y);
    }
    if (rowsum != 0.0) {
      for (a = 0; a < a_size; a++) {
        y = get_mtx_index(v, a, a_size);
        *(emissions + y) = *(emissions + y) / rowsum;
      }
    }
  }
  if (nr_alphabets > 1) {
    for (v = 1; v < nr_v - 1; v++) {
      rowsum = 0.0;
      for (a = 0; a < a_size_2; a++) {
        y = get_mtx_index(v, a, a_size_2);
        rowsum += *(emissions_2 + y);
      }
      if (rowsum != 0.0) {
        for (a = 0; a < a_size_2; a++) {
          y = get_mtx_index(v, a, a_size_2);
          *(emissions_2 + y) = *(emissions_2 + y) / rowsum;
        }
      }
    }
  }
  if (nr_alphabets > 2) {
    for (v = 1; v < nr_v - 1; v++) {
      rowsum = 0.0;
      for (a = 0; a < a_size_3; a++) {
        y = get_mtx_index(v, a, a_size_3);
        rowsum += *(emissions_3 + y);
      }
      if (rowsum != 0.0) {
        for (a = 0; a < a_size_3; a++) {
          y = get_mtx_index(v, a, a_size_3);
          *(emissions_3 + y) = *(emissions_3 + y) / rowsum;
        }
      }
    }
  }
  if (nr_alphabets > 3) {
    for (v = 1; v < nr_v - 1; v++) {
      rowsum = 0.0;
      for (a = 0; a < a_size_4; a++) {
        y = get_mtx_index(v, a, a_size_4);
        rowsum += *(emissions_4 + y);
      }
      if (rowsum != 0.0) {
        for (a = 0; a < a_size_4; a++) {
          y = get_mtx_index(v, a, a_size_4);
          *(emissions_4 + y) = *(emissions_4 + y) / rowsum;
        }
      }
    }
  }
}


x86 assembly (clang, -O0):
<calculate_TE_contributions_multi>:
push   %rbp
mov    %rsp,%rbp
sub    $0x150,%rsp
mov    0xd0(%rbp),%eax
mov    0xc8(%rbp),%eax
mov    0xc0(%rbp),%rax
mov    0xb8(%rbp),%rax
mov    0xb0(%rbp),%rax
mov    0xa8(%rbp),%rax
mov    0xa0(%rbp),%eax
mov    0x98(%rbp),%eax
mov    0x90(%rbp),%eax
mov    0x88(%rbp),%eax
mov    0x80(%rbp),%eax
mov    0x78(%rbp),%rax
mov    0x70(%rbp),%rax
mov    0x68(%rbp),%rax
mov    0x60(%rbp),%rax
mov    0x58(%rbp),%rax
mov    0x50(%rbp),%rax
mov    0x48(%rbp),%rax
mov    0x40(%rbp),%rax
mov    0x38(%rbp),%rax
mov    0x30(%rbp),%rax
mov    0x28(%rbp),%rax
mov    0x20(%rbp),%rax
mov    0x18(%rbp),%rax
mov    0x10(%rbp),%rax
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %rcx,-0x20(%rbp)
mov    %r8,-0x28(%rbp)
mov    %r9,-0x30(%rbp)
movl   $0x0,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1232 <calculate_TE_contributions_multi+0x122>
movl   $0x1,-0x38(%rbp)
mov    -0x38(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    121f <calculate_TE_contributions_multi+0x10f>
mov    -0x34(%rbp),%edi
mov    -0x38(%rbp),%esi
mov    0x80(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x40(%rbp)
mov    0x78(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x8(%rbp),%rax
fstpt  (%rax,%rcx,1)
mov    -0x38(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x38(%rbp)
jmp    11d3 <calculate_TE_contributions_multi+0xc3>
jmp    1224 <calculate_TE_contributions_multi+0x114>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    11b8 <calculate_TE_contributions_multi+0xa8>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    12ae <calculate_TE_contributions_multi+0x19e>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x88(%rbp),%eax
jge    129b <calculate_TE_contributions_multi+0x18b>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x88(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x58(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x10(%rbp),%rax
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    1254 <calculate_TE_contributions_multi+0x144>
jmp    12a0 <calculate_TE_contributions_multi+0x190>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1239 <calculate_TE_contributions_multi+0x129>
cmpl   $0x1,0xd0(%rbp)
jle    133c <calculate_TE_contributions_multi+0x22c>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1337 <calculate_TE_contributions_multi+0x227>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x90(%rbp),%eax
jge    1324 <calculate_TE_contributions_multi+0x214>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x90(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x60(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x18(%rbp),%rax
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    12dd <calculate_TE_contributions_multi+0x1cd>
jmp    1329 <calculate_TE_contributions_multi+0x219>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    12c2 <calculate_TE_contributions_multi+0x1b2>
jmp    133c <calculate_TE_contributions_multi+0x22c>
cmpl   $0x2,0xd0(%rbp)
jle    13ca <calculate_TE_contributions_multi+0x2ba>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    13c5 <calculate_TE_contributions_multi+0x2b5>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x98(%rbp),%eax
jge    13b2 <calculate_TE_contributions_multi+0x2a2>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x98(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x68(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x20(%rbp),%rax
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    136b <calculate_TE_contributions_multi+0x25b>
jmp    13b7 <calculate_TE_contributions_multi+0x2a7>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1350 <calculate_TE_contributions_multi+0x240>
jmp    13ca <calculate_TE_contributions_multi+0x2ba>
cmpl   $0x3,0xd0(%rbp)
jle    1458 <calculate_TE_contributions_multi+0x348>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1453 <calculate_TE_contributions_multi+0x343>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0xa0(%rbp),%eax
jge    1440 <calculate_TE_contributions_multi+0x330>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0xa0(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x70(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x28(%rbp),%rax
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    13f9 <calculate_TE_contributions_multi+0x2e9>
jmp    1445 <calculate_TE_contributions_multi+0x335>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    13de <calculate_TE_contributions_multi+0x2ce>
jmp    1458 <calculate_TE_contributions_multi+0x348>
fld1
fld    %st(0)
fstpt  -0x70(%rbp)
fld    %st(0)
fstpt  -0x80(%rbp)
fld    %st(0)
fstpt  -0x90(%rbp)
fld    %st(0)
fstpt  -0xa0(%rbp)
fstpt  -0xb0(%rbp)
movl   $0x0,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    15b2 <calculate_TE_contributions_multi+0x4a2>
movl   $0x1,-0x38(%rbp)
mov    -0x38(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    159f <calculate_TE_contributions_multi+0x48f>
mov    -0x34(%rbp),%edi
mov    -0x38(%rbp),%esi
mov    0x80(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x40(%rbp)
mov    -0x8(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fstpt  -0x150(%rbp)
mov    -0x8(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsub   %st(1),%st
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1516 <calculate_TE_contributions_multi+0x406>
jmp    14fd <calculate_TE_contributions_multi+0x3ed>
mov    -0x8(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsubp  %st,%st(1)
fstpt  -0x150(%rbp)
fldt   -0x150(%rbp)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    1535 <calculate_TE_contributions_multi+0x425>
jp     1535 <calculate_TE_contributions_multi+0x425>
jmp    158c <calculate_TE_contributions_multi+0x47c>
mov    0x30(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x30(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x150(%rbp)
fdivrp %st,%st(1)
fldt   -0x70(%rbp)
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    158c <calculate_TE_contributions_multi+0x47c>
jmp    1569 <calculate_TE_contributions_multi+0x459>
mov    0x30(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    -0x30(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x150(%rbp)
fdivrp %st,%st(1)
fstpt  -0x70(%rbp)
jmp    1591 <calculate_TE_contributions_multi+0x481>
mov    -0x38(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x38(%rbp)
jmp    149c <calculate_TE_contributions_multi+0x38c>
jmp    15a4 <calculate_TE_contributions_multi+0x494>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1481 <calculate_TE_contributions_multi+0x371>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    16ee <calculate_TE_contributions_multi+0x5de>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x88(%rbp),%eax
jge    16db <calculate_TE_contributions_multi+0x5cb>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x88(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    -0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fstpt  -0x110(%rbp)
mov    -0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsub   %st(1),%st
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1649 <calculate_TE_contributions_multi+0x539>
jmp    1630 <calculate_TE_contributions_multi+0x520>
mov    -0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsubp  %st,%st(1)
fstpt  -0x110(%rbp)
mov    -0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    1671 <calculate_TE_contributions_multi+0x561>
jp     1671 <calculate_TE_contributions_multi+0x561>
jmp    16c8 <calculate_TE_contributions_multi+0x5b8>
mov    0x38(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x10(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x110(%rbp)
fdivrp %st,%st(1)
fldt   -0x80(%rbp)
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    16c8 <calculate_TE_contributions_multi+0x5b8>
jmp    16a5 <calculate_TE_contributions_multi+0x595>
mov    0x38(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x10(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x110(%rbp)
fdivrp %st,%st(1)
fstpt  -0x80(%rbp)
jmp    16cd <calculate_TE_contributions_multi+0x5bd>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    15d4 <calculate_TE_contributions_multi+0x4c4>
jmp    16e0 <calculate_TE_contributions_multi+0x5d0>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    15b9 <calculate_TE_contributions_multi+0x4a9>
cmpl   $0x1,0xd0(%rbp)
jle    1843 <calculate_TE_contributions_multi+0x733>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    183e <calculate_TE_contributions_multi+0x72e>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x90(%rbp),%eax
jge    182b <calculate_TE_contributions_multi+0x71b>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x90(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    -0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fstpt  -0x120(%rbp)
mov    -0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsub   %st(1),%st
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1792 <calculate_TE_contributions_multi+0x682>
jmp    1779 <calculate_TE_contributions_multi+0x669>
mov    -0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsubp  %st,%st(1)
fstpt  -0x120(%rbp)
mov    -0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    17ba <calculate_TE_contributions_multi+0x6aa>
jp     17ba <calculate_TE_contributions_multi+0x6aa>
jmp    1818 <calculate_TE_contributions_multi+0x708>
mov    0x40(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x18(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x110(%rbp)
fdivrp %st,%st(1)
fldt   -0x90(%rbp)
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1818 <calculate_TE_contributions_multi+0x708>
jmp    17f1 <calculate_TE_contributions_multi+0x6e1>
mov    0x40(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x18(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
mov    -0x18(%rbp),%rax
fldt   (%rax,%rcx,1)
fdivrp %st,%st(1)
fstpt  -0x90(%rbp)
jmp    181d <calculate_TE_contributions_multi+0x70d>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    171d <calculate_TE_contributions_multi+0x60d>
jmp    1830 <calculate_TE_contributions_multi+0x720>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1702 <calculate_TE_contributions_multi+0x5f2>
jmp    1843 <calculate_TE_contributions_multi+0x733>
cmpl   $0x2,0xd0(%rbp)
jle    1998 <calculate_TE_contributions_multi+0x888>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1993 <calculate_TE_contributions_multi+0x883>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x98(%rbp),%eax
jge    1980 <calculate_TE_contributions_multi+0x870>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x98(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    -0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fstpt  -0x130(%rbp)
mov    -0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsub   %st(1),%st
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    18e7 <calculate_TE_contributions_multi+0x7d7>
jmp    18ce <calculate_TE_contributions_multi+0x7be>
mov    -0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsubp  %st,%st(1)
fstpt  -0x130(%rbp)
mov    -0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    190f <calculate_TE_contributions_multi+0x7ff>
jp     190f <calculate_TE_contributions_multi+0x7ff>
jmp    196d <calculate_TE_contributions_multi+0x85d>
mov    0x48(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x20(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x130(%rbp)
fdivrp %st,%st(1)
fldt   -0xa0(%rbp)
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    196d <calculate_TE_contributions_multi+0x85d>
jmp    1946 <calculate_TE_contributions_multi+0x836>
mov    0x48(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x20(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
mov    -0x20(%rbp),%rax
fldt   (%rax,%rcx,1)
fdivrp %st,%st(1)
fstpt  -0xa0(%rbp)
jmp    1972 <calculate_TE_contributions_multi+0x862>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    1872 <calculate_TE_contributions_multi+0x762>
jmp    1985 <calculate_TE_contributions_multi+0x875>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1857 <calculate_TE_contributions_multi+0x747>
jmp    1998 <calculate_TE_contributions_multi+0x888>
cmpl   $0x3,0xd0(%rbp)
jle    1aed <calculate_TE_contributions_multi+0x9dd>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1ae8 <calculate_TE_contributions_multi+0x9d8>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0xa0(%rbp),%eax
jge    1ad5 <calculate_TE_contributions_multi+0x9c5>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0xa0(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    -0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fstpt  -0x140(%rbp)
mov    -0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsub   %st(1),%st
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1a3c <calculate_TE_contributions_multi+0x92c>
jmp    1a23 <calculate_TE_contributions_multi+0x913>
mov    -0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fld1
fsubp  %st,%st(1)
fstpt  -0x140(%rbp)
mov    -0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    1a64 <calculate_TE_contributions_multi+0x954>
jp     1a64 <calculate_TE_contributions_multi+0x954>
jmp    1ac2 <calculate_TE_contributions_multi+0x9b2>
mov    0x50(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x28(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x140(%rbp)
fdivrp %st,%st(1)
fldt   -0xb0(%rbp)
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1ac2 <calculate_TE_contributions_multi+0x9b2>
jmp    1a9b <calculate_TE_contributions_multi+0x98b>
mov    0x50(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x28(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
mov    -0x28(%rbp),%rax
fldt   (%rax,%rcx,1)
fdivrp %st,%st(1)
fstpt  -0xb0(%rbp)
jmp    1ac7 <calculate_TE_contributions_multi+0x9b7>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    19c7 <calculate_TE_contributions_multi+0x8b7>
jmp    1ada <calculate_TE_contributions_multi+0x9ca>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    19ac <calculate_TE_contributions_multi+0x89c>
jmp    1aed <calculate_TE_contributions_multi+0x9dd>
fldt   -0x70(%rbp)
fldt   0x353a(%rip)
fmulp  %st,%st(1)
fstpt  -0x70(%rbp)
fldt   -0x80(%rbp)
fldt   0x352c(%rip)
fmulp  %st,%st(1)
fstpt  -0x80(%rbp)
fldt   -0x90(%rbp)
fldt   0x351b(%rip)
fmulp  %st,%st(1)
fstpt  -0x90(%rbp)
fldt   -0xa0(%rbp)
fldt   0x3507(%rip)
fmulp  %st,%st(1)
fstpt  -0xa0(%rbp)
fldt   -0xb0(%rbp)
fldt   0x34f3(%rip)
fmulp  %st,%st(1)
fstpt  -0xb0(%rbp)
movl   $0x0,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1c0f <calculate_TE_contributions_multi+0xaff>
movl   $0x1,-0x38(%rbp)
mov    -0x38(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1bfc <calculate_TE_contributions_multi+0xaec>
mov    -0x34(%rbp),%edi
mov    -0x38(%rbp),%esi
mov    0x80(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x40(%rbp)
mov    -0x30(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x30(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x70(%rbp)
fdivrp %st,%st(1)
mov    -0x8(%rbp),%rax
fldt   (%rax,%rcx,1)
faddp  %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x8(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fucomip %st(1),%st
fstp   %st(0)
jbe    1be9 <calculate_TE_contributions_multi+0xad9>
jmp    1bd8 <calculate_TE_contributions_multi+0xac8>
mov    -0x8(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldz
fstpt  (%rax,%rcx,1)
jmp    1bee <calculate_TE_contributions_multi+0xade>
mov    -0x38(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x38(%rbp)
jmp    1b67 <calculate_TE_contributions_multi+0xa57>
jmp    1c01 <calculate_TE_contributions_multi+0xaf1>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1b4c <calculate_TE_contributions_multi+0xa3c>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1ce8 <calculate_TE_contributions_multi+0xbd8>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x88(%rbp),%eax
jge    1cd5 <calculate_TE_contributions_multi+0xbc5>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x88(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x38(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x80(%rbp)
mov    0xa8(%rbp),%rax
movslq -0x34(%rbp),%rdx
shl    $0x4,%rdx
fldt   (%rax,%rdx,1)
fmulp  %st,%st(1)
fdivrp %st,%st(1)
mov    -0x10(%rbp),%rax
fldt   (%rax,%rcx,1)
faddp  %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fucomip %st(1),%st
fstp   %st(0)
jbe    1cc2 <calculate_TE_contributions_multi+0xbb2>
jmp    1cb1 <calculate_TE_contributions_multi+0xba1>
mov    -0x10(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldz
fstpt  (%rax,%rcx,1)
jmp    1cc7 <calculate_TE_contributions_multi+0xbb7>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    1c31 <calculate_TE_contributions_multi+0xb21>
jmp    1cda <calculate_TE_contributions_multi+0xbca>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1c16 <calculate_TE_contributions_multi+0xb06>
cmpl   $0x1,0xd0(%rbp)
jle    1dd6 <calculate_TE_contributions_multi+0xcc6>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1dd1 <calculate_TE_contributions_multi+0xcc1>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x90(%rbp),%eax
jge    1dbe <calculate_TE_contributions_multi+0xcae>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x90(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x40(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0x90(%rbp)
mov    0xb0(%rbp),%rax
movslq -0x34(%rbp),%rdx
shl    $0x4,%rdx
fldt   (%rax,%rdx,1)
fmulp  %st,%st(1)
fdivrp %st,%st(1)
mov    -0x18(%rbp),%rax
fldt   (%rax,%rcx,1)
faddp  %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fucomip %st(1),%st
fstp   %st(0)
jbe    1dab <calculate_TE_contributions_multi+0xc9b>
jmp    1d9a <calculate_TE_contributions_multi+0xc8a>
mov    -0x18(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldz
fstpt  (%rax,%rcx,1)
jmp    1db0 <calculate_TE_contributions_multi+0xca0>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    1d17 <calculate_TE_contributions_multi+0xc07>
jmp    1dc3 <calculate_TE_contributions_multi+0xcb3>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1cfc <calculate_TE_contributions_multi+0xbec>
jmp    1dd6 <calculate_TE_contributions_multi+0xcc6>
cmpl   $0x2,0xd0(%rbp)
jle    1ec4 <calculate_TE_contributions_multi+0xdb4>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1ebf <calculate_TE_contributions_multi+0xdaf>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x98(%rbp),%eax
jge    1eac <calculate_TE_contributions_multi+0xd9c>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x98(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x48(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0xa0(%rbp)
mov    0xb8(%rbp),%rax
movslq -0x34(%rbp),%rdx
shl    $0x4,%rdx
fldt   (%rax,%rdx,1)
fmulp  %st,%st(1)
fdivrp %st,%st(1)
mov    -0x20(%rbp),%rax
fldt   (%rax,%rcx,1)
faddp  %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fucomip %st(1),%st
fstp   %st(0)
jbe    1e99 <calculate_TE_contributions_multi+0xd89>
jmp    1e88 <calculate_TE_contributions_multi+0xd78>
mov    -0x20(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldz
fstpt  (%rax,%rcx,1)
jmp    1e9e <calculate_TE_contributions_multi+0xd8e>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    1e05 <calculate_TE_contributions_multi+0xcf5>
jmp    1eb1 <calculate_TE_contributions_multi+0xda1>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1dea <calculate_TE_contributions_multi+0xcda>
jmp    1ec4 <calculate_TE_contributions_multi+0xdb4>
cmpl   $0x3,0xd0(%rbp)
jle    1fb2 <calculate_TE_contributions_multi+0xea2>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    1fad <calculate_TE_contributions_multi+0xe9d>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0xa0(%rbp),%eax
jge    1f9a <calculate_TE_contributions_multi+0xe8a>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0xa0(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
mov    0x50(%rbp),%rax
fldt   (%rax,%rcx,1)
fsubrp %st,%st(1)
fldt   -0xb0(%rbp)
mov    0xc0(%rbp),%rax
movslq -0x34(%rbp),%rdx
shl    $0x4,%rdx
fldt   (%rax,%rdx,1)
fmulp  %st,%st(1)
fdivrp %st,%st(1)
mov    -0x28(%rbp),%rax
fldt   (%rax,%rcx,1)
faddp  %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldz
fucomip %st(1),%st
fstp   %st(0)
jbe    1f87 <calculate_TE_contributions_multi+0xe77>
jmp    1f76 <calculate_TE_contributions_multi+0xe66>
mov    -0x28(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldz
fstpt  (%rax,%rcx,1)
jmp    1f8c <calculate_TE_contributions_multi+0xe7c>
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    1ef3 <calculate_TE_contributions_multi+0xde3>
jmp    1f9f <calculate_TE_contributions_multi+0xe8f>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1ed8 <calculate_TE_contributions_multi+0xdc8>
jmp    1fb2 <calculate_TE_contributions_multi+0xea2>
movl   $0x0,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    20ae <calculate_TE_contributions_multi+0xf9e>
fldz
fstpt  -0x60(%rbp)
movl   $0x1,-0x38(%rbp)
mov    -0x38(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    2026 <calculate_TE_contributions_multi+0xf16>
mov    -0x34(%rbp),%edi
mov    -0x38(%rbp),%esi
mov    0x80(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x40(%rbp)
mov    0x78(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
faddp  %st,%st(1)
fstpt  -0x60(%rbp)
mov    -0x38(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x38(%rbp)
jmp    1fd9 <calculate_TE_contributions_multi+0xec9>
fldt   -0x60(%rbp)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    2042 <calculate_TE_contributions_multi+0xf32>
jp     2042 <calculate_TE_contributions_multi+0xf32>
jmp    209b <calculate_TE_contributions_multi+0xf8b>
movl   $0x1,-0x38(%rbp)
mov    -0x38(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    2096 <calculate_TE_contributions_multi+0xf86>
mov    -0x34(%rbp),%edi
mov    -0x38(%rbp),%esi
mov    0x80(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x40(%rbp)
mov    0x78(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
fdivrp %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x38(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x38(%rbp)
jmp    2049 <calculate_TE_contributions_multi+0xf39>
jmp    209b <calculate_TE_contributions_multi+0xf8b>
jmp    20a0 <calculate_TE_contributions_multi+0xf90>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    1fb9 <calculate_TE_contributions_multi+0xea9>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    21a0 <calculate_TE_contributions_multi+0x1090>
fldz
fstpt  -0x60(%rbp)
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x88(%rbp),%eax
jge    211d <calculate_TE_contributions_multi+0x100d>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x88(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x58(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
faddp  %st,%st(1)
fstpt  -0x60(%rbp)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    20d5 <calculate_TE_contributions_multi+0xfc5>
fldt   -0x60(%rbp)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    2139 <calculate_TE_contributions_multi+0x1029>
jp     2139 <calculate_TE_contributions_multi+0x1029>
jmp    218d <calculate_TE_contributions_multi+0x107d>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x88(%rbp),%eax
jge    2188 <calculate_TE_contributions_multi+0x1078>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x88(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x58(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
fdivrp %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    2140 <calculate_TE_contributions_multi+0x1030>
jmp    218d <calculate_TE_contributions_multi+0x107d>
jmp    2192 <calculate_TE_contributions_multi+0x1082>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    20b5 <calculate_TE_contributions_multi+0xfa5>
cmpl   $0x1,0xd0(%rbp)
jle    22a4 <calculate_TE_contributions_multi+0x1194>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    229f <calculate_TE_contributions_multi+0x118f>
fldz
fstpt  -0x60(%rbp)
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x90(%rbp),%eax
jge    221c <calculate_TE_contributions_multi+0x110c>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x90(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x60(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
faddp  %st,%st(1)
fstpt  -0x60(%rbp)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    21d4 <calculate_TE_contributions_multi+0x10c4>
fldt   -0x60(%rbp)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    2238 <calculate_TE_contributions_multi+0x1128>
jp     2238 <calculate_TE_contributions_multi+0x1128>
jmp    228c <calculate_TE_contributions_multi+0x117c>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x90(%rbp),%eax
jge    2287 <calculate_TE_contributions_multi+0x1177>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x90(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x60(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
fdivrp %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    223f <calculate_TE_contributions_multi+0x112f>
jmp    228c <calculate_TE_contributions_multi+0x117c>
jmp    2291 <calculate_TE_contributions_multi+0x1181>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    21b4 <calculate_TE_contributions_multi+0x10a4>
jmp    22a4 <calculate_TE_contributions_multi+0x1194>
cmpl   $0x2,0xd0(%rbp)
jle    23a8 <calculate_TE_contributions_multi+0x1298>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    23a3 <calculate_TE_contributions_multi+0x1293>
fldz
fstpt  -0x60(%rbp)
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x98(%rbp),%eax
jge    2320 <calculate_TE_contributions_multi+0x1210>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x98(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x68(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
faddp  %st,%st(1)
fstpt  -0x60(%rbp)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    22d8 <calculate_TE_contributions_multi+0x11c8>
fldt   -0x60(%rbp)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    233c <calculate_TE_contributions_multi+0x122c>
jp     233c <calculate_TE_contributions_multi+0x122c>
jmp    2390 <calculate_TE_contributions_multi+0x1280>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0x98(%rbp),%eax
jge    238b <calculate_TE_contributions_multi+0x127b>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0x98(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x68(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
fdivrp %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    2343 <calculate_TE_contributions_multi+0x1233>
jmp    2390 <calculate_TE_contributions_multi+0x1280>
jmp    2395 <calculate_TE_contributions_multi+0x1285>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    22b8 <calculate_TE_contributions_multi+0x11a8>
jmp    23a8 <calculate_TE_contributions_multi+0x1298>
cmpl   $0x3,0xd0(%rbp)
jle    24ac <calculate_TE_contributions_multi+0x139c>
movl   $0x1,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    0x80(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jge    24a7 <calculate_TE_contributions_multi+0x1397>
fldz
fstpt  -0x60(%rbp)
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0xa0(%rbp),%eax
jge    2424 <calculate_TE_contributions_multi+0x1314>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0xa0(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x70(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
faddp  %st,%st(1)
fstpt  -0x60(%rbp)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    23dc <calculate_TE_contributions_multi+0x12cc>
fldt   -0x60(%rbp)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    2440 <calculate_TE_contributions_multi+0x1330>
jp     2440 <calculate_TE_contributions_multi+0x1330>
jmp    2494 <calculate_TE_contributions_multi+0x1384>
movl   $0x0,-0x3c(%rbp)
mov    -0x3c(%rbp),%eax
cmp    0xa0(%rbp),%eax
jge    248f <calculate_TE_contributions_multi+0x137f>
mov    -0x34(%rbp),%edi
mov    -0x3c(%rbp),%esi
mov    0xa0(%rbp),%edx
call   1030 <get_mtx_index@plt>
mov    %eax,-0x44(%rbp)
mov    0x70(%rbp),%rax
movslq -0x44(%rbp),%rcx
shl    $0x4,%rcx
fldt   (%rax,%rcx,1)
fldt   -0x60(%rbp)
fdivrp %st,%st(1)
fstpt  (%rax,%rcx,1)
mov    -0x3c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x3c(%rbp)
jmp    2447 <calculate_TE_contributions_multi+0x1337>
jmp    2494 <calculate_TE_contributions_multi+0x1384>
jmp    2499 <calculate_TE_contributions_multi+0x1389>
mov    -0x34(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x34(%rbp)
jmp    23bc <calculate_TE_contributions_multi+0x12ac>
jmp    24ac <calculate_TE_contributions_multi+0x139c>
add    $0x150,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<calculate_TE_contributions_multi>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0xb8,%rsp
mov    %r9,0xb0(%rsp)
mov    %r8,0x90(%rsp)
mov    %rdx,0x98(%rsp)
mov    %rsi,0x70(%rsp)
mov    0x1b0(%rsp),%edx
mov    0x160(%rsp),%esi
mov    0x158(%rsp),%r14
lea    -0x1(%rsi),%eax
mov    %eax,0xc(%rsp)
xor    %r12d,%r12d
cmp    $0x2,%esi
mov    %rdi,0xa0(%rsp)
mov    %rcx,0x88(%rsp)
jl     126f <calculate_TE_contributions_multi+0x15f>
mov    %rdi,%r13
mov    $0x2,%ebp
mov    0x160(%rsp),%eax
sub    %eax,%ebp
jmp    119f <calculate_TE_contributions_multi+0x8f>
nopw   0x0(%rax,%rax,1)
add    $0x1,%r12d
cmp    0xc(%rsp),%r12d
je     1265 <calculate_TE_contributions_multi+0x155>
mov    0x160(%rsp),%eax
cmp    $0x2,%eax
je     1190 <calculate_TE_contributions_multi+0x80>
mov    $0x1,%ebx
mov    0x160(%rsp),%r15d
nopl   0x0(%rax,%rax,1)
mov    %r12d,%edi
mov    %ebx,%esi
mov    %r15d,%edx
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
fldt   (%r14,%rax,1)
fstpt  0x0(%r13,%rax,1)
lea    (%rbx,%rbp,1),%eax
add    $0x1,%eax
mov    %ebx,%ecx
add    $0x1,%ecx
mov    %ecx,%ebx
cmp    $0x1,%eax
jne    11c0 <calculate_TE_contributions_multi+0xb0>
add    $0x1,%r12d
cmp    0xc(%rsp),%r12d
jne    119f <calculate_TE_contributions_multi+0x8f>
mov    0x160(%rsp),%eax
cmp    $0x3,%eax
setge  %r12b
jl     1265 <calculate_TE_contributions_multi+0x155>
mov    $0x1,%ebx
mov    0x70(%rsp),%r13
jmp    1229 <calculate_TE_contributions_multi+0x119>
cs nopw 0x0(%rax,%rax,1)
nop
add    $0x1,%ebx
cmp    0xc(%rsp),%ebx
je     1268 <calculate_TE_contributions_multi+0x158>
mov    0x168(%rsp),%r14d
test   %r14d,%r14d
mov    0x138(%rsp),%r15
jle    1220 <calculate_TE_contributions_multi+0x110>
xor    %ebp,%ebp
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
fstpt  0x0(%r13,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%r14d
jne    1240 <calculate_TE_contributions_multi+0x130>
jmp    1220 <calculate_TE_contributions_multi+0x110>
xor    %r12d,%r12d
mov    0x1b0(%rsp),%edx
cmp    $0x2,%edx
jl     12e5 <calculate_TE_contributions_multi+0x1d5>
test   %r12b,%r12b
je     15f2 <calculate_TE_contributions_multi+0x4e2>
mov    $0x1,%ebx
mov    0x98(%rsp),%r13
jmp    129d <calculate_TE_contributions_multi+0x18d>
nopl   0x0(%rax)
add    $0x1,%ebx
cmp    0xc(%rsp),%ebx
je     160b <calculate_TE_contributions_multi+0x4fb>
mov    0x170(%rsp),%r14d
test   %r14d,%r14d
mov    0x140(%rsp),%r15
jle    1290 <calculate_TE_contributions_multi+0x180>
xor    %ebp,%ebp
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
fstpt  0x0(%r13,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%r14d
jne    12c0 <calculate_TE_contributions_multi+0x1b0>
jmp    1290 <calculate_TE_contributions_multi+0x180>
xor    %r14d,%r14d
mov    %r12d,0x2c(%rsp)
xor    %ecx,%ecx
mov    0x160(%rsp),%r15d
mov    %ecx,0x30(%rsp)
mov    0x110(%rsp),%r13
fld1
fld    %st(0)
cmp    $0x2,%r15d
fld    %st(1)
fstpt  0x38(%rsp)
jl     13ec <calculate_TE_contributions_multi+0x2dc>
fstp   %st(1)
fstp   %st(0)
mov    $0x2,%r12d
sub    %r15d,%r12d
fld1
xor    %ebp,%ebp
fldz
fstpt  0x48(%rsp)
fld    %st(0)
fstpt  0x10(%rsp)
fldz
fxch   %st(1)
jmp    1353 <calculate_TE_contributions_multi+0x243>
nopw   0x0(%rax,%rax,1)
add    $0x1,%ebp
cmp    0xc(%rsp),%ebp
fldt   0x38(%rsp)
fxch   %st(1)
je     13ec <calculate_TE_contributions_multi+0x2dc>
fstp   %st(1)
cmp    $0x2,%r15d
je     1340 <calculate_TE_contributions_multi+0x230>
mov    $0x1,%ebx
jmp    138d <calculate_TE_contributions_multi+0x27d>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
fstp   %st(0)
fldt   0x20(%rsp)
fldz
fstp   %st(0)
lea    (%r12,%rbx,1),%eax
add    $0x1,%eax
mov    %ebx,%ecx
add    $0x1,%ecx
mov    %ecx,%ebx
cmp    $0x1,%eax
je     1340 <calculate_TE_contributions_multi+0x230>
fstpt  0x20(%rsp)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r15d,%edx
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
mov    0xa0(%rsp),%rcx
fldt   (%rcx,%rax,1)
fldt   0x10(%rsp)
fsub   %st(1),%st
fxch   %st(1)
fucomi %st(1),%st
fcmovnbe %st(1),%st
fstp   %st(1)
fldt   0x48(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    13ca <calculate_TE_contributions_multi+0x2ba>
jnp    1370 <calculate_TE_contributions_multi+0x260>
fldt   0x0(%r13,%rax,1)
mov    0xb0(%rsp),%rcx
fldt   (%rcx,%rax,1)
fsubrp %st,%st(1)
fdivp  %st,%st(1)
fldt   0x20(%rsp)
fxch   %st(1)
fucomi %st(1),%st
jbe    1378 <calculate_TE_contributions_multi+0x268>
fstp   %st(1)
jmp    1376 <calculate_TE_contributions_multi+0x266>
fstpt  0x20(%rsp)
mov    0x130(%rsp),%r13
cmpb   $0x0,0x2c(%rsp)
je     14c7 <calculate_TE_contributions_multi+0x3b7>
fstp   %st(0)
fld1
fldz
mov    $0x1,%ebp
mov    0xc(%rsp),%r12d
jmp    142c <calculate_TE_contributions_multi+0x31c>
cs nopw 0x0(%rax,%rax,1)
nop
add    $0x1,%ebp
cmp    %r12d,%ebp
je     14ef <calculate_TE_contributions_multi+0x3df>
cmpl   $0x0,0x168(%rsp)
jle    1420 <calculate_TE_contributions_multi+0x310>
fstp   %st(0)
xor    %ebx,%ebx
mov    0x168(%rsp),%edx
fldz
jmp    1468 <calculate_TE_contributions_multi+0x358>
cs nopw 0x0(%rax,%rax,1)
nop
fldt   0x10(%rsp)
fldz
fstp   %st(0)
add    $0x1,%ebx
mov    0x168(%rsp),%edx
cmp    %ebx,%edx
fxch   %st(1)
je     1420 <calculate_TE_contributions_multi+0x310>
fstp   %st(0)
fstpt  0x10(%rsp)
mov    %ebp,%edi
mov    %ebx,%esi
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
mov    0x70(%rsp),%rcx
fldt   (%rcx,%rax,1)
fld1
fsub   %st(1),%st
fxch   %st(1)
fucomi %st(1),%st
fld    %st(0)
fcmovnbe %st(2),%st
fstp   %st(2)
fldz
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jne    149f <calculate_TE_contributions_multi+0x38f>
jnp    1450 <calculate_TE_contributions_multi+0x340>
mov    0x118(%rsp),%rcx
fldt   (%rcx,%rax,1)
mov    0xf0(%rsp),%rcx
fldt   (%rcx,%rax,1)
fsubrp %st,%st(1)
fdiv   %st(1),%st
fldt   0x10(%rsp)
fxch   %st(1)
fucomi %st(1),%st
jbe    1456 <calculate_TE_contributions_multi+0x346>
fstp   %st(1)
jmp    1454 <calculate_TE_contributions_multi+0x344>
movl   $0x0,0x34(%rsp)
xor    %r14d,%r14d
fld    %st(0)
fstpt  0x10(%rsp)
fld    %st(0)
fstpt  0x48(%rsp)
movl   $0x0,0x30(%rsp)
fstpt  0x64(%rsp)
jmp    1924 <calculate_TE_contributions_multi+0x814>
mov    %r14d,0x34(%rsp)
cmpl   $0x2,0x1b0(%rsp)
02
setge  %r14b
and    0x2c(%rsp),%r14b
fld1
cmp    $0x1,%r14b
fld    %st(0)
fstpt  0x64(%rsp)
fxch   %st(2)
fstpt  0x10(%rsp)
jne    1683 <calculate_TE_contributions_multi+0x573>
fstp   %st(1)
fld1
mov    $0x1,%ebp
fldz
fstpt  0x38(%rsp)
fxch   %st(1)
fstpt  0x58(%rsp)
fldz
jmp    1556 <calculate_TE_contributions_multi+0x446>
cs nopw 0x0(%rax,%rax,1)
add    $0x1,%ebp
cmp    %r12d,%ebp
fldt   0x64(%rsp)
fldt   0x48(%rsp)
fxch   %st(1)
je     1692 <calculate_TE_contributions_multi+0x582>
fstp   %st(0)
cmpl   $0x0,0x170(%rsp)
fstpt  0x48(%rsp)
jle    1540 <calculate_TE_contributions_multi+0x430>
xor    %ebx,%ebx
mov    0x170(%rsp),%edx
jmp    1598 <calculate_TE_contributions_multi+0x488>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
fstp   %st(0)
fldz
fldz
fstp   %st(1)
fstp   %st(0)
add    $0x1,%ebx
mov    0x170(%rsp),%edx
cmp    %ebx,%edx
je     1540 <calculate_TE_contributions_multi+0x430>
mov    %ebp,%edi
mov    %ebx,%esi
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
mov    0x98(%rsp),%rcx
fldt   (%rcx,%rax,1)
fldt   0x38(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    15c0 <calculate_TE_contributions_multi+0x4b0>
jnp    1580 <calculate_TE_contributions_multi+0x470>
mov    0x120(%rsp),%rcx
fldt   (%rcx,%rax,1)
mov    0xf8(%rsp),%rcx
fldt   (%rcx,%rax,1)
fsubrp %st,%st(1)
fldt   0x58(%rsp)
fdivr  %st(1),%st
fldt   0x48(%rsp)
fxch   %st(1)
fucomip %st(1),%st
fstp   %st(0)
jbe    1586 <calculate_TE_contributions_multi+0x476>
fdivp  %st,%st(1)
fstpt  0x48(%rsp)
jmp    1582 <calculate_TE_contributions_multi+0x472>
cmp    $0x2,%edx
ja     1782 <calculate_TE_contributions_multi+0x672>
movl   $0x0,0x2c(%rsp)
xor    %r14d,%r14d
jmp    12ed <calculate_TE_contributions_multi+0x1dd>
cmpl   $0x2,0x1b0(%rsp)
02
jle    21b3 <calculate_TE_contributions_multi+0x10a3>
test   %r12b,%r12b
mov    0x88(%rsp),%r14
mov    0x178(%rsp),%ebx
je     1782 <calculate_TE_contributions_multi+0x672>
mov    $0x1,%r13d
jmp    164f <calculate_TE_contributions_multi+0x53f>
nopl   0x0(%rax)
add    $0x1,%r13d
cmp    0xc(%rsp),%r13d
je     1782 <calculate_TE_contributions_multi+0x672>
test   %ebx,%ebx
mov    0x148(%rsp),%r15
jle    1640 <calculate_TE_contributions_multi+0x530>
xor    %ebp,%ebp
nopl   (%rax)
mov    %r13d,%edi
mov    %ebp,%esi
mov    %ebx,%edx
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
fstpt  (%r14,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%ebx
jne    1660 <calculate_TE_contributions_multi+0x550>
jmp    1640 <calculate_TE_contributions_multi+0x530>
fstp   %st(0)
xor    %r14d,%r14d
fld    %st(0)
mov    0x30(%rsp),%eax
fxch   %st(1)
jmp    1696 <calculate_TE_contributions_multi+0x586>
mov    0x30(%rsp),%eax
fxch   %st(1)
fstpt  0x48(%rsp)
and    0x2c(%rsp),%al
cmp    $0x1,%al
jne    1825 <calculate_TE_contributions_multi+0x715>
fstp   %st(0)
mov    %eax,0x30(%rsp)
fld1
mov    $0x1,%ebp
fldz
fstpt  0x7c(%rsp)
fld    %st(0)
fstpt  0x58(%rsp)
jmp    16e0 <calculate_TE_contributions_multi+0x5d0>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
add    $0x1,%ebp
cmp    %r12d,%ebp
fldt   0x38(%rsp)
je     1829 <calculate_TE_contributions_multi+0x719>
cmpl   $0x0,0x178(%rsp)
fstpt  0x38(%rsp)
jle    16d0 <calculate_TE_contributions_multi+0x5c0>
xor    %ebx,%ebx
mov    0x178(%rsp),%edx
jmp    171c <calculate_TE_contributions_multi+0x60c>
nopl   0x0(%rax)
fstp   %st(1)
fstp   %st(0)
fldz
fldz
fxch   %st(1)
fstp   %st(0)
fstp   %st(0)
add    $0x1,%ebx
mov    0x178(%rsp),%edx
cmp    %ebx,%edx
je     16d0 <calculate_TE_contributions_multi+0x5c0>
mov    %ebp,%edi
mov    %ebx,%esi
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
mov    0x88(%rsp),%rcx
fldt   (%rcx,%rax,1)
fldt   0x58(%rsp)
fsub   %st(1),%st
fldt   0x7c(%rsp)
fxch   %st(2)
fucomi %st(2),%st
fstp   %st(2)
jne    174a <calculate_TE_contributions_multi+0x63a>
jnp    1700 <calculate_TE_contributions_multi+0x5f0>
fxch   %st(1)
fucomi %st(1),%st
fld    %st(0)
fcmovnbe %st(2),%st
fstp   %st(2)
mov    0x128(%rsp),%rcx
fldt   (%rcx,%rax,1)
mov    0x100(%rsp),%rcx
fldt   (%rcx,%rax,1)
fsubrp %st,%st(1)
fdiv   %st,%st(2)
fldt   0x38(%rsp)
fxch   %st(3)
fucomip %st(3),%st
fstp   %st(2)
jbe    170a <calculate_TE_contributions_multi+0x5fa>
fdivrp %st,%st(1)
fstpt  0x38(%rsp)
jmp    1704 <calculate_TE_contributions_multi+0x5f4>
mov    0x1b0(%rsp),%edx
cmp    $0x4,%edx
setl   %al
and    %r12b,%al
mov    %eax,0x2c(%rsp)
mov    $0x1,%cl
cmp    $0x4,%edx
setge  %r14b
jl     12ef <calculate_TE_contributions_multi+0x1df>
mov    %r12d,%eax
xor    $0x1,%al
mov    0x160(%rsp),%r15d
jne    12f7 <calculate_TE_contributions_multi+0x1e7>
mov    $0x1,%ebx
mov    0x90(%rsp),%r15
jmp    17dd <calculate_TE_contributions_multi+0x6cd>
nopw   0x0(%rax,%rax,1)
add    $0x1,%ebx
cmp    0xc(%rsp),%ebx
je     21ca <calculate_TE_contributions_multi+0x10ba>
mov    0x180(%rsp),%r14d
test   %r14d,%r14d
mov    0x150(%rsp),%r13
jle    17d0 <calculate_TE_contributions_multi+0x6c0>
xor    %ebp,%ebp
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
fldt   0x0(%r13,%rax,1)
fstpt  (%r15,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%r14d
jne    1800 <calculate_TE_contributions_multi+0x6f0>
jmp    17d0 <calculate_TE_contributions_multi+0x6c0>
xor    %ecx,%ecx
jmp    182d <calculate_TE_contributions_multi+0x71d>
mov    0x30(%rsp),%ecx
mov    0x34(%rsp),%eax
and    0x2c(%rsp),%al
cmp    $0x1,%al
mov    %ecx,0x30(%rsp)
fstpt  0x38(%rsp)
jne    191c <calculate_TE_contributions_multi+0x80c>
mov    %eax,0x34(%rsp)
fld1
mov    $0x1,%ebp
fldz
fstpt  0x7c(%rsp)
fld    %st(0)
fstpt  0x58(%rsp)
fstpt  0x64(%rsp)
jmp    187c <calculate_TE_contributions_multi+0x76c>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
add    $0x1,%ebp
cmp    %r12d,%ebp
je     1924 <calculate_TE_contributions_multi+0x814>
cmpl   $0x0,0x180(%rsp)
jle    1870 <calculate_TE_contributions_multi+0x760>
xor    %ebx,%ebx
mov    0x180(%rsp),%edx
jmp    18bc <calculate_TE_contributions_multi+0x7ac>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
fstp   %st(1)
fstp   %st(0)
fldz
fldz
fxch   %st(1)
fstp   %st(0)
fstp   %st(0)
add    $0x1,%ebx
mov    0x180(%rsp),%edx
cmp    %ebx,%edx
je     1870 <calculate_TE_contributions_multi+0x760>
mov    %ebp,%edi
mov    %ebx,%esi
call   1030 <get_mtx_index@plt>
cltq
shl    $0x4,%rax
mov    0x90(%rsp),%rcx
fldt   (%rcx,%rax,1)
fldt   0x58(%rsp)
fsub   %st(1),%st
fldt   0x7c(%rsp)
fxch   %st(2)
fucomi %st(2),%st
fstp   %st(2)
jne    18ea <calculate_TE_contributions_multi+0x7da>
jnp    18a0 <calculate_TE_contributions_multi+0x790>
fxch   %st(1)
fucomi %st(1),%st
fld    %st(0)
fcmovnbe %st(2),%st
fstp   %st(2)
fldt   0x0(%r13,%rax,1)
mov    0x108(%rsp),%rcx
fldt   (%rcx,%rax,1)
fsubrp %st,%st(1)
fdiv   %st,%st(2)
fldt   0x64(%rsp)
fxch   %st(3)
fucomip %st(3),%st
fstp   %st(2)
jbe    18aa <calculate_TE_contributions_multi+0x79a>
fdivrp %st,%st(1)
fstpt  0x64(%rsp)
jmp    18a4 <calculate_TE_contributions_multi+0x794>
movl   $0x0,0x34(%rsp)
mov    %r14d,0x7c(%rsp)
cmp    $0x2,%r15d
jl     19e5 <calculate_TE_contributions_multi+0x8d5>
mov    $0x2,%r13d
sub    %r15d,%r13d
xor    %edi,%edi
fldz
fstpt  0x58(%rsp)
mov    0xb0(%rsp),%rbx
mov    0xa0(%rsp),%r14
jmp    196c <calculate_TE_contributions_multi+0x85c>
cs nopw 0x0(%rax,%rax,1)
add    $0x1,%edi
cmp    0xc(%rsp),%edi
mov    %rdx,%r15
je     19e5 <calculate_TE_contributions_multi+0x8d5>
cmp    $0x2,%r15d
mov    %r15,%rdx
mov    0x110(%rsp),%r12
fldt   0x20(%rsp)
fstp   %st(0)
je     1960 <calculate_TE_contributions_multi+0x850>
mov    $0x1,%ebp
nopl   0x0(%rax,%rax,1)
mov    %ebp,%esi
mov    %edi,%r15d
call   1030 <get_mtx_index@plt>
fldt   0x20(%rsp)
cltq
shl    $0x4,%rax
fldt   (%rbx,%rax,1)
fldt   (%r12,%rax,1)
fsubrp %st,%st(1)
fdivp  %st,%st(1)
fldt   (%r14,%rax,1)
faddp  %st,%st(1)
fldt   0x58(%rsp)
fucomi %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  (%r14,%rax,1)
lea    0x1(%r13,%rbp,1),%eax
mov    %ebp,%ecx
add    $0x1,%ecx
mov    %ecx,%ebp
mov    %r15d,%edi
mov    0x160(%rsp),%edx
cmp    $0x1,%eax
jne    1990 <calculate_TE_contributions_multi+0x880>
jmp    1960 <calculate_TE_contributions_multi+0x850>
cmpb   $0x0,0x2c(%rsp)
mov    0x70(%rsp),%rbp
je     1abd <calculate_TE_contributions_multi+0x9ad>
mov    0xc(%rsp),%eax
mov    %rax,0x58(%rsp)
mov    $0x1,%r15d
fldz
fstpt  0xa0(%rsp)
jmp    1a21 <calculate_TE_contributions_multi+0x911>
nop
fstp   %st(0)
add    $0x1,%r15
cmp    0x58(%rsp),%r15
je     1abd <calculate_TE_contributions_multi+0x9ad>
mov    0x168(%rsp),%r12d
test   %r12d,%r12d
mov    0x118(%rsp),%rcx
mov    0xf0(%rsp),%r14
fldt   0x10(%rsp)
jle    1a10 <calculate_TE_contributions_multi+0x900>
mov    %r15,%rax
shl    $0x4,%rax
add    0x188(%rsp),%rax
mov    %rax,0x20(%rsp)
xor    %ebx,%ebx
fstpt  0x10(%rsp)
fldz
xchg   %ax,%ax
fstp   %st(0)
mov    %r15d,%edi
mov    %ebx,%esi
mov    %r12d,%edx
mov    %rcx,%r13
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
mov    %r13,%rcx
cltq
shl    $0x4,%rax
fldt   (%r14,%rax,1)
fldt   0x0(%r13,%rax,1)
fsubrp %st,%st(1)
mov    0x20(%rsp),%rdx
fldt   (%rdx)
fmulp  %st,%st(2)
fdivp  %st,%st(1)
fldt   0x0(%rbp,%rax,1)
faddp  %st,%st(1)
fldt   0xa0(%rsp)
fucomi %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  0x0(%rbp,%rax,1)
add    $0x1,%ebx
cmp    %ebx,%r12d
fldz
jne    1a60 <calculate_TE_contributions_multi+0x950>
jmp    1a10 <calculate_TE_contributions_multi+0x900>
cmpb   $0x0,0x7c(%rsp)
je     1b98 <calculate_TE_contributions_multi+0xa88>
mov    0xc(%rsp),%eax
mov    %rax,0x70(%rsp)
mov    $0x1,%ebp
fldz
fstpt  0x20(%rsp)
mov    0x98(%rsp),%r15
jmp    1b01 <calculate_TE_contributions_multi+0x9f1>
cs nopw 0x0(%rax,%rax,1)
fstp   %st(0)
add    $0x1,%rbp
cmp    0x70(%rsp),%rbp
je     1b98 <calculate_TE_contributions_multi+0xa88>
mov    0x170(%rsp),%r13d
test   %r13d,%r13d
mov    0x120(%rsp),%rcx
mov    0xf8(%rsp),%r14
fldt   0x48(%rsp)
jle    1af0 <calculate_TE_contributions_multi+0x9e0>
mov    %rbp,%rax
shl    $0x4,%rax
add    0x190(%rsp),%rax
mov    %rax,0x10(%rsp)
xor    %ebx,%ebx
fstpt  0x48(%rsp)
fldz
xchg   %ax,%ax
fstp   %st(0)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r13d,%edx
mov    %rcx,%r12
call   1030 <get_mtx_index@plt>
fldt   0x48(%rsp)
mov    %r12,%rcx
cltq
shl    $0x4,%rax
fldt   (%r14,%rax,1)
fldt   (%r12,%rax,1)
fsubrp %st,%st(1)
mov    0x10(%rsp),%rdx
fldt   (%rdx)
fmulp  %st,%st(2)
fdivp  %st,%st(1)
fldt   (%r15,%rax,1)
faddp  %st,%st(1)
fldt   0x20(%rsp)
fucomi %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  (%r15,%rax,1)
add    $0x1,%ebx
cmp    %ebx,%r13d
fldz
jne    1b40 <calculate_TE_contributions_multi+0xa30>
jmp    1af0 <calculate_TE_contributions_multi+0x9e0>
cmpb   $0x0,0x30(%rsp)
je     1c73 <calculate_TE_contributions_multi+0xb63>
mov    0xc(%rsp),%eax
mov    %rax,0x48(%rsp)
mov    $0x1,%ebp
fldz
fstpt  0x20(%rsp)
mov    0x88(%rsp),%r15
jmp    1be1 <calculate_TE_contributions_multi+0xad1>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
fstp   %st(0)
add    $0x1,%rbp
cmp    0x48(%rsp),%rbp
je     1c73 <calculate_TE_contributions_multi+0xb63>
mov    0x178(%rsp),%r12d
test   %r12d,%r12d
mov    0x128(%rsp),%r13
mov    0x100(%rsp),%r14
fldt   0x38(%rsp)
jle    1bd0 <calculate_TE_contributions_multi+0xac0>
mov    %rbp,%rax
shl    $0x4,%rax
add    0x198(%rsp),%rax
mov    %rax,0x10(%rsp)
xor    %ebx,%ebx
fstpt  0x38(%rsp)
fldz
xchg   %ax,%ax
fstp   %st(0)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r12d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x38(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r14,%rax,1)
fldt   0x0(%r13,%rax,1)
fsubrp %st,%st(1)
mov    0x10(%rsp),%rsi
fldt   (%rsi)
fmulp  %st,%st(2)
fdivp  %st,%st(1)
fldt   (%r15,%rax,1)
faddp  %st,%st(1)
fldt   0x20(%rsp)
fucomi %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  (%r15,%rax,1)
add    $0x1,%ebx
cmp    %ebx,%r12d
fldz
jne    1c20 <calculate_TE_contributions_multi+0xb10>
jmp    1bd0 <calculate_TE_contributions_multi+0xac0>
cmpb   $0x0,0x34(%rsp)
je     1d49 <calculate_TE_contributions_multi+0xc39>
mov    0xc(%rsp),%eax
mov    %rax,0x38(%rsp)
mov    $0x1,%ebp
fldz
fstpt  0x20(%rsp)
mov    0x90(%rsp),%r14
jmp    1cb1 <calculate_TE_contributions_multi+0xba1>
nopl   0x0(%rax)
fstp   %st(0)
add    $0x1,%rbp
cmp    0x38(%rsp),%rbp
je     1d49 <calculate_TE_contributions_multi+0xc39>
mov    0x180(%rsp),%r12d
test   %r12d,%r12d
mov    0x130(%rsp),%rcx
mov    0x108(%rsp),%r13
fldt   0x64(%rsp)
jle    1ca0 <calculate_TE_contributions_multi+0xb90>
mov    %rbp,%rax
shl    $0x4,%rax
add    0x1a0(%rsp),%rax
mov    %rax,0x10(%rsp)
xor    %ebx,%ebx
fstpt  0x64(%rsp)
fldz
xchg   %ax,%ax
fstp   %st(0)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r12d,%edx
mov    %rcx,%r15
call   1030 <get_mtx_index@plt>
fldt   0x64(%rsp)
mov    %r15,%rcx
cltq
shl    $0x4,%rax
fldt   0x0(%r13,%rax,1)
fldt   (%r15,%rax,1)
fsubrp %st,%st(1)
mov    0x10(%rsp),%rdx
fldt   (%rdx)
fmulp  %st,%st(2)
fdivp  %st,%st(1)
fldt   (%r14,%rax,1)
faddp  %st,%st(1)
fldt   0x20(%rsp)
fucomi %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  (%r14,%rax,1)
add    $0x1,%ebx
cmp    %ebx,%r12d
fldz
jne    1cf0 <calculate_TE_contributions_multi+0xbe0>
jmp    1ca0 <calculate_TE_contributions_multi+0xb90>
mov    0x160(%rsp),%eax
cmp    $0x2,%eax
mov    0xc(%rsp),%r13d
mov    0x168(%rsp),%r15d
jl     1e5e <calculate_TE_contributions_multi+0xd4e>
mov    $0x2,%r14d
mov    0x160(%rsp),%eax
sub    %eax,%r14d
xor    %ebp,%ebp
fldz
fstpt  0x20(%rsp)
jmp    1d93 <calculate_TE_contributions_multi+0xc83>
fstp   %st(0)
add    $0x1,%ebp
mov    0xc(%rsp),%r13d
cmp    %r13d,%ebp
je     1e5e <calculate_TE_contributions_multi+0xd4e>
mov    0x160(%rsp),%r12d
cmp    $0x2,%r12d
mov    0x158(%rsp),%r13
fldz
je     1d80 <calculate_TE_contributions_multi+0xc70>
fstp   %st(0)
mov    $0x1,%ebx
fldt   0x20(%rsp)
cs nopw 0x0(%rax,%rax,1)
fstpt  0x10(%rsp)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r12d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   0x0(%r13,%rax,1)
faddp  %st,%st(1)
lea    (%r14,%rbx,1),%eax
add    $0x1,%eax
mov    %ebx,%ecx
add    $0x1,%ecx
mov    %ecx,%ebx
cmp    $0x1,%eax
jne    1dc0 <calculate_TE_contributions_multi+0xcb0>
fldt   0x20(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    1e06 <calculate_TE_contributions_multi+0xcf6>
jnp    1d80 <calculate_TE_contributions_multi+0xc70>
cmp    $0x2,%r12d
je     1d80 <calculate_TE_contributions_multi+0xc70>
mov    $0x1,%ebx
fstpt  0x10(%rsp)
fldz
nopl   0x0(%rax,%rax,1)
fstp   %st(0)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r12d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   0x0(%r13,%rax,1)
fdivp  %st,%st(1)
fstpt  0x0(%r13,%rax,1)
lea    (%r14,%rbx,1),%eax
add    $0x1,%eax
mov    %ebx,%ecx
add    $0x1,%ecx
mov    %ecx,%ebx
cmp    $0x1,%eax
fldz
jne    1e20 <calculate_TE_contributions_multi+0xd10>
jmp    1d80 <calculate_TE_contributions_multi+0xc70>
cmpb   $0x0,0x2c(%rsp)
mov    0x178(%rsp),%r14d
je     1f31 <calculate_TE_contributions_multi+0xe21>
mov    $0x1,%ebp
fldz
fstpt  0x20(%rsp)
jmp    1e8e <calculate_TE_contributions_multi+0xd7e>
xchg   %ax,%ax
fstp   %st(0)
add    $0x1,%ebp
cmp    %r13d,%ebp
je     1f31 <calculate_TE_contributions_multi+0xe21>
test   %r15d,%r15d
mov    0x138(%rsp),%r12
fldz
jle    1e80 <calculate_TE_contributions_multi+0xd70>
fstp   %st(0)
xor    %ebx,%ebx
fldt   0x20(%rsp)
cs nopw 0x0(%rax,%rax,1)
nop
fstpt  0x10(%rsp)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r15d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r12,%rax,1)
faddp  %st,%st(1)
add    $0x1,%ebx
cmp    %ebx,%r15d
jne    1eb0 <calculate_TE_contributions_multi+0xda0>
fldt   0x20(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    1ee6 <calculate_TE_contributions_multi+0xdd6>
jnp    1e80 <calculate_TE_contributions_multi+0xd70>
test   %r15d,%r15d
jle    1e80 <calculate_TE_contributions_multi+0xd70>
xor    %ebx,%ebx
fstpt  0x10(%rsp)
fldz
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
fstp   %st(0)
mov    %ebp,%edi
mov    %ebx,%esi
mov    %r15d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r12,%rax,1)
fdivp  %st,%st(1)
fstpt  (%r12,%rax,1)
add    $0x1,%ebx
cmp    %ebx,%r15d
fldz
jne    1f00 <calculate_TE_contributions_multi+0xdf0>
jmp    1e80 <calculate_TE_contributions_multi+0xd70>
cmpb   $0x0,0x7c(%rsp)
mov    0x170(%rsp),%r15d
mov    0x140(%rsp),%r12
je     2001 <calculate_TE_contributions_multi+0xef1>
mov    $0x1,%ebx
fldz
fstpt  0x20(%rsp)
jmp    1f6e <calculate_TE_contributions_multi+0xe5e>
nopl   0x0(%rax)
fstp   %st(0)
add    $0x1,%ebx
cmp    %r13d,%ebx
je     2001 <calculate_TE_contributions_multi+0xef1>
test   %r15d,%r15d
fldz
jle    1f60 <calculate_TE_contributions_multi+0xe50>
fstp   %st(0)
xor    %ebp,%ebp
fldt   0x20(%rsp)
nopl   (%rax)
fstpt  0x10(%rsp)
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r15d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r12,%rax,1)
faddp  %st,%st(1)
add    $0x1,%ebp
cmp    %ebp,%r15d
jne    1f80 <calculate_TE_contributions_multi+0xe70>
fldt   0x20(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    1fb6 <calculate_TE_contributions_multi+0xea6>
jnp    1f60 <calculate_TE_contributions_multi+0xe50>
test   %r15d,%r15d
jle    1f60 <calculate_TE_contributions_multi+0xe50>
xor    %ebp,%ebp
fstpt  0x10(%rsp)
fldz
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
fstp   %st(0)
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r15d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r12,%rax,1)
fdivp  %st,%st(1)
fstpt  (%r12,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%r15d
fldz
jne    1fd0 <calculate_TE_contributions_multi+0xec0>
jmp    1f60 <calculate_TE_contributions_multi+0xe50>
cmpb   $0x0,0x30(%rsp)
je     20d1 <calculate_TE_contributions_multi+0xfc1>
mov    $0x1,%ebx
fldz
fstpt  0x20(%rsp)
jmp    202e <calculate_TE_contributions_multi+0xf1e>
nopl   0x0(%rax)
fstp   %st(0)
add    $0x1,%ebx
cmp    %r13d,%ebx
je     20d1 <calculate_TE_contributions_multi+0xfc1>
test   %r14d,%r14d
mov    0x148(%rsp),%r15
fldz
jle    2020 <calculate_TE_contributions_multi+0xf10>
fstp   %st(0)
xor    %ebp,%ebp
fldt   0x20(%rsp)
cs nopw 0x0(%rax,%rax,1)
nop
fstpt  0x10(%rsp)
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
faddp  %st,%st(1)
add    $0x1,%ebp
cmp    %ebp,%r14d
jne    2050 <calculate_TE_contributions_multi+0xf40>
fldt   0x20(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    2086 <calculate_TE_contributions_multi+0xf76>
jnp    2020 <calculate_TE_contributions_multi+0xf10>
test   %r14d,%r14d
jle    2020 <calculate_TE_contributions_multi+0xf10>
xor    %ebp,%ebp
fstpt  0x10(%rsp)
fldz
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
fstp   %st(0)
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
fdivp  %st,%st(1)
fstpt  (%r15,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%r14d
fldz
jne    20a0 <calculate_TE_contributions_multi+0xf90>
jmp    2020 <calculate_TE_contributions_multi+0xf10>
cmpb   $0x0,0x34(%rsp)
mov    0x180(%rsp),%r14d
mov    0x150(%rsp),%r15
je     21a1 <calculate_TE_contributions_multi+0x1091>
mov    $0x1,%ebx
fldz
fstpt  0x20(%rsp)
jmp    210e <calculate_TE_contributions_multi+0xffe>
nopl   0x0(%rax)
fstp   %st(0)
add    $0x1,%ebx
cmp    %r13d,%ebx
je     21a1 <calculate_TE_contributions_multi+0x1091>
test   %r14d,%r14d
fldz
jle    2100 <calculate_TE_contributions_multi+0xff0>
fstp   %st(0)
xor    %ebp,%ebp
fldt   0x20(%rsp)
nopl   (%rax)
fstpt  0x10(%rsp)
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
faddp  %st,%st(1)
add    $0x1,%ebp
cmp    %ebp,%r14d
jne    2120 <calculate_TE_contributions_multi+0x1010>
fldt   0x20(%rsp)
fxch   %st(1)
fucomi %st(1),%st
fstp   %st(1)
jne    2156 <calculate_TE_contributions_multi+0x1046>
jnp    2100 <calculate_TE_contributions_multi+0xff0>
test   %r14d,%r14d
jle    2100 <calculate_TE_contributions_multi+0xff0>
xor    %ebp,%ebp
fstpt  0x10(%rsp)
fldz
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
fstp   %st(0)
mov    %ebx,%edi
mov    %ebp,%esi
mov    %r14d,%edx
call   1030 <get_mtx_index@plt>
fldt   0x10(%rsp)
cltq
shl    $0x4,%rax
fldt   (%r15,%rax,1)
fdivp  %st,%st(1)
fstpt  (%r15,%rax,1)
add    $0x1,%ebp
cmp    %ebp,%r14d
fldz
jne    2170 <calculate_TE_contributions_multi+0x1060>
jmp    2100 <calculate_TE_contributions_multi+0xff0>
add    $0xb8,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
xor    %r14d,%r14d
mov    %r12d,0x2c(%rsp)
mov    0x160(%rsp),%r15d
xor    %ecx,%ecx
jmp    12f7 <calculate_TE_contributions_multi+0x1e7>
mov    %r12d,0x2c(%rsp)
mov    $0x1,%cl
mov    $0x1,%r14b
jmp    12ef <calculate_TE_contributions_multi+0x1df>

LLVM IR (-O0):
@calculate_TE_contributions_multi.DIVIDER_SCALER = internal global x86_fp80 0xK3FFF8000000000000000
define void @calculate_TE_contributions_multi(x86_fp80* %0, x86_fp80* %1, x86_fp80* %2, x86_fp80* %3, x86_fp80* %4, x86_fp80* %5, x86_fp80* %6, x86_fp80* %7, x86_fp80* %8, x86_fp80* %9, x86_fp80* %10, x86_fp80* %11, x86_fp80* %12, x86_fp80* %13, x86_fp80* %14, x86_fp80* %15, x86_fp80* %16, x86_fp80* %17, x86_fp80* %18, x86_fp80* %19, i32 %20, i32 %21, i32 %22, i32 %23, i32 %24, x86_fp80* %25, x86_fp80* %26, x86_fp80* %27, x86_fp80* %28, i32 %29, i32 %30) {
%32 = alloca x86_fp80*
%33 = alloca x86_fp80*
%34 = alloca x86_fp80*
%35 = alloca x86_fp80*
%36 = alloca x86_fp80*
%37 = alloca x86_fp80*
%38 = alloca x86_fp80*
%39 = alloca x86_fp80*
%40 = alloca x86_fp80*
%41 = alloca x86_fp80*
%42 = alloca x86_fp80*
%43 = alloca x86_fp80*
%44 = alloca x86_fp80*
%45 = alloca x86_fp80*
%46 = alloca x86_fp80*
%47 = alloca x86_fp80*
%48 = alloca x86_fp80*
%49 = alloca x86_fp80*
%50 = alloca x86_fp80*
%51 = alloca x86_fp80*
%52 = alloca i32
%53 = alloca i32
%54 = alloca i32
%55 = alloca i32
%56 = alloca i32
%57 = alloca x86_fp80*
%58 = alloca x86_fp80*
%59 = alloca x86_fp80*
%60 = alloca x86_fp80*
%61 = alloca i32
%62 = alloca i32
%63 = alloca i32
%64 = alloca i32
%65 = alloca i32
%66 = alloca i32
%67 = alloca i32
%68 = alloca i32
%69 = alloca i32
%70 = alloca i32
%71 = alloca x86_fp80
%72 = alloca x86_fp80
%73 = alloca x86_fp80
%74 = alloca x86_fp80
%75 = alloca x86_fp80
%76 = alloca x86_fp80
%77 = alloca x86_fp80
%78 = alloca x86_fp80
%79 = alloca x86_fp80
%80 = alloca x86_fp80
%81 = alloca x86_fp80
%82 = alloca x86_fp80
%83 = alloca x86_fp80
%84 = alloca x86_fp80
%85 = alloca x86_fp80
%86 = alloca x86_fp80
store x86_fp80* %0, x86_fp80** %32
store x86_fp80* %1, x86_fp80** %33
store x86_fp80* %2, x86_fp80** %34
store x86_fp80* %3, x86_fp80** %35
store x86_fp80* %4, x86_fp80** %36
store x86_fp80* %5, x86_fp80** %37
store x86_fp80* %6, x86_fp80** %38
store x86_fp80* %7, x86_fp80** %39
store x86_fp80* %8, x86_fp80** %40
store x86_fp80* %9, x86_fp80** %41
store x86_fp80* %10, x86_fp80** %42
store x86_fp80* %11, x86_fp80** %43
store x86_fp80* %12, x86_fp80** %44
store x86_fp80* %13, x86_fp80** %45
store x86_fp80* %14, x86_fp80** %46
store x86_fp80* %15, x86_fp80** %47
store x86_fp80* %16, x86_fp80** %48
store x86_fp80* %17, x86_fp80** %49
store x86_fp80* %18, x86_fp80** %50
store x86_fp80* %19, x86_fp80** %51
store i32 %20, i32* %52
store i32 %21, i32* %53
store i32 %22, i32* %54
store i32 %23, i32* %55
store i32 %24, i32* %56
store x86_fp80* %25, x86_fp80** %57
store x86_fp80* %26, x86_fp80** %58
store x86_fp80* %27, x86_fp80** %59
store x86_fp80* %28, x86_fp80** %60
store i32 %29, i32* %61
store i32 %30, i32* %62
store i32 0, i32* %63
br label %87
87: ; preds = %116, %31
%88 = load i32, i32* %63
%89 = load i32, i32* %52
%90 = sub nsw i32 %89, 1
%91 = icmp slt i32 %88, %90
br i1 %91, label %92, label %119
92: ; preds = %87
store i32 1, i32* %64
br label %93
93: ; preds = %112, %92
%94 = load i32, i32* %64
%95 = load i32, i32* %52
%96 = sub nsw i32 %95, 1
%97 = icmp slt i32 %94, %96
br i1 %97, label %98, label %115
98: ; preds = %93
%99 = load i32, i32* %63
%100 = load i32, i32* %64
%101 = load i32, i32* %52
%102 = call i32 @get_mtx_index(i32 %99, i32 %100, i32 %101)
store i32 %102, i32* %66
%103 = load x86_fp80*, x86_fp80** %51
%104 = load i32, i32* %66
%105 = sext i32 %104 to i64
%106 = getelementptr inbounds x86_fp80, x86_fp80* %103, i64 %105
%107 = load x86_fp80, x86_fp80* %106
%108 = load x86_fp80*, x86_fp80** %32
%109 = load i32, i32* %66
%110 = sext i32 %109 to i64
%111 = getelementptr inbounds x86_fp80, x86_fp80* %108, i64 %110
store x86_fp80 %107, x86_fp80* %111
br label %112
112: ; preds = %98
%113 = load i32, i32* %64
%114 = add nsw i32 %113, 1
store i32 %114, i32* %64
br label %93
115: ; preds = %93
br label %116
116: ; preds = %115
%117 = load i32, i32* %63
%118 = add nsw i32 %117, 1
store i32 %118, i32* %63
br label %87
119: ; preds = %87
store i32 1, i32* %63
br label %120
120: ; preds = %148, %119
%121 = load i32, i32* %63
%122 = load i32, i32* %52
%123 = sub nsw i32 %122, 1
%124 = icmp slt i32 %121, %123
br i1 %124, label %125, label %151
125: ; preds = %120
store i32 0, i32* %65
br label %126
126: ; preds = %144, %125
%127 = load i32, i32* %65
%128 = load i32, i32* %53
%129 = icmp slt i32 %127, %128
br i1 %129, label %130, label %147
130: ; preds = %126
%131 = load i32, i32* %63
%132 = load i32, i32* %65
%133 = load i32, i32* %53
%134 = call i32 @get_mtx_index(i32 %131, i32 %132, i32 %133)
store i32 %134, i32* %67
%135 = load x86_fp80*, x86_fp80** %47
%136 = load i32, i32* %67
%137 = sext i32 %136 to i64
%138 = getelementptr inbounds x86_fp80, x86_fp80* %135, i64 %137
%139 = load x86_fp80, x86_fp80* %138
%140 = load x86_fp80*, x86_fp80** %33
%141 = load i32, i32* %67
%142 = sext i32 %141 to i64
%143 = getelementptr inbounds x86_fp80, x86_fp80* %140, i64 %142
store x86_fp80 %139, x86_fp80* %143
br label %144
144: ; preds = %130
%145 = load i32, i32* %65
%146 = add nsw i32 %145, 1
store i32 %146, i32* %65
br label %126
147: ; preds = %126
br label %148
148: ; preds = %147
%149 = load i32, i32* %63
%150 = add nsw i32 %149, 1
store i32 %150, i32* %63
br label %120
151: ; preds = %120
%152 = load i32, i32* %62
%153 = icmp sgt i32 %152, 1
br i1 %153, label %154, label %187
154: ; preds = %151
store i32 1, i32* %63
br label %155
155: ; preds = %183, %154
%156 = load i32, i32* %63
%157 = load i32, i32* %52
%158 = sub nsw i32 %157, 1
%159 = icmp slt i32 %156, %158
br i1 %159, label %160, label %186
160: ; preds = %155
store i32 0, i32* %65
br label %161
161: ; preds = %179, %160
%162 = load i32, i32* %65
%163 = load i32, i32* %54
%164 = icmp slt i32 %162, %163
br i1 %164, label %165, label %182
165: ; preds = %161
%166 = load i32, i32* %63
%167 = load i32, i32* %65
%168 = load i32, i32* %54
%169 = call i32 @get_mtx_index(i32 %166, i32 %167, i32 %168)
store i32 %169, i32* %67
%170 = load x86_fp80*, x86_fp80** %48
%171 = load i32, i32* %67
%172 = sext i32 %171 to i64
%173 = getelementptr inbounds x86_fp80, x86_fp80* %170, i64 %172
%174 = load x86_fp80, x86_fp80* %173
%175 = load x86_fp80*, x86_fp80** %34
%176 = load i32, i32* %67
%177 = sext i32 %176 to i64
%178 = getelementptr inbounds x86_fp80, x86_fp80* %175, i64 %177
store x86_fp80 %174, x86_fp80* %178
br label %179
179: ; preds = %165
%180 = load i32, i32* %65
%181 = add nsw i32 %180, 1
store i32 %181, i32* %65
br label %161
182: ; preds = %161
br label %183
183: ; preds = %182
%184 = load i32, i32* %63
%185 = add nsw i32 %184, 1
store i32 %185, i32* %63
br label %155
186: ; preds = %155
br label %187
187: ; preds = %186, %151
%188 = load i32, i32* %62
%189 = icmp sgt i32 %188, 2
br i1 %189, label %190, label %223
190: ; preds = %187
store i32 1, i32* %63
br label %191
191: ; preds = %219, %190
%192 = load i32, i32* %63
%193 = load i32, i32* %52
%194 = sub nsw i32 %193, 1
%195 = icmp slt i32 %192, %194
br i1 %195, label %196, label %222
196: ; preds = %191
store i32 0, i32* %65
br label %197
197: ; preds = %215, %196
%198 = load i32, i32* %65
%199 = load i32, i32* %55
%200 = icmp slt i32 %198, %199
br i1 %200, label %201, label %218
201: ; preds = %197
%202 = load i32, i32* %63
%203 = load i32, i32* %65
%204 = load i32, i32* %55
%205 = call i32 @get_mtx_index(i32 %202, i32 %203, i32 %204)
store i32 %205, i32* %67
%206 = load x86_fp80*, x86_fp80** %49
%207 = load i32, i32* %67
%208 = sext i32 %207 to i64
%209 = getelementptr inbounds x86_fp80, x86_fp80* %206, i64 %208
%210 = load x86_fp80, x86_fp80* %209
%211 = load x86_fp80*, x86_fp80** %35
%212 = load i32, i32* %67
%213 = sext i32 %212 to i64
%214 = getelementptr inbounds x86_fp80, x86_fp80* %211, i64 %213
store x86_fp80 %210, x86_fp80* %214
br label %215
215: ; preds = %201
%216 = load i32, i32* %65
%217 = add nsw i32 %216, 1
store i32 %217, i32* %65
br label %197
218: ; preds = %197
br label %219
219: ; preds = %218
%220 = load i32, i32* %63
%221 = add nsw i32 %220, 1
store i32 %221, i32* %63
br label %191
222: ; preds = %191
br label %223
223: ; preds = %222, %187
%224 = load i32, i32* %62
%225 = icmp sgt i32 %224, 3
br i1 %225, label %226, label %259
226: ; preds = %223
store i32 1, i32* %63
br label %227
227: ; preds = %255, %226
%228 = load i32, i32* %63
%229 = load i32, i32* %52
%230 = sub nsw i32 %229, 1
%231 = icmp slt i32 %228, %230
br i1 %231, label %232, label %258
232: ; preds = %227
store i32 0, i32* %65
br label %233
233: ; preds = %251, %232
%234 = load i32, i32* %65
%235 = load i32, i32* %56
%236 = icmp slt i32 %234, %235
br i1 %236, label %237, label %254
237: ; preds = %233
%238 = load i32, i32* %63
%239 = load i32, i32* %65
%240 = load i32, i32* %56
%241 = call i32 @get_mtx_index(i32 %238, i32 %239, i32 %240)
store i32 %241, i32* %67
%242 = load x86_fp80*, x86_fp80** %50
%243 = load i32, i32* %67
%244 = sext i32 %243 to i64
%245 = getelementptr inbounds x86_fp80, x86_fp80* %242, i64 %244
%246 = load x86_fp80, x86_fp80* %245
%247 = load x86_fp80*, x86_fp80** %36
%248 = load i32, i32* %67
%249 = sext i32 %248 to i64
%250 = getelementptr inbounds x86_fp80, x86_fp80* %247, i64 %249
store x86_fp80 %246, x86_fp80* %250
br label %251
251: ; preds = %237
%252 = load i32, i32* %65
%253 = add nsw i32 %252, 1
store i32 %253, i32* %65
br label %233
254: ; preds = %233
br label %255
255: ; preds = %254
%256 = load i32, i32* %63
%257 = add nsw i32 %256, 1
store i32 %257, i32* %63
br label %227
258: ; preds = %227
br label %259
259: ; preds = %258, %223
store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %72
store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %73
store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %74
store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %75
store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %76
store i32 0, i32* %63
br label %260
260: ; preds = %338, %259
%261 = load i32, i32* %63
%262 = load i32, i32* %52
%263 = sub nsw i32 %262, 1
%264 = icmp slt i32 %261, %263
br i1 %264, label %265, label %341
265: ; preds = %260
store i32 1, i32* %64
br label %266
266: ; preds = %334, %265
%267 = load i32, i32* %64
%268 = load i32, i32* %52
%269 = sub nsw i32 %268, 1
%270 = icmp slt i32 %267, %269
br i1 %270, label %271, label %337
271: ; preds = %266
%272 = load i32, i32* %63
%273 = load i32, i32* %64
%274 = load i32, i32* %52
%275 = call i32 @get_mtx_index(i32 %272, i32 %273, i32 %274)
store i32 %275, i32* %66
%276 = load x86_fp80*, x86_fp80** %32
%277 = load i32, i32* %66
%278 = sext i32 %277 to i64
%279 = getelementptr inbounds x86_fp80, x86_fp80* %276, i64 %278
%280 = load x86_fp80, x86_fp80* %279
store x86_fp80 %280, x86_fp80* %86
%281 = load x86_fp80*, x86_fp80** %32
%282 = load i32, i32* %66
%283 = sext i32 %282 to i64
%284 = getelementptr inbounds x86_fp80, x86_fp80* %281, i64 %283
%285 = load x86_fp80, x86_fp80* %284
%286 = load x86_fp80*, x86_fp80** %32
%287 = load i32, i32* %66
%288 = sext i32 %287 to i64
%289 = getelementptr inbounds x86_fp80, x86_fp80* %286, i64 %288
%290 = load x86_fp80, x86_fp80* %289
%291 = fsub x86_fp80 0xK3FFF8000000000000000, %290
%292 = fcmp ogt x86_fp80 %285, %291
br i1 %292, label %293, label %300
293: ; preds = %271
%294 = load x86_fp80*, x86_fp80** %32
%295 = load i32, i32* %66
%296 = sext i32 %295 to i64
%297 = getelementptr inbounds x86_fp80, x86_fp80* %294, i64 %296
%298 = load x86_fp80, x86_fp80* %297
%299 = fsub x86_fp80 0xK3FFF8000000000000000, %298
store x86_fp80 %299, x86_fp80* %86
br label %300
300: ; preds = %293, %271
%301 = load x86_fp80, x86_fp80* %86
%302 = fcmp une x86_fp80 %301, 0xK00000000000000000000
br i1 %302, label %303, label %333
303: ; preds = %300
%304 = load x86_fp80*, x86_fp80** %42
%305 = load i32, i32* %66
%306 = sext i32 %305 to i64
%307 = getelementptr inbounds x86_fp80, x86_fp80* %304, i64 %306
%308 = load x86_fp80, x86_fp80* %307
%309 = load x86_fp80*, x86_fp80** %37
%310 = load i32, i32* %66
%311 = sext i32 %310 to i64
%312 = getelementptr inbounds x86_fp80, x86_fp80* %309, i64 %311
%313 = load x86_fp80, x86_fp80* %312
%314 = fsub x86_fp80 %308, %313
%315 = load x86_fp80, x86_fp80* %86
%316 = fdiv x86_fp80 %314, %315
%317 = load x86_fp80, x86_fp80* %72
%318 = fcmp ogt x86_fp80 %316, %317
br i1 %318, label %319, label %333
319: ; preds = %303
%320 = load x86_fp80*, x86_fp80** %42
%321 = load i32, i32* %66
%322 = sext i32 %321 to i64
%323 = getelementptr inbounds x86_fp80, x86_fp80* %320, i64 %322
%324 = load x86_fp80, x86_fp80* %323
%325 = load x86_fp80*, x86_fp80** %37
%326 = load i32, i32* %66
%327 = sext i32 %326 to i64
%328 = getelementptr inbounds x86_fp80, x86_fp80* %325, i64 %327
%329 = load x86_fp80, x86_fp80* %328
%330 = fsub x86_fp80 %324, %329
%331 = load x86_fp80, x86_fp80* %86
%332 = fdiv x86_fp80 %330, %331
store x86_fp80 %332, x86_fp80* %72
br label %333
333: ; preds = %319, %303, %300
br label %334
334: ; preds = %333
%335 = load i32, i32* %64
%336 = add nsw i32 %335, 1
store i32 %336, i32* %64
br label %266
337: ; preds = %266
br label %338
338: ; preds = %337
%339 = load i32, i32* %63
%340 = add nsw i32 %339, 1
store i32 %340, i32* %63
br label %260
341: ; preds = %260
store i32 1, i32* %63
br label %342
342: ; preds = %423, %341
%343 = load i32, i32* %63
%344 = load i32, i32* %52
%345 = sub nsw i32 %344, 1
%346 = icmp slt i32 %343, %345
br i1 %346, label %347, label %426
347: ; preds = %342
store i32 0, i32* %65
br label %348
348: ; preds = %419, %347
%349 = load i32, i32* %65
%350 = load i32, i32* %53
%351 = icmp slt i32 %349, %350
br i1 %351, label %352, label %422
352: ; preds = %348
%353 = load i32, i32* %63
%354 = load i32, i32* %65
%355 = load i32, i32* %53
%356 = call i32 @get_mtx_index(i32 %353, i32 %354, i32 %355)
store i32 %356, i32* %67
%357 = load x86_fp80*, x86_fp80** %33
%358 = load i32, i32* %67
%359 = sext i32 %358 to i64
%360 = getelementptr inbounds x86_fp80, x86_fp80* %357, i64 %359
%361 = load x86_fp80, x86_fp80* %360
store x86_fp80 %361, x86_fp80* %82
%362 = load x86_fp80*, x86_fp80** %33
%363 = load i32, i32* %67
%364 = sext i32 %363 to i64
%365 = getelementptr inbounds x86_fp80, x86_fp80* %362, i64 %364
%366 = load x86_fp80, x86_fp80* %365
%367 = load x86_fp80*, x86_fp80** %33
%368 = load i32, i32* %67
%369 = sext i32 %368 to i64
%370 = getelementptr inbounds x86_fp80, x86_fp80* %367, i64 %369
%371 = load x86_fp80, x86_fp80* %370
%372 = fsub x86_fp80 0xK3FFF8000000000000000, %371
%373 = fcmp ogt x86_fp80 %366, %372
br i1 %373, label %374, label %381
374: ; preds = %352
%375 = load x86_fp80*, x86_fp80** %33
%376 = load i32, i32* %67
%377 = sext i32 %376 to i64
%378 = getelementptr inbounds x86_fp80, x86_fp80* %375, i64 %377
%379 = load x86_fp80, x86_fp80* %378
%380 = fsub x86_fp80 0xK3FFF8000000000000000, %379
store x86_fp80 %380, x86_fp80* %82
br label %381
381: ; preds = %374, %352
%382 = load x86_fp80*, x86_fp80** %33
%383 = load i32, i32* %67
%384 = sext i32 %383 to i64
%385 = getelementptr inbounds x86_fp80, x86_fp80* %382, i64 %384
%386 = load x86_fp80, x86_fp80* %385
%387 = fcmp une x86_fp80 %386, 0xK00000000000000000000
br i1 %387, label %388, label %418
388: ; preds = %381
%389 = load x86_fp80*, x86_fp80** %43
%390 = load i32, i32* %67
%391 = sext i32 %390 to i64
%392 = getelementptr inbounds x86_fp80, x86_fp80* %389, i64 %391
%393 = load x86_fp80, x86_fp80* %392
%394 = load x86_fp80*, x86_fp80** %38
%395 = load i32, i32* %67
%396 = sext i32 %395 to i64
%397 = getelementptr inbounds x86_fp80, x86_fp80* %394, i64 %396
%398 = load x86_fp80, x86_fp80* %397
%399 = fsub x86_fp80 %393, %398
%400 = load x86_fp80, x86_fp80* %82
%401 = fdiv x86_fp80 %399, %400
%402 = load x86_fp80, x86_fp80* %73
%403 = fcmp ogt x86_fp80 %401, %402
br i1 %403, label %404, label %418
404: ; preds = %388
%405 = load x86_fp80*, x86_fp80** %43
%406 = load i32, i32* %67
%407 = sext i32 %406 to i64
%408 = getelementptr inbounds x86_fp80, x86_fp80* %405, i64 %407
%409 = load x86_fp80, x86_fp80* %408
%410 = load x86_fp80*, x86_fp80** %38
%411 = load i32, i32* %67
%412 = sext i32 %411 to i64
%413 = getelementptr inbounds x86_fp80, x86_fp80* %410, i64 %412
%414 = load x86_fp80, x86_fp80* %413
%415 = fsub x86_fp80 %409, %414
%416 = load x86_fp80, x86_fp80* %82
%417 = fdiv x86_fp80 %415, %416
store x86_fp80 %417, x86_fp80* %73
br label %418
418: ; preds = %404, %388, %381
br label %419
419: ; preds = %418
%420 = load i32, i32* %65
%421 = add nsw i32 %420, 1
store i32 %421, i32* %65
br label %348
422: ; preds = %348
br label %423
423: ; preds = %422
%424 = load i32, i32* %63
%425 = add nsw i32 %424, 1
store i32 %425, i32* %63
br label %342
426: ; preds = %342
%427 = load i32, i32* %62
%428 = icmp sgt i32 %427, 1
br i1 %428, label %429, label %519
429: ; preds = %426
store i32 1, i32* %63
br label %430
430: ; preds = %515, %429
%431 = load i32, i32* %63
%432 = load i32, i32* %52
%433 = sub nsw i32 %432, 1
%434 = icmp slt i32 %431, %433
br i1 %434, label %435, label %518
435: ; preds = %430
store i32 0, i32* %65
br label %436
436: ; preds = %511, %435
%437 = load i32, i32* %65
%438 = load i32, i32* %54
%439 = icmp slt i32 %437, %438
br i1 %439, label %440, label %514
440: ; preds = %436
%441 = load i32, i32* %63
%442 = load i32, i32* %65
%443 = load i32, i32* %54
%444 = call i32 @get_mtx_index(i32 %441, i32 %442, i32 %443)
store i32 %444, i32* %67
%445 = load x86_fp80*, x86_fp80** %34
%446 = load i32, i32* %67
%447 = sext i32 %446 to i64
%448 = getelementptr inbounds x86_fp80, x86_fp80* %445, i64 %447
%449 = load x86_fp80, x86_fp80* %448
store x86_fp80 %449, x86_fp80* %83
%450 = load x86_fp80*, x86_fp80** %34
%451 = load i32, i32* %67
%452 = sext i32 %451 to i64
%453 = getelementptr inbounds x86_fp80, x86_fp80* %450, i64 %452
%454 = load x86_fp80, x86_fp80* %453
%455 = load x86_fp80*, x86_fp80** %34
%456 = load i32, i32* %67
%457 = sext i32 %456 to i64
%458 = getelementptr inbounds x86_fp80, x86_fp80* %455, i64 %457
%459 = load x86_fp80, x86_fp80* %458
%460 = fsub x86_fp80 0xK3FFF8000000000000000, %459
%461 = fcmp ogt x86_fp80 %454, %460
br i1 %461, label %462, label %469
462: ; preds = %440
%463 = load x86_fp80*, x86_fp80** %34
%464 = load i32, i32* %67
%465 = sext i32 %464 to i64
%466 = getelementptr inbounds x86_fp80, x86_fp80* %463, i64 %465
%467 = load x86_fp80, x86_fp80* %466
%468 = fsub x86_fp80 0xK3FFF8000000000000000, %467
store x86_fp80 %468, x86_fp80* %83
br label %469
469: ; preds = %462, %440
%470 = load x86_fp80*, x86_fp80** %34
%471 = load i32, i32* %67
%472 = sext i32 %471 to i64
%473 = getelementptr inbounds x86_fp80, x86_fp80* %470, i64 %472
%474 = load x86_fp80, x86_fp80* %473
%475 = fcmp une x86_fp80 %474, 0xK00000000000000000000
br i1 %475, label %476, label %510
476: ; preds = %469
%477 = load x86_fp80*, x86_fp80** %44
%478 = load i32, i32* %67
%479 = sext i32 %478 to i64
%480 = getelementptr inbounds x86_fp80, x86_fp80* %477, i64 %479
%481 = load x86_fp80, x86_fp80* %480
%482 = load x86_fp80*, x86_fp80** %39
%483 = load i32, i32* %67
%484 = sext i32 %483 to i64
%485 = getelementptr inbounds x86_fp80, x86_fp80* %482, i64 %484
%486 = load x86_fp80, x86_fp80* %485
%487 = fsub x86_fp80 %481, %486
%488 = load x86_fp80, x86_fp80* %82
%489 = fdiv x86_fp80 %487, %488
%490 = load x86_fp80, x86_fp80* %74
%491 = fcmp ogt x86_fp80 %489, %490
br i1 %491, label %492, label %510
492: ; preds = %476
%493 = load x86_fp80*, x86_fp80** %44
%494 = load i32, i32* %67
%495 = sext i32 %494 to i64
%496 = getelementptr inbounds x86_fp80, x86_fp80* %493, i64 %495
%497 = load x86_fp80, x86_fp80* %496
%498 = load x86_fp80*, x86_fp80** %39
%499 = load i32, i32* %67
%500 = sext i32 %499 to i64
%501 = getelementptr inbounds x86_fp80, x86_fp80* %498, i64 %500
%502 = load x86_fp80, x86_fp80* %501
%503 = fsub x86_fp80 %497, %502
%504 = load x86_fp80*, x86_fp80** %34
%505 = load i32, i32* %67
%506 = sext i32 %505 to i64
%507 = getelementptr inbounds x86_fp80, x86_fp80* %504, i64 %506
%508 = load x86_fp80, x86_fp80* %507
%509 = fdiv x86_fp80 %503, %508
store x86_fp80 %509, x86_fp80* %74
br label %510
510: ; preds = %492, %476, %469
br label %511
511: ; preds = %510
%512 = load i32, i32* %65
%513 = add nsw i32 %512, 1
store i32 %513, i32* %65
br label %436
514: ; preds = %436
br label %515
515: ; preds = %514
%516 = load i32, i32* %63
%517 = add nsw i32 %516, 1
store i32 %517, i32* %63
br label %430
518: ; preds = %430
br label %519
519: ; preds = %518, %426
%520 = load i32, i32* %62
%521 = icmp sgt i32 %520, 2
br i1 %521, label %522, label %612
522: ; preds = %519
store i32 1, i32* %63
br label %523
523: ; preds = %608, %522
%524 = load i32, i32* %63
%525 = load i32, i32* %52
%526 = sub nsw i32 %525, 1
%527 = icmp slt i32 %524, %526
br i1 %527, label %528, label %611
528: ; preds = %523
store i32 0, i32* %65
br label %529
529: ; preds = %604, %528
%530 = load i32, i32* %65
%531 = load i32, i32* %55
%532 = icmp slt i32 %530, %531
br i1 %532, label %533, label %607
533: ; preds = %529
%534 = load i32, i32* %63
%535 = load i32, i32* %65
%536 = load i32, i32* %55
%537 = call i32 @get_mtx_index(i32 %534, i32 %535, i32 %536)
store i32 %537, i32* %67
%538 = load x86_fp80*, x86_fp80** %35
%539 = load i32, i32* %67
%540 = sext i32 %539 to i64
%541 = getelementptr inbounds x86_fp80, x86_fp80* %538, i64 %540
%542 = load x86_fp80, x86_fp80* %541
store x86_fp80 %542, x86_fp80* %84
%543 = load x86_fp80*, x86_fp80** %35
%544 = load i32, i32* %67
%545 = sext i32 %544 to i64
%546 = getelementptr inbounds x86_fp80, x86_fp80* %543, i64 %545
%547 = load x86_fp80, x86_fp80* %546
%548 = load x86_fp80*, x86_fp80** %35
%549 = load i32, i32* %67
%550 = sext i32 %549 to i64
%551 = getelementptr inbounds x86_fp80, x86_fp80* %548, i64 %550
%552 = load x86_fp80, x86_fp80* %551
%553 = fsub x86_fp80 0xK3FFF8000000000000000, %552
%554 = fcmp ogt x86_fp80 %547, %553
br i1 %554, label %555, label %562
555: ; preds = %533
%556 = load x86_fp80*, x86_fp80** %35
%557 = load i32, i32* %67
%558 = sext i32 %557 to i64
%559 = getelementptr inbounds x86_fp80, x86_fp80* %556, i64 %558
%560 = load x86_fp80, x86_fp80* %559
%561 = fsub x86_fp80 0xK3FFF8000000000000000, %560
store x86_fp80 %561, x86_fp80* %84
br label %562
562: ; preds = %555, %533
%563 = load x86_fp80*, x86_fp80** %35
%564 = load i32, i32* %67
%565 = sext i32 %564 to i64
%566 = getelementptr inbounds x86_fp80, x86_fp80* %563, i64 %565
%567 = load x86_fp80, x86_fp80* %566
%568 = fcmp une x86_fp80 %567, 0xK00000000000000000000
br i1 %568, label %569, label %603
569: ; preds = %562
%570 = load x86_fp80*, x86_fp80** %45
%571 = load i32, i32* %67
%572 = sext i32 %571 to i64
%573 = getelementptr inbounds x86_fp80, x86_fp80* %570, i64 %572
%574 = load x86_fp80, x86_fp80* %573
%575 = load x86_fp80*, x86_fp80** %40
%576 = load i32, i32* %67
%577 = sext i32 %576 to i64
%578 = getelementptr inbounds x86_fp80, x86_fp80* %575, i64 %577
%579 = load x86_fp80, x86_fp80* %578
%580 = fsub x86_fp80 %574, %579
%581 = load x86_fp80, x86_fp80* %84
%582 = fdiv x86_fp80 %580, %581
%583 = load x86_fp80, x86_fp80* %75
%584 = fcmp ogt x86_fp80 %582, %583
br i1 %584, label %585, label %603
585: ; preds = %569
%586 = load x86_fp80*, x86_fp80** %45
%587 = load i32, i32* %67
%588 = sext i32 %587 to i64
%589 = getelementptr inbounds x86_fp80, x86_fp80* %586, i64 %588
%590 = load x86_fp80, x86_fp80* %589
%591 = load x86_fp80*, x86_fp80** %40
%592 = load i32, i32* %67
%593 = sext i32 %592 to i64
%594 = getelementptr inbounds x86_fp80, x86_fp80* %591, i64 %593
%595 = load x86_fp80, x86_fp80* %594
%596 = fsub x86_fp80 %590, %595
%597 = load x86_fp80*, x86_fp80** %35
%598 = load i32, i32* %67
%599 = sext i32 %598 to i64
%600 = getelementptr inbounds x86_fp80, x86_fp80* %597, i64 %599
%601 = load x86_fp80, x86_fp80* %600
%602 = fdiv x86_fp80 %596, %601
store x86_fp80 %602, x86_fp80* %75
br label %603
603: ; preds = %585, %569, %562
br label %604
604: ; preds = %603
%605 = load i32, i32* %65
%606 = add nsw i32 %605, 1
store i32 %606, i32* %65
br label %529
607: ; preds = %529
br label %608
608: ; preds = %607
%609 = load i32, i32* %63
%610 = add nsw i32 %609, 1
store i32 %610, i32* %63
br label %523
611: ; preds = %523
br label %612
612: ; preds = %611, %519
%613 = load i32, i32* %62
%614 = icmp sgt i32 %613, 3
br i1 %614, label %615, label %705
615: ; preds = %612
store i32 1, i32* %63
br label %616
616: ; preds = %701, %615
%617 = load i32, i32* %63
%618 = load i32, i32* %52
%619 = sub nsw i32 %618, 1
%620 = icmp slt i32 %617, %619
br i1 %620, label %621, label %704
621: ; preds = %616
store i32 0, i32* %65
br label %622
622: ; preds = %697, %621
%623 = load i32, i32* %65
%624 = load i32, i32* %56
%625 = icmp slt i32 %623, %624
br i1 %625, label %626, label %700
626: ; preds = %622
%627 = load i32, i32* %63
%628 = load i32, i32* %65
%629 = load i32, i32* %56
%630 = call i32 @get_mtx_index(i32 %627, i32 %628, i32 %629)
store i32 %630, i32* %67
%631 = load x86_fp80*, x86_fp80** %36
%632 = load i32, i32* %67
%633 = sext i32 %632 to i64
%634 = getelementptr inbounds x86_fp80, x86_fp80* %631, i64 %633
%635 = load x86_fp80, x86_fp80* %634
store x86_fp80 %635, x86_fp80* %85
%636 = load x86_fp80*, x86_fp80** %36
%637 = load i32, i32* %67
%638 = sext i32 %637 to i64
%639 = getelementptr inbounds x86_fp80, x86_fp80* %636, i64 %638
%640 = load x86_fp80, x86_fp80* %639
%641 = load x86_fp80*, x86_fp80** %36
%642 = load i32, i32* %67
%643 = sext i32 %642 to i64
%644 = getelementptr inbounds x86_fp80, x86_fp80* %641, i64 %643
%645 = load x86_fp80, x86_fp80* %644
%646 = fsub x86_fp80 0xK3FFF8000000000000000, %645
%647 = fcmp ogt x86_fp80 %640, %646
br i1 %647, label %648, label %655
648: ; preds = %626
%649 = load x86_fp80*, x86_fp80** %36
%650 = load i32, i32* %67
%651 = sext i32 %650 to i64
%652 = getelementptr inbounds x86_fp80, x86_fp80* %649, i64 %651
%653 = load x86_fp80, x86_fp80* %652
%654 = fsub x86_fp80 0xK3FFF8000000000000000, %653
store x86_fp80 %654, x86_fp80* %85
br label %655
655: ; preds = %648, %626
%656 = load x86_fp80*, x86_fp80** %36
%657 = load i32, i32* %67
%658 = sext i32 %657 to i64
%659 = getelementptr inbounds x86_fp80, x86_fp80* %656, i64 %658
%660 = load x86_fp80, x86_fp80* %659
%661 = fcmp une x86_fp80 %660, 0xK00000000000000000000
br i1 %661, label %662, label %696
662: ; preds = %655
%663 = load x86_fp80*, x86_fp80** %46
%664 = load i32, i32* %67
%665 = sext i32 %664 to i64
%666 = getelementptr inbounds x86_fp80, x86_fp80* %663, i64 %665
%667 = load x86_fp80, x86_fp80* %666
%668 = load x86_fp80*, x86_fp80** %41
%669 = load i32, i32* %67
%670 = sext i32 %669 to i64
%671 = getelementptr inbounds x86_fp80, x86_fp80* %668, i64 %670
%672 = load x86_fp80, x86_fp80* %671
%673 = fsub x86_fp80 %667, %672
%674 = load x86_fp80, x86_fp80* %85
%675 = fdiv x86_fp80 %673, %674
%676 = load x86_fp80, x86_fp80* %76
%677 = fcmp ogt x86_fp80 %675, %676
br i1 %677, label %678, label %696
678: ; preds = %662
%679 = load x86_fp80*, x86_fp80** %46
%680 = load i32, i32* %67
%681 = sext i32 %680 to i64
%682 = getelementptr inbounds x86_fp80, x86_fp80* %679, i64 %681
%683 = load x86_fp80, x86_fp80* %682
%684 = load x86_fp80*, x86_fp80** %41
%685 = load i32, i32* %67
%686 = sext i32 %685 to i64
%687 = getelementptr inbounds x86_fp80, x86_fp80* %684, i64 %686
%688 = load x86_fp80, x86_fp80* %687
%689 = fsub x86_fp80 %683, %688
%690 = load x86_fp80*, x86_fp80** %36
%691 = load i32, i32* %67
%692 = sext i32 %691 to i64
%693 = getelementptr inbounds x86_fp80, x86_fp80* %690, i64 %692
%694 = load x86_fp80, x86_fp80* %693
%695 = fdiv x86_fp80 %689, %694
store x86_fp80 %695, x86_fp80* %76
br label %696
696: ; preds = %678, %662, %655
br label %697
697: ; preds = %696
%698 = load i32, i32* %65
%699 = add nsw i32 %698, 1
store i32 %699, i32* %65
br label %622
700: ; preds = %622
br label %701
701: ; preds = %700
%702 = load i32, i32* %63
%703 = add nsw i32 %702, 1
store i32 %703, i32* %63
br label %616
704: ; preds = %616
br label %705
705: ; preds = %704, %612
%706 = load x86_fp80, x86_fp80* %72
%707 = load x86_fp80, x86_fp80* @calculate_TE_contributions_multi.DIVIDER_SCALER
%708 = fmul x86_fp80 %706, %707
store x86_fp80 %708, x86_fp80* %72
%709 = load x86_fp80, x86_fp80* %73
%710 = load x86_fp80, x86_fp80* @calculate_TE_contributions_multi.DIVIDER_SCALER
%711 = fmul x86_fp80 %709, %710
store x86_fp80 %711, x86_fp80* %73
%712 = load x86_fp80, x86_fp80* %74
%713 = load x86_fp80, x86_fp80* @calculate_TE_contributions_multi.DIVIDER_SCALER
%714 = fmul x86_fp80 %712, %713
store x86_fp80 %714, x86_fp80* %74
%715 = load x86_fp80, x86_fp80* %75
%716 = load x86_fp80, x86_fp80* @calculate_TE_contributions_multi.DIVIDER_SCALER
%717 = fmul x86_fp80 %715, %716
store x86_fp80 %717, x86_fp80* %75
%718 = load x86_fp80, x86_fp80* %76
%719 = load x86_fp80, x86_fp80* @calculate_TE_contributions_multi.DIVIDER_SCALER
%720 = fmul x86_fp80 %718, %719
store x86_fp80 %720, x86_fp80* %76
store i32 0, i32* %63
br label %721
721: ; preds = %772, %705
%722 = load i32, i32* %63
%723 = load i32, i32* %52
%724 = sub nsw i32 %723, 1
%725 = icmp slt i32 %722, %724
br i1 %725, label %726, label %775
726: ; preds = %721
store i32 1, i32* %64
br label %727
727: ; preds = %768, %726
%728 = load i32, i32* %64
%729 = load i32, i32* %52
%730 = sub nsw i32 %729, 1
%731 = icmp slt i32 %728, %730
br i1 %731, label %732, label %771
732: ; preds = %727
%733 = load i32, i32* %63
%734 = load i32, i32* %64
%735 = load i32, i32* %52
%736 = call i32 @get_mtx_index(i32 %733, i32 %734, i32 %735)
store i32 %736, i32* %66
%737 = load x86_fp80*, x86_fp80** %37
%738 = load i32, i32* %66
%739 = sext i32 %738 to i64
%740 = getelementptr inbounds x86_fp80, x86_fp80* %737, i64 %739
%741 = load x86_fp80, x86_fp80* %740
%742 = load x86_fp80*, x86_fp80** %42
%743 = load i32, i32* %66
%744 = sext i32 %743 to i64
%745 = getelementptr inbounds x86_fp80, x86_fp80* %742, i64 %744
%746 = load x86_fp80, x86_fp80* %745
%747 = fsub x86_fp80 %741, %746
%748 = load x86_fp80, x86_fp80* %72
%749 = fdiv x86_fp80 %747, %748
%750 = load x86_fp80*, x86_fp80** %32
%751 = load i32, i32* %66
%752 = sext i32 %751 to i64
%753 = getelementptr inbounds x86_fp80, x86_fp80* %750, i64 %752
%754 = load x86_fp80, x86_fp80* %753
%755 = fadd x86_fp80 %754, %749
store x86_fp80 %755, x86_fp80* %753
%756 = load x86_fp80*, x86_fp80** %32
%757 = load i32, i32* %66
%758 = sext i32 %757 to i64
%759 = getelementptr inbounds x86_fp80, x86_fp80* %756, i64 %758
%760 = load x86_fp80, x86_fp80* %759
%761 = fcmp olt x86_fp80 %760, 0xK00000000000000000000
br i1 %761, label %762, label %767
762: ; preds = %732
%763 = load x86_fp80*, x86_fp80** %32
%764 = load i32, i32* %66
%765 = sext i32 %764 to i64
%766 = getelementptr inbounds x86_fp80, x86_fp80* %763, i64 %765
store x86_fp80 0xK00000000000000000000, x86_fp80* %766
br label %767
767: ; preds = %762, %732
br label %768
768: ; preds = %767
%769 = load i32, i32* %64
%770 = add nsw i32 %769, 1
store i32 %770, i32* %64
br label %727
771: ; preds = %727
br label %772
772: ; preds = %771
%773 = load i32, i32* %63
%774 = add nsw i32 %773, 1
store i32 %774, i32* %63
br label %721
775: ; preds = %721
store i32 1, i32* %63
br label %776
776: ; preds = %832, %775
%777 = load i32, i32* %63
%778 = load i32, i32* %52
%779 = sub nsw i32 %778, 1
%780 = icmp slt i32 %777, %779
br i1 %780, label %781, label %835
781: ; preds = %776
store i32 0, i32* %65
br label %782
782: ; preds = %828, %781
%783 = load i32, i32* %65
%784 = load i32, i32* %53
%785 = icmp slt i32 %783, %784
br i1 %785, label %786, label %831
786: ; preds = %782
%787 = load i32, i32* %63
%788 = load i32, i32* %65
%789 = load i32, i32* %53
%790 = call i32 @get_mtx_index(i32 %787, i32 %788, i32 %789)
store i32 %790, i32* %67
%791 = load x86_fp80*, x86_fp80** %38
%792 = load i32, i32* %67
%793 = sext i32 %792 to i64
%794 = getelementptr inbounds x86_fp80, x86_fp80* %791, i64 %793
%795 = load x86_fp80, x86_fp80* %794
%796 = load x86_fp80*, x86_fp80** %43
%797 = load i32, i32* %67
%798 = sext i32 %797 to i64
%799 = getelementptr inbounds x86_fp80, x86_fp80* %796, i64 %798
%800 = load x86_fp80, x86_fp80* %799
%801 = fsub x86_fp80 %795, %800
%802 = load x86_fp80, x86_fp80* %73
%803 = load x86_fp80*, x86_fp80** %57
%804 = load i32, i32* %63
%805 = sext i32 %804 to i64
%806 = getelementptr inbounds x86_fp80, x86_fp80* %803, i64 %805
%807 = load x86_fp80, x86_fp80* %806
%808 = fmul x86_fp80 %802, %807
%809 = fdiv x86_fp80 %801, %808
%810 = load x86_fp80*, x86_fp80** %33
%811 = load i32, i32* %67
%812 = sext i32 %811 to i64
%813 = getelementptr inbounds x86_fp80, x86_fp80* %810, i64 %812
%814 = load x86_fp80, x86_fp80* %813
%815 = fadd x86_fp80 %814, %809
store x86_fp80 %815, x86_fp80* %813
%816 = load x86_fp80*, x86_fp80** %33
%817 = load i32, i32* %67
%818 = sext i32 %817 to i64
%819 = getelementptr inbounds x86_fp80, x86_fp80* %816, i64 %818
%820 = load x86_fp80, x86_fp80* %819
%821 = fcmp olt x86_fp80 %820, 0xK00000000000000000000
br i1 %821, label %822, label %827
822: ; preds = %786
%823 = load x86_fp80*, x86_fp80** %33
%824 = load i32, i32* %67
%825 = sext i32 %824 to i64
%826 = getelementptr inbounds x86_fp80, x86_fp80* %823, i64 %825
store x86_fp80 0xK00000000000000000000, x86_fp80* %826
br label %827
827: ; preds = %822, %786
br label %828
828: ; preds = %827
%829 = load i32, i32* %65
%830 = add nsw i32 %829, 1
store i32 %830, i32* %65
br label %782
831: ; preds = %782
br label %832
832: ; preds = %831
%833 = load i32, i32* %63
%834 = add nsw i32 %833, 1
store i32 %834, i32* %63
br label %776
835: ; preds = %776
%836 = load i32, i32* %62
%837 = icmp sgt i32 %836, 1
br i1 %837, label %838, label %899
838: ; preds = %835
store i32 1, i32* %63
br label %839
839: ; preds = %895, %838
%840 = load i32, i32* %63
%841 = load i32, i32* %52
%842 = sub nsw i32 %841, 1
%843 = icmp slt i32 %840, %842
br i1 %843, label %844, label %898
844: ; preds = %839
store i32 0, i32* %65
br label %845
845: ; preds = %891, %844
%846 = load i32, i32* %65
%847 = load i32, i32* %54
%848 = icmp slt i32 %846, %847
br i1 %848, label %849, label %894
849: ; preds = %845
%850 = load i32, i32* %63
%851 = load i32, i32* %65
%852 = load i32, i32* %54
%853 = call i32 @get_mtx_index(i32 %850, i32 %851, i32 %852)
store i32 %853, i32* %67
%854 = load x86_fp80*, x86_fp80** %39
%855 = load i32, i32* %67
%856 = sext i32 %855 to i64
%857 = getelementptr inbounds x86_fp80, x86_fp80* %854, i64 %856
%858 = load x86_fp80, x86_fp80* %857
%859 = load x86_fp80*, x86_fp80** %44
%860 = load i32, i32* %67
%861 = sext i32 %860 to i64
%862 = getelementptr inbounds x86_fp80, x86_fp80* %859, i64 %861
%863 = load x86_fp80, x86_fp80* %862
%864 = fsub x86_fp80 %858, %863
%865 = load x86_fp80, x86_fp80* %74
%866 = load x86_fp80*, x86_fp80** %58
%867 = load i32, i32* %63
%868 = sext i32 %867 to i64
%869 = getelementptr inbounds x86_fp80, x86_fp80* %866, i64 %868
%870 = load x86_fp80, x86_fp80* %869
%871 = fmul x86_fp80 %865, %870
%872 = fdiv x86_fp80 %864, %871
%873 = load x86_fp80*, x86_fp80** %34
%874 = load i32, i32* %67
%875 = sext i32 %874 to i64
%876 = getelementptr inbounds x86_fp80, x86_fp80* %873, i64 %875
%877 = load x86_fp80, x86_fp80* %876
%878 = fadd x86_fp80 %877, %872
store x86_fp80 %878, x86_fp80* %876
%879 = load x86_fp80*, x86_fp80** %34
%880 = load i32, i32* %67
%881 = sext i32 %880 to i64
%882 = getelementptr inbounds x86_fp80, x86_fp80* %879, i64 %881
%883 = load x86_fp80, x86_fp80* %882
%884 = fcmp olt x86_fp80 %883, 0xK00000000000000000000
br i1 %884, label %885, label %890
885: ; preds = %849
%886 = load x86_fp80*, x86_fp80** %34
%887 = load i32, i32* %67
%888 = sext i32 %887 to i64
%889 = getelementptr inbounds x86_fp80, x86_fp80* %886, i64 %888
store x86_fp80 0xK00000000000000000000, x86_fp80* %889
br label %890
890: ; preds = %885, %849
br label %891
891: ; preds = %890
%892 = load i32, i32* %65
%893 = add nsw i32 %892, 1
store i32 %893, i32* %65
br label %845
894: ; preds = %845
br label %895
895: ; preds = %894
%896 = load i32, i32* %63
%897 = add nsw i32 %896, 1
store i32 %897, i32* %63
br label %839
898: ; preds = %839
br label %899
899: ; preds = %898, %835
%900 = load i32, i32* %62
%901 = icmp sgt i32 %900, 2
br i1 %901, label %902, label %963
902: ; preds = %899
store i32 1, i32* %63
br label %903
903: ; preds = %959, %902
%904 = load i32, i32* %63
%905 = load i32, i32* %52
%906 = sub nsw i32 %905, 1
%907 = icmp slt i32 %904, %906
br i1 %907, label %908, label %962
908: ; preds = %903
store i32 0, i32* %65
br label %909
909: ; preds = %955, %908
%910 = load i32, i32* %65
%911 = load i32, i32* %55
%912 = icmp slt i32 %910, %911
br i1 %912, label %913, label %958
913: ; preds = %909
%914 = load i32, i32* %63
%915 = load i32, i32* %65
%916 = load i32, i32* %55
%917 = call i32 @get_mtx_index(i32 %914, i32 %915, i32 %916)
store i32 %917, i32* %67
%918 = load x86_fp80*, x86_fp80** %40
%919 = load i32, i32* %67
%920 = sext i32 %919 to i64
%921 = getelementptr inbounds x86_fp80, x86_fp80* %918, i64 %920
%922 = load x86_fp80, x86_fp80* %921
%923 = load x86_fp80*, x86_fp80** %45
%924 = load i32, i32* %67
%925 = sext i32 %924 to i64
%926 = getelementptr inbounds x86_fp80, x86_fp80* %923, i64 %925
%927 = load x86_fp80, x86_fp80* %926
%928 = fsub x86_fp80 %922, %927
%929 = load x86_fp80, x86_fp80* %75
%930 = load x86_fp80*, x86_fp80** %59
%931 = load i32, i32* %63
%932 = sext i32 %931 to i64
%933 = getelementptr inbounds x86_fp80, x86_fp80* %930, i64 %932
%934 = load x86_fp80, x86_fp80* %933
%935 = fmul x86_fp80 %929, %934
%936 = fdiv x86_fp80 %928, %935
%937 = load x86_fp80*, x86_fp80** %35
%938 = load i32, i32* %67
%939 = sext i32 %938 to i64
%940 = getelementptr inbounds x86_fp80, x86_fp80* %937, i64 %939
%941 = load x86_fp80, x86_fp80* %940
%942 = fadd x86_fp80 %941, %936
store x86_fp80 %942, x86_fp80* %940
%943 = load x86_fp80*, x86_fp80** %35
%944 = load i32, i32* %67
%945 = sext i32 %944 to i64
%946 = getelementptr inbounds x86_fp80, x86_fp80* %943, i64 %945
%947 = load x86_fp80, x86_fp80* %946
%948 = fcmp olt x86_fp80 %947, 0xK00000000000000000000
br i1 %948, label %949, label %954
949: ; preds = %913
%950 = load x86_fp80*, x86_fp80** %35
%951 = load i32, i32* %67
%952 = sext i32 %951 to i64
%953 = getelementptr inbounds x86_fp80, x86_fp80* %950, i64 %952
store x86_fp80 0xK00000000000000000000, x86_fp80* %953
br label %954
954: ; preds = %949, %913
br label %955
955: ; preds = %954
%956 = load i32, i32* %65
%957 = add nsw i32 %956, 1
store i32 %957, i32* %65
br label %909
958: ; preds = %909
br label %959
959: ; preds = %958
%960 = load i32, i32* %63
%961 = add nsw i32 %960, 1
store i32 %961, i32* %63
br label %903
962: ; preds = %903
br label %963
963: ; preds = %962, %899
%964 = load i32, i32* %62
%965 = icmp sgt i32 %964, 3
br i1 %965, label %966, label %1027
966: ; preds = %963
store i32 1, i32* %63
br label %967
967: ; preds = %1023, %966
%968 = load i32, i32* %63
%969 = load i32, i32* %52
%970 = sub nsw i32 %969, 1
%971 = icmp slt i32 %968, %970
br i1 %971, label %972, label %1026
972: ; preds = %967
store i32 0, i32* %65
br label %973
973: ; preds = %1019, %972
%974 = load i32, i32* %65
%975 = load i32, i32* %56
%976 = icmp slt i32 %974, %975
br i1 %976, label %977, label %1022
977: ; preds = %973
%978 = load i32, i32* %63
%979 = load i32, i32* %65
%980 = load i32, i32* %56
%981 = call i32 @get_mtx_index(i32 %978, i32 %979, i32 %980)
store i32 %981, i32* %67
%982 = load x86_fp80*, x86_fp80** %41
%983 = load i32, i32* %67
%984 = sext i32 %983 to i64
%985 = getelementptr inbounds x86_fp80, x86_fp80* %982, i64 %984
%986 = load x86_fp80, x86_fp80* %985
%987 = load x86_fp80*, x86_fp80** %46
%988 = load i32, i32* %67
%989 = sext i32 %988 to i64
%990 = getelementptr inbounds x86_fp80, x86_fp80* %987, i64 %989
%991 = load x86_fp80, x86_fp80* %990
%992 = fsub x86_fp80 %986, %991
%993 = load x86_fp80, x86_fp80* %76
%994 = load x86_fp80*, x86_fp80** %60
%995 = load i32, i32* %63
%996 = sext i32 %995 to i64
%997 = getelementptr inbounds x86_fp80, x86_fp80* %994, i64 %996
%998 = load x86_fp80, x86_fp80* %997
%999 = fmul x86_fp80 %993, %998
%1000 = fdiv x86_fp80 %992, %999
%1001 = load x86_fp80*, x86_fp80** %36
%1002 = load i32, i32* %67
%1003 = sext i32 %1002 to i64
%1004 = getelementptr inbounds x86_fp80, x86_fp80* %1001, i64 %1003
%1005 = load x86_fp80, x86_fp80* %1004
%1006 = fadd x86_fp80 %1005, %1000
store x86_fp80 %1006, x86_fp80* %1004
%1007 = load x86_fp80*, x86_fp80** %36
%1008 = load i32, i32* %67
%1009 = sext i32 %1008 to i64
%1010 = getelementptr inbounds x86_fp80, x86_fp80* %1007, i64 %1009
%1011 = load x86_fp80, x86_fp80* %1010
%1012 = fcmp olt x86_fp80 %1011, 0xK00000000000000000000
br i1 %1012, label %1013, label %1018
1013: ; preds = %977
%1014 = load x86_fp80*, x86_fp80** %36
%1015 = load i32, i32* %67
%1016 = sext i32 %1015 to i64
%1017 = getelementptr inbounds x86_fp80, x86_fp80* %1014, i64 %1016
store x86_fp80 0xK00000000000000000000, x86_fp80* %1017
br label %1018
1018: ; preds = %1013, %977
br label %1019
1019: ; preds = %1018
%1020 = load i32, i32* %65
%1021 = add nsw i32 %1020, 1
store i32 %1021, i32* %65
br label %973
1022: ; preds = %973
br label %1023
1023: ; preds = %1022
%1024 = load i32, i32* %63
%1025 = add nsw i32 %1024, 1
store i32 %1025, i32* %63
br label %967
1026: ; preds = %967
br label %1027
1027: ; preds = %1026, %963
store i32 0, i32* %63
br label %1028
1028: ; preds = %1084, %1027
%1029 = load i32, i32* %63
%1030 = load i32, i32* %52
%1031 = sub nsw i32 %1030, 1
%1032 = icmp slt i32 %1029, %1031
br i1 %1032, label %1033, label %1087
1033: ; preds = %1028
store x86_fp80 0xK00000000000000000000, x86_fp80* %71
store i32 1, i32* %64
br label %1034
1034: ; preds = %1051, %1033
%1035 = load i32, i32* %64
%1036 = load i32, i32* %52
%1037 = sub nsw i32 %1036, 1
%1038 = icmp slt i32 %1035, %1037
br i1 %1038, label %1039, label %1054
1039: ; preds = %1034
%1040 = load i32, i32* %63
%1041 = load i32, i32* %64
%1042 = load i32, i32* %52
%1043 = call i32 @get_mtx_index(i32 %1040, i32 %1041, i32 %1042)
store i32 %1043, i32* %66
%1044 = load x86_fp80*, x86_fp80** %51
%1045 = load i32, i32* %66
%1046 = sext i32 %1045 to i64
%1047 = getelementptr inbounds x86_fp80, x86_fp80* %1044, i64 %1046
%1048 = load x86_fp80, x86_fp80* %1047
%1049 = load x86_fp80, x86_fp80* %71
%1050 = fadd x86_fp80 %1049, %1048
store x86_fp80 %1050, x86_fp80* %71
br label %1051
1051: ; preds = %1039
%1052 = load i32, i32* %64
%1053 = add nsw i32 %1052, 1
store i32 %1053, i32* %64
br label %1034
1054: ; preds = %1034
%1055 = load x86_fp80, x86_fp80* %71
%1056 = fcmp une x86_fp80 %1055, 0xK00000000000000000000
br i1 %1056, label %1057, label %1083
1057: ; preds = %1054
store i32 1, i32* %64
br label %1058
1058: ; preds = %1079, %1057
%1059 = load i32, i32* %64
%1060 = load i32, i32* %52
%1061 = sub nsw i32 %1060, 1
%1062 = icmp slt i32 %1059, %1061
br i1 %1062, label %1063, label %1082
1063: ; preds = %1058
%1064 = load i32, i32* %63
%1065 = load i32, i32* %64
%1066 = load i32, i32* %52
%1067 = call i32 @get_mtx_index(i32 %1064, i32 %1065, i32 %1066)
store i32 %1067, i32* %66
%1068 = load x86_fp80*, x86_fp80** %51
%1069 = load i32, i32* %66
%1070 = sext i32 %1069 to i64
%1071 = getelementptr inbounds x86_fp80, x86_fp80* %1068, i64 %1070
%1072 = load x86_fp80, x86_fp80* %1071
%1073 = load x86_fp80, x86_fp80* %71
%1074 = fdiv x86_fp80 %1072, %1073
%1075 = load x86_fp80*, x86_fp80** %51
%1076 = load i32, i32* %66
%1077 = sext i32 %1076 to i64
%1078 = getelementptr inbounds x86_fp80, x86_fp80* %1075, i64 %1077
store x86_fp80 %1074, x86_fp80* %1078
br label %1079
1079: ; preds = %1063
%1080 = load i32, i32* %64
%1081 = add nsw i32 %1080, 1
store i32 %1081, i32* %64
br label %1058
1082: ; preds = %1058
br label %1083
1083: ; preds = %1082, %1054
br label %1084
1084: ; preds = %1083
%1085 = load i32, i32* %63
%1086 = add nsw i32 %1085, 1
store i32 %1086, i32* %63
br label %1028
1087: ; preds = %1028
store i32 1, i32* %63
br label %1088
1088: ; preds = %1142, %1087
%1089 = load i32, i32* %63
%1090 = load i32, i32* %52
%1091 = sub nsw i32 %1090, 1
%1092 = icmp slt i32 %1089, %1091
br i1 %1092, label %1093, label %1145
1093: ; preds = %1088
store x86_fp80 0xK00000000000000000000, x86_fp80* %71
store i32 0, i32* %65
br label %1094
1094: ; preds = %1110, %1093
%1095 = load i32, i32* %65
%1096 = load i32, i32* %53
%1097 = icmp slt i32 %1095, %1096
br i1 %1097, label %1098, label %1113
1098: ; preds = %1094
%1099 = load i32, i32* %63
%1100 = load i32, i32* %65
%1101 = load i32, i32* %53
%1102 = call i32 @get_mtx_index(i32 %1099, i32 %1100, i32 %1101)
store i32 %1102, i32* %67
%1103 = load x86_fp80*, x86_fp80** %47
%1104 = load i32, i32* %67
%1105 = sext i32 %1104 to i64
%1106 = getelementptr inbounds x86_fp80, x86_fp80* %1103, i64 %1105
%1107 = load x86_fp80, x86_fp80* %1106
%1108 = load x86_fp80, x86_fp80* %71
%1109 = fadd x86_fp80 %1108, %1107
store x86_fp80 %1109, x86_fp80* %71
br label %1110
1110: ; preds = %1098
%1111 = load i32, i32* %65
%1112 = add nsw i32 %1111, 1
store i32 %1112, i32* %65
br label %1094
1113: ; preds = %1094
%1114 = load x86_fp80, x86_fp80* %71
%1115 = fcmp une x86_fp80 %1114, 0xK00000000000000000000
br i1 %1115, label %1116, label %1141
1116: ; preds = %1113
store i32 0, i32* %65
br label %1117
1117: ; preds = %1137, %1116
%1118 = load i32, i32* %65
%1119 = load i32, i32* %53
%1120 = icmp slt i32 %1118, %1119
br i1 %1120, label %1121, label %1140
1121: ; preds = %1117
%1122 = load i32, i32* %63
%1123 = load i32, i32* %65
%1124 = load i32, i32* %53
%1125 = call i32 @get_mtx_index(i32 %1122, i32 %1123, i32 %1124)
store i32 %1125, i32* %67
%1126 = load x86_fp80*, x86_fp80** %47
%1127 = load i32, i32* %67
%1128 = sext i32 %1127 to i64
%1129 = getelementptr inbounds x86_fp80, x86_fp80* %1126, i64 %1128
%1130 = load x86_fp80, x86_fp80* %1129
%1131 = load x86_fp80, x86_fp80* %71
%1132 = fdiv x86_fp80 %1130, %1131
%1133 = load x86_fp80*, x86_fp80** %47
%1134 = load i32, i32* %67
%1135 = sext i32 %1134 to i64
%1136 = getelementptr inbounds x86_fp80, x86_fp80* %1133, i64 %1135
store x86_fp80 %1132, x86_fp80* %1136
br label %1137
1137: ; preds = %1121
%1138 = load i32, i32* %65
%1139 = add nsw i32 %1138, 1
store i32 %1139, i32* %65
br label %1117
1140: ; preds = %1117
br label %1141
1141: ; preds = %1140, %1113
br label %1142
1142: ; preds = %1141
%1143 = load i32, i32* %63
%1144 = add nsw i32 %1143, 1
store i32 %1144, i32* %63
br label %1088
1145: ; preds = %1088
%1146 = load i32, i32* %62
%1147 = icmp sgt i32 %1146, 1
br i1 %1147, label %1148, label %1207
1148: ; preds = %1145
store i32 1, i32* %63
br label %1149
1149: ; preds = %1203, %1148
%1150 = load i32, i32* %63
%1151 = load i32, i32* %52
%1152 = sub nsw i32 %1151, 1
%1153 = icmp slt i32 %1150, %1152
br i1 %1153, label %1154, label %1206
1154: ; preds = %1149
store x86_fp80 0xK00000000000000000000, x86_fp80* %71
store i32 0, i32* %65
br label %1155
1155: ; preds = %1171, %1154
%1156 = load i32, i32* %65
%1157 = load i32, i32* %54
%1158 = icmp slt i32 %1156, %1157
br i1 %1158, label %1159, label %1174
1159: ; preds = %1155
%1160 = load i32, i32* %63
%1161 = load i32, i32* %65
%1162 = load i32, i32* %54
%1163 = call i32 @get_mtx_index(i32 %1160, i32 %1161, i32 %1162)
store i32 %1163, i32* %67
%1164 = load x86_fp80*, x86_fp80** %48
%1165 = load i32, i32* %67
%1166 = sext i32 %1165 to i64
%1167 = getelementptr inbounds x86_fp80, x86_fp80* %1164, i64 %1166
%1168 = load x86_fp80, x86_fp80* %1167
%1169 = load x86_fp80, x86_fp80* %71
%1170 = fadd x86_fp80 %1169, %1168
store x86_fp80 %1170, x86_fp80* %71
br label %1171
1171: ; preds = %1159
%1172 = load i32, i32* %65
%1173 = add nsw i32 %1172, 1
store i32 %1173, i32* %65
br label %1155
1174: ; preds = %1155
%1175 = load x86_fp80, x86_fp80* %71
%1176 = fcmp une x86_fp80 %1175, 0xK00000000000000000000
br i1 %1176, label %1177, label %1202
1177: ; preds = %1174
store i32 0, i32* %65
br label %1178
1178: ; preds = %1198, %1177
%1179 = load i32, i32* %65
%1180 = load i32, i32* %54
%1181 = icmp slt i32 %1179, %1180
br i1 %1181, label %1182, label %1201
1182: ; preds = %1178
%1183 = load i32, i32* %63
%1184 = load i32, i32* %65
%1185 = load i32, i32* %54
%1186 = call i32 @get_mtx_index(i32 %1183, i32 %1184, i32 %1185)
store i32 %1186, i32* %67
%1187 = load x86_fp80*, x86_fp80** %48
%1188 = load i32, i32* %67
%1189 = sext i32 %1188 to i64
%1190 = getelementptr inbounds x86_fp80, x86_fp80* %1187, i64 %1189
%1191 = load x86_fp80, x86_fp80* %1190
%1192 = load x86_fp80, x86_fp80* %71
%1193 = fdiv x86_fp80 %1191, %1192
%1194 = load x86_fp80*, x86_fp80** %48
%1195 = load i32, i32* %67
%1196 = sext i32 %1195 to i64
%1197 = getelementptr inbounds x86_fp80, x86_fp80* %1194, i64 %1196
store x86_fp80 %1193, x86_fp80* %1197
br label %1198
1198: ; preds = %1182
%1199 = load i32, i32* %65
%1200 = add nsw i32 %1199, 1
store i32 %1200, i32* %65
br label %1178
1201: ; preds = %1178
br label %1202
1202: ; preds = %1201, %1174
br label %1203
1203: ; preds = %1202
%1204 = load i32, i32* %63
%1205 = add nsw i32 %1204, 1
store i32 %1205, i32* %63
br label %1149
1206: ; preds = %1149
br label %1207
1207: ; preds = %1206, %1145
%1208 = load i32, i32* %62
%1209 = icmp sgt i32 %1208, 2
br i1 %1209, label %1210, label %1269
1210: ; preds = %1207
store i32 1, i32* %63
br label %1211
1211: ; preds = %1265, %1210
%1212 = load i32, i32* %63
%1213 = load i32, i32* %52
%1214 = sub nsw i32 %1213, 1
%1215 = icmp slt i32 %1212, %1214
br i1 %1215, label %1216, label %1268
1216: ; preds = %1211
store x86_fp80 0xK00000000000000000000, x86_fp80* %71
store i32 0, i32* %65
br label %1217
1217: ; preds = %1233, %1216
%1218 = load i32, i32* %65
%1219 = load i32, i32* %55
%1220 = icmp slt i32 %1218, %1219
br i1 %1220, label %1221, label %1236
1221: ; preds = %1217
%1222 = load i32, i32* %63
%1223 = load i32, i32* %65
%1224 = load i32, i32* %55
%1225 = call i32 @get_mtx_index(i32 %1222, i32 %1223, i32 %1224)
store i32 %1225, i32* %67
%1226 = load x86_fp80*, x86_fp80** %49
%1227 = load i32, i32* %67
%1228 = sext i32 %1227 to i64
%1229 = getelementptr inbounds x86_fp80, x86_fp80* %1226, i64 %1228
%1230 = load x86_fp80, x86_fp80* %1229
%1231 = load x86_fp80, x86_fp80* %71
%1232 = fadd x86_fp80 %1231, %1230
store x86_fp80 %1232, x86_fp80* %71
br label %1233
1233: ; preds = %1221
%1234 = load i32, i32* %65
%1235 = add nsw i32 %1234, 1
store i32 %1235, i32* %65
br label %1217
1236: ; preds = %1217
%1237 = load x86_fp80, x86_fp80* %71
%1238 = fcmp une x86_fp80 %1237, 0xK00000000000000000000
br i1 %1238, label %1239, label %1264
1239: ; preds = %1236
store i32 0, i32* %65
br label %1240
1240: ; preds = %1260, %1239
%1241 = load i32, i32* %65
%1242 = load i32, i32* %55
%1243 = icmp slt i32 %1241, %1242
br i1 %1243, label %1244, label %1263
1244: ; preds = %1240
%1245 = load i32, i32* %63
%1246 = load i32, i32* %65
%1247 = load i32, i32* %55
%1248 = call i32 @get_mtx_index(i32 %1245, i32 %1246, i32 %1247)
store i32 %1248, i32* %67
%1249 = load x86_fp80*, x86_fp80** %49
%1250 = load i32, i32* %67
%1251 = sext i32 %1250 to i64
%1252 = getelementptr inbounds x86_fp80, x86_fp80* %1249, i64 %1251
%1253 = load x86_fp80, x86_fp80* %1252
%1254 = load x86_fp80, x86_fp80* %71
%1255 = fdiv x86_fp80 %1253, %1254
%1256 = load x86_fp80*, x86_fp80** %49
%1257 = load i32, i32* %67
%1258 = sext i32 %1257 to i64
%1259 = getelementptr inbounds x86_fp80, x86_fp80* %1256, i64 %1258
store x86_fp80 %1255, x86_fp80* %1259
br label %1260
1260: ; preds = %1244
%1261 = load i32, i32* %65
%1262 = add nsw i32 %1261, 1
store i32 %1262, i32* %65
br label %1240
1263: ; preds = %1240
br label %1264
1264: ; preds = %1263, %1236
br label %1265
1265: ; preds = %1264
%1266 = load i32, i32* %63
%1267 = add nsw i32 %1266, 1
store i32 %1267, i32* %63
br label %1211
1268: ; preds = %1211
br label %1269
1269: ; preds = %1268, %1207
%1270 = load i32, i32* %62
%1271 = icmp sgt i32 %1270, 3
br i1 %1271, label %1272, label %1331
1272: ; preds = %1269
store i32 1, i32* %63
br label %1273
1273: ; preds = %1327, %1272
%1274 = load i32, i32* %63
%1275 = load i32, i32* %52
%1276 = sub nsw i32 %1275, 1
%1277 = icmp slt i32 %1274, %1276
br i1 %1277, label %1278, label %1330
1278: ; preds = %1273
store x86_fp80 0xK00000000000000000000, x86_fp80* %71
store i32 0, i32* %65
br label %1279
1279: ; preds = %1295, %1278
%1280 = load i32, i32* %65
%1281 = load i32, i32* %56
%1282 = icmp slt i32 %1280, %1281
br i1 %1282, label %1283, label %1298
1283: ; preds = %1279
%1284 = load i32, i32* %63
%1285 = load i32, i32* %65
%1286 = load i32, i32* %56
%1287 = call i32 @get_mtx_index(i32 %1284, i32 %1285, i32 %1286)
store i32 %1287, i32* %67
%1288 = load x86_fp80*, x86_fp80** %50
%1289 = load i32, i32* %67
%1290 = sext i32 %1289 to i64
%1291 = getelementptr inbounds x86_fp80, x86_fp80* %1288, i64 %1290
%1292 = load x86_fp80, x86_fp80* %1291
%1293 = load x86_fp80, x86_fp80* %71
%1294 = fadd x86_fp80 %1293, %1292
store x86_fp80 %1294, x86_fp80* %71
br label %1295
1295: ; preds = %1283
%1296 = load i32, i32* %65
%1297 = add nsw i32 %1296, 1
store i32 %1297, i32* %65
br label %1279
1298: ; preds = %1279
%1299 = load x86_fp80, x86_fp80* %71
%1300 = fcmp une x86_fp80 %1299, 0xK00000000000000000000
br i1 %1300, label %1301, label %1326
1301: ; preds = %1298
store i32 0, i32* %65
br label %1302
1302: ; preds = %1322, %1301
%1303 = load i32, i32* %65
%1304 = load i32, i32* %56
%1305 = icmp slt i32 %1303, %1304
br i1 %1305, label %1306, label %1325
1306: ; preds = %1302
%1307 = load i32, i32* %63
%1308 = load i32, i32* %65
%1309 = load i32, i32* %56
%1310 = call i32 @get_mtx_index(i32 %1307, i32 %1308, i32 %1309)
store i32 %1310, i32* %67
%1311 = load x86_fp80*, x86_fp80** %50
%1312 = load i32, i32* %67
%1313 = sext i32 %1312 to i64
%1314 = getelementptr inbounds x86_fp80, x86_fp80* %1311, i64 %1313
%1315 = load x86_fp80, x86_fp80* %1314
%1316 = load x86_fp80, x86_fp80* %71
%1317 = fdiv x86_fp80 %1315, %1316
%1318 = load x86_fp80*, x86_fp80** %50
%1319 = load i32, i32* %67
%1320 = sext i32 %1319 to i64
%1321 = getelementptr inbounds x86_fp80, x86_fp80* %1318, i64 %1320
store x86_fp80 %1317, x86_fp80* %1321
br label %1322
1322: ; preds = %1306
%1323 = load i32, i32* %65
%1324 = add nsw i32 %1323, 1
store i32 %1324, i32* %65
br label %1302
1325: ; preds = %1302
br label %1326
1326: ; preds = %1325, %1298
br label %1327
1327: ; preds = %1326
%1328 = load i32, i32* %63
%1329 = add nsw i32 %1328, 1
store i32 %1329, i32* %63
br label %1273
1330: ; preds = %1273
br label %1331
1331: ; preds = %1330, %1269
ret void
}

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