// File: /workspace/github_cpp_makefile_star2_O2/CMU-SAFARI[P]MQSim/src/exec/Host_Parameter_Set.cpp
// Function: Host_Parameter_Set::XML_serialize(Utils::XmlWriter&)
void Host_Parameter_Set::XML_serialize(Utils::XmlWriter& xmlwriter)
{
	std::string tmp;
	tmp = "Host_Parameter_Set";
	xmlwriter.Write_open_tag(tmp);

	std::string attr = "PCIe_Lane_Bandwidth";
	std::string val = std::to_string(PCIe_Lane_Bandwidth);
	xmlwriter.Write_attribute_string(attr, val);

	attr = "PCIe_Lane_Count";
	val = std::to_string(PCIe_Lane_Count);
	xmlwriter.Write_attribute_string(attr, val);

	attr = "SATA_Processing_Delay";
	val = std::to_string(SATA_Processing_Delay);
	xmlwriter.Write_attribute_string(attr, val);

	attr = "Enable_ResponseTime_Logging";
	val = (Enable_ResponseTime_Logging ? "true" : "false");
	xmlwriter.Write_attribute_string(attr, val);

	attr = "ResponseTime_Logging_Period_Length";
	val = std::to_string(ResponseTime_Logging_Period_Length);
	xmlwriter.Write_attribute_string(attr, val);

	xmlwriter.Write_close_tag();
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x1e8, %rsp            # imm = 0x1E8
movq %rsi, %rbx
leaq 0x78(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq 0x34690(%rip), %rsi     # 0x44ac9
leaq 0x68(%rsp), %rdi
callq 0x7640
leaq 0x1c8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x7480
leaq 0x1c8(%rsp), %rsi
movq %rbx, %rdi
callq 0x419e0
leaq 0x1c8(%rsp), %rdi
callq 0x7678
leaq 0x34907(%rip), %rsi     # 0x44d80
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x7150
movsd 0x51fd8(%rip), %xmm0    # 0x62468
leaq 0x8(%rsp), %rdi
callq 0xe7cc
leaq 0x1a8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x7480
leaq 0x188(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x7480
leaq 0x1a8(%rsp), %rsi
leaq 0x188(%rsp), %rdx
movq %rbx, %rdi
callq 0x41adc
leaq 0x188(%rsp), %rdi
callq 0x7678
leaq 0x1a8(%rsp), %rdi
callq 0x7678
leaq 0x3489d(%rip), %rsi     # 0x44d94
leaq 0x28(%rsp), %rdi
callq 0x7640
movl 0x51f69(%rip), %esi     # 0x62470
leaq 0x48(%rsp), %rdi
callq 0xe74b
leaq 0x8(%rsp), %rdi
leaq 0x48(%rsp), %r14
movq %r14, %rsi
callq 0x73f0
movq %r14, %rdi
callq 0x7678
leaq 0x168(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x7480
leaq 0x148(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x7480
leaq 0x168(%rsp), %rsi
leaq 0x148(%rsp), %rdx
movq %rbx, %rdi
callq 0x41adc
leaq 0x148(%rsp), %rdi
callq 0x7678
leaq 0x168(%rsp), %rdi
callq 0x7678
leaq 0x3481c(%rip), %rsi     # 0x44da4
leaq 0x28(%rsp), %rdi
callq 0x7640
movq 0x51f9f(%rip), %rsi     # 0x62538
leaq 0x48(%rsp), %rdi
callq 0xe78a
leaq 0x8(%rsp), %rdi
leaq 0x48(%rsp), %r14
movq %r14, %rsi
callq 0x73f0
movq %r14, %rdi
callq 0x7678
leaq 0x128(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x7480
leaq 0x108(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x7480
leaq 0x128(%rsp), %rsi
leaq 0x108(%rsp), %rdx
movq %rbx, %rdi
callq 0x41adc
leaq 0x108(%rsp), %rdi
callq 0x7678
leaq 0x128(%rsp), %rdi
callq 0x7678
leaq 0x347a0(%rip), %rsi     # 0x44dba
leaq 0x28(%rsp), %rdi
callq 0x7640
leaq 0x33aef(%rip), %rax     # 0x4411a
leaq 0x33aed(%rip), %rsi     # 0x4411f
cmpb $0x0, 0x51f07(%rip)     # 0x62540
cmovneq %rax, %rsi
leaq 0x8(%rsp), %rdi
callq 0x7640
leaq 0xe8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x7480
leaq 0xc8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x7480
leaq 0xe8(%rsp), %rsi
leaq 0xc8(%rsp), %rdx
movq %rbx, %rdi
callq 0x41adc
leaq 0xc8(%rsp), %rdi
callq 0x7678
leaq 0xe8(%rsp), %rdi
callq 0x7678
leaq 0x34732(%rip), %rsi     # 0x44dd6
leaq 0x28(%rsp), %rdi
callq 0x7640
movq 0x51dc3(%rip), %rsi     # 0x62478
leaq 0x48(%rsp), %rdi
callq 0xe78a
leaq 0x8(%rsp), %rdi
leaq 0x48(%rsp), %r14
movq %r14, %rsi
callq 0x73f0
movq %r14, %rdi
callq 0x7678
leaq 0xa8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x7480
leaq 0x88(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x7480
leaq 0xa8(%rsp), %rsi
leaq 0x88(%rsp), %rdx
movq %rbx, %rdi
callq 0x41adc
leaq 0x88(%rsp), %rdi
callq 0x7678
leaq 0xa8(%rsp), %rdi
callq 0x7678
movq %rbx, %rdi
callq 0x41c5c
leaq 0x8(%rsp), %rdi
callq 0x7678
leaq 0x28(%rsp), %rdi
callq 0x7678
leaq 0x68(%rsp), %rdi
callq 0x7678
addq $0x1e8, %rsp            # imm = 0x1E8
popq %rbx
popq %r14
retq
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x7678
jmp 0x10775
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
jmp 0x10805
jmp 0x10825
movq %rax, %rbx
leaq 0xc8(%rsp), %rdi
callq 0x7678
jmp 0x1079c
movq %rax, %rbx
leaq 0xe8(%rsp), %rdi
jmp 0x10805
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x7678
jmp 0x107bb
movq %rax, %rbx
leaq 0x128(%rsp), %rdi
jmp 0x10805
jmp 0x10825
movq %rax, %rbx
leaq 0x148(%rsp), %rdi
callq 0x7678
jmp 0x107dc
movq %rax, %rbx
leaq 0x168(%rsp), %rdi
jmp 0x10805
jmp 0x10825
movq %rax, %rbx
leaq 0x188(%rsp), %rdi
callq 0x7678
jmp 0x107fd
movq %rax, %rbx
leaq 0x1a8(%rsp), %rdi
callq 0x7678
jmp 0x10828
movq %rax, %rbx
jmp 0x10832
jmp 0x10820
movq %rax, %rbx
leaq 0x1c8(%rsp), %rdi
jmp 0x10837
movq %rax, %rbx
jmp 0x1083c
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x7678
leaq 0x28(%rsp), %rdi
callq 0x7678
leaq 0x68(%rsp), %rdi
callq 0x7678
movq %rbx, %rdi
callq 0x75d0