// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/core/basename.c
// Function: gt_basename_unit_test
int gt_basename_unit_test(GtError *err)
{
  char *bn;
  int had_err = 0;
  gt_error_check(err);

  /* /usr/lib */
  bn = gt_basename(GT_PATH_SEPARATOR_STR"usr"GT_PATH_SEPARATOR_STR"lib");
  gt_ensure(!strcmp(bn, "lib"));
  gt_free(bn);

  if (!had_err) {
    /* /usr/ */
    bn = gt_basename(GT_PATH_SEPARATOR_STR"usr"GT_PATH_SEPARATOR_STR);
    gt_ensure(!strcmp(bn, "usr"));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename("usr");
    gt_ensure(!strcmp(bn, "usr"));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename(GT_PATH_SEPARATOR_STR);
    gt_ensure(!strcmp(bn, GT_PATH_SEPARATOR_STR));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename(GT_PATH_SEPARATOR_STR GT_PATH_SEPARATOR_STR
                     GT_PATH_SEPARATOR_STR);
    gt_ensure(!strcmp(bn, GT_PATH_SEPARATOR_STR));
    gt_free(bn);
  }

  if (!had_err) {
#ifndef _WIN32
    bn = gt_basename("//usr//lib//");
#else
    bn = gt_basename("\\\\usr\\\\lib\\\\");
#endif
    gt_ensure(!strcmp(bn, "lib"));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename(NULL);
    gt_ensure(!strcmp(bn, "."));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename("");
    gt_ensure(!strcmp(bn, "."));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename(".");
    gt_ensure(!strcmp(bn, "."));
    gt_free(bn);
  }

  if (!had_err) {
    bn = gt_basename("..");
    gt_ensure(!strcmp(bn, ".."));
    gt_free(bn);
  }

  return had_err;
}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movl $0x0, 0x4(%rsp)
cmpq $0x0, 0x10(%rsp)
je 0x789c1
movq 0x10(%rsp), %rdi
callq 0xc270
testb $0x1, %al
jne 0x78989
jmp 0x789c1
movq 0x13b648(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0xe56cc(%rip), %rsi     # 0x15e066
leaq 0xe5ca7(%rip), %rdx     # 0x15e648
leaq 0xf41b4(%rip), %rcx     # 0x16cb5c
leaq 0xf4199(%rip), %r8      # 0x16cb48
movl $0x3f, %r9d
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x789c3
leaq 0xf41a8(%rip), %rdi     # 0x16cb72
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78a29
movq 0x8(%rsp), %rdi
leaq 0xf4190(%rip), %rsi     # 0x16cb77
callq 0xb850
cmpl $0x0, %eax
je 0x78a27
movq 0x10(%rsp), %rdi
leaq 0xe777a(%rip), %rsi     # 0x160177
leaq 0xf4177(%rip), %rdx     # 0x16cb7b
leaq 0xf4151(%rip), %rcx     # 0x16cb5c
leaq 0xf4136(%rip), %r8      # 0x16cb48
movl $0x43, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78a29
jmp 0x78a2b
movq 0x8(%rsp), %rdi
leaq 0xf4111(%rip), %rsi     # 0x16cb48
movl $0x44, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78ac6
leaq 0xf413f(%rip), %rdi     # 0x16cb8e
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78aae
movq 0x8(%rsp), %rdi
leaq 0xf4128(%rip), %rsi     # 0x16cb94
callq 0xb850
cmpl $0x0, %eax
je 0x78aac
movq 0x10(%rsp), %rdi
leaq 0xe76f5(%rip), %rsi     # 0x160177
leaq 0xf410f(%rip), %rdx     # 0x16cb98
leaq 0xf40cc(%rip), %rcx     # 0x16cb5c
leaq 0xf40b1(%rip), %r8      # 0x16cb48
movl $0x49, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78aae
jmp 0x78ab0
movq 0x8(%rsp), %rdi
leaq 0xf408c(%rip), %rsi     # 0x16cb48
movl $0x4a, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78b4b
leaq 0xf40c0(%rip), %rdi     # 0x16cb94
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78b33
movq 0x8(%rsp), %rdi
leaq 0xf40a3(%rip), %rsi     # 0x16cb94
callq 0xb850
cmpl $0x0, %eax
je 0x78b31
movq 0x10(%rsp), %rdi
leaq 0xe7670(%rip), %rsi     # 0x160177
leaq 0xf408a(%rip), %rdx     # 0x16cb98
leaq 0xf4047(%rip), %rcx     # 0x16cb5c
leaq 0xf402c(%rip), %r8      # 0x16cb48
movl $0x4f, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78b33
jmp 0x78b35
movq 0x8(%rsp), %rdi
leaq 0xf4007(%rip), %rsi     # 0x16cb48
movl $0x50, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78bd0
leaq 0xf4077(%rip), %rdi     # 0x16cbd0
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78bb8
movq 0x8(%rsp), %rdi
leaq 0xf405a(%rip), %rsi     # 0x16cbd0
callq 0xb850
cmpl $0x0, %eax
je 0x78bb6
movq 0x10(%rsp), %rdi
leaq 0xe75eb(%rip), %rsi     # 0x160177
leaq 0xf4018(%rip), %rdx     # 0x16cbab
leaq 0xf3fc2(%rip), %rcx     # 0x16cb5c
leaq 0xf3fa7(%rip), %r8      # 0x16cb48
movl $0x55, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78bb8
jmp 0x78bba
movq 0x8(%rsp), %rdi
leaq 0xf3f82(%rip), %rsi     # 0x16cb48
movl $0x56, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78c55
leaq 0xf3ff0(%rip), %rdi     # 0x16cbce
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78c3d
movq 0x8(%rsp), %rdi
leaq 0xf3fd5(%rip), %rsi     # 0x16cbd0
callq 0xb850
cmpl $0x0, %eax
je 0x78c3b
movq 0x10(%rsp), %rdi
leaq 0xe7566(%rip), %rsi     # 0x160177
leaq 0xf3f93(%rip), %rdx     # 0x16cbab
leaq 0xf3f3d(%rip), %rcx     # 0x16cb5c
leaq 0xf3f22(%rip), %r8      # 0x16cb48
movl $0x5c, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78c3d
jmp 0x78c3f
movq 0x8(%rsp), %rdi
leaq 0xf3efd(%rip), %rsi     # 0x16cb48
movl $0x5d, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78cda
leaq 0xf3f6f(%rip), %rdi     # 0x16cbd2
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78cc2
movq 0x8(%rsp), %rdi
leaq 0xf3ef7(%rip), %rsi     # 0x16cb77
callq 0xb850
cmpl $0x0, %eax
je 0x78cc0
movq 0x10(%rsp), %rdi
leaq 0xe74e1(%rip), %rsi     # 0x160177
leaq 0xf3ede(%rip), %rdx     # 0x16cb7b
leaq 0xf3eb8(%rip), %rcx     # 0x16cb5c
leaq 0xf3e9d(%rip), %r8      # 0x16cb48
movl $0x66, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78cc2
jmp 0x78cc4
movq 0x8(%rsp), %rdi
leaq 0xf3e78(%rip), %rsi     # 0x16cb48
movl $0x67, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78d5c
xorl %eax, %eax
movl %eax, %edi
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78d44
movq 0x8(%rsp), %rdi
leaq 0xee8e4(%rip), %rsi     # 0x1675e6
callq 0xb850
cmpl $0x0, %eax
je 0x78d42
movq 0x10(%rsp), %rdi
leaq 0xe745f(%rip), %rsi     # 0x160177
leaq 0xf3ec0(%rip), %rdx     # 0x16cbdf
leaq 0xf3e36(%rip), %rcx     # 0x16cb5c
leaq 0xf3e1b(%rip), %r8      # 0x16cb48
movl $0x6c, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78d44
jmp 0x78d46
movq 0x8(%rsp), %rdi
leaq 0xf3df6(%rip), %rsi     # 0x16cb48
movl $0x6d, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78de1
leaq 0xf3179(%rip), %rdi     # 0x16bee3
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78dc9
movq 0x8(%rsp), %rdi
leaq 0xee85f(%rip), %rsi     # 0x1675e6
callq 0xb850
cmpl $0x0, %eax
je 0x78dc7
movq 0x10(%rsp), %rdi
leaq 0xe73da(%rip), %rsi     # 0x160177
leaq 0xf3e3b(%rip), %rdx     # 0x16cbdf
leaq 0xf3db1(%rip), %rcx     # 0x16cb5c
leaq 0xf3d96(%rip), %r8      # 0x16cb48
movl $0x72, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78dc9
jmp 0x78dcb
movq 0x8(%rsp), %rdi
leaq 0xf3d71(%rip), %rsi     # 0x16cb48
movl $0x73, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78e66
leaq 0xee7f7(%rip), %rdi     # 0x1675e6
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78e4e
movq 0x8(%rsp), %rdi
leaq 0xee7da(%rip), %rsi     # 0x1675e6
callq 0xb850
cmpl $0x0, %eax
je 0x78e4c
movq 0x10(%rsp), %rdi
leaq 0xe7355(%rip), %rsi     # 0x160177
leaq 0xf3db6(%rip), %rdx     # 0x16cbdf
leaq 0xf3d2c(%rip), %rcx     # 0x16cb5c
leaq 0xf3d11(%rip), %r8      # 0x16cb48
movl $0x78, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78e4e
jmp 0x78e50
movq 0x8(%rsp), %rdi
leaq 0xf3cec(%rip), %rsi     # 0x16cb48
movl $0x79, %edx
callq 0xdab0
cmpl $0x0, 0x4(%rsp)
jne 0x78eeb
leaq 0xf2db9(%rip), %rdi     # 0x16bc2d
callq 0x787e0
movq %rax, 0x8(%rsp)
cmpl $0x0, 0x4(%rsp)
jne 0x78ed3
movq 0x8(%rsp), %rdi
leaq 0xf2d9c(%rip), %rsi     # 0x16bc2d
callq 0xb850
cmpl $0x0, %eax
je 0x78ed1
movq 0x10(%rsp), %rdi
leaq 0xe72d0(%rip), %rsi     # 0x160177
leaq 0xf3d42(%rip), %rdx     # 0x16cbf0
leaq 0xf3ca7(%rip), %rcx     # 0x16cb5c
leaq 0xf3c8c(%rip), %r8      # 0x16cb48
movl $0x7e, %r9d
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x4(%rsp)  # imm = 0xFFFFFFFF
jmp 0x78ed3
jmp 0x78ed5
movq 0x8(%rsp), %rdi
leaq 0xf3c67(%rip), %rsi     # 0x16cb48
movl $0x7f, %edx
callq 0xdab0
movl 0x4(%rsp), %eax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
nop