// File: /workspace/github_c_makefile_star2_O0/nimble-code[P]gh_cpp/Src/gh_cpp1.c
// Function: do_parsing
static void
do_parsing(void)
{	Tokvals t;
	TS *n;

	nowc = lbuf;
	strip_comments();

	while ((t = lex()) != DONE)
	{	n = new_inl(t);
		n->space = white;
		switch (n->tok) {
		case NAME:
			n->name = emalloc(strlen(myname)+1);
			strcpy(n->name, myname);
			break;
		case VAL:
			n->val = myval;
			break;
		case ECHAR:
			/* fall thru */
		case CHAR:
			n->val = (int) mychar;
			break;
		default:
			fatal_error("unknown token");
		}
		n->prv = inl;
		if (start) inl->nxt = n; else start = n;
		inl = n;
	}

	for (n = start; n; n = n->nxt)
		if (n->tok == CHAR)
		{	if (n->val == '{')
				BlockDepth++;
			else if (n->val == '}')
				BlockDepth--;

			if (n->val == '/'
			&&  n->nxt
			&&  n->nxt->tok == CHAR
			&&  n->nxt->val == '/')
			{	if (misra_rules)
					m_rule(2, 2, "C++ style comment");
				if (n->prv)
					n->prv->nxt = (TS *) 0;
				else
					start = (TS *) 0;
		}	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
leaq 0x102f1(%rip), %rax     # 0x14fb0
movq %rax, 0x102da(%rip)     # 0x14fa0
callq 0x5900
callq 0x5af0
movl %eax, -0x4(%rbp)
cmpl $0x0, %eax
je 0x4dc4
movl -0x4(%rbp), %edi
callq 0x5eb0
movq %rax, -0x10(%rbp)
movl 0x102aa(%rip), %ecx     # 0x14f98
movq -0x10(%rbp), %rax
movl %ecx, 0x10(%rax)
movq -0x10(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x14(%rbp)
subl $0x1, %eax
je 0x4d1c
jmp 0x4d05
movl -0x14(%rbp), %eax
addl $-0x2, %eax
subl $0x2, %eax
jb 0x4d63
jmp 0x4d12
movl -0x14(%rbp), %eax
subl $0x4, %eax
je 0x4d54
jmp 0x4d73
movq 0x116c5(%rip), %rdi     # 0x163e8
callq 0x4080
addq $0x1, %rax
movl %eax, %edi
callq 0x4320
movq %rax, %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
movq 0x1169b(%rip), %rsi     # 0x163e8
callq 0x4060
jmp 0x4d7f
movl 0x1169e(%rip), %ecx     # 0x163f8
movq -0x10(%rbp), %rax
movl %ecx, 0x4(%rax)
jmp 0x4d7f
movsbl 0x1167a(%rip), %ecx     # 0x163e4
movq -0x10(%rbp), %rax
movl %ecx, 0x4(%rax)
jmp 0x4d7f
leaq 0xbd47(%rip), %rdi      # 0x10ac1
callq 0x42b0
movq 0x1164a(%rip), %rcx     # 0x163d0
movq -0x10(%rbp), %rax
movq %rcx, 0x20(%rax)
cmpq $0x0, 0x11632(%rip)     # 0x163c8
je 0x4da9
movq -0x10(%rbp), %rcx
movq 0x1162d(%rip), %rax     # 0x163d0
movq %rcx, 0x28(%rax)
jmp 0x4db4
movq -0x10(%rbp), %rax
movq %rax, 0x11614(%rip)     # 0x163c8
movq -0x10(%rbp), %rax
movq %rax, 0x11611(%rip)     # 0x163d0
jmp 0x4ccb
movq 0x115fd(%rip), %rax     # 0x163c8
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x4ea8
movq -0x10(%rbp), %rax
cmpl $0x2, (%rax)
jne 0x4e95
movq -0x10(%rbp), %rax
cmpl $0x7b, 0x4(%rax)
jne 0x4e02
movl 0x11619(%rip), %eax     # 0x16410
addl $0x1, %eax
movl %eax, 0x11610(%rip)     # 0x16410
jmp 0x4e1d
movq -0x10(%rbp), %rax
cmpl $0x7d, 0x4(%rax)
jne 0x4e1b
movl 0x115fe(%rip), %eax     # 0x16410
addl $-0x1, %eax
movl %eax, 0x115f5(%rip)     # 0x16410
jmp 0x4e1d
movq -0x10(%rbp), %rax
cmpl $0x2f, 0x4(%rax)
jne 0x4e93
movq -0x10(%rbp), %rax
cmpq $0x0, 0x28(%rax)
je 0x4e93
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
cmpl $0x2, (%rax)
jne 0x4e93
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
cmpl $0x2f, 0x4(%rax)
jne 0x4e93
cmpl $0x0, 0x10140(%rip)     # 0x14f94
je 0x4e69
movl $0x2, %esi
leaq 0xbc90(%rip), %rdx      # 0x10af2
movl %esi, %edi
callq 0xca50
movq -0x10(%rbp), %rax
cmpq $0x0, 0x20(%rax)
je 0x4e86
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq $0x0, 0x28(%rax)
jmp 0x4e91
movq $0x0, 0x11537(%rip) # 0x163c8
jmp 0x4e93
jmp 0x4e95
jmp 0x4e97
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x4dcf
addq $0x20, %rsp
popq %rbp
retq
nop