LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_scan_16_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_scan_16_pointer = parasail_sg_qb_de_stats_rowcol_scan_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_scan_16_pointer = parasail_sg_qb_de_stats_rowcol_scan_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_scan_16_pointer = parasail_sg_qb_de_stats_rowcol_scan_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_scan_16_pointer = parasail_sg_qb_de_stats_rowcol_scan_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_scan_16_pointer = parasail_sg_qb_de_stats_rowcol_scan_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_scan_16_pointer = parasail_sg_qb_de_scan;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x23957b
leaq 0x340e87(%rip), %rax    # 0x57a400
jmp 0x2395aa
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x23958f
leaq 0x231fbb(%rip), %rax    # 0x46b548
jmp 0x2395aa
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x2395a3
leaq 0x62e75(%rip), %rax     # 0x29c416
jmp 0x2395aa
leaq 0x13c575(%rip), %rax    # 0x375b1f
movq %rax, 0x5a15bf(%rip)    # 0x7dab70
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_scan_8_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_scan_8_pointer = parasail_sg_qb_de_stats_rowcol_scan_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_scan_8_pointer = parasail_sg_qb_de_stats_rowcol_scan_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_scan_8_pointer = parasail_sg_qb_de_stats_rowcol_scan_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_scan_8_pointer = parasail_sg_qb_de_stats_rowcol_scan_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_scan_8_pointer = parasail_sg_qb_de_stats_rowcol_scan_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_scan_8_pointer = parasail_sg_qb_de_scan;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239604
leaq 0x346271(%rip), %rax    # 0x57f873
jmp 0x239633
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239618
leaq 0x2369e1(%rip), %rax    # 0x46fff7
jmp 0x239633
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x23962c
leaq 0x62dec(%rip), %rax     # 0x29c416
jmp 0x239633
leaq 0x141b88(%rip), %rax    # 0x37b1bb
movq %rax, 0x5a153e(%rip)    # 0x7dab78
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_striped_64_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_striped_64_pointer = parasail_sg_qb_de_stats_rowcol_striped_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_striped_64_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_striped_64_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_striped_64_pointer = parasail_sg_qb_de_stats_rowcol_striped_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_striped_64_pointer = parasail_sg_qb_de_stats_rowcol_striped_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_striped_64_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x23968d
leaq 0x35ef43(%rip), %rax    # 0x5985ce
jmp 0x2396bc
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x2396a1
leaq 0x24b90d(%rip), %rax    # 0x484fac
jmp 0x2396bc
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x2396b5
leaq 0x61a67(%rip), %rax     # 0x29b11a
jmp 0x2396bc
leaq 0x1597d3(%rip), %rax    # 0x392e8f
movq %rax, 0x5a14bd(%rip)    # 0x7dab80
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_striped_32_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_striped_32_pointer = parasail_sg_qb_de_stats_rowcol_striped_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_striped_32_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_striped_32_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_striped_32_pointer = parasail_sg_qb_de_stats_rowcol_striped_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_striped_32_pointer = parasail_sg_qb_de_stats_rowcol_striped_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_striped_32_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239716
leaq 0x362302(%rip), %rax    # 0x59ba16
jmp 0x239745
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x23972a
leaq 0x24eb59(%rip), %rax    # 0x488281
jmp 0x239745
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x23973e
leaq 0x619de(%rip), %rax     # 0x29b11a
jmp 0x239745
leaq 0x15d4f7(%rip), %rax    # 0x396c3c
movq %rax, 0x5a143c(%rip)    # 0x7dab88
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_striped_16_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_striped_16_pointer = parasail_sg_qb_de_stats_rowcol_striped_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_striped_16_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_striped_16_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_striped_16_pointer = parasail_sg_qb_de_stats_rowcol_striped_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_striped_16_pointer = parasail_sg_qb_de_stats_rowcol_striped_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_striped_16_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x23979f
leaq 0x366a5e(%rip), %rax    # 0x5a01fb
jmp 0x2397ce
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x2397b3
leaq 0x25244c(%rip), %rax    # 0x48bbfd
jmp 0x2397ce
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x2397c7
leaq 0x61955(%rip), %rax     # 0x29b11a
jmp 0x2397ce
leaq 0x161483(%rip), %rax    # 0x39ac51
movq %rax, 0x5a13bb(%rip)    # 0x7dab90
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_striped_8_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_striped_8_pointer = parasail_sg_qb_de_stats_rowcol_striped_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_striped_8_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_striped_8_pointer = parasail_sg_qb_de_stats_rowcol_striped_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_striped_8_pointer = parasail_sg_qb_de_stats_rowcol_striped_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_striped_8_pointer = parasail_sg_qb_de_stats_rowcol_striped_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_striped_8_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239828
leaq 0x36c1e0(%rip), %rax    # 0x5a5a06
jmp 0x239857
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x23983c
leaq 0x256b58(%rip), %rax    # 0x490392
jmp 0x239857
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239850
leaq 0x618cc(%rip), %rax     # 0x29b11a
jmp 0x239857
leaq 0x16651c(%rip), %rax    # 0x39fd73
movq %rax, 0x5a133a(%rip)    # 0x7dab98
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_diag_64_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_diag_64_pointer = parasail_sg_qb_de_stats_rowcol_diag_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_diag_64_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_diag_64_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_diag_64_pointer = parasail_sg_qb_de_stats_rowcol_diag_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_diag_64_pointer = parasail_sg_qb_de_stats_rowcol_diag_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_diag_64_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x2398b1
leaq 0x34a117(%rip), %rax    # 0x5839c6
jmp 0x2398e0
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x2398c5
leaq 0x23a4e8(%rip), %rax    # 0x473dab
jmp 0x2398e0
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x2398d9
leaq 0x61843(%rip), %rax     # 0x29b11a
jmp 0x2398e0
leaq 0x14606f(%rip), %rax    # 0x37f94f
movq %rax, 0x5a12b9(%rip)    # 0x7daba0
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_diag_32_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_diag_32_pointer = parasail_sg_qb_de_stats_rowcol_diag_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_diag_32_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_diag_32_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_diag_32_pointer = parasail_sg_qb_de_stats_rowcol_diag_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_diag_32_pointer = parasail_sg_qb_de_stats_rowcol_diag_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_diag_32_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x23993a
leaq 0x34e17d(%rip), %rax    # 0x587ab5
jmp 0x239969
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x23994e
leaq 0x23e03c(%rip), %rax    # 0x477988
jmp 0x239969
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239962
leaq 0x617ba(%rip), %rax     # 0x29b11a
jmp 0x239969
leaq 0x14a484(%rip), %rax    # 0x383ded
movq %rax, 0x5a1238(%rip)    # 0x7daba8
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_diag_16_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_diag_16_pointer = parasail_sg_qb_de_stats_rowcol_diag_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_diag_16_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_diag_16_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_diag_16_pointer = parasail_sg_qb_de_stats_rowcol_diag_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_diag_16_pointer = parasail_sg_qb_de_stats_rowcol_diag_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_diag_16_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x2399c3
leaq 0x353336(%rip), %rax    # 0x58ccf7
jmp 0x2399f2
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x2399d7
leaq 0x2422a0(%rip), %rax    # 0x47bc75
jmp 0x2399f2
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x2399eb
leaq 0x61731(%rip), %rax     # 0x29b11a
jmp 0x2399f2
leaq 0x14e9ec(%rip), %rax    # 0x3883de
movq %rax, 0x5a11b7(%rip)    # 0x7dabb0
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_stats_rowcol_diag_8_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_stats_rowcol_diag_8_pointer = parasail_sg_qb_de_stats_rowcol_diag_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_stats_rowcol_diag_8_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_stats_rowcol_diag_8_pointer = parasail_sg_qb_de_stats_rowcol_diag_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_stats_rowcol_diag_8_pointer = parasail_sg_qb_de_stats_rowcol_diag_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_stats_rowcol_diag_8_pointer = parasail_sg_qb_de_stats_rowcol_diag_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qb_de_stats_rowcol_diag_8_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239a4c
leaq 0x35a241(%rip), %rax    # 0x593c8b
jmp 0x239a7b
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239a60
leaq 0x2476bd(%rip), %rax    # 0x48111b
jmp 0x239a7b
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239a74
leaq 0x616a8(%rip), %rax     # 0x29b11a
jmp 0x239a7b
leaq 0x1546d6(%rip), %rax    # 0x38e151
movq %rax, 0x5a1136(%rip)    # 0x7dabb8
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_scan_64_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_scan_64_pointer = parasail_sg_qb_de_trace_scan_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_scan_64_pointer = parasail_sg_qb_de_trace_scan_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_scan_64_pointer = parasail_sg_qb_de_trace_scan_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_scan_64_pointer = parasail_sg_qb_de_trace_scan_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_scan_64_pointer = parasail_sg_qb_de_trace_scan_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_scan_64_pointer = parasail_sg_qb_de_scan;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239ad5
leaq 0x36e773(%rip), %rax    # 0x5a8246
jmp 0x239b04
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239ae9
leaq 0x2593a2(%rip), %rax    # 0x492e89
jmp 0x239b04
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239afd
leaq 0x6291b(%rip), %rax     # 0x29c416
jmp 0x239b04
leaq 0x1694b2(%rip), %rax    # 0x3a2fb6
movq %rax, 0x5a10b5(%rip)    # 0x7dabc0
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_scan_32_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_scan_32_pointer = parasail_sg_qb_de_trace_scan_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_scan_32_pointer = parasail_sg_qb_de_trace_scan_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_scan_32_pointer = parasail_sg_qb_de_trace_scan_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_scan_32_pointer = parasail_sg_qb_de_trace_scan_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_scan_32_pointer = parasail_sg_qb_de_trace_scan_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_scan_32_pointer = parasail_sg_qb_de_scan;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239b5e
leaq 0x3703b4(%rip), %rax    # 0x5a9f10
jmp 0x239b8d
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239b72
leaq 0x25afaf(%rip), %rax    # 0x494b1f
jmp 0x239b8d
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239b86
leaq 0x62892(%rip), %rax     # 0x29c416
jmp 0x239b8d
leaq 0x16b648(%rip), %rax    # 0x3a51d5
movq %rax, 0x5a1034(%rip)    # 0x7dabc8
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_scan_16_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_scan_16_pointer = parasail_sg_qb_de_trace_scan_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_scan_16_pointer = parasail_sg_qb_de_trace_scan_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_scan_16_pointer = parasail_sg_qb_de_trace_scan_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_scan_16_pointer = parasail_sg_qb_de_trace_scan_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_scan_16_pointer = parasail_sg_qb_de_trace_scan_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_scan_16_pointer = parasail_sg_qb_de_scan;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239be7
leaq 0x372a1e(%rip), %rax    # 0x5ac603
jmp 0x239c16
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239bfb
leaq 0x25ce46(%rip), %rax    # 0x496a3f
jmp 0x239c16
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239c0f
leaq 0x62809(%rip), %rax     # 0x29c416
jmp 0x239c16
leaq 0x16d988(%rip), %rax    # 0x3a759e
movq %rax, 0x5a0fb3(%rip)    # 0x7dabd0
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_scan_8_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_scan_8_pointer = parasail_sg_qb_de_trace_scan_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_scan_8_pointer = parasail_sg_qb_de_trace_scan_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_scan_8_pointer = parasail_sg_qb_de_trace_scan_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_scan_8_pointer = parasail_sg_qb_de_trace_scan_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_scan_8_pointer = parasail_sg_qb_de_trace_scan_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_scan_8_pointer = parasail_sg_qb_de_scan;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239c70
leaq 0x375e36(%rip), %rax    # 0x5afaa4
jmp 0x239c9f
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239c84
leaq 0x25f0e9(%rip), %rax    # 0x498d6b
jmp 0x239c9f
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239c98
leaq 0x62780(%rip), %rax     # 0x29c416
jmp 0x239c9f
leaq 0x1704e4(%rip), %rax    # 0x3aa183
movq %rax, 0x5a0f32(%rip)    # 0x7dabd8
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_striped_64_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_striped_64_pointer = parasail_sg_qb_de_trace_striped_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_striped_64_pointer = parasail_sg_qb_de_trace_striped_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_striped_64_pointer = parasail_sg_qb_de_trace_striped_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_striped_64_pointer = parasail_sg_qb_de_trace_striped_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_striped_64_pointer = parasail_sg_qb_de_trace_striped_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_striped_64_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239cf9
leaq 0x385e4f(%rip), %rax    # 0x5bfb46
jmp 0x239d28
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239d0d
leaq 0x26afab(%rip), %rax    # 0x4a4cb6
jmp 0x239d28
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239d21
leaq 0x613fb(%rip), %rax     # 0x29b11a
jmp 0x239d28
leaq 0x17e2fc(%rip), %rax    # 0x3b8024
movq %rax, 0x5a0eb1(%rip)    # 0x7dabe0
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_striped_32_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_striped_32_pointer = parasail_sg_qb_de_trace_striped_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_striped_32_pointer = parasail_sg_qb_de_trace_striped_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_striped_32_pointer = parasail_sg_qb_de_trace_striped_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_striped_32_pointer = parasail_sg_qb_de_trace_striped_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_striped_32_pointer = parasail_sg_qb_de_trace_striped_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_striped_32_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239d82
leaq 0x387f37(%rip), %rax    # 0x5c1cb7
jmp 0x239db1
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239d96
leaq 0x26d145(%rip), %rax    # 0x4a6ed9
jmp 0x239db1
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239daa
leaq 0x61372(%rip), %rax     # 0x29b11a
jmp 0x239db1
leaq 0x180bdc(%rip), %rax    # 0x3ba98d
movq %rax, 0x5a0e30(%rip)    # 0x7dabe8
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_striped_16_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_striped_16_pointer = parasail_sg_qb_de_trace_striped_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_striped_16_pointer = parasail_sg_qb_de_trace_striped_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_striped_16_pointer = parasail_sg_qb_de_trace_striped_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_striped_16_pointer = parasail_sg_qb_de_trace_striped_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_striped_16_pointer = parasail_sg_qb_de_trace_striped_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_striped_16_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239e0b
leaq 0x38ab06(%rip), %rax    # 0x5c490f
jmp 0x239e3a
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239e1f
leaq 0x26f59e(%rip), %rax    # 0x4a93bb
jmp 0x239e3a
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239e33
leaq 0x612e9(%rip), %rax     # 0x29b11a
jmp 0x239e3a
leaq 0x1834f9(%rip), %rax    # 0x3bd333
movq %rax, 0x5a0daf(%rip)    # 0x7dabf0
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_striped_8_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_striped_8_pointer = parasail_sg_qb_de_trace_striped_avx2_256_8;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_striped_8_pointer = parasail_sg_qb_de_trace_striped_sse41_128_8;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_striped_8_pointer = parasail_sg_qb_de_trace_striped_sse2_128_8;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_striped_8_pointer = parasail_sg_qb_de_trace_striped_altivec_128_8;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_striped_8_pointer = parasail_sg_qb_de_trace_striped_neon_128_8;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_striped_8_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239e94
leaq 0x38e4df(%rip), %rax    # 0x5c8371
jmp 0x239ec3
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239ea8
leaq 0x271e06(%rip), %rax    # 0x4abcac
jmp 0x239ec3
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239ebc
leaq 0x61260(%rip), %rax     # 0x29b11a
jmp 0x239ec3
leaq 0x186683(%rip), %rax    # 0x3c0546
movq %rax, 0x5a0d2e(%rip)    # 0x7dabf8
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_diag_64_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_diag_64_pointer = parasail_sg_qb_de_trace_diag_avx2_256_64;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_diag_64_pointer = parasail_sg_qb_de_trace_diag_sse41_128_64;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_diag_64_pointer = parasail_sg_qb_de_trace_diag_sse2_128_64;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_diag_64_pointer = parasail_sg_qb_de_trace_diag_altivec_128_64;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_diag_64_pointer = parasail_sg_qb_de_trace_diag_neon_128_64;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_diag_64_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239f1d
leaq 0x377c87(%rip), %rax    # 0x5b1ba2
jmp 0x239f4c
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239f31
leaq 0x260b67(%rip), %rax    # 0x49aa96
jmp 0x239f4c
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239f45
leaq 0x611d7(%rip), %rax     # 0x29b11a
jmp 0x239f4c
leaq 0x17270a(%rip), %rax    # 0x3ac656
movq %rax, 0x5a0cad(%rip)    # 0x7dac00
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_diag_32_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_diag_32_pointer = parasail_sg_qb_de_trace_diag_avx2_256_32;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_diag_32_pointer = parasail_sg_qb_de_trace_diag_sse41_128_32;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_diag_32_pointer = parasail_sg_qb_de_trace_diag_sse2_128_32;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_diag_32_pointer = parasail_sg_qb_de_trace_diag_altivec_128_32;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_diag_32_pointer = parasail_sg_qb_de_trace_diag_neon_128_32;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_diag_32_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x239fa6
leaq 0x37a1ee(%rip), %rax    # 0x5b4192
jmp 0x239fd5
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x239fba
leaq 0x2628cd(%rip), %rax    # 0x49c885
jmp 0x239fd5
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x239fce
leaq 0x6114e(%rip), %rax     # 0x29b11a
jmp 0x239fd5
leaq 0x17499e(%rip), %rax    # 0x3ae973
movq %rax, 0x5a0c2c(%rip)    # 0x7dac08
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_O3/nh13[P]ksw/src/parasail/src/sg_qb_de_dispatch.c
// Function: parasail_sg_qb_de_trace_diag_16_dispatcher
parasail_result_t* parasail_sg_qb_de_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_qb_de_trace_diag_16_pointer = parasail_sg_qb_de_trace_diag_avx2_256_16;
    }
    else
