// File: /workspace/github_cpp_makefile_star2_O1/besm6[P]pascal-re/pascompl.cc
// Function: ParseData::ParseData()
ParseData() {
        dsize = FcstCnt;
        inSymbol();
        setcount = 0;
/*(loop)*/
        do { /* 16530 */
            inSymbol();
            setup(boundary);
            if (SY != IDENT) {
                if (SY == ENDSY)
                    break;
                error(errNoIdent);
                curExpr = uVarPtr;
            } else /* 16543 */ {
                if (hashTravPtr == NULL) {
L16545:             error(errNotDefined);
                    curExpr = uVarPtr;
                    inSymbol();
                } else {
                    if (hashTravPtr->cl == VARID) {
                        parseLval();
                    } else goto L16545;
                }
            } /* 16557 */
            putLeft = true;
            objBufIdx = 1;
            (void) formOperator(ADDRTOR9);
            if (objBufIdx != 1)
                error(errVarTooComplex);
            l4var7z.ii = leftInsn & 0777700000000L;
            l4var3z.i = FcstCnt;
            l4var4z.i = 0;
            l4var9z.i = 0;
            do { /* 16574 */
                expression();
                (void) formOperator(LITINSN);
                l4var8z = curVal;
                if (SY == COLON) {
                    inSymbol();
                    l4var5z = curToken;
                    if (SY != INTCONST) {
                        error(62); /* errIntegerNeeded */
                        l4var5z.i = 0;
                    } else
                        inSymbol();
                } else
                    l4var5z.i = 1;
                if (l4var5z.i != 1) {
                    if (l4var4z.i != 0)
                        P16432(1);
                    l4var4z.i = 1;
                    P16432(l4var5z.i);
                } else {
                    l4var4z.i = l4var4z.i + 1;
                    if (SY == COMMA) {
                        curVal = l4var8z;
                        toFCST();
                    } else {
                        if (l4var4z.i != 1) {
                            curVal = l4var8z;
                            toFCST();
                        }
                        P16432(1);
                    }
                } /* 16641 */
            } while (SY == COMMA);
            rollup(boundary);
        } while (SY == SEMICOLON); /* 16645 */
        if (SY != ENDSY)
            error(errBadSymbol);
        for (size_t s = 0; s < F.size(); ++s) FCST.push_back(F[s].b);
        int92z = FcstCnt - dsize;
        FcstCnt = dsize;
        int93z = setcount;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x808, %rsp            # imm = 0x808
movq %rdi, %rbx
xorps %xmm0, %xmm0
movups %xmm0, 0x48(%rdi)
movq $0x0, 0x58(%rdi)
movq 0x4cb3e(%rip), %rax     # 0x64840
movq %rax, (%rdi)
leaq 0x698(%rsp), %rdi
callq 0x6e26
movabsq $0xd00000000000, %rax   # imm = 0xD00000000000
movabsq $0x1ffffffffff, %rbp    # imm = 0x1FFFFFFFFFF
movq $0x0, 0x8(%rbx)
leaq 0x10(%rbx), %rcx
movq %rcx, (%rsp)
leaq 0x18(%rbx), %r15
leaq 0x20(%rbx), %r13
leaq 0x1(%rax), %r12
leaq 0x528(%rsp), %rdi
callq 0x6e26
movq 0xc52a(%rip), %rax      # 0x24280
leaq 0xca73(%rip), %rcx      # 0x247d0
leaq (%rcx,%rax,8), %rax
movq %rax, 0x28(%rbx)
movl 0x4cac1(%rip), %eax     # 0x6482c
testl %eax, %eax
je 0x17d92
cmpl $0x27, %eax
je 0x17fc8
movl $0x3, %edi
callq 0x589e
movq 0x4cd1f(%rip), %rax     # 0x64aa8
movq %rax, 0x4cd20(%rip)     # 0x64ab0
jmp 0x17dd0
movq 0x4cc17(%rip), %rax     # 0x649b0
testq %rax, %rax
je 0x17dab
cmpl $0x3, 0x20(%rax)
jne 0x17dab
callq 0xe885
jmp 0x17dd0
movl $0xb, %edi
callq 0x589e
movq 0x4ccec(%rip), %rax     # 0x64aa8
movq %rax, 0x4cced(%rip)     # 0x64ab0
leaq 0x3b8(%rsp), %rdi
callq 0x6e26
movb $0x1, 0x4cbad(%rip)     # 0x64984
movq $0x1, 0x4cb66(%rip) # 0x64948
leaq 0x70(%rsp), %rdi
movl $0x5, %esi
callq 0xc044
addq $-0x8, 0xa55d7(%rip)    # 0xbd3d0
cmpq $0x1, 0x4cb47(%rip)     # 0x64948
je 0x17e0d
movl $0x30, %edi
callq 0x589e
movq 0x4cc34(%rip), %rax     # 0x64a48
movabsq $0xfff000000, %rcx      # imm = 0xFFF000000
andq %rcx, %rax
movq %rax, 0x30(%rbx)
movq 0x4ca14(%rip), %rsi     # 0x64840
movq (%rsp), %rdi
callq 0x3bf2
movq 0x18(%rbx), %rax
movabsq $-0x1000000000000, %rcx # imm = 0xFFFF000000000000
andq %rcx, %rax
movabsq $0xd00000000000, %rdx   # imm = 0xD00000000000
orq %rdx, %rax
movq %rax, 0x18(%rbx)
movq 0x40(%rbx), %rax
andq %rcx, %rax
orq %rdx, %rax
movq %rax, 0x40(%rbx)
callq 0xebcc
leaq 0x8(%rsp), %rdi
movl $0x11, %esi
callq 0xc044
addq $-0x8, 0xa554f(%rip)    # 0xbd3d0
movq 0x4cbb8(%rip), %rax     # 0x64a40
movq %rax, 0x38(%rbx)
cmpl $0x12, 0x4c999(%rip)    # 0x6482c
movq %r12, %rax
jne 0x17edc
leaq 0x248(%rsp), %rdi
callq 0x6e26
movq 0x4cb8c(%rip), %rax     # 0x64a38
movq %rax, (%r13)
cmpl $0x1, 0x4c975(%rip)     # 0x6482c
jne 0x17ec8
leaq 0xd8(%rsp), %rdi
callq 0x6e26
jmp 0x17ef4
movl $0x3e, %edi
callq 0x589e
movabsq $0xd00000000000, %rax   # imm = 0xD00000000000
movq (%r13), %rcx
movabsq $-0x1000000000000, %rdx # imm = 0xFFFF000000000000
andq %rdx, %rcx
orq %rax, %rcx
movq %rcx, (%r13)
movq 0x20(%rbx), %rax
andq %rbp, %rax
movq 0x18(%rbx), %rsi
cmpq $0x1, %rax
jne 0x17f33
shlq $0x17, %rsi
sarq $0x17, %rsi
incq %rsi
movq %r15, %rdi
callq 0x3bf2
cmpl $0xe, 0x4c90d(%rip)     # 0x6482c
jne 0x17f78
movq 0x38(%rbx), %rax
movq %rax, 0x4cb14(%rip)     # 0x64a40
callq 0x5d02
jmp 0x17fa5
testq %rbp, %rsi
je 0x17f45
movl $0x1, %esi
movq %rbx, %rdi
callq 0x1984e
movq 0x18(%rbx), %rax
movabsq $-0x1000000000000, %rcx # imm = 0xFFFF000000000000
andq %rcx, %rax
movabsq $0xd00000000000, %rcx   # imm = 0xD00000000000
addq %rcx, %rax
incq %rax
movq %rax, 0x18(%rbx)
movq 0x20(%rbx), %r14
shlq $0x17, %r14
sarq $0x17, %r14
jmp 0x17f9a
movq (%r15), %rax
andq %rbp, %rax
movl $0x1, %r14d
cmpq $0x1, %rax
je 0x17f9a
movq 0x38(%rbx), %rax
movq %rax, 0x4caab(%rip)     # 0x64a40
callq 0x5d02
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1984e
cmpl $0xe, 0x4c880(%rip)     # 0x6482c
je 0x17e65
movq 0x28(%rbx), %rdi
callq 0x3d3a
cmpl $0xf, 0x4c86a(%rip)     # 0x6482c
je 0x17d42
cmpl $0x27, 0x4c85d(%rip)    # 0x6482c
je 0x17fdb
movl $0xc, %edi
callq 0x589e
movq 0x48(%rbx), %rdx
cmpq %rdx, 0x50(%rbx)
je 0x1803b
xorl %r15d, %r15d
leaq 0xa5351(%rip), %r14     # 0xbd340
xorl %r12d, %r12d
addq %r15, %rdx
movq 0xa534c(%rip), %rsi     # 0xbd348
cmpq 0xa534d(%rip), %rsi     # 0xbd350
je 0x18018
movq (%rdx), %rax
movq %rax, (%rsi)
addq $0x8, %rsi
movq %rsi, 0xa5332(%rip)     # 0xbd348
jmp 0x18020
movq %r14, %rdi
callq 0x1ada0
incq %r12
movq 0x48(%rbx), %rdx
movq 0x50(%rbx), %rax
subq %rdx, %rax
sarq $0x3, %rax
addq $0x8, %r15
cmpq %rax, %r12
jb 0x17ff2
movq 0x4c7fe(%rip), %rax     # 0x64840
movq (%rbx), %rcx
subq %rcx, %rax
movq %rax, 0x4c901(%rip)     # 0x64950
movq %rcx, 0x4c7ea(%rip)     # 0x64840
movq 0x8(%rbx), %rax
movq %rax, 0x4c8f7(%rip)     # 0x64958
addq $0x808, %rsp            # imm = 0x808
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x18079
jmp 0x18079
jmp 0x18079
movq %rax, %r14
leaq 0x48(%rbx), %rax
movq (%rax), %rdi
testq %rdi, %rdi
je 0x18094
movq 0x58(%rbx), %rsi
subq %rdi, %rsi
callq 0x3260
movq %r14, %rdi
callq 0x3410