// File: /workspace/github_c_makefile_star2_O2/genometools[P]genometools/src/match/esa-splititv-simple.c
// Function: gt_lcpintervalfindcharchildintv_withcheck
bool gt_lcpintervalfindcharchildintv_withcheck(const GtEncseq *encseq,
                                     GtReadmode readmode,
                                     GtUword totallength,
                                     const ESASuffixptr *suftab,
                                     Simplelcpinterval *itv,
                                     GtUchar cc,
                                     GtUword offset,
                                     GtUword left,
                                     GtUword right)
{
  Simplelcpinterval itv2;
  bool occurs = gt_lcpintervalfindcharchildintv(encseq,
                                          readmode,
                                      totallength,
                                      suftab,
                                      itv,
                                      cc,
                                      offset,left,right);
  bool occurs2 = gt_lcpintervalfindcharchildintv_simple(encseq,
                                                  readmode,
                                              totallength,
                                              suftab,
                                              &itv2,
                                              cc,
                                              offset,left,right);
  if ((occurs && !occurs2) || (!occurs && occurs2))
  {
    fprintf(stderr,"occurs = %s, occurs2 = %s\n",occurs ? "true" : "false",
                                                 occurs2 ? "true" : "false");
    exit(EXIT_FAILURE);
  }
  if (occurs && itv->left != itv2.left)
  {
    fprintf(stderr,"left = " GT_WU " != " GT_WU " = left2\n",
            itv->left,itv2.left);
    exit(EXIT_FAILURE);
  }
  if (occurs && itv->right != itv2.right)
  {
    fprintf(stderr,"right = " GT_WU " != " GT_WU " = right2\n",
            itv->right,itv2.right);
    exit(EXIT_FAILURE);
  }
  return occurs;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl %r9d, %r14d
movq %rcx, %r15
movq %rdx, %r12
movl %esi, %r13d
movq %rdi, %rbx
subq $0x8, %rsp
movq %r8, 0x8(%rsp)
pushq 0x68(%rsp)
pushq 0x68(%rsp)
pushq 0x68(%rsp)
callq 0x1c6d9c
addq $0x20, %rsp
movl %eax, %ebp
subq $0x8, %rsp
leaq 0x10(%rsp), %r8
movq %rbx, %rdi
movl %r13d, %esi
movq %r12, %rdx
movq %r15, %rcx
movl %r14d, %r9d
pushq 0x68(%rsp)
pushq 0x68(%rsp)
pushq 0x68(%rsp)
callq 0x1c6b04
addq $0x20, %rsp
cmpb %al, %bpl
jne 0x1c6d38
testb %bpl, %bpl
je 0x1c6d27
movq (%rsp), %rax
movq (%rax), %rdx
movq 0x8(%rsp), %rcx
cmpq %rcx, %rdx
jne 0x1c6d69
movq 0x8(%rax), %rdx
movq 0x10(%rsp), %rcx
cmpq %rcx, %rdx
jne 0x1c6d7c
movl %ebp, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x244271(%rip), %rsi    # 0x40afb0
leaq 0x16324b(%rip), %r8     # 0x329f91
leaq 0x145b9b(%rip), %rcx    # 0x30c8e8
testb %bpl, %bpl
movq %rcx, %rdx
cmovneq %r8, %rdx
movq (%rsi), %rdi
testb %al, %al
cmovneq %r8, %rcx
leaq 0x168195(%rip), %rsi    # 0x32eefc
jmp 0x1c6d8d
movq 0x244240(%rip), %rax    # 0x40afb0
movq (%rax), %rdi
leaq 0x16819d(%rip), %rsi    # 0x32ef17
jmp 0x1c6d8d
movq 0x24422d(%rip), %rax    # 0x40afb0
movq (%rax), %rdi
leaq 0x1681a5(%rip), %rsi    # 0x32ef32
xorl %eax, %eax
callq 0x32960
pushq $0x1
popq %rdi
callq 0x2ed60