// File: /workspace/github_cpp_makefile_star2_O1/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, 0x50(%rsp)
movq %rsi, %r15
movq %rdi, %rbx
leaq 0xb0(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x16fdb(%rip), %rsi     # 0x28c60
leaq 0x16fdc(%rip), %rdx     # 0x28c68
leaq 0xa0(%rsp), %rdi
callq 0x247da
leaq 0x16fbb(%rip), %rsi     # 0x28c5b
movl $0xd, %edx
movq %rbx, 0x28(%rsp)
movq %rbx, %rdi
callq 0x6510
leaq 0x18(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x16fd6(%rip), %rsi     # 0x28c98
leaq 0x16fd3(%rip), %rdx     # 0x28c9c
leaq 0x8(%rsp), %rdi
callq 0x247da
movq 0x50(%rsp), %rax
movq 0x20(%rax), %rsi
leaq 0x30(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1e0be
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq 0x28(%rsp), %rdi
callq 0x11a82
leaq 0x40(%rsp), %r12
movq -0x10(%r12), %rdi
cmpq %r12, %rdi
je 0x11d23
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x11d3f
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x50(%rsp), %rax
movq 0x48(%rax), %rax
testq %rax, %rax
je 0x11dee
cmpq $0x0, (%rax)
je 0x11dee
leaq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
movq %rax, (%rdi)
leaq 0x16efa(%rip), %rsi     # 0x28c69
leaq 0x16efe(%rip), %rdx     # 0x28c74
callq 0x247da
movq 0x50(%rsp), %rax
movq 0x48(%rax), %rax
testq %rax, %rax
je 0x11d8e
movq (%rax), %rsi
jmp 0x11d90
xorl %esi, %esi
leaq 0x30(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1e0be
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq 0x28(%rsp), %rdi
callq 0x11a82
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
je 0x11dd2
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x11dee
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x50(%rsp), %rax
movq 0x40(%rax), %rax
testq %rax, %rax
je 0x11e9d
cmpq $0x0, (%rax)
je 0x11e9d
leaq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
movq %rax, (%rdi)
leaq 0x16e57(%rip), %rsi     # 0x28c75
leaq 0x16e5a(%rip), %rdx     # 0x28c7f
callq 0x247da
movq 0x50(%rsp), %rax
movq 0x40(%rax), %rax
testq %rax, %rax
je 0x11e3d
movq (%rax), %rsi
jmp 0x11e3f
xorl %esi, %esi
leaq 0x30(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1e0be
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq 0x28(%rsp), %rdi
callq 0x11a82
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
je 0x11e81
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x11e9d
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
movq %rax, (%rdi)
leaq 0x16dcf(%rip), %rsi     # 0x28c80
leaq 0x16dce(%rip), %rdx     # 0x28c86
callq 0x247da
movq 0x50(%rsp), %rax
movzbl 0x58(%rax), %eax
leaq 0x16dbd(%rip), %rcx     # 0x28c8a
leaq 0x16db3(%rip), %rsi     # 0x28c87
testq %rax, %rax
cmovneq %rcx, %rsi
leaq 0x30(%rsp), %rdi
movq %r12, (%rdi)
xorq $0x1, %rax
leaq (%rax,%rax,2), %rax
leaq (%rsi,%rax), %rdx
addq $0x3, %rdx
callq 0x247da
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq 0x28(%rsp), %rdi
callq 0x11a82
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
je 0x11f2b
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x11f47
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
movq %rax, (%rdi)
leaq 0x16d33(%rip), %rsi     # 0x28c8e
leaq 0x16d30(%rip), %rdx     # 0x28c92
callq 0x247da
movq 0x50(%rsp), %rax
movq 0xd8(%rax), %rsi
leaq 0x30(%rsp), %rdi
callq 0x10e85
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq 0x28(%rsp), %rdi
callq 0x11a82
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
je 0x11fb0
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x11fcc
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
movq %rax, (%rdi)
leaq 0x16cb3(%rip), %rsi     # 0x28c93
leaq 0x16cb5(%rip), %rdx     # 0x28c9c
callq 0x247da
leaq 0x30(%rsp), %rdi
leaq 0x60(%rsp), %rdx
movq %r15, %rsi
callq 0x1e0be
leaq 0xa0(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x30(%rsp), %rcx
movq 0x28(%rsp), %rdi
callq 0x11a82
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
je 0x12031
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x50(%rsp), %rax
addq $0x68, %rax
movq %rax, 0xc0(%rsp)
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x1205e
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0x8(%rsp), %rdi
movq 0xc0(%rsp), %rsi
callq 0x125be
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq 0x28(%rsp), %rdi
callq 0x6510
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x120a0
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x50(%rsp), %rcx
movq 0xa8(%rcx), %rax
subq 0xa0(%rcx), %rax
shrq $0x4, %rax
imull $0xb6db6db7, %eax, %eax # imm = 0xB6DB6DB7
testl %eax, %eax
jle 0x123ea
leaq 0x70(%rsp), %r14
xorl %ebp, %ebp
leaq 0x60(%rsp), %r12
leaq 0x80(%rsp), %r13
xorl %ebx, %ebx
movq 0xc0(%rsp), %rdi
movl %ebp, %esi
callq 0xc600
movq %rax, %r15
cmpl $0x0, (%rax)
je 0x123a9
testl %ebx, %ebx
jne 0x12110
movl $0x2, %edx
movq 0x28(%rsp), %rdi
leaq 0x16bc4(%rip), %rsi     # 0x28ccf
callq 0x6510
movq 0x10(%r15), %rsi
testq %rsi, %rsi
je 0x1211d
movq 0x8(%r15), %rsi
movl 0x28(%r15), %edx
leaq 0x8(%rsp), %rdi
callq 0x127b9
movq %r14, 0x60(%rsp)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
addq %rsi, %rdx
movq %r12, %rdi
callq 0x2486a
movq %r12, %rdi
leaq 0x16985(%rip), %rsi     # 0x28ad4
callq 0x69a0
movq 0x30(%r15), %rsi
movq %r12, %rdi
callq 0x69a0
leaq 0x40(%rsp), %rsi
movq %rsi, 0x30(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x12188
movq %rdx, 0x30(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x40(%rsp)
jmp 0x1218e
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x38(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x121bd
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6430
movl $0x18, %edx
movq 0x28(%rsp), %rdi
leaq 0x16acf(%rip), %rsi     # 0x28c9d
callq 0x6510
movq 0x30(%rsp), %rsi
movq %r13, %rdi
leaq 0x5f(%rsp), %rdx
callq 0x1e0be
movq %r12, %rdi
movq %r13, %rsi
movl $0x1, %edx
callq 0x10bb4
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdx
movq 0x28(%rsp), %rdi
callq 0x6510
movl $0xa, %edx
movq %rax, %rdi
leaq 0x16a9e(%rip), %rsi     # 0x28cb6
callq 0x6510
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x12234
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x12259
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0x90(%rsp), %rax
movq %rax, 0x80(%rsp)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
addq %rsi, %rdx
movq %r13, %rdi
callq 0x2486a
movq %r13, %rdi
leaq 0x1684c(%rip), %rsi     # 0x28ad4
callq 0x69a0
movq 0x50(%r15), %rsi
movq %r13, %rdi
callq 0x69a0
movq %r14, 0x60(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x122bc
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x122c3
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq 0x8(%rax), %rdx
movq %rdx, 0x68(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x12300
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x6430
movq %r13, %rdi
movq %r12, %rsi
callq 0x10df2
movq 0x80(%rsp), %rsi
movq 0x28(%rsp), %rdi
callq 0x119c4
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x12342
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x6430
movl $0xb, %edx
movq 0x28(%rsp), %rdi
leaq 0x1696e(%rip), %rsi     # 0x28cc1
callq 0x6510
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x1236f
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x30(%rsp), %rdi
leaq 0x40(%rsp), %rax
cmpq %rax, %rdi
je 0x1238b
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x123a7
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
incl %ebx
movq 0x50(%rsp), %rcx
movq 0xa8(%rcx), %rax
subq 0xa0(%rcx), %rax
incl %ebp
shrq $0x4, %rax
imull $0xb6db6db7, %eax, %eax # imm = 0xB6DB6DB7
cmpl %eax, %ebp
jl 0x120db
testl %ebx, %ebx
leaq 0xb0(%rsp), %r14
je 0x123ea
movl $0x10, %edx
leaq 0x168ea(%rip), %rsi     # 0x28cd2
jmp 0x123f6
movl $0x4, %edx
leaq 0x168d7(%rip), %rsi     # 0x28ccd
movq 0x28(%rsp), %rdi
callq 0x6510
movq 0xa0(%rsp), %rdi
cmpq %r14, %rdi
je 0x1241d
movq 0xb0(%rsp), %rsi
incq %rsi
callq 0x6430
addq $0xc8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1244d
jmp 0x12478
jmp 0x1244d
jmp 0x12482
jmp 0x12478
jmp 0x12482
jmp 0x12482
jmp 0x12478
jmp 0x12482
jmp 0x1244d
jmp 0x12478
jmp 0x12482
jmp 0x1244d
jmp 0x12478
jmp 0x12482
movq %rax, %rbx
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
jne 0x1256f
jmp 0x1257c
jmp 0x12478
jmp 0x12482
movq %rax, %rbx
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
jmp 0x1256a
movq %rax, %rbx
jmp 0x1257c
jmp 0x12482
movq %rax, %rbx
jmp 0x12598
movq %rax, %rbx
jmp 0x124b1
jmp 0x12507
jmp 0x12507
jmp 0x12497
jmp 0x124ee
movq %rax, %rbx
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x124b1
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0xb0(%rsp), %r14
jmp 0x1257c
movq %rax, %rbx
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x124f1
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x6430
jmp 0x124f1
jmp 0x12502
jmp 0x12502
jmp 0x1250c
movq %rax, %rbx
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x12558
movq 0x70(%rsp), %rsi
jmp 0x12550
movq %rax, %rbx
jmp 0x12558
movq %rax, %rbx
jmp 0x12533
movq %rax, %rbx
leaq 0xb0(%rsp), %r14
jmp 0x12598
movq %rax, %rbx
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x12533
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x12558
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0xb0(%rsp), %r14
leaq 0x40(%rsp), %rax
movq 0x30(%rsp), %rdi
cmpq %rax, %rdi
je 0x1257c
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x12598
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0xa0(%rsp), %rdi
cmpq %r14, %rdi
je 0x125b5
movq 0xb0(%rsp), %rsi
incq %rsi
callq 0x6430
movq %rbx, %rdi
callq 0x68e0
nop