// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/xoico/src/xoico.xo.c
// Function: xoico_target_s_to_be_modified
bl_t xoico_target_s_to_be_modified( const xoico_target_s* o )
{
    // xoico_target.x:498:1
    BLM_INIT_LEVEL(0);
    if( o->compiler->always_expand ) BLM_RETURNV(bl_t, true)
    
    bl_t to_be_modified = true;
    
    tp_t target_hash = xoico_target_s_get_hash(o);
    
    st_s* file = ((st_s*)BLM_LEVEL_T_PUSH(0,st_s,st_s_create_fa("#<sc_t>.state", o->output_path.sc )));
    if( bcore_file_exists(file->sc ) )
    {
        st_s* key_defined = ((st_s*)BLM_LEVEL_T_PUSH(0,st_s,st_s_create_fa("##?w'HKEYOF_#<sc_t>'", o->name.sc )));
        x_source* source =((x_source*)( ((bcore_source*)BLM_LEVEL_A_PUSH(0,bcore_file_open_source(file->sc )))));
        while( !x_source_eos(source) )
        {
            if( x_source_inspect_char(source) == 'H' )
            {
                if( x_source_parse_bl(source,key_defined->sc ) )
                {
                    tp_t key_val = 0;
                    BLM_TRY_EXIT(x_source_parse_fa(source," #<tp_t*>", &key_val ))
                    to_be_modified = ( key_val != target_hash );
                    break;
                }
            }
            else
            {
                x_source_get_char(source);
            }
        }
    }
    
    BLM_RETURNV(bl_t, to_be_modified)
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x10(%rbp)
leaq 0x19280a(%rip), %rax    # 0x1b2330
movq (%rax), %rax
movq %rax, -0x18(%rbp)
leaq -0x48(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0xbfe80
movq -0x50(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq $0x0, 0x10(%rax)
movq -0x10(%rbp), %rax
movq 0x138(%rax), %rax
testb $0x1, 0x183(%rax)
je 0x1fb84
movb $0x1, -0x51(%rbp)
movq -0x50(%rbp), %rdi
callq 0xc0720
movb -0x51(%rbp), %al
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x1fd26
movb $0x1, -0x52(%rbp)
movq -0x10(%rbp), %rdi
callq 0x1dbf0
movq %rax, -0x60(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x10(%rbp), %rax
movq 0x80(%rax), %rsi
leaq 0x11646e(%rip), %rdi    # 0x136020
movb $0x0, %al
callq 0xff430
movq -0x98(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x503db0e6e1c2e704, %rdx # imm = 0xAFC24F191E3D18FC
callq 0xc01a0
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0x9f5b0
testb $0x1, %al
jne 0x1fbf0
jmp 0x1fd07
movq -0x18(%rbp), %rax
movq %rax, -0xa8(%rbp)
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rsi
leaq 0x116424(%rip), %rdi    # 0x13602e
movb $0x0, %al
callq 0xff430
movq -0xa8(%rbp), %rdi
movq %rax, %rcx
xorl %eax, %eax
movl %eax, %esi
movabsq $-0x503db0e6e1c2e704, %rdx # imm = 0xAFC24F191E3D18FC
callq 0xc01a0
movq %rax, -0x70(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xa0(%rbp)
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0x9f880
movq -0xa0(%rbp), %rdi
movq %rax, %rdx
xorl %eax, %eax
movl %eax, %esi
callq 0xc0500
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rdi
callq 0x6730
xorb $-0x1, %al
testb $0x1, %al
jne 0x1fc75
jmp 0x1fd05
movq -0x78(%rbp), %rdi
callq 0xa440
movsbl %al, %eax
cmpl $0x48, %eax
jne 0x1fcf7
movq -0x78(%rbp), %rdi
movq -0x70(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x6700
testb $0x1, %al
jne 0x1fc9d
jmp 0x1fcf5
movq $0x0, -0x80(%rbp)
movq -0x78(%rbp), %rdi
leaq 0x1148e9(%rip), %rsi    # 0x134599
leaq -0x80(%rbp), %rdx
movb $0x0, %al
callq 0x4a20
movq %rax, -0x88(%rbp)
cmpq $0x0, -0x88(%rbp)
je 0x1fce3
movq -0x50(%rbp), %rdi
callq 0xc0720
movq -0x88(%rbp), %rax
movl %eax, %edi
callq 0x425e0
movq -0x80(%rbp), %rax
cmpq -0x60(%rbp), %rax
setne %al
andb $0x1, %al
movb %al, -0x52(%rbp)
jmp 0x1fd05
jmp 0x1fd00
movq -0x78(%rbp), %rdi
callq 0xa490
jmp 0x1fc61
jmp 0x1fd07
movb -0x52(%rbp), %al
andb $0x1, %al
movb %al, -0x89(%rbp)
movq -0x50(%rbp), %rdi
callq 0xc0720
movb -0x89(%rbp), %al
andb $0x1, %al
movb %al, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)