// File: dramninjasUMD[P]BOBSim/BusPacket.cpp
// Function: BOBSim::BusPacket::PrintVerification(unsigned long)
void BusPacket::PrintVerification(uint64_t currentCycle)
{
	switch(busPacketType)
	{
	case ACTIVATE:
		verificationOutput << currentCycle <<": activate (" << rank << "," << bank << "," << row <<");"<<endl;
		break;
	case READ_P:
		verificationOutput << currentCycle << ": read ("<<rank<<","<<bank<<","<<column<<",1,0);"<<endl;
		break;
	case WRITE_P:
		verificationOutput << currentCycle << ": write ("<<rank<<","<<bank<<","<<column<<",1,0,'h0);"<<endl;
		break;
	case REFRESH:
		verificationOutput << currentCycle <<": refresh (" << rank << ");"<<endl;
		break;
	case WRITE_DATA:

		break;
	default:
		ERROR("== Error - Unsupported bus packet type in verification");
		exit(0);
		break;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movl 0x4(%rax), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x18(%rbp)
subl $0x7, %eax
ja 0x18f17
movq -0x18(%rbp), %rax
leaq 0x12751(%rip), %rcx     # 0x2b468
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x10(%rbp), %rsi
leaq 0x1f89d(%rip), %rdi     # 0x385c8
callq 0x3070
movq %rax, %rdi
leaq 0x12772(%rip), %rsi     # 0x2b4ac
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x14(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x11b9f(%rip), %rsi     # 0x2a8f7
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x10(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x11b81(%rip), %rsi     # 0x2a8f7
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0xc(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x12732(%rip), %rsi     # 0x2b4c6
callq 0x31c0
movq %rax, %rdi
movq 0x1f205(%rip), %rsi     # 0x37fa8
callq 0x3200
jmp 0x18f89
movq -0x10(%rbp), %rsi
leaq 0x1f810(%rip), %rdi     # 0x385c8
callq 0x3070
movq %rax, %rdi
leaq 0x126f2(%rip), %rsi     # 0x2b4b9
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x14(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x11b12(%rip), %rsi     # 0x2a8f7
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x10(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x11af4(%rip), %rsi     # 0x2a8f7
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x8(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x126a1(%rip), %rsi     # 0x2b4c2
callq 0x31c0
movq %rax, %rdi
movq 0x1f178(%rip), %rsi     # 0x37fa8
callq 0x3200
jmp 0x18f89
movq -0x10(%rbp), %rsi
leaq 0x1f783(%rip), %rdi     # 0x385c8
callq 0x3070
movq %rax, %rdi
leaq 0x12675(%rip), %rsi     # 0x2b4c9
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x14(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x11a85(%rip), %rsi     # 0x2a8f7
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x10(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x11a67(%rip), %rsi     # 0x2a8f7
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x8(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x12625(%rip), %rsi     # 0x2b4d3
callq 0x31c0
movq %rax, %rdi
movq 0x1f0eb(%rip), %rsi     # 0x37fa8
callq 0x3200
jmp 0x18f89
movq -0x10(%rbp), %rsi
leaq 0x1f6f6(%rip), %rdi     # 0x385c8
callq 0x3070
movq %rax, %rdi
leaq 0x125fd(%rip), %rsi     # 0x2b4de
callq 0x31c0
movq %rax, %rdi
movq -0x20(%rbp), %rax
movl 0x14(%rax), %esi
callq 0x32d0
movq %rax, %rdi
leaq 0x125c7(%rip), %rsi     # 0x2b4c6
callq 0x31c0
movq %rax, %rdi
movq 0x1f09a(%rip), %rsi     # 0x37fa8
callq 0x3200
jmp 0x18f89
jmp 0x18f89
movq 0x1f0d2(%rip), %rdi     # 0x37ff0
leaq 0x111eb(%rip), %rsi     # 0x2a110
callq 0x31c0
movq %rax, %rdi
leaq 0x125b6(%rip), %rsi     # 0x2b4ea
callq 0x31c0
movq %rax, %rdi
leaq 0x11176(%rip), %rsi     # 0x2a0b9
callq 0x31c0
movq %rax, %rdi
movl $0x58, %esi
callq 0x3380
movq %rax, %rdi
leaq 0x111c2(%rip), %rsi     # 0x2a121
callq 0x31c0
movq %rax, %rdi
leaq 0x1258a(%rip), %rsi     # 0x2b4f8
callq 0x31c0
movq %rax, %rdi
movq 0x1f02b(%rip), %rsi     # 0x37fa8
callq 0x3200
xorl %edi, %edi
callq 0x3270
addq $0x20, %rsp
popq %rbp
retq
nop