// File: /workspace/github_c_makefile_star2_O2/genometools[P]genometools/src/extended/gff3_output.c
// Function: gt_gff3_output_leading_str
void gt_gff3_output_leading_str(GtFeatureNode *fn, GtStr *outstr)
{
  GtGenomeNode *gn;
  gt_assert(fn && outstr);
  gn = (GtGenomeNode*) fn;
  gt_str_append_str(outstr, gt_genome_node_get_seqid(gn));
  gt_str_append_char(outstr, '\t');
  gt_str_append_cstr(outstr, gt_feature_node_get_source(fn));
  gt_str_append_char(outstr, '\t');
  gt_str_append_cstr(outstr, gt_feature_node_get_type(fn));
  gt_str_append_char(outstr, '\t');
  gt_str_append_uword(outstr, gt_genome_node_get_start(gn));
  gt_str_append_char(outstr, '\t');
  gt_str_append_uword(outstr, gt_genome_node_get_end(gn));
  gt_str_append_char(outstr, '\t');
  if (gt_feature_node_score_is_defined(fn)) {
    char buf[BUFSIZ];
    (void) snprintf(buf, BUFSIZ, "%.3g", gt_feature_node_get_score(fn));
    gt_str_append_cstr(outstr, buf);
  } else
    gt_str_append_char(outstr, '.');
  gt_str_append_char(outstr, '\t');
  gt_str_append_char(outstr, GT_STRAND_CHARS[gt_feature_node_get_strand(fn)]);
  gt_str_append_char(outstr, '\t');
  gt_str_append_char(outstr, GT_PHASE_CHARS[gt_feature_node_get_phase(fn)]);
  gt_str_append_char(outstr, '\t');
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x2008, %rsp           # imm = 0x2008
testq %rdi, %rdi
je 0x6591f
movq %rsi, %rbx
testq %rsi, %rsi
je 0x6591f
movq %rdi, %r14
callq 0x1c31a
movq %rbx, %rdi
movq %rax, %rsi
callq 0x13eeb
pushq $0x9
popq %rbp
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x197b1
movq %rbx, %rdi
movq %rax, %rsi
callq 0x13dd3
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x19528
movq %rbx, %rdi
movq %rax, %rsi
callq 0x13dd3
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x1c3bf
movq %rbx, %rdi
movq %rax, %rsi
callq 0x13ffe
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x1c415
movq %rbx, %rdi
movq %rax, %rsi
callq 0x13ffe
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x195ce
testb %al, %al
je 0x658ab
movq %r14, %rdi
callq 0x19c2e
cvtss2sd %xmm0, %xmm0
leaq 0x784c8(%rip), %rdx     # 0xddd54
movq %rsp, %r15
movl $0x2000, %esi           # imm = 0x2000
movq %r15, %rdi
movb $0x1, %al
callq 0xba00
movq %rbx, %rdi
movq %r15, %rsi
callq 0x13dd3
jmp 0x658b6
pushq $0x2e
popq %rsi
movq %rbx, %rdi
callq 0x140b1
pushq $0x9
popq %rbp
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x18f89
movl %eax, %eax
leaq 0x66270(%rip), %rcx     # 0xcbb44
movsbl (%rax,%rcx), %esi
movq %rbx, %rdi
callq 0x140b1
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
movq %r14, %rdi
callq 0x19d90
movl %eax, %eax
leaq 0x662f5(%rip), %rcx     # 0xcbbf0
movsbl (%rax,%rcx), %esi
movq %rbx, %rdi
callq 0x140b1
movq %rbx, %rdi
movl %ebp, %esi
callq 0x140b1
addq $0x2008, %rsp           # imm = 0x2008
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq 0xc8692(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
leaq 0x64736(%rip), %rsi     # 0xca066
leaq 0x7842a(%rip), %rdx     # 0xddd61
leaq 0x78430(%rip), %rcx     # 0xddd6e
leaq 0x783e2(%rip), %r8      # 0xddd27
pushq $0x2e
popq %r9
xorl %eax, %eax
callq 0xb8c0
callq 0xb300
nopl (%rax)