// File: NishadSaraf[P]Championship-Simulator/inc/memory_class.h
// Function: MEMORY::MEMORY()
MEMORY() {
        for (uint32_t i=0; i<NUM_TYPES; i++) {
            ACCESS[i] = 0;
            HIT[i] = 0;
            MISS[i] = 0;
            MSHR_MERGED[i] = 0;
            STALL[i] = 0;
        }
    }

// Assembly:
subq $0x108, %rsp            # imm = 0x108
movq %rdi, 0x100(%rsp)
movq 0x100(%rsp), %rax
movq %rax, 0x38(%rsp)
leaq 0xb8f5(%rip), %rcx      # 0x28cf8
movq %rcx, (%rax)
addq $0x28, %rax
movq %rax, 0x40(%rsp)
leaq 0xdf(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x33d0
movq 0x48(%rsp), %rdx
leaq 0x6b33(%rip), %rsi      # 0x23f60
leaq 0xe0(%rsp), %rdi
callq 0x32e0
jmp 0x1d43c
movq 0x40(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
movl $0x1, %edx
callq 0x1d800
jmp 0x1d455
leaq 0xe0(%rsp), %rdi
callq 0x3150
leaq 0xdf(%rsp), %rdi
callq 0x3260
movq 0x38(%rsp), %rax
addq $0x1cc8, %rax           # imm = 0x1CC8
movq %rax, 0x28(%rsp)
leaq 0xa7(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0x33d0
movq 0x30(%rsp), %rdx
leaq 0x6ac3(%rip), %rsi      # 0x23f60
leaq 0xa8(%rsp), %rdi
callq 0x32e0
jmp 0x1d4ac
movq 0x28(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
movl $0x1, %edx
callq 0x1d800
jmp 0x1d4c5
leaq 0xa8(%rsp), %rdi
callq 0x3150
leaq 0xa7(%rsp), %rdi
callq 0x3260
movq 0x38(%rsp), %rax
addq $0x3968, %rax           # imm = 0x3968
movq %rax, 0x18(%rsp)
leaq 0x7f(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x33d0
movq 0x20(%rsp), %rdx
leaq 0x6a56(%rip), %rsi      # 0x23f60
leaq 0x80(%rsp), %rdi
callq 0x32e0
jmp 0x1d519
movq 0x18(%rsp), %rdi
leaq 0x80(%rsp), %rsi
movl $0x1, %edx
callq 0x1d800
jmp 0x1d532
leaq 0x80(%rsp), %rdi
callq 0x3150
leaq 0x7f(%rsp), %rdi
callq 0x3260
movq 0x38(%rsp), %rax
addq $0x5608, %rax           # imm = 0x5608
movq %rax, 0x8(%rsp)
leaq 0x57(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x33d0
movq 0x10(%rsp), %rdx
leaq 0x69ec(%rip), %rsi      # 0x23f60
leaq 0x58(%rsp), %rdi
callq 0x32e0
jmp 0x1d580
movq 0x8(%rsp), %rdi
leaq 0x58(%rsp), %rsi
movl $0x1, %edx
callq 0x1d800
jmp 0x1d596
leaq 0x58(%rsp), %rdi
callq 0x3150
leaq 0x57(%rsp), %rdi
callq 0x3260
movl $0x0, 0x50(%rsp)
cmpl $0x4, 0x50(%rsp)
jae 0x1d73e
movq 0x38(%rsp), %rax
movl 0x50(%rsp), %ecx
movq $0x0, 0x72a8(%rax,%rcx,8)
movl 0x50(%rsp), %ecx
movq $0x0, 0x72c8(%rax,%rcx,8)
movl 0x50(%rsp), %ecx
movq $0x0, 0x72e8(%rax,%rcx,8)
movl 0x50(%rsp), %ecx
movq $0x0, 0x7308(%rax,%rcx,8)
movl 0x50(%rsp), %ecx
movq $0x0, 0x7328(%rax,%rcx,8)
movl 0x50(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x50(%rsp)
jmp 0x1d5b2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
jmp 0x1d656
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
leaq 0xe0(%rsp), %rdi
callq 0x3150
leaq 0xdf(%rsp), %rdi
callq 0x3260
jmp 0x1d75a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
jmp 0x1d69f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
leaq 0xa8(%rsp), %rdi
callq 0x3150
leaq 0xa7(%rsp), %rdi
callq 0x3260
jmp 0x1d750
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
jmp 0x1d6e8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
leaq 0x80(%rsp), %rdi
callq 0x3150
leaq 0x7f(%rsp), %rdi
callq 0x3260
jmp 0x1d746
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
jmp 0x1d728
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd0(%rsp)
movl %eax, 0xcc(%rsp)
leaq 0x58(%rsp), %rdi
callq 0x3150
leaq 0x57(%rsp), %rdi
callq 0x3260
movq 0x18(%rsp), %rdi
callq 0x1da80
jmp 0x1d746
addq $0x108, %rsp            # imm = 0x108
retq
movq 0x28(%rsp), %rdi
callq 0x1da80
movq 0x40(%rsp), %rdi
callq 0x1da80
movq 0xd0(%rsp), %rdi
callq 0x33c0
nopw (%rax,%rax)