// File: /workspace/github_cpp_makefile_star2_O3/halfflat[P]tinyopt/test/googletest/googletest/src/gtest.cc
// Function: testing::internal::XmlUnitTestResultPrinter::OutputXmlTestResult(std::ostream*, testing::TestResult const&)
void XmlUnitTestResultPrinter::OutputXmlTestResult(::std::ostream* stream,
                                                   const TestResult& result) {
  int failures = 0;
  int skips = 0;
  for (int i = 0; i < result.total_part_count(); ++i) {
    const TestPartResult& part = result.GetTestPartResult(i);
    if (part.failed()) {
      if (++failures == 1 && skips == 0) {
        *stream << ">\n";
      }
      const std::string location =
          internal::FormatCompilerIndependentFileLocation(part.file_name(),
                                                          part.line_number());
      const std::string summary = location + "\n" + part.summary();
      *stream << "      <failure message=\"" << EscapeXmlAttribute(summary)
              << "\" type=\"\">";
      const std::string detail = location + "\n" + part.message();
      OutputXmlCDataSection(stream, RemoveInvalidXmlCharacters(detail).c_str());
      *stream << "</failure>\n";
    } else if (part.skipped()) {
      if (++skips == 1 && failures == 0) {
        *stream << ">\n";
      }
      const std::string location =
          internal::FormatCompilerIndependentFileLocation(part.file_name(),
                                                          part.line_number());
      const std::string summary = location + "\n" + part.summary();
      *stream << "      <skipped message=\""
              << EscapeXmlAttribute(summary.c_str()) << "\">";
      const std::string detail = location + "\n" + part.message();
      OutputXmlCDataSection(stream, RemoveInvalidXmlCharacters(detail).c_str());
      *stream << "</skipped>\n";
    }
  }

  if (failures == 0 && skips == 0 && result.test_property_count() == 0) {
    *stream << " />\n";
  } else {
    if (failures == 0 && skips == 0) {
      *stream << ">\n";
    }
    OutputXmlTestProperties(stream, result);
    *stream << "    </testcase>\n";
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x98, %rsp
movq %rsi, %r14
movq 0x40(%rsi), %rax
subq 0x38(%rsi), %rax
movq %rdi, %rbx
shrq $0x4, %rax
imull $0xb6db6db7, %eax, %eax # imm = 0xB6DB6DB7
testl %eax, %eax
jle 0x57035
leaq 0x18(%rsp), %r13
movl $0x0, 0x50(%rsp)
xorl %r12d, %r12d
movl $0x0, 0x4c(%rsp)
movq %r14, %rdi
movl %r12d, %esi
callq 0x4f8c0
movq %rax, %rbp
movl (%rax), %eax
leal -0x1(%rax), %ecx
cmpl $0x1, %ecx
ja 0x56b74
movl 0x50(%rsp), %eax
orl 0x4c(%rsp), %eax
jne 0x56ae9
movl $0x2, %edx
movq %rbx, %rdi
leaq 0x1b9f6(%rip), %rsi     # 0x724da
callq 0xd600
movq 0x10(%rbp), %rsi
testq %rsi, %rsi
je 0x56af6
movq 0x8(%rbp), %rsi
movl 0x28(%rbp), %edx
leaq 0x78(%rsp), %rdi
callq 0x46dff
movq %r13, 0x8(%rsp)
movq 0x78(%rsp), %rsi
movq 0x80(%rsp), %rdx
addq %rsi, %rdx
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0x152da
movq %r15, %rdi
leaq 0x18595(%rip), %rsi     # 0x6f0c4
callq 0xdb40
movq 0x30(%rbp), %rsi
movq %r15, %rdi
callq 0xdb40
leaq 0x68(%rsp), %rsi
movq %rsi, 0x58(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x28(%rsp), %r15
je 0x56c26
movq %rdx, 0x58(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x68(%rsp)
jmp 0x56c2c
cmpl $0x3, %eax
jne 0x5700d
movl 0x4c(%rsp), %eax
orl 0x50(%rsp), %eax
jne 0x56b9b
movl $0x2, %edx
movq %rbx, %rdi
leaq 0x1b944(%rip), %rsi     # 0x724da
callq 0xd600
movq 0x10(%rbp), %rsi
testq %rsi, %rsi
je 0x56ba8
movq 0x8(%rbp), %rsi
movl 0x28(%rbp), %edx
leaq 0x78(%rsp), %rdi
callq 0x46dff
movq %r13, 0x8(%rsp)
movq 0x78(%rsp), %rsi
movq 0x80(%rsp), %rdx
addq %rsi, %rdx
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0x152da
movq %r15, %rdi
leaq 0x184e3(%rip), %rsi     # 0x6f0c4
callq 0xdb40
movq 0x30(%rbp), %rsi
movq %r15, %rdi
callq 0xdb40
leaq 0x68(%rsp), %rsi
movq %rsi, 0x58(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x28(%rsp), %r15
je 0x56e06
movq %rdx, 0x58(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x68(%rsp)
jmp 0x56e0c
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x60(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x56c5b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movl $0x18, %edx
movq %rbx, %rdi
leaq 0x1b885(%rip), %rsi     # 0x724ef
callq 0xd600
leaq 0x8(%rsp), %rdi
leaq 0x58(%rsp), %rsi
movl $0x1, %edx
callq 0x54b0c
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0xd600
movl $0xa, %edx
movq %rax, %rdi
leaq 0x1b864(%rip), %rsi     # 0x72508
callq 0xd600
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x56cc0
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x78(%rsp), %rsi
movq 0x80(%rsp), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0x152da
movq %r15, %rdi
leaq 0x183d8(%rip), %rsi     # 0x6f0c4
callq 0xdb40
movq 0x50(%rbp), %rsi
movq %r15, %rdi
callq 0xdb40
movq %r13, 0x8(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x68(%rsp), %r15
je 0x56d25
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x56d2d
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x56d61
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x54d38
movq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x55c1a
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x56d99
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movl $0xb, %edx
movq %rbx, %rdi
leaq 0x1b76b(%rip), %rsi     # 0x72513
callq 0xd600
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x56dc4
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x58(%rsp), %rdi
cmpq %r15, %rdi
je 0x56ddb
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x56dfd
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xd530
incl 0x50(%rsp)
jmp 0x5700d
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x60(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x56e3b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movl $0x18, %edx
movq %rbx, %rdi
leaq 0x1b6d5(%rip), %rsi     # 0x7251f
callq 0xd600
movq 0x58(%rsp), %rsi
movq %r15, %rdi
leaq 0x57(%rsp), %rdx
callq 0x2008e
leaq 0x8(%rsp), %rdi
movq %r15, %rsi
movl $0x1, %edx
callq 0x54b0c
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0xd600
movl $0x2, %edx
movq %rax, %rdi
leaq 0x1b67c(%rip), %rsi     # 0x72510
callq 0xd600
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x56eb0
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x56ecc
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x78(%rsp), %rsi
movq 0x80(%rsp), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0x152da
movq %r15, %rdi
leaq 0x181cc(%rip), %rsi     # 0x6f0c4
callq 0xdb40
movq 0x50(%rbp), %rsi
movq %r15, %rdi
callq 0xdb40
movq %r13, 0x8(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x68(%rsp), %r15
je 0x56f31
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x56f39
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x56f6d
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x54d38
movq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x55c1a
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x56fa5
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movl $0xb, %edx
movq %rbx, %rdi
leaq 0x1b584(%rip), %rsi     # 0x72538
callq 0xd600
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x56fd0
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x58(%rsp), %rdi
cmpq %r15, %rdi
je 0x56fe7
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x57009
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xd530
incl 0x4c(%rsp)
movq 0x40(%r14), %rax
subq 0x38(%r14), %rax
incl %r12d
shrq $0x4, %rax
imull $0xb6db6db7, %eax, %eax # imm = 0xB6DB6DB7
cmpl %eax, %r12d
jl 0x56aaf
movl 0x4c(%rsp), %eax
orl %eax, 0x50(%rsp)
jne 0x57059
movq 0x58(%r14), %rax
subq 0x50(%r14), %rax
shrq $0x6, %rax
testl %eax, %eax
je 0x57072
leaq 0x1b48e(%rip), %rsi     # 0x724da
movl $0x2, %edx
movq %rbx, %rdi
callq 0xd600
movq %rbx, %rdi
movq %r14, %rsi
callq 0x57862
leaq 0x1b4d9(%rip), %rsi     # 0x72544
movl $0x10, %edx
jmp 0x5707e
leaq 0x1b45f(%rip), %rsi     # 0x724d8
movl $0x4, %edx
movq %rbx, %rdi
callq 0xd600
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x57100
jmp 0x57119
jmp 0x57100
jmp 0x57119
jmp 0x570fb
jmp 0x57114
jmp 0x57119
jmp 0x57136
jmp 0x57114
jmp 0x570be
jmp 0x57114
jmp 0x57136
jmp 0x57100
jmp 0x57114
jmp 0x57114
jmp 0x57119
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x57139
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x57139
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x5711c
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x5711c
movq %rax, %rbx
jmp 0x5716c
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x5716c
movq 0x18(%rsp), %rsi
jmp 0x57164
movq %rax, %rbx
jmp 0x57150
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x57150
movq 0x38(%rsp), %rsi
jmp 0x57148
jmp 0x57136
jmp 0x57136
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x57150
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x58(%rsp), %rdi
leaq 0x68(%rsp), %rax
cmpq %rax, %rdi
je 0x5716c
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x78(%rsp), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x5718e
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xd530
movq %rbx, %rdi
callq 0xda70