// File: /workspace/github_c_makefile_star2_O1/genometools[P]genometools/src/extended/anno_db_gfflike.c
// Function: gt_anno_db_gfflike_unit_test
int gt_anno_db_gfflike_unit_test(GtError *err)
{
  int had_err = 0, status = 0;
  GtFeatureIndex *fi = NULL;
  GtError *testerr = NULL;
  GtAnnoDBSchema *adb = NULL;
  FILE *tmpfp;
#ifdef HAVE_SQLITE
  GtRDB *rdb;
#endif
  GtStr* tmpfilename;
  gt_error_check(err);

  testerr = gt_error_new();

  tmpfilename = gt_str_new();
  tmpfp = gt_xtmpfp(tmpfilename);
  gt_fa_xfclose(tmpfp);

#ifdef HAVE_SQLITE
  rdb = gt_rdb_sqlite_new(gt_str_get(tmpfilename), testerr);
  gt_ensure(rdb != NULL);
  if (!had_err) {
    adb = gt_anno_db_gfflike_new();
    gt_ensure(adb != NULL);
  }

  if (!had_err) {
    fi = gt_anno_db_schema_get_feature_index(adb, rdb, testerr);
    gt_ensure(fi != NULL);
  }
#endif

  if (!had_err) {
    /* run generic feature index tests */
    status = gt_feature_index_unit_test(fi, testerr);
    gt_ensure(status == 0);
  }

  gt_xremove(gt_str_get(tmpfilename));
  gt_str_delete(tmpfilename);
  gt_feature_index_delete(fi);
  gt_anno_db_schema_delete(adb);
#ifdef HAVE_SQLITE
  gt_rdb_delete((GtRDB*) rdb);
#endif
  gt_error_delete(testerr);
  return had_err;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %r15
testq %rdi, %rdi
je 0x12a48a
movq %r15, %rdi
callq 0x101a9a
testb %al, %al
jne 0x12a629
callq 0x1019b4
movq %rax, %rbx
callq 0x1208f8
movq %rax, %r14
leaq 0x253fe5(%rip), %rdx    # 0x37e486
movq %rax, %rdi
xorl %esi, %esi
movl $0x802, %ecx            # imm = 0x802
callq 0x1021c2
movq %rax, %rdi
callq 0x101f02
movq %r14, %rdi
callq 0x120d23
movq %rax, %rdi
movq %rbx, (%rsp)
movq %rbx, %rsi
callq 0x1742c4
movq %rax, %r12
testq %rax, %rax
je 0x12a4e8
callq 0x12a404
testq %rax, %rax
je 0x12a512
movq %rax, %r13
movb $0x1, %al
jmp 0x12a543
leaq 0x23d04b(%rip), %rsi    # 0x36753a
leaq 0x2542b9(%rip), %rdx    # 0x37e7af
leaq 0x254295(%rip), %rcx    # 0x37e792
leaq 0x253f82(%rip), %r8     # 0x37e486
xorl %r13d, %r13d
movq %r15, %rdi
movl $0x807, %r9d            # imm = 0x807
jmp 0x12a53a
leaq 0x23d021(%rip), %rsi    # 0x36753a
leaq 0x25429b(%rip), %rdx    # 0x37e7bb
leaq 0x25426b(%rip), %rcx    # 0x37e792
leaq 0x253f58(%rip), %r8     # 0x37e486
xorl %r13d, %r13d
movq %r15, %rdi
movl $0x80a, %r9d            # imm = 0x80A
xorl %eax, %eax
callq 0x1019cf
xorl %eax, %eax
testb %al, %al
je 0x12a562
movq %r13, %rdi
movq %r12, %rsi
movq (%rsp), %rdx
callq 0x12b644
testq %rax, %rax
je 0x12a566
movq %rax, %rbp
movb $0x1, %al
jmp 0x12a596
xorl %ebp, %ebp
jmp 0x12a594
leaq 0x23cfcd(%rip), %rsi    # 0x36753a
leaq 0x25366c(%rip), %rdx    # 0x37dbe0
leaq 0x254217(%rip), %rcx    # 0x37e792
leaq 0x253f04(%rip), %r8     # 0x37e486
xorl %ebp, %ebp
movq %r15, %rdi
movl $0x80f, %r9d            # imm = 0x80F
xorl %eax, %eax
callq 0x1019cf
xorl %eax, %eax
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
testb %al, %al
je 0x12a5df
movq %rbp, %rdi
movq (%rsp), %rsi
callq 0x147fcd
testl %eax, %eax
je 0x12a5dd
leaq 0x23cf84(%rip), %rsi    # 0x36753a
leaq 0x2a36a9(%rip), %rdx    # 0x3cdc66
leaq 0x2541ce(%rip), %rcx    # 0x37e792
leaq 0x253ebb(%rip), %r8     # 0x37e486
movq %r15, %rdi
movl $0x816, %r9d            # imm = 0x816
xorl %eax, %eax
callq 0x1019cf
jmp 0x12a5df
xorl %ebx, %ebx
movq %r14, %rdi
callq 0x120d23
movq %rax, %rdi
callq 0x12570c
movq %r14, %rdi
callq 0x121b03
movq %rbp, %rdi
callq 0x147952
movq %r13, %rdi
callq 0x12b5bf
movq %r12, %rdi
callq 0x173fb0
movq (%rsp), %rdi
callq 0x101b35
movl %ebx, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
callq 0x3b5b4