// File: /workspace/github_cpp_makefile_star2_O3/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, 0x28c56(%rip)     # 0x375b8
je 0xe976
incl %edx
leaq 0x1a02c(%rip), %rdi     # 0x28999
movl %edx, %esi
xorl %eax, %eax
callq 0x6080
movq 0x28beb(%rip), %rcx     # 0x37568
testq %rcx, %rcx
je 0xe98d
cmpb $0x2a, (%rcx)
jne 0xe98d
cmpb $0x0, 0x1(%rcx)
je 0xe9a7
leaq 0x1a031(%rip), %rsi     # 0x289c5
leaq 0x19b6f(%rip), %rdx     # 0x2850a
movl $0x3, %edi
xorl %eax, %eax
callq 0xe7c5
leaq 0x18b12(%rip), %rdi     # 0x274c0
leaq 0x18b2b(%rip), %rsi     # 0x274e0
xorl %edx, %edx
callq 0xeb26
testb %al, %al
je 0xe9f8
leaq 0x18b19(%rip), %rdi     # 0x274e0
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xeec4
leal 0x1(%rax), %ebp
leaq 0x18ae5(%rip), %rdi     # 0x274c0
callq 0x65c0
leaq 0x19ff4(%rip), %rsi     # 0x289db
movl $0x3, %edi
movl %ebp, %edx
movq %rax, %rcx
xorl %eax, %eax
callq 0xe7c5
cmpb $0x1, 0x28bbe(%rip)     # 0x375bd
jne 0xea1e
movq 0x40(%rbx), %rax
movl 0x1b4(%rax), %edx
leaq 0x19fed(%rip), %rsi     # 0x289ff
movl $0x3, %edi
xorl %eax, %eax
callq 0xe7c5
leaq 0x1a00f(%rip), %rsi     # 0x28a34
xorl %ebp, %ebp
movl $0x2, %edi
xorl %eax, %eax
callq 0xe7c5
movq 0x40(%rbx), %rdi
callq 0x9c36
leaq 0x1a833(%rip), %rdx     # 0x29276
leaq 0x1a01b(%rip), %rcx     # 0x28a65
movq %rsp, %rdi
movl %eax, %esi
callq 0xf0cf
movq 0x40(%rbx), %rcx
movq 0xb8(%rcx), %rax
movq 0xc0(%rcx), %rcx
cmpq %rcx, %rax
je 0xea7f
xorl %ebp, %ebp
movq (%rax), %rdx
movzbl 0x70(%rdx), %edx
addl %edx, %ebp
addq $0x8, %rax
cmpq %rcx, %rax
jne 0xea6d
movq (%rsp), %rbx
leaq 0x1acd3(%rip), %rdx     # 0x2975d
leaq 0x1acd6(%rip), %rcx     # 0x29767
leaq 0x20(%rsp), %rdi
movl %ebp, %esi
callq 0xf0cf
leaq 0x30(%rsp), %r14
movq -0x10(%r14), %rdx
leaq 0x19f95(%rip), %rdi     # 0x28a42
movq %rbx, %rsi
xorl %eax, %eax
callq 0x6080
movq -0x10(%r14), %rdi
cmpq %r14, %rdi
je 0xeacd
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x6430
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xeae8
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6430
movq 0x28499(%rip), %rax     # 0x36f88
movq (%rax), %rdi
callq 0x6560
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xeb1e
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6430
movq %rbx, %rdi
callq 0x68e0