// File: pranavmodx[P]modlang/src/ast.cpp
// Function: HashMapLiteral::getStringRepr[abi:cxx11]()
std::string HashMapLiteral::getStringRepr()
{
	std::string res = "{";

	for (auto pair : pairs)
		res += pair.key->getStringRepr() + " : " + pair.value->getStringRepr() + ", ";

	if (pairs.size() != 0)
	{
		res.pop_back();
		res.pop_back();
	}

	res.push_back('}');

	return res;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdi, -0x100(%rbp)
movq %rdi, %rax
movq %rax, -0x110(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x108(%rbp)
movb $0x0, -0x11(%rbp)
leaq -0x12(%rbp), %rdi
movq %rdi, -0xf8(%rbp)
callq 0x54a0
movq -0x100(%rbp), %rdi
movq -0xf8(%rbp), %rdx
leaq 0x2a8cb(%rip), %rsi     # 0x45373
callq 0x134c0
jmp 0x1aaaf
leaq -0x12(%rbp), %rdi
callq 0x52f0
movq -0x108(%rbp), %rax
addq $0x48, %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x1c030
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rdi
callq 0x1c060
movq %rax, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x1c090
testb $0x1, %al
jne 0x1aaf7
jmp 0x1ac87
leaq -0x38(%rbp), %rdi
callq 0x1c0d0
movups (%rax), %xmm0
movaps %xmm0, -0x50(%rbp)
movq -0x50(%rbp), %rsi
movq (%rsi), %rax
movq 0x8(%rax), %rax
leaq -0xd0(%rbp), %rdi
callq *%rax
jmp 0x1ab1d
leaq 0x2a854(%rip), %rdx     # 0x45378
leaq -0xb0(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x1bb10
jmp 0x1ab39
movq -0x48(%rbp), %rsi
movq (%rsi), %rax
movq 0x8(%rax), %rax
leaq -0xf0(%rbp), %rdi
callq *%rax
jmp 0x1ab4f
leaq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
leaq -0xf0(%rbp), %rdx
callq 0x1bb80
jmp 0x1ab6b
leaq 0x2a803(%rip), %rdx     # 0x45375
leaq -0x70(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0x1bb10
jmp 0x1ab84
movq -0x100(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x5370
jmp 0x1ab96
leaq -0x70(%rbp), %rdi
callq 0x5518
leaq -0x90(%rbp), %rdi
callq 0x5518
leaq -0xf0(%rbp), %rdi
callq 0x5518
leaq -0xb0(%rbp), %rdi
callq 0x5518
leaq -0xd0(%rbp), %rdi
callq 0x5518
leaq -0x38(%rbp), %rdi
callq 0x1c0f0
jmp 0x1aae1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x12(%rbp), %rdi
callq 0x52f0
jmp 0x1acfa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x1acee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x1ac79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x1ac6d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x1ac61
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x1ac55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x70(%rbp), %rdi
callq 0x5518
leaq -0x90(%rbp), %rdi
callq 0x5518
leaq -0xf0(%rbp), %rdi
callq 0x5518
leaq -0xb0(%rbp), %rdi
callq 0x5518
leaq -0xd0(%rbp), %rdi
callq 0x5518
jmp 0x1acee
movq -0x108(%rbp), %rdi
addq $0x48, %rdi
callq 0x1c110
cmpq $0x0, %rax
je 0x1acb5
movq -0x100(%rbp), %rdi
callq 0x5330
movq -0x100(%rbp), %rdi
callq 0x5330
movq -0x100(%rbp), %rdi
movl $0x7d, %esi
callq 0x5230
jmp 0x1acc8
movb $0x1, -0x11(%rbp)
testb $0x1, -0x11(%rbp)
jne 0x1acde
movq -0x100(%rbp), %rdi
callq 0x5518
movq -0x110(%rbp), %rax
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
movq -0x100(%rbp), %rdi
callq 0x5518
movq -0x20(%rbp), %rdi
callq 0x5490
nopw %cs:(%rax,%rax)