void transformNeigh(int n[27], int dir, int USn[27]) {
  int i, j, k;
  int tmp[27];
  switch (dir) {
  case 0:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((j) * (3) + (i) + (k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 3:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((j) * (3) + (i) + (k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 6:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((2 - i) * (3) + (j) + (k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 10:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((j) * (3) + (k) + (2 - i) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 4:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((j) * (3) + (2 - k) + (i) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 11:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((2 - j) * (3) + (i) + (k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 7:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((j) * (3) + (i) + (2 - k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 5:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          tmp[((j) * (3) + (i) + (2 - k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((2 - j) * (3) + (i) + (k) * (3) * (3))] =
              tmp[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 8:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          tmp[((j) * (3) + (k) + (2 - i) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((2 - j) * (3) + (i) + (k) * (3) * (3))] =
              tmp[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 2:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          tmp[((j) * (3) + (2 - k) + (i) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((2 - j) * (3) + (i) + (k) * (3) * (3))] =
              tmp[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 1:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          tmp[((j) * (3) + (i) + (2 - k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((i) * (3) + (2 - j) + (k) * (3) * (3))] =
              tmp[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  case 9:
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          tmp[((j) * (3) + (i) + (2 - k) * (3) * (3))] =
              n[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    for (k = 0; k < 3; k++) {
      for (j = 0; j < 3; j++) {
        for (i = 0; i < 3; i++) {
          USn[((2 - i) * (3) + (j) + (k) * (3) * (3))] =
              tmp[((j) * (3) + (i) + (k) * (3) * (3))];
        }
      }
    }
    break;
  }
}


x86 assembly (clang, -O0):
<transformNeigh>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %rdi,-0x8(%rbp)
mov    %esi,-0xc(%rbp)
mov    %rdx,-0x18(%rbp)
mov    -0xc(%rbp),%eax
mov    %rax,-0x98(%rbp)
sub    $0xb,%rax
ja     1c24 <transformNeigh+0xb24>
mov    -0x98(%rbp),%rax
lea    0xecb(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    11d9 <transformNeigh+0xd9>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    11c6 <transformNeigh+0xc6>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    11b3 <transformNeigh+0xb3>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1167 <transformNeigh+0x67>
jmp    11b8 <transformNeigh+0xb8>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1156 <transformNeigh+0x56>
jmp    11cb <transformNeigh+0xcb>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1145 <transformNeigh+0x45>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1279 <transformNeigh+0x179>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1266 <transformNeigh+0x166>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1253 <transformNeigh+0x153>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1207 <transformNeigh+0x107>
jmp    1258 <transformNeigh+0x158>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    11f6 <transformNeigh+0xf6>
jmp    126b <transformNeigh+0x16b>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    11e5 <transformNeigh+0xe5>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1320 <transformNeigh+0x220>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    130d <transformNeigh+0x20d>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    12fa <transformNeigh+0x1fa>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
mov    $0x2,%ecx
sub    -0x1c(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    -0x20(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    12a7 <transformNeigh+0x1a7>
jmp    12ff <transformNeigh+0x1ff>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1296 <transformNeigh+0x196>
jmp    1312 <transformNeigh+0x212>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1285 <transformNeigh+0x185>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    13c7 <transformNeigh+0x2c7>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    13b4 <transformNeigh+0x2b4>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    13a1 <transformNeigh+0x2a1>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x24(%rbp),%ecx
mov    $0x2,%esi
sub    -0x1c(%rbp),%esi
imul   $0x3,%esi,%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    134e <transformNeigh+0x24e>
jmp    13a6 <transformNeigh+0x2a6>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    133d <transformNeigh+0x23d>
jmp    13b9 <transformNeigh+0x2b9>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    132c <transformNeigh+0x22c>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    146e <transformNeigh+0x36e>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    145b <transformNeigh+0x35b>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1448 <transformNeigh+0x348>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
mov    $0x2,%esi
sub    -0x24(%rbp),%esi
add    %esi,%ecx
imul   $0x3,-0x1c(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    13f5 <transformNeigh+0x2f5>
jmp    144d <transformNeigh+0x34d>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    13e4 <transformNeigh+0x2e4>
jmp    1460 <transformNeigh+0x360>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    13d3 <transformNeigh+0x2d3>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1515 <transformNeigh+0x415>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1502 <transformNeigh+0x402>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    14ef <transformNeigh+0x3ef>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
mov    $0x2,%ecx
sub    -0x20(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    149c <transformNeigh+0x39c>
jmp    14f4 <transformNeigh+0x3f4>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    148b <transformNeigh+0x38b>
jmp    1507 <transformNeigh+0x407>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    147a <transformNeigh+0x37a>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    15bc <transformNeigh+0x4bc>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    15a9 <transformNeigh+0x4a9>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1596 <transformNeigh+0x496>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%edx
mov    -0x18(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
mov    $0x2,%esi
sub    -0x24(%rbp),%esi
imul   $0x3,%esi,%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1543 <transformNeigh+0x443>
jmp    159b <transformNeigh+0x49b>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1532 <transformNeigh+0x432>
jmp    15ae <transformNeigh+0x4ae>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1521 <transformNeigh+0x421>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1662 <transformNeigh+0x562>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    164f <transformNeigh+0x54f>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    163c <transformNeigh+0x53c>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%ecx
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
mov    $0x2,%edx
sub    -0x24(%rbp),%edx
imul   $0x3,%edx,%edx
imul   $0x3,%edx,%edx
add    %edx,%eax
cltq
mov    %ecx,-0x90(%rbp,%rax,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    15ea <transformNeigh+0x4ea>
jmp    1641 <transformNeigh+0x541>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    15d9 <transformNeigh+0x4d9>
jmp    1654 <transformNeigh+0x554>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    15c8 <transformNeigh+0x4c8>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1703 <transformNeigh+0x603>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    16f0 <transformNeigh+0x5f0>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    16dd <transformNeigh+0x5dd>
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
imul   $0x3,-0x24(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    %ecx,%eax
cltq
mov    -0x90(%rbp,%rax,4),%edx
mov    -0x18(%rbp),%rax
mov    $0x2,%ecx
sub    -0x20(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    168b <transformNeigh+0x58b>
jmp    16e2 <transformNeigh+0x5e2>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    167a <transformNeigh+0x57a>
jmp    16f5 <transformNeigh+0x5f5>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1669 <transformNeigh+0x569>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    17a9 <transformNeigh+0x6a9>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1796 <transformNeigh+0x696>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1783 <transformNeigh+0x683>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%ecx
imul   $0x3,-0x20(%rbp),%eax
add    -0x24(%rbp),%eax
mov    $0x2,%edx
sub    -0x1c(%rbp),%edx
imul   $0x3,%edx,%edx
imul   $0x3,%edx,%edx
add    %edx,%eax
cltq
mov    %ecx,-0x90(%rbp,%rax,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1731 <transformNeigh+0x631>
jmp    1788 <transformNeigh+0x688>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1720 <transformNeigh+0x620>
jmp    179b <transformNeigh+0x69b>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    170f <transformNeigh+0x60f>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    184a <transformNeigh+0x74a>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1837 <transformNeigh+0x737>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1824 <transformNeigh+0x724>
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
imul   $0x3,-0x24(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    %ecx,%eax
cltq
mov    -0x90(%rbp,%rax,4),%edx
mov    -0x18(%rbp),%rax
mov    $0x2,%ecx
sub    -0x20(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    17d2 <transformNeigh+0x6d2>
jmp    1829 <transformNeigh+0x729>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    17c1 <transformNeigh+0x6c1>
jmp    183c <transformNeigh+0x73c>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    17b0 <transformNeigh+0x6b0>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    18f0 <transformNeigh+0x7f0>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    18dd <transformNeigh+0x7dd>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    18ca <transformNeigh+0x7ca>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%ecx
imul   $0x3,-0x20(%rbp),%eax
mov    $0x2,%edx
sub    -0x24(%rbp),%edx
add    %edx,%eax
imul   $0x3,-0x1c(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%eax
cltq
mov    %ecx,-0x90(%rbp,%rax,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1878 <transformNeigh+0x778>
jmp    18cf <transformNeigh+0x7cf>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1867 <transformNeigh+0x767>
jmp    18e2 <transformNeigh+0x7e2>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1856 <transformNeigh+0x756>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1991 <transformNeigh+0x891>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    197e <transformNeigh+0x87e>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    196b <transformNeigh+0x86b>
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
imul   $0x3,-0x24(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    %ecx,%eax
cltq
mov    -0x90(%rbp,%rax,4),%edx
mov    -0x18(%rbp),%rax
mov    $0x2,%ecx
sub    -0x20(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1919 <transformNeigh+0x819>
jmp    1970 <transformNeigh+0x870>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1908 <transformNeigh+0x808>
jmp    1983 <transformNeigh+0x883>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    18f7 <transformNeigh+0x7f7>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1a37 <transformNeigh+0x937>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1a24 <transformNeigh+0x924>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1a11 <transformNeigh+0x911>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%ecx
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
mov    $0x2,%edx
sub    -0x24(%rbp),%edx
imul   $0x3,%edx,%edx
imul   $0x3,%edx,%edx
add    %edx,%eax
cltq
mov    %ecx,-0x90(%rbp,%rax,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    19bf <transformNeigh+0x8bf>
jmp    1a16 <transformNeigh+0x916>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    19ae <transformNeigh+0x8ae>
jmp    1a29 <transformNeigh+0x929>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    199d <transformNeigh+0x89d>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1ad8 <transformNeigh+0x9d8>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1ac5 <transformNeigh+0x9c5>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1ab2 <transformNeigh+0x9b2>
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
imul   $0x3,-0x24(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    %ecx,%eax
cltq
mov    -0x90(%rbp,%rax,4),%edx
mov    -0x18(%rbp),%rax
imul   $0x3,-0x1c(%rbp),%ecx
mov    $0x2,%esi
sub    -0x20(%rbp),%esi
add    %esi,%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1a60 <transformNeigh+0x960>
jmp    1ab7 <transformNeigh+0x9b7>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1a4f <transformNeigh+0x94f>
jmp    1aca <transformNeigh+0x9ca>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1a3e <transformNeigh+0x93e>
jmp    1c24 <transformNeigh+0xb24>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1b7e <transformNeigh+0xa7e>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1b6b <transformNeigh+0xa6b>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1b58 <transformNeigh+0xa58>
mov    -0x8(%rbp),%rax
imul   $0x3,-0x20(%rbp),%ecx
add    -0x1c(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%edx
imul   $0x3,%edx,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%ecx
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
mov    $0x2,%edx
sub    -0x24(%rbp),%edx
imul   $0x3,%edx,%edx
imul   $0x3,%edx,%edx
add    %edx,%eax
cltq
mov    %ecx,-0x90(%rbp,%rax,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1b06 <transformNeigh+0xa06>
jmp    1b5d <transformNeigh+0xa5d>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1af5 <transformNeigh+0x9f5>
jmp    1b70 <transformNeigh+0xa70>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1ae4 <transformNeigh+0x9e4>
movl   $0x0,-0x24(%rbp)
cmpl   $0x3,-0x24(%rbp)
jge    1c1f <transformNeigh+0xb1f>
movl   $0x0,-0x20(%rbp)
cmpl   $0x3,-0x20(%rbp)
jge    1c0c <transformNeigh+0xb0c>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x3,-0x1c(%rbp)
jge    1bf9 <transformNeigh+0xaf9>
imul   $0x3,-0x20(%rbp),%eax
add    -0x1c(%rbp),%eax
imul   $0x3,-0x24(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    %ecx,%eax
cltq
mov    -0x90(%rbp,%rax,4),%edx
mov    -0x18(%rbp),%rax
mov    $0x2,%ecx
sub    -0x1c(%rbp),%ecx
imul   $0x3,%ecx,%ecx
add    -0x20(%rbp),%ecx
imul   $0x3,-0x24(%rbp),%esi
imul   $0x3,%esi,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %edx,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1ba7 <transformNeigh+0xaa7>
jmp    1bfe <transformNeigh+0xafe>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1b96 <transformNeigh+0xa96>
jmp    1c11 <transformNeigh+0xb11>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1b85 <transformNeigh+0xa85>
jmp    1c24 <transformNeigh+0xb24>
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<transformNeigh>:
cmp    $0xb,%esi
ja     19fb <transformNeigh+0x8fb>
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
mov    %esi,%eax
lea    0xee4(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
mov    (%rdi),%eax
mov    %eax,(%rdx)
mov    0x4(%rdi),%eax
mov    %eax,0x4(%rdx)
mov    0x8(%rdi),%eax
mov    %eax,0x8(%rdx)
mov    0xc(%rdi),%eax
mov    %eax,0xc(%rdx)
mov    0x10(%rdi),%eax
mov    %eax,0x10(%rdx)
mov    0x14(%rdi),%eax
mov    %eax,0x14(%rdx)
mov    0x18(%rdi),%eax
mov    %eax,0x18(%rdx)
mov    0x1c(%rdi),%eax
mov    %eax,0x1c(%rdx)
mov    0x20(%rdi),%eax
mov    %eax,0x20(%rdx)
mov    0x24(%rdi),%eax
mov    %eax,0x24(%rdx)
mov    0x28(%rdi),%eax
mov    %eax,0x28(%rdx)
mov    0x2c(%rdi),%eax
mov    %eax,0x2c(%rdx)
mov    0x30(%rdi),%eax
mov    %eax,0x30(%rdx)
mov    0x34(%rdi),%eax
mov    %eax,0x34(%rdx)
mov    0x38(%rdi),%eax
mov    %eax,0x38(%rdx)
mov    0x3c(%rdi),%eax
mov    %eax,0x3c(%rdx)
mov    0x40(%rdi),%eax
mov    %eax,0x40(%rdx)
mov    0x44(%rdi),%eax
mov    %eax,0x44(%rdx)
mov    0x48(%rdi),%eax
mov    %eax,0x48(%rdx)
mov    0x4c(%rdi),%eax
mov    %eax,0x4c(%rdx)
mov    0x50(%rdi),%eax
mov    %eax,0x50(%rdx)
mov    0x54(%rdi),%eax
mov    %eax,0x54(%rdx)
mov    0x58(%rdi),%eax
mov    %eax,0x58(%rdx)
mov    0x5c(%rdi),%eax
mov    %eax,0x5c(%rdx)
mov    0x60(%rdi),%eax
mov    %eax,0x60(%rdx)
mov    0x64(%rdi),%eax
mov    %eax,0x64(%rdx)
mov    0x68(%rdi),%eax
mov    $0x1a,%ecx
jmp    19ee <transformNeigh+0x8ee>
mov    (%rdi),%eax
mov    %eax,-0x4(%rsp)
mov    0x4(%rdi),%eax
mov    %eax,-0x8(%rsp)
mov    0x8(%rdi),%eax
mov    %eax,-0xc(%rsp)
mov    0xc(%rdi),%eax
mov    %eax,-0x10(%rsp)
mov    0x10(%rdi),%eax
mov    %eax,-0x14(%rsp)
mov    0x14(%rdi),%eax
mov    %eax,-0x18(%rsp)
mov    0x18(%rdi),%eax
mov    %eax,-0x1c(%rsp)
mov    0x1c(%rdi),%eax
mov    %eax,-0x20(%rsp)
mov    0x20(%rdi),%eax
mov    0x24(%rdi),%r15d
mov    0x28(%rdi),%r12d
mov    0x2c(%rdi),%ecx
mov    %ecx,-0x24(%rsp)
mov    0x30(%rdi),%ecx
mov    %ecx,-0x28(%rsp)
mov    0x34(%rdi),%r13d
mov    0x38(%rdi),%ecx
mov    %ecx,-0x2c(%rsp)
mov    0x3c(%rdi),%ecx
mov    %ecx,-0x30(%rsp)
mov    0x40(%rdi),%ecx
mov    %ecx,-0x34(%rsp)
mov    0x44(%rdi),%r14d
mov    0x48(%rdi),%ecx
mov    0x4c(%rdi),%esi
mov    0x50(%rdi),%r8d
mov    0x54(%rdi),%r9d
mov    0x58(%rdi),%r10d
mov    0x5c(%rdi),%r11d
mov    0x60(%rdi),%ebx
mov    0x64(%rdi),%ebp
mov    0x68(%rdi),%edi
mov    %ecx,0x8(%rdx)
mov    %esi,0x14(%rdx)
mov    %r8d,0x20(%rdx)
mov    %r9d,0x4(%rdx)
mov    %r10d,0x10(%rdx)
mov    %r11d,0x1c(%rdx)
mov    %ebx,(%rdx)
mov    %ebp,0xc(%rdx)
mov    %edi,0x18(%rdx)
mov    %r15d,0x2c(%rdx)
mov    %r12d,0x38(%rdx)
mov    -0x24(%rsp),%ecx
mov    %ecx,0x44(%rdx)
mov    -0x28(%rsp),%ecx
mov    %ecx,0x28(%rdx)
mov    %r13d,0x34(%rdx)
mov    -0x2c(%rsp),%ecx
mov    %ecx,0x40(%rdx)
mov    -0x30(%rsp),%ecx
mov    %ecx,0x24(%rdx)
mov    -0x34(%rsp),%ecx
mov    %ecx,0x30(%rdx)
mov    %r14d,0x3c(%rdx)
mov    -0x4(%rsp),%ecx
mov    %ecx,0x50(%rdx)
mov    -0x8(%rsp),%ecx
mov    %ecx,0x5c(%rdx)
mov    -0xc(%rsp),%ecx
mov    %ecx,0x68(%rdx)
mov    -0x10(%rsp),%ecx
mov    %ecx,0x4c(%rdx)
mov    -0x14(%rsp),%ecx
mov    %ecx,0x58(%rdx)
mov    -0x18(%rsp),%ecx
mov    %ecx,0x64(%rdx)
mov    -0x1c(%rsp),%ecx
mov    %ecx,0x48(%rdx)
mov    -0x20(%rsp),%ecx
mov    %ecx,0x54(%rdx)
mov    $0x18,%ecx
jmp    19ee <transformNeigh+0x8ee>
mov    (%rdi),%eax
mov    %eax,-0x24(%rsp)
mov    0x4(%rdi),%eax
mov    %eax,-0xc(%rsp)
mov    0x8(%rdi),%eax
mov    %eax,-0x4(%rsp)
mov    0xc(%rdi),%eax
mov    %eax,-0x28(%rsp)
mov    0x10(%rdi),%eax
mov    %eax,-0x10(%rsp)
mov    0x14(%rdi),%eax
mov    %eax,-0x8(%rsp)
mov    0x18(%rdi),%eax
mov    %eax,-0x2c(%rsp)
mov    0x1c(%rdi),%eax
mov    %eax,-0x14(%rsp)
mov    0x20(%rdi),%eax
mov    0x24(%rdi),%ebx
mov    0x28(%rdi),%ecx
mov    %ecx,-0x30(%rsp)
mov    0x2c(%rdi),%ecx
mov    %ecx,-0x18(%rsp)
mov    0x30(%rdi),%ebp
mov    0x34(%rdi),%ecx
mov    %ecx,-0x34(%rsp)
mov    0x38(%rdi),%ecx
mov    %ecx,-0x1c(%rsp)
mov    0x3c(%rdi),%r14d
mov    0x40(%rdi),%r13d
mov    0x44(%rdi),%ecx
mov    %ecx,-0x20(%rsp)
mov    0x48(%rdi),%ecx
mov    0x4c(%rdi),%r10d
mov    0x50(%rdi),%r15d
mov    0x54(%rdi),%esi
mov    0x58(%rdi),%r9d
mov    0x5c(%rdi),%r12d
mov    0x60(%rdi),%r8d
mov    0x64(%rdi),%r11d
mov    0x68(%rdi),%edi
mov    %ecx,0x18(%rdx)
mov    %ebx,0x1c(%rdx)
mov    -0x24(%rsp),%ecx
mov    %ecx,0x20(%rdx)
mov    %esi,0xc(%rdx)
mov    %ebp,0x10(%rdx)
mov    -0x28(%rsp),%ecx
mov    %ecx,0x14(%rdx)
mov    %r8d,(%rdx)
mov    %r14d,0x4(%rdx)
mov    -0x2c(%rsp),%ecx
mov    %ecx,0x8(%rdx)
mov    %r10d,0x3c(%rdx)
mov    -0x30(%rsp),%ecx
mov    %ecx,0x40(%rdx)
mov    -0xc(%rsp),%ecx
mov    %ecx,0x44(%rdx)
mov    %r9d,0x30(%rdx)
mov    -0x34(%rsp),%ecx
mov    %ecx,0x34(%rdx)
mov    -0x10(%rsp),%ecx
mov    %ecx,0x38(%rdx)
mov    %r11d,0x24(%rdx)
mov    %r13d,0x28(%rdx)
mov    -0x14(%rsp),%ecx
mov    %ecx,0x2c(%rdx)
mov    %r15d,0x60(%rdx)
mov    -0x18(%rsp),%ecx
mov    %ecx,0x64(%rdx)
mov    -0x4(%rsp),%ecx
mov    %ecx,0x68(%rdx)
mov    %r12d,0x54(%rdx)
mov    -0x1c(%rsp),%ecx
mov    %ecx,0x58(%rdx)
mov    -0x8(%rsp),%ecx
mov    %ecx,0x5c(%rdx)
mov    %edi,0x48(%rdx)
mov    -0x20(%rsp),%ecx
jmp    1783 <transformNeigh+0x683>
mov    (%rdi),%eax
mov    %eax,0x8(%rdx)
mov    0x4(%rdi),%eax
mov    %eax,0x2c(%rdx)
mov    0x8(%rdi),%eax
mov    %eax,0x50(%rdx)
mov    0xc(%rdi),%eax
mov    %eax,0x14(%rdx)
mov    0x10(%rdi),%eax
mov    %eax,0x38(%rdx)
mov    0x14(%rdi),%eax
mov    %eax,0x5c(%rdx)
mov    0x18(%rdi),%eax
mov    %eax,0x20(%rdx)
mov    0x1c(%rdi),%eax
mov    %eax,0x44(%rdx)
mov    0x20(%rdi),%eax
mov    %eax,0x68(%rdx)
mov    0x24(%rdi),%eax
mov    %eax,0x4(%rdx)
mov    0x28(%rdi),%eax
mov    %eax,0x28(%rdx)
mov    0x2c(%rdi),%eax
mov    %eax,0x4c(%rdx)
mov    0x30(%rdi),%eax
mov    %eax,0x10(%rdx)
mov    0x34(%rdi),%eax
mov    %eax,0x34(%rdx)
mov    0x38(%rdi),%eax
mov    %eax,0x58(%rdx)
mov    0x3c(%rdi),%eax
mov    %eax,0x1c(%rdx)
mov    0x40(%rdi),%eax
mov    %eax,0x40(%rdx)
mov    0x44(%rdi),%eax
mov    %eax,0x64(%rdx)
mov    0x48(%rdi),%eax
mov    %eax,(%rdx)
mov    0x4c(%rdi),%eax
mov    %eax,0x24(%rdx)
mov    0x50(%rdi),%eax
mov    %eax,0x48(%rdx)
mov    0x54(%rdi),%eax
mov    %eax,0xc(%rdx)
mov    0x58(%rdi),%eax
mov    %eax,0x30(%rdx)
mov    0x5c(%rdi),%eax
mov    %eax,0x54(%rdx)
mov    0x60(%rdi),%eax
mov    %eax,0x18(%rdx)
mov    0x64(%rdi),%eax
mov    %eax,0x3c(%rdx)
mov    0x68(%rdi),%eax
mov    $0x18,%ecx
jmp    19ee <transformNeigh+0x8ee>
movsd  (%rdi),%xmm1
mov    0x8(%rdi),%r8d
mov    0xc(%rdi),%r9d
movsd  0x10(%rdi),%xmm0
movlhps %xmm1,%xmm0
mov    0x18(%rdi),%r10
mov    0x20(%rdi),%eax
movsd  0x24(%rdi),%xmm1
mov    0x2c(%rdi),%r14d
mov    0x30(%rdi),%r11d
movsd  0x34(%rdi),%xmm2
movlhps %xmm1,%xmm2
movsd  0x3c(%rdi),%xmm1
mov    0x44(%rdi),%esi
mov    0x48(%rdi),%ebp
movsd  0x4c(%rdi),%xmm3
movlhps %xmm1,%xmm3
movsd  0x54(%rdi),%xmm1
mov    0x5c(%rdi),%ecx
mov    0x60(%rdi),%ebx
movsd  0x64(%rdi),%xmm4
movlhps %xmm1,%xmm4
mov    %ebp,0x18(%rdx)
mov    %ecx,0x14(%rdx)
mov    %ebx,(%rdx)
movups %xmm4,0x4(%rdx)
mov    %r14d,0x44(%rdx)
mov    %r11d,0x30(%rdx)
movups %xmm2,0x34(%rdx)
movups %xmm3,0x1c(%rdx)
mov    %esi,0x2c(%rdx)
mov    %r8d,0x68(%rdx)
mov    %r9d,0x54(%rdx)
movups %xmm0,0x58(%rdx)
mov    %r10,0x48(%rdx)
jmp    19e9 <transformNeigh+0x8e9>
mov    (%rdi),%eax
mov    %eax,0x18(%rdx)
mov    0x4(%rdi),%eax
mov    %eax,0xc(%rdx)
mov    0x8(%rdi),%eax
mov    %eax,(%rdx)
mov    0xc(%rdi),%eax
mov    %eax,0x1c(%rdx)
mov    0x10(%rdi),%eax
mov    %eax,0x10(%rdx)
mov    0x14(%rdi),%eax
mov    %eax,0x4(%rdx)
mov    0x18(%rdi),%eax
mov    %eax,0x20(%rdx)
mov    0x1c(%rdi),%eax
mov    %eax,0x14(%rdx)
mov    0x20(%rdi),%eax
mov    %eax,0x8(%rdx)
mov    0x24(%rdi),%eax
mov    %eax,0x3c(%rdx)
mov    0x28(%rdi),%eax
mov    %eax,0x30(%rdx)
mov    0x2c(%rdi),%eax
mov    %eax,0x24(%rdx)
mov    0x30(%rdi),%eax
mov    %eax,0x40(%rdx)
mov    0x34(%rdi),%eax
mov    %eax,0x34(%rdx)
mov    0x38(%rdi),%eax
mov    %eax,0x28(%rdx)
mov    0x3c(%rdi),%eax
mov    %eax,0x44(%rdx)
mov    0x40(%rdi),%eax
mov    %eax,0x38(%rdx)
mov    0x44(%rdi),%eax
mov    %eax,0x2c(%rdx)
mov    0x48(%rdi),%eax
mov    %eax,0x60(%rdx)
mov    0x4c(%rdi),%eax
mov    %eax,0x54(%rdx)
mov    0x50(%rdi),%eax
mov    %eax,0x48(%rdx)
mov    0x54(%rdi),%eax
mov    %eax,0x64(%rdx)
mov    0x58(%rdi),%eax
mov    %eax,0x58(%rdx)
mov    0x5c(%rdi),%eax
mov    %eax,0x4c(%rdx)
mov    0x60(%rdi),%eax
mov    %eax,0x68(%rdx)
mov    0x64(%rdi),%eax
mov    %eax,0x5c(%rdx)
jmp    19e6 <transformNeigh+0x8e6>
mov    (%rdi),%eax
mov    %eax,0x48(%rdx)
mov    0x4(%rdi),%eax
mov    %eax,0x4c(%rdx)
mov    0x8(%rdi),%eax
mov    %eax,0x50(%rdx)
mov    0xc(%rdi),%eax
mov    %eax,0x54(%rdx)
mov    0x10(%rdi),%eax
mov    %eax,0x58(%rdx)
mov    0x14(%rdi),%eax
mov    %eax,0x5c(%rdx)
mov    0x18(%rdi),%eax
mov    %eax,0x60(%rdx)
mov    0x1c(%rdi),%eax
mov    %eax,0x64(%rdx)
mov    0x20(%rdi),%eax
mov    %eax,0x68(%rdx)
mov    0x24(%rdi),%eax
mov    %eax,0x24(%rdx)
mov    0x28(%rdi),%eax
mov    %eax,0x28(%rdx)
mov    0x2c(%rdi),%eax
mov    %eax,0x2c(%rdx)
mov    0x30(%rdi),%eax
mov    %eax,0x30(%rdx)
mov    0x34(%rdi),%eax
mov    %eax,0x34(%rdx)
mov    0x38(%rdi),%eax
mov    %eax,0x38(%rdx)
mov    0x3c(%rdi),%eax
mov    %eax,0x3c(%rdx)
mov    0x40(%rdi),%eax
mov    %eax,0x40(%rdx)
mov    0x44(%rdi),%eax
mov    %eax,0x44(%rdx)
mov    0x48(%rdi),%eax
mov    %eax,(%rdx)
mov    0x4c(%rdi),%eax
mov    %eax,0x4(%rdx)
mov    0x50(%rdi),%eax
mov    %eax,0x8(%rdx)
mov    0x54(%rdi),%eax
mov    %eax,0xc(%rdx)
mov    0x58(%rdi),%eax
mov    %eax,0x10(%rdx)
mov    0x5c(%rdi),%eax
mov    %eax,0x14(%rdx)
mov    0x60(%rdi),%eax
mov    %eax,0x18(%rdx)
mov    0x64(%rdi),%eax
mov    %eax,0x1c(%rdx)
jmp    193f <transformNeigh+0x83f>
mov    (%rdi),%eax
mov    %eax,-0x4(%rsp)
mov    0x4(%rdi),%eax
mov    %eax,-0x1c(%rsp)
mov    0x8(%rdi),%r15d
mov    0xc(%rdi),%eax
mov    %eax,-0x8(%rsp)
mov    0x10(%rdi),%eax
mov    %eax,-0x20(%rsp)
mov    0x14(%rdi),%r12d
mov    0x18(%rdi),%eax
mov    %eax,-0xc(%rsp)
mov    0x1c(%rdi),%eax
mov    %eax,-0x24(%rsp)
mov    0x20(%rdi),%r14d
mov    0x24(%rdi),%eax
mov    %eax,-0x10(%rsp)
mov    0x28(%rdi),%eax
mov    %eax,-0x30(%rsp)
mov    0x2c(%rdi),%r9d
mov    0x30(%rdi),%eax
mov    %eax,-0x14(%rsp)
mov    0x34(%rdi),%r13d
mov    0x38(%rdi),%r10d
mov    0x3c(%rdi),%eax
mov    %eax,-0x18(%rsp)
mov    0x40(%rdi),%eax
mov    %eax,-0x34(%rsp)
mov    0x44(%rdi),%r8d
mov    0x48(%rdi),%eax
mov    %eax,-0x28(%rsp)
mov    0x4c(%rdi),%ebx
mov    0x50(%rdi),%ecx
mov    0x54(%rdi),%eax
mov    %eax,-0x2c(%rsp)
mov    0x58(%rdi),%r11d
mov    0x5c(%rdi),%esi
mov    0x60(%rdi),%eax
mov    0x64(%rdi),%ebp
mov    0x68(%rdi),%edi
mov    %r15d,0x18(%rdx)
mov    %r9d,0x1c(%rdx)
mov    %ecx,0x20(%rdx)
mov    %r12d,0xc(%rdx)
mov    %r10d,0x10(%rdx)
mov    %esi,0x14(%rdx)
mov    %r14d,(%rdx)
mov    %r8d,0x4(%rdx)
mov    %edi,0x8(%rdx)
mov    -0x1c(%rsp),%ecx
mov    %ecx,0x3c(%rdx)
mov    -0x30(%rsp),%ecx
mov    %ecx,0x40(%rdx)
mov    %ebx,0x44(%rdx)
mov    -0x20(%rsp),%ecx
mov    %ecx,0x30(%rdx)
mov    %r13d,0x34(%rdx)
mov    %r11d,0x38(%rdx)
mov    -0x24(%rsp),%ecx
mov    %ecx,0x24(%rdx)
mov    -0x34(%rsp),%ecx
mov    %ecx,0x28(%rdx)
mov    %ebp,0x2c(%rdx)
mov    -0x4(%rsp),%ecx
mov    %ecx,0x60(%rdx)
mov    -0x10(%rsp),%ecx
mov    %ecx,0x64(%rdx)
mov    -0x28(%rsp),%ecx
mov    %ecx,0x68(%rdx)
mov    -0x8(%rsp),%ecx
mov    %ecx,0x54(%rdx)
mov    -0x14(%rsp),%ecx
mov    %ecx,0x58(%rdx)
mov    -0x2c(%rsp),%ecx
mov    %ecx,0x5c(%rdx)
mov    -0xc(%rsp),%ecx
mov    %ecx,0x48(%rdx)
mov    -0x18(%rsp),%ecx
mov    %ecx,0x4c(%rdx)
jmp    19e9 <transformNeigh+0x8e9>
mov    (%rdi),%eax
mov    %eax,-0x4(%rsp)
mov    0x4(%rdi),%eax
mov    %eax,-0x8(%rsp)
mov    0x8(%rdi),%eax
mov    %eax,-0xc(%rsp)
mov    0xc(%rdi),%eax
mov    %eax,-0x10(%rsp)
mov    0x10(%rdi),%eax
mov    %eax,-0x14(%rsp)
mov    0x14(%rdi),%eax
mov    %eax,-0x18(%rsp)
mov    0x18(%rdi),%eax
mov    %eax,-0x1c(%rsp)
mov    0x1c(%rdi),%eax
mov    %eax,-0x20(%rsp)
mov    0x20(%rdi),%eax
mov    0x24(%rdi),%r15d
mov    0x28(%rdi),%r12d
mov    0x2c(%rdi),%ecx
mov    %ecx,-0x24(%rsp)
mov    0x30(%rdi),%ecx
mov    %ecx,-0x28(%rsp)
mov    0x34(%rdi),%r13d
mov    0x38(%rdi),%ecx
mov    %ecx,-0x2c(%rsp)
mov    0x3c(%rdi),%ecx
mov    %ecx,-0x30(%rsp)
mov    0x40(%rdi),%ecx
mov    %ecx,-0x34(%rsp)
mov    0x44(%rdi),%r14d
mov    0x48(%rdi),%ecx
mov    0x4c(%rdi),%esi
mov    0x50(%rdi),%r8d
mov    0x54(%rdi),%r9d
mov    0x58(%rdi),%r10d
mov    0x5c(%rdi),%r11d
mov    0x60(%rdi),%ebx
mov    0x64(%rdi),%ebp
mov    0x68(%rdi),%edi
mov    %ecx,0x18(%rdx)
mov    %esi,0xc(%rdx)
mov    %r8d,(%rdx)
mov    %r9d,0x1c(%rdx)
mov    %r10d,0x10(%rdx)
mov    %r11d,0x4(%rdx)
mov    %ebx,0x20(%rdx)
mov    %ebp,0x14(%rdx)
mov    %edi,0x8(%rdx)
mov    %r15d,0x3c(%rdx)
mov    %r12d,0x30(%rdx)
mov    -0x24(%rsp),%ecx
mov    %ecx,0x24(%rdx)
mov    -0x28(%rsp),%ecx
mov    %ecx,0x40(%rdx)
mov    %r13d,0x34(%rdx)
mov    -0x2c(%rsp),%ecx
mov    %ecx,0x28(%rdx)
mov    -0x30(%rsp),%ecx
mov    %ecx,0x44(%rdx)
mov    -0x34(%rsp),%ecx
mov    %ecx,0x38(%rdx)
mov    %r14d,0x2c(%rdx)
mov    -0x4(%rsp),%ecx
mov    %ecx,0x60(%rdx)
mov    -0x8(%rsp),%ecx
mov    %ecx,0x54(%rdx)
mov    -0xc(%rsp),%ecx
mov    %ecx,0x48(%rdx)
mov    -0x10(%rsp),%ecx
mov    %ecx,0x64(%rdx)
mov    -0x14(%rsp),%ecx
mov    %ecx,0x58(%rdx)
mov    -0x18(%rsp),%ecx
mov    %ecx,0x4c(%rdx)
mov    -0x1c(%rsp),%ecx
mov    %ecx,0x68(%rdx)
mov    -0x20(%rsp),%ecx
mov    %ecx,0x5c(%rdx)
jmp    19e9 <transformNeigh+0x8e9>
mov    (%rdi),%eax
mov    %eax,0x48(%rdx)
mov    0x4(%rdi),%eax
mov    %eax,0x24(%rdx)
mov    0x8(%rdi),%eax
mov    %eax,(%rdx)
mov    0xc(%rdi),%eax
mov    %eax,0x54(%rdx)
mov    0x10(%rdi),%eax
mov    %eax,0x30(%rdx)
mov    0x14(%rdi),%eax
mov    %eax,0xc(%rdx)
mov    0x18(%rdi),%eax
mov    %eax,0x60(%rdx)
mov    0x1c(%rdi),%eax
mov    %eax,0x3c(%rdx)
mov    0x20(%rdi),%eax
mov    %eax,0x18(%rdx)
mov    0x24(%rdi),%eax
mov    %eax,0x4c(%rdx)
mov    0x28(%rdi),%eax
mov    %eax,0x28(%rdx)
mov    0x2c(%rdi),%eax
mov    %eax,0x4(%rdx)
mov    0x30(%rdi),%eax
mov    %eax,0x58(%rdx)
mov    0x34(%rdi),%eax
mov    %eax,0x34(%rdx)
mov    0x38(%rdi),%eax
mov    %eax,0x10(%rdx)
mov    0x3c(%rdi),%eax
mov    %eax,0x64(%rdx)
mov    0x40(%rdi),%eax
mov    %eax,0x40(%rdx)
mov    0x44(%rdi),%eax
mov    %eax,0x1c(%rdx)
mov    0x48(%rdi),%eax
mov    %eax,0x50(%rdx)
mov    0x4c(%rdi),%eax
mov    %eax,0x2c(%rdx)
mov    0x50(%rdi),%eax
mov    %eax,0x8(%rdx)
mov    0x54(%rdi),%eax
mov    %eax,0x5c(%rdx)
mov    0x58(%rdi),%eax
mov    %eax,0x38(%rdx)
mov    0x5c(%rdi),%eax
mov    %eax,0x14(%rdx)
mov    0x60(%rdi),%eax
mov    %eax,0x68(%rdx)
mov    0x64(%rdi),%eax
mov    %eax,0x44(%rdx)
mov    0x68(%rdi),%eax
mov    $0x8,%ecx
jmp    19ee <transformNeigh+0x8ee>
mov    (%rdi),%eax
mov    %eax,0x18(%rdx)
mov    0x4(%rdi),%eax
mov    %eax,0x1c(%rdx)
mov    0x8(%rdi),%eax
mov    %eax,0x20(%rdx)
mov    0xc(%rdi),%eax
mov    %eax,0xc(%rdx)
mov    0x10(%rdi),%eax
mov    %eax,0x10(%rdx)
mov    0x14(%rdi),%eax
mov    %eax,0x14(%rdx)
mov    0x18(%rdi),%eax
mov    %eax,(%rdx)
mov    0x1c(%rdi),%eax
mov    %eax,0x4(%rdx)
mov    0x20(%rdi),%eax
mov    %eax,0x8(%rdx)
mov    0x24(%rdi),%eax
mov    %eax,0x3c(%rdx)
mov    0x28(%rdi),%eax
mov    %eax,0x40(%rdx)
mov    0x2c(%rdi),%eax
mov    %eax,0x44(%rdx)
mov    0x30(%rdi),%eax
mov    %eax,0x30(%rdx)
mov    0x34(%rdi),%eax
mov    %eax,0x34(%rdx)
mov    0x38(%rdi),%eax
mov    %eax,0x38(%rdx)
mov    0x3c(%rdi),%eax
mov    %eax,0x24(%rdx)
mov    0x40(%rdi),%eax
mov    %eax,0x28(%rdx)
mov    0x44(%rdi),%eax
mov    %eax,0x2c(%rdx)
mov    0x48(%rdi),%eax
mov    %eax,0x60(%rdx)
mov    0x4c(%rdi),%eax
mov    %eax,0x64(%rdx)
mov    0x50(%rdi),%eax
mov    %eax,0x68(%rdx)
mov    0x54(%rdi),%eax
mov    %eax,0x54(%rdx)
mov    0x58(%rdi),%eax
mov    %eax,0x58(%rdx)
mov    0x5c(%rdi),%eax
mov    %eax,0x5c(%rdx)
mov    0x60(%rdi),%eax
mov    %eax,0x48(%rdx)
mov    0x64(%rdi),%eax
mov    %eax,0x4c(%rdx)
mov    0x68(%rdi),%eax
mov    $0x14,%ecx
mov    %eax,(%rdx,%rcx,4)
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

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

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