LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O1/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 0x594f9c
testl %eax, %eax
je 0x23cc13
leaq 0x30cd15(%rip), %rax    # 0x549926
jmp 0x23cc42
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23cc27
leaq 0x20898e(%rip), %rax    # 0x4455b3
jmp 0x23cc42
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23cc3b
leaq 0x5ddb3(%rip), %rax     # 0x29a9ec
jmp 0x23cc42
leaq 0x11ffbc(%rip), %rax    # 0x35cbfe
movq %rax, 0x568387(%rip)    # 0x7a4fd0
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23cc9c
leaq 0x310d87(%rip), %rax    # 0x54da21
jmp 0x23cccb
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23ccb0
leaq 0x20c9dc(%rip), %rax    # 0x44968a
jmp 0x23cccb
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23ccc4
leaq 0x5dd2a(%rip), %rax     # 0x29a9ec
jmp 0x23cccb
leaq 0x1245bd(%rip), %rax    # 0x361288
movq %rax, 0x568306(%rip)    # 0x7a4fd8
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23cd25
leaq 0x32b64d(%rip), %rax    # 0x568370
jmp 0x23cd54
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23cd39
leaq 0x22214a(%rip), %rax    # 0x45ee81
jmp 0x23cd54
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23cd4d
leaq 0x5ce23(%rip), %rax     # 0x299b6e
jmp 0x23cd54
leaq 0x13b88e(%rip), %rax    # 0x3785e2
movq %rax, 0x568285(%rip)    # 0x7a4fe0
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23cdae
leaq 0x32edbf(%rip), %rax    # 0x56bb6b
jmp 0x23cddd
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23cdc2
leaq 0x2253b5(%rip), %rax    # 0x462175
jmp 0x23cddd
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23cdd6
leaq 0x5cd9a(%rip), %rax     # 0x299b6e
jmp 0x23cddd
leaq 0x13f1cc(%rip), %rax    # 0x37bfa9
movq %rax, 0x568204(%rip)    # 0x7a4fe8
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23ce37
leaq 0x3328e5(%rip), %rax    # 0x56f71a
jmp 0x23ce66
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23ce4b
leaq 0x228799(%rip), %rax    # 0x4655e2
jmp 0x23ce66
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23ce5f
leaq 0x5cd11(%rip), %rax     # 0x299b6e
jmp 0x23ce66
leaq 0x142a06(%rip), %rax    # 0x37f86c
movq %rax, 0x568183(%rip)    # 0x7a4ff0
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23cec0
leaq 0x3366f5(%rip), %rax    # 0x5735b3
jmp 0x23ceef
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23ced4
leaq 0x22c5bb(%rip), %rax    # 0x46948d
jmp 0x23ceef
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23cee8
leaq 0x5cc88(%rip), %rax     # 0x299b6e
jmp 0x23ceef
leaq 0x146c88(%rip), %rax    # 0x383b77
movq %rax, 0x568102(%rip)    # 0x7a4ff8
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23cf49
leaq 0x3152b5(%rip), %rax    # 0x5521fc
jmp 0x23cf78
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23cf5d
leaq 0x2106aa(%rip), %rax    # 0x44d605
jmp 0x23cf78
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23cf71
leaq 0x5cbff(%rip), %rax     # 0x299b6e
jmp 0x23cf78
leaq 0x12894f(%rip), %rax    # 0x3658c7
movq %rax, 0x568081(%rip)    # 0x7a5000
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23cfd2
leaq 0x319860(%rip), %rax    # 0x556830
jmp 0x23d001
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23cfe6
leaq 0x2144a1(%rip), %rax    # 0x451485
jmp 0x23d001
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23cffa
leaq 0x5cb76(%rip), %rax     # 0x299b6e
jmp 0x23d001
leaq 0x12cc46(%rip), %rax    # 0x369c47
movq %rax, 0x568000(%rip)    # 0x7a5008
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d05b
leaq 0x31e9ea(%rip), %rax    # 0x55ba43
jmp 0x23d08a
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d06f
leaq 0x21885f(%rip), %rax    # 0x4558cc
jmp 0x23d08a
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d083
leaq 0x5caed(%rip), %rax     # 0x299b6e
jmp 0x23d08a
leaq 0x13124c(%rip), %rax    # 0x36e2d6
movq %rax, 0x567f7f(%rip)    # 0x7a5010
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d0e4
leaq 0x325e6e(%rip), %rax    # 0x562f50
jmp 0x23d113
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d0f8
leaq 0x21db82(%rip), %rax    # 0x45ac78
jmp 0x23d113
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d10c
leaq 0x5ca64(%rip), %rax     # 0x299b6e
jmp 0x23d113
leaq 0x136bfb(%rip), %rax    # 0x373d0e
movq %rax, 0x567efe(%rip)    # 0x7a5018
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d16d
leaq 0x3396fd(%rip), %rax    # 0x576868
jmp 0x23d19c
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d181
leaq 0x22ef9d(%rip), %rax    # 0x46c11c
jmp 0x23d19c
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d195
leaq 0x5d859(%rip), %rax     # 0x29a9ec
jmp 0x23d19c
leaq 0x1499e3(%rip), %rax    # 0x386b7f
movq %rax, 0x567e7d(%rip)    # 0x7a5020
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d1f6
leaq 0x33b5fb(%rip), %rax    # 0x5787ef
jmp 0x23d225
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d20a
leaq 0x230ae0(%rip), %rax    # 0x46dce8
jmp 0x23d225
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d21e
leaq 0x5d7d0(%rip), %rax     # 0x29a9ec
jmp 0x23d225
leaq 0x14b804(%rip), %rax    # 0x388a29
movq %rax, 0x567dfc(%rip)    # 0x7a5028
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d27f
leaq 0x33d031(%rip), %rax    # 0x57a2ae
jmp 0x23d2ae
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d293
leaq 0x232480(%rip), %rax    # 0x46f711
jmp 0x23d2ae
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d2a7
leaq 0x5d747(%rip), %rax     # 0x29a9ec
jmp 0x23d2ae
leaq 0x14d32c(%rip), %rax    # 0x38a5da
movq %rax, 0x567d7b(%rip)    # 0x7a5030
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d308
leaq 0x33ea49(%rip), %rax    # 0x57bd4f
jmp 0x23d337
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d31c
leaq 0x233e49(%rip), %rax    # 0x471163
jmp 0x23d337
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d330
leaq 0x5d6be(%rip), %rax     # 0x29a9ec
jmp 0x23d337
leaq 0x14efb3(%rip), %rax    # 0x38c2ea
movq %rax, 0x567cfa(%rip)    # 0x7a5038
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d391
leaq 0x350720(%rip), %rax    # 0x58daaf
jmp 0x23d3c0
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d3a5
leaq 0x24080c(%rip), %rax    # 0x47dbaf
jmp 0x23d3c0
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d3b9
leaq 0x5c7b7(%rip), %rax     # 0x299b6e
jmp 0x23d3c0
leaq 0x15ce28(%rip), %rax    # 0x39a1e8
movq %rax, 0x567c79(%rip)    # 0x7a5040
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d41a
leaq 0x352c6b(%rip), %rax    # 0x590083
jmp 0x23d449
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d42e
leaq 0x242b40(%rip), %rax    # 0x47ff6c
jmp 0x23d449
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d442
leaq 0x5c72e(%rip), %rax     # 0x299b6e
jmp 0x23d449
leaq 0x15f508(%rip), %rax    # 0x39c951
movq %rax, 0x567bf8(%rip)    # 0x7a5048
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d4a3
leaq 0x354d4c(%rip), %rax    # 0x5921ed
jmp 0x23d4d2
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d4b7
leaq 0x244bbe(%rip), %rax    # 0x482073
jmp 0x23d4d2
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d4cb
leaq 0x5c6a5(%rip), %rax     # 0x299b6e
jmp 0x23d4d2
leaq 0x1616ce(%rip), %rax    # 0x39eba0
movq %rax, 0x567b77(%rip)    # 0x7a5050
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d52c
leaq 0x356e5b(%rip), %rax    # 0x594385
jmp 0x23d55b
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d540
leaq 0x246c4f(%rip), %rax    # 0x48418d
jmp 0x23d55b
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d554
leaq 0x5c61c(%rip), %rax     # 0x299b6e
jmp 0x23d55b
leaq 0x163a8f(%rip), %rax    # 0x3a0fea
movq %rax, 0x567af6(%rip)    # 0x7a5058
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_O1/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 0x594f9c
testl %eax, %eax
je 0x23d5b5
leaq 0x340e21(%rip), %rax    # 0x57e3d4
jmp 0x23d5e4
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d5c9
leaq 0x235b2e(%rip), %rax    # 0x4730f5
jmp 0x23d5e4
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d5dd
leaq 0x5c593(%rip), %rax     # 0x299b6e
jmp 0x23d5e4
leaq 0x15119b(%rip), %rax    # 0x38e77f
movq %rax, 0x567a75(%rip)    # 0x7a5060
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_O1/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_diag_32_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_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_trace_diag_32_pointer = parasail_sg_qe_db_trace_diag_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_diag_32_pointer = parasail_sg_qe_db_trace_diag_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_diag_32_pointer = parasail_sg_qe_db_trace_diag_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_diag_32_pointer = parasail_sg_qe_db_trace_diag_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_diag_32_pointer = parasail_sg_qe_db_trace_diag_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_diag_32_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_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 0x594f9c
testl %eax, %eax
je 0x23d63e
leaq 0x343795(%rip), %rax    # 0x580dd1
jmp 0x23d66d
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d652
leaq 0x237a89(%rip), %rax    # 0x4750d9
jmp 0x23d66d
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d666
leaq 0x5c50a(%rip), %rax     # 0x299b6e
jmp 0x23d66d
leaq 0x153495(%rip), %rax    # 0x390b02
movq %rax, 0x5679f4(%rip)    # 0x7a5068
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_O1/nh13[P]ksw/src/parasail/src/sg_qe_db_dispatch.c
// Function: parasail_sg_qe_db_trace_diag_16_dispatcher
parasail_result_t* parasail_sg_qe_db_trace_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_trace_diag_16_pointer = parasail_sg_qe_db_trace_diag_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qe_db_trace_diag_16_pointer = parasail_sg_qe_db_trace_diag_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qe_db_trace_diag_16_pointer = parasail_sg_qe_db_trace_diag_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qe_db_trace_diag_16_pointer = parasail_sg_qe_db_trace_diag_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qe_db_trace_diag_16_pointer = parasail_sg_qe_db_trace_diag_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qe_db_trace_diag_16_pointer = parasail_sg_qe_db;
    }
    return parasail_sg_qe_db_trace_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 0x594f9c
testl %eax, %eax
je 0x23d6c7
leaq 0x346cfc(%rip), %rax    # 0x5843c1
jmp 0x23d6f6
xorl %eax, %eax
callq 0x594fc5
testl %eax, %eax
je 0x23d6db
leaq 0x239f41(%rip), %rax    # 0x47761a
jmp 0x23d6f6
xorl %eax, %eax
callq 0x594ffe
testl %eax, %eax
jne 0x23d6ef
leaq 0x5c481(%rip), %rax     # 0x299b6e
jmp 0x23d6f6
leaq 0x155b9a(%rip), %rax    # 0x393290
movq %rax, 0x567973(%rip)    # 0x7a5070
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