#endif
#if HAVE_SSE41
    if (parasail_can_use_sse41()) {
        parasail_sg_qb_de_trace_diag_16_pointer = parasail_sg_qb_de_trace_diag_sse41_128_16;
    }
    else
#endif
#if HAVE_SSE2
    if (parasail_can_use_sse2()) {
        parasail_sg_qb_de_trace_diag_16_pointer = parasail_sg_qb_de_trace_diag_sse2_128_16;
    }
    else
#endif
#if HAVE_ALTIVEC
    if (parasail_can_use_altivec()) {
        parasail_sg_qb_de_trace_diag_16_pointer = parasail_sg_qb_de_trace_diag_altivec_128_16;
    }
    else
#endif
#if HAVE_NEON
    if (parasail_can_use_neon()) {
        parasail_sg_qb_de_trace_diag_16_pointer = parasail_sg_qb_de_trace_diag_neon_128_16;
    }
    else
#endif
    {
        parasail_sg_qb_de_trace_diag_16_pointer = parasail_sg_qb_de;
    }
    return parasail_sg_qb_de_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 0x5c8fdb
testl %eax, %eax
je 0x23a02f
leaq 0x37d715(%rip), %rax    # 0x5b7742
jmp 0x23a05e
xorl %eax, %eax
callq 0x5c9002
testl %eax, %eax
je 0x23a043
leaq 0x264c65(%rip), %rax    # 0x49eca6
jmp 0x23a05e
xorl %eax, %eax
callq 0x5c9038
testl %eax, %eax
jne 0x23a057
leaq 0x610c5(%rip), %rax     # 0x29b11a
jmp 0x23a05e
leaq 0x176fb6(%rip), %rax    # 0x3b1014
movq %rax, 0x5a0bab(%rip)    # 0x7dac10
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