// File: /workspace/github_cpp_makefile_star2_O1/halfflat[P]tinyopt/test/googletest/googletest/src/gtest.cc
// Function: testing::internal::PrettyUnitTestResultPrinter::OnTestIterationStart(testing::UnitTest const&, int)
void PrettyUnitTestResultPrinter::OnTestIterationStart(
    const UnitTest& unit_test, int iteration) {
  if (GTEST_FLAG_GET(repeat) != 1)
    printf("\nRepeating all tests (iteration %d) . . .\n\n", iteration + 1);

  std::string f = GTEST_FLAG_GET(filter);
  const char* const filter = f.c_str();

  // Prints the filter if it's not *.  This reminds the user that some
  // tests may be skipped.
  if (!String::CStringEquals(filter, kUniversalFilter)) {
    ColoredPrintf(GTestColor::kYellow, "Note: %s filter = %s\n", GTEST_NAME_,
                  filter);
  }

  if (internal::ShouldShard(kTestTotalShards, kTestShardIndex, false)) {
    const int32_t shard_index = Int32FromEnvOrDie(kTestShardIndex, -1);
    ColoredPrintf(GTestColor::kYellow, "Note: This is test shard %d of %s.\n",
                  static_cast<int>(shard_index) + 1,
                  internal::posix::GetEnv(kTestTotalShards));
  }

  if (GTEST_FLAG_GET(shuffle)) {
    ColoredPrintf(GTestColor::kYellow,
                  "Note: Randomizing tests' orders with a seed of %d .\n",
                  unit_test.random_seed());
  }

  ColoredPrintf(GTestColor::kGreen, "[==========] ");
  printf("Running %s from %s.\n",
         FormatTestCount(unit_test.test_to_run_count()).c_str(),
         FormatTestSuiteCount(unit_test.test_suite_to_run_count()).c_str());
  fflush(stdout);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x68, %rsp
movq %rsi, %rbx
cmpl $0x1, 0x4318e(%rip)     # 0x96928
je 0x537ae
incl %edx
leaq 0x20972(%rip), %rdi     # 0x74117
movl %edx, %esi
xorl %eax, %eax
callq 0xd080
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x4311a(%rip), %rsi     # 0x968d8
movq 0x4311b(%rip), %rdx     # 0x968e0
addq %rsi, %rdx
leaq 0x28(%rsp), %r14
movq %r14, %rdi
callq 0x155e4
movq (%r14), %r14
testq %r14, %r14
je 0x537f0
leaq 0x1e5e0(%rip), %rsi     # 0x71dc4
movq %r14, %rdi
callq 0xd840
testl %eax, %eax
je 0x5380d
leaq 0x2094c(%rip), %rsi     # 0x74143
leaq 0x2095b(%rip), %rdx     # 0x74159
movl $0x3, %edi
movq %r14, %rcx
xorl %eax, %eax
callq 0x539c2
leaq 0x1e5bc(%rip), %rdi     # 0x71dd0
leaq 0x1e5d5(%rip), %rsi     # 0x71df0
xorl %edx, %edx
callq 0x53b26
testb %al, %al
je 0x5385f
leaq 0x1e5c3(%rip), %rdi     # 0x71df0
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x53fb9
movl %eax, %ebp
incl %ebp
leaq 0x1e58e(%rip), %rdi     # 0x71dd0
callq 0xd6d0
leaq 0x20917(%rip), %rsi     # 0x74165
movl $0x3, %edi
movl %ebp, %edx
movq %rax, %rcx
xorl %eax, %eax
callq 0x539c2
cmpb $0x1, 0x430c8(%rip)     # 0x9692e
jne 0x53885
movq 0x40(%rbx), %rax
movl 0x21c(%rax), %edx
leaq 0x20910(%rip), %rsi     # 0x74189
movl $0x3, %edi
xorl %eax, %eax
callq 0x539c2
leaq 0x20932(%rip), %rsi     # 0x741be
movl $0x2, %edi
xorl %eax, %eax
callq 0x539c2
movq 0x40(%rbx), %rdi
callq 0x4e1de
leaq 0x1f915(%rip), %rdx     # 0x731bd
leaq 0x1fd09(%rip), %rcx     # 0x735b8
leaq 0x8(%rsp), %rdi
movl %eax, %esi
callq 0x541f0
movq 0x40(%rbx), %rcx
movq 0xb8(%rcx), %rax
movq 0xc0(%rcx), %rcx
xorl %esi, %esi
cmpq %rcx, %rax
je 0x538e3
movq (%rax), %rdx
movzbl 0x70(%rdx), %edx
addl %edx, %esi
addq $0x8, %rax
jmp 0x538cf
movq 0x8(%rsp), %rbx
leaq 0x218ae(%rip), %rdx     # 0x7519d
leaq 0x218b2(%rip), %rcx     # 0x751a8
leaq 0x48(%rsp), %rdi
callq 0x541f0
leaq 0x58(%rsp), %r14
movq -0x10(%r14), %rdx
leaq 0x208bc(%rip), %rdi     # 0x741cc
movq %rbx, %rsi
xorl %eax, %eax
callq 0xd080
movq -0x10(%r14), %rdi
cmpq %r14, %rdi
je 0x53930
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xd530
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x5394b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x4261e(%rip), %rax     # 0x95f70
movq (%rax), %rdi
callq 0xd650
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x53971
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
addq $0x68, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x539a3
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x539a3
jmp 0x539a0
jmp 0x539a0
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x539ba
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movq %rbx, %rdi
callq 0xda70