// File: CMU-SAFARI[P]MQSim/src/ssd/Host_Interface_NVMe.cpp
// Function: SSD_Components::Host_Interface_NVMe::Report_results_in_XML(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, Utils::XmlWriter&)
void Host_Interface_NVMe::Report_results_in_XML(std::string name_prefix, Utils::XmlWriter &xmlwriter)
{
	std::string tmp = name_prefix + ".HostInterface";
	xmlwriter.Write_open_tag(tmp);

	std::string attr = "Name";
	std::string val = ID();
	xmlwriter.Write_attribute_string(attr, val);

	for (unsigned int stream_id = 0; stream_id < no_of_input_streams; stream_id++)
	{
		std::string tmp = name_prefix + ".IO_Stream";
		xmlwriter.Write_open_tag(tmp);

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

		attr = "Average_Read_Transaction_Turnaround_Time";
		val = std::to_string(input_stream_manager->Get_average_read_transaction_turnaround_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Read_Transaction_Execution_Time";
		val = std::to_string(input_stream_manager->Get_average_read_transaction_execution_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Read_Transaction_Transfer_Time";
		val = std::to_string(input_stream_manager->Get_average_read_transaction_transfer_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Read_Transaction_Waiting_Time";
		val = std::to_string(input_stream_manager->Get_average_read_transaction_waiting_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Write_Transaction_Turnaround_Time";
		val = std::to_string(input_stream_manager->Get_average_write_transaction_turnaround_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Write_Transaction_Execution_Time";
		val = std::to_string(input_stream_manager->Get_average_write_transaction_execution_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Write_Transaction_Transfer_Time";
		val = std::to_string(input_stream_manager->Get_average_write_transaction_transfer_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		attr = "Average_Write_Transaction_Waiting_Time";
		val = std::to_string(input_stream_manager->Get_average_write_transaction_waiting_time(stream_id));
		xmlwriter.Write_attribute_string(attr, val);

		xmlwriter.Write_close_tag();
	}

	xmlwriter.Write_close_tag();
}

// Assembly:
subq $0x5a8, %rsp            # imm = 0x5A8
movq %rsi, 0xf0(%rsp)
movq %rdi, 0x5a0(%rsp)
movq %rsi, 0x598(%rsp)
movq %rdx, 0x590(%rsp)
movq 0x5a0(%rsp), %rax
movq %rax, 0xf8(%rsp)
leaq 0x249f2(%rip), %rdx     # 0xab8c0
leaq 0x570(%rsp), %rdi
movq %rdi, 0x100(%rsp)
callq 0x1fe40
movq 0x100(%rsp), %rsi
movq 0x590(%rsp), %rax
movq %rax, 0x108(%rsp)
leaq 0x550(%rsp), %rdi
callq 0x81a0
jmp 0x86f0a
movq 0x108(%rsp), %rdi
leaq 0x550(%rsp), %rsi
callq 0xa7d60
jmp 0x86f21
leaq 0x550(%rsp), %rdi
callq 0x8848
leaq 0x51f(%rsp), %rdi
movq %rdi, 0xe8(%rsp)
callq 0x8780
movq 0xe8(%rsp), %rdx
leaq 0x24c4e(%rip), %rsi     # 0xabba0
leaq 0x520(%rsp), %rdi
callq 0x85d0
jmp 0x86f61
leaq 0x51f(%rsp), %rdi
callq 0x84a0
movq 0xf8(%rsp), %rsi
leaq 0x4f8(%rsp), %rdi
callq 0xcdf0
jmp 0x86f85
movq 0x590(%rsp), %rax
movq %rax, 0xe0(%rsp)
leaq 0x4d8(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x86fac
leaq 0x4b8(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x86fc3
movq 0xe0(%rsp), %rdi
leaq 0x4d8(%rsp), %rsi
leaq 0x4b8(%rsp), %rdx
callq 0xa7eb0
jmp 0x86fe2
leaq 0x4b8(%rsp), %rdi
callq 0x8848
leaq 0x4d8(%rsp), %rdi
callq 0x8848
movl $0x0, 0x4b4(%rsp)
movq 0xf8(%rsp), %rcx
movl 0x4b4(%rsp), %eax
cmpl 0x8c(%rcx), %eax
jae 0x87c5f
movq 0xf0(%rsp), %rsi
leaq 0x27290(%rip), %rdx     # 0xae2c1
leaq 0x490(%rsp), %rdi
callq 0x1fe40
jmp 0x87040
movq 0x590(%rsp), %rax
movq %rax, 0xd8(%rsp)
leaq 0x470(%rsp), %rdi
leaq 0x490(%rsp), %rsi
callq 0x81a0
jmp 0x87067
movq 0xd8(%rsp), %rdi
leaq 0x470(%rsp), %rsi
callq 0xa7d60
jmp 0x8707e
leaq 0x470(%rsp), %rdi
callq 0x8848
leaq 0x2723a(%rip), %rsi     # 0xae2cc
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x870a1
movl 0x4b4(%rsp), %esi
leaq 0x450(%rsp), %rdi
callq 0x18f30
jmp 0x870b7
leaq 0x4f8(%rsp), %rdi
leaq 0x450(%rsp), %rsi
movq %rsi, 0xc8(%rsp)
callq 0x8510
movq 0xc8(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0xd0(%rsp)
leaq 0x430(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x87108
leaq 0x410(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x8711f
movq 0xd0(%rsp), %rdi
leaq 0x430(%rsp), %rsi
leaq 0x410(%rsp), %rdx
callq 0xa7eb0
jmp 0x8713e
leaq 0x410(%rsp), %rdi
callq 0x8848
leaq 0x430(%rsp), %rdi
callq 0x8848
leaq 0x27177(%rip), %rsi     # 0xae2d6
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x8716e
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84ab0
movl %eax, 0xc4(%rsp)
jmp 0x87190
movl 0xc4(%rsp), %esi
leaq 0x3f0(%rsp), %rdi
callq 0x18f30
jmp 0x871a6
leaq 0x4f8(%rsp), %rdi
leaq 0x3f0(%rsp), %rsi
movq %rsi, 0xb0(%rsp)
callq 0x8510
movq 0xb0(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0xb8(%rsp)
leaq 0x3d0(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x871f7
leaq 0x3b0(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x8720e
movq 0xb8(%rsp), %rdi
leaq 0x3d0(%rsp), %rsi
leaq 0x3b0(%rsp), %rdx
callq 0xa7eb0
jmp 0x8722d
leaq 0x3b0(%rsp), %rdi
callq 0x8848
leaq 0x3d0(%rsp), %rdi
callq 0x8848
leaq 0x270b1(%rip), %rsi     # 0xae2ff
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x8725d
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84bb0
movl %eax, 0xac(%rsp)
jmp 0x8727f
movl 0xac(%rsp), %esi
leaq 0x390(%rsp), %rdi
callq 0x18f30
jmp 0x87295
leaq 0x4f8(%rsp), %rdi
leaq 0x390(%rsp), %rsi
movq %rsi, 0x98(%rsp)
callq 0x8510
movq 0x98(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0xa0(%rsp)
leaq 0x370(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x872e6
leaq 0x350(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x872fd
movq 0xa0(%rsp), %rdi
leaq 0x370(%rsp), %rsi
leaq 0x350(%rsp), %rdx
callq 0xa7eb0
jmp 0x8731c
leaq 0x350(%rsp), %rdi
callq 0x8848
leaq 0x370(%rsp), %rdi
callq 0x8848
leaq 0x26fea(%rip), %rsi     # 0xae327
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x8734c
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84c50
movl %eax, 0x94(%rsp)
jmp 0x8736e
movl 0x94(%rsp), %esi
leaq 0x330(%rsp), %rdi
callq 0x18f30
jmp 0x87384
leaq 0x4f8(%rsp), %rdi
leaq 0x330(%rsp), %rsi
movq %rsi, 0x80(%rsp)
callq 0x8510
movq 0x80(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0x88(%rsp)
leaq 0x310(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x873d5
leaq 0x2f0(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x873ec
movq 0x88(%rsp), %rdi
leaq 0x310(%rsp), %rsi
leaq 0x2f0(%rsp), %rdx
callq 0xa7eb0
jmp 0x8740b
leaq 0x2f0(%rsp), %rdi
callq 0x8848
leaq 0x310(%rsp), %rdi
callq 0x8848
leaq 0x26f22(%rip), %rsi     # 0xae34e
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x8743b
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84cf0
movl %eax, 0x7c(%rsp)
jmp 0x8745a
movl 0x7c(%rsp), %esi
leaq 0x2d0(%rsp), %rdi
callq 0x18f30
jmp 0x8746d
leaq 0x4f8(%rsp), %rdi
leaq 0x2d0(%rsp), %rsi
movq %rsi, 0x68(%rsp)
callq 0x8510
movq 0x68(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0x70(%rsp)
leaq 0x2b0(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x874b5
leaq 0x290(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x874cc
movq 0x70(%rsp), %rdi
leaq 0x2b0(%rsp), %rsi
leaq 0x290(%rsp), %rdx
callq 0xa7eb0
jmp 0x874e8
leaq 0x290(%rsp), %rdi
callq 0x8848
leaq 0x2b0(%rsp), %rdi
callq 0x8848
leaq 0x26e6b(%rip), %rsi     # 0xae374
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x87518
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84d90
movl %eax, 0x64(%rsp)
jmp 0x87537
movl 0x64(%rsp), %esi
leaq 0x270(%rsp), %rdi
callq 0x18f30
jmp 0x8754a
leaq 0x4f8(%rsp), %rdi
leaq 0x270(%rsp), %rsi
movq %rsi, 0x50(%rsp)
callq 0x8510
movq 0x50(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0x58(%rsp)
leaq 0x250(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x87592
leaq 0x230(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x875a9
movq 0x58(%rsp), %rdi
leaq 0x250(%rsp), %rsi
leaq 0x230(%rsp), %rdx
callq 0xa7eb0
jmp 0x875c5
leaq 0x230(%rsp), %rdi
callq 0x8848
leaq 0x250(%rsp), %rdi
callq 0x8848
leaq 0x26db8(%rip), %rsi     # 0xae39e
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x875f5
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84e90
movl %eax, 0x4c(%rsp)
jmp 0x87614
movl 0x4c(%rsp), %esi
leaq 0x210(%rsp), %rdi
callq 0x18f30
jmp 0x87627
leaq 0x4f8(%rsp), %rdi
leaq 0x210(%rsp), %rsi
movq %rsi, 0x38(%rsp)
callq 0x8510
movq 0x38(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0x40(%rsp)
leaq 0x1f0(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x8766f
leaq 0x1d0(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x87686
movq 0x40(%rsp), %rdi
leaq 0x1f0(%rsp), %rsi
leaq 0x1d0(%rsp), %rdx
callq 0xa7eb0
jmp 0x876a2
leaq 0x1d0(%rsp), %rdi
callq 0x8848
leaq 0x1f0(%rsp), %rdi
callq 0x8848
leaq 0x26d04(%rip), %rsi     # 0xae3c7
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x876d2
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84f30
movl %eax, 0x34(%rsp)
jmp 0x876f1
movl 0x34(%rsp), %esi
leaq 0x1b0(%rsp), %rdi
callq 0x18f30
jmp 0x87704
leaq 0x4f8(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
movq %rsi, 0x20(%rsp)
callq 0x8510
movq 0x20(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x190(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x8774c
leaq 0x170(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x87763
movq 0x28(%rsp), %rdi
leaq 0x190(%rsp), %rsi
leaq 0x170(%rsp), %rdx
callq 0xa7eb0
jmp 0x8777f
leaq 0x170(%rsp), %rdi
callq 0x8848
leaq 0x190(%rsp), %rdi
callq 0x8848
leaq 0x26c4f(%rip), %rsi     # 0xae3ef
leaq 0x520(%rsp), %rdi
callq 0x85c0
jmp 0x877af
movq 0xf8(%rsp), %rax
movq 0x50(%rax), %rdi
movzwl 0x4b4(%rsp), %esi
callq 0x84fd0
movl %eax, 0x1c(%rsp)
jmp 0x877ce
movl 0x1c(%rsp), %esi
leaq 0x150(%rsp), %rdi
callq 0x18f30
jmp 0x877e1
leaq 0x4f8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
movq %rsi, 0x8(%rsp)
callq 0x8510
movq 0x8(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rax
movq %rax, 0x10(%rsp)
leaq 0x130(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x81a0
jmp 0x87829
leaq 0x110(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x81a0
jmp 0x87840
movq 0x10(%rsp), %rdi
leaq 0x130(%rsp), %rsi
leaq 0x110(%rsp), %rdx
callq 0xa7eb0
jmp 0x8785c
leaq 0x110(%rsp), %rdi
callq 0x8848
leaq 0x130(%rsp), %rdi
callq 0x8848
movq 0x590(%rsp), %rdi
callq 0xa80f0
jmp 0x87885
leaq 0x490(%rsp), %rdi
callq 0x8848
movl 0x4b4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x4b4(%rsp)
jmp 0x87007
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87cb7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x550(%rsp), %rdi
callq 0x8848
jmp 0x87cb7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x51f(%rsp), %rdi
callq 0x84a0
jmp 0x87cb7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87caa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87c9d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87976
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x4b8(%rsp), %rdi
callq 0x8848
leaq 0x4d8(%rsp), %rdi
callq 0x8848
jmp 0x87c9d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x470(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x879fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x410(%rsp), %rdi
callq 0x8848
leaq 0x430(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87a47
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x3b0(%rsp), %rdi
callq 0x8848
leaq 0x3d0(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87a90
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x350(%rsp), %rdi
callq 0x8848
leaq 0x370(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87ad9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x2f0(%rsp), %rdi
callq 0x8848
leaq 0x310(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87b22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x290(%rsp), %rdi
callq 0x8848
leaq 0x2b0(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87b6b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x230(%rsp), %rdi
callq 0x8848
leaq 0x250(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87bb4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x1d0(%rsp), %rdi
callq 0x8848
leaq 0x1f0(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87bfd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x170(%rsp), %rdi
callq 0x8848
leaq 0x190(%rsp), %rdi
callq 0x8848
jmp 0x87c50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
jmp 0x87c43
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x548(%rsp)
movl %eax, 0x544(%rsp)
leaq 0x110(%rsp), %rdi
callq 0x8848
leaq 0x130(%rsp), %rdi
callq 0x8848
leaq 0x490(%rsp), %rdi
callq 0x8848
jmp 0x87c9d
movq 0x590(%rsp), %rdi
callq 0xa80f0
jmp 0x87c6e
leaq 0x4f8(%rsp), %rdi
callq 0x8848
leaq 0x520(%rsp), %rdi
callq 0x8848
leaq 0x570(%rsp), %rdi
callq 0x8848
addq $0x5a8, %rsp            # imm = 0x5A8
retq
leaq 0x4f8(%rsp), %rdi
callq 0x8848
leaq 0x520(%rsp), %rdi
callq 0x8848
leaq 0x570(%rsp), %rdi
callq 0x8848
movq 0x548(%rsp), %rdi
callq 0x8770
nopw %cs:(%rax,%rax)