// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/extended/multieoplist.c
// Function: gt_multieoplist_show
void gt_multieoplist_show(const GtMultieoplist *multieops, FILE *fp)
{
  GtUword stepssum,
          num = multieops->meoplist.nextfreeEop;
  Eop *space, *last, *next;

  if (num == 0)
  {
    gt_xfputs("[]\n", fp);
    return;
  }
  gt_assert(multieops != NULL);
  space = multieops->meoplist.spaceEop;

  gt_xfputc('[', fp);
  last = space + num - 1;
  next = space + num - 2;
  stepssum = (GtUword) (*last & GT_MEOPS_STEPS_MASK);
  while (next >= space) {
    if (*last >> GT_MEOPS_STEPS_BITS ==
        *next >> GT_MEOPS_STEPS_BITS) {
      stepssum += *next & GT_MEOPS_STEPS_MASK;
      last--;
      next--;
    }
    else {
      switch (*last >> GT_MEOPS_STEPS_BITS) {
        case GT_MEOPS_MATCH:
          gt_xfputc('M', fp);
          break;
        case GT_MEOPS_MIS:
          gt_xfputc('R', fp);
          break;
        case GT_MEOPS_INS:
          gt_xfputc('I', fp);
          break;
        case GT_MEOPS_DEL:
          gt_xfputc('D', fp);
          break;
      }
      fprintf(fp, " %u, ", (unsigned int) stepssum);
      last--;
      stepssum = (GtUword) (*last & GT_MEOPS_STEPS_MASK);
      next = last - 1;
    }
    gt_assert(next + 1 == last);
  }
  gt_assert(num == 0 || last == space);
  switch (*last >> GT_MEOPS_STEPS_BITS) {
    case GT_MEOPS_MATCH:
      gt_xfputc('M', fp);
      break;
    case GT_MEOPS_MIS:
      gt_xfputc('R', fp);
      break;
    case GT_MEOPS_INS:
      gt_xfputc('I', fp);
      break;
    case GT_MEOPS_DEL:
      gt_xfputc('D', fp);
      break;
  }
  fprintf(fp, " %u", (unsigned int) stepssum);
  gt_xfputs("]\n", fp);
}

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq %rsi, 0x38(%rsp)
movq 0x40(%rsp), %rax
movq 0x18(%rax), %rax
movq %rax, 0x28(%rsp)
cmpq $0x0, 0x28(%rsp)
jne 0x1b055a
movq 0x38(%rsp), %rsi
leaq 0x3af004(%rip), %rdi    # 0x55f554
callq 0x126bb0
jmp 0x1b0843
jmp 0x1b055c
cmpq $0x0, 0x40(%rsp)
jne 0x1b059c
movq 0x48ba35(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x365a9e(%rip), %rsi    # 0x516013
leaq 0x3af03e(%rip), %rdx    # 0x55f5ba
leaq 0x3aefd5(%rip), %rcx    # 0x55f558
leaq 0x3aee3e(%rip), %r8     # 0x55f3c8
movl $0x12a, %r9d            # imm = 0x12A
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1b059e
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x20(%rsp)
movq 0x38(%rsp), %rsi
movl $0x5b, %edi
callq 0x126b70
movq 0x20(%rsp), %rax
addq 0x28(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x18(%rsp)
movq 0x20(%rsp), %rax
addq 0x28(%rsp), %rax
addq $-0x2, %rax
movq %rax, 0x10(%rsp)
movq 0x18(%rsp), %rax
movzbl (%rax), %eax
andl $0x3f, %eax
cltq
movq %rax, 0x30(%rsp)
movq 0x10(%rsp), %rax
cmpq 0x20(%rsp), %rax
jb 0x1b075c
movq 0x18(%rsp), %rax
movzbl (%rax), %eax
sarl $0x6, %eax
movq 0x10(%rsp), %rcx
movzbl (%rcx), %ecx
sarl $0x6, %ecx
cmpl %ecx, %eax
jne 0x1b0655
movq 0x10(%rsp), %rax
movzbl (%rax), %eax
andl $0x3f, %eax
cltq
addq 0x30(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x18(%rsp)
movq 0x10(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x10(%rsp)
jmp 0x1b070b
movq 0x18(%rsp), %rax
movzbl (%rax), %eax
shrl $0x6, %eax
movl %eax, %ecx
movq %rcx, 0x8(%rsp)
subl $0x3, %eax
ja 0x1b06c3
movq 0x8(%rsp), %rax
leaq 0x3aed40(%rip), %rcx    # 0x55f3b8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x38(%rsp), %rsi
movl $0x4d, %edi
callq 0x126b70
jmp 0x1b06c3
movq 0x38(%rsp), %rsi
movl $0x52, %edi
callq 0x126b70
jmp 0x1b06c3
movq 0x38(%rsp), %rsi
movl $0x49, %edi
callq 0x126b70
jmp 0x1b06c3
movq 0x38(%rsp), %rsi
movl $0x44, %edi
callq 0x126b70
movq 0x38(%rsp), %rdi
movq 0x30(%rsp), %rax
movl %eax, %edx
leaq 0x3aee97(%rip), %rsi    # 0x55f56d
movb $0x0, %al
callq 0x199f0
movq 0x18(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movzbl (%rax), %eax
andl $0x3f, %eax
cltq
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x10(%rsp)
jmp 0x1b070d
movq 0x10(%rsp), %rax
addq $0x1, %rax
cmpq 0x18(%rsp), %rax
je 0x1b0755
movq 0x48b87c(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x3658e5(%rip), %rsi    # 0x516013
leaq 0x3aee3e(%rip), %rdx    # 0x55f573
leaq 0x3aee1c(%rip), %rcx    # 0x55f558
leaq 0x3aec85(%rip), %r8     # 0x55f3c8
movl $0x14c, %r9d            # imm = 0x14C
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1b0757
jmp 0x1b05f3
jmp 0x1b075e
cmpq $0x0, 0x28(%rsp)
je 0x1b07aa
movq 0x18(%rsp), %rax
cmpq 0x20(%rsp), %rax
je 0x1b07aa
movq 0x48b827(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x365890(%rip), %rsi    # 0x516013
leaq 0x3aedfa(%rip), %rdx    # 0x55f584
leaq 0x3aedc7(%rip), %rcx    # 0x55f558
leaq 0x3aec30(%rip), %r8     # 0x55f3c8
movl $0x14e, %r9d            # imm = 0x14E
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x1b07ac
movq 0x18(%rsp), %rax
movzbl (%rax), %eax
shrl $0x6, %eax
movl %eax, %ecx
movq %rcx, (%rsp)
subl $0x3, %eax
ja 0x1b0818
movq (%rsp), %rax
leaq 0x3aebdb(%rip), %rcx    # 0x55f3a8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x38(%rsp), %rsi
movl $0x4d, %edi
callq 0x126b70
jmp 0x1b0818
movq 0x38(%rsp), %rsi
movl $0x52, %edi
callq 0x126b70
jmp 0x1b0818
movq 0x38(%rsp), %rsi
movl $0x49, %edi
callq 0x126b70
jmp 0x1b0818
movq 0x38(%rsp), %rsi
movl $0x44, %edi
callq 0x126b70
movq 0x38(%rsp), %rdi
movq 0x30(%rsp), %rax
movl %eax, %edx
leaq 0x39e663(%rip), %rsi    # 0x54ee8e
movb $0x0, %al
callq 0x199f0
movq 0x38(%rsp), %rsi
leaq 0x39d00e(%rip), %rdi    # 0x54d84c
callq 0x126bb0
addq $0x48, %rsp
retq
nopl (%rax,%rax)