// File: /workspace/github_cpp_makefile_star2_O3/biotomas[P]ipasir/sat/picosat961/picosat-961/picosat.c
// Function: inc_max_var
inline static void
inc_max_var (PS * ps)
{
  Lit *lit;
  Rnk *r;
  Var *v;

  assert (ps->max_var < ps->size_vars);

  if (ps->max_var + 1 == ps->size_vars)
    enlarge (ps, ps->size_vars + 2*(ps->size_vars + 3) / 4); /* +25% */

  ps->max_var++;			/* new index of variable */
  assert (ps->max_var);			/* no unsigned overflow */

  assert (ps->max_var < ps->size_vars);

  lit = ps->lits + 2 * ps->max_var;
  lit[0].val = lit[1].val = UNDEF;

  memset (ps->htps + 2 * ps->max_var, 0, 2 * sizeof *ps->htps);
#ifndef NDSC
  memset (ps->dhtps + 2 * ps->max_var, 0, 2 * sizeof *ps->dhtps);
#endif
  memset (ps->impls + 2 * ps->max_var, 0, 2 * sizeof *ps->impls);
  memset (ps->jwh + 2 * ps->max_var, 0, 2 * sizeof *ps->jwh);

  v = ps->vars + ps->max_var;		/* initialize variable components */
  CLR (v);

  r = ps->rnks + ps->max_var;		/* initialize rank */
  CLR (r);

  hpush (ps, r);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movl 0x2c(%rdi), %eax
movl 0x30(%rdi), %ecx
cmpl %ecx, %eax
jae 0x42f9
movq %rdi, %rbx
leal 0x1(%rax), %edx
cmpl %ecx, %edx
jne 0x41bc
leal 0x6(,%rcx,2), %esi
shrl $0x2, %esi
addl %ecx, %esi
movq %rbx, %rdi
callq 0x3edd
movl 0x2c(%rbx), %eax
incl %eax
movl %eax, 0x2c(%rbx)
je 0x4318
cmpl 0x30(%rbx), %eax
jae 0x4337
movq 0x38(%rbx), %rcx
addl %eax, %eax
movw $0x0, (%rcx,%rax)
movq 0x58(%rbx), %rcx
xorps %xmm0, %xmm0
movups %xmm0, (%rcx,%rax,8)
movq 0x60(%rbx), %rax
movl 0x2c(%rbx), %ecx
addl %ecx, %ecx
movups %xmm0, (%rax,%rcx,8)
movq 0x68(%rbx), %rax
movl 0x2c(%rbx), %ecx
addl %ecx, %ecx
shlq $0x4, %rcx
movups %xmm0, 0x10(%rax,%rcx)
movups %xmm0, (%rax,%rcx)
movq 0x50(%rbx), %rax
movl 0x2c(%rbx), %ecx
addl %ecx, %ecx
xorl %edx, %edx
movq %rdx, (%rax,%rcx,4)
movq 0x40(%rbx), %rax
movl 0x2c(%rbx), %ecx
shlq $0x4, %rcx
movups %xmm0, (%rax,%rcx)
movq 0x48(%rbx), %r15
movl 0x2c(%rbx), %r12d
movq %rdx, (%r15,%r12,8)
movq 0x1c8(%rbx), %rax
movq 0x1d0(%rbx), %rcx
cmpq 0x1d8(%rbx), %rcx
jne 0x42a5
cmpq %rcx, %rax
ja 0x4356
subq %rax, %rcx
movabsq $0x7fffffff8, %r14      # imm = 0x7FFFFFFF8
andq %rcx, %r14
shrq $0x2, %rcx
testq %r14, %r14
movl %ecx, %ecx
movl $0x1, %r13d
cmovneq %rcx, %r13
leaq (,%r13,8), %rcx
movq %rbx, %rdi
movq %rax, %rsi
movq %r14, %rdx
callq 0x473a
movq %rax, 0x1c8(%rbx)
addq %rax, %r14
leaq (%rax,%r13,8), %rcx
movq %rcx, 0x1d8(%rbx)
movq %r14, %rcx
leaq (%r15,%r12,8), %rsi
leaq 0x8(%rcx), %rdx
movq %rdx, 0x1d0(%rbx)
subq %rax, %rcx
movq %rcx, %rax
shrq $0x3, %rax
andl $0x3fffffff, %eax       # imm = 0x3FFFFFFF
movl $0xc0000000, %edx       # imm = 0xC0000000
andl 0x4(%rsi), %edx
orl %eax, %edx
movl %edx, 0x4(%rsi)
movq 0x1c8(%rbx), %rax
movabsq $0x1fffffff8, %rdx      # imm = 0x1FFFFFFF8
andq %rcx, %rdx
movq %rsi, (%rax,%rdx)
movq %rbx, %rdi
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
jmp 0xbc36
leaq 0xfdb2(%rip), %rdi      # 0x140b2
leaq 0xef75(%rip), %rsi      # 0x1327c
leaq 0xfdc0(%rip), %rcx      # 0x140ce
movl $0x1167, %edx           # imm = 0x1167
callq 0x10b0
leaq 0x11315(%rip), %rdi     # 0x15634
leaq 0xef56(%rip), %rsi      # 0x1327c
leaq 0xfda1(%rip), %rcx      # 0x140ce
movl $0x116d, %edx           # imm = 0x116D
callq 0x10b0
leaq 0xfd74(%rip), %rdi      # 0x140b2
leaq 0xef37(%rip), %rsi      # 0x1327c
leaq 0xfd82(%rip), %rcx      # 0x140ce
movl $0x116f, %edx           # imm = 0x116F
callq 0x10b0
leaq 0xfc0c(%rip), %rdi      # 0x13f69
leaq 0xef18(%rip), %rsi      # 0x1327c
leaq 0x114bc(%rip), %rcx     # 0x15827
movl $0xad6, %edx            # imm = 0xAD6
callq 0x10b0