// File: /workspace/github_cpp_makefile_star2_O1/halfflat[P]tinyopt/test/googletest/googletest/src/gtest.cc
// Function: testing::internal::TypeParameterizedTestSuiteRegistry::CheckForInstantiations()
void TypeParameterizedTestSuiteRegistry::CheckForInstantiations() {
  const auto& ignored = *GetIgnoredParameterizedTestSuites();
  for (const auto& testcase : suites_) {
    if (testcase.second.instantiated) continue;
    if (ignored.find(testcase.first) != ignored.end()) continue;

    std::string message =
        "Type parameterized test suite " + testcase.first +
        " is defined via REGISTER_TYPED_TEST_SUITE_P, but never instantiated "
        "via INSTANTIATE_TYPED_TEST_SUITE_P. None of the test cases will run."
        "\n\n"
        "Ideally, TYPED_TEST_P definitions should only ever be included as "
        "part of binaries that intend to use them. (As opposed to, for "
        "example, being placed in a library that may be linked in to get "
        "other "
        "utilities.)"
        "\n\n"
        "To suppress this error for this test suite, insert the following "
        "line "
        "(in a non-header) in the namespace it is defined in:"
        "\n\n"
        "GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(" +
        testcase.first + ");";

    std::string full_name =
        "UninstantiatedTypeParameterizedTestSuite<" + testcase.first + ">";
    RegisterTest(  //
        "GoogleTestVerification", full_name.c_str(),
        nullptr,  // No type parameter.
        nullptr,  // No value parameter.
        testcase.second.code_location.file.c_str(),
        testcase.second.code_location.line, [message, testcase] {
          return new FailureTest(testcase.second.code_location, message,
                                 kErrorOnUninstantiatedTypeParameterizedTest);
        });
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1a8, %rsp            # imm = 0x1A8
movq %rdi, %rbx
callq 0x4a8ea
movq 0x18(%rbx), %r14
addq $0x8, %rbx
cmpq %rbx, %r14
je 0x4bf9d
movq 0x4afdb(%rip), %rax     # 0x969e0
leaq 0x130(%rax), %rcx
movq %rcx, 0x128(%rsp)
addq $0x138, %rax            # imm = 0x138
movq %rax, 0x130(%rsp)
leaq 0xc0(%rsp), %r15
movq %rbx, 0x120(%rsp)
cmpb $0x0, 0x68(%r14)
jne 0x4bf89
leaq 0x20(%r14), %rbp
movq 0x128(%rsp), %rdi
movq %rbp, %rsi
callq 0x6af12
cmpq 0x130(%rsp), %rax
jne 0x4bf89
leaq 0x50(%rsp), %rbx
movq %rbx, %rdi
leaq 0x27dee(%rip), %rsi     # 0x7385c
movq %rbp, %rdx
callq 0x2198f
movq %rbx, %rdi
leaq 0x27dfb(%rip), %rsi     # 0x7387b
callq 0xdb40
leaq 0x38(%rsp), %rsi
movq %rsi, 0x28(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0xb0(%rsp), %rbx
je 0x4bab5
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x4babb
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x20(%r14), %rsi
movq 0x28(%r14), %rdx
leaq 0x28(%rsp), %rdi
callq 0xd180
movq %r15, 0xb0(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4bb11
movq %rdx, 0xb0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xc0(%rsp)
jmp 0x4bb18
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
movq %rdx, 0xb8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbx, %rdi
leaq 0x27cb8(%rip), %rsi     # 0x737f5
callq 0xdb40
leaq 0x80(%rsp), %rsi
movq %rsi, 0x70(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4bb70
movq %rdx, 0x70(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x80(%rsp)
jmp 0x4bb76
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x78(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0xb0(%rsp), %rdi
cmpq %r15, %rdi
je 0x4bbab
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x4bbc7
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x4bbe3
movq 0x60(%rsp), %rsi
incq %rsi
callq 0xd530
movq %rbx, %rdi
leaq 0x27e96(%rip), %rsi     # 0x73a83
movq %rbp, %rdx
callq 0x2198f
movq %rbx, %rdi
leaq 0x28902(%rip), %rsi     # 0x74501
callq 0xdb40
leaq 0xa0(%rsp), %rsi
movq %rsi, 0x90(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4bc38
movq %rdx, 0x90(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xa0(%rsp)
jmp 0x4bc3e
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x98(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0xb0(%rsp), %rdi
movq %r15, %rbx
cmpq %r15, %rdi
je 0x4bc79
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x90(%rsp), %r12
movq 0x40(%r14), %r13
movl 0x60(%r14), %r15d
leaq 0x148(%rsp), %rax
movq %rax, 0x138(%rsp)
movq 0x70(%rsp), %rsi
movq 0x78(%rsp), %rdx
addq %rsi, %rdx
leaq 0x138(%rsp), %rdi
callq 0x155e4
leaq 0x158(%rsp), %rdi
movq %rbp, %rsi
callq 0x63d4e
leaq 0x50(%rsp), %rdi
movq %r13, %rsi
leaq 0x27(%rsp), %rdx
callq 0x208e8
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x50(%rsp), %rsi
movq 0x58(%rsp), %rdx
addq %rsi, %rdx
leaq 0x28(%rsp), %rdi
callq 0x155e4
movl %r15d, 0x48(%rsp)
movl $0x78, %edi
callq 0xd500
movq %rax, %rbp
movq %rbx, 0xb0(%rsp)
movq 0x138(%rsp), %rax
leaq 0x148(%rsp), %rdx
cmpq %rdx, %rax
je 0x4bd3f
movq %rax, 0xb0(%rsp)
movq 0x148(%rsp), %rax
movq %rax, 0xc0(%rsp)
jmp 0x4bd45
movups (%rdx), %xmm0
movups %xmm0, (%rbx)
movq 0x140(%rsp), %rax
movq %rax, 0xb8(%rsp)
movq %rdx, 0x138(%rsp)
movq $0x0, 0x140(%rsp)
movb $0x0, 0x148(%rsp)
leaq 0xd0(%rsp), %rdi
leaq 0x158(%rsp), %rsi
callq 0x63d4e
leaq 0x4993b(%rip), %rax     # 0x956c8
movq %rax, (%rbp)
leaq 0x18(%rbp), %r15
movq %r15, 0x8(%rbp)
movq 0xb0(%rsp), %rax
movq %rbx, %rcx
cmpq %rbx, %rax
je 0x4bdbb
movq %rax, 0x8(%rbp)
movq 0xc0(%rsp), %rax
movq %rax, 0x18(%rbp)
jmp 0x4bdc2
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0xb8(%rsp), %rax
movq %rax, 0x10(%rbp)
movq %rcx, 0xb0(%rsp)
movq $0x0, 0xb8(%rsp)
movb $0x0, 0xc0(%rsp)
movq %rbp, %rdi
addq $0x28, %rdi
leaq 0xd0(%rsp), %rsi
callq 0x63d4e
movq %rbp, 0x10(%rsp)
xorps %xmm0, %xmm0
movups %xmm0, (%rsp)
leaq 0x27a0d(%rip), %rdi     # 0x7381e
movq %r12, %rsi
xorl %edx, %edx
xorl %ecx, %ecx
leaq 0x28(%rsp), %r8
leaq 0x4abec(%rip), %r9      # 0x96a10
callq 0x52594
movq 0xf0(%rsp), %rdi
leaq 0x100(%rsp), %rax
cmpq %rax, %rdi
movq %rbx, %r15
je 0x4be51
movq 0x100(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
movq 0x120(%rsp), %rbx
je 0x4be7e
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0xb0(%rsp), %rdi
cmpq %r15, %rdi
je 0x4be9b
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x4beb7
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x4bed3
movq 0x60(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x4bef8
movq 0x188(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x158(%rsp), %rdi
leaq 0x168(%rsp), %rax
cmpq %rax, %rdi
je 0x4bf1d
movq 0x168(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x138(%rsp), %rdi
leaq 0x148(%rsp), %rax
cmpq %rax, %rdi
je 0x4bf42
movq 0x148(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x4bf67
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x4bf89
movq 0x80(%rsp), %rsi
incq %rsi
callq 0xd530
movq %r14, %rdi
callq 0xd360
movq %rax, %r14
cmpq %rbx, %rax
jne 0x4ba32
addq $0x1a8, %rsp            # imm = 0x1A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r12
jmp 0x4c0fd
movq %rax, %r12
movq 0xb0(%rsp), %rdi
cmpq %r15, %rdi
je 0x4c122
movq 0xc0(%rsp), %rsi
jmp 0x4c11a
movq %rax, %r12
jmp 0x4c122
movq %rax, %r12
movq 0xb0(%rsp), %rdi
cmpq %r15, %rdi
je 0x4c005
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x4c005
movq %rax, %r12
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x4c026
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x4c026
movq %rax, %r12
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x4c144
movq 0x60(%rsp), %rsi
jmp 0x4c13c
movq %rax, %r12
xorl %r14d, %r14d
jmp 0x4c065
movq %rax, %r12
movq 0x8(%rbp), %rdi
movb $0x1, %r14b
cmpq %r15, %rdi
je 0x4c065
movq (%r15), %rsi
incq %rsi
callq 0xd530
leaq 0xb0(%rsp), %rdi
callq 0x4c176
jmp 0x4c097
movq %rax, %r12
movq 0xb0(%rsp), %rdi
movb $0x1, %r14b
cmpq %rbx, %rdi
je 0x4c097
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0xd530
testb %r14b, %r14b
je 0x4c0ae
movl $0x78, %esi
movq %rbp, %rdi
callq 0xd530
jmp 0x4c0ae
movq %rax, %r12
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x4c0cf
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x4c0cf
movq %rax, %r12
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rax
cmpq %rax, %rdi
je 0x4c0f0
movq 0x60(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x4c0f0
movq %rax, %r12
leaq 0x138(%rsp), %rdi
callq 0x4c176
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x4c122
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0xd530
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x4c144
movq 0x80(%rsp), %rsi
incq %rsi
callq 0xd530
movq %r12, %rdi
callq 0xda70
movq %rax, %r12
movq 0x138(%rsp), %rdi
leaq 0x148(%rsp), %rax
cmpq %rax, %rdi
je 0x4c0fd
movq 0x148(%rsp), %rsi
incq %rsi
callq 0xd530
jmp 0x4c0fd