int ls_cost_nm5_f0(const double **arg, double **res, int *iw, double *w,
                   int mem) {
  double a0 = arg[0] ? arg[0][0] : 0;
  if (res[0] != 0)
    res[0][0] = a0;
  a0 = arg[0] ? arg[0][1] : 0;
  if (res[0] != 0)
    res[0][1] = a0;
  a0 = arg[0] ? arg[0][2] : 0;
  if (res[0] != 0)
    res[0][2] = a0;
  a0 = arg[0] ? arg[0][3] : 0;
  if (res[0] != 0)
    res[0][3] = a0;
  a0 = arg[0] ? arg[0][4] : 0;
  if (res[0] != 0)
    res[0][4] = a0;
  a0 = arg[0] ? arg[0][5] : 0;
  if (res[0] != 0)
    res[0][5] = a0;
  a0 = arg[0] ? arg[0][6] : 0;
  if (res[0] != 0)
    res[0][6] = a0;
  a0 = arg[0] ? arg[0][7] : 0;
  if (res[0] != 0)
    res[0][7] = a0;
  a0 = arg[0] ? arg[0][8] : 0;
  if (res[0] != 0)
    res[0][8] = a0;
  a0 = arg[0] ? arg[0][9] : 0;
  if (res[0] != 0)
    res[0][9] = a0;
  a0 = arg[0] ? arg[0][10] : 0;
  if (res[0] != 0)
    res[0][10] = a0;
  a0 = arg[0] ? arg[0][11] : 0;
  if (res[0] != 0)
    res[0][11] = a0;
  a0 = arg[0] ? arg[0][12] : 0;
  if (res[0] != 0)
    res[0][12] = a0;
  a0 = arg[0] ? arg[0][13] : 0;
  if (res[0] != 0)
    res[0][13] = a0;
  a0 = arg[0] ? arg[0][14] : 0;
  if (res[0] != 0)
    res[0][14] = a0;
  a0 = arg[0] ? arg[0][15] : 0;
  if (res[0] != 0)
    res[0][15] = a0;
  a0 = arg[0] ? arg[0][16] : 0;
  if (res[0] != 0)
    res[0][16] = a0;
  a0 = arg[0] ? arg[0][17] : 0;
  if (res[0] != 0)
    res[0][17] = a0;
  a0 = arg[0] ? arg[0][18] : 0;
  if (res[0] != 0)
    res[0][18] = a0;
  a0 = arg[0] ? arg[0][19] : 0;
  if (res[0] != 0)
    res[0][19] = a0;
  a0 = arg[0] ? arg[0][20] : 0;
  if (res[0] != 0)
    res[0][20] = a0;
  a0 = arg[0] ? arg[0][21] : 0;
  if (res[0] != 0)
    res[0][21] = a0;
  a0 = arg[0] ? arg[0][22] : 0;
  if (res[0] != 0)
    res[0][22] = a0;
  a0 = arg[0] ? arg[0][23] : 0;
  if (res[0] != 0)
    res[0][23] = a0;
  a0 = arg[1] ? arg[1][0] : 0;
  if (res[0] != 0)
    res[0][24] = a0;
  a0 = arg[1] ? arg[1][1] : 0;
  if (res[0] != 0)
    res[0][25] = a0;
  a0 = arg[1] ? arg[1][2] : 0;
  if (res[0] != 0)
    res[0][26] = a0;
  a0 = 1.;
  if (res[1] != 0)
    res[1][0] = a0;
  if (res[1] != 0)
    res[1][1] = a0;
  if (res[1] != 0)
    res[1][2] = a0;
  if (res[1] != 0)
    res[1][3] = a0;
  if (res[1] != 0)
    res[1][4] = a0;
  if (res[1] != 0)
    res[1][5] = a0;
  if (res[1] != 0)
    res[1][6] = a0;
  if (res[1] != 0)
    res[1][7] = a0;
  if (res[1] != 0)
    res[1][8] = a0;
  if (res[1] != 0)
    res[1][9] = a0;
  if (res[1] != 0)
    res[1][10] = a0;
  if (res[1] != 0)
    res[1][11] = a0;
  if (res[1] != 0)
    res[1][12] = a0;
  if (res[1] != 0)
    res[1][13] = a0;
  if (res[1] != 0)
    res[1][14] = a0;
  if (res[1] != 0)
    res[1][15] = a0;
  if (res[1] != 0)
    res[1][16] = a0;
  if (res[1] != 0)
    res[1][17] = a0;
  if (res[1] != 0)
    res[1][18] = a0;
  if (res[1] != 0)
    res[1][19] = a0;
  if (res[1] != 0)
    res[1][20] = a0;
  if (res[1] != 0)
    res[1][21] = a0;
  if (res[1] != 0)
    res[1][22] = a0;
  if (res[1] != 0)
    res[1][23] = a0;
  if (res[1] != 0)
    res[1][24] = a0;
  if (res[1] != 0)
    res[1][25] = a0;
  if (res[1] != 0)
    res[1][26] = a0;
  return 0;
}


