#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ hash(int);
void test() {
  int i, j, k;
  {
    hash(4);
    hash(1);
    hash(0);
    hash(0);
  };
  {
    hash(7);
    hash(1);
    hash(0);
    hash(0);
  };
  {
    hash(8);
    hash(1);
    hash(0);
    hash(3);
  };
  {
    hash(2);
    hash(2);
    hash(-7);
    hash(0);
  };
  {
    hash(3);
    hash(2);
    hash(-7);
    hash(1);
  };
  {
    hash(6);
    hash(2);
    hash(-7);
    hash(2);
  };
  {
    hash(8);
    hash(2);
    hash(0);
    hash(3);
  };
  {
    hash(5);
    hash(2);
    hash(1);
    hash(3);
  };
  {
    hash(2);
    hash(3);
    hash(-7);
    hash(0);
  };
  {
    hash(3);
    hash(3);
    hash(-7);
    hash(1);
  };
  {
    hash(3);
    hash(3);
    hash(-6);
    hash(1);
  };
  {
    hash(6);
    hash(3);
    hash(-6);
    hash(2);
  };
  {
    hash(8);
    hash(3);
    hash(0);
    hash(3);
  };
  for (j = 1; j <= 2; j++) {
    {
      hash(5);
      hash(3);
      hash(j);
      hash(3);
    };
  }
  for (i = 4; i <= 8; i++) {
    {
      hash(2);
      hash(i);
      hash(-7);
      hash(0);
    };
    {
      hash(3);
      hash(i);
      hash(-7);
      hash(1);
    };
    for (j = -6; j <= i - 10; j++) {
      {
        hash(3);
        hash(i);
        hash(j);
        hash(1);
      };
    }
    j = i - 9;
    {
      hash(3);
      hash(i);
      hash(i - 9);
      hash(1);
    };
    {
      hash(6);
      hash(i);
      hash(i - 9);
      hash(2);
    };
    {
      hash(8);
      hash(i);
      hash(0);
      hash(3);
    };
    for (j = 1; j <= i - 1; j++) {
      {
        hash(5);
        hash(i);
        hash(j);
        hash(3);
      };
    }
  }
  {
    hash(2);
    hash(9);
    hash(-7);
    hash(0);
  };
  {
    hash(3);
    hash(9);
    hash(-7);
    hash(1);
  };
  for (j = -6; j <= -1; j++) {
    {
      hash(3);
      hash(9);
      hash(j);
      hash(1);
    };
  }
  {
    hash(3);
    hash(9);
    hash(0);
    hash(1);
  };
  {
    hash(6);
    hash(9);
    hash(0);
    hash(2);
  };
  {
    hash(8);
    hash(9);
    hash(0);
    hash(3);
  };
  for (j = 1; j <= 8; j++) {
    {
      hash(5);
      hash(9);
      hash(j);
      hash(3);
    };
  }
  {
    hash(2);
    hash(10);
    hash(-7);
    hash(0);
  };
  {
    hash(3);
    hash(10);
    hash(-7);
    hash(1);
  };
  for (j = -6; j <= 0; j++) {
    {
      hash(3);
      hash(10);
      hash(j);
      hash(1);
    };
  }
  {
    hash(3);
    hash(10);
    hash(1);
    hash(1);
  };
  {
    hash(6);
    hash(10);
    hash(1);
    hash(2);
  };
  {
    hash(5);
    hash(10);
    hash(1);
    hash(3);
  };
  {
    hash(1);
    hash(10);
    hash(1);
    hash(4);
  };
  for (j = 2; j <= 9; j++) {
    {
      hash(5);
      hash(10);
      hash(j);
      hash(3);
    };
    {
      hash(1);
      hash(10);
      hash(j);
      hash(4);
    };
  }
  {
    hash(1);
    hash(10);
    hash(10);
    hash(4);
  };
}


x86 assembly (clang, -O0):
<test>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x7,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
movl   $0x1,-0x8(%rbp)
cmpl   $0x2,-0x8(%rbp)
jg     134a <test+0x23a>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    130c <test+0x1fc>
movl   $0x4,-0x4(%rbp)
cmpl   $0x8,-0x4(%rbp)
jg     14c5 <test+0x3b5>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
movl   $0xfffffffa,-0x8(%rbp)
mov    -0x8(%rbp),%eax
mov    -0x4(%rbp),%ecx
sub    $0xa,%ecx
cmp    %ecx,%eax
jg     13ee <test+0x2de>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    13ab <test+0x29b>
mov    -0x4(%rbp),%eax
sub    $0x9,%eax
mov    %eax,-0x8(%rbp)
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
sub    $0x9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
sub    $0x9,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
movl   $0x1,-0x8(%rbp)
mov    -0x8(%rbp),%eax
mov    -0x4(%rbp),%ecx
sub    $0x1,%ecx
cmp    %ecx,%eax
jg     14b2 <test+0x3a2>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    -0x4(%rbp),%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    146f <test+0x35f>
jmp    14b7 <test+0x3a7>
mov    -0x4(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x4(%rbp)
jmp    1351 <test+0x241>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
movl   $0xfffffffa,-0x8(%rbp)
cmpl   $0xffffffff,-0x8(%rbp)
jg     1557 <test+0x447>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1519 <test+0x409>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
movl   $0x1,-0x8(%rbp)
cmpl   $0x8,-0x8(%rbp)
jg     160b <test+0x4fb>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    15cd <test+0x4bd>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
movl   $0xfffffffa,-0x8(%rbp)
cmpl   $0x0,-0x8(%rbp)
jg     169d <test+0x58d>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    165f <test+0x54f>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
movl   $0x2,-0x8(%rbp)
cmpl   $0x9,-0x8(%rbp)
jg     17a8 <test+0x698>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1744 <test+0x634>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<test>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
push   %rax
mov    $0x4,%r14d
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x7,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xfffffffb,%r15d
mov    $0xffffffff,%r13d
mov    $0xfffffffd,%ebp
nop
mov    $0x2,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%ebx
xchg   %ax,%ax
mov    $0x3,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
mov    %ebx,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
lea    (%rbx,%r13,1),%eax
add    $0x1,%eax
mov    %ebx,%ecx
add    $0x1,%ecx
mov    %ecx,%ebx
cmp    $0xfffffffa,%eax
jne    13c0 <test+0x2b0>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
lea    -0x9(%r14),%r12d
mov    %r12d,%edi
call   1030 <hash@plt>
mov    $0x1,%ebx
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
mov    %r12d,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
nopw   0x0(%rax,%rax,1)
mov    $0x5,%edi
call   1030 <hash@plt>
mov    %r14d,%edi
call   1030 <hash@plt>
mov    %ebx,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
lea    (%rbx,%rbp,1),%eax
add    $0x1,%eax
mov    %ebx,%ecx
add    $0x1,%ecx
mov    %ecx,%ebx
cmp    $0x1,%eax
jne    1470 <test+0x360>
add    $0x1,%r14d
add    $0xffffffff,%r13d
add    $0xffffffff,%ebp
inc    %r15d
jne    1370 <test+0x260>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffffb,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffffc,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffffd,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xfffffffe,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0xffffffff,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x7,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffff9,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffffa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffffb,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffffc,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffffd,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xfffffffe,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xffffffff,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
xor    %edi,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x2,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x6,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x7,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x7,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x8,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x5,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x3,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x9,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
call   1030 <hash@plt>
mov    $0x1,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0xa,%edi
call   1030 <hash@plt>
mov    $0x4,%edi
add    $0x8,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
jmp    1030 <hash@plt>

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

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