// File: /workspace/github_cpp_makefile_star2_O1/pranavmodx[P]modlang/src/parser.cpp
// Function: Parser::Parser()
Parser::Parser()
{
	precedences =
		{
			{EQ, EQUALS},
			{NEQ, EQUALS},
			{LTEQ, EQUALS},
			{GTEQ, EQUALS},
			{LT, LESSGREATER},
			{GT, LESSGREATER},
			{PLUS, SUM},
			{MINUS, SUM},
			{SLASH, PRODUCT},
			{ASTERISK, PRODUCT},
			{MODULO, PRODUCT},
			{LPAREN, CALL},
			{LBRACKET, INDEX},
		};
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x238, %rsp            # imm = 0x238
movq %rdi, %rbx
leaq 0x10(%rdi), %r13
movq %r13, (%rdi)
xorl %eax, %eax
movq %rax, 0x8(%rdi)
movb %al, 0x10(%rdi)
leaq 0x40(%rdi), %rcx
movq %rcx, 0x30(%rdi)
movq %rax, 0x38(%rdi)
movb %al, 0x40(%rdi)
leaq 0x60(%rdi), %rcx
movq %rcx, 0x50(%rdi)
movq %rax, 0x58(%rdi)
movb %al, 0x60(%rdi)
leaq 0x80(%rdi), %rcx
movq %rcx, 0x70(%rdi)
movq %rax, 0x78(%rdi)
movb %al, 0x80(%rdi)
leaq 0xa0(%rdi), %rcx
movq %rcx, 0x90(%rdi)
movq %rax, 0x98(%rdi)
movb %al, 0xa0(%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0xb0(%rdi)
movq %rax, 0xc0(%rdi)
leaq 0xc8(%rdi), %r14
leaq 0xf8(%rdi), %rax
movq %rax, 0xc8(%rdi)
movl $0x1, %eax
movq %rax, 0xd0(%rdi)
movups %xmm0, 0xd8(%rdi)
movl $0x3f800000, %ecx       # imm = 0x3F800000
movl %ecx, 0xe8(%rdi)
movups %xmm0, 0xf0(%rdi)
leaq 0x130(%rdi), %rdx
movq %rdx, 0x100(%rdi)
movq %rax, 0x108(%rdi)
movups %xmm0, 0x110(%rdi)
movl %ecx, 0x120(%rdi)
movups %xmm0, 0x128(%rdi)
leaq 0x168(%rdi), %rdx
movq %rdx, 0x138(%rdi)
movq %rax, 0x140(%rdi)
movups %xmm0, 0x148(%rdi)
movl %ecx, 0x158(%rdi)
movups %xmm0, 0x160(%rdi)
leaq 0x40(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x234e1(%rip), %rsi     # 0x36ab0
movq 0x234e2(%rip), %rdx     # 0x36ab8
addq %rsi, %rdx
leaq 0x30(%rsp), %r12
movq %r12, %rdi
callq 0xbde8
leaq 0x58(%rsp), %r15
movl $0x1, -0x8(%r15)
leaq 0x68(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x234cd(%rip), %rsi     # 0x36ad0
movq 0x234ce(%rip), %rdx     # 0x36ad8
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x80(%rsp), %r15
movl $0x1, -0x8(%r15)
leaq 0x90(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x23438(%rip), %rsi     # 0x36a70
movq 0x23439(%rip), %rdx     # 0x36a78
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0xa8(%rsp), %r15
movl $0x1, -0x8(%r15)
leaq 0xb8(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x23423(%rip), %rsi     # 0x36a90
movq 0x23424(%rip), %rdx     # 0x36a98
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0xd0(%rsp), %r15
movl $0x1, -0x8(%r15)
leaq 0xe0(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x2338e(%rip), %rsi     # 0x36a30
movq 0x2338f(%rip), %rdx     # 0x36a38
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0xf8(%rsp), %r15
movl $0x2, -0x8(%r15)
leaq 0x108(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x23379(%rip), %rsi     # 0x36a50
movq 0x2337a(%rip), %rdx     # 0x36a58
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x120(%rsp), %r15
movl $0x2, -0x8(%r15)
leaq 0x130(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x23264(%rip), %rsi     # 0x36970
movq 0x23265(%rip), %rdx     # 0x36978
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x148(%rsp), %r15
movl $0x3, -0x8(%r15)
leaq 0x158(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x2324f(%rip), %rsi     # 0x36990
movq 0x23250(%rip), %rdx     # 0x36998
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x170(%rsp), %r15
movl $0x3, -0x8(%r15)
leaq 0x180(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x2327a(%rip), %rsi     # 0x369f0
movq 0x2327b(%rip), %rdx     # 0x369f8
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x198(%rsp), %r15
movl $0x4, -0x8(%r15)
leaq 0x1a8(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x23225(%rip), %rsi     # 0x369d0
movq 0x23226(%rip), %rdx     # 0x369d8
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x1c0(%rsp), %r15
movl $0x4, -0x8(%r15)
leaq 0x1d0(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x23230(%rip), %rsi     # 0x36a10
movq 0x23231(%rip), %rdx     # 0x36a18
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x1e8(%rsp), %r15
movl $0x4, -0x8(%r15)
leaq 0x1f8(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x2333b(%rip), %rsi     # 0x36b50
movq 0x2333c(%rip), %rdx     # 0x36b58
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x210(%rsp), %r15
movl $0x6, -0x8(%r15)
leaq 0x220(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq 0x23386(%rip), %rsi     # 0x36bd0
movq 0x23387(%rip), %rdx     # 0x36bd8
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbde8
leaq 0x30(%rsp), %rsi
movl $0x7, 0x200(%rsi)
movl $0xd, %edx
movq %r14, %rdi
callq 0x175f6
movq $-0x208, %rbx           # imm = 0xFDF8
movq -0x10(%rbp), %rdi
cmpq %rdi, %rbp
je 0x13894
movq (%rbp), %rsi
incq %rsi
callq 0x51c0
addq $-0x28, %rbp
addq $0x28, %rbx
jne 0x1387f
addq $0x238, %rsp            # imm = 0x238
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, 0x8(%rsp)
leaq 0x238(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x5391
movb $0x1, %al
jmp 0x138e8
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
jmp 0x138e1
movq %rax, 0x8(%rsp)
xorl %eax, %eax
leaq 0x30(%rbx), %rcx
movq %rcx, 0x28(%rsp)
leaq 0x70(%rbx), %rcx
movq %rcx, 0x20(%rsp)
leaq 0xb0(%rbx), %rcx
movq %rcx, 0x18(%rsp)
leaq 0x100(%rbx), %rcx
movq %rcx, 0x10(%rsp)
leaq 0x138(%rbx), %rbp
cmpq %r15, %r12
sete %cl
orb %al, %cl
jne 0x13949
leaq 0x30(%rsp), %r12
movq -0x28(%r15), %rdi
leaq -0x18(%r15), %rax
cmpq %rdi, %rax
je 0x13940
movq (%rax), %rsi
incq %rsi
callq 0x51c0
addq $-0x28, %r15
cmpq %r12, %r15
jne 0x13928
movq %rbp, %rdi
callq 0xbc04
movq 0x10(%rsp), %rdi
callq 0xbcac
movq %r14, %rdi
callq 0xbd4a
movq 0x18(%rsp), %rdi
callq 0xbaf0
movq 0x20(%rsp), %rdi
callq 0xe758
movq 0x28(%rsp), %rdi
callq 0xe758
movq (%rbx), %rdi
cmpq %r13, %rdi
je 0x13995
movq (%r13), %rsi
incq %rsi
callq 0x51c0
movq 0x8(%rsp), %rdi
callq 0x5330
movq %rax, 0x8(%rsp)
xorl %eax, %eax
movq %r12, %r15
jmp 0x138e8