x86 assembly (clang, -O0):
<ls_cost_nm5_f0>:
push   %rbp
mov    %rsp,%rbp
sub    $0x88,%rsp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %rcx,-0x20(%rbp)
mov    %r8d,-0x24(%rbp)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1142 <ls_cost_nm5_f0+0x42>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x38(%rbp)
jmp    114f <ls_cost_nm5_f0+0x4f>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x38(%rbp)
jmp    114f <ls_cost_nm5_f0+0x4f>
movsd  -0x38(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1177 <ls_cost_nm5_f0+0x77>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     119b <ls_cost_nm5_f0+0x9b>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x40(%rbp)
jmp    11a8 <ls_cost_nm5_f0+0xa8>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x40(%rbp)
jmp    11a8 <ls_cost_nm5_f0+0xa8>
movsd  -0x40(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     11d1 <ls_cost_nm5_f0+0xd1>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x8(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     11f5 <ls_cost_nm5_f0+0xf5>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x48(%rbp)
jmp    1202 <ls_cost_nm5_f0+0x102>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x48(%rbp)
jmp    1202 <ls_cost_nm5_f0+0x102>
movsd  -0x48(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     122b <ls_cost_nm5_f0+0x12b>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x10(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     124f <ls_cost_nm5_f0+0x14f>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x18(%rax),%xmm0
movsd  %xmm0,-0x50(%rbp)
jmp    125c <ls_cost_nm5_f0+0x15c>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x50(%rbp)
jmp    125c <ls_cost_nm5_f0+0x15c>
movsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1285 <ls_cost_nm5_f0+0x185>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x18(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     12a9 <ls_cost_nm5_f0+0x1a9>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x20(%rax),%xmm0
movsd  %xmm0,-0x58(%rbp)
jmp    12b6 <ls_cost_nm5_f0+0x1b6>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x58(%rbp)
jmp    12b6 <ls_cost_nm5_f0+0x1b6>
movsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     12df <ls_cost_nm5_f0+0x1df>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x20(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1303 <ls_cost_nm5_f0+0x203>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x28(%rax),%xmm0
movsd  %xmm0,-0x60(%rbp)
jmp    1310 <ls_cost_nm5_f0+0x210>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x60(%rbp)
jmp    1310 <ls_cost_nm5_f0+0x210>
movsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1339 <ls_cost_nm5_f0+0x239>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x28(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     135d <ls_cost_nm5_f0+0x25d>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x30(%rax),%xmm0
movsd  %xmm0,-0x68(%rbp)
jmp    136a <ls_cost_nm5_f0+0x26a>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x68(%rbp)
jmp    136a <ls_cost_nm5_f0+0x26a>
movsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1393 <ls_cost_nm5_f0+0x293>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x30(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     13b7 <ls_cost_nm5_f0+0x2b7>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x38(%rax),%xmm0
movsd  %xmm0,-0x70(%rbp)
jmp    13c4 <ls_cost_nm5_f0+0x2c4>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x70(%rbp)
jmp    13c4 <ls_cost_nm5_f0+0x2c4>
movsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     13ed <ls_cost_nm5_f0+0x2ed>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x38(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1411 <ls_cost_nm5_f0+0x311>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x40(%rax),%xmm0
movsd  %xmm0,-0x78(%rbp)
jmp    141e <ls_cost_nm5_f0+0x31e>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x78(%rbp)
jmp    141e <ls_cost_nm5_f0+0x31e>
movsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1447 <ls_cost_nm5_f0+0x347>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x40(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     146b <ls_cost_nm5_f0+0x36b>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x48(%rax),%xmm0
movsd  %xmm0,-0x80(%rbp)
jmp    1478 <ls_cost_nm5_f0+0x378>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x80(%rbp)
jmp    1478 <ls_cost_nm5_f0+0x378>
movsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     14a1 <ls_cost_nm5_f0+0x3a1>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x48(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     14c8 <ls_cost_nm5_f0+0x3c8>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x50(%rax),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
jmp    14d8 <ls_cost_nm5_f0+0x3d8>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
jmp    14d8 <ls_cost_nm5_f0+0x3d8>
movsd  -0x88(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1504 <ls_cost_nm5_f0+0x404>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x50(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     152b <ls_cost_nm5_f0+0x42b>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x58(%rax),%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
jmp    153b <ls_cost_nm5_f0+0x43b>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
jmp    153b <ls_cost_nm5_f0+0x43b>
movsd  -0x90(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1567 <ls_cost_nm5_f0+0x467>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x58(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     158e <ls_cost_nm5_f0+0x48e>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x60(%rax),%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
jmp    159e <ls_cost_nm5_f0+0x49e>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
jmp    159e <ls_cost_nm5_f0+0x49e>
movsd  -0x98(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     15ca <ls_cost_nm5_f0+0x4ca>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x60(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     15f1 <ls_cost_nm5_f0+0x4f1>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x68(%rax),%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
jmp    1601 <ls_cost_nm5_f0+0x501>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
jmp    1601 <ls_cost_nm5_f0+0x501>
movsd  -0xa0(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     162d <ls_cost_nm5_f0+0x52d>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x68(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1654 <ls_cost_nm5_f0+0x554>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x70(%rax),%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
jmp    1664 <ls_cost_nm5_f0+0x564>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
jmp    1664 <ls_cost_nm5_f0+0x564>
movsd  -0xa8(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1690 <ls_cost_nm5_f0+0x590>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x70(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     16b7 <ls_cost_nm5_f0+0x5b7>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x78(%rax),%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
jmp    16c7 <ls_cost_nm5_f0+0x5c7>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
jmp    16c7 <ls_cost_nm5_f0+0x5c7>
movsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     16f3 <ls_cost_nm5_f0+0x5f3>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x78(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     171d <ls_cost_nm5_f0+0x61d>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x80(%rax),%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
jmp    172d <ls_cost_nm5_f0+0x62d>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
jmp    172d <ls_cost_nm5_f0+0x62d>
movsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     175c <ls_cost_nm5_f0+0x65c>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x80(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1786 <ls_cost_nm5_f0+0x686>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x88(%rax),%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
jmp    1796 <ls_cost_nm5_f0+0x696>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
jmp    1796 <ls_cost_nm5_f0+0x696>
movsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     17c5 <ls_cost_nm5_f0+0x6c5>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x88(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     17ef <ls_cost_nm5_f0+0x6ef>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x90(%rax),%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
jmp    17ff <ls_cost_nm5_f0+0x6ff>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
jmp    17ff <ls_cost_nm5_f0+0x6ff>
movsd  -0xc8(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     182e <ls_cost_nm5_f0+0x72e>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x90(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1858 <ls_cost_nm5_f0+0x758>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0x98(%rax),%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
jmp    1868 <ls_cost_nm5_f0+0x768>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
jmp    1868 <ls_cost_nm5_f0+0x768>
movsd  -0xd0(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1897 <ls_cost_nm5_f0+0x797>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0x98(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     18c1 <ls_cost_nm5_f0+0x7c1>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0xa0(%rax),%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
jmp    18d1 <ls_cost_nm5_f0+0x7d1>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
jmp    18d1 <ls_cost_nm5_f0+0x7d1>
movsd  -0xd8(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1900 <ls_cost_nm5_f0+0x800>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xa0(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     192a <ls_cost_nm5_f0+0x82a>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0xa8(%rax),%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
jmp    193a <ls_cost_nm5_f0+0x83a>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
jmp    193a <ls_cost_nm5_f0+0x83a>
movsd  -0xe0(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1969 <ls_cost_nm5_f0+0x869>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xa8(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     1993 <ls_cost_nm5_f0+0x893>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0xb0(%rax),%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
jmp    19a3 <ls_cost_nm5_f0+0x8a3>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
jmp    19a3 <ls_cost_nm5_f0+0x8a3>
movsd  -0xe8(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     19d2 <ls_cost_nm5_f0+0x8d2>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xb0(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,(%rax)
je     19fc <ls_cost_nm5_f0+0x8fc>
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
movsd  0xb8(%rax),%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
jmp    1a0c <ls_cost_nm5_f0+0x90c>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
jmp    1a0c <ls_cost_nm5_f0+0x90c>
movsd  -0xf0(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1a3b <ls_cost_nm5_f0+0x93b>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xb8(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1a63 <ls_cost_nm5_f0+0x963>
mov    -0x8(%rbp),%rax
mov    0x8(%rax),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
jmp    1a73 <ls_cost_nm5_f0+0x973>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
jmp    1a73 <ls_cost_nm5_f0+0x973>
movsd  -0xf8(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1aa2 <ls_cost_nm5_f0+0x9a2>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xc0(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1acb <ls_cost_nm5_f0+0x9cb>
mov    -0x8(%rbp),%rax
mov    0x8(%rax),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
jmp    1adb <ls_cost_nm5_f0+0x9db>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
jmp    1adb <ls_cost_nm5_f0+0x9db>
movsd  -0x100(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1b0a <ls_cost_nm5_f0+0xa0a>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xc8(%rax)
mov    -0x8(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1b33 <ls_cost_nm5_f0+0xa33>
mov    -0x8(%rbp),%rax
mov    0x8(%rax),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
jmp    1b43 <ls_cost_nm5_f0+0xa43>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
jmp    1b43 <ls_cost_nm5_f0+0xa43>
movsd  -0x108(%rbp),%xmm0
ff
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,(%rax)
je     1b72 <ls_cost_nm5_f0+0xa72>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
movsd  %xmm0,0xd0(%rax)
movsd  0x486(%rip),%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1b9f <ls_cost_nm5_f0+0xa9f>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1bc0 <ls_cost_nm5_f0+0xac0>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x8(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1be1 <ls_cost_nm5_f0+0xae1>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x10(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1c02 <ls_cost_nm5_f0+0xb02>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x18(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1c23 <ls_cost_nm5_f0+0xb23>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x20(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1c44 <ls_cost_nm5_f0+0xb44>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x28(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1c65 <ls_cost_nm5_f0+0xb65>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x30(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1c86 <ls_cost_nm5_f0+0xb86>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x38(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1ca7 <ls_cost_nm5_f0+0xba7>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x40(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1cc8 <ls_cost_nm5_f0+0xbc8>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x48(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1ce9 <ls_cost_nm5_f0+0xbe9>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x50(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1d0a <ls_cost_nm5_f0+0xc0a>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x58(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1d2b <ls_cost_nm5_f0+0xc2b>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x60(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1d4c <ls_cost_nm5_f0+0xc4c>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x68(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1d6d <ls_cost_nm5_f0+0xc6d>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x70(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1d8e <ls_cost_nm5_f0+0xc8e>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x78(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1db2 <ls_cost_nm5_f0+0xcb2>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x80(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1dd6 <ls_cost_nm5_f0+0xcd6>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x88(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1dfa <ls_cost_nm5_f0+0xcfa>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x90(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1e1e <ls_cost_nm5_f0+0xd1e>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0x98(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1e42 <ls_cost_nm5_f0+0xd42>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xa0(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1e66 <ls_cost_nm5_f0+0xd66>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xa8(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1e8a <ls_cost_nm5_f0+0xd8a>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xb0(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1eae <ls_cost_nm5_f0+0xdae>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xb8(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1ed2 <ls_cost_nm5_f0+0xdd2>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xc0(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1ef6 <ls_cost_nm5_f0+0xdf6>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xc8(%rax)
mov    -0x10(%rbp),%rax
cmpq   $0x0,0x8(%rax)
je     1f1a <ls_cost_nm5_f0+0xe1a>
movsd  -0x30(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%rax
movsd  %xmm0,0xd0(%rax)
xor    %eax,%eax
add    $0x88,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<ls_cost_nm5_f0>:
mov    (%rdi),%rcx
test   %rcx,%rcx
je     110e <ls_cost_nm5_f0+0xe>
movsd  (%rcx),%xmm0
jmp    1111 <ls_cost_nm5_f0+0x11>
xorps  %xmm0,%xmm0
mov    (%rsi),%rax
test   %rax,%rax
je     111d <ls_cost_nm5_f0+0x1d>
movsd  %xmm0,(%rax)
test   %rcx,%rcx
je     142f <ls_cost_nm5_f0+0x32f>
movsd  0x8(%rcx),%xmm0
test   %rax,%rax
je     1135 <ls_cost_nm5_f0+0x35>
movsd  %xmm0,0x8(%rax)
test   %rcx,%rcx
je     1440 <ls_cost_nm5_f0+0x340>
movsd  0x10(%rcx),%xmm0
test   %rax,%rax
je     114d <ls_cost_nm5_f0+0x4d>
movsd  %xmm0,0x10(%rax)
test   %rcx,%rcx
je     1451 <ls_cost_nm5_f0+0x351>
movsd  0x18(%rcx),%xmm0
test   %rax,%rax
je     1165 <ls_cost_nm5_f0+0x65>
movsd  %xmm0,0x18(%rax)
test   %rcx,%rcx
je     1462 <ls_cost_nm5_f0+0x362>
movsd  0x20(%rcx),%xmm0
test   %rax,%rax
je     117d <ls_cost_nm5_f0+0x7d>
movsd  %xmm0,0x20(%rax)
test   %rcx,%rcx
je     1473 <ls_cost_nm5_f0+0x373>
movsd  0x28(%rcx),%xmm0
test   %rax,%rax
je     1195 <ls_cost_nm5_f0+0x95>
movsd  %xmm0,0x28(%rax)
test   %rcx,%rcx
je     1484 <ls_cost_nm5_f0+0x384>
movsd  0x30(%rcx),%xmm0
test   %rax,%rax
je     11ad <ls_cost_nm5_f0+0xad>
movsd  %xmm0,0x30(%rax)
test   %rcx,%rcx
je     1495 <ls_cost_nm5_f0+0x395>
movsd  0x38(%rcx),%xmm0
test   %rax,%rax
je     11c5 <ls_cost_nm5_f0+0xc5>
movsd  %xmm0,0x38(%rax)
test   %rcx,%rcx
je     14a6 <ls_cost_nm5_f0+0x3a6>
movsd  0x40(%rcx),%xmm0
test   %rax,%rax
je     11dd <ls_cost_nm5_f0+0xdd>
movsd  %xmm0,0x40(%rax)
test   %rcx,%rcx
je     14b7 <ls_cost_nm5_f0+0x3b7>
movsd  0x48(%rcx),%xmm0
test   %rax,%rax
je     11f5 <ls_cost_nm5_f0+0xf5>
movsd  %xmm0,0x48(%rax)
test   %rcx,%rcx
je     14c8 <ls_cost_nm5_f0+0x3c8>
movsd  0x50(%rcx),%xmm0
test   %rax,%rax
je     120d <ls_cost_nm5_f0+0x10d>
movsd  %xmm0,0x50(%rax)
test   %rcx,%rcx
je     14d9 <ls_cost_nm5_f0+0x3d9>
movsd  0x58(%rcx),%xmm0
test   %rax,%rax
je     1225 <ls_cost_nm5_f0+0x125>
movsd  %xmm0,0x58(%rax)
test   %rcx,%rcx
je     14ea <ls_cost_nm5_f0+0x3ea>
movsd  0x60(%rcx),%xmm0
test   %rax,%rax
je     123d <ls_cost_nm5_f0+0x13d>
movsd  %xmm0,0x60(%rax)
test   %rcx,%rcx
je     14fb <ls_cost_nm5_f0+0x3fb>
movsd  0x68(%rcx),%xmm0
test   %rax,%rax
je     1255 <ls_cost_nm5_f0+0x155>
movsd  %xmm0,0x68(%rax)
test   %rcx,%rcx
je     150c <ls_cost_nm5_f0+0x40c>
movsd  0x70(%rcx),%xmm0
test   %rax,%rax
je     126d <ls_cost_nm5_f0+0x16d>
movsd  %xmm0,0x70(%rax)
test   %rcx,%rcx
je     151d <ls_cost_nm5_f0+0x41d>
movsd  0x78(%rcx),%xmm0
test   %rax,%rax
je     1285 <ls_cost_nm5_f0+0x185>
movsd  %xmm0,0x78(%rax)
test   %rcx,%rcx
je     152e <ls_cost_nm5_f0+0x42e>
movsd  0x80(%rcx),%xmm0
test   %rax,%rax
je     12a3 <ls_cost_nm5_f0+0x1a3>
movsd  %xmm0,0x80(%rax)
test   %rcx,%rcx
je     153f <ls_cost_nm5_f0+0x43f>
movsd  0x88(%rcx),%xmm0
test   %rax,%rax
je     12c1 <ls_cost_nm5_f0+0x1c1>
movsd  %xmm0,0x88(%rax)
test   %rcx,%rcx
je     1550 <ls_cost_nm5_f0+0x450>
movsd  0x90(%rcx),%xmm0
test   %rax,%rax
je     12df <ls_cost_nm5_f0+0x1df>
movsd  %xmm0,0x90(%rax)
test   %rcx,%rcx
je     1561 <ls_cost_nm5_f0+0x461>
movsd  0x98(%rcx),%xmm0
test   %rax,%rax
je     12fd <ls_cost_nm5_f0+0x1fd>
movsd  %xmm0,0x98(%rax)
test   %rcx,%rcx
je     1572 <ls_cost_nm5_f0+0x472>
movsd  0xa0(%rcx),%xmm0
test   %rax,%rax
je     131b <ls_cost_nm5_f0+0x21b>
movsd  %xmm0,0xa0(%rax)
test   %rcx,%rcx
je     1583 <ls_cost_nm5_f0+0x483>
movsd  0xa8(%rcx),%xmm0
test   %rax,%rax
je     1339 <ls_cost_nm5_f0+0x239>
movsd  %xmm0,0xa8(%rax)
test   %rcx,%rcx
je     1594 <ls_cost_nm5_f0+0x494>
movsd  0xb0(%rcx),%xmm0
test   %rax,%rax
je     1357 <ls_cost_nm5_f0+0x257>
movsd  %xmm0,0xb0(%rax)
test   %rcx,%rcx
je     15a5 <ls_cost_nm5_f0+0x4a5>
movsd  0xb8(%rcx),%xmm0
test   %rax,%rax
je     1375 <ls_cost_nm5_f0+0x275>
movsd  %xmm0,0xb8(%rax)
mov    0x8(%rdi),%rcx
test   %rcx,%rcx
je     15b6 <ls_cost_nm5_f0+0x4b6>
movsd  (%rcx),%xmm0
test   %rax,%rax
je     1393 <ls_cost_nm5_f0+0x293>
movsd  %xmm0,0xc0(%rax)
test   %rcx,%rcx
je     15c7 <ls_cost_nm5_f0+0x4c7>
movsd  0x8(%rcx),%xmm0
test   %rax,%rax
je     13ae <ls_cost_nm5_f0+0x2ae>
movsd  %xmm0,0xc8(%rax)
test   %rcx,%rcx
je     15d8 <ls_cost_nm5_f0+0x4d8>
movsd  0x10(%rcx),%xmm0
test   %rax,%rax
je     13c9 <ls_cost_nm5_f0+0x2c9>
movsd  %xmm0,0xd0(%rax)
mov    0x8(%rsi),%rax
test   %rax,%rax
je     142c <ls_cost_nm5_f0+0x32c>
movaps 0xc27(%rip),%xmm0
movups %xmm0,(%rax)
movups %xmm0,0x10(%rax)
movups %xmm0,0x20(%rax)
movups %xmm0,0x30(%rax)
movups %xmm0,0x40(%rax)
movups %xmm0,0x50(%rax)
movups %xmm0,0x60(%rax)
movups %xmm0,0x70(%rax)
movups %xmm0,0x80(%rax)
movups %xmm0,0x90(%rax)
movups %xmm0,0xa0(%rax)
movups %xmm0,0xb0(%rax)
movups %xmm0,0xc0(%rax)
movabs $0x3ff0000000000000,%rcx
mov    %rcx,0xd0(%rax)
xor    %eax,%eax
ret
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1130 <ls_cost_nm5_f0+0x30>
jmp    1135 <ls_cost_nm5_f0+0x35>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1148 <ls_cost_nm5_f0+0x48>
jmp    114d <ls_cost_nm5_f0+0x4d>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1160 <ls_cost_nm5_f0+0x60>
jmp    1165 <ls_cost_nm5_f0+0x65>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1178 <ls_cost_nm5_f0+0x78>
jmp    117d <ls_cost_nm5_f0+0x7d>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1190 <ls_cost_nm5_f0+0x90>
jmp    1195 <ls_cost_nm5_f0+0x95>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    11a8 <ls_cost_nm5_f0+0xa8>
jmp    11ad <ls_cost_nm5_f0+0xad>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    11c0 <ls_cost_nm5_f0+0xc0>
jmp    11c5 <ls_cost_nm5_f0+0xc5>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    11d8 <ls_cost_nm5_f0+0xd8>
jmp    11dd <ls_cost_nm5_f0+0xdd>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    11f0 <ls_cost_nm5_f0+0xf0>
jmp    11f5 <ls_cost_nm5_f0+0xf5>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1208 <ls_cost_nm5_f0+0x108>
jmp    120d <ls_cost_nm5_f0+0x10d>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1220 <ls_cost_nm5_f0+0x120>
jmp    1225 <ls_cost_nm5_f0+0x125>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1238 <ls_cost_nm5_f0+0x138>
jmp    123d <ls_cost_nm5_f0+0x13d>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1250 <ls_cost_nm5_f0+0x150>
jmp    1255 <ls_cost_nm5_f0+0x155>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1268 <ls_cost_nm5_f0+0x168>
jmp    126d <ls_cost_nm5_f0+0x16d>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1280 <ls_cost_nm5_f0+0x180>
jmp    1285 <ls_cost_nm5_f0+0x185>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    129b <ls_cost_nm5_f0+0x19b>
jmp    12a3 <ls_cost_nm5_f0+0x1a3>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    12b9 <ls_cost_nm5_f0+0x1b9>
jmp    12c1 <ls_cost_nm5_f0+0x1c1>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    12d7 <ls_cost_nm5_f0+0x1d7>
jmp    12df <ls_cost_nm5_f0+0x1df>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    12f5 <ls_cost_nm5_f0+0x1f5>
jmp    12fd <ls_cost_nm5_f0+0x1fd>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1313 <ls_cost_nm5_f0+0x213>
jmp    131b <ls_cost_nm5_f0+0x21b>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    1331 <ls_cost_nm5_f0+0x231>
jmp    1339 <ls_cost_nm5_f0+0x239>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    134f <ls_cost_nm5_f0+0x24f>
jmp    1357 <ls_cost_nm5_f0+0x257>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    136d <ls_cost_nm5_f0+0x26d>
jmp    1375 <ls_cost_nm5_f0+0x275>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    138b <ls_cost_nm5_f0+0x28b>
jmp    1393 <ls_cost_nm5_f0+0x293>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    13a6 <ls_cost_nm5_f0+0x2a6>
jmp    13ae <ls_cost_nm5_f0+0x2ae>
xorps  %xmm0,%xmm0
test   %rax,%rax
jne    13c1 <ls_cost_nm5_f0+0x2c1>
jmp    13c9 <ls_cost_nm5_f0+0x2c9>

LLVM IR (-O0):
define i32 @ls_cost_nm5_f0(double** %0, double** %1, i32* %2, double* %3, i32 %4) {
%6 = alloca double**
%7 = alloca double**
%8 = alloca i32*
%9 = alloca double*
%10 = alloca i32
%11 = alloca double
store double** %0, double*** %6
store double** %1, double*** %7
store i32* %2, i32** %8
store double* %3, double** %9
store i32 %4, i32* %10
%12 = load double**, double*** %6
%13 = getelementptr inbounds double*, double** %12, i64 0
%14 = load double*, double** %13
%15 = icmp ne double* %14, null
br i1 %15, label %16, label %22
16: ; preds = %5
%17 = load double**, double*** %6
%18 = getelementptr inbounds double*, double** %17, i64 0
%19 = load double*, double** %18
%20 = getelementptr inbounds double, double* %19, i64 0
%21 = load double, double* %20
br label %23
22: ; preds = %5
br label %23
23: ; preds = %22, %16
%24 = phi double [ %21, %16 ], [ 0.000000e+00, %22 ]
store double %24, double* %11
%25 = load double**, double*** %7
%26 = getelementptr inbounds double*, double** %25, i64 0
%27 = load double*, double** %26
%28 = icmp ne double* %27, null
br i1 %28, label %29, label %35
29: ; preds = %23
%30 = load double, double* %11
%31 = load double**, double*** %7
%32 = getelementptr inbounds double*, double** %31, i64 0
%33 = load double*, double** %32
%34 = getelementptr inbounds double, double* %33, i64 0
store double %30, double* %34
br label %35
35: ; preds = %29, %23
%36 = load double**, double*** %6
%37 = getelementptr inbounds double*, double** %36, i64 0
%38 = load double*, double** %37
%39 = icmp ne double* %38, null
br i1 %39, label %40, label %46
40: ; preds = %35
%41 = load double**, double*** %6
%42 = getelementptr inbounds double*, double** %41, i64 0
%43 = load double*, double** %42
%44 = getelementptr inbounds double, double* %43, i64 1
%45 = load double, double* %44
br label %47
46: ; preds = %35
br label %47
47: ; preds = %46, %40
%48 = phi double [ %45, %40 ], [ 0.000000e+00, %46 ]
store double %48, double* %11
%49 = load double**, double*** %7
%50 = getelementptr inbounds double*, double** %49, i64 0
%51 = load double*, double** %50
%52 = icmp ne double* %51, null
br i1 %52, label %53, label %59
53: ; preds = %47
%54 = load double, double* %11
%55 = load double**, double*** %7
%56 = getelementptr inbounds double*, double** %55, i64 0
%57 = load double*, double** %56
%58 = getelementptr inbounds double, double* %57, i64 1
store double %54, double* %58
br label %59
59: ; preds = %53, %47
%60 = load double**, double*** %6
%61 = getelementptr inbounds double*, double** %60, i64 0
%62 = load double*, double** %61
%63 = icmp ne double* %62, null
br i1 %63, label %64, label %70
64: ; preds = %59
%65 = load double**, double*** %6
%66 = getelementptr inbounds double*, double** %65, i64 0
%67 = load double*, double** %66
%68 = getelementptr inbounds double, double* %67, i64 2
%69 = load double, double* %68
br label %71
70: ; preds = %59
br label %71
71: ; preds = %70, %64
%72 = phi double [ %69, %64 ], [ 0.000000e+00, %70 ]
store double %72, double* %11
%73 = load double**, double*** %7
%74 = getelementptr inbounds double*, double** %73, i64 0
%75 = load double*, double** %74
%76 = icmp ne double* %75, null
br i1 %76, label %77, label %83
77: ; preds = %71
%78 = load double, double* %11
%79 = load double**, double*** %7
%80 = getelementptr inbounds double*, double** %79, i64 0
%81 = load double*, double** %80
%82 = getelementptr inbounds double, double* %81, i64 2
store double %78, double* %82
br label %83
83: ; preds = %77, %71
%84 = load double**, double*** %6
%85 = getelementptr inbounds double*, double** %84, i64 0
%86 = load double*, double** %85
%87 = icmp ne double* %86, null
br i1 %87, label %88, label %94
88: ; preds = %83
%89 = load double**, double*** %6
%90 = getelementptr inbounds double*, double** %89, i64 0
%91 = load double*, double** %90
%92 = getelementptr inbounds double, double* %91, i64 3
%93 = load double, double* %92
br label %95
94: ; preds = %83
br label %95
95: ; preds = %94, %88
%96 = phi double [ %93, %88 ], [ 0.000000e+00, %94 ]
store double %96, double* %11
%97 = load double**, double*** %7
%98 = getelementptr inbounds double*, double** %97, i64 0
%99 = load double*, double** %98
%100 = icmp ne double* %99, null
br i1 %100, label %101, label %107
101: ; preds = %95
%102 = load double, double* %11
%103 = load double**, double*** %7
%104 = getelementptr inbounds double*, double** %103, i64 0
%105 = load double*, double** %104
%106 = getelementptr inbounds double, double* %105, i64 3
store double %102, double* %106
br label %107
107: ; preds = %101, %95
%108 = load double**, double*** %6
%109 = getelementptr inbounds double*, double** %108, i64 0
%110 = load double*, double** %109
%111 = icmp ne double* %110, null
br i1 %111, label %112, label %118
112: ; preds = %107
%113 = load double**, double*** %6
%114 = getelementptr inbounds double*, double** %113, i64 0
%115 = load double*, double** %114
%116 = getelementptr inbounds double, double* %115, i64 4
%117 = load double, double* %116
br label %119
118: ; preds = %107
br label %119
119: ; preds = %118, %112
%120 = phi double [ %117, %112 ], [ 0.000000e+00, %118 ]
store double %120, double* %11
%121 = load double**, double*** %7
%122 = getelementptr inbounds double*, double** %121, i64 0
%123 = load double*, double** %122
%124 = icmp ne double* %123, null
br i1 %124, label %125, label %131
125: ; preds = %119
%126 = load double, double* %11
%127 = load double**, double*** %7
%128 = getelementptr inbounds double*, double** %127, i64 0
%129 = load double*, double** %128
%130 = getelementptr inbounds double, double* %129, i64 4
store double %126, double* %130
br label %131
131: ; preds = %125, %119
%132 = load double**, double*** %6
%133 = getelementptr inbounds double*, double** %132, i64 0
%134 = load double*, double** %133
%135 = icmp ne double* %134, null
br i1 %135, label %136, label %142
136: ; preds = %131
%137 = load double**, double*** %6
%138 = getelementptr inbounds double*, double** %137, i64 0
%139 = load double*, double** %138
%140 = getelementptr inbounds double, double* %139, i64 5
%141 = load double, double* %140
br label %143
142: ; preds = %131
br label %143
143: ; preds = %142, %136
%144 = phi double [ %141, %136 ], [ 0.000000e+00, %142 ]
store double %144, double* %11
%145 = load double**, double*** %7
%146 = getelementptr inbounds double*, double** %145, i64 0
%147 = load double*, double** %146
%148 = icmp ne double* %147, null
br i1 %148, label %149, label %155
149: ; preds = %143
%150 = load double, double* %11
%151 = load double**, double*** %7
%152 = getelementptr inbounds double*, double** %151, i64 0
%153 = load double*, double** %152
%154 = getelementptr inbounds double, double* %153, i64 5
store double %150, double* %154
br label %155
155: ; preds = %149, %143
%156 = load double**, double*** %6
%157 = getelementptr inbounds double*, double** %156, i64 0
%158 = load double*, double** %157
%159 = icmp ne double* %158, null
br i1 %159, label %160, label %166
160: ; preds = %155
%161 = load double**, double*** %6
%162 = getelementptr inbounds double*, double** %161, i64 0
%163 = load double*, double** %162
%164 = getelementptr inbounds double, double* %163, i64 6
%165 = load double, double* %164
br label %167
166: ; preds = %155
br label %167
167: ; preds = %166, %160
%168 = phi double [ %165, %160 ], [ 0.000000e+00, %166 ]
store double %168, double* %11
%169 = load double**, double*** %7
%170 = getelementptr inbounds double*, double** %169, i64 0
%171 = load double*, double** %170
%172 = icmp ne double* %171, null
br i1 %172, label %173, label %179
173: ; preds = %167
%174 = load double, double* %11
%175 = load double**, double*** %7
%176 = getelementptr inbounds double*, double** %175, i64 0
%177 = load double*, double** %176
%178 = getelementptr inbounds double, double* %177, i64 6
store double %174, double* %178
br label %179
179: ; preds = %173, %167
%180 = load double**, double*** %6
%181 = getelementptr inbounds double*, double** %180, i64 0
%182 = load double*, double** %181
%183 = icmp ne double* %182, null
br i1 %183, label %184, label %190
184: ; preds = %179
%185 = load double**, double*** %6
%186 = getelementptr inbounds double*, double** %185, i64 0
%187 = load double*, double** %186
%188 = getelementptr inbounds double, double* %187, i64 7
%189 = load double, double* %188
br label %191
190: ; preds = %179
br label %191
191: ; preds = %190, %184
%192 = phi double [ %189, %184 ], [ 0.000000e+00, %190 ]
store double %192, double* %11
%193 = load double**, double*** %7
%194 = getelementptr inbounds double*, double** %193, i64 0
%195 = load double*, double** %194
%196 = icmp ne double* %195, null
br i1 %196, label %197, label %203
197: ; preds = %191
%198 = load double, double* %11
%199 = load double**, double*** %7
%200 = getelementptr inbounds double*, double** %199, i64 0
%201 = load double*, double** %200
%202 = getelementptr inbounds double, double* %201, i64 7
store double %198, double* %202
br label %203
203: ; preds = %197, %191
%204 = load double**, double*** %6
%205 = getelementptr inbounds double*, double** %204, i64 0
%206 = load double*, double** %205
%207 = icmp ne double* %206, null
br i1 %207, label %208, label %214
208: ; preds = %203
%209 = load double**, double*** %6
%210 = getelementptr inbounds double*, double** %209, i64 0
%211 = load double*, double** %210
%212 = getelementptr inbounds double, double* %211, i64 8
%213 = load double, double* %212
br label %215
214: ; preds = %203
br label %215
215: ; preds = %214, %208
%216 = phi double [ %213, %208 ], [ 0.000000e+00, %214 ]
store double %216, double* %11
%217 = load double**, double*** %7
%218 = getelementptr inbounds double*, double** %217, i64 0
%219 = load double*, double** %218
%220 = icmp ne double* %219, null
br i1 %220, label %221, label %227
221: ; preds = %215
%222 = load double, double* %11
%223 = load double**, double*** %7
%224 = getelementptr inbounds double*, double** %223, i64 0
%225 = load double*, double** %224
%226 = getelementptr inbounds double, double* %225, i64 8
store double %222, double* %226
br label %227
227: ; preds = %221, %215
%228 = load double**, double*** %6
%229 = getelementptr inbounds double*, double** %228, i64 0
%230 = load double*, double** %229
%231 = icmp ne double* %230, null
br i1 %231, label %232, label %238
232: ; preds = %227
%233 = load double**, double*** %6
%234 = getelementptr inbounds double*, double** %233, i64 0
%235 = load double*, double** %234
%236 = getelementptr inbounds double, double* %235, i64 9
%237 = load double, double* %236
br label %239
238: ; preds = %227
br label %239
239: ; preds = %238, %232
%240 = phi double [ %237, %232 ], [ 0.000000e+00, %238 ]
store double %240, double* %11
%241 = load double**, double*** %7
%242 = getelementptr inbounds double*, double** %241, i64 0
%243 = load double*, double** %242
%244 = icmp ne double* %243, null
br i1 %244, label %245, label %251
245: ; preds = %239
%246 = load double, double* %11
%247 = load double**, double*** %7
%248 = getelementptr inbounds double*, double** %247, i64 0
%249 = load double*, double** %248
%250 = getelementptr inbounds double, double* %249, i64 9
store double %246, double* %250
br label %251
251: ; preds = %245, %239
%252 = load double**, double*** %6
%253 = getelementptr inbounds double*, double** %252, i64 0
%254 = load double*, double** %253
%255 = icmp ne double* %254, null
br i1 %255, label %256, label %262
256: ; preds = %251
%257 = load double**, double*** %6
%258 = getelementptr inbounds double*, double** %257, i64 0
%259 = load double*, double** %258
%260 = getelementptr inbounds double, double* %259, i64 10
%261 = load double, double* %260
br label %263
262: ; preds = %251
br label %263
263: ; preds = %262, %256
%264 = phi double [ %261, %256 ], [ 0.000000e+00, %262 ]
store double %264, double* %11
%265 = load double**, double*** %7
%266 = getelementptr inbounds double*, double** %265, i64 0
%267 = load double*, double** %266
%268 = icmp ne double* %267, null
br i1 %268, label %269, label %275
269: ; preds = %263
%270 = load double, double* %11
%271 = load double**, double*** %7
%272 = getelementptr inbounds double*, double** %271, i64 0
%273 = load double*, double** %272
%274 = getelementptr inbounds double, double* %273, i64 10
store double %270, double* %274
br label %275
275: ; preds = %269, %263
%276 = load double**, double*** %6
%277 = getelementptr inbounds double*, double** %276, i64 0
%278 = load double*, double** %277
%279 = icmp ne double* %278, null
br i1 %279, label %280, label %286
280: ; preds = %275
%281 = load double**, double*** %6
%282 = getelementptr inbounds double*, double** %281, i64 0
%283 = load double*, double** %282
%284 = getelementptr inbounds double, double* %283, i64 11
%285 = load double, double* %284
br label %287
286: ; preds = %275
br label %287
287: ; preds = %286, %280
%288 = phi double [ %285, %280 ], [ 0.000000e+00, %286 ]
store double %288, double* %11
%289 = load double**, double*** %7
%290 = getelementptr inbounds double*, double** %289, i64 0
%291 = load double*, double** %290
%292 = icmp ne double* %291, null
br i1 %292, label %293, label %299
293: ; preds = %287
%294 = load double, double* %11
%295 = load double**, double*** %7
%296 = getelementptr inbounds double*, double** %295, i64 0
%297 = load double*, double** %296
%298 = getelementptr inbounds double, double* %297, i64 11
store double %294, double* %298
br label %299
299: ; preds = %293, %287
%300 = load double**, double*** %6
%301 = getelementptr inbounds double*, double** %300, i64 0
%302 = load double*, double** %301
%303 = icmp ne double* %302, null
br i1 %303, label %304, label %310
304: ; preds = %299
%305 = load double**, double*** %6
%306 = getelementptr inbounds double*, double** %305, i64 0
%307 = load double*, double** %306
%308 = getelementptr inbounds double, double* %307, i64 12
%309 = load double, double* %308
br label %311
310: ; preds = %299
br label %311
311: ; preds = %310, %304
%312 = phi double [ %309, %304 ], [ 0.000000e+00, %310 ]
store double %312, double* %11
%313 = load double**, double*** %7
%314 = getelementptr inbounds double*, double** %313, i64 0
%315 = load double*, double** %314
%316 = icmp ne double* %315, null
br i1 %316, label %317, label %323
317: ; preds = %311
%318 = load double, double* %11
%319 = load double**, double*** %7
%320 = getelementptr inbounds double*, double** %319, i64 0
%321 = load double*, double** %320
%322 = getelementptr inbounds double, double* %321, i64 12
store double %318, double* %322
br label %323
323: ; preds = %317, %311
%324 = load double**, double*** %6
%325 = getelementptr inbounds double*, double** %324, i64 0
%326 = load double*, double** %325
%327 = icmp ne double* %326, null
br i1 %327, label %328, label %334
328: ; preds = %323
%329 = load double**, double*** %6
%330 = getelementptr inbounds double*, double** %329, i64 0
%331 = load double*, double** %330
%332 = getelementptr inbounds double, double* %331, i64 13
%333 = load double, double* %332
br label %335
334: ; preds = %323
br label %335
335: ; preds = %334, %328
%336 = phi double [ %333, %328 ], [ 0.000000e+00, %334 ]
store double %336, double* %11
%337 = load double**, double*** %7
%338 = getelementptr inbounds double*, double** %337, i64 0
%339 = load double*, double** %338
%340 = icmp ne double* %339, null
br i1 %340, label %341, label %347
341: ; preds = %335
%342 = load double, double* %11
%343 = load double**, double*** %7
%344 = getelementptr inbounds double*, double** %343, i64 0
%345 = load double*, double** %344
%346 = getelementptr inbounds double, double* %345, i64 13
store double %342, double* %346
br label %347
347: ; preds = %341, %335
%348 = load double**, double*** %6
%349 = getelementptr inbounds double*, double** %348, i64 0
%350 = load double*, double** %349
%351 = icmp ne double* %350, null
br i1 %351, label %352, label %358
352: ; preds = %347
%353 = load double**, double*** %6
%354 = getelementptr inbounds double*, double** %353, i64 0
%355 = load double*, double** %354
%356 = getelementptr inbounds double, double* %355, i64 14
%357 = load double, double* %356
br label %359
358: ; preds = %347
br label %359
359: ; preds = %358, %352
%360 = phi double [ %357, %352 ], [ 0.000000e+00, %358 ]
store double %360, double* %11
%361 = load double**, double*** %7
%362 = getelementptr inbounds double*, double** %361, i64 0
%363 = load double*, double** %362
%364 = icmp ne double* %363, null
br i1 %364, label %365, label %371
365: ; preds = %359
%366 = load double, double* %11
%367 = load double**, double*** %7
%368 = getelementptr inbounds double*, double** %367, i64 0
%369 = load double*, double** %368
%370 = getelementptr inbounds double, double* %369, i64 14
store double %366, double* %370
br label %371
371: ; preds = %365, %359
%372 = load double**, double*** %6
%373 = getelementptr inbounds double*, double** %372, i64 0
%374 = load double*, double** %373
%375 = icmp ne double* %374, null
br i1 %375, label %376, label %382
376: ; preds = %371
%377 = load double**, double*** %6
%378 = getelementptr inbounds double*, double** %377, i64 0
%379 = load double*, double** %378
%380 = getelementptr inbounds double, double* %379, i64 15
%381 = load double, double* %380
br label %383
382: ; preds = %371
br label %383
383: ; preds = %382, %376
%384 = phi double [ %381, %376 ], [ 0.000000e+00, %382 ]
store double %384, double* %11
%385 = load double**, double*** %7
%386 = getelementptr inbounds double*, double** %385, i64 0
%387 = load double*, double** %386
%388 = icmp ne double* %387, null
br i1 %388, label %389, label %395
389: ; preds = %383
%390 = load double, double* %11
%391 = load double**, double*** %7
%392 = getelementptr inbounds double*, double** %391, i64 0
%393 = load double*, double** %392
%394 = getelementptr inbounds double, double* %393, i64 15
store double %390, double* %394
br label %395
395: ; preds = %389, %383
%396 = load double**, double*** %6
%397 = getelementptr inbounds double*, double** %396, i64 0
%398 = load double*, double** %397
%399 = icmp ne double* %398, null
br i1 %399, label %400, label %406
400: ; preds = %395
%401 = load double**, double*** %6
%402 = getelementptr inbounds double*, double** %401, i64 0
%403 = load double*, double** %402
%404 = getelementptr inbounds double, double* %403, i64 16
%405 = load double, double* %404
br label %407
406: ; preds = %395
br label %407
407: ; preds = %406, %400
%408 = phi double [ %405, %400 ], [ 0.000000e+00, %406 ]
store double %408, double* %11
%409 = load double**, double*** %7
%410 = getelementptr inbounds double*, double** %409, i64 0
%411 = load double*, double** %410
%412 = icmp ne double* %411, null
br i1 %412, label %413, label %419
413: ; preds = %407
%414 = load double, double* %11
%415 = load double**, double*** %7
%416 = getelementptr inbounds double*, double** %415, i64 0
%417 = load double*, double** %416
%418 = getelementptr inbounds double, double* %417, i64 16
store double %414, double* %418
br label %419
419: ; preds = %413, %407
%420 = load double**, double*** %6
%421 = getelementptr inbounds double*, double** %420, i64 0
%422 = load double*, double** %421
%423 = icmp ne double* %422, null
br i1 %423, label %424, label %430
424: ; preds = %419
%425 = load double**, double*** %6
%426 = getelementptr inbounds double*, double** %425, i64 0
%427 = load double*, double** %426
%428 = getelementptr inbounds double, double* %427, i64 17
%429 = load double, double* %428
br label %431
430: ; preds = %419
br label %431
431: ; preds = %430, %424
%432 = phi double [ %429, %424 ], [ 0.000000e+00, %430 ]
store double %432, double* %11
%433 = load double**, double*** %7
%434 = getelementptr inbounds double*, double** %433, i64 0
%435 = load double*, double** %434
%436 = icmp ne double* %435, null
br i1 %436, label %437, label %443
437: ; preds = %431
%438 = load double, double* %11
%439 = load double**, double*** %7
%440 = getelementptr inbounds double*, double** %439, i64 0
%441 = load double*, double** %440
%442 = getelementptr inbounds double, double* %441, i64 17
store double %438, double* %442
br label %443
443: ; preds = %437, %431
%444 = load double**, double*** %6
%445 = getelementptr inbounds double*, double** %444, i64 0
%446 = load double*, double** %445
%447 = icmp ne double* %446, null
br i1 %447, label %448, label %454
448: ; preds = %443
%449 = load double**, double*** %6
%450 = getelementptr inbounds double*, double** %449, i64 0
%451 = load double*, double** %450
%452 = getelementptr inbounds double, double* %451, i64 18
%453 = load double, double* %452
br label %455
454: ; preds = %443
br label %455
455: ; preds = %454, %448
%456 = phi double [ %453, %448 ], [ 0.000000e+00, %454 ]
store double %456, double* %11
%457 = load double**, double*** %7
%458 = getelementptr inbounds double*, double** %457, i64 0
%459 = load double*, double** %458
%460 = icmp ne double* %459, null
br i1 %460, label %461, label %467
461: ; preds = %455
%462 = load double, double* %11
%463 = load double**, double*** %7
%464 = getelementptr inbounds double*, double** %463, i64 0
%465 = load double*, double** %464
%466 = getelementptr inbounds double, double* %465, i64 18
store double %462, double* %466
br label %467
467: ; preds = %461, %455
%468 = load double**, double*** %6
%469 = getelementptr inbounds double*, double** %468, i64 0
%470 = load double*, double** %469
%471 = icmp ne double* %470, null
br i1 %471, label %472, label %478
472: ; preds = %467
%473 = load double**, double*** %6
%474 = getelementptr inbounds double*, double** %473, i64 0
%475 = load double*, double** %474
%476 = getelementptr inbounds double, double* %475, i64 19
%477 = load double, double* %476
br label %479
478: ; preds = %467
br label %479
479: ; preds = %478, %472
%480 = phi double [ %477, %472 ], [ 0.000000e+00, %478 ]
store double %480, double* %11
%481 = load double**, double*** %7
%482 = getelementptr inbounds double*, double** %481, i64 0
%483 = load double*, double** %482
%484 = icmp ne double* %483, null
br i1 %484, label %485, label %491
485: ; preds = %479
%486 = load double, double* %11
%487 = load double**, double*** %7
%488 = getelementptr inbounds double*, double** %487, i64 0
%489 = load double*, double** %488
%490 = getelementptr inbounds double, double* %489, i64 19
store double %486, double* %490
br label %491
491: ; preds = %485, %479
%492 = load double**, double*** %6
%493 = getelementptr inbounds double*, double** %492, i64 0
%494 = load double*, double** %493
%495 = icmp ne double* %494, null
br i1 %495, label %496, label %502
496: ; preds = %491
%497 = load double**, double*** %6
%498 = getelementptr inbounds double*, double** %497, i64 0
%499 = load double*, double** %498
%500 = getelementptr inbounds double, double* %499, i64 20
%501 = load double, double* %500
br label %503
502: ; preds = %491
br label %503
503: ; preds = %502, %496
%504 = phi double [ %501, %496 ], [ 0.000000e+00, %502 ]
store double %504, double* %11
%505 = load double**, double*** %7
%506 = getelementptr inbounds double*, double** %505, i64 0
%507 = load double*, double** %506
%508 = icmp ne double* %507, null
br i1 %508, label %509, label %515
509: ; preds = %503
%510 = load double, double* %11
%511 = load double**, double*** %7
%512 = getelementptr inbounds double*, double** %511, i64 0
%513 = load double*, double** %512
%514 = getelementptr inbounds double, double* %513, i64 20
store double %510, double* %514
br label %515
515: ; preds = %509, %503
%516 = load double**, double*** %6
%517 = getelementptr inbounds double*, double** %516, i64 0
%518 = load double*, double** %517
%519 = icmp ne double* %518, null
br i1 %519, label %520, label %526
520: ; preds = %515
%521 = load double**, double*** %6
%522 = getelementptr inbounds double*, double** %521, i64 0
%523 = load double*, double** %522
%524 = getelementptr inbounds double, double* %523, i64 21
%525 = load double, double* %524
br label %527
526: ; preds = %515
br label %527
527: ; preds = %526, %520
%528 = phi double [ %525, %520 ], [ 0.000000e+00, %526 ]
store double %528, double* %11
%529 = load double**, double*** %7
%530 = getelementptr inbounds double*, double** %529, i64 0
%531 = load double*, double** %530
%532 = icmp ne double* %531, null
br i1 %532, label %533, label %539
533: ; preds = %527
%534 = load double, double* %11
%535 = load double**, double*** %7
%536 = getelementptr inbounds double*, double** %535, i64 0
%537 = load double*, double** %536
%538 = getelementptr inbounds double, double* %537, i64 21
store double %534, double* %538
br label %539
539: ; preds = %533, %527
%540 = load double**, double*** %6
%541 = getelementptr inbounds double*, double** %540, i64 0
%542 = load double*, double** %541
%543 = icmp ne double* %542, null
br i1 %543, label %544, label %550
544: ; preds = %539
%545 = load double**, double*** %6
%546 = getelementptr inbounds double*, double** %545, i64 0
%547 = load double*, double** %546
%548 = getelementptr inbounds double, double* %547, i64 22
%549 = load double, double* %548
br label %551
550: ; preds = %539
br label %551
551: ; preds = %550, %544
%552 = phi double [ %549, %544 ], [ 0.000000e+00, %550 ]
store double %552, double* %11
%553 = load double**, double*** %7
%554 = getelementptr inbounds double*, double** %553, i64 0
%555 = load double*, double** %554
%556 = icmp ne double* %555, null
br i1 %556, label %557, label %563
557: ; preds = %551
%558 = load double, double* %11
%559 = load double**, double*** %7
%560 = getelementptr inbounds double*, double** %559, i64 0
%561 = load double*, double** %560
%562 = getelementptr inbounds double, double* %561, i64 22
store double %558, double* %562
br label %563
563: ; preds = %557, %551
%564 = load double**, double*** %6
%565 = getelementptr inbounds double*, double** %564, i64 0
%566 = load double*, double** %565
%567 = icmp ne double* %566, null
br i1 %567, label %568, label %574
568: ; preds = %563
%569 = load double**, double*** %6
%570 = getelementptr inbounds double*, double** %569, i64 0
%571 = load double*, double** %570
%572 = getelementptr inbounds double, double* %571, i64 23
%573 = load double, double* %572
br label %575
574: ; preds = %563
br label %575
575: ; preds = %574, %568
%576 = phi double [ %573, %568 ], [ 0.000000e+00, %574 ]
store double %576, double* %11
%577 = load double**, double*** %7
%578 = getelementptr inbounds double*, double** %577, i64 0
%579 = load double*, double** %578
%580 = icmp ne double* %579, null
br i1 %580, label %581, label %587
581: ; preds = %575
%582 = load double, double* %11
%583 = load double**, double*** %7
%584 = getelementptr inbounds double*, double** %583, i64 0
%585 = load double*, double** %584
%586 = getelementptr inbounds double, double* %585, i64 23
store double %582, double* %586
br label %587
587: ; preds = %581, %575
%588 = load double**, double*** %6
%589 = getelementptr inbounds double*, double** %588, i64 1
%590 = load double*, double** %589
%591 = icmp ne double* %590, null
br i1 %591, label %592, label %598
592: ; preds = %587
%593 = load double**, double*** %6
%594 = getelementptr inbounds double*, double** %593, i64 1
%595 = load double*, double** %594
%596 = getelementptr inbounds double, double* %595, i64 0
%597 = load double, double* %596
br label %599
598: ; preds = %587
br label %599
599: ; preds = %598, %592
%600 = phi double [ %597, %592 ], [ 0.000000e+00, %598 ]
store double %600, double* %11
%601 = load double**, double*** %7
%602 = getelementptr inbounds double*, double** %601, i64 0
%603 = load double*, double** %602
%604 = icmp ne double* %603, null
br i1 %604, label %605, label %611
605: ; preds = %599
%606 = load double, double* %11
%607 = load double**, double*** %7
%608 = getelementptr inbounds double*, double** %607, i64 0
%609 = load double*, double** %608
%610 = getelementptr inbounds double, double* %609, i64 24
store double %606, double* %610
br label %611
611: ; preds = %605, %599
%612 = load double**, double*** %6
%613 = getelementptr inbounds double*, double** %612, i64 1
%614 = load double*, double** %613
%615 = icmp ne double* %614, null
br i1 %615, label %616, label %622
616: ; preds = %611
%617 = load double**, double*** %6
%618 = getelementptr inbounds double*, double** %617, i64 1
%619 = load double*, double** %618
%620 = getelementptr inbounds double, double* %619, i64 1
%621 = load double, double* %620
br label %623
622: ; preds = %611
br label %623
623: ; preds = %622, %616
%624 = phi double [ %621, %616 ], [ 0.000000e+00, %622 ]
store double %624, double* %11
%625 = load double**, double*** %7
%626 = getelementptr inbounds double*, double** %625, i64 0
%627 = load double*, double** %626
%628 = icmp ne double* %627, null
br i1 %628, label %629, label %635
629: ; preds = %623
%630 = load double, double* %11
%631 = load double**, double*** %7
%632 = getelementptr inbounds double*, double** %631, i64 0
%633 = load double*, double** %632
%634 = getelementptr inbounds double, double* %633, i64 25
store double %630, double* %634
br label %635
635: ; preds = %629, %623
%636 = load double**, double*** %6
%637 = getelementptr inbounds double*, double** %636, i64 1
%638 = load double*, double** %637
%639 = icmp ne double* %638, null
br i1 %639, label %640, label %646
640: ; preds = %635
%641 = load double**, double*** %6
%642 = getelementptr inbounds double*, double** %641, i64 1
%643 = load double*, double** %642
%644 = getelementptr inbounds double, double* %643, i64 2
%645 = load double, double* %644
br label %647
646: ; preds = %635
br label %647
647: ; preds = %646, %640
%648 = phi double [ %645, %640 ], [ 0.000000e+00, %646 ]
store double %648, double* %11
%649 = load double**, double*** %7
%650 = getelementptr inbounds double*, double** %649, i64 0
%651 = load double*, double** %650
%652 = icmp ne double* %651, null
br i1 %652, label %653, label %659
653: ; preds = %647
%654 = load double, double* %11
%655 = load double**, double*** %7
%656 = getelementptr inbounds double*, double** %655, i64 0
%657 = load double*, double** %656
%658 = getelementptr inbounds double, double* %657, i64 26
store double %654, double* %658
br label %659
659: ; preds = %653, %647
store double 1.000000e+00, double* %11
%660 = load double**, double*** %7
%661 = getelementptr inbounds double*, double** %660, i64 1
%662 = load double*, double** %661
%663 = icmp ne double* %662, null
br i1 %663, label %664, label %670
664: ; preds = %659
%665 = load double, double* %11
%666 = load double**, double*** %7
%667 = getelementptr inbounds double*, double** %666, i64 1
%668 = load double*, double** %667
%669 = getelementptr inbounds double, double* %668, i64 0
store double %665, double* %669
br label %670
670: ; preds = %664, %659
%671 = load double**, double*** %7
%672 = getelementptr inbounds double*, double** %671, i64 1
%673 = load double*, double** %672
%674 = icmp ne double* %673, null
br i1 %674, label %675, label %681
675: ; preds = %670
%676 = load double, double* %11
%677 = load double**, double*** %7
%678 = getelementptr inbounds double*, double** %677, i64 1
%679 = load double*, double** %678
%680 = getelementptr inbounds double, double* %679, i64 1
store double %676, double* %680
br label %681
681: ; preds = %675, %670
%682 = load double**, double*** %7
%683 = getelementptr inbounds double*, double** %682, i64 1
%684 = load double*, double** %683
%685 = icmp ne double* %684, null
br i1 %685, label %686, label %692
686: ; preds = %681
%687 = load double, double* %11
%688 = load double**, double*** %7
%689 = getelementptr inbounds double*, double** %688, i64 1
%690 = load double*, double** %689
%691 = getelementptr inbounds double, double* %690, i64 2
store double %687, double* %691
br label %692
692: ; preds = %686, %681
%693 = load double**, double*** %7
%694 = getelementptr inbounds double*, double** %693, i64 1
%695 = load double*, double** %694
%696 = icmp ne double* %695, null
br i1 %696, label %697, label %703
697: ; preds = %692
%698 = load double, double* %11
%699 = load double**, double*** %7
%700 = getelementptr inbounds double*, double** %699, i64 1
%701 = load double*, double** %700
%702 = getelementptr inbounds double, double* %701, i64 3
store double %698, double* %702
br label %703
703: ; preds = %697, %692
%704 = load double**, double*** %7
%705 = getelementptr inbounds double*, double** %704, i64 1
%706 = load double*, double** %705
%707 = icmp ne double* %706, null
br i1 %707, label %708, label %714
708: ; preds = %703
%709 = load double, double* %11
%710 = load double**, double*** %7
%711 = getelementptr inbounds double*, double** %710, i64 1
%712 = load double*, double** %711
%713 = getelementptr inbounds double, double* %712, i64 4
store double %709, double* %713
br label %714
714: ; preds = %708, %703
%715 = load double**, double*** %7
%716 = getelementptr inbounds double*, double** %715, i64 1
%717 = load double*, double** %716
%718 = icmp ne double* %717, null
br i1 %718, label %719, label %725
719: ; preds = %714
%720 = load double, double* %11
%721 = load double**, double*** %7
%722 = getelementptr inbounds double*, double** %721, i64 1
%723 = load double*, double** %722
%724 = getelementptr inbounds double, double* %723, i64 5
store double %720, double* %724
br label %725
725: ; preds = %719, %714
%726 = load double**, double*** %7
%727 = getelementptr inbounds double*, double** %726, i64 1
%728 = load double*, double** %727
%729 = icmp ne double* %728, null
br i1 %729, label %730, label %736
730: ; preds = %725
%731 = load double, double* %11
%732 = load double**, double*** %7
%733 = getelementptr inbounds double*, double** %732, i64 1
%734 = load double*, double** %733
%735 = getelementptr inbounds double, double* %734, i64 6
store double %731, double* %735
br label %736
736: ; preds = %730, %725
%737 = load double**, double*** %7
%738 = getelementptr inbounds double*, double** %737, i64 1
%739 = load double*, double** %738
%740 = icmp ne double* %739, null
br i1 %740, label %741, label %747
741: ; preds = %736
%742 = load double, double* %11
%743 = load double**, double*** %7
%744 = getelementptr inbounds double*, double** %743, i64 1
%745 = load double*, double** %744
%746 = getelementptr inbounds double, double* %745, i64 7
store double %742, double* %746
br label %747
747: ; preds = %741, %736
%748 = load double**, double*** %7
%749 = getelementptr inbounds double*, double** %748, i64 1
%750 = load double*, double** %749
%751 = icmp ne double* %750, null
br i1 %751, label %752, label %758
752: ; preds = %747
%753 = load double, double* %11
%754 = load double**, double*** %7
%755 = getelementptr inbounds double*, double** %754, i64 1
%756 = load double*, double** %755
%757 = getelementptr inbounds double, double* %756, i64 8
store double %753, double* %757
br label %758
758: ; preds = %752, %747
%759 = load double**, double*** %7
%760 = getelementptr inbounds double*, double** %759, i64 1
%761 = load double*, double** %760
%762 = icmp ne double* %761, null
br i1 %762, label %763, label %769
763: ; preds = %758
%764 = load double, double* %11
%765 = load double**, double*** %7
%766 = getelementptr inbounds double*, double** %765, i64 1
%767 = load double*, double** %766
%768 = getelementptr inbounds double, double* %767, i64 9
store double %764, double* %768
br label %769
769: ; preds = %763, %758
%770 = load double**, double*** %7
%771 = getelementptr inbounds double*, double** %770, i64 1
%772 = load double*, double** %771
%773 = icmp ne double* %772, null
br i1 %773, label %774, label %780
774: ; preds = %769
%775 = load double, double* %11
%776 = load double**, double*** %7
%777 = getelementptr inbounds double*, double** %776, i64 1
%778 = load double*, double** %777
%779 = getelementptr inbounds double, double* %778, i64 10
store double %775, double* %779
br label %780
780: ; preds = %774, %769
%781 = load double**, double*** %7
%782 = getelementptr inbounds double*, double** %781, i64 1
%783 = load double*, double** %782
%784 = icmp ne double* %783, null
br i1 %784, label %785, label %791
785: ; preds = %780
%786 = load double, double* %11
%787 = load double**, double*** %7
%788 = getelementptr inbounds double*, double** %787, i64 1
%789 = load double*, double** %788
%790 = getelementptr inbounds double, double* %789, i64 11
store double %786, double* %790
br label %791
791: ; preds = %785, %780
%792 = load double**, double*** %7
%793 = getelementptr inbounds double*, double** %792, i64 1
%794 = load double*, double** %793
%795 = icmp ne double* %794, null
br i1 %795, label %796, label %802
796: ; preds = %791
%797 = load double, double* %11
%798 = load double**, double*** %7
%799 = getelementptr inbounds double*, double** %798, i64 1
%800 = load double*, double** %799
%801 = getelementptr inbounds double, double* %800, i64 12
store double %797, double* %801
br label %802
802: ; preds = %796, %791
%803 = load double**, double*** %7
%804 = getelementptr inbounds double*, double** %803, i64 1
%805 = load double*, double** %804
%806 = icmp ne double* %805, null
br i1 %806, label %807, label %813
807: ; preds = %802
%808 = load double, double* %11
%809 = load double**, double*** %7
%810 = getelementptr inbounds double*, double** %809, i64 1
%811 = load double*, double** %810
%812 = getelementptr inbounds double, double* %811, i64 13
store double %808, double* %812
br label %813
813: ; preds = %807, %802
%814 = load double**, double*** %7
%815 = getelementptr inbounds double*, double** %814, i64 1
%816 = load double*, double** %815
%817 = icmp ne double* %816, null
br i1 %817, label %818, label %824
818: ; preds = %813
%819 = load double, double* %11
%820 = load double**, double*** %7
%821 = getelementptr inbounds double*, double** %820, i64 1
%822 = load double*, double** %821
%823 = getelementptr inbounds double, double* %822, i64 14
store double %819, double* %823
br label %824
824: ; preds = %818, %813
%825 = load double**, double*** %7
%826 = getelementptr inbounds double*, double** %825, i64 1
%827 = load double*, double** %826
%828 = icmp ne double* %827, null
br i1 %828, label %829, label %835
829: ; preds = %824
%830 = load double, double* %11
%831 = load double**, double*** %7
%832 = getelementptr inbounds double*, double** %831, i64 1
%833 = load double*, double** %832
%834 = getelementptr inbounds double, double* %833, i64 15
store double %830, double* %834
br label %835
835: ; preds = %829, %824
%836 = load double**, double*** %7
%837 = getelementptr inbounds double*, double** %836, i64 1
%838 = load double*, double** %837
%839 = icmp ne double* %838, null
br i1 %839, label %840, label %846
840: ; preds = %835
%841 = load double, double* %11
%842 = load double**, double*** %7
%843 = getelementptr inbounds double*, double** %842, i64 1
%844 = load double*, double** %843
%845 = getelementptr inbounds double, double* %844, i64 16
store double %841, double* %845
br label %846
846: ; preds = %840, %835
%847 = load double**, double*** %7
%848 = getelementptr inbounds double*, double** %847, i64 1
%849 = load double*, double** %848
%850 = icmp ne double* %849, null
br i1 %850, label %851, label %857
851: ; preds = %846
%852 = load double, double* %11
%853 = load double**, double*** %7
%854 = getelementptr inbounds double*, double** %853, i64 1
%855 = load double*, double** %854
%856 = getelementptr inbounds double, double* %855, i64 17
store double %852, double* %856
br label %857
857: ; preds = %851, %846
%858 = load double**, double*** %7
%859 = getelementptr inbounds double*, double** %858, i64 1
%860 = load double*, double** %859
%861 = icmp ne double* %860, null
br i1 %861, label %862, label %868
862: ; preds = %857
%863 = load double, double* %11
%864 = load double**, double*** %7
%865 = getelementptr inbounds double*, double** %864, i64 1
%866 = load double*, double** %865
%867 = getelementptr inbounds double, double* %866, i64 18
store double %863, double* %867
br label %868
868: ; preds = %862, %857
%869 = load double**, double*** %7
%870 = getelementptr inbounds double*, double** %869, i64 1
%871 = load double*, double** %870
%872 = icmp ne double* %871, null
br i1 %872, label %873, label %879
873: ; preds = %868
%874 = load double, double* %11
%875 = load double**, double*** %7
%876 = getelementptr inbounds double*, double** %875, i64 1
%877 = load double*, double** %876
%878 = getelementptr inbounds double, double* %877, i64 19
store double %874, double* %878
br label %879
879: ; preds = %873, %868
%880 = load double**, double*** %7
%881 = getelementptr inbounds double*, double** %880, i64 1
%882 = load double*, double** %881
%883 = icmp ne double* %882, null
br i1 %883, label %884, label %890
884: ; preds = %879
%885 = load double, double* %11
%886 = load double**, double*** %7
%887 = getelementptr inbounds double*, double** %886, i64 1
%888 = load double*, double** %887
%889 = getelementptr inbounds double, double* %888, i64 20
store double %885, double* %889
br label %890
890: ; preds = %884, %879
%891 = load double**, double*** %7
%892 = getelementptr inbounds double*, double** %891, i64 1
%893 = load double*, double** %892
%894 = icmp ne double* %893, null
br i1 %894, label %895, label %901
895: ; preds = %890
%896 = load double, double* %11
%897 = load double**, double*** %7
%898 = getelementptr inbounds double*, double** %897, i64 1
%899 = load double*, double** %898
%900 = getelementptr inbounds double, double* %899, i64 21
store double %896, double* %900
br label %901
901: ; preds = %895, %890
%902 = load double**, double*** %7
%903 = getelementptr inbounds double*, double** %902, i64 1
%904 = load double*, double** %903
%905 = icmp ne double* %904, null
br i1 %905, label %906, label %912
906: ; preds = %901
%907 = load double, double* %11
%908 = load double**, double*** %7
%909 = getelementptr inbounds double*, double** %908, i64 1
%910 = load double*, double** %909
%911 = getelementptr inbounds double, double* %910, i64 22
store double %907, double* %911
br label %912
912: ; preds = %906, %901
%913 = load double**, double*** %7
%914 = getelementptr inbounds double*, double** %913, i64 1
%915 = load double*, double** %914
%916 = icmp ne double* %915, null
br i1 %916, label %917, label %923
917: ; preds = %912
%918 = load double, double* %11
%919 = load double**, double*** %7
%920 = getelementptr inbounds double*, double** %919, i64 1
%921 = load double*, double** %920
%922 = getelementptr inbounds double, double* %921, i64 23
store double %918, double* %922
br label %923
923: ; preds = %917, %912
%924 = load double**, double*** %7
%925 = getelementptr inbounds double*, double** %924, i64 1
%926 = load double*, double** %925
%927 = icmp ne double* %926, null
br i1 %927, label %928, label %934
928: ; preds = %923
%929 = load double, double* %11
%930 = load double**, double*** %7
%931 = getelementptr inbounds double*, double** %930, i64 1
%932 = load double*, double** %931
%933 = getelementptr inbounds double, double* %932, i64 24
store double %929, double* %933
br label %934
934: ; preds = %928, %923
%935 = load double**, double*** %7
%936 = getelementptr inbounds double*, double** %935, i64 1
%937 = load double*, double** %936
%938 = icmp ne double* %937, null
br i1 %938, label %939, label %945
939: ; preds = %934
%940 = load double, double* %11
%941 = load double**, double*** %7
%942 = getelementptr inbounds double*, double** %941, i64 1
%943 = load double*, double** %942
%944 = getelementptr inbounds double, double* %943, i64 25
store double %940, double* %944
br label %945
945: ; preds = %939, %934
%946 = load double**, double*** %7
%947 = getelementptr inbounds double*, double** %946, i64 1
%948 = load double*, double** %947
%949 = icmp ne double* %948, null
br i1 %949, label %950, label %956
950: ; preds = %945
%951 = load double, double* %11
%952 = load double**, double*** %7
%953 = getelementptr inbounds double*, double** %952, i64 1
%954 = load double*, double** %953
%955 = getelementptr inbounds double, double* %954, i64 26
store double %951, double* %955
br label %956
956: ; preds = %950, %945
ret i32 0
}

LLVM IR (-O2):
define i32 @ls_cost_nm5_f0(double** %0, double** %1, i32* nocapture readnone %2, double* nocapture readnone %3, i32 %4) {
%6 = load double*, double** %0
%7 = icmp eq double* %6, null
br i1 %7, label %10, label %8
8: ; preds = %5
%9 = load double, double* %6
br label %10
10: ; preds = %5, %8
%11 = phi double [ %9, %8 ], [ 0.000000e+00, %5 ]
%12 = load double*, double** %1
%13 = icmp eq double* %12, null
br i1 %13, label %15, label %14
14: ; preds = %10
store double %11, double* %12
br label %15
15: ; preds = %14, %10
br i1 %7, label %19, label %16
16: ; preds = %15
%17 = getelementptr inbounds double, double* %6, i64 1
%18 = load double, double* %17
br label %19
19: ; preds = %15, %16
%20 = phi double [ %18, %16 ], [ 0.000000e+00, %15 ]
br i1 %13, label %23, label %21
21: ; preds = %19
%22 = getelementptr inbounds double, double* %12, i64 1
store double %20, double* %22
br label %23
23: ; preds = %21, %19
br i1 %7, label %27, label %24
24: ; preds = %23
%25 = getelementptr inbounds double, double* %6, i64 2
%26 = load double, double* %25
br label %27
27: ; preds = %23, %24
%28 = phi double [ %26, %24 ], [ 0.000000e+00, %23 ]
br i1 %13, label %31, label %29
29: ; preds = %27
%30 = getelementptr inbounds double, double* %12, i64 2
store double %28, double* %30
br label %31
31: ; preds = %29, %27
br i1 %7, label %35, label %32
32: ; preds = %31
%33 = getelementptr inbounds double, double* %6, i64 3
%34 = load double, double* %33
br label %35
35: ; preds = %31, %32
%36 = phi double [ %34, %32 ], [ 0.000000e+00, %31 ]
br i1 %13, label %39, label %37
37: ; preds = %35
%38 = getelementptr inbounds double, double* %12, i64 3
store double %36, double* %38
br label %39
39: ; preds = %37, %35
br i1 %7, label %43, label %40
40: ; preds = %39
%41 = getelementptr inbounds double, double* %6, i64 4
%42 = load double, double* %41
br label %43
43: ; preds = %39, %40
%44 = phi double [ %42, %40 ], [ 0.000000e+00, %39 ]
br i1 %13, label %47, label %45
45: ; preds = %43
%46 = getelementptr inbounds double, double* %12, i64 4
store double %44, double* %46
br label %47
47: ; preds = %45, %43
br i1 %7, label %51, label %48
48: ; preds = %47
%49 = getelementptr inbounds double, double* %6, i64 5
%50 = load double, double* %49
br label %51
51: ; preds = %47, %48
%52 = phi double [ %50, %48 ], [ 0.000000e+00, %47 ]
br i1 %13, label %55, label %53
53: ; preds = %51
%54 = getelementptr inbounds double, double* %12, i64 5
store double %52, double* %54
br label %55
55: ; preds = %53, %51
br i1 %7, label %59, label %56
56: ; preds = %55
%57 = getelementptr inbounds double, double* %6, i64 6
%58 = load double, double* %57
br label %59
59: ; preds = %55, %56
%60 = phi double [ %58, %56 ], [ 0.000000e+00, %55 ]
br i1 %13, label %63, label %61
61: ; preds = %59
%62 = getelementptr inbounds double, double* %12, i64 6
store double %60, double* %62
br label %63
63: ; preds = %61, %59
br i1 %7, label %67, label %64
64: ; preds = %63
%65 = getelementptr inbounds double, double* %6, i64 7
%66 = load double, double* %65
br label %67
67: ; preds = %63, %64
%68 = phi double [ %66, %64 ], [ 0.000000e+00, %63 ]
br i1 %13, label %71, label %69
69: ; preds = %67
%70 = getelementptr inbounds double, double* %12, i64 7
store double %68, double* %70
br label %71
71: ; preds = %69, %67
br i1 %7, label %75, label %72
72: ; preds = %71
%73 = getelementptr inbounds double, double* %6, i64 8
%74 = load double, double* %73
br label %75
75: ; preds = %71, %72
%76 = phi double [ %74, %72 ], [ 0.000000e+00, %71 ]
br i1 %13, label %79, label %77
77: ; preds = %75
%78 = getelementptr inbounds double, double* %12, i64 8
store double %76, double* %78
br label %79
79: ; preds = %77, %75
br i1 %7, label %83, label %80
80: ; preds = %79
%81 = getelementptr inbounds double, double* %6, i64 9
%82 = load double, double* %81
br label %83
83: ; preds = %79, %80
%84 = phi double [ %82, %80 ], [ 0.000000e+00, %79 ]
br i1 %13, label %87, label %85
85: ; preds = %83
%86 = getelementptr inbounds double, double* %12, i64 9
store double %84, double* %86
br label %87
87: ; preds = %85, %83
br i1 %7, label %91, label %88
88: ; preds = %87
%89 = getelementptr inbounds double, double* %6, i64 10
%90 = load double, double* %89
br label %91
91: ; preds = %87, %88
%92 = phi double [ %90, %88 ], [ 0.000000e+00, %87 ]
br i1 %13, label %95, label %93
93: ; preds = %91
%94 = getelementptr inbounds double, double* %12, i64 10
store double %92, double* %94
br label %95
95: ; preds = %93, %91
br i1 %7, label %99, label %96
96: ; preds = %95
%97 = getelementptr inbounds double, double* %6, i64 11
%98 = load double, double* %97
br label %99
99: ; preds = %95, %96
%100 = phi double [ %98, %96 ], [ 0.000000e+00, %95 ]
br i1 %13, label %103, label %101
101: ; preds = %99
%102 = getelementptr inbounds double, double* %12, i64 11
store double %100, double* %102
br label %103
103: ; preds = %101, %99
br i1 %7, label %107, label %104
104: ; preds = %103
%105 = getelementptr inbounds double, double* %6, i64 12
%106 = load double, double* %105
br label %107
107: ; preds = %103, %104
%108 = phi double [ %106, %104 ], [ 0.000000e+00, %103 ]
br i1 %13, label %111, label %109
109: ; preds = %107
%110 = getelementptr inbounds double, double* %12, i64 12
store double %108, double* %110
br label %111
111: ; preds = %109, %107
br i1 %7, label %115, label %112
112: ; preds = %111
%113 = getelementptr inbounds double, double* %6, i64 13
%114 = load double, double* %113
br label %115
115: ; preds = %111, %112
%116 = phi double [ %114, %112 ], [ 0.000000e+00, %111 ]
br i1 %13, label %119, label %117
117: ; preds = %115
%118 = getelementptr inbounds double, double* %12, i64 13
store double %116, double* %118
br label %119
119: ; preds = %117, %115
br i1 %7, label %123, label %120
120: ; preds = %119
%121 = getelementptr inbounds double, double* %6, i64 14
%122 = load double, double* %121
br label %123
123: ; preds = %119, %120
%124 = phi double [ %122, %120 ], [ 0.000000e+00, %119 ]
br i1 %13, label %127, label %125
125: ; preds = %123
%126 = getelementptr inbounds double, double* %12, i64 14
store double %124, double* %126
br label %127
127: ; preds = %125, %123
br i1 %7, label %131, label %128
128: ; preds = %127
%129 = getelementptr inbounds double, double* %6, i64 15
%130 = load double, double* %129
br label %131
131: ; preds = %127, %128
%132 = phi double [ %130, %128 ], [ 0.000000e+00, %127 ]
br i1 %13, label %135, label %133
133: ; preds = %131
%134 = getelementptr inbounds double, double* %12, i64 15
store double %132, double* %134
br label %135
135: ; preds = %133, %131
br i1 %7, label %139, label %136
136: ; preds = %135
%137 = getelementptr inbounds double, double* %6, i64 16
%138 = load double, double* %137
br label %139
139: ; preds = %135, %136
%140 = phi double [ %138, %136 ], [ 0.000000e+00, %135 ]
br i1 %13, label %143, label %141
141: ; preds = %139
%142 = getelementptr inbounds double, double* %12, i64 16
store double %140, double* %142
br label %143
143: ; preds = %141, %139
br i1 %7, label %147, label %144
144: ; preds = %143
%145 = getelementptr inbounds double, double* %6, i64 17
%146 = load double, double* %145
br label %147
147: ; preds = %143, %144
%148 = phi double [ %146, %144 ], [ 0.000000e+00, %143 ]
br i1 %13, label %151, label %149
149: ; preds = %147
%150 = getelementptr inbounds double, double* %12, i64 17
store double %148, double* %150
br label %151
151: ; preds = %149, %147
br i1 %7, label %155, label %152
152: ; preds = %151
%153 = getelementptr inbounds double, double* %6, i64 18
%154 = load double, double* %153
br label %155
155: ; preds = %151, %152
%156 = phi double [ %154, %152 ], [ 0.000000e+00, %151 ]
br i1 %13, label %159, label %157
157: ; preds = %155
%158 = getelementptr inbounds double, double* %12, i64 18
store double %156, double* %158
br label %159
159: ; preds = %157, %155
br i1 %7, label %163, label %160
160: ; preds = %159
%161 = getelementptr inbounds double, double* %6, i64 19
%162 = load double, double* %161
br label %163
163: ; preds = %159, %160
%164 = phi double [ %162, %160 ], [ 0.000000e+00, %159 ]
br i1 %13, label %167, label %165
165: ; preds = %163
%166 = getelementptr inbounds double, double* %12, i64 19
store double %164, double* %166
br label %167
167: ; preds = %165, %163
br i1 %7, label %171, label %168
168: ; preds = %167
%169 = getelementptr inbounds double, double* %6, i64 20
%170 = load double, double* %169
br label %171
171: ; preds = %167, %168
%172 = phi double [ %170, %168 ], [ 0.000000e+00, %167 ]
br i1 %13, label %175, label %173
173: ; preds = %171
%174 = getelementptr inbounds double, double* %12, i64 20
store double %172, double* %174
br label %175
175: ; preds = %173, %171
br i1 %7, label %179, label %176
176: ; preds = %175
%177 = getelementptr inbounds double, double* %6, i64 21
%178 = load double, double* %177
br label %179
179: ; preds = %175, %176
%180 = phi double [ %178, %176 ], [ 0.000000e+00, %175 ]
br i1 %13, label %183, label %181
181: ; preds = %179
%182 = getelementptr inbounds double, double* %12, i64 21
store double %180, double* %182
br label %183
183: ; preds = %181, %179
br i1 %7, label %187, label %184
184: ; preds = %183
%185 = getelementptr inbounds double, double* %6, i64 22
%186 = load double, double* %185
br label %187
187: ; preds = %183, %184
%188 = phi double [ %186, %184 ], [ 0.000000e+00, %183 ]
br i1 %13, label %191, label %189
189: ; preds = %187
%190 = getelementptr inbounds double, double* %12, i64 22
store double %188, double* %190
br label %191
191: ; preds = %189, %187
br i1 %7, label %195, label %192
192: ; preds = %191
%193 = getelementptr inbounds double, double* %6, i64 23
%194 = load double, double* %193
br label %195
195: ; preds = %191, %192
%196 = phi double [ %194, %192 ], [ 0.000000e+00, %191 ]
br i1 %13, label %199, label %197
197: ; preds = %195
%198 = getelementptr inbounds double, double* %12, i64 23
store double %196, double* %198
br label %199
199: ; preds = %197, %195
%200 = getelementptr inbounds double*, double** %0, i64 1
%201 = load double*, double** %200
%202 = icmp eq double* %201, null
br i1 %202, label %205, label %203
203: ; preds = %199
%204 = load double, double* %201
br label %205
205: ; preds = %199, %203
%206 = phi double [ %204, %203 ], [ 0.000000e+00, %199 ]
br i1 %13, label %209, label %207
207: ; preds = %205
%208 = getelementptr inbounds double, double* %12, i64 24
store double %206, double* %208
br label %209
209: ; preds = %207, %205
br i1 %202, label %213, label %210
210: ; preds = %209
%211 = getelementptr inbounds double, double* %201, i64 1
%212 = load double, double* %211
br label %213
213: ; preds = %209, %210
%214 = phi double [ %212, %210 ], [ 0.000000e+00, %209 ]
br i1 %13, label %217, label %215
215: ; preds = %213
%216 = getelementptr inbounds double, double* %12, i64 25
store double %214, double* %216
br label %217
217: ; preds = %215, %213
br i1 %202, label %221, label %218
218: ; preds = %217
%219 = getelementptr inbounds double, double* %201, i64 2
%220 = load double, double* %219
br label %221
221: ; preds = %217, %218
%222 = phi double [ %220, %218 ], [ 0.000000e+00, %217 ]
br i1 %13, label %225, label %223
223: ; preds = %221
%224 = getelementptr inbounds double, double* %12, i64 26
store double %222, double* %224
br label %225
225: ; preds = %223, %221
%226 = getelementptr inbounds double*, double** %1, i64 1
%227 = load double*, double** %226
%228 = icmp eq double* %227, null
br i1 %228, label %256, label %229
229: ; preds = %225
%230 = bitcast double* %227 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %230
%231 = getelementptr inbounds double, double* %227, i64 2
%232 = bitcast double* %231 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %232
%233 = getelementptr inbounds double, double* %227, i64 4
%234 = bitcast double* %233 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %234
%235 = getelementptr inbounds double, double* %227, i64 6
%236 = bitcast double* %235 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %236
%237 = getelementptr inbounds double, double* %227, i64 8
%238 = bitcast double* %237 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %238
%239 = getelementptr inbounds double, double* %227, i64 10
%240 = bitcast double* %239 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %240
%241 = getelementptr inbounds double, double* %227, i64 12
%242 = bitcast double* %241 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %242
%243 = getelementptr inbounds double, double* %227, i64 14
%244 = bitcast double* %243 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %244
%245 = getelementptr inbounds double, double* %227, i64 16
%246 = bitcast double* %245 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %246
%247 = getelementptr inbounds double, double* %227, i64 18
%248 = bitcast double* %247 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %248
%249 = getelementptr inbounds double, double* %227, i64 20
%250 = bitcast double* %249 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %250
%251 = getelementptr inbounds double, double* %227, i64 22
%252 = bitcast double* %251 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %252
%253 = getelementptr inbounds double, double* %227, i64 24
%254 = bitcast double* %253 to <2 x double>*
store <2 x double> <double 1.000000e+00, double 1.000000e+00>, <2 x double>* %254
%255 = getelementptr inbounds double, double* %227, i64 26
store double 1.000000e+00, double* %255
br label %256
256: ; preds = %225, %229
ret i32 0
}