// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore_st.c
// Function: st_s_create_self
static bcore_self_s* st_s_create_self( void )
{
//  bcore_self_s* self = bcore_self_s_build_parse_sc( "st_s = { aware_t _; private sd_t data; private uz_t size; private uz_t space; }", sizeof( st_s ) );

//  We need to create this reflection manually because bcore_self_s_build_parse_sc uses it.
    bcore_self_s* self = bcore_self_s_create_plain( entypeof( "st_s" ), typeof( "bcore_inst" ), sizeof( st_s ), alignof( st_s ) );
    bcore_self_s_push_d( self, bcore_self_item_s_create_plain( BCORE_CAPS_SOLID_STATIC, TYPEOF_aware_t, entypeof( "_"  ) ) );
    bcore_self_s_push_d( self, bcore_self_item_s_create_plain( BCORE_CAPS_SOLID_STATIC, TYPEOF_sd_t, entypeof( "data"  ) ) )->flags.f_private = true;
    bcore_self_s_push_d( self, bcore_self_item_s_create_plain( BCORE_CAPS_SOLID_STATIC, TYPEOF_uz_t, entypeof( "size"  ) ) )->flags.f_private = true;
    bcore_self_s_push_d( self, bcore_self_item_s_create_plain( BCORE_CAPS_SOLID_STATIC, TYPEOF_uz_t, entypeof( "space" ) ) )->flags.f_private = true;

    bcore_self_s_push_ns_func( self, ( fp_t )st_s_init,         "bcore_fp_init",            "init"         );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_down,         "bcore_fp_down",            "down"         );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_copy,         "bcore_fp_copy",            "copy"         );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_move,         "bcore_fp_move",            "move"         );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_create,       "bcore_fp_create",          "create"       );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_clone,        "bcore_fp_clone",           "clone"        );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_discard,      "bcore_fp_discard",         "discard"      );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_copy_typed,   "bcore_fp_copy_typed",      "copy_typed"   );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_create_typed, "bcore_fp_create_typed",    "create_typed" );
    bcore_self_s_push_ns_func( self, ( fp_t )flow_snk,          "bcore_fp_flow_snk",        "flow_snk"     );
    bcore_self_s_push_ns_func( self, ( fp_t )flow_src,          "bcore_fp_flow_src",        "flow_src"     );
    bcore_self_s_push_ns_func( self, ( fp_t )p_errorvf,         "bcore_fp_logvf",           "p_errorvf"    );
    bcore_self_s_push_ns_func( self, ( fp_t )parse_fv,          "bcore_source_fp_parse_fv", "parse_fv"     );
    bcore_self_s_push_ns_func( self, ( fp_t )parse_em_fv,       "bcore_source_fp_parse_em_fv", "parse_em_fv" );
    bcore_self_s_push_ns_func( self, ( fp_t )eos,               "bcore_source_fp_eos",      "eos"          );
    bcore_self_s_push_ns_func( self, ( fp_t )get_index,         "bcore_source_fp_get_index","get_index"    );
    bcore_self_s_push_ns_func( self, ( fp_t )set_index,         "bcore_source_fp_set_index","set_index"    );
    bcore_self_s_push_ns_func( self, ( fp_t )check_sanity,      "bcore_fp_check_sanity",    "check_sanity" );
    bcore_self_s_push_ns_func( self, ( fp_t )st_s_cmp_st,       "bcore_fp_compare",         "cmp_st"       );
    return self;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
leaq 0x3e9ab(%rip), %rdi     # 0x14c4e1
callq 0xd7476
movabsq $-0x55a2d062927a0ff9, %rsi # imm = 0xAA5D2F9D6D85F007
movl $0x20, %edx
movl $0x8, %ecx
movq %rax, %rdi
callq 0xc3677
movq %rax, %rbx
leaq 0x23013(%rip), %rdi     # 0x130b74
callq 0xd7476
movabsq $-0x388c46b188de83fe, %rsi # imm = 0xC773B94E77217C02
movl $0x1, %edi
movq %rax, %rdx
callq 0xbfb09
movq %rbx, %rdi
movq %rax, %rsi
callq 0xc3429
leaq 0x3b3e0(%rip), %rdi     # 0x148f6f
callq 0xd7476
movabsq $0x230abe18cdeefc99, %rsi # imm = 0x230ABE18CDEEFC99
movl $0x1, %edi
movq %rax, %rdx
callq 0xbfb09
movq %rbx, %rdi
movq %rax, %rsi
callq 0xc3429
orb $0x1, 0x14(%rax)
leaq 0x3bd91(%rip), %rdi     # 0x149952
callq 0xd7476
movabsq $-0x4882601bdca6aefb, %r14 # imm = 0xB77D9FE423595105
movl $0x1, %edi
movq %r14, %rsi
movq %rax, %rdx
callq 0xbfb09
movq %rbx, %rdi
movq %rax, %rsi
callq 0xc3429
orb $0x1, 0x14(%rax)
leaq 0x3fcf0(%rip), %rdi     # 0x14d8e6
callq 0xd7476
movl $0x1, %edi
movq %r14, %rsi
movq %rax, %rdx
callq 0xbfb09
movq %rbx, %rdi
movq %rax, %rsi
callq 0xc3429
orb $0x1, 0x14(%rax)
leaq -0x4bf1(%rip), %rsi     # 0x109030
leaq 0x34e0d(%rip), %rdx     # 0x142a35
leaq 0x34e0f(%rip), %rcx     # 0x142a3e
movq %rbx, %rdi
callq 0xc34ab
leaq -0x47ed(%rip), %rsi     # 0x109451
leaq 0x34dfe(%rip), %rdx     # 0x142a43
leaq 0x2957e(%rip), %rcx     # 0x1371ca
movq %rbx, %rdi
callq 0xc34ab
leaq -0x4761(%rip), %rsi     # 0x1094fa
leaq 0x34def(%rip), %rdx     # 0x142a51
leaq 0x306f2(%rip), %rcx     # 0x13e35b
movq %rbx, %rdi
callq 0xc34ab
leaq -0x404f(%rip), %rsi     # 0x109c29
leaq 0x37264(%rip), %rdx     # 0x144ee3
leaq 0x37266(%rip), %rcx     # 0x144eec
movq %rbx, %rdi
callq 0xc34ab
leaq -0x4013(%rip), %rsi     # 0x109c82
leaq 0x37255(%rip), %rdx     # 0x144ef1
leaq 0x37257(%rip), %rcx     # 0x144efa
movq %rbx, %rdi
callq 0xc34ab
leaq -0x39d8(%rip), %rsi     # 0x10a2da
leaq 0x37248(%rip), %rdx     # 0x144f01
leaq 0x3724a(%rip), %rcx     # 0x144f0a
movq %rbx, %rdi
callq 0xc34ab
leaq -0x3ca7(%rip), %rsi     # 0x10a028
leaq 0x3723a(%rip), %rdx     # 0x144f10
leaq 0x3723c(%rip), %rcx     # 0x144f19
movq %rbx, %rdi
callq 0xc34ab
leaq -0x4460(%rip), %rsi     # 0x10988c
leaq 0x2d521(%rip), %rdx     # 0x13b214
leaq 0x2d523(%rip), %rcx     # 0x13b21d
movq %rbx, %rdi
callq 0xc34ab
leaq -0x3b9b(%rip), %rsi     # 0x10a16e
leaq 0x391a6(%rip), %rdx     # 0x146eb6
leaq 0x391a8(%rip), %rcx     # 0x146ebf
movq %rbx, %rdi
callq 0xc34ab
leaq 0xf8c(%rip), %rsi       # 0x10ecb2
leaq 0x399c1(%rip), %rdx     # 0x1476ee
leaq 0x399c3(%rip), %rcx     # 0x1476f7
movq %rbx, %rdi
callq 0xc34ab
leaq 0x1060(%rip), %rsi      # 0x10eda3
leaq 0x39fbf(%rip), %rdx     # 0x147d09
leaq 0x39fc1(%rip), %rcx     # 0x147d12
movq %rbx, %rdi
callq 0xc34ab
leaq 0x10f9(%rip), %rsi      # 0x10ee59
leaq 0x3e71f(%rip), %rdx     # 0x14c486
leaq 0x3e727(%rip), %rcx     # 0x14c495
movq %rbx, %rdi
callq 0xc34ab
leaq 0x1152(%rip), %rsi      # 0x10eecf
leaq 0x3a06c(%rip), %rdx     # 0x147df0
leaq 0x2c28b(%rip), %rcx     # 0x13a016
movq %rbx, %rdi
callq 0xc34ab
leaq 0x11a0(%rip), %rsi      # 0x10ef3a
leaq 0x3a089(%rip), %rdx     # 0x147e2a
leaq 0x3a1c9(%rip), %rcx     # 0x147f71
movq %rbx, %rdi
callq 0xc34ab
leaq 0x1206(%rip), %rsi      # 0x10efbd
leaq 0x39f76(%rip), %rdx     # 0x147d34
leaq 0x2bfc4(%rip), %rcx     # 0x139d89
movq %rbx, %rdi
callq 0xc34ab
leaq 0x121f(%rip), %rsi      # 0x10eff3
leaq 0x39fc3(%rip), %rdx     # 0x147d9e
leaq 0x2c1fc(%rip), %rcx     # 0x139fde
movq %rbx, %rdi
callq 0xc34ab
leaq 0x1236(%rip), %rsi      # 0x10f027
leaq 0x39fc0(%rip), %rdx     # 0x147db8
leaq 0x2c1f2(%rip), %rcx     # 0x139ff1
movq %rbx, %rdi
callq 0xc34ab
leaq 0x12eb(%rip), %rsi      # 0x10f0f9
leaq 0x3e68a(%rip), %rdx     # 0x14c49f
leaq 0x3e68c(%rip), %rcx     # 0x14c4a8
movq %rbx, %rdi
callq 0xc34ab
leaq 0x13d7(%rip), %rsi      # 0x10f202
leaq 0x370ef(%rip), %rdx     # 0x144f21
leaq 0x3e67c(%rip), %rcx     # 0x14c4b5
movq %rbx, %rdi
callq 0xc34ab
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq