// File: /workspace/github_cpp_makefile_star2_O1/gvaumour[P]cache-simulator/src/common.cc
// Function: buildHash[abi:cxx11](unsigned long, unsigned long)
string buildHash(uint64_t a, uint64_t p)
{
	stringstream ss;
	ss << std::hex << a;
   	string addr = ss.str();

	while(addr.size() < 8)
		addr = string(1,'0') + addr;
			
	stringstream ss1;
	ss1 << std::hex << p;
   	string pc = ss1.str();	

	while(pc.size() < 8)
		pc = string(1,'0') + pc;

	return addr + pc;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x398, %rsp            # imm = 0x398
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x210(%rsp), %rdi
callq 0x5210
leaq 0x220(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x238(%rsp,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x238(%rsp,%rax)
movq %r15, %rsi
callq 0x51e0
movq %rbx, 0x40(%rsp)
leaq 0x228(%rsp), %rsi
leaq 0x20(%rsp), %rdi
callq 0x54f0
cmpq $0x7, 0x28(%rsp)
ja 0x2ee23
leaq 0x98(%rsp), %rbx
leaq 0x10(%rsp), %rbp
movq %rsp, %r15
leaq 0x20(%rsp), %r12
leaq 0x88(%rsp), %r13
movq %rbp, (%rsp)
movl $0x1, %esi
movq %r15, %rdi
movl $0x30, %edx
callq 0x5370
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdx
movq %r15, %rdi
callq 0x5100
movq %rbx, 0x88(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x2edcb
movq %rdx, 0x88(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x98(%rsp)
jmp 0x2edd1
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x90(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r12, %rdi
movq %r13, %rsi
callq 0x53e0
movq 0x88(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2ee09
callq 0x52a0
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x2ee17
callq 0x52a0
cmpq $0x8, 0x28(%rsp)
jb 0x2ed77
leaq 0x88(%rsp), %rdi
callq 0x5210
leaq 0x98(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0xb0(%rsp,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0xb0(%rsp,%rax)
movq %r14, %rsi
callq 0x51e0
leaq 0xa0(%rsp), %rsi
movq %rsp, %rdi
callq 0x54f0
cmpq $0x7, 0x8(%rsp)
ja 0x2ef2c
leaq 0x78(%rsp), %r13
leaq 0x58(%rsp), %rbx
leaq 0x68(%rsp), %r14
movq %rsp, %r15
leaq 0x48(%rsp), %r12
movq %r13, 0x68(%rsp)
movl $0x1, %esi
movq %r14, %rdi
movl $0x30, %edx
callq 0x5370
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %r14, %rdi
callq 0x5100
movq %rbx, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x2eed9
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x2eedf
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r15, %rdi
movq %r12, %rsi
callq 0x53e0
movq 0x48(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2ef11
callq 0x52a0
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x2ef20
callq 0x52a0
cmpq $0x8, 0x8(%rsp)
jb 0x2ee8e
leaq 0x20(%rsp), %rsi
movq %rsp, %rdx
movq 0x40(%rsp), %rbx
movq %rbx, %rdi
callq 0x2fc17
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2ef54
callq 0x52a0
movq 0x1603d(%rip), %rsi     # 0x44f98
leaq 0x88(%rsp), %rdi
callq 0x5230
leaq 0x108(%rsp), %rdi
callq 0x5120
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2ef88
callq 0x52a0
movq 0x16009(%rip), %rsi     # 0x44f98
leaq 0x210(%rsp), %rdi
callq 0x5230
leaq 0x290(%rsp), %rdi
callq 0x5120
movq %rbx, %rax
addq $0x398, %rsp            # imm = 0x398
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x2efd0
jmp 0x2efc2
movq %rax, %rbx
jmp 0x2effa
jmp 0x2f01d
jmp 0x2efcb
movq %rax, %rbx
jmp 0x2f046
movq %rax, %rbx
jmp 0x2efe7
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x2efe7
callq 0x52a0
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2effa
callq 0x52a0
movq 0x15f97(%rip), %rsi     # 0x44f98
leaq 0x88(%rsp), %rdi
callq 0x5230
leaq 0x108(%rsp), %rdi
callq 0x5120
jmp 0x2f033
movq %rax, %rbx
jmp 0x2f033
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x2f033
callq 0x52a0
leaq 0x30(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2f046
callq 0x52a0
movq 0x15f4b(%rip), %rsi     # 0x44f98
leaq 0x210(%rsp), %rdi
callq 0x5230
leaq 0x290(%rsp), %rdi
callq 0x5120
movq %rbx, %rdi
callq 0x55a0