// File: /workspace/github_cpp_makefile_star2_O3/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 0x4c6b8(%rip), %rax     # 0x64830
movq %rax, (%rdi)
leaq 0x698(%rsp), %rdi
callq 0x6f40
movabsq $-0x1000000000000, %r12 # imm = 0xFFFF000000000000
movabsq $0xd00000000000, %rbp   # imm = 0xD00000000000
movabsq $0x1ffffffffff, %r13    # imm = 0x1FFFFFFFFFF
movq $0x0, 0x8(%rbx)
leaq 0x10(%rbx), %rax
movq %rax, (%rsp)
leaq 0x18(%rbx), %r15
leaq 0x528(%rsp), %rdi
callq 0x6f40
movq 0xc0a2(%rip), %rax      # 0x24270
leaq 0xc5eb(%rip), %rcx      # 0x247c0
leaq (%rcx,%rax,8), %rax
movq %rax, 0x28(%rbx)
movl 0x4c639(%rip), %eax     # 0x6481c
testl %eax, %eax
je 0x1820a
cmpl $0x27, %eax
je 0x18424
movl $0x3, %edi
callq 0x58ff
movq 0x4c897(%rip), %rax     # 0x64a98
movq %rax, 0x4c898(%rip)     # 0x64aa0
jmp 0x18248
movq 0x4c78f(%rip), %rax     # 0x649a0
testq %rax, %rax
je 0x18223
cmpl $0x3, 0x20(%rax)
jne 0x18223
callq 0xeb22
jmp 0x18248
movl $0xb, %edi
callq 0x58ff
movq 0x4c864(%rip), %rax     # 0x64a98
movq %rax, 0x4c865(%rip)     # 0x64aa0
leaq 0x3b8(%rsp), %rdi
callq 0x6f40
movb $0x1, 0x4c725(%rip)     # 0x64974
movq $0x1, 0x4c6de(%rip) # 0x64938
leaq 0x70(%rsp), %rdi
movl $0x5, %esi
callq 0xc308
addq $-0x8, 0xa514f(%rip)    # 0xbd3c0
cmpq $0x1, 0x4c6bf(%rip)     # 0x64938
je 0x18285
movl $0x30, %edi
callq 0x58ff
movq 0x4c7ac(%rip), %rax     # 0x64a38
movabsq $0xfff000000, %rcx      # imm = 0xFFF000000
andq %rcx, %rax
movq %rax, 0x30(%rbx)
movq 0x4c58c(%rip), %rsi     # 0x64830
movq (%rsp), %rdi
callq 0x3c48
movq 0x18(%rbx), %rax
andq %r12, %rax
orq %rbp, %rax
movq %rax, 0x18(%rbx)
movq 0x40(%rbx), %rax
andq %r12, %rax
orq %rbp, %rax
movq %rax, 0x40(%rbx)
callq 0xee5e
leaq 0x8(%rsp), %rdi
movl $0x11, %esi
callq 0xc308
addq $-0x8, 0xa50db(%rip)    # 0xbd3c0
movq 0x4c744(%rip), %rax     # 0x64a30
movq %rax, 0x38(%rbx)
cmpl $0x12, 0x4c525(%rip)    # 0x6481c
jne 0x1832d
leaq 0x248(%rsp), %rdi
callq 0x6f40
movq 0x4c71b(%rip), %rax     # 0x64a28
movq %rax, 0x20(%rbx)
cmpl $0x1, 0x4c504(%rip)     # 0x6481c
jne 0x1833d
leaq 0xd8(%rsp), %rdi
callq 0x6f40
movq 0x20(%rbx), %r14
jmp 0x18355
movq 0x20(%rbx), %rax
andq %r12, %rax
leaq (%rax,%rbp), %r14
incq %r14
jmp 0x18351
movl $0x3e, %edi
callq 0x58ff
movq 0x20(%rbx), %r14
andq %r12, %r14
orq %rbp, %r14
movq %r14, 0x20(%rbx)
movq %r14, %rax
andq %r13, %rax
movq (%r15), %rsi
cmpq $0x1, %rax
jne 0x18392
shlq $0x17, %rsi
sarq $0x17, %rsi
incq %rsi
movq %r15, %rdi
callq 0x3c48
cmpl $0xe, 0x4c49e(%rip)     # 0x6481c
jne 0x183c3
movq 0x38(%rbx), %rax
movq %rax, 0x4c6a5(%rip)     # 0x64a30
callq 0x5d59
jmp 0x183f0
testq %r13, %rsi
je 0x183ac
movl $0x1, %esi
movq %rbx, %rdi
callq 0x19cf4
movq 0x18(%rbx), %rsi
movq 0x20(%rbx), %r14
andq %r12, %rsi
leaq (%rsi,%rbp), %rax
incq %rax
movq %rax, (%r15)
shlq $0x17, %r14
sarq $0x17, %r14
jmp 0x183e5
movq (%r15), %rax
andq %r13, %rax
movl $0x1, %r14d
cmpq $0x1, %rax
je 0x183e5
movq 0x38(%rbx), %rax
movq %rax, 0x4c650(%rip)     # 0x64a30
callq 0x5d59
movq %rbx, %rdi
movq %r14, %rsi
callq 0x19cf4
cmpl $0xe, 0x4c425(%rip)     # 0x6481c
je 0x182c9
movq 0x28(%rbx), %rdi
callq 0x3dae
movl 0x4c410(%rip), %eax     # 0x6481c
cmpl $0xf, %eax
je 0x181ba
cmpl $0x27, %eax
je 0x18424
movl $0xc, %edi
callq 0x58ff
movq 0x48(%rbx), %rax
movq 0x50(%rbx), %rcx
cmpq %rax, %rcx
je 0x1848b
xorl %r15d, %r15d
leaq 0xa4ef5(%rip), %r14     # 0xbd330
xorl %r12d, %r12d
leaq (%rax,%r15), %rdx
movq 0xa4eef(%rip), %rsi     # 0xbd338
cmpq 0xa4ef0(%rip), %rsi     # 0xbd340
je 0x18465
movq (%rdx), %rdx
movq %rdx, (%rsi)
addq $0x8, %rsi
movq %rsi, 0xa4ed5(%rip)     # 0xbd338
jmp 0x18475
movq %r14, %rdi
callq 0x1b17a
movq 0x48(%rbx), %rax
movq 0x50(%rbx), %rcx
incq %r12
movq %rcx, %rdx
subq %rax, %rdx
sarq $0x3, %rdx
addq $0x8, %r15
cmpq %rdx, %r12
jb 0x1843e
movq 0x4c39e(%rip), %rax     # 0x64830
movq (%rbx), %rcx
subq %rcx, %rax
movq %rax, 0x4c4a1(%rip)     # 0x64940
movq %rcx, 0x4c38a(%rip)     # 0x64830
movq 0x8(%rbx), %rax
movq %rax, 0x4c497(%rip)     # 0x64948
addq $0x808, %rsp            # imm = 0x808
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x184c9
jmp 0x184c9
jmp 0x184c9
movq %rax, %r14
leaq 0x48(%rbx), %rax
movq (%rax), %rdi
testq %rdi, %rdi
je 0x184e4
movq 0x58(%rbx), %rsi
subq %rdi, %rsi
callq 0x3260
movq %r14, %rdi
callq 0x3400