// File: /workspace/github_c_makefile_star2_O1/johsteffens[P]beth/lib/bcore/bcore_btree.c
// Function: bcore_btree_node_pp_s_check_consistency
void bcore_btree_node_pp_s_check_consistency( bcore_btree_node_pp_s* o )
{
    if( bcore_btree_node_pp_s_null_g.kv1.key != 0    ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.kv1.val != 0    ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.kv2.key != 0    ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.kv2.val != 0    ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.parent  != NULL ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.child0  != NULL ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.child1  != NULL ) ERR( "bcore_btree_node_pp_s_null was modified" );
    if( bcore_btree_node_pp_s_null_g.child2  != NULL ) ERR( "bcore_btree_node_pp_s_null was modified" );

    if( !o ) return;
    if( bcore_btree_node_pp_s_is_empty( o ) ) ERR( "empty node" );
    if( o->child0 == NULL )       ERR( "deleted leaf" );
    if( o->child1 && o->child1 != BNUL_PP )
    {
        if( o != o->child0->parent ) ERR( "child0 incorrect parent" );
        if( o != o->child1->parent ) ERR( "child1 incorrect parent" );
        bcore_btree_node_pp_s_check_consistency( o->child0 );
        bcore_btree_node_pp_s_check_consistency( o->child1 );
        if(                      o->kv1.key <= o->child0->kv1.key ) ERR( "(%lu <= %lu)", o->kv1.key, o->child0->kv1.key );
        if( o->child0->child2 && o->kv1.key <= o->child0->kv2.key ) ERR( "(%lu <= %lu)", o->kv1.key, o->child0->kv2.key );
        if(                      o->kv1.key >= o->child1->kv1.key ) ERR( "(%lu >= %lu)", o->kv1.key, o->child1->kv1.key );
        if( o->child1->child2 && o->kv1.key >= o->child1->kv2.key ) ERR( "(%lu >= %lu)", o->kv1.key, o->child1->kv2.key );
    }
    if( o->child2 && o->child2 != BNUL_PP )
    {
        if( o->kv1.key >= o->kv2.key ) ERR( "(%lu >= %lu)", o->kv1.key, o->kv2.key );
        if( o != o->child2->parent ) ERR( "child2 incorrect parent" );
        bcore_btree_node_pp_s_check_consistency( o->child2 );
        if(                      o->kv2.key <= o->child1->kv1.key ) ERR( "(%lu <= %lu)", o->kv2.key, o->child1->kv1.key );
        if( o->child1->child2 && o->kv2.key <= o->child1->kv2.key ) ERR( "(%lu <= %lu)", o->kv2.key, o->child1->kv2.key );
        if(                      o->kv2.key >= o->child2->kv1.key ) ERR( "(%lu >= %lu)", o->kv2.key, o->child2->kv1.key );
        if( o->child2->child2 && o->kv2.key >= o->child2->kv2.key ) ERR( "(%lu >= %lu)", o->kv2.key, o->child2->kv2.key );
    }
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
cmpq $0x0, 0x7a62f(%rip)     # 0x1aa3b0
je 0x12fda4
leaq 0x29c41(%rip), %rdi     # 0x1599cb
leaq 0x29a0e(%rip), %rsi     # 0x15979f
leaq 0x29c5b(%rip), %rcx     # 0x1599f3
movl $0x693, %edx            # imm = 0x693
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a60c(%rip)     # 0x1aa3b8
je 0x12fdcf
leaq 0x29c16(%rip), %rdi     # 0x1599cb
leaq 0x299e3(%rip), %rsi     # 0x15979f
leaq 0x29c30(%rip), %rcx     # 0x1599f3
movl $0x694, %edx            # imm = 0x694
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a5e9(%rip)     # 0x1aa3c0
je 0x12fdfa
leaq 0x29beb(%rip), %rdi     # 0x1599cb
leaq 0x299b8(%rip), %rsi     # 0x15979f
leaq 0x29c05(%rip), %rcx     # 0x1599f3
movl $0x695, %edx            # imm = 0x695
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a5c6(%rip)     # 0x1aa3c8
je 0x12fe25
leaq 0x29bc0(%rip), %rdi     # 0x1599cb
leaq 0x2998d(%rip), %rsi     # 0x15979f
leaq 0x29bda(%rip), %rcx     # 0x1599f3
movl $0x696, %edx            # imm = 0x696
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a5a3(%rip)     # 0x1aa3d0
je 0x12fe50
leaq 0x29b95(%rip), %rdi     # 0x1599cb
leaq 0x29962(%rip), %rsi     # 0x15979f
leaq 0x29baf(%rip), %rcx     # 0x1599f3
movl $0x697, %edx            # imm = 0x697
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a580(%rip)     # 0x1aa3d8
je 0x12fe7b
leaq 0x29b6a(%rip), %rdi     # 0x1599cb
leaq 0x29937(%rip), %rsi     # 0x15979f
leaq 0x29b84(%rip), %rcx     # 0x1599f3
movl $0x698, %edx            # imm = 0x698
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a55d(%rip)     # 0x1aa3e0
je 0x12fea6
leaq 0x29b3f(%rip), %rdi     # 0x1599cb
leaq 0x2990c(%rip), %rsi     # 0x15979f
leaq 0x29b59(%rip), %rcx     # 0x1599f3
movl $0x699, %edx            # imm = 0x699
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x7a53a(%rip)     # 0x1aa3e8
je 0x12fed1
leaq 0x29b14(%rip), %rdi     # 0x1599cb
leaq 0x298e1(%rip), %rsi     # 0x15979f
leaq 0x29b2e(%rip), %rcx     # 0x1599f3
movl $0x69a, %edx            # imm = 0x69A
xorl %eax, %eax
callq 0xc80f6
testq %rbx, %rbx
je 0x1301ad
cmpq $0x0, 0x30(%rbx)
jne 0x12ff02
leaq 0x29ae3(%rip), %rdi     # 0x1599cb
leaq 0x298b0(%rip), %rsi     # 0x15979f
leaq 0x298df(%rip), %rcx     # 0x1597d5
movl $0x69d, %edx            # imm = 0x69D
xorl %eax, %eax
callq 0xc80f6
cmpq $0x0, 0x28(%rbx)
jne 0x12ff2a
leaq 0x29abb(%rip), %rdi     # 0x1599cb
leaq 0x29888(%rip), %rsi     # 0x15979f
leaq 0x298c2(%rip), %rcx     # 0x1597e0
movl $0x69e, %edx            # imm = 0x69E
xorl %eax, %eax
callq 0xc80f6
movq 0x30(%rbx), %rax
testq %rax, %rax
sete %cl
leaq 0x7a475(%rip), %r14     # 0x1aa3b0
cmpq %r14, %rax
sete %al
orb %cl, %al
jne 0x130081
movq 0x28(%rbx), %rax
cmpq %rbx, 0x20(%rax)
je 0x12ff74
leaq 0x29a71(%rip), %rdi     # 0x1599cb
leaq 0x2983e(%rip), %rsi     # 0x15979f
leaq 0x29885(%rip), %rcx     # 0x1597ed
movl $0x6a1, %edx            # imm = 0x6A1
xorl %eax, %eax
callq 0xc80f6
movq 0x30(%rbx), %rax
cmpq %rbx, 0x20(%rax)
je 0x12ff9f
leaq 0x29a46(%rip), %rdi     # 0x1599cb
leaq 0x29813(%rip), %rsi     # 0x15979f
leaq 0x29872(%rip), %rcx     # 0x159805
movl $0x6a2, %edx            # imm = 0x6A2
xorl %eax, %eax
callq 0xc80f6
movq 0x28(%rbx), %rdi
callq 0x12fd72
movq 0x30(%rbx), %rdi
callq 0x12fd72
movq (%rbx), %r8
movq 0x28(%rbx), %rax
movq (%rax), %r9
cmpq %r9, %r8
ja 0x12ffe1
leaq 0x29a04(%rip), %rdi     # 0x1599cb
leaq 0x297d1(%rip), %rsi     # 0x15979f
leaq 0x29848(%rip), %rcx     # 0x15981d
movl $0x6a5, %edx            # imm = 0x6A5
xorl %eax, %eax
callq 0xc80f6
movq 0x28(%rbx), %rax
cmpq $0x0, 0x38(%rax)
je 0x130019
movq (%rbx), %r8
movq 0x10(%rax), %r9
cmpq %r9, %r8
ja 0x130019
leaq 0x299cc(%rip), %rdi     # 0x1599cb
leaq 0x29799(%rip), %rsi     # 0x15979f
leaq 0x29810(%rip), %rcx     # 0x15981d
movl $0x6a6, %edx            # imm = 0x6A6
xorl %eax, %eax
callq 0xc80f6
movq (%rbx), %r8
movq 0x30(%rbx), %rax
movq (%rax), %r9
cmpq %r9, %r8
jb 0x130049
leaq 0x2999c(%rip), %rdi     # 0x1599cb
leaq 0x29769(%rip), %rsi     # 0x15979f
leaq 0x297ed(%rip), %rcx     # 0x15982a
movl $0x6a7, %edx            # imm = 0x6A7
xorl %eax, %eax
callq 0xc80f6
movq 0x30(%rbx), %rax
cmpq $0x0, 0x38(%rax)
je 0x130081
movq (%rbx), %r8
movq 0x10(%rax), %r9
cmpq %r9, %r8
jb 0x130081
leaq 0x29964(%rip), %rdi     # 0x1599cb
leaq 0x29731(%rip), %rsi     # 0x15979f
leaq 0x297b5(%rip), %rcx     # 0x15982a
movl $0x6a8, %edx            # imm = 0x6A8
xorl %eax, %eax
callq 0xc80f6
movq 0x38(%rbx), %rax
testq %rax, %rax
sete %cl
cmpq %r14, %rax
sete %al
orb %cl, %al
jne 0x1301ad
movq (%rbx), %r8
movq 0x10(%rbx), %r9
cmpq %r9, %r8
jb 0x1300c6
leaq 0x2991f(%rip), %rdi     # 0x1599cb
leaq 0x296ec(%rip), %rsi     # 0x15979f
leaq 0x29770(%rip), %rcx     # 0x15982a
movl $0x6ac, %edx            # imm = 0x6AC
xorl %eax, %eax
callq 0xc80f6
movq 0x38(%rbx), %rax
cmpq %rbx, 0x20(%rax)
je 0x1300f1
leaq 0x298f4(%rip), %rdi     # 0x1599cb
leaq 0x296c1(%rip), %rsi     # 0x15979f
leaq 0x29752(%rip), %rcx     # 0x159837
movl $0x6ad, %edx            # imm = 0x6AD
xorl %eax, %eax
callq 0xc80f6
movq 0x38(%rbx), %rdi
callq 0x12fd72
movq 0x10(%rbx), %r8
movq 0x30(%rbx), %rax
movq (%rax), %r9
cmpq %r9, %r8
ja 0x13012b
leaq 0x298ba(%rip), %rdi     # 0x1599cb
leaq 0x29687(%rip), %rsi     # 0x15979f
leaq 0x296fe(%rip), %rcx     # 0x15981d
movl $0x6af, %edx            # imm = 0x6AF
xorl %eax, %eax
callq 0xc80f6
movq 0x30(%rbx), %rax
cmpq $0x0, 0x38(%rax)
je 0x130164
movq 0x10(%rbx), %r8
movq 0x10(%rax), %r9
cmpq %r9, %r8
ja 0x130164
leaq 0x29881(%rip), %rdi     # 0x1599cb
leaq 0x2964e(%rip), %rsi     # 0x15979f
leaq 0x296c5(%rip), %rcx     # 0x15981d
movl $0x6b0, %edx            # imm = 0x6B0
xorl %eax, %eax
callq 0xc80f6
movq 0x10(%rbx), %r8
movq 0x38(%rbx), %rax
movq (%rax), %r9
cmpq %r9, %r8
jb 0x130195
leaq 0x29850(%rip), %rdi     # 0x1599cb
leaq 0x2961d(%rip), %rsi     # 0x15979f
leaq 0x296a1(%rip), %rcx     # 0x15982a
movl $0x6b1, %edx            # imm = 0x6B1
xorl %eax, %eax
callq 0xc80f6
movq 0x38(%rbx), %rax
cmpq $0x0, 0x38(%rax)
je 0x1301ad
movq 0x10(%rbx), %r8
movq 0x10(%rax), %r9
cmpq %r9, %r8
jae 0x1301b5
addq $0x8, %rsp
popq %rbx
popq %r14
retq
leaq 0x2980f(%rip), %rdi     # 0x1599cb
leaq 0x295dc(%rip), %rsi     # 0x15979f
leaq 0x29660(%rip), %rcx     # 0x15982a
movl $0x6b2, %edx            # imm = 0x6B2
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0xc80f6