// File: /workspace/github_c_makefile_star2_O0/samtools[P]htslib/test/hts_endian.c
// Function: t64_bit
static int t64_bit(int verbose) {
    uint8_t buf[9];
    size_t i;
    int errors = 0;

    for (i = 0; i < NELE(tests_64_bit); i++) {
        uint64_t u64;
        int64_t  i64;

        if (verbose) {
            fprintf(stderr, "%s %20"PRId64" %20"PRIu64"\n",
                    to_hex(tests_64_bit[i].u8, 8),
                    tests_64_bit[i].i64, tests_64_bit[i].u64);
        }

        u64 = le_to_u64(tests_64_bit[i].u8);
        if (u64 != tests_64_bit[i].u64) {
            fprintf(stderr, "Failed %s => %"PRIu64"; expected %"PRIu64"\n",
                    to_hex(tests_64_bit[i].u8, 8), u64, tests_64_bit[i].u64);
            errors++;
        }

        i64 = le_to_i64(tests_64_bit[i].u8);
        if (i64 != tests_64_bit[i].i64) {
            fprintf(stderr, "Failed %s => %"PRId64"; expected %"PRId64"\n",
                    to_hex(tests_64_bit[i].u8, 8), i64, tests_64_bit[i].i64);
            errors++;
        }

        u64 = le_to_u64(tests_64_bit[i].u8_unaligned + 1);
        if (u64 != tests_64_bit[i].u64) {
            fprintf(stderr,
                    "Failed unaligned %s => %"PRIu64"; expected %"PRIu64"\n",
                    to_hex(tests_64_bit[i].u8_unaligned + 1, 8),
                    u64, tests_64_bit[i].u64);
            errors++;
        }

        i64 = le_to_i64(tests_64_bit[i].u8_unaligned + 1);
        if (i64 != tests_64_bit[i].i64) {
            fprintf(stderr,
                    "Failed unaligned %s => %"PRId64"; expected %"PRId64"\n",
                    to_hex(tests_64_bit[i].u8_unaligned + 1, 8),
                    i64, tests_64_bit[i].i64);
            errors++;
        }

        u64_to_le(tests_64_bit[i].u64, buf);
        if (memcmp(buf, tests_64_bit[i].u8, 8) != 0) {
            fprintf(stderr, "Failed %"PRIu64" => %s; expected %s\n",
                    tests_64_bit[i].u64,
                    to_hex(buf, 8), to_hex(tests_64_bit[i].u8, 8));
            errors++;
        }

        i64_to_le(tests_64_bit[i].i64, buf);
        if (memcmp(buf, tests_64_bit[i].u8, 8) != 0) {
            fprintf(stderr, "Failed %"PRId64" => %s; expected %s\n",
                    tests_64_bit[i].i64,
                    to_hex(buf, 8), to_hex(tests_64_bit[i].u8, 8));
            errors++;
        }

        u64_to_le(tests_64_bit[i].u64, buf + 1);
        if (memcmp(buf + 1, tests_64_bit[i].u8, 8) != 0) {
            fprintf(stderr, "Failed unaligned %"PRIu64" => %s; expected %s\n",
                    tests_64_bit[i].u64,
                    to_hex(buf + 1, 8), to_hex(tests_64_bit[i].u8, 8));
            errors++;
        }

        i64_to_le(tests_64_bit[i].i64, buf + 1);
        if (memcmp(buf + 1, tests_64_bit[i].u8, 8) != 0) {
            fprintf(stderr, "Failed unaligned %"PRId64" => %s; expected %s\n",
                    tests_64_bit[i].i64,
                    to_hex(buf + 1, 8), to_hex(tests_64_bit[i].u8, 8));
            errors++;
        }
    }

    return errors;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movl %edi, -0x4(%rbp)
movl $0x0, -0x1c(%rbp)
movq $0x0, -0x18(%rbp)
cmpq $0x8, -0x18(%rbp)
jae 0x2cf5
cmpl $0x0, -0x4(%rbp)
je 0x2760
movq 0x28db(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x38(%rbp)
leaq 0x29fd(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x38(%rbp), %rdi
movq %rax, %rdx
leaq 0x29dd(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x18(%rax), %rcx
leaq 0x29ca(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rsi
addq %rsi, %rax
movq 0x20(%rax), %r8
leaq 0xb2c(%rip), %rsi       # 0x3285
movb $0x0, %al
callq 0x1040
leaq 0x29a9(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
callq 0x2d40
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
leaq 0x298d(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
cmpq 0x20(%rcx), %rax
je 0x27ed
movq 0x2848(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x40(%rbp)
leaq 0x296a(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x40(%rbp), %rdi
movq %rax, %rdx
movq -0x28(%rbp), %rcx
leaq 0x2946(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rsi
addq %rsi, %rax
movq 0x20(%rax), %r8
leaq 0xab8(%rip), %rsi       # 0x3295
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x291c(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
callq 0x2ec0
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
leaq 0x2900(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
cmpq 0x18(%rcx), %rax
je 0x287a
movq 0x27bb(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x48(%rbp)
leaq 0x28dd(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x48(%rbp), %rdi
movq %rax, %rdx
movq -0x30(%rbp), %rcx
leaq 0x28b9(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rsi
addq %rsi, %rax
movq 0x18(%rax), %r8
leaq 0xa4b(%rip), %rsi       # 0x32b5
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x288f(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
addq $0x8, %rdi
addq $0x1, %rdi
callq 0x2d40
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
leaq 0x286b(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
cmpq 0x20(%rcx), %rax
je 0x2917
movq 0x2726(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x50(%rbp)
leaq 0x2848(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
addq $0x8, %rdi
addq $0x1, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x50(%rbp), %rdi
movq %rax, %rdx
movq -0x28(%rbp), %rcx
leaq 0x281c(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rsi
addq %rsi, %rax
movq 0x20(%rax), %r8
leaq 0x9ce(%rip), %rsi       # 0x32d5
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x27f2(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
addq $0x8, %rdi
addq $0x1, %rdi
callq 0x2ec0
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
leaq 0x27ce(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
cmpq 0x18(%rcx), %rax
je 0x29b4
movq 0x2689(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x58(%rbp)
leaq 0x27ab(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
addq $0x8, %rdi
addq $0x1, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x58(%rbp), %rdi
movq %rax, %rdx
movq -0x30(%rbp), %rcx
leaq 0x277f(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rsi
addq %rsi, %rax
movq 0x18(%rax), %r8
leaq 0x95b(%rip), %rsi       # 0x32ff
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x2755(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x20(%rax), %rdi
leaq -0xd(%rbp), %rsi
callq 0x2d60
leaq -0xd(%rbp), %rax
leaq 0x2735(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
movq (%rcx), %rcx
movq (%rax), %rax
subq %rcx, %rax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x2a6d
movq 0x25e2(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x70(%rbp)
leaq 0x2704(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x20(%rax), %rax
movq %rax, -0x68(%rbp)
leaq -0xd(%rbp), %rdi
movl $0x8, %esi
callq 0x1500
movq %rax, -0x60(%rbp)
leaq 0x26db(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x70(%rbp), %rdi
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rcx
movq %rax, %r8
leaq 0x8cc(%rip), %rsi       # 0x3329
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x269c(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x18(%rax), %rdi
leaq -0xd(%rbp), %rsi
callq 0x2f20
leaq -0xd(%rbp), %rax
leaq 0x267c(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
movq (%rcx), %rcx
movq (%rax), %rax
subq %rcx, %rax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x2b2c
movq 0x2529(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0x88(%rbp)
leaq 0x2648(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x18(%rax), %rax
movq %rax, -0x80(%rbp)
leaq -0xd(%rbp), %rdi
movl $0x8, %esi
callq 0x1500
movq %rax, -0x78(%rbp)
leaq 0x261f(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rdx
movq -0x78(%rbp), %rcx
movq %rax, %r8
leaq 0x82c(%rip), %rsi       # 0x3348
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x25dd(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x20(%rax), %rdi
leaq -0xd(%rbp), %rsi
addq $0x1, %rsi
callq 0x2d60
leaq -0xd(%rbp), %rax
addq $0x1, %rax
leaq 0x25b5(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
movq (%rcx), %rcx
movq (%rax), %rax
subq %rcx, %rax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x2c07
movq 0x245e(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0xa0(%rbp)
leaq 0x257d(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x20(%rax), %rax
movq %rax, -0x98(%rbp)
leaq -0xd(%rbp), %rdi
addq $0x1, %rdi
movl $0x8, %esi
callq 0x1500
movq %rax, -0x90(%rbp)
leaq 0x254a(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0xa0(%rbp), %rdi
movq -0x98(%rbp), %rdx
movq -0x90(%rbp), %rcx
movq %rax, %r8
leaq 0x770(%rip), %rsi       # 0x3367
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x2502(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x18(%rax), %rdi
leaq -0xd(%rbp), %rsi
addq $0x1, %rsi
callq 0x2f20
leaq -0xd(%rbp), %rax
addq $0x1, %rax
leaq 0x24da(%rip), %rcx      # 0x5110
imulq $0x28, -0x18(%rbp), %rdx
addq %rdx, %rcx
movq (%rcx), %rcx
movq (%rax), %rax
subq %rcx, %rax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x2ce2
movq 0x2383(%rip), %rax      # 0x4fe0
movq (%rax), %rax
movq %rax, -0xb8(%rbp)
leaq 0x24a2(%rip), %rax      # 0x5110
imulq $0x28, -0x18(%rbp), %rcx
addq %rcx, %rax
movq 0x18(%rax), %rax
movq %rax, -0xb0(%rbp)
leaq -0xd(%rbp), %rdi
addq $0x1, %rdi
movl $0x8, %esi
callq 0x1500
movq %rax, -0xa8(%rbp)
leaq 0x246f(%rip), %rdi      # 0x5110
imulq $0x28, -0x18(%rbp), %rax
addq %rax, %rdi
movl $0x8, %esi
callq 0x1500
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rdx
movq -0xa8(%rbp), %rcx
movq %rax, %r8
leaq 0x6be(%rip), %rsi       # 0x3390
movb $0x0, %al
callq 0x1040
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x2ce4
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
jmp 0x26ed
movl -0x1c(%rbp), %eax
addq $0xc0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)