// File: /workspace/github_cpp_makefile_star2_O3/eryxcc[P]lois/tests/autotest.cpp
// Function: testSat(int, lois::rbool)
void testSat(int mode, rbool phi) {
  int cnt = 0;
  If(phi) cnt ++;
  If(!phi) cnt += 2;
  if(cnt == mode) cout << "passed: ";
  else cout << "failed: ";
  cout << modenames[cnt] << " " << phi << endl;
  if(cnt != mode) exit(1);
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
movq %rsi, %r14
movl %edi, %ebx
movq (%rsi), %rax
movq 0x8(%rsi), %rdi
testq %rdi, %rdi
je 0x7fd5
movq 0x4a006(%rip), %rcx     # 0x51fc8
cmpb $0x0, (%rcx)
je 0x7fec
incl 0x8(%rdi)
movq %rax, (%rsp)
movq %rdi, 0x8(%rsp)
jmp 0x8002
movq %rax, (%rsp)
movq $0x0, 0x8(%rsp)
movl $0x0, 0x10(%rsp)
jmp 0x8012
lock
incl 0x8(%rdi)
cmpb $0x0, (%rcx)
movq %rax, (%rsp)
movq %rdi, 0x8(%rsp)
je 0x82c6
incl 0x8(%rdi)
movl $0x0, 0x10(%rsp)
callq 0x133fc
leaq 0x38(%rsp), %rdi
movq %rsp, %rsi
callq 0x293a0
leaq 0x78(%rsp), %rdi
movq %rsp, %rsi
callq 0x29427
xorl %r12d, %r12d
leaq 0x38(%rsp), %r15
movl 0x60(%rsp), %eax
cmpl 0xa0(%rsp), %eax
je 0x8055
addl $-0x4, %eax
cmpl $-0x2, %eax
adcl $0x0, %r12d
movq %r15, %rdi
callq 0x2938c
jmp 0x8034
leaq 0x482ac(%rip), %r13     # 0x50308
movq %r13, 0x78(%rsp)
movq 0x98(%rsp), %rdi
testq %rdi, %rdi
je 0x8073
callq 0x133fc
leaq 0x78(%rsp), %rdi
callq 0x1349e
movq %r13, 0x38(%rsp)
movq 0x58(%rsp), %rdi
testq %rdi, %rdi
je 0x8091
callq 0x133fc
leaq 0x38(%rsp), %rdi
callq 0x1349e
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x80aa
callq 0x133fc
movq (%r14), %rax
movq %rax, 0x28(%rsp)
movq 0x8(%r14), %rax
movq %rax, 0x30(%rsp)
testq %rax, %rax
je 0x80d5
movq 0x49f01(%rip), %rcx     # 0x51fc8
cmpb $0x0, (%rcx)
je 0x80d1
incl 0x8(%rax)
jmp 0x80d5
lock
incl 0x8(%rax)
leaq 0x68(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x297dd
movq 0x68(%rsp), %rax
movq 0x70(%rsp), %rdi
movq %rax, (%rsp)
movq %rdi, 0x8(%rsp)
testq %rdi, %rdi
je 0x8115
movq 0x49ec5(%rip), %rax     # 0x51fc8
cmpb $0x0, (%rax)
je 0x811f
incl 0x8(%rdi)
movl $0x0, 0x10(%rsp)
jmp 0x8135
movl $0x0, 0x10(%rsp)
jmp 0x813a
lock
incl 0x8(%rdi)
movq 0x70(%rsp), %rdi
movl $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x813a
callq 0x133fc
movq 0x30(%rsp), %rdi
testq %rdi, %rdi
je 0x8149
callq 0x133fc
leaq 0x38(%rsp), %rdi
movq %rsp, %rsi
callq 0x293a0
leaq 0x78(%rsp), %rdi
movq %rsp, %rsi
callq 0x29427
leaq 0x38(%rsp), %r15
movl 0x60(%rsp), %eax
cmpl 0xa0(%rsp), %eax
je 0x8191
addl $-0x4, %eax
leal 0x2(%r12), %ebp
cmpl $-0x2, %eax
cmovael %r12d, %ebp
movq %r15, %rdi
callq 0x2938c
movl %ebp, %r12d
jmp 0x8168
movq %r13, 0x78(%rsp)
movq 0x98(%rsp), %rdi
testq %rdi, %rdi
je 0x81a8
callq 0x133fc
leaq 0x78(%rsp), %rdi
callq 0x1349e
movq %r13, 0x38(%rsp)
movq 0x58(%rsp), %rdi
testq %rdi, %rdi
je 0x81c6
callq 0x133fc
leaq 0x38(%rsp), %rdi
callq 0x1349e
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x81df
callq 0x133fc
cmpl %ebx, %r12d
leaq 0x36e81(%rip), %rax     # 0x3f06a
leaq 0x36e83(%rip), %rsi     # 0x3f073
cmoveq %rax, %rsi
movq 0x49dd5(%rip), %r15     # 0x51fd0
movl $0x8, %edx
movq %r15, %rdi
callq 0x72c0
movslq %r12d, %rax
shlq $0x5, %rax
leaq 0x4a0aa(%rip), %rcx     # 0x522c0
movq (%rax,%rcx), %rsi
movq 0x8(%rax,%rcx), %rdx
movq %r15, %rdi
callq 0x72c0
movq %rax, %r15
leaq 0x385d8(%rip), %rsi     # 0x40809
movl $0x1, %edx
movq %rax, %rdi
callq 0x72c0
movq (%r14), %rax
movq %rax, 0x18(%rsp)
movq 0x8(%r14), %rax
movq %rax, 0x20(%rsp)
testq %rax, %rax
je 0x8269
movq 0x49d6d(%rip), %rcx     # 0x51fc8
cmpb $0x0, (%rcx)
je 0x8265
incl 0x8(%rax)
jmp 0x8269
lock
incl 0x8(%rax)
leaq 0x18(%rsp), %rsi
movq %r15, %rdi
callq 0x297cc
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x7250
movsbl %al, %esi
movq %r14, %rdi
callq 0x7030
movq %rax, %rdi
callq 0x7190
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x82af
callq 0x133fc
cmpl %ebx, %r12d
jne 0x82cf
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
lock
incl 0x8(%rdi)
jmp 0x8005
movl $0x1, %edi
callq 0x72f0
jmp 0x82e7
jmp 0x82ec
movq %rax, %rbx
movq 0x30(%rsp), %rdi
jmp 0x8319
movq %rax, %rbx
jmp 0x830a
movq %rax, %rbx
jmp 0x8314
movq %rax, %rbx
movq 0x20(%rsp), %rdi
jmp 0x8319
jmp 0x82fd
movq %rax, %rbx
leaq 0x78(%rsp), %rdi
callq 0x10598
leaq 0x38(%rsp), %rdi
callq 0x10598
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x8323
callq 0x133fc
movq %rbx, %rdi
callq 0x7430