// File: /workspace/github_cpp_makefile_star2_O2/WeihuaZhu[P]hpc_prog2/./gtest/gtest-all.cc
// Function: testing::internal::XmlUnitTestResultPrinter::OutputXmlTestInfo(std::ostream*, char const*, testing::TestInfo const&)
void XmlUnitTestResultPrinter::OutputXmlTestInfo(::std::ostream* stream,
                                                 const char* test_case_name,
                                                 const TestInfo& test_info) {
  const TestResult& result = *test_info.result();
  const std::string kTestcase = "testcase";

  *stream << "    <testcase";
  OutputXmlAttribute(stream, kTestcase, "name", test_info.name());

  if (test_info.value_param() != NULL) {
    OutputXmlAttribute(stream, kTestcase, "value_param",
                       test_info.value_param());
  }
  if (test_info.type_param() != NULL) {
    OutputXmlAttribute(stream, kTestcase, "type_param", test_info.type_param());
  }

  OutputXmlAttribute(stream, kTestcase, "status",
                     test_info.should_run() ? "run" : "notrun");
  OutputXmlAttribute(stream, kTestcase, "time",
                     FormatTimeInMillisAsSeconds(result.elapsed_time()));
  OutputXmlAttribute(stream, kTestcase, "classname", test_case_name);
  *stream << TestPropertiesAsXmlAttributes(result);

  int failures = 0;
  for (int i = 0; i < result.total_part_count(); ++i) {
    const TestPartResult& part = result.GetTestPartResult(i);
    if (part.failed()) {
      if (++failures == 1) {
        *stream << ">\n";
      }
      const string location = internal::FormatCompilerIndependentFileLocation(
          part.file_name(), part.line_number());
      const string summary = location + "\n" + part.summary();
      *stream << "      <failure message=\""
              << EscapeXmlAttribute(summary.c_str())
              << "\" type=\"\">";
      const string detail = location + "\n" + part.message();
      OutputXmlCDataSection(stream, RemoveInvalidXmlCharacters(detail).c_str());
      *stream << "</failure>\n";
    }
  }

  if (failures == 0)
    *stream << " />\n";
  else
    *stream << "    </testcase>\n";
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xc8, %rsp
movq %rdx, 0x8(%rsp)
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x10323(%rip), %rsi     # 0x1ec30
leaq 0xa0(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x1543a
leaq 0x10305(%rip), %rsi     # 0x1ec2b
movq %rbx, %rdi
callq 0x6410
leaq 0x10333(%rip), %rsi     # 0x1ec68
leaq 0x10(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1543a
movq 0x8(%rsp), %rax
movq 0x20(%rax), %rsi
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1543a
leaq 0xa0(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x38(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
movq 0x8(%rsp), %rax
movq 0x48(%rax), %rax
testq %rax, %rax
je 0xea0c
cmpq $0x0, (%rax)
je 0xea0c
leaq 0x10291(%rip), %rsi     # 0x1ec39
leaq 0x10(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1543a
movq 0x8(%rsp), %rax
movq 0x48(%rax), %rax
testq %rax, %rax
je 0xe9cd
movq (%rax), %rsi
jmp 0xe9cf
xorl %esi, %esi
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1543a
leaq 0xa0(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x38(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
movq 0x8(%rsp), %rax
movq 0x40(%rax), %rax
testq %rax, %rax
je 0xea8b
cmpq $0x0, (%rax)
je 0xea8b
leaq 0x1021e(%rip), %rsi     # 0x1ec45
leaq 0x10(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1543a
movq 0x8(%rsp), %rax
movq 0x40(%rax), %rax
testq %rax, %rax
je 0xea4c
movq (%rax), %rsi
jmp 0xea4e
xorl %esi, %esi
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1543a
leaq 0xa0(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x38(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x101be(%rip), %rsi     # 0x1ec50
leaq 0x10(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1543a
leaq 0x101af(%rip), %rax     # 0x1ec5a
leaq 0x101a5(%rip), %rsi     # 0x1ec57
movq 0x8(%rsp), %rcx
cmpb $0x0, 0x58(%rcx)
cmovneq %rax, %rsi
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1543a
leaq 0xa0(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x38(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x1015b(%rip), %rsi     # 0x1ec5e
leaq 0x10(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1543a
movq 0x8(%rsp), %rax
movq 0xd8(%rax), %rsi
leaq 0x38(%rsp), %rdi
callq 0xe304
leaq 0xa0(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x38(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10103(%rip), %rsi     # 0x1ec63
leaq 0x10(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1543a
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
movq %r15, %rsi
callq 0x1543a
leaq 0xa0(%rsp), %rsi
leaq 0x10(%rsp), %rdx
leaq 0x38(%rsp), %rcx
movq %rbx, %rdi
callq 0xe784
movq 0x8(%rsp), %rax
leaq 0x68(%rax), %r14
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
movq %r14, 0xc0(%rsp)
movq %r14, %rsi
callq 0xee74
leaq 0x10(%rsp), %rsi
movq %rbx, 0x58(%rsp)
movq %rbx, %rdi
callq 0x63c0
leaq 0x10(%rsp), %rdi
callq 0x6a28
xorl %r12d, %r12d
leaq 0x80(%rsp), %r13
leaq 0x60(%rsp), %rbp
xorl %r14d, %r14d
movq 0x8(%rsp), %rcx
movq 0xa8(%rcx), %rax
subq 0xa0(%rcx), %rax
cqto
pushq $0x70
popq %rcx
idivq %rcx
cmpl %eax, %r14d
jge 0xed7f
movq 0xc0(%rsp), %rdi
movl %r14d, %esi
callq 0xaee6
movq %rax, %r15
cmpl $0x0, (%rax)
je 0xed77
testl %r12d, %r12d
jne 0xec55
movq 0x58(%rsp), %rdi
leaq 0x1004f(%rip), %rsi     # 0x1ec9f
callq 0x6410
movq 0x10(%r15), %rsi
testq %rsi, %rsi
je 0xec62
movq 0x8(%r15), %rsi
movl 0x28(%r15), %edx
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0xefc3
movq %r13, %rdi
movq %rbx, %rsi
leaq 0xfe24(%rip), %rdx      # 0x1eaa4
callq 0x154f6
movq 0x30(%r15), %rdx
leaq 0x38(%rsp), %rdi
movq %r13, %rsi
callq 0x154d7
movq %r13, %rdi
callq 0x6a28
movq 0x58(%rsp), %rdi
leaq 0xffc3(%rip), %rsi      # 0x1ec6d
callq 0x6410
movq %rax, %rbx
movq 0x38(%rsp), %rsi
movq %rbp, %rdi
leaq 0x37(%rsp), %rdx
callq 0x1543a
movq %r13, %rdi
movq %rbp, %rsi
callq 0x1709a
movq %rbx, %rdi
movq %r13, %rsi
callq 0x63c0
movq %rax, %rdi
leaq 0xffa2(%rip), %rsi      # 0x1ec86
callq 0x6410
movq %r13, %rdi
callq 0x6a28
movq %rbp, %rdi
callq 0x6a28
movq %rbp, %rdi
leaq 0x10(%rsp), %rsi
leaq 0xfd9c(%rip), %rdx      # 0x1eaa4
callq 0x154f6
movq 0x50(%r15), %rdx
movq %r13, %rdi
movq %rbp, %rsi
callq 0x154d7
movq %rbp, %rdi
callq 0x6a28
movq %rbp, %rdi
movq %r13, %rsi
callq 0xe27c
movq 0x60(%rsp), %rsi
movq 0x58(%rsp), %rbx
movq %rbx, %rdi
callq 0xe700
movq %rbp, %rdi
callq 0x6a28
movq %rbx, %rdi
leaq 0xff3e(%rip), %rsi      # 0x1ec91
callq 0x6410
incl %r12d
movq %r13, %rdi
callq 0x6a28
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
incl %r14d
jmp 0xebff
testl %r12d, %r12d
leaq 0xff14(%rip), %rax      # 0x1ec9d
leaq 0xff12(%rip), %rsi      # 0x1eca2
cmoveq %rax, %rsi
movq 0x58(%rsp), %rdi
callq 0x6410
leaq 0xa0(%rsp), %rdi
callq 0x6a28
addq $0xc8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0xee1f
jmp 0xee26
jmp 0xee1f
jmp 0xee2b
jmp 0xee26
jmp 0xee2b
jmp 0xee2b
jmp 0xee26
jmp 0xee2b
jmp 0xee1f
jmp 0xee26
jmp 0xee2b
jmp 0xee1f
jmp 0xee26
jmp 0xee2b
jmp 0xee1f
jmp 0xee26
jmp 0xee2b
jmp 0xee1f
jmp 0xee26
jmp 0xee2b
jmp 0xee2b
jmp 0xee1f
movq %rax, %rbx
leaq 0x80(%rsp), %rdi
jmp 0xee4f
jmp 0xee0b
movq %rax, %rbx
leaq 0x60(%rsp), %rdi
callq 0x6a28
jmp 0xee0e
jmp 0xee18
movq %rax, %rbx
leaq 0x80(%rsp), %rdi
jmp 0xee45
movq %rax, %rbx
jmp 0xee40
jmp 0xee1f
movq %rax, %rbx
jmp 0xee4a
jmp 0xee2b
movq %rax, %rbx
jmp 0xee54
movq %rax, %rbx
jmp 0xee5e
movq %rax, %rbx
leaq 0x80(%rsp), %rdi
callq 0x6a28
leaq 0x60(%rsp), %rdi
callq 0x6a28
leaq 0x38(%rsp), %rdi
callq 0x6a28
leaq 0x10(%rsp), %rdi
callq 0x6a28
leaq 0xa0(%rsp), %rdi
callq 0x6a28
movq %rbx, %rdi
callq 0x6900
nop