// File: /workspace/github_cpp_makefile_star2_O2/besm6[P]pascal-re/pascompl.cc
// Function: endOfLine()
void endOfLine()
{
    int64_t err, errPos, prevPos, listMode,
    startPos, lastErr;

    listMode = PASINFOR.listMode;
    if ((listMode != 0) or (errsInLine != 0)) {
        printf(" %05lo%5ld%3ld%c", (lineStartOffset + PASINFOR.startOffset),
               lineCnt, lineNesting, commentModeCH);
        startPos = 12;
        if (optSflags.m.has(S4)
            and (maxLineLen == 72)
            and (linePos >= 80)) {
            for (err = 73; err <= 80; ++err)
                putchar(lineBufBase[err]);
            putchar(' ');
            linePos = 73;
            startPos += 9;
        }; /* 1106 */
        do
            linePos = linePos-1;
        while ((lineBufBase[linePos]  == ' ') and (linePos != 0));
        for (err = 1; err <= linePos; ++err) {
            kputc(lineBufBase[err]);
        };
        putchar('\n');
        if (errsInLine != 0)  {
            printf("%*s %*c0", int(startPos), "^^^^^", int(errMapBase[0]), ' ');
            lastErr = errsInLine - 1;
            for (err = 1; err <= lastErr; ++err) {
                errPos = errMapBase[err];
                prevPos = errMapBase[err-1];
                if (errPos != prevPos) {
                    if (prevPos + 1 != errPos)
                        printf("%*c", int(errPos-prevPos-1), ' ');
                    putchar(char(err + 48));
                }
            }
            putchar('\n');
            errsInLine = 0;
            prevErrPos = 0;
        }
    } /* 1160 */
    if ((listMode == 2) and (moduleOffset != lineStartOffset)) {
        OBPROG(objBuffer[objBufIdx - moduleOffset + lineStartOffset],
               objBuffer[objBufIdx-1]);
    } /* 1174 */
    lineStartOffset = moduleOffset;
    linePos = 0;
    lineCnt = lineCnt + 1;
    // One EOF is OK when the file doesn't have any extra characters after "END."
    static int eofs;
    if (feof(pasinput) && eofs++) {
        error(errEOFEncountered);
        throw 9999;
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq 0xb6987(%rip), %rcx     # 0xbc360
movq 0x5dea0(%rip), %rax     # 0x63880
orq %rcx, %rax
je 0x5bfc
movq %rcx, 0x10(%rsp)
movq 0xb6973(%rip), %rsi     # 0xbc368
addq 0x5de94(%rip), %rsi     # 0x63890
movq 0x5dead(%rip), %rdx     # 0x638b0
movq 0x5df1e(%rip), %rcx     # 0x63928
movsbl 0x5df06(%rip), %r8d     # 0x63918
leaq 0x1488e(%rip), %rdi     # 0x1a2a7
xorl %eax, %eax
callq 0x3030
movb 0x5e04f(%rip), %al      # 0x63a75
shrb $0x6, %al
cmpq $0x48, 0x5de37(%rip)    # 0x63868
sete %cl
andb %al, %cl
movq 0x5de33(%rip), %rax     # 0x63870
cmpq $0x50, %rax
setge %dl
andb %cl, %dl
leaq 0x62aa3(%rip), %r15     # 0x684f0
cmpb $0x1, %dl
jne 0x5a6a
xorl %ebx, %ebx
cmpq $0x8, %rbx
je 0x5a73
movsbl 0x49(%rbx,%r15), %edi
callq 0x3320
incq %rbx
jmp 0x5a54
pushq $0xc
popq %rcx
movl %ecx, 0xc(%rsp)
jmp 0x5a85
pushq $0x20
popq %rdi
callq 0x3320
pushq $0x15
popq %rax
movl %eax, 0xc(%rsp)
pushq $0x49
popq %rax
leaq -0x1(%rax), %rcx
cmpq $0x1, %rax
je 0x5a9a
cmpb $0x20, -0x1(%rax,%r15)
movq %rcx, %rax
je 0x5a85
movq %rcx, 0x5ddcf(%rip)     # 0x63870
pushq $0x1
popq %r12
leaq 0x1cfc4(%rip), %r13     # 0x22a70
movq 0x1d4d5(%rip), %rbp     # 0x22f88
movl $0x3a7f3fbf, %ebx       # imm = 0x3A7F3FBF
leaq 0x1d1b1(%rip), %r14     # 0x22c70
cmpq %rcx, %r12
jg 0x5b0c
movzbl (%r12,%r15), %edi
cmpl $0xc0, %edi
jb 0x5ae7
addl $0xffffff40, %edi       # imm = 0xFFFFFF40
movq (%r13,%rdi,8), %rdi
movq (%rbp), %rsi
callq 0x32a0
jmp 0x5b00
cmpb $0x1f, %dil
ja 0x5afb
btq %rdi, %rbx
jb 0x5afb
movl %edi, %eax
movq (%r14,%rax,8), %rdi
jmp 0x5adc
callq 0x3320
incq %r12
movq 0x5dd66(%rip), %rcx     # 0x63870
jmp 0x5abf
pushq $0xa
popq %rdi
callq 0x3320
cmpq $0x0, 0x5dd64(%rip)     # 0x63880
je 0x5bc2
movl 0x62a58(%rip), %ecx     # 0x68580
leaq 0x14789(%rip), %rdi     # 0x1a2b8
leaq 0x1478b(%rip), %rdx     # 0x1a2c1
pushq $0x20
popq %rbp
movl 0xc(%rsp), %esi
movl %ebp, %r8d
xorl %eax, %eax
callq 0x3030
pushq $0x1
popq %r14
movl $0x31000000, %r15d      # imm = 0x31000000
movq 0x5dd28(%rip), %r12     # 0x63880
leaq 0x62a21(%rip), %r13     # 0x68580
leaq 0x14761(%rip), %rbx     # 0x1a2c7
cmpq %r12, %r14
jge 0x5baa
movq -0x8(%r13,%r14,8), %rax
movq (%r13,%r14,8), %rsi
cmpq %rax, %rsi
je 0x5b9e
leaq 0x1(%rax), %rcx
cmpq %rsi, %rcx
je 0x5b93
notl %eax
addl %eax, %esi
movq %rbx, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0x3030
movl %r15d, %edi
sarl $0x18, %edi
callq 0x3320
incq %r14
addl $0x1000000, %r15d       # imm = 0x1000000
jmp 0x5b66
pushq $0xa
popq %rdi
callq 0x3320
andq $0x0, 0x5dcc6(%rip)     # 0x63880
andq $0x0, 0x5dcb6(%rip)     # 0x63878
cmpq $0x2, 0x10(%rsp)
jne 0x5bfc
movq 0x5dcbf(%rip), %rax     # 0x63890
subq 0x5dcb0(%rip), %rax     # 0x63888
je 0x5bfc
movq 0x5dd57(%rip), %rcx     # 0x63938
addq %rcx, %rax
leaq 0xa6635(%rip), %rdx     # 0xac220
leaq (%rdx,%rax,8), %rdi
leaq (%rdx,%rcx,8), %rsi
addq $-0x8, %rsi
callq 0x5946
movq 0x5dc85(%rip), %rax     # 0x63888
movq %rax, 0x5dc86(%rip)     # 0x63890
andq $0x0, 0x5dc5e(%rip)     # 0x63870
incq 0x5dc97(%rip)           # 0x638b0
movq 0x1db90(%rip), %rdi     # 0x237b0
callq 0x3370
testl %eax, %eax
je 0x5c3c
movl 0xb6761(%rip), %eax     # 0xbc390
leal 0x1(%rax), %ecx
movl %ecx, 0xb6758(%rip)     # 0xbc390
testl %eax, %eax
jne 0x5c4b
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
pushq $0x34
popq %rdi
callq 0x4f2c
pushq $0x4
popq %rdi
callq 0x3110
movl $0x270f, (%rax)         # imm = 0x270F
movq 0x1d318(%rip), %rsi     # 0x22f80
movq %rax, %rdi
xorl %edx, %edx
callq 0x33e0