// File: /workspace/github_cpp_makefile_star2_O2/WeihuaZhu[P]hpc_prog2/./gtest/gtest-all.cc
// Function: testing::internal::PrettyUnitTestResultPrinter::OnTestIterationStart(testing::UnitTest const&, int)
void PrettyUnitTestResultPrinter::OnTestIterationStart(
    const UnitTest& unit_test, int iteration) {
  if (GTEST_FLAG(repeat) != 1)
    printf("\nRepeating all tests (iteration %d) . . .\n\n", iteration + 1);

  const char* const filter = GTEST_FLAG(filter).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(COLOR_YELLOW,
                  "Note: %s filter = %s\n", GTEST_NAME_, filter);
  }

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

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

  ColoredPrintf(COLOR_GREEN,  "[==========] ");
  printf("Running %s from %s.\n",
         FormatTestCount(unit_test.test_to_run_count()).c_str(),
         FormatTestCaseCount(unit_test.test_case_to_run_count()).c_str());
  fflush(stdout);
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rbx
cmpl $0x1, 0x21d1c(%rip)     # 0x2e5d8
je 0xc8d0
incl %edx
leaq 0x120a2(%rip), %rdi     # 0x1e969
movl %edx, %esi
xorl %eax, %eax
callq 0x6070
movq 0x21cb1(%rip), %r14     # 0x2e588
leaq 0x10b92(%rip), %rsi     # 0x1d470
movq %r14, %rdi
callq 0x8ef6
testb %al, %al
jne 0xc905
leaq 0x120a4(%rip), %rsi     # 0x1e995
leaq 0x11be2(%rip), %rdx     # 0x1e4da
pushq $0x3
popq %rdi
movq %r14, %rcx
xorl %eax, %eax
callq 0xc6db
leaq 0x10b84(%rip), %rdi     # 0x1d490
leaq 0x10b9d(%rip), %rsi     # 0x1d4b0
xorl %edx, %edx
callq 0xca07
testb %al, %al
je 0xc952
leaq 0x10b8b(%rip), %rdi     # 0x1d4b0
pushq $-0x1
popq %rsi
callq 0xcd92
leal 0x1(%rax), %ebp
leaq 0x10b59(%rip), %rdi     # 0x1d490
callq 0x65e0
leaq 0x12068(%rip), %rsi     # 0x1e9ab
pushq $0x3
popq %rdi
movl %ebp, %edx
movq %rax, %rcx
xorl %eax, %eax
callq 0xc6db
cmpb $0x1, 0x21c84(%rip)     # 0x2e5dd
jne 0xc976
movq 0x40(%rbx), %rax
movl 0x1b4(%rax), %edx
leaq 0x12063(%rip), %rsi     # 0x1e9cf
pushq $0x3
popq %rdi
xorl %eax, %eax
callq 0xc6db
leaq 0x12087(%rip), %rsi     # 0x1ea04
pushq $0x2
popq %rdi
xorl %eax, %eax
callq 0xc6db
movq %rbx, %rdi
callq 0xce52
movq %rsp, %r14
movq %r14, %rdi
movl %eax, %esi
callq 0xce35
movq (%r14), %r14
movq %rbx, %rdi
callq 0xce78
leaq 0x20(%rsp), %rdi
movl %eax, %esi
callq 0xce5b
leaq 0x20(%rsp), %rbx
movq (%rbx), %rdx
leaq 0x12050(%rip), %rdi     # 0x1ea12
movq %r14, %rsi
xorl %eax, %eax
callq 0x6070
movq %rbx, %rdi
callq 0x6a28
movq %rsp, %rdi
callq 0x6a28
movq 0x215a5(%rip), %rax     # 0x2df88
movq (%rax), %rdi
callq 0x6580
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
movq %rsp, %rdi
callq 0x6a28
movq %rbx, %rdi
callq 0x6900