// File: /workspace/github_cpp_makefile_star2_O2/WeihuaZhu[P]hpc_prog2/./gtest/gtest-all.cc
// Function: testing::internal::XmlUnitTestResultPrinter::PrintXmlUnitTest(std::ostream*, testing::UnitTest const&)
void XmlUnitTestResultPrinter::PrintXmlUnitTest(std::ostream* stream,
                                                const UnitTest& unit_test) {
  const std::string kTestsuites = "testsuites";

  *stream << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
  *stream << "<" << kTestsuites;

  OutputXmlAttribute(stream, kTestsuites, "tests",
                     StreamableToString(unit_test.reportable_test_count()));
  OutputXmlAttribute(stream, kTestsuites, "failures",
                     StreamableToString(unit_test.failed_test_count()));
  OutputXmlAttribute(
      stream, kTestsuites, "disabled",
      StreamableToString(unit_test.reportable_disabled_test_count()));
  OutputXmlAttribute(stream, kTestsuites, "errors", "0");
  OutputXmlAttribute(
      stream, kTestsuites, "timestamp",
      FormatEpochTimeInMillisAsIso8601(unit_test.start_timestamp()));
  OutputXmlAttribute(stream, kTestsuites, "time",
                     FormatTimeInMillisAsSeconds(unit_test.elapsed_time()));

  if (GTEST_FLAG(shuffle)) {
    OutputXmlAttribute(stream, kTestsuites, "random_seed",
                       StreamableToString(unit_test.random_seed()));
  }

  *stream << TestPropertiesAsXmlAttributes(unit_test.ad_hoc_test_result());

  OutputXmlAttribute(stream, kTestsuites, "name", "AllTests");
  *stream << ">\n";

  for (int i = 0; i < unit_test.total_test_case_count(); ++i) {
    if (unit_test.GetTestCase(i)->reportable_test_count() > 0)
      PrintXmlTestCase(stream, *unit_test.GetTestCase(i));
  }
  *stream << "</" << kTestsuites << ">\n";
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x70, %rsp
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x11075(%rip), %rsi     # 0x1ecd6
leaq 0x50(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x1543a
leaq 0x1106a(%rip), %rsi     # 0x1ece1
movq %rbx, %rdi
callq 0x6410
leaq 0x11039(%rip), %rsi     # 0x1ecbf
movq %rbx, %rdi
callq 0x6410
leaq 0x50(%rsp), %rsi
movq %rax, %rdi
callq 0x63c0
leaq 0x10d93(%rip), %rsi     # 0x1ea35
leaq 0x10(%rsp), %rdi
leaq 0xb(%rsp), %rdx
callq 0x1543a
movq %r14, %rdi
callq 0xf3f2
leaq 0xc(%rsp), %rsi
movl %eax, (%rsi)
leaq 0x30(%rsp), %rdi
callq 0x1703c
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x1066c(%rip), %rsi     # 0x1e368
leaq 0x10(%rsp), %rdi
leaq 0xb(%rsp), %rdx
callq 0x1543a
movq %r14, %rdi
callq 0xd308
leaq 0xc(%rsp), %rsi
movl %eax, (%rsi)
leaq 0x30(%rsp), %rdi
callq 0x1703c
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10f6b(%rip), %rsi     # 0x1ecc1
leaq 0x10(%rsp), %rdi
leaq 0xb(%rsp), %rdx
callq 0x1543a
movq %r14, %rdi
callq 0xd558
leaq 0xc(%rsp), %rsi
movl %eax, (%rsi)
leaq 0x30(%rsp), %rdi
callq 0x1703c
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10f1a(%rip), %rsi     # 0x1ecca
leaq 0x10(%rsp), %rdi
leaq 0xc(%rsp), %rdx
callq 0x1543a
leaq 0x11e01(%rip), %rsi     # 0x1fbc7
leaq 0x30(%rsp), %rdi
leaq 0xb(%rsp), %rdx
callq 0x1543a
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10f02(%rip), %rsi     # 0x1ed09
leaq 0x10(%rsp), %rdi
leaq 0xc(%rsp), %rdx
callq 0x1543a
movq 0x40(%r14), %rax
movq 0x1c0(%rax), %rsi
leaq 0x30(%rsp), %rdi
callq 0xe369
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10e01(%rip), %rsi     # 0x1ec5e
leaq 0x10(%rsp), %rdi
leaq 0xc(%rsp), %rdx
callq 0x1543a
movq 0x40(%r14), %rax
movq 0x1c8(%rax), %rsi
leaq 0x30(%rsp), %rdi
callq 0xe304
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
cmpb $0x1, 0x2072a(%rip)     # 0x2e5dd
jne 0xdf11
leaq 0xf524(%rip), %rsi      # 0x1d3e0
leaq 0x10(%rsp), %rdi
leaq 0xb(%rsp), %rdx
callq 0x1543a
movq 0x40(%r14), %rax
movl 0x1b4(%rax), %eax
leaq 0xc(%rsp), %rsi
movl %eax, (%rsi)
leaq 0x30(%rsp), %rdi
callq 0x1703c
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
movl $0x118, %esi            # imm = 0x118
addq 0x40(%r14), %rsi
leaq 0x10(%rsp), %rdi
callq 0xee74
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0x63c0
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10d26(%rip), %rsi     # 0x1ec68
leaq 0x10(%rsp), %rdi
leaq 0xc(%rsp), %rdx
callq 0x1543a
leaq 0x10dbb(%rip), %rsi     # 0x1ed13
leaq 0x30(%rsp), %rdi
leaq 0xb(%rsp), %rdx
callq 0x1543a
leaq 0x50(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x30(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10d06(%rip), %rsi     # 0x1ec9f
movq %rbx, %rdi
callq 0x6410
xorl %ebp, %ebp
movq 0x40(%r14), %rax
movq 0xc0(%rax), %rcx
subq 0xb8(%rax), %rcx
shrq $0x3, %rcx
cmpl %ecx, %ebp
jge 0xdfec
movq %r14, %rdi
movl %ebp, %esi
callq 0xd32a
movq %rax, %rdi
callq 0x8e50
testl %eax, %eax
jle 0xdfe8
movq %r14, %rdi
movl %ebp, %esi
callq 0xd32a
movq %rbx, %rdi
movq %rax, %rsi
callq 0xf096
incl %ebp
jmp 0xdfa3
leaq 0x10ce0(%rip), %rsi     # 0x1ecd3
movq %rbx, %rdi
callq 0x6410
leaq 0x50(%rsp), %rsi
movq %rax, %rdi
callq 0x63c0
leaq 0x10c90(%rip), %rsi     # 0x1ec9f
movq %rax, %rdi
callq 0x6410
leaq 0x50(%rsp), %rdi
callq 0x6a28
addq $0x70, %rsp
popq %rbx
popq %r14
popq %rbp
retq
jmp 0xe054
jmp 0xe069
jmp 0xe07a
jmp 0xe054
jmp 0xe069
jmp 0xe07a
jmp 0xe069
jmp 0xe07a
jmp 0xe054
jmp 0xe069
jmp 0xe07a
jmp 0xe054
jmp 0xe069
jmp 0xe07a
jmp 0xe054
jmp 0xe069
jmp 0xe07a
jmp 0xe054
jmp 0xe07a
jmp 0xe054
jmp 0xe07a
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0x6a28
jmp 0xe06c
jmp 0xe07a
jmp 0xe069
jmp 0xe069
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x6a28
jmp 0xe07d
jmp 0xe07a
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x6a28
movq %rbx, %rdi
callq 0x6900
nop