// File: /workspace/github_cpp_makefile_star2_O1/ahupowerdns[P]mcounter/./ext/doctest.h
// Function: doctest::detail::Subcase::Subcase(doctest::String const&, char const*, int)
Subcase::Subcase(const String& name, const char* file, int line)
            : m_signature({name, file, line}) {
        auto* s = g_cs;

        // check subcase filters
        if(s->subcasesStack.size() < size_t(s->subcase_filter_levels)) {
            if(!matchesAny(m_signature.m_name.c_str(), s->filters[6], true, s->case_sensitive))
                return;
            if(matchesAny(m_signature.m_name.c_str(), s->filters[7], false, s->case_sensitive))
                return;
        }
        
        // if a Subcase on the same level has already been entered
        if(s->subcasesStack.size() < size_t(s->subcasesCurrentMaxLevel)) {
            s->should_reenter = true;
            return;
        }

        // push the current signature to the stack so we can check if the
        // current stack + the current new subcase have been traversed
        s->subcasesStack.push_back(m_signature);
        if(s->subcasesPassed.count(s->subcasesStack) != 0) {
            // pop - revert to previous stack since we've already passed this
            s->subcasesStack.pop_back();
            return;
        }

        s->subcasesCurrentMaxLevel = s->subcasesStack.size();
        m_entered = true;

        DOCTEST_ITERATE_THROUGH_REPORTERS(subcase_start, m_signature);
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %ecx, %ebp
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
cmpb $0x0, 0x17(%rsi)
js 0x7df9
movq 0x10(%r15), %rax
movq %rax, 0x10(%rbx)
movups (%r15), %xmm0
movups %xmm0, (%rbx)
jmp 0x7e14
movl 0x8(%r15), %esi
movq %rbx, %rdi
callq 0x640c
movq (%r15), %rsi
movl 0x8(%r15), %edx
movq %rax, %rdi
callq 0x5300
movq %r14, 0x18(%rbx)
movl %ebp, 0x20(%rbx)
movb $0x0, 0x28(%rbx)
movq 0x1e592(%rip), %r12     # 0x263b8
movq 0x1118(%r12), %rax
subq 0x1110(%r12), %rax
sarq $0x3, %rax
movabsq $-0x3333333333333333, %r13 # imm = 0xCCCCCCCCCCCCCCCD
imulq %rax, %r13
movslq 0x68(%r12), %rax
cmpq %rax, %r13
jae 0x7ea0
cmpb $0x0, 0x17(%rbx)
movq %rbx, %r14
jns 0x7e5e
movq (%rbx), %r14
movq 0x10b8(%r12), %r15
leaq 0x90(%r15), %rsi
movzbl 0x6d(%r12), %ebp
movq %r14, %rdi
movl $0x1, %edx
movl %ebp, %ecx
callq 0x7f96
testb %al, %al
je 0x7f02
addq $0xa8, %r15
movq %r14, %rdi
movq %r15, %rsi
xorl %edx, %edx
movl %ebp, %ecx
callq 0x7f96
testb %al, %al
jne 0x7f02
movslq 0x1158(%r12), %rax
cmpq %rax, %r13
jae 0x7eb8
movb $0x1, 0x115c(%r12)
jmp 0x7f02
leaq 0x1110(%r12), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x161fa
leaq 0x1128(%r12), %rdi
movq %r14, %rsi
callq 0x1758c
leaq 0x1130(%r12), %rdx
movq 0x1118(%r12), %rcx
cmpq %rdx, %rax
je 0x7f11
leaq -0x28(%rcx), %rax
movq %rax, 0x1118(%r12)
cmpb $0x0, -0x11(%rcx)
js 0x7f5b
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
subq 0x1110(%r12), %rcx
shrq $0x3, %rcx
imull $0xcccccccd, %ecx, %eax # imm = 0xCCCCCCCD
movl %eax, 0x1158(%r12)
movb $0x1, 0x28(%rbx)
movq 0x1e482(%rip), %rax     # 0x263b8
movq 0x10d0(%rax), %r14
movq 0x10d8(%rax), %r15
cmpq %r15, %r14
je 0x7f02
movq (%r14), %rdi
movq (%rdi), %rax
movq %rbx, %rsi
callq *0x38(%rax)
addq $0x8, %r14
jmp 0x7f44
movq (%rax), %rdi
testq %rdi, %rdi
je 0x7f02
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x5480
jmp 0x7f78
movq %rax, %r14
cmpb $0x0, 0x17(%rbx)
jns 0x7f8e
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x7f8e
callq 0x5480
movq %r14, %rdi
callq 0x5620