// File: /workspace/github_c_makefile_star2_O3/simh[P]simtools/crossassemblers/macro1/macro1.c
// Function: printLine
void printLine( char *line, WORD32 loc, WORD32 val, LINESTYLE_T linestyle )
{
  if( listfile == NULL )
  {
    save_error_count = 0;
    return;
  }

  printPageBreak();

  list_lineno++;
  page_lineno++;
  switch( linestyle )
  {
  default:
  case LINE:
    fprintf( listfile, "%5d                   ", lineno );
    fputs( line, listfile );
    listed = TRUE;
    break;

  case LINE_VAL:
    if( !listed )
    {
      fprintf( listfile, "%5d       %6.6o      ", lineno, val );
      fputs( line, listfile );
      listed = TRUE;
    }
    else
    {
      fprintf( listfile, "            %6.6o\n", val );
    }
    break;

  case LINE_LOC:
    if( !listed )
    {
      fprintf( listfile, "%5d %5.5o             ", lineno, loc );
      fputs( line, listfile );
      listed = TRUE;
    }
    else
    {
      fprintf( listfile, "      %5.5o\n", loc );
    }
    break;

  case LINE_LOC_VAL:
    if( !listed )
    {
      fprintf( listfile, "%5d %5.5o %6.6o      ", lineno, loc, val );
      fputs( line, listfile );
      listed = TRUE;
    }
    else
    {
      fprintf( listfile, "      %5.5o %6.6o\n", loc, val );
    }
    break;

  case LOC_VAL:
    fprintf( listfile, "      %5.5o %6.6o\n", loc, val );
    break;
  }
  printErrorMessages();
}

// Assembly:
cmpq $0x0, 0x5f36(%rip)      # 0x9ea0
je 0x3fe7
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movl %ecx, %r15d
movl %edx, %ebp
movl %esi, %r14d
movq %rdi, %rbx
movl 0x81e4(%rip), %eax      # 0xc168
cmpl $0x3c, %eax
jl 0x3f9d
leaq 0x8140(%rip), %rdi      # 0xc0d0
xorl %esi, %esi
callq 0x534c
movl 0x81cb(%rip), %eax      # 0xc168
incl 0x81c1(%rip)            # 0xc164
incl %eax
movl %eax, 0x81bd(%rip)      # 0xc168
decl %r15d
cmpl $0x3, %r15d
ja 0x4046
leaq 0x2075(%rip), %rax      # 0x6034
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
cmpl $0x0, 0x8189(%rip)      # 0xc158
movq 0x5eca(%rip), %rdi      # 0x9ea0
je 0x4075
leaq 0x2773(%rip), %rsi      # 0x6756
movl %ebp, %edx
jmp 0x4015
movl $0x0, 0x5ec3(%rip)      # 0x9eb4
retq
movq 0x5ea7(%rip), %rdi      # 0x9ea0
jmp 0x4031
cmpl $0x0, 0x8156(%rip)      # 0xc158
movq 0x5e97(%rip), %rdi      # 0x9ea0
je 0x4063
leaq 0x276e(%rip), %rsi      # 0x6780
movl %r14d, %edx
xorl %eax, %eax
callq 0x2110
jmp 0x40c0
cmpl $0x0, 0x8130(%rip)      # 0xc158
movq 0x5e71(%rip), %rdi      # 0x9ea0
je 0x408d
leaq 0x276b(%rip), %rsi      # 0x67a3
movl %r14d, %edx
movl %ebp, %ecx
xorl %eax, %eax
callq 0x2110
jmp 0x40c0
movq 0x5e53(%rip), %rdi      # 0x9ea0
movl 0x8109(%rip), %edx      # 0xc15c
leaq 0x26cf(%rip), %rsi      # 0x6729
xorl %eax, %eax
callq 0x2110
jmp 0x40a7
movl 0x80f3(%rip), %edx      # 0xc15c
leaq 0x26f9(%rip), %rsi      # 0x6769
movl %r14d, %ecx
jmp 0x4084
movl 0x80e1(%rip), %edx      # 0xc15c
leaq 0x26be(%rip), %rsi      # 0x6740
movl %ebp, %ecx
xorl %eax, %eax
callq 0x2110
jmp 0x40a7
movl 0x80c9(%rip), %edx      # 0xc15c
leaq 0x26f3(%rip), %rsi      # 0x678d
movl %r14d, %ecx
movl %ebp, %r8d
xorl %eax, %eax
callq 0x2110
movq 0x5df2(%rip), %rsi      # 0x9ea0
movq %rbx, %rdi
callq 0x20b0
movl $0x1, 0x8098(%rip)      # 0xc158
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x545a