// File: gvaumour[P]cache-simulator/src/HybridCache.cc
// Function: HybridCache::printConfig(std::ostream&)
void
HybridCache::printConfig(std::ostream& out) 
{		
	string entete = "Cache";
	if(m_ID != -1){
		entete+="L1";
		if(m_isInstructionCache)
		 	entete += "I";
		else
			entete += "D";
	}
	else
		entete+= "LLC";

	out << entete << ":Size\t" << m_cache_size << endl;
	out << entete << ":SRAMways\t" << m_nbSRAMways << endl;
	out << entete << ":NVMways\t" << m_nbNVMways << endl;
	out << entete << ":Blocksize\t" << m_blocksize << endl;
	out << entete << ":Sets    \t" << m_nb_set << endl;
	out << entete << ":Predictor\t" << m_policy << endl;
	m_predictor->printConfig(out,entete);
	out << "************************" << endl;
}

// Assembly:
subq $0x128, %rsp            # imm = 0x128
movq %rdi, 0x120(%rsp)
movq %rsi, 0x118(%rsp)
movq 0x120(%rsp), %rax
movq %rax, 0xb0(%rsp)
leaq 0xf7(%rsp), %rdi
movq %rdi, 0xb8(%rsp)
callq 0x56a0
movq 0xb8(%rsp), %rdx
leaq 0x35d08(%rip), %rsi     # 0x72873
leaq 0xf8(%rsp), %rdi
callq 0x5530
jmp 0x3cb7a
leaq 0xf7(%rsp), %rdi
callq 0x53e0
movq 0xb0(%rsp), %rax
cmpl $-0x1, (%rax)
je 0x3cc2d
leaq 0x374a8(%rip), %rsi     # 0x74047
leaq 0xf8(%rsp), %rdi
callq 0x5360
jmp 0x3cbae
movq 0xb0(%rsp), %rax
testb $0x1, 0x4(%rax)
je 0x3cc13
leaq 0x3606d(%rip), %rsi     # 0x72c30
leaq 0xf8(%rsp), %rdi
callq 0x5360
jmp 0x3cbd2
jmp 0x3cc2b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe8(%rsp)
movl %eax, 0xe4(%rsp)
leaq 0xf7(%rsp), %rdi
callq 0x53e0
jmp 0x3cf9b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe8(%rsp)
movl %eax, 0xe4(%rsp)
jmp 0x3cf8e
leaq 0x34e6e(%rip), %rsi     # 0x71a88
leaq 0xf8(%rsp), %rdi
callq 0x5360
jmp 0x3cc29
jmp 0x3cc2b
jmp 0x3cc45
leaq 0x37464(%rip), %rsi     # 0x74098
leaq 0xf8(%rsp), %rdi
callq 0x5360
jmp 0x3cc43
jmp 0x3cc45
movq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5330
movq %rax, 0xa8(%rsp)
jmp 0x3cc64
movq 0xa8(%rsp), %rdi
leaq 0x35fbf(%rip), %rsi     # 0x72c32
callq 0x5380
movq %rax, 0xa0(%rsp)
jmp 0x3cc82
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rax
movl 0x9c(%rax), %esi
callq 0x5680
movq %rax, 0x98(%rsp)
jmp 0x3cca7
movq 0x98(%rsp), %rdi
movq 0x56302(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3ccbd
movq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5330
movq %rax, 0x90(%rsp)
jmp 0x3ccdc
movq 0x90(%rsp), %rdi
leaq 0x35f4e(%rip), %rsi     # 0x72c39
callq 0x5380
movq %rax, 0x88(%rsp)
jmp 0x3ccfa
movq 0x88(%rsp), %rdi
movq 0xb0(%rsp), %rax
movl 0xa8(%rax), %esi
callq 0x5680
movq %rax, 0x80(%rsp)
jmp 0x3cd1f
movq 0x80(%rsp), %rdi
movq 0x5628a(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3cd35
movq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5330
movq %rax, 0x78(%rsp)
jmp 0x3cd51
movq 0x78(%rsp), %rdi
leaq 0x35ee7(%rip), %rsi     # 0x72c44
callq 0x5380
movq %rax, 0x70(%rsp)
jmp 0x3cd69
movq 0x70(%rsp), %rdi
movq 0xb0(%rsp), %rax
movl 0xa4(%rax), %esi
callq 0x5680
movq %rax, 0x68(%rsp)
jmp 0x3cd88
movq 0x68(%rsp), %rdi
movq 0x56224(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3cd9b
movq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5330
movq %rax, 0x60(%rsp)
jmp 0x3cdb7
movq 0x60(%rsp), %rdi
leaq 0x35e8b(%rip), %rsi     # 0x72c4e
callq 0x5380
movq %rax, 0x58(%rsp)
jmp 0x3cdcf
movq 0x58(%rsp), %rdi
movq 0xb0(%rsp), %rax
movl 0xb0(%rax), %esi
callq 0x5680
movq %rax, 0x50(%rsp)
jmp 0x3cdee
movq 0x50(%rsp), %rdi
movq 0x561be(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3ce01
movq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5330
movq %rax, 0x48(%rsp)
jmp 0x3ce1d
movq 0x48(%rsp), %rdi
leaq 0x35e31(%rip), %rsi     # 0x72c5a
callq 0x5380
movq %rax, 0x40(%rsp)
jmp 0x3ce35
movq 0x40(%rsp), %rdi
movq 0xb0(%rsp), %rax
movl 0xac(%rax), %esi
callq 0x5680
movq %rax, 0x38(%rsp)
jmp 0x3ce54
movq 0x38(%rsp), %rdi
movq 0x56158(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3ce67
movq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5330
movq %rax, 0x30(%rsp)
jmp 0x3ce83
movq 0x30(%rsp), %rdi
leaq 0x35dd6(%rip), %rsi     # 0x72c65
callq 0x5380
movq %rax, 0x28(%rsp)
jmp 0x3ce9b
movq 0x28(%rsp), %rdi
movq 0xb0(%rsp), %rsi
addq $0x70, %rsi
callq 0x5330
movq %rax, 0x20(%rsp)
jmp 0x3ceb8
movq 0x20(%rsp), %rdi
movq 0x560f4(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3cecb
movq 0xb0(%rsp), %rax
movq 0x68(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x118(%rsp), %rax
movq %rax, 0x18(%rsp)
leaq 0xc0(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x51b0
jmp 0x3cf00
movq 0x18(%rsp), %rsi
movq 0x10(%rsp), %rdi
movq (%rdi), %rax
movq 0x30(%rax), %rax
leaq 0xc0(%rsp), %rdx
callq *%rax
jmp 0x3cf1d
leaq 0xc0(%rsp), %rdi
callq 0x5768
movq 0x118(%rsp), %rdi
leaq 0x35fec(%rip), %rsi     # 0x72f25
callq 0x5380
movq %rax, 0x8(%rsp)
jmp 0x3cf45
movq 0x8(%rsp), %rdi
movq 0x56067(%rip), %rsi     # 0x92fb8
callq 0x53d0
jmp 0x3cf58
leaq 0xf8(%rsp), %rdi
callq 0x5768
addq $0x128, %rsp            # imm = 0x128
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe8(%rsp)
movl %eax, 0xe4(%rsp)
leaq 0xc0(%rsp), %rdi
callq 0x5768
leaq 0xf8(%rsp), %rdi
callq 0x5768
movq 0xe8(%rsp), %rdi
callq 0x5690
nopl (%rax,%rax)