// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/gtr.c
// Function: run_tests
static int run_tests(GtR *gtr, GtError *err)
{
  int test_err = 0, had_err = 0;
  char* key;
  void* value;
  gt_error_check(err);
  gt_assert(gtr);

  /* The following type assumptions are made in the GenomeTools library. */
  gt_ensure(sizeof (char) == 1);
  gt_ensure(sizeof (unsigned char) == 1);
  gt_ensure(sizeof (short) == 2);
  gt_ensure(sizeof (unsigned short) == 2);
  gt_ensure(sizeof (int) == 4);
  gt_ensure(sizeof (unsigned int) == 4);
  gt_ensure(sizeof (GtWord) == 4 || sizeof (GtWord) == 8);
  gt_ensure(sizeof (GtUword) == 4 || sizeof (GtUword) == 8);
  gt_ensure(sizeof (GtUword) >= sizeof (size_t));
  gt_ensure(sizeof (GtInt64) == 8);
  gt_ensure(sizeof (GtUint64) == 8);

  /* show seed */
  printf("seed=%u\n", gtr->seed);
  gt_hashmap_unit_test(err);
  if (gtr->unit_tests) {
    if (gt_str_length(gtr->test_only) > 0) {
      key = gt_str_get(gtr->test_only);
      value = gt_hashmap_get(gtr->unit_tests, key);
      if (value) {
        had_err = gt_unit_test_run(key, value, &test_err, err);
        gt_assert(!had_err); /* cannot happen, gt_unit_test_run() is sane */
      }
      else {
        gt_error_set(err, "Test \"%s\" not found", key);
        return EXIT_FAILURE;
      }
    }
    else {
      had_err = gt_hashmap_foreach_in_key_order(gtr->unit_tests,
                                                gt_unit_test_run, &test_err,
                                                err);
      gt_assert(!had_err); /* cannot happen, gt_unit_test_run() is sane */
    }
  }
  if (test_err)
    return EXIT_FAILURE;
  return EXIT_SUCCESS;
}

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movl $0x0, 0x1c(%rsp)
movl $0x0, 0x18(%rsp)
cmpq $0x0, 0x20(%rsp)
je 0x1b90e
movq 0x20(%rsp), %rdi
callq 0xd8a60
testb $0x1, %al
jne 0x1b8d6
jmp 0x1b90e
movq 0x6206c3(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4fa72c(%rip), %rsi    # 0x516013
leaq 0x4fa8d1(%rip), %rdx    # 0x5161bf
leaq 0x4fadb2(%rip), %rcx    # 0x5166a7
leaq 0x4fa849(%rip), %r8     # 0x516145
movl $0x173, %r9d            # imm = 0x173
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1b910
jmp 0x1b912
cmpq $0x0, 0x28(%rsp)
jne 0x1b952
movq 0x62067f(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4fa6e8(%rip), %rsi    # 0x516013
leaq 0x4fa8b5(%rip), %rdx    # 0x5161e7
leaq 0x4fad6e(%rip), %rcx    # 0x5166a7
leaq 0x4fa805(%rip), %r8     # 0x516145
movl $0x174, %r9d            # imm = 0x174
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1b954
jmp 0x1b956
cmpl $0x0, 0x18(%rsp)
jne 0x1b95f
jmp 0x1b95f
jmp 0x1b961
jmp 0x1b963
cmpl $0x0, 0x18(%rsp)
jne 0x1b96c
jmp 0x1b96c
jmp 0x1b96e
jmp 0x1b970
cmpl $0x0, 0x18(%rsp)
jne 0x1b979
jmp 0x1b979
jmp 0x1b97b
jmp 0x1b97d
cmpl $0x0, 0x18(%rsp)
jne 0x1b986
jmp 0x1b986
jmp 0x1b988
jmp 0x1b98a
cmpl $0x0, 0x18(%rsp)
jne 0x1b993
jmp 0x1b993
jmp 0x1b995
jmp 0x1b997
cmpl $0x0, 0x18(%rsp)
jne 0x1b9a0
jmp 0x1b9a0
jmp 0x1b9a2
jmp 0x1b9a4
cmpl $0x0, 0x18(%rsp)
jne 0x1b9ad
jmp 0x1b9ad
jmp 0x1b9af
jmp 0x1b9b1
cmpl $0x0, 0x18(%rsp)
jne 0x1b9ba
jmp 0x1b9ba
jmp 0x1b9bc
jmp 0x1b9be
cmpl $0x0, 0x18(%rsp)
jne 0x1b9c7
jmp 0x1b9c7
jmp 0x1b9c9
jmp 0x1b9cb
cmpl $0x0, 0x18(%rsp)
jne 0x1b9d4
jmp 0x1b9d4
jmp 0x1b9d6
jmp 0x1b9d8
cmpl $0x0, 0x18(%rsp)
jne 0x1b9e1
jmp 0x1b9e1
jmp 0x1b9e3
movq 0x28(%rsp), %rax
movl 0x8(%rax), %esi
leaq 0x4facbf(%rip), %rdi    # 0x5166b1
movb $0x0, %al
callq 0x19070
movq 0x20(%rsp), %rdi
callq 0xe1270
movq 0x28(%rsp), %rax
cmpq $0x0, 0x28(%rax)
je 0x1bb4d
movq 0x28(%rsp), %rax
movq 0x38(%rax), %rdi
callq 0x11dfa0
cmpq $0x0, %rax
jbe 0x1bae5
movq 0x28(%rsp), %rax
movq 0x38(%rax), %rdi
callq 0x11dee0
movq %rax, 0x10(%rsp)
movq 0x28(%rsp), %rax
movq 0x28(%rax), %rdi
movq 0x10(%rsp), %rsi
callq 0xe0f20
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0x1babe
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rsi
movq 0x20(%rsp), %rcx
leaq 0x1c(%rsp), %rdx
callq 0x126590
movl %eax, 0x18(%rsp)
cmpl $0x0, 0x18(%rsp)
je 0x1baba
movq 0x620517(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4fa580(%rip), %rsi    # 0x516013
leaq 0x53116d(%rip), %rdx    # 0x54cc07
leaq 0x4fac06(%rip), %rcx    # 0x5166a7
leaq 0x4fa69d(%rip), %r8     # 0x516145
movl $0x18c, %r9d            # imm = 0x18C
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1babc
jmp 0x1bae3
movq 0x20(%rsp), %rdi
movq 0x10(%rsp), %rdx
leaq 0x4fabeb(%rip), %rsi    # 0x5166ba
movb $0x0, %al
callq 0xd88c0
movl $0x1, 0x34(%rsp)
jmp 0x1bb66
jmp 0x1bb4b
movq 0x28(%rsp), %rax
movq 0x28(%rax), %rdi
movq 0x20(%rsp), %rcx
leaq 0x10aa96(%rip), %rsi    # 0x126590
leaq 0x1c(%rsp), %rdx
callq 0xe1200
movl %eax, 0x18(%rsp)
cmpl $0x0, 0x18(%rsp)
je 0x1bb47
movq 0x62048a(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4fa4f3(%rip), %rsi    # 0x516013
leaq 0x5310e0(%rip), %rdx    # 0x54cc07
leaq 0x4fab79(%rip), %rcx    # 0x5166a7
leaq 0x4fa610(%rip), %r8     # 0x516145
movl $0x197, %r9d            # imm = 0x197
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1bb49
jmp 0x1bb4b
jmp 0x1bb4d
cmpl $0x0, 0x1c(%rsp)
je 0x1bb5e
movl $0x1, 0x34(%rsp)
jmp 0x1bb66
movl $0x0, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nop