// File: /workspace/github_cpp_makefile_star2_O3/halfflat[P]tinyopt/test/googletest/googletest/src/gtest.cc
// Function: testing::internal::XmlUnitTestResultPrinter::OutputXmlTestInfo(std::ostream*, char const*, testing::TestInfo const&)
void XmlUnitTestResultPrinter::OutputXmlTestInfo(::std::ostream* stream,
                                                 const char* test_suite_name,
                                                 const TestInfo& test_info) {
  const TestResult& result = *test_info.result();
  const std::string kTestsuite = "testcase";

  if (test_info.is_in_another_shard()) {
    return;
  }

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

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

  OutputXmlAttribute(stream, kTestsuite, "file", test_info.file());
  OutputXmlAttribute(stream, kTestsuite, "line",
                     StreamableToString(test_info.line()));
  if (GTEST_FLAG_GET(list_tests)) {
    *stream << " />\n";
    return;
  }

  OutputXmlAttribute(stream, kTestsuite, "status",
                     test_info.should_run() ? "run" : "notrun");
  OutputXmlAttribute(stream, kTestsuite, "result",
                     test_info.should_run()
                         ? (result.Skipped() ? "skipped" : "completed")
                         : "suppressed");
  OutputXmlAttribute(stream, kTestsuite, "time",
                     FormatTimeInMillisAsSeconds(result.elapsed_time()));
  OutputXmlAttribute(
      stream, kTestsuite, "timestamp",
      FormatEpochTimeInMillisAsIso8601(result.start_timestamp()));
  OutputXmlAttribute(stream, kTestsuite, "classname", test_suite_name);

  OutputXmlTestResult(stream, result);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rdx, %r15
movq %rsi, %r12
movq %rdi, %rbx
leaq 0x60(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x1b2c4(%rip), %rsi     # 0x72481
leaq 0x1b2c5(%rip), %rdx     # 0x72489
leaq 0x50(%rsp), %rdi
callq 0x1558a
cmpb $0x0, 0x83(%r15)
jne 0x57792
leaq 0x1b299(%rip), %rsi     # 0x7247c
movl $0xd, %edx
movq %rbx, %rdi
callq 0xd600
leaq 0x38(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x1b2a7(%rip), %rsi     # 0x724a7
leaq 0x1b2a4(%rip), %rdx     # 0x724ab
leaq 0x28(%rsp), %rdi
callq 0x1558a
movq 0x20(%r15), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x4c(%rsp), %rdx
callq 0x2008e
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x57256
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x5726d
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x48(%r15), %rax
testq %rax, %rax
je 0x57308
cmpq $0x0, (%rax)
je 0x57308
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1b229(%rip), %rsi     # 0x724bc
leaq 0x1b22d(%rip), %rdx     # 0x724c7
callq 0x1558a
movq 0x48(%r15), %rax
testq %rax, %rax
je 0x572ad
movq (%rax), %rsi
jmp 0x572af
xorl %esi, %esi
leaq 0x8(%rsp), %rdi
leaq 0x4c(%rsp), %rdx
callq 0x2008e
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x572f1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x57308
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x40(%r15), %rax
testq %rax, %rax
je 0x573a3
cmpq $0x0, (%rax)
je 0x573a3
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1b19a(%rip), %rsi     # 0x724c8
leaq 0x1b19d(%rip), %rdx     # 0x724d2
callq 0x1558a
movq 0x40(%r15), %rax
testq %rax, %rax
je 0x57348
movq (%rax), %rsi
jmp 0x5734a
xorl %esi, %esi
leaq 0x8(%rsp), %rdi
leaq 0x4c(%rsp), %rdx
callq 0x2008e
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x5738c
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x573a3
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1a304(%rip), %rsi     # 0x716b6
leaq 0x1a301(%rip), %rdx     # 0x716ba
callq 0x1558a
movq 0x50(%r15), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x4c(%rsp), %rdx
callq 0x2008e
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x57404
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x5741b
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1b0a9(%rip), %rsi     # 0x724d3
leaq 0x1b0a6(%rip), %rdx     # 0x724d7
callq 0x1558a
movl 0x70(%r15), %eax
leaq 0x4c(%rsp), %rsi
movl %eax, (%rsi)
leaq 0x8(%rsp), %rdi
callq 0x61b3f
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x5747e
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x57495
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
cmpb $0x1, 0x3d45d(%rip)     # 0x948f9
jne 0x574b7
leaq 0x1b033(%rip), %rsi     # 0x724d8
movl $0x4, %edx
movq %rbx, %rdi
callq 0xd600
jmp 0x57792
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1afc4(%rip), %rsi     # 0x7248a
leaq 0x1afc3(%rip), %rdx     # 0x72490
callq 0x1558a
movzbl 0x80(%r15), %eax
leaq 0x1afff(%rip), %rcx     # 0x724e0
leaq 0x1aff5(%rip), %rsi     # 0x724dd
testq %rax, %rax
cmovneq %rcx, %rsi
leaq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rcx
movq %rcx, (%rdi)
xorq $0x1, %rax
leaq (%rax,%rax,2), %rax
leaq (%rsi,%rax), %rdx
addq $0x3, %rdx
callq 0x1558a
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x57544
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x5755b
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1af27(%rip), %rsi     # 0x72491
leaq 0x1af26(%rip), %rdx     # 0x72497
callq 0x1558a
leaq 0x90(%r15), %rdi
cmpb $0x1, 0x80(%r15)
movq %rdi, 0x70(%rsp)
jne 0x575a7
callq 0x4ffc6
leaq 0x1aecb(%rip), %rcx     # 0x72463
leaq 0x1aef9(%rip), %r13     # 0x72498
testb %al, %al
cmovneq %rcx, %r13
jmp 0x575ae
leaq 0x1af36(%rip), %r13     # 0x724e4
leaq 0x8(%rsp), %rbp
leaq 0x18(%rsp), %rax
movq %rax, (%rbp)
movq %r13, %rdi
callq 0xd210
leaq (%rax,%r13), %rdx
movq %rbp, %rdi
movq %r13, %rsi
callq 0x1558a
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
leaq 0x60(%rsp), %r13
je 0x5760b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x57622
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x19ffd(%rip), %rsi     # 0x7162e
leaq 0x19ffa(%rip), %rdx     # 0x71632
callq 0x1558a
movq 0x108(%r15), %rsi
leaq 0x8(%rsp), %rdi
callq 0x54dd6
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x57681
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x57698
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1adcb(%rip), %rsi     # 0x72472
leaq 0x1adcd(%rip), %rdx     # 0x7247b
callq 0x1558a
movq 0x100(%r15), %rsi
leaq 0x8(%rsp), %rdi
callq 0x54f2a
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x576f7
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x5770e
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x28(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1ad85(%rip), %rsi     # 0x724a2
leaq 0x1ad87(%rip), %rdx     # 0x724ab
callq 0x1558a
leaq 0x8(%rsp), %rdi
leaq 0x4c(%rsp), %rdx
movq %r12, %rsi
callq 0x2008e
leaq 0x50(%rsp), %rsi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
callq 0x55cee
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x5776e
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x57785
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movq %rbx, %rdi
movq 0x70(%rsp), %rsi
callq 0x56a66
movq 0x50(%rsp), %rdi
cmpq %r13, %rdi
je 0x577a9
movq 0x60(%rsp), %rsi
incq %rsi
callq 0xd530
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x5781d
jmp 0x577ea
jmp 0x5781d
jmp 0x577ea
jmp 0x5783b
jmp 0x5781d
jmp 0x5783b
jmp 0x577ea
jmp 0x5781d
jmp 0x5783b
jmp 0x577ea
jmp 0x5781d
jmp 0x5783b
jmp 0x577ea
jmp 0x5781d
jmp 0x5783b
jmp 0x577ea
jmp 0x5781d
jmp 0x5783b
jmp 0x577ea
jmp 0x5781d
jmp 0x5783b
jmp 0x577ea
jmp 0x5781d
jmp 0x5783b
movq %rax, %rbx
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x57820
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x57820
jmp 0x5781d
jmp 0x5783b
movq %rax, %rbx
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
jmp 0x577f7
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x5783e
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x5783e
jmp 0x5783b
movq %rax, %rbx
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x5785a
movq 0x60(%rsp), %rsi
incq %rsi
callq 0xd530
movq %rbx, %rdi
callq 0xda70