LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_64_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_64_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_scan_64_pointer = parasail_sg_qe_db_stats_rowcol_scan_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_scan_64_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_scan_64_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_scan_64_pointer = parasail_sg_qe_db_stats_rowcol_scan_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_scan_64_pointer = parasail_sg_qe_db_stats_rowcol_scan_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_scan_64_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_stats_rowcol_scan_64_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1df755
leaq 0x334149(%rip), %rax    # 0x51389c
jmp 0x1df784
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1df769
leaq 0x22a047(%rip), %rax    # 0x4097ae
jmp 0x1df784
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1df77d
leaq 0x5e1fa(%rip), %rax     # 0x23d975
jmp 0x1df784
leaq 0x12e9c5(%rip), %rax    # 0x30e149
movq %rax, 0x55e835(%rip)    # 0x73dfc0
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_32_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_32_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_scan_32_pointer = parasail_sg_qe_db_stats_rowcol_scan_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_scan_32_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_scan_32_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_scan_32_pointer = parasail_sg_qe_db_stats_rowcol_scan_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_scan_32_pointer = parasail_sg_qe_db_stats_rowcol_scan_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_scan_32_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_stats_rowcol_scan_32_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1df7de
leaq 0x3380cb(%rip), %rax    # 0x5178a7
jmp 0x1df80d
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1df7f2
leaq 0x22dc81(%rip), %rax    # 0x40d471
jmp 0x1df80d
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1df806
leaq 0x5e171(%rip), %rax     # 0x23d975
jmp 0x1df80d
leaq 0x132f5f(%rip), %rax    # 0x31276c
movq %rax, 0x55e7b4(%rip)    # 0x73dfc8
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_16_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_16_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_scan_16_pointer = parasail_sg_qe_db_stats_rowcol_scan_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_scan_16_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_scan_16_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_scan_16_pointer = parasail_sg_qe_db_stats_rowcol_scan_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_scan_16_pointer = parasail_sg_qe_db_stats_rowcol_scan_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_scan_16_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_stats_rowcol_scan_16_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1df867
leaq 0x33bd01(%rip), %rax    # 0x51b566
jmp 0x1df896
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1df87b
leaq 0x2316e9(%rip), %rax    # 0x410f62
jmp 0x1df896
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1df88f
leaq 0x5e0e8(%rip), %rax     # 0x23d975
jmp 0x1df896
leaq 0x136e4c(%rip), %rax    # 0x3166e2
movq %rax, 0x55e733(%rip)    # 0x73dfd0
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_8_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_8_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_scan_8_pointer = parasail_sg_qe_db_stats_rowcol_scan_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_scan_8_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_scan_8_pointer = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_scan_8_pointer = parasail_sg_qe_db_stats_rowcol_scan_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_scan_8_pointer = parasail_sg_qe_db_stats_rowcol_scan_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_scan_8_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_stats_rowcol_scan_8_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1df8f0
leaq 0x33fd29(%rip), %rax    # 0x51f617
jmp 0x1df91f
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1df904
leaq 0x23537c(%rip), %rax    # 0x414c7e
jmp 0x1df91f
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1df918
leaq 0x5e05f(%rip), %rax     # 0x23d975
jmp 0x1df91f
leaq 0x13b070(%rip), %rax    # 0x31a98f
movq %rax, 0x55e6b2(%rip)    # 0x73dfd8
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_64_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_64_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_striped_64_pointer = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_striped_64_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_striped_64_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_striped_64_pointer = parasail_sg_qe_db_stats_rowcol_striped_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_striped_64_pointer = parasail_sg_qe_db_stats_rowcol_striped_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_striped_64_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_striped_64_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1df979
leaq 0x3595f0(%rip), %rax    # 0x538f67
jmp 0x1df9a8
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1df98d
leaq 0x24aad6(%rip), %rax    # 0x42a461
jmp 0x1df9a8
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1df9a1
leaq 0x5cf68(%rip), %rax     # 0x23c907
jmp 0x1df9a8
leaq 0x1536c7(%rip), %rax    # 0x33306f
movq %rax, 0x55e631(%rip)    # 0x73dfe0
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_32_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_32_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_striped_32_pointer = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_striped_32_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_striped_32_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_striped_32_pointer = parasail_sg_qe_db_stats_rowcol_striped_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_striped_32_pointer = parasail_sg_qe_db_stats_rowcol_striped_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_striped_32_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_striped_32_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfa02
leaq 0x35d091(%rip), %rax    # 0x53ca91
jmp 0x1dfa31
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfa16
leaq 0x24e484(%rip), %rax    # 0x42de98
jmp 0x1dfa31
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfa2a
leaq 0x5cedf(%rip), %rax     # 0x23c907
jmp 0x1dfa31
leaq 0x1578de(%rip), %rax    # 0x33730f
movq %rax, 0x55e5b0(%rip)    # 0x73dfe8
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_16_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_16_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_striped_16_pointer = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_striped_16_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_striped_16_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_striped_16_pointer = parasail_sg_qe_db_stats_rowcol_striped_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_striped_16_pointer = parasail_sg_qe_db_stats_rowcol_striped_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_striped_16_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_striped_16_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfa8b
leaq 0x360a23(%rip), %rax    # 0x5404ac
jmp 0x1dfaba
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfa9f
leaq 0x251c47(%rip), %rax    # 0x4316e4
jmp 0x1dfaba
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfab3
leaq 0x5ce56(%rip), %rax     # 0x23c907
jmp 0x1dfaba
leaq 0x15b553(%rip), %rax    # 0x33b00d
movq %rax, 0x55e52f(%rip)    # 0x73dff0
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_8_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_8_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_striped_8_pointer = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_striped_8_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_striped_8_pointer = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_striped_8_pointer = parasail_sg_qe_db_stats_rowcol_striped_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_striped_8_pointer = parasail_sg_qe_db_stats_rowcol_striped_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_striped_8_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_striped_8_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfb14
leaq 0x3648cc(%rip), %rax    # 0x5443de
jmp 0x1dfb43
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfb28
leaq 0x2556d7(%rip), %rax    # 0x4351fd
jmp 0x1dfb43
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfb3c
leaq 0x5cdcd(%rip), %rax     # 0x23c907
jmp 0x1dfb43
leaq 0x15f4bc(%rip), %rax    # 0x33efff
movq %rax, 0x55e4ae(%rip)    # 0x73dff8
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_diag_64_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_diag_64_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_diag_64_pointer = parasail_sg_qe_db_stats_rowcol_diag_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_diag_64_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_diag_64_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_diag_64_pointer = parasail_sg_qe_db_stats_rowcol_diag_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_diag_64_pointer = parasail_sg_qe_db_stats_rowcol_diag_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_diag_64_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_diag_64_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfb9d
leaq 0x343dbb(%rip), %rax    # 0x523956
jmp 0x1dfbcc
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfbb1
leaq 0x23915b(%rip), %rax    # 0x418d0a
jmp 0x1dfbcc
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfbc5
leaq 0x5cd44(%rip), %rax     # 0x23c907
jmp 0x1dfbcc
leaq 0x13f826(%rip), %rax    # 0x31f3f2
movq %rax, 0x55e42d(%rip)    # 0x73e000
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_diag_32_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_diag_32_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_diag_32_pointer = parasail_sg_qe_db_stats_rowcol_diag_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_diag_32_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_diag_32_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_diag_32_pointer = parasail_sg_qe_db_stats_rowcol_diag_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_diag_32_pointer = parasail_sg_qe_db_stats_rowcol_diag_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_diag_32_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_diag_32_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfc26
leaq 0x347e91(%rip), %rax    # 0x527ab5
jmp 0x1dfc55
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfc3a
leaq 0x23cced(%rip), %rax    # 0x41c925
jmp 0x1dfc55
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfc4e
leaq 0x5ccbb(%rip), %rax     # 0x23c907
jmp 0x1dfc55
leaq 0x143be1(%rip), %rax    # 0x323836
movq %rax, 0x55e3ac(%rip)    # 0x73e008
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_diag_16_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_diag_16_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_diag_16_pointer = parasail_sg_qe_db_stats_rowcol_diag_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_diag_16_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_diag_16_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_diag_16_pointer = parasail_sg_qe_db_stats_rowcol_diag_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_diag_16_pointer = parasail_sg_qe_db_stats_rowcol_diag_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_diag_16_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_diag_16_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfcaf
leaq 0x34d06c(%rip), %rax    # 0x52cd19
jmp 0x1dfcde
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfcc3
leaq 0x240e47(%rip), %rax    # 0x420b08
jmp 0x1dfcde
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfcd7
leaq 0x5cc32(%rip), %rax     # 0x23c907
jmp 0x1dfcde
leaq 0x148197(%rip), %rax    # 0x327e75
movq %rax, 0x55e32b(%rip)    # 0x73e010
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_stats_rowcol_diag_8_dispatcher
parasail_result_t* parasail_sg_qe_db_stats_rowcol_diag_8_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_stats_rowcol_diag_8_pointer = parasail_sg_qe_db_stats_rowcol_diag_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_stats_rowcol_diag_8_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_stats_rowcol_diag_8_pointer = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_stats_rowcol_diag_8_pointer = parasail_sg_qe_db_stats_rowcol_diag_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_stats_rowcol_diag_8_pointer = parasail_sg_qe_db_stats_rowcol_diag_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qe_db_stats_rowcol_diag_8_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_stats_rowcol_diag_8_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfd38
leaq 0x353f55(%rip), %rax    # 0x533c8b
jmp 0x1dfd67
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfd4c
leaq 0x246056(%rip), %rax    # 0x425da0
jmp 0x1dfd67
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfd60
leaq 0x5cba9(%rip), %rax     # 0x23c907
jmp 0x1dfd67
leaq 0x14def2(%rip), %rax    # 0x32dc59
movq %rax, 0x55e2aa(%rip)    # 0x73e018
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_scan_64_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_scan_64_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_scan_64_pointer = parasail_sg_qe_db_trace_scan_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_scan_64_pointer = parasail_sg_qe_db_trace_scan_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_scan_64_pointer = parasail_sg_qe_db_trace_scan_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_scan_64_pointer = parasail_sg_qe_db_trace_scan_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_scan_64_pointer = parasail_sg_qe_db_trace_scan_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_scan_64_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_trace_scan_64_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfdc1
leaq 0x36764a(%rip), %rax    # 0x547409
jmp 0x1dfdf0
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfdd5
leaq 0x258223(%rip), %rax    # 0x437ff6
jmp 0x1dfdf0
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfde9
leaq 0x5db8e(%rip), %rax     # 0x23d975
jmp 0x1dfdf0
leaq 0x1627c8(%rip), %rax    # 0x3425b8
movq %rax, 0x55e229(%rip)    # 0x73e020
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_scan_32_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_scan_32_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_scan_32_pointer = parasail_sg_qe_db_trace_scan_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_scan_32_pointer = parasail_sg_qe_db_trace_scan_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_scan_32_pointer = parasail_sg_qe_db_trace_scan_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_scan_32_pointer = parasail_sg_qe_db_trace_scan_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_scan_32_pointer = parasail_sg_qe_db_trace_scan_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_scan_32_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_trace_scan_32_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfe4a
leaq 0x369510(%rip), %rax    # 0x549358
jmp 0x1dfe79
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfe5e
leaq 0x25a0b4(%rip), %rax    # 0x439f10
jmp 0x1dfe79
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfe72
leaq 0x5db05(%rip), %rax     # 0x23d975
jmp 0x1dfe79
leaq 0x164b38(%rip), %rax    # 0x3449b1
movq %rax, 0x55e1a8(%rip)    # 0x73e028
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_scan_16_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_scan_16_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_scan_16_pointer = parasail_sg_qe_db_trace_scan_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_scan_16_pointer = parasail_sg_qe_db_trace_scan_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_scan_16_pointer = parasail_sg_qe_db_trace_scan_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_scan_16_pointer = parasail_sg_qe_db_trace_scan_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_scan_16_pointer = parasail_sg_qe_db_trace_scan_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_scan_16_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_trace_scan_16_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dfed3
leaq 0x36b298(%rip), %rax    # 0x54b169
jmp 0x1dff02
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfee7
leaq 0x25bece(%rip), %rax    # 0x43bdb3
jmp 0x1dff02
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dfefb
leaq 0x5da7c(%rip), %rax     # 0x23d975
jmp 0x1dff02
leaq 0x166aba(%rip), %rax    # 0x3469bc
movq %rax, 0x55e127(%rip)    # 0x73e030
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_scan_8_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_scan_8_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_scan_8_pointer = parasail_sg_qe_db_trace_scan_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_scan_8_pointer = parasail_sg_qe_db_trace_scan_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_scan_8_pointer = parasail_sg_qe_db_trace_scan_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_scan_8_pointer = parasail_sg_qe_db_trace_scan_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_scan_8_pointer = parasail_sg_qe_db_trace_scan_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_scan_8_pointer = parasail_sg_qe_db_scan;
    }
    return parasail_sg_qe_db_trace_scan_8_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dff5c
leaq 0x36cffc(%rip), %rax    # 0x54cf56
jmp 0x1dff8b
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dff70
leaq 0x25dce1(%rip), %rax    # 0x43dc4f
jmp 0x1dff8b
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1dff84
leaq 0x5d9f3(%rip), %rax     # 0x23d975
jmp 0x1dff8b
leaq 0x168bcc(%rip), %rax    # 0x348b57
movq %rax, 0x55e0a6(%rip)    # 0x73e038
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_striped_64_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_striped_64_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_striped_64_pointer = parasail_sg_qe_db_trace_striped_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_striped_64_pointer = parasail_sg_qe_db_trace_striped_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_striped_64_pointer = parasail_sg_qe_db_trace_striped_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_striped_64_pointer = parasail_sg_qe_db_trace_striped_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_striped_64_pointer = parasail_sg_qe_db_trace_striped_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_striped_64_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_striped_64_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1dffe5
leaq 0x37f2b4(%rip), %rax    # 0x55f297
jmp 0x1e0014
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1dfff9
leaq 0x26b833(%rip), %rax    # 0x44b82a
jmp 0x1e0014
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1e000d
leaq 0x5c8fc(%rip), %rax     # 0x23c907
jmp 0x1e0014
leaq 0x17812d(%rip), %rax    # 0x358141
movq %rax, 0x55e025(%rip)    # 0x73e040
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_striped_32_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_striped_32_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_striped_32_pointer = parasail_sg_qe_db_trace_striped_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_striped_32_pointer = parasail_sg_qe_db_trace_striped_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_striped_32_pointer = parasail_sg_qe_db_trace_striped_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_striped_32_pointer = parasail_sg_qe_db_trace_striped_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_striped_32_pointer = parasail_sg_qe_db_trace_striped_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_striped_32_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_striped_32_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1e006e
leaq 0x381a03(%rip), %rax    # 0x561a6f
jmp 0x1e009d
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1e0082
leaq 0x26df2e(%rip), %rax    # 0x44dfae
jmp 0x1e009d
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1e0096
leaq 0x5c873(%rip), %rax     # 0x23c907
jmp 0x1e009d
leaq 0x17aed0(%rip), %rax    # 0x35af6d
movq %rax, 0x55dfa4(%rip)    # 0x73e048
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_striped_16_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_striped_16_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_striped_16_pointer = parasail_sg_qe_db_trace_striped_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_striped_16_pointer = parasail_sg_qe_db_trace_striped_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_striped_16_pointer = parasail_sg_qe_db_trace_striped_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_striped_16_pointer = parasail_sg_qe_db_trace_striped_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_striped_16_pointer = parasail_sg_qe_db_trace_striped_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_striped_16_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_striped_16_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1e00f7
leaq 0x383ee2(%rip), %rax    # 0x563fd7
jmp 0x1e0126
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1e010b
leaq 0x2703fa(%rip), %rax    # 0x450503
jmp 0x1e0126
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1e011f
leaq 0x5c7ea(%rip), %rax     # 0x23c907
jmp 0x1e0126
leaq 0x17d540(%rip), %rax    # 0x35d666
movq %rax, 0x55df23(%rip)    # 0x73e050
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_striped_8_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_striped_8_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_striped_8_pointer = parasail_sg_qe_db_trace_striped_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_striped_8_pointer = parasail_sg_qe_db_trace_striped_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_striped_8_pointer = parasail_sg_qe_db_trace_striped_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_striped_8_pointer = parasail_sg_qe_db_trace_striped_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_striped_8_pointer = parasail_sg_qe_db_trace_striped_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_striped_8_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_striped_8_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1e0180
leaq 0x3863ad(%rip), %rax    # 0x56652b
jmp 0x1e01af
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1e0194
leaq 0x2728fd(%rip), %rax    # 0x452a8f
jmp 0x1e01af
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1e01a8
leaq 0x5c761(%rip), %rax     # 0x23c907
jmp 0x1e01af
leaq 0x17fdec(%rip), %rax    # 0x35ff9b
movq %rax, 0x55dea2(%rip)    # 0x73e058
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_diag_64_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_diag_64_dispatcher(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
#if HAVE_AVX2
    if (parasail_can_use_avx2()) {
        parasail_sg_qe_db_trace_diag_64_pointer = parasail_sg_qe_db_trace_diag_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_diag_64_pointer = parasail_sg_qe_db_trace_diag_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_diag_64_pointer = parasail_sg_qe_db_trace_diag_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_diag_64_pointer = parasail_sg_qe_db_trace_diag_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_diag_64_pointer = parasail_sg_qe_db_trace_diag_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_diag_64_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_diag_64_pointer(s1, s1Len, s2, s2Len, open, gap, matrix);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %r9d, %ebx
movl %r8d, %ebp
movl %ecx, %r14d
movq %rdx, %r15
movl %esi, %r12d
movq %rdi, %r13
xorl %eax, %eax
callq 0x5672cf
testl %eax, %eax
je 0x1e0209
leaq 0x36f2b5(%rip), %rax    # 0x54f4bc
jmp 0x1e0238
xorl %eax, %eax
callq 0x5672f6
testl %eax, %eax
je 0x1e021d
leaq 0x25fd3d(%rip), %rax    # 0x43ff58
jmp 0x1e0238
xorl %eax, %eax
callq 0x56732c
testl %eax, %eax
jne 0x1e0231
leaq 0x5c6d8(%rip), %rax     # 0x23c907
jmp 0x1e0238
leaq 0x16b27c(%rip), %rax    # 0x34b4b4
movq %rax, 0x55de21(%rip)    # 0x73e060
movq %r13, %rdi
movl %r12d, %esi
movq %r15, %rdx
movl %r14d, %ecx
movl %ebp, %r8d
movl %ebx, %r9d
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax