LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::toString[abi:cxx11](unsigned long)
std::string toString( unsigned long value ) {
    std::ostringstream oss;
    oss << value;
    if( value > Detail::hexThreshold )
        oss << " (0x" << std::hex << value << ")";
    return oss.str();
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x180, %rsp            # imm = 0x180
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0xb5f0
movq %r15, %rdi
movq %r14, %rsi
callq 0xb300
cmpq $0x100, %r14            # imm = 0x100
jb 0x10f03
leaq 0x33b05(%rip), %rsi     # 0x449c3
leaq 0x8(%rsp), %rdi
movl $0x4, %edx
callq 0xb530
leaq 0x8(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x20(%rsp,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x20(%rsp,%rax)
movq %r14, %rsi
callq 0xb300
leaq 0x33a91(%rip), %rsi     # 0x44987
movl $0x1, %edx
movq %rax, %rdi
callq 0xb530
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb6f0
movq 0x4f071(%rip), %rsi     # 0x5ff88
leaq 0x8(%rsp), %rdi
callq 0xb220
leaq 0x78(%rsp), %rdi
callq 0xb120
movq %rbx, %rax
addq $0x180, %rsp            # imm = 0x180
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x4f043(%rip), %rsi     # 0x5ff88
leaq 0x8(%rsp), %rdi
callq 0xb220
leaq 0x78(%rsp), %rdi
callq 0xb120
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::toString[abi:cxx11](long long)
std::string toString( long long value ) {
    std::ostringstream oss;
    oss << value;
    if( value > Detail::hexThreshold )
        oss << " (0x" << std::hex << value << ")";
    return oss.str();
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x180, %rsp            # imm = 0x180
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0xb5f0
movq %r15, %rdi
movq %r14, %rsi
callq 0xb150
cmpq $0x100, %r14            # imm = 0x100
jl 0x11147
leaq 0x338c1(%rip), %rsi     # 0x449c3
leaq 0x8(%rsp), %rdi
movl $0x4, %edx
callq 0xb530
leaq 0x8(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x20(%rsp,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x20(%rsp,%rax)
movq %r14, %rsi
callq 0xb150
leaq 0x3384d(%rip), %rsi     # 0x44987
movl $0x1, %edx
movq %rax, %rdi
callq 0xb530
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb6f0
movq 0x4ee2d(%rip), %rsi     # 0x5ff88
leaq 0x8(%rsp), %rdi
callq 0xb220
leaq 0x78(%rsp), %rdi
callq 0xb120
movq %rbx, %rax
addq $0x180, %rsp            # imm = 0x180
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x4edff(%rip), %rsi     # 0x5ff88
leaq 0x8(%rsp), %rdi
callq 0xb220
leaq 0x78(%rsp), %rdi
callq 0xb120
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::toString[abi:cxx11](unsigned long long)
std::string toString( unsigned long long value ) {
    std::ostringstream oss;
    oss << value;
    if( value > Detail::hexThreshold )
        oss << " (0x" << std::hex << value << ")";
    return oss.str();
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x180, %rsp            # imm = 0x180
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0xb5f0
movq %r15, %rdi
movq %r14, %rsi
callq 0xb2f0
cmpq $0x100, %r14            # imm = 0x100
jb 0x11224
leaq 0x337e4(%rip), %rsi     # 0x449c3
leaq 0x8(%rsp), %rdi
movl $0x4, %edx
callq 0xb530
leaq 0x8(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x20(%rsp,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x20(%rsp,%rax)
movq %r14, %rsi
callq 0xb2f0
leaq 0x33770(%rip), %rsi     # 0x44987
movl $0x1, %edx
movq %rax, %rdi
callq 0xb530
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb6f0
movq 0x4ed50(%rip), %rsi     # 0x5ff88
leaq 0x8(%rsp), %rdi
callq 0xb220
leaq 0x78(%rsp), %rdi
callq 0xb120
movq %rbx, %rax
addq $0x180, %rsp            # imm = 0x180
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x4ed22(%rip), %rsi     # 0x5ff88
leaq 0x8(%rsp), %rdi
callq 0xb220
leaq 0x78(%rsp), %rdi
callq 0xb120
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::ResultBuilder::captureExpectedException(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
void ResultBuilder::captureExpectedException( std::string const& expectedMessage ) {
        if( expectedMessage.empty() )
            captureExpectedException( Matchers::Impl::Generic::AllOf<std::string>() );
        else
            captureExpectedException( Matchers::Equals( expectedMessage ) );
    }

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rdi, %rbx
cmpq $0x0, 0x8(%rsi)
je 0x117e5
movq %rsi, %rdx
xorl %eax, %eax
leaq 0x18(%rsp), %rsi
movl %eax, -0x8(%rsi)
leaq 0x4c6a9(%rip), %r14     # 0x5de50
movq %r14, -0x10(%rsi)
movl %eax, (%rsi)
leaq 0x20(%rsp), %rdi
callq 0x1fcd8
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x1186c
leaq 0x30(%rsp), %rax
movq %r14, -0x28(%rax)
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x11826
movq 0x30(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x11826
leaq 0x18(%rsp), %r14
movl $0x0, -0x8(%r14)
leaq 0x4dbcf(%rip), %r15     # 0x5f3c8
movq %r15, -0x10(%r14)
xorps %xmm0, %xmm0
movups %xmm0, (%r14)
movq $0x0, 0x10(%r14)
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x1186c
movq %r15, 0x8(%rsp)
movq %r14, %rdi
callq 0x1f908
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
movq %r15, 0x8(%rsp)
movq %r14, %rdi
callq 0x1f908
jmp 0x11864
movq %rax, %rbx
leaq 0x30(%rsp), %rax
movq %r14, -0x28(%rax)
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x11864
movq 0x30(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::ResultBuilder::captureExpectedException(Catch::Matchers::Impl::Matcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> const&)
void ResultBuilder::captureExpectedException( Matchers::Impl::Matcher<std::string> const& matcher ) {

        assert( m_exprComponents.testFalse == false );
        AssertionResultData data = m_data;
        data.resultType = ResultWas::Ok;
        data.reconstructedExpression = m_assertionInfo.capturedExpression;

        std::string actualMessage = Catch::translateActiveException();
        if( !matcher.match( actualMessage ) ) {
            data.resultType = ResultWas::ExpressionFailed;
            data.reconstructedExpression = actualMessage;
        }
        AssertionResult result( m_assertionInfo, data );
        handleResult( result );
    }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x128, %rsp            # imm = 0x128
cmpb $0x0, 0xb8(%rdi)
jne 0x119aa
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x70(%rdi), %rsi
movq 0x78(%rdi), %rdx
addq %rsi, %rdx
leaq 0x28(%rsp), %rdi
callq 0x319ec
leaq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %r12
movq %r12, -0x10(%r12)
movq 0x90(%rbx), %rsi
movq 0x98(%rbx), %rdx
addq %rsi, %rdx
callq 0x319ec
leaq 0x28(%rsp), %rdi
movl $0x0, 0x40(%rdi)
leaq 0x48(%rbx), %rsi
callq 0xb230
callq 0xc3b7
movq (%rax), %rcx
movq %rax, %rdi
callq *0x20(%rcx)
movq (%rax), %rcx
leaq 0x8(%rsp), %rdi
movq %rax, %rsi
callq *0x10(%rcx)
movq (%r14), %rax
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq *0x28(%rax)
testb %al, %al
jne 0x11929
leaq 0x28(%rsp), %rdi
movl $0x11, 0x40(%rdi)
leaq 0x8(%rsp), %rsi
callq 0xb230
leaq 0x70(%rsp), %rdi
leaq 0x28(%rsp), %rdx
movq %rbx, %rsi
callq 0xe45c
leaq 0x70(%rsp), %rsi
movq %rbx, %rdi
callq 0x11a2e
leaq 0x70(%rsp), %rdi
callq 0xe58e
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1196d
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x11984
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x1199b
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb4a0
addq $0x128, %rsp            # imm = 0x128
popq %rbx
popq %r12
popq %r14
popq %r15
retq
leaq 0x3301d(%rip), %rdi     # 0x449ce
leaq 0x3303a(%rip), %rsi     # 0x449f2
leaq 0x33043(%rip), %rcx     # 0x44a02
movl $0x1fc2, %edx           # imm = 0x1FC2
callq 0xb2d0
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0xe58e
jmp 0x119fb
jmp 0x119f8
jmp 0x11a18
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x11a25
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x11a25
movq %rax, %rbx
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x11a1b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x11a1b
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x14d90
movq %rbx, %rdi
callq 0xb820
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::ResultBuilder::handleResult(Catch::AssertionResult const&)
void ResultBuilder::handleResult( AssertionResult const& result )
    {
        getResultCapture().assertionEnded( result );

        if( !result.isOk() ) {
            if( getCurrentContext().getConfig()->shouldDebugBreak() )
                m_shouldDebugBreak = true;
            if( getCurrentContext().getRunner()->aborting() || (m_assertionInfo.resultDisposition & ResultDisposition::Normal) )
                m_shouldThrow = true;
        }
    }

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rsi, %r14
movq %rdi, %rbx
callq 0xc1bc
movq (%rax), %rcx
movq %rax, %rdi
movq %r14, %rsi
callq *0x10(%rcx)
testb $0x10, 0xb0(%r14)
je 0x11ac5
movl 0x68(%r14), %eax
andl $0x8, %eax
jne 0x11ac5
callq 0xe13b
movq (%rax), %rcx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rax, %rsi
callq *0x30(%rcx)
movq (%r14), %rdi
movq (%rdi), %rax
callq *0x40(%rax)
movl %eax, %ebp
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x11a91
movq (%rdi), %rax
callq *0x18(%rax)
testb %bpl, %bpl
je 0x11a9d
movb $0x1, 0x298(%rbx)
callq 0xe13b
movq (%rax), %rcx
movq %rax, %rdi
callq *0x18(%rcx)
movq (%rax), %rcx
movq %rax, %rdi
callq *0x10(%rcx)
testb %al, %al
jne 0x11abe
testb $0x1, 0x68(%rbx)
je 0x11ac5
movb $0x1, 0x299(%rbx)
addq $0x10, %rsp
popq %rbx
popq %r14
popq %rbp
retq
jmp 0x11aeb
movq %rax, %rbx
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x11ae3
movq (%rdi), %rax
callq *0x18(%rax)
movq %rbx, %rdi
callq 0xb820
movq %rax, %rdi
callq 0x14d37
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TagAliasRegistry::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const
Option<TagAlias> TagAliasRegistry::find( std::string const& alias ) const {
        std::map<std::string, TagAlias>::const_iterator it = m_registry.find( alias );
        if( it != m_registry.end() )
            return it->second;
        else
            return Option<TagAlias>();
    }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x8(%rsi), %rdi
movq %rdx, %rsi
callq 0x32834
addq $0x10, %r14
cmpq %r14, %rax
je 0x125da
addq $0x40, %rax
movq %rbx, %rdi
movq %rax, %rsi
callq 0x157b0
jmp 0x125e1
movq $0x0, (%rbx)
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::RegistrarForTagAliases::RegistrarForTagAliases(char const*, char const*, Catch::SourceLineInfo const&)
RegistrarForTagAliases::RegistrarForTagAliases( char const* alias, char const* tag, SourceLineInfo const& lineInfo ) {
        try {
            TagAliasRegistry::get().add( alias, tag, lineInfo );
        }
        catch( std::exception& ex ) {
            Colour colourGuard( Colour::Red );
            Catch::cerr() << ex.what() << std::endl;
            exit(1);
        }
    }

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rcx, %rbx
movq %rdx, %r14
movq %rsi, %r15
callq 0x12f5c
leaq 0x4d65e(%rip), %rdi     # 0x605f8
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x12898
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
cmpl $0x1, %edx
jne 0x13015
movq %rbx, %rdi
callq 0xb190
movq %rax, %rbx
movb $0x0, 0xf(%rsp)
movl $0x2, %edi
callq 0xe19c
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
movq 0x4d004(%rip), %rdi     # 0x5ffe8
movq %rax, %rsi
callq 0xb470
movq %rax, %rdi
callq 0xb1e0
movl $0x1, %edi
callq 0xb580
movq %rax, %rbx
leaq 0xf(%rsp), %rdi
callq 0xe206
jmp 0x13010
movq %rax, %rbx
callq 0xb750
movq %rbx, %rdi
callq 0xb820
movq %rax, %rdi
callq 0x14d37
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::(anonymous namespace)::PosixColourImpl::use(Catch::Colour::Code)
virtual void use( Colour::Code _colourCode ) {
            switch( _colourCode ) {
                case Colour::None:
                case Colour::White:     return setColour( "[0m" );
                case Colour::Red:       return setColour( "[0;31m" );
                case Colour::Green:     return setColour( "[0;32m" );
                case Colour::Blue:      return setColour( "[0:34m" );
                case Colour::Cyan:      return setColour( "[0;36m" );
                case Colour::Yellow:    return setColour( "[0;33m" );
                case Colour::Grey:      return setColour( "[1;30m" );

                case Colour::LightGrey:     return setColour( "[0;37m" );
                case Colour::BrightRed:     return setColour( "[1;31m" );
                case Colour::BrightGreen:   return setColour( "[1;32m" );
                case Colour::BrightWhite:   return setColour( "[1;37m" );

                case Colour::Bright: throw std::logic_error( "not a colour" );
            }
        }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
cmpl $0x17, %esi
ja 0x13cc5
movl %esi, %eax
leaq 0x30436(%rip), %rcx     # 0x44088
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x3100e(%rip), %rdi     # 0x44c70
jmp 0x13cbc
leaq 0x3103a(%rip), %rdi     # 0x44ca5
jmp 0x13cbc
leaq 0x3102a(%rip), %rdi     # 0x44c9e
jmp 0x13cbc
leaq 0x31036(%rip), %rdi     # 0x44cb3
jmp 0x13cbc
leaq 0x30fee(%rip), %rdi     # 0x44c74
jmp 0x13cbc
leaq 0x30ff3(%rip), %rdi     # 0x44c82
jmp 0x13cbc
leaq 0x30ff1(%rip), %rdi     # 0x44c89
jmp 0x13cbc
leaq 0x30fda(%rip), %rdi     # 0x44c7b
jmp 0x13cbc
leaq 0x31002(%rip), %rdi     # 0x44cac
jmp 0x13cbc
leaq 0x30fdd(%rip), %rdi     # 0x44c90
jmp 0x13cbc
leaq 0x30fdb(%rip), %rdi     # 0x44c97
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x13d12
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movl $0x10, %edi
callq 0xb1f0
movq %rax, %rbx
leaq 0x30fd9(%rip), %rsi     # 0x44cba
movq %rax, %rdi
callq 0xb640
movq 0x4c2d8(%rip), %rsi     # 0x5ffc8
movq 0x4c2a1(%rip), %rdx     # 0x5ff98
movq %rbx, %rdi
callq 0xb7d0
movq %rax, %r14
movq %rbx, %rdi
callq 0xb360
movq %r14, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestSpecParser::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
TestSpecParser& parse( std::string const& arg ) {
            m_mode = None;
            m_exclusion = false;
            m_start = std::string::npos;
            m_arg = m_tagAliases->expandAliases( arg );
            for( m_pos = 0; m_pos < m_arg.size(); ++m_pos )
                visitChar( m_arg[m_pos] );
            if( m_mode == Name )
                addPattern<TestSpec::NamePattern>();
            return *this;
        }

// Assembly:
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rsi, %rdx
movq %rdi, %rbx
movl $0x0, (%rdi)
movb $0x0, 0x4(%rdi)
movq $-0x1, 0x8(%rdi)
movq 0x68(%rdi), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq *0x18(%rax)
leaq 0x18(%rbx), %rdi
movq %r14, %rsi
callq 0xb590
movq (%r14), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x1432b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq $0x0, 0x10(%rbx)
cmpq $0x0, 0x20(%rbx)
je 0x1435d
xorl %eax, %eax
movq 0x18(%rbx), %rcx
movsbl (%rcx,%rax), %esi
movq %rbx, %rdi
callq 0x1c6ae
movq 0x10(%rbx), %rax
incq %rax
movq %rax, 0x10(%rbx)
cmpq 0x20(%rbx), %rax
jb 0x1433c
cmpl $0x1, (%rbx)
jne 0x1436a
movq %rbx, %rdi
callq 0x1c800
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r14
retq
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::extractClassName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
inline std::string extractClassName( std::string const& classOrQualifiedMethodName ) {
        std::string className = classOrQualifiedMethodName;
        if( startsWith( className, "&" ) )
        {
            std::size_t lastColons = className.rfind( "::" );
            std::size_t penultimateColons = className.rfind( "::", lastColons-1 );
            if( penultimateColons == std::string::npos )
                penultimateColons = 1;
            className = className.substr( penultimateColons, lastColons-penultimateColons );
        }
        return className;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
leaq 0x10(%rdi), %r12
movq %r12, (%rdi)
movq (%rsi), %rax
movq 0x8(%rsi), %rdx
addq %rax, %rdx
movq %rax, %rsi
callq 0x319ec
leaq 0x18(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x3004e(%rip), %rsi     # 0x44c59
leaq 0x30048(%rip), %rdx     # 0x44c5a
leaq 0x8(%rsp), %rdi
callq 0x31a82
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0xe998
movl %eax, %ebp
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x14c42
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
testb %bpl, %bpl
je 0x14cc1
leaq 0x3000d(%rip), %r14     # 0x44c5b
movl $0x2, %ecx
movq %rbx, %rdi
movq %r14, %rsi
movq $-0x1, %rdx
callq 0xb610
movq %rax, %r15
leaq -0x1(%rax), %rdx
movl $0x2, %ecx
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb610
cmpq $-0x1, %rax
movl $0x1, %edx
cmovneq %rax, %rdx
subq %rdx, %r15
leaq 0x8(%rsp), %rdi
movq %rbx, %rsi
movq %r15, %rcx
callq 0xb4d0
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb590
movq (%r14), %rdi
cmpq %r13, %rdi
je 0x14cc1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x14cf1
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x14cf4
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x14cf4
movq %rax, %r14
movq (%rbx), %rdi
cmpq %r12, %rdi
je 0x14d08
movq (%r12), %rsi
incq %rsi
callq 0xb4a0
movq %r14, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::parseSpecialTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
inline TestCaseInfo::SpecialProperties parseSpecialTag( std::string const& tag ) {
        if( startsWith( tag, "." ) ||
            tag == "hide" ||
            tag == "!hide" )
            return TestCaseInfo::IsHidden;
        else if( tag == "!throws" )
            return TestCaseInfo::Throws;
        else if( tag == "!shouldfail" )
            return TestCaseInfo::ShouldFail;
        else if( tag == "!mayfail" )
            return TestCaseInfo::MayFail;
        else
            return TestCaseInfo::None;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x30e44(%rip), %rsi     # 0x45cd7
leaq 0x30e3e(%rip), %rdx     # 0x45cd8
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x31a82
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe998
testb %al, %al
jne 0x14f3c
leaq 0x2fe07(%rip), %rsi     # 0x44cc8
movq %rbx, %rdi
callq 0xb100
testl %eax, %eax
je 0x14f3c
leaq 0x2fdf3(%rip), %rsi     # 0x44cc7
movq %rbx, %rdi
callq 0xb100
movl %eax, %ebp
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x14ef5
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
testl %ebp, %ebp
je 0x14f53
leaq 0x2fdcd(%rip), %rsi     # 0x44ccd
movq %rbx, %rdi
callq 0xb100
testl %eax, %eax
je 0x14f63
leaq 0x2fdc2(%rip), %rsi     # 0x44cd5
movq %rbx, %rdi
callq 0xb100
testl %eax, %eax
je 0x14f6a
leaq 0x2fdbb(%rip), %rsi     # 0x44ce1
movq %rbx, %rdi
callq 0xb100
movl %eax, %ecx
xorl %eax, %eax
testl %ecx, %ecx
sete %al
shll $0x3, %eax
jmp 0x14f58
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x14f53
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movl $0x2, %eax
addq $0x28, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x10, %eax
jmp 0x14f58
movl $0x4, %eax
jmp 0x14f58
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x14f8b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::enforceNotReservedTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, Catch::SourceLineInfo const&)
inline void enforceNotReservedTag( std::string const& tag, SourceLineInfo const& _lineInfo ) {
        if( isReservedTag( tag ) ) {
            {
                Colour colourGuard( Colour::Red );
                Catch::cerr()
                    << "Tag name [" << tag << "] not allowed.\n"
                    << "Tag names starting with non alpha-numeric characters are reserved\n";
            }
            {
                Colour colourGuard( Colour::FileName );
                Catch::cerr() << _lineInfo << std::endl;
            }
            exit(1);
        }
    }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
callq 0x14e76
testl %eax, %eax
jne 0x14fbc
cmpq $0x0, 0x8(%r14)
je 0x14fbc
movq (%r14), %rax
movsbl (%rax), %edi
callq 0xb4b0
testl %eax, %eax
je 0x14fc4
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movb $0x0, 0x7(%rsp)
movl $0x2, %edi
callq 0xe19c
movq 0x4b00e(%rip), %rdi     # 0x5ffe8
leaq 0x2fd09(%rip), %rsi     # 0x44cea
movl $0xa, %edx
callq 0xb530
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq 0x4afef(%rip), %rdi     # 0x5ffe8
callq 0xb530
movq %rax, %r14
leaq 0x2fced(%rip), %rsi     # 0x44cf5
movl $0xf, %edx
movq %rax, %rdi
callq 0xb530
leaq 0x2fce9(%rip), %rsi     # 0x44d05
movl $0x42, %edx
movq %r14, %rdi
callq 0xb530
leaq 0x7(%rsp), %rdi
callq 0xe206
movb $0x0, 0x6(%rsp)
movl $0x17, %edi
callq 0xe19c
movq 0x4af9f(%rip), %rdi     # 0x5ffe8
movq %rbx, %rsi
callq 0xd423
movq 0x4af90(%rip), %rdi     # 0x5ffe8
callq 0xb1e0
leaq 0x6(%rsp), %rdi
callq 0xe206
movl $0x1, %edi
callq 0xb580
movq %rax, %rbx
leaq 0x6(%rsp), %rdi
jmp 0x15083
movq %rax, %rbx
leaq 0x7(%rsp), %rdi
callq 0xe206
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> Catch::fpToString<double>(double, int)
std::string fpToString( T value, int precision ) {
    std::ostringstream oss;
    oss << std::setprecision( precision )
        << std::fixed
        << value;
    std::string d = oss.str();
    std::size_t i = d.find_last_not_of( '0' );
    if( i != std::string::npos && i != d.size()-1 ) {
        if( d[i] == '.' )
            i++;
        d = d.substr( 0, i+1 );
    }
    return d;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x1a0, %rsp            # imm = 0x1A0
movl %esi, %ebp
movsd %xmm0, (%rsp)
movq %rdi, %rbx
leaq 0x28(%rsp), %r14
movq %r14, %rdi
callq 0xb5f0
movq (%r14), %rax
movq -0x18(%rax), %rcx
movslq %ebp, %rdx
movq %rdx, 0x30(%rsp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl 0x40(%rsp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, 0x40(%rsp,%rax)
movq %r14, %rdi
movsd (%rsp), %xmm0
callq 0xb700
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0xb6f0
movq %rbx, %rdi
movl $0x30, %esi
movq $-0x1, %rdx
callq 0xb320
cmpq $-0x1, %rax
je 0x15538
movq 0x8(%rbx), %rcx
decq %rcx
cmpq %rcx, %rax
je 0x15538
movq (%rbx), %rcx
xorl %edx, %edx
cmpb $0x2e, (%rcx,%rax)
sete %dl
leaq (%rax,%rdx), %rcx
incq %rcx
leaq 0x8(%rsp), %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0xb4d0
leaq 0x8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb590
movq (%r14), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x15538
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq 0x4aa49(%rip), %rsi     # 0x5ff88
leaq 0x28(%rsp), %rdi
callq 0xb220
leaq 0x98(%rsp), %rdi
callq 0xb120
movq %rbx, %rax
addq $0x1a0, %rsp            # imm = 0x1A0
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %r14
movq (%rbx), %rdi
addq $0x10, %rbx
cmpq %rbx, %rdi
je 0x15584
movq (%rbx), %rsi
incq %rsi
callq 0xb4a0
jmp 0x15584
movq %rax, %r14
movq 0x4a9fd(%rip), %rsi     # 0x5ff88
leaq 0x28(%rsp), %rdi
callq 0xb220
leaq 0x98(%rsp), %rdi
callq 0xb120
movq %r14, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::Session::Session()
Session()
        : m_cli( makeCommandLineParser() ) {
            if( alreadyInstantiated ) {
                std::string msg = "Only one instance of Catch::Session can ever be used";
                Catch::cerr() << msg << std::endl;
                throw std::logic_error( msg );
            }
            alreadyInstantiated = true;
        }

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x20, %rsp
movq %rdi, %r14
leaq 0x49791(%rip), %rax     # 0x5f4d8
movq %rax, (%rdi)
leaq 0x8(%rdi), %rbx
movq %rbx, %rdi
callq 0x2046e
xorps %xmm0, %xmm0
movups %xmm0, 0x78(%r14)
movups %xmm0, 0x68(%r14)
movl $0x0, 0x87(%r14)
movaps 0x2e29b(%rip), %xmm1    # 0x44010
movups %xmm1, 0x8c(%r14)
xorl %eax, %eax
movq %rax, 0x9c(%r14)
leaq 0xb8(%r14), %rcx
movq %rcx, 0xa8(%r14)
movq %rax, 0xb0(%r14)
movb %al, 0xb8(%r14)
leaq 0xd8(%r14), %rcx
movq %rcx, 0xc8(%r14)
movq %rax, 0xd0(%r14)
movb %al, 0xd8(%r14)
leaq 0xf8(%r14), %rcx
movq %rcx, 0xe8(%r14)
movq %rax, 0xf0(%r14)
movb %al, 0xf8(%r14)
movups %xmm0, 0x108(%r14)
movups %xmm0, 0x118(%r14)
movups %xmm0, 0x128(%r14)
movq %rax, 0x138(%r14)
cmpb $0x1, 0x4a77a(%rip)     # 0x6057a
je 0x15e17
movb $0x1, 0x4a771(%rip)     # 0x6057a
addq $0x20, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x2ef2e(%rip), %rsi     # 0x44d55
leaq 0x2ef5b(%rip), %rdx     # 0x44d89
movq %rsp, %rdi
callq 0x31a82
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq 0x4a1a2(%rip), %rdi     # 0x5ffe8
callq 0xb530
movq %rax, %rdi
callq 0xb1e0
movl $0x10, %edi
callq 0xb1f0
movq %rax, %r12
movq %rsp, %rsi
movq %rax, %rdi
callq 0xb680
movq 0x4a156(%rip), %rsi     # 0x5ffc8
movq 0x4a11f(%rip), %rdx     # 0x5ff98
movq %r12, %rdi
callq 0xb7d0
movq %rax, %r15
movq %r12, %rdi
callq 0xb360
jmp 0x15e91
movq %rax, %r15
movq (%rsp), %rdi
cmpq %r13, %rdi
je 0x15eac
movq 0x10(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x15eac
movq %rax, %r15
movq 0x138(%r14), %rdi
testq %rdi, %rdi
je 0x15ebe
movq (%rdi), %rax
callq *0x18(%rax)
leaq 0x68(%r14), %r12
subq $-0x80, %r14
movq %r14, %rdi
callq 0x21a6c
movq %r12, %rdi
callq 0x21ad4
movq %rbx, %rdi
callq 0x21b32
movq %r15, %rdi
callq 0xb820
movq %rax, %rdi
callq 0x14d37
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::WildcardPattern::matches(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const
virtual bool matches( std::string const& str ) const {
            switch( m_wildcard ) {
                case NoWildcard:
                    return m_pattern == adjustCase( str );
                case WildcardAtStart:
                    return endsWith( adjustCase( str ), m_pattern );
                case WildcardAtEnd:
                    return startsWith( adjustCase( str ), m_pattern );
                case WildcardAtBothEnds:
                    return contains( adjustCase( str ), m_pattern );
            }

#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunreachable-code"
#endif
            throw std::logic_error( "Unknown enum" );
#ifdef __clang__
#pragma clang diagnostic pop
#endif
        }

// Assembly:
pushq %r14
pushq %rbx
subq $0x28, %rsp
movl 0xc(%rdi), %eax
cmpq $0x3, %rax
ja 0x16b22
movq %rsi, %rdx
movq %rdi, %rbx
leaq 0x2d645(%rip), %rcx     # 0x44060
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1d302
movq 0x18(%rbx), %rdx
cmpq 0x8(%r14), %rdx
jne 0x16af3
movq 0x8(%rsp), %r14
testq %rdx, %rdx
je 0x16afc
movq 0x10(%rbx), %rdi
movq %r14, %rsi
callq 0xb4c0
testl %eax, %eax
sete %bl
jmp 0x16afe
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1d302
addq $0x10, %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0xe998
jmp 0x16ad9
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1d302
movq 0x10(%rbx), %rsi
movq 0x18(%rbx), %rcx
movq %r14, %rdi
xorl %edx, %edx
callq 0xb7f0
cmpq $-0x1, %rax
setne %bl
movq (%r14), %rdi
leaq 0x18(%rsp), %rax
jmp 0x16ae4
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1d302
addq $0x10, %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0xfb6f
movl %eax, %ebx
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x16b18
movq 0x18(%rsp), %rsi
incq %rsi
jmp 0x16b13
movq 0x8(%rsp), %r14
xorl %ebx, %ebx
jmp 0x16afe
movb $0x1, %bl
leaq 0x18(%rsp), %rax
cmpq %rax, %r14
je 0x16b18
movq 0x18(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0xb4a0
movl %ebx, %eax
addq $0x28, %rsp
popq %rbx
popq %r14
retq
movl $0x10, %edi
callq 0xb1f0
movq %rax, %r14
leaq 0x2eaa3(%rip), %rsi     # 0x455d9
movq %rax, %rdi
callq 0xb640
movq 0x49483(%rip), %rsi     # 0x5ffc8
movq 0x4944c(%rip), %rdx     # 0x5ff98
movq %r14, %rdi
callq 0xb7d0
movq %rax, %rbx
movq %r14, %rdi
callq 0xb360
jmp 0x16b81
jmp 0x16b63
movq %rax, %rbx
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x16b81
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq %rbx, %rdi
callq 0xb820
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestCaseTracking::TrackerBase::close()
virtual void close() CATCH_OVERRIDE {

            // Close any still open children (e.g. generators)
            while( &m_ctx.currentTracker() != this )
                m_ctx.currentTracker().close();

            switch( m_runState ) {
                case NotStarted:
                case CompletedSuccessfully:
                case Failed:
                    throw std::logic_error( "Illogical state" );

                case NeedsAnotherRun:
                    break;;

                case Executing:
                    m_runState = CompletedSuccessfully;
                    break;
                case ExecutingChildren:
                    if( m_children.empty() || m_children.back()->isComplete() )
                        m_runState = CompletedSuccessfully;
                    break;

                default:
                    throw std::logic_error( "Unexpected state" );
            }
            moveToParent();
            m_ctx.completeCycle();
        }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x30(%rdi), %rax
movq 0x8(%rax), %rdi
cmpq %rbx, %rdi
je 0x16e0a
movq (%rdi), %rax
callq *0x50(%rax)
movq 0x30(%rbx), %rax
jmp 0x16df5
movl 0x58(%rbx), %eax
cmpq $0x5, %rax
ja 0x16ea3
leaq 0x2d252(%rip), %rcx     # 0x44070
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x48(%rbx), %rax
cmpq %rax, 0x40(%rbx)
je 0x16e3f
movq -0x8(%rax), %rdi
movq (%rdi), %rax
callq *0x28(%rax)
testb %al, %al
je 0x16e46
movl $0x4, 0x58(%rbx)
movq 0x38(%rbx), %rax
testq %rax, %rax
je 0x16e84
movq 0x30(%rbx), %rcx
movq %rax, 0x8(%rcx)
movl $0x2, 0x10(%rcx)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movl $0x10, %edi
callq 0xb1f0
movq %rax, %rbx
leaq 0x2e7b6(%rip), %rsi     # 0x45630
movq %rax, %rdi
callq 0xb640
jmp 0x16ebf
leaq 0x2e75b(%rip), %rdi     # 0x455e6
leaq 0x2db60(%rip), %rsi     # 0x449f2
leaq 0x2e7b8(%rip), %rcx     # 0x45651
movl $0x15d5, %edx           # imm = 0x15D5
callq 0xb2d0
movl $0x10, %edi
callq 0xb1f0
movq %rax, %rbx
leaq 0x2e789(%rip), %rsi     # 0x45640
movq %rax, %rdi
callq 0xb640
movq 0x49102(%rip), %rsi     # 0x5ffc8
movq 0x490cb(%rip), %rdx     # 0x5ff98
movq %rbx, %rdi
callq 0xb7d0
jmp 0x16ed7
movq %rax, %r14
movq %rbx, %rdi
callq 0xb360
movq %r14, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestCaseTracking::TrackerBase::fail()
virtual void fail() CATCH_OVERRIDE {
            m_runState = Failed;
            if( m_parent )
                m_parent->markAsNeedingAnotherRun();
            moveToParent();
            m_ctx.completeCycle();
        }

// Assembly:
pushq %rbx
movq %rdi, %rbx
movl $0x5, 0x58(%rdi)
movq 0x38(%rdi), %rdi
testq %rdi, %rdi
je 0x16f1e
movq (%rdi), %rax
callq *0x60(%rax)
movq 0x38(%rbx), %rax
testq %rax, %rax
je 0x16f1e
movq 0x30(%rbx), %rcx
movq %rax, 0x8(%rcx)
movl $0x2, 0x10(%rcx)
popq %rbx
retq
leaq 0x2e6c1(%rip), %rdi     # 0x455e6
leaq 0x2dac6(%rip), %rsi     # 0x449f2
leaq 0x2e71e(%rip), %rcx     # 0x45651
movl $0x15d5, %edx           # imm = 0x15D5
callq 0xb2d0
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestCaseTracking::TrackerBase::findChild(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
virtual ITracker* findChild( std::string const& name ) CATCH_OVERRIDE {
            Children::const_iterator it = std::find_if( m_children.begin(), m_children.end(), TrackerHasName( name ) );
            return( it != m_children.end() )
                ? it->get()
                : CATCH_NULL;
        }

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x20, %rsp
movq %rdi, %rbx
movq 0x40(%rdi), %r14
movq 0x48(%rdi), %r15
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rsi), %rax
movq 0x8(%rsi), %rdx
addq %rax, %rdx
movq %rsp, %r12
movq %r12, %rdi
movq %rax, %rsi
callq 0x319ec
movq %r14, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x29680
movq %rax, %r14
movq (%rsp), %rdi
cmpq %r13, %rdi
je 0x16fb0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0xb4a0
cmpq 0x48(%rbx), %r14
je 0x16fbb
movq (%r14), %rax
jmp 0x16fbd
xorl %eax, %eax
addq $0x20, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r13, %rdi
je 0x16fe4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestCaseTracking::TrackerBase::openChild()
virtual void openChild() CATCH_OVERRIDE {
            if( m_runState != ExecutingChildren ) {
                m_runState = ExecutingChildren;
                if( m_parent )
                    m_parent->openChild();
            }
        }

// Assembly:
cmpl $0x2, 0x58(%rdi)
je 0x17008
movl $0x2, 0x58(%rdi)
movq 0x38(%rdi), %rdi
testq %rdi, %rdi
je 0x17008
movq (%rdi), %rax
jmpq *0x78(%rax)
retq
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestRegistry::getAllTestsSorted(Catch::IConfig const&) const
virtual std::vector<TestCase> const& getAllTestsSorted( IConfig const& config ) const {
            if( m_sortedFunctions.empty() )
                enforceNoDuplicateTestCases( m_functions );

            if(  m_currentSortOrder != config.runOrder() || m_sortedFunctions.empty() ) {
                m_sortedFunctions = sortTests( config, m_functions );
                m_currentSortOrder = config.runOrder();
            }
            return m_sortedFunctions;
        }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x40, %rsp
movq %rsi, %r14
movq %rdi, %rbx
movq 0x28(%rdi), %rax
cmpq 0x30(%rdi), %rax
jne 0x17057
leaq 0x8(%rbx), %rdi
callq 0xd2c2
movl 0x20(%rbx), %ebp
movq (%r14), %rax
movq %r14, %rdi
callq *0x70(%rax)
cmpl %eax, %ebp
jne 0x17075
movq 0x28(%rbx), %rax
cmpq 0x30(%rbx), %rax
jne 0x17149
leaq 0x8(%rbx), %rsi
movq %rsp, %rdi
callq 0x29946
movq (%r14), %rax
movq %r14, %rdi
callq *0x70(%rax)
cmpl $0x1, %eax
je 0x170b1
cmpl $0x2, %eax
jne 0x170fa
movq %r14, %rdi
callq 0x100be
movq (%rsp), %rdi
movq 0x8(%rsp), %rsi
leaq 0x20(%rsp), %rdx
callq 0x299e1
jmp 0x170fa
movq (%rsp), %r15
movq 0x8(%rsp), %r12
cmpq %r12, %r15
je 0x170fa
movq %r12, %rax
subq %r15, %rax
sarq $0x3, %rax
movabsq $-0x5075075075075075, %rcx # imm = 0xAF8AF8AF8AF8AF8B
imulq %rax, %rcx
bsrq %rcx, %rdx
xorl $0x3f, %edx
addl %edx, %edx
xorq $0x7e, %rdx
movq %r15, %rdi
movq %r12, %rsi
callq 0x29bad
movq %r15, %rdi
movq %r12, %rsi
callq 0x29c9d
movq 0x38(%rbx), %rax
movq %rsp, %r15
movaps (%r15), %xmm0
movq 0x10(%r15), %rcx
movq %rcx, 0x38(%rbx)
movups 0x28(%rbx), %xmm1
movups %xmm0, 0x28(%rbx)
leaq 0x20(%rsp), %rdi
movaps %xmm1, (%rdi)
movq %rax, 0x10(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%r15)
movq $0x0, 0x10(%r15)
callq 0x14ba2
movq %r15, %rdi
callq 0x14ba2
movq (%r14), %rax
movq %r14, %rdi
callq *0x70(%rax)
movl %eax, 0x20(%rbx)
addq $0x28, %rbx
movq %rbx, %rax
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1715f
movq %rax, %rbx
movq %rsp, %rdi
callq 0x14ba2
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::TestRegistry::registerTest(Catch::TestCase const&)
virtual void registerTest( TestCase const& testCase ) {
            std::string name = testCase.getTestCaseInfo().name;
            if( name == "" ) {
                std::ostringstream oss;
                oss << "Anonymous test case " << ++m_unnamedCount;
                return registerTest( testCase.withName( oss.str() ) );
            }
            m_functions.push_back( testCase );
        }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x2d8, %rsp            # imm = 0x2D8
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x38(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rsi), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
leaq 0x28(%rsp), %r15
movq %r15, %rdi
callq 0x319ec
leaq 0x2e833(%rip), %rsi     # 0x459e1
movq %r15, %rdi
callq 0xb100
testl %eax, %eax
je 0x171ce
addq $0x8, %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x14b72
jmp 0x17291
leaq 0x48(%rsp), %rdi
callq 0xb5f0
leaq 0x2e4ac(%rip), %rsi     # 0x4568b
leaq 0x48(%rsp), %rdi
movl $0x14, %edx
callq 0xb530
movq 0x40(%rbx), %rsi
incq %rsi
movq %rsi, 0x40(%rbx)
leaq 0x48(%rsp), %rdi
callq 0xb300
leaq 0x50(%rsp), %rsi
leaq 0x8(%rsp), %rdi
callq 0xb6f0
leaq 0x1c0(%rsp), %rdi
leaq 0x8(%rsp), %rdx
movq %r14, %rsi
callq 0xeee4
movq (%rbx), %rax
leaq 0x1c0(%rsp), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x2d0(%rsp), %rdi
testq %rdi, %rdi
je 0x1724b
movq (%rdi), %rax
callq *0x18(%rax)
leaq 0x1c0(%rsp), %rdi
callq 0x15090
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x17273
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq 0x48d0e(%rip), %rsi     # 0x5ff88
leaq 0x48(%rsp), %rdi
callq 0xb220
leaq 0xb8(%rsp), %rdi
callq 0xb120
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x172a8
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb4a0
addq $0x2d8, %rsp            # imm = 0x2D8
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %rdi
callq 0x14d37
movq %rax, %rbx
leaq 0x1c0(%rsp), %rdi
callq 0x14d10
jmp 0x172d4
movq %rax, %rbx
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x172fd
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x172fd
jmp 0x172fa
jmp 0x172f5
movq %rax, %rbx
jmp 0x1731b
movq %rax, %rbx
movq 0x48c84(%rip), %rsi     # 0x5ff88
leaq 0x48(%rsp), %rdi
callq 0xb220
leaq 0xb8(%rsp), %rdi
callq 0xb120
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x17332
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq %rbx, %rdi
callq 0xb820
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::CumulativeReporterBase::assertionEnded(Catch::AssertionStats const&)
virtual bool assertionEnded( AssertionStats const& assertionStats ) {
            assert( !m_sectionStack.empty() );
            SectionNode& sectionNode = *m_sectionStack.back();
            sectionNode.assertions.push_back( assertionStats );
            return true;
        }

// Assembly:
pushq %rax
movq 0xb0(%rdi), %rax
cmpq %rax, 0xa8(%rdi)
je 0x17779
movl $0xc0, %edi
addq -0x8(%rax), %rdi
callq 0x2b1cc
movb $0x1, %al
popq %rcx
retq
leaq 0x2df20(%rip), %rdi     # 0x456a0
leaq 0x2d26b(%rip), %rsi     # 0x449f2
leaq 0x2df2a(%rip), %rcx     # 0x456b8
movl $0x2193, %edx           # imm = 0x2193
callq 0xb2d0
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::CumulativeReporterBase::testCaseEnded(Catch::TestCaseStats const&)
virtual void testCaseEnded( TestCaseStats const& testCaseStats ) CATCH_OVERRIDE {
            Ptr<TestCaseNode> node = new TestCaseNode( testCaseStats );
            assert( m_sectionStack.size() == 0 );
            node->children.push_back( m_rootSection );
            m_testCases.push_back( node );
            m_rootSection.reset();

            assert( m_deepestSection );
            m_deepestSection->stdOut = testCaseStats.stdOut;
            m_deepestSection->stdErr = testCaseStats.stdErr;
        }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movl $0x1b8, %edi            # imm = 0x1B8
callq 0xb480
movq %rax, %r15
movl $0x0, 0x8(%rax)
leaq 0x47f87(%rip), %rax     # 0x5f798
movq %rax, (%r15)
leaq 0x10(%r15), %rdi
movq %rbx, %rsi
callq 0x2b72e
xorps %xmm0, %xmm0
movups %xmm0, 0x1a0(%r15)
movq $0x0, 0x1b0(%r15)
movq %r15, (%rsp)
movq (%r15), %rax
movq %r15, %rdi
callq *0x10(%rax)
movq 0xb0(%r14), %rax
cmpq 0xa8(%r14), %rax
jne 0x178eb
addq $0x1a0, %r15            # imm = 0x1A0
leaq 0x98(%r14), %r12
movq %r15, %rdi
movq %r12, %rsi
callq 0x2ad10
leaq 0x50(%r14), %rdi
movq %rsp, %rsi
callq 0x2b6f4
movq (%r12), %rdi
testq %rdi, %rdi
je 0x1788b
movq (%rdi), %rax
callq *0x18(%rax)
movq $0x0, 0x98(%r14)
movq 0xa0(%r14), %rdi
testq %rdi, %rdi
je 0x1790a
leaq 0x148(%rbx), %rsi
addq $0xd8, %rdi
callq 0xb230
addq $0x168, %rbx            # imm = 0x168
movl $0xf8, %edi
addq 0xa0(%r14), %rdi
movq %rbx, %rsi
callq 0xb230
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x178df
movq (%rdi), %rax
callq *0x18(%rax)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
leaq 0x2de68(%rip), %rdi     # 0x4575a
leaq 0x2d0f9(%rip), %rsi     # 0x449f2
leaq 0x2de75(%rip), %rcx     # 0x45775
movl $0x21a0, %edx           # imm = 0x21A0
callq 0xb2d0
leaq 0x2deb5(%rip), %rdi     # 0x457c6
leaq 0x2d0da(%rip), %rsi     # 0x449f2
leaq 0x2de56(%rip), %rcx     # 0x45775
movl $0x21a5, %edx           # imm = 0x21A5
callq 0xb2d0
jmp 0x17957
movq %rax, %rbx
movl $0x1b8, %esi            # imm = 0x1B8
movq %r15, %rdi
callq 0xb4a0
jmp 0x1794f
movq %rax, %rbx
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1794f
movq (%rdi), %rax
callq *0x18(%rax)
movq %rbx, %rdi
callq 0xb820
movq %rax, %rdi
callq 0x14d37
nop
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::CumulativeReporterBase::testRunEnded(Catch::TestRunStats const&)
virtual void testRunEnded( TestRunStats const& testRunStats ) CATCH_OVERRIDE {
            Ptr<TestRunNode> node = new TestRunNode( testRunStats );
            node->children.swap( m_testGroups );
            m_testRuns.push_back( node );
            testRunEndedCumulative();
        }

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rsi, %r15
movq %rdi, %rbx
movl $0x88, %edi
callq 0xb480
movq %rax, %r14
movl $0x0, 0x8(%rax)
leaq 0x47d64(%rip), %rax     # 0x5f828
movq %rax, (%r14)
leaq 0x45fba(%rip), %rax     # 0x5da88
movq %rax, 0x10(%r14)
leaq 0x18(%r14), %rdi
leaq 0x28(%r14), %rax
movq %rax, 0x18(%r14)
movq 0x8(%r15), %rsi
movq 0x10(%r15), %rdx
addq %rsi, %rdx
callq 0x319ec
movb 0x58(%r15), %al
movb %al, 0x68(%r14)
movups 0x28(%r15), %xmm0
movups 0x38(%r15), %xmm1
movups 0x48(%r15), %xmm2
movups %xmm2, 0x58(%r14)
movups %xmm1, 0x48(%r14)
movups %xmm0, 0x38(%r14)
xorps %xmm0, %xmm0
movups %xmm0, 0x70(%r14)
movq $0x0, 0x80(%r14)
leaq 0x8(%rsp), %r15
movq %r14, (%r15)
movq (%r14), %rax
movq %r14, %rdi
callq *0x10(%rax)
movq 0x80(%r14), %rax
movups 0x68(%rbx), %xmm0
movq 0x78(%rbx), %rcx
movq %rcx, 0x80(%r14)
movups 0x70(%r14), %xmm1
movups %xmm0, 0x70(%r14)
movups %xmm1, 0x68(%rbx)
movq %rax, 0x78(%rbx)
leaq 0x80(%rbx), %rdi
movq %r15, %rsi
callq 0x2bdaa
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x88(%rax)
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x17b8b
movq (%rdi), %rax
callq *0x18(%rax)
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x17bc4
movq %rax, %rbx
movl $0x88, %esi
movq %r14, %rdi
callq 0xb4a0
jmp 0x17bbc
movq %rax, %rbx
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x17bbc
movq (%rdi), %rax
callq *0x18(%rax)
movq %rbx, %rdi
callq 0xb820
movq %rax, %rdi
callq 0x14d37
// File: /workspace/github_cpp_makefile_star2_O3/dadocolussi[P]gdc-circular_queue/tests/catch.hpp
// Function: Catch::XmlReporter::testRunStarting(Catch::TestRunInfo const&)
virtual void testRunStarting( TestRunInfo const& testInfo ) CATCH_OVERRIDE {
            StreamingReporterBase::testRunStarting( testInfo );
            m_xml.setStream( stream );
            m_xml.startElement( "Catch" );
            if( !m_config->name().empty() )
                m_xml.writeAttribute( "name", m_config->name() );
        }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r14
movq %rdi, %rbx
addq $0x20, %rdi
callq 0x2033a
leaq 0x28(%rbx), %r15
leaq 0x38(%rbx), %rax
movq %rax, 0x28(%rbx)
movq (%r14), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0x319ec
movq %r15, 0x20(%rbx)
movb $0x0, 0x48(%rbx)
movq 0x18(%rbx), %rax
movq %rax, 0x218(%rbx)
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x2dbab(%rip), %rsi     # 0x457d7
leaq 0x2dba9(%rip), %rdx     # 0x457dc
leaq 0x8(%rsp), %rdi
callq 0x31a82
leaq 0x1d8(%rbx), %r14
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0x2c086
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x17c68
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq 0x10(%rbx), %rsi
movq (%rsi), %rax
leaq 0x8(%rsp), %r15
movq %r15, %rdi
callq *0x30(%rax)
movq (%r15), %rdi
movq 0x8(%r15), %r15
cmpq %r12, %rdi
je 0x17c93
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
testq %r15, %r15
je 0x17d06
leaq 0x8(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x2d267(%rip), %rsi     # 0x44f0e
leaq 0x2d264(%rip), %rdx     # 0x44f12
callq 0x31a82
movq 0x10(%rbx), %rsi
movq (%rsi), %rax
leaq 0x28(%rsp), %rdi
callq *0x30(%rax)
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x2c138
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x17cef
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb4a0
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x17d06
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x17d39
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x17d39
jmp 0x17d36
jmp 0x17d52
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x17d55
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb4a0
jmp 0x17d55
movq %rax, %rbx
movq %rbx, %rdi
callq 0xb820
nop