// File: /workspace/github_c_makefile_star2_O0/reactive-systems[P]aiger-ltl-model-checker/aiger.c
// Function: aiger_read_ascii
static const char *
aiger_read_ascii (aiger * public, aiger_reader * reader)
{
  IMPORT_private_FROM (public);
  unsigned i, lhs, rhs0, rhs1;
  const char *error;

  for (i = 0; i < reader->ands; i++)
    {
      error = aiger_read_literal (private, reader, &lhs, ' ', 0);
      if (error)
	return error;

      if (!lhs || aiger_sign (lhs) || aiger_lit2var (lhs) > public->maxvar)
	return aiger_error_uu (private,
			       "line %u: "
			       "literal %u is not a valid LHS of AND",
			       reader->lineno_at_last_token_start, lhs);

      error = aiger_already_defined (public, reader, lhs);
      if (error)
	return error;

      error = aiger_read_literal (private, reader, &rhs0, ' ', 0);
      if (error)
	return error;

      if (aiger_lit2var (rhs0) > public->maxvar)
	return aiger_error_uu (private,
			       "line %u: literal %u is not a valid literal",
			       reader->lineno_at_last_token_start, rhs0);

      error = aiger_read_literal (private, reader, &rhs1, '\n', 0);
      if (error)
	return error;

      if (aiger_lit2var (rhs1) > public->maxvar)
	return aiger_error_uu (private,
			       "line %u: literal %u is not a valid literal",
			       reader->lineno_at_last_token_start, rhs1);

      aiger_add_and (public, lhs, rhs0, rhs1);
    }

  return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x20(%rbp)
movl $0x0, -0x24(%rbp)
movl -0x24(%rbp), %eax
movq -0x18(%rbp), %rcx
cmpl 0x3c(%rcx), %eax
jae 0x91bb
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rsi
leaq -0x28(%rbp), %rdx
movl $0x20, %ecx
xorl %eax, %eax
movl %eax, %r8d
callq 0xaf30
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
je 0x9072
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x91c3
cmpl $0x0, -0x28(%rbp)
je 0x9090
movl -0x28(%rbp), %eax
andl $0x1, %eax
cmpl $0x0, %eax
jne 0x9090
movl -0x28(%rbp), %eax
shrl %eax
movq -0x10(%rbp), %rcx
cmpl (%rcx), %eax
jbe 0x90b3
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x1c(%rax), %edx
movl -0x28(%rbp), %ecx
leaq 0x42f8(%rip), %rsi      # 0xd39d
callq 0x9fe0
movq %rax, -0x8(%rbp)
jmp 0x91c3
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movl -0x28(%rbp), %edx
callq 0xb0c0
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
je 0x90db
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x91c3
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rsi
leaq -0x2c(%rbp), %rdx
movl $0x20, %ecx
xorl %eax, %eax
movl %eax, %r8d
callq 0xaf30
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
je 0x910e
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x91c3
movl -0x2c(%rbp), %eax
shrl %eax
movq -0x10(%rbp), %rcx
cmpl (%rcx), %eax
jbe 0x913e
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x1c(%rax), %edx
movl -0x2c(%rbp), %ecx
leaq 0x3f32(%rip), %rsi      # 0xd062
callq 0x9fe0
movq %rax, -0x8(%rbp)
jmp 0x91c3
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rsi
leaq -0x30(%rbp), %rdx
movl $0xa, %ecx
xorl %eax, %eax
movl %eax, %r8d
callq 0xaf30
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
je 0x916e
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x91c3
movl -0x30(%rbp), %eax
shrl %eax
movq -0x10(%rbp), %rcx
cmpl (%rcx), %eax
jbe 0x919b
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x1c(%rax), %edx
movl -0x30(%rbp), %ecx
leaq 0x3ed2(%rip), %rsi      # 0xd062
callq 0x9fe0
movq %rax, -0x8(%rbp)
jmp 0x91c3
movq -0x10(%rbp), %rdi
movl -0x28(%rbp), %esi
movl -0x2c(%rbp), %edx
movl -0x30(%rbp), %ecx
callq 0x3a70
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x902f
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)