LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_table_diag_sse2_128_sat
parasail_result_t* parasail_sg_dx_stats_table_diag_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_table_diag_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_table_diag_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_table_diag_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x2d9c08
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20f79b
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x2d3f73
movq %rax, %rbx
jmp 0x20f7a0
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20f7da
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2cf9e9
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_table_diag_sse41_128_sat
parasail_result_t* parasail_sg_dx_stats_table_diag_sse41_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_table_diag_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_table_diag_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_table_diag_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x3da7a4
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20f865
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x3d55f6
movq %rax, %rbx
jmp 0x20f86a
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20f8a4
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3d14da
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_table_diag_avx2_256_sat
parasail_result_t* parasail_sg_dx_stats_table_diag_avx2_256_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_table_diag_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_table_diag_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_table_diag_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x4dc5f3
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20f92f
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x4d5971
movq %rax, %rbx
jmp 0x20f934
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20f96e
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x4d08de
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_scan_sat
parasail_result_t* parasail_sg_dx_rowcol_scan_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_scan_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x1d8757
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20f9f9
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x1d874e
movq %rax, %rbx
jmp 0x20f9fe
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fa38
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d8745
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_scan_sse2_128_sat
parasail_result_t* parasail_sg_dx_rowcol_scan_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_scan_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x2f5645
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20fac3
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x2f32aa
movq %rax, %rbx
jmp 0x20fac8
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fb02
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2f12ad
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_scan_sse41_128_sat
parasail_result_t* parasail_sg_dx_rowcol_scan_sse41_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_scan_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x3f348f
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20fb8d
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x3f13c0
movq %rax, %rbx
jmp 0x20fb92
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fbcc
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3ef537
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_scan_avx2_256_sat
parasail_result_t* parasail_sg_dx_rowcol_scan_avx2_256_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_scan_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_scan_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x4f78bf
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20fc57
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x4f526a
movq %rax, %rbx
jmp 0x20fc5c
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fc96
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x4f3142
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_striped_sat
parasail_result_t* parasail_sg_dx_rowcol_striped_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_striped_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x1d877b
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20fd21
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x1d8772
movq %rax, %rbx
jmp 0x20fd26
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fd60
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d8769
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_striped_sse2_128_sat
parasail_result_t* parasail_sg_dx_rowcol_striped_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_striped_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x309dd4
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20fdeb
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x307c71
movq %rax, %rbx
jmp 0x20fdf0
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fe2a
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x305f1c
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_striped_sse41_128_sat
parasail_result_t* parasail_sg_dx_rowcol_striped_sse41_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_striped_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x405657
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20feb5
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x4037a4
movq %rax, %rbx
jmp 0x20feba
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20fef4
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x401b8d
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_striped_avx2_256_sat
parasail_result_t* parasail_sg_dx_rowcol_striped_avx2_256_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_striped_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_striped_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x50f86f
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x20ff7f
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x50d413
movq %rax, %rbx
jmp 0x20ff84
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x20ffbe
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x50b57e
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_diag_sat
parasail_result_t* parasail_sg_dx_rowcol_diag_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_diag_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_diag_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_diag_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x1d879f
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x210049
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x1d8796
movq %rax, %rbx
jmp 0x21004e
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x210088
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d878d
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_diag_sse41_128_sat
parasail_result_t* parasail_sg_dx_rowcol_diag_sse41_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_diag_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_diag_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_diag_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x3fd39e
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2101dd
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x3f9b1f
movq %rax, %rbx
jmp 0x2101e2
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x21021c
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3f74be
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_rowcol_diag_avx2_256_sat
parasail_result_t* parasail_sg_dx_rowcol_diag_avx2_256_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_rowcol_diag_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_diag_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_rowcol_diag_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x505faf
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2102a7
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x500215
movq %rax, %rbx
jmp 0x2102ac
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x2102e6
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x4fc8c4
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_scan_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_scan_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_scan_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x1d87c3
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x210371
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x1d87ba
movq %rax, %rbx
jmp 0x210376
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x2103b0
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d87b1
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_scan_sse2_128_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_scan_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_scan_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x31a955
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x21043b
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x3166a8
movq %rax, %rbx
jmp 0x210440
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x21047a
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x312732
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_scan_sse41_128_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_scan_sse41_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_scan_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x414c44
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x210505
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x410f28
movq %rax, %rbx
jmp 0x21050a
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x210544
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x40d437
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_scan_avx2_256_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_scan_avx2_256_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_scan_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_scan_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x51f5dd
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2105cf
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x51b52c
movq %rax, %rbx
jmp 0x2105d4
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x21060e
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x51786d
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_striped_sse2_128_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_striped_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_striped_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_striped_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_striped_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x33efc5
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x210763
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x33afd3
movq %rax, %rbx
jmp 0x210768
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x2107a2
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3372d5
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_striped_avx2_256_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_striped_avx2_256_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_striped_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_striped_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_striped_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x5443a4
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2108f7
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x540472
movq %rax, %rbx
jmp 0x2108fc
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x210936
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x53ca57
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_diag_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_diag_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_diag_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_diag_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_diag_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x1d880b
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2109c1
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x1d8802
movq %rax, %rbx
jmp 0x2109c6
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x210a00
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d87f9
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_stats_rowcol_diag_sse2_128_sat
parasail_result_t* parasail_sg_dx_stats_rowcol_diag_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_stats_rowcol_diag_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_diag_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_stats_rowcol_diag_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x32dc1f
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x210a8b
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x327e3b
movq %rax, %rbx
jmp 0x210a90
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x210aca
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3237fc
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_trace_scan_sse41_128_sat
parasail_result_t* parasail_sg_dx_trace_scan_sse41_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_trace_scan_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_trace_scan_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_trace_scan_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x43dc15
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x210e7d
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x43bd79
movq %rax, %rbx
jmp 0x210e82
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x210ebc
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x439ed6
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_trace_striped_sat
parasail_result_t* parasail_sg_dx_trace_striped_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_trace_striped_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_trace_striped_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_trace_striped_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x1d8853
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x211011
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x1d884a
movq %rax, %rbx
jmp 0x211016
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x211050
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d8841
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_dx_trace_striped_sse2_128_sat
parasail_result_t* parasail_sg_dx_trace_striped_sse2_128_sat(
        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)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_dx_trace_striped_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_trace_striped_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_dx_trace_striped_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x35ff61
movq %rax, %rbx
movq %rax, %rdi
callq 0x1ace42
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2110db
movq %rbx, %rdi
callq 0x1abdad
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x35d62c
movq %rax, %rbx
jmp 0x2110e0
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x1ace42
testl %eax, %eax
je 0x21111a
movq %rbx, %rdi
callq 0x1abdad
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x35af33
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq