// File: /workspace/github_c_makefile_star2_O3/johsteffens[P]beth/lib/bcore/bcore.xo.c
// Function: x_stamp_selftest
void x_stamp_selftest( void )
{
    // bcore_x_stamp.h:528:1
    BLM_INIT_LEVEL(0);
    bcore_prsg_lcg_u3_00_s lcg;BLM_T_INIT_SPUSH(bcore_prsg_lcg_u3_00_s, &lcg);;
    
    ASSERT( x_stamp_exists(((const x_stamp*)(&(lcg))),btypeof( "state" ) ) );
    
    u3_t state =*( ((const u3_t*)(x_stamp_c_get(((const x_stamp*)(&(lcg))),btypeof( "state" ) ))));
    ASSERT( state == 16437 );
    
    x_stamp_set_sr_ret(((x_stamp*)(&( lcg))),btypeof( "state" ), sr_u3(12345 ) );
    state = (*(((const u3_t*)(x_stamp_c_get(((const x_stamp*)(&( lcg))),btypeof( "state" ) )))));
    ASSERT( state == 12345 );
    
    const x_inst* inst = x_stamp_path_s_c_get_in(x_stamp_path_s_parse_sc(((x_stamp_path_s*)BLM_LEVEL_T_PUSH(0,x_stamp_path_s,x_stamp_path_s_create())),"state" ),((const x_inst*)(&(lcg ))));
    ASSERT( inst );
    ASSERT( (*(((const u3_t*)(inst)))) == 12345 );
    
    x_inst* zoo = ((x_inst*)BLM_LEVEL_A_PUSH(0,((x_inst*)(bcore_spect_via_create_zoo( 2 ).o))));
    
    sr_s sr = sr_null();
    
    sr = x_stamp_path_s_get_sr_in(x_stamp_path_s_parse_sc(((x_stamp_path_s*)BLM_LEVEL_T_PUSH(0,x_stamp_path_s,x_stamp_path_s_create())),"[0].[1].vdata.data2.[1]" ),zoo );
    ASSERT( sr_s_type(&(sr)) == TYPEOF_u3_t );
    ASSERT( sr_s_to_u3(&(sr)) == 0 );
    
    sr = x_stamp_path_s_set_sr_ret_in(x_stamp_path_s_parse_sc(((x_stamp_path_s*)BLM_LEVEL_T_PUSH(0,x_stamp_path_s,x_stamp_path_s_create())),"[0].[1].vdata.data2.[1]" ),zoo, sr_u3(20 ) );
    ASSERT( sr_s_type(&(sr)) == TYPEOF_u3_t );
    ASSERT( sr_s_to_u3(&(sr)) == 20 );
    BLM_DOWN();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xf8, %rsp
leaq 0x1432f1(%rip), %r13    # 0x19bdd0
movq (%r13), %rsi
leaq 0x80(%rsp), %rbx
movq %rbx, 0x78(%rsp)
movq %rbx, %rdi
callq 0xd6675
movq $0x0, 0x10(%rbx)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
callq 0x59077
movabsq $-0x1804b258fae5f3f6, %rsi # imm = 0xE7FB4DA7051A0C0A
movq %rbx, %rdi
movq %r14, %rdx
callq 0xd68d9
movq (%r14), %rbx
leaq 0x1445cc(%rip), %rax    # 0x19d0f8
movl (%rax), %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movq 0x20(%rax,%rcx,8), %rdx
movq 0x18(%rax,%rcx,8), %rcx
andq %rbx, %rcx
shlq $0x4, %rcx
leaq (%rdx,%rcx), %rax
movq (%rdx,%rcx), %rdx
movl $0x8, %ecx
cmpq %rbx, %rdx
je 0x58b82
movq 0x10(%rax), %rdx
movl $0x18, %ecx
cmpq %rbx, %rdx
je 0x58b82
movq 0x20(%rax), %rdx
movl $0x28, %ecx
cmpq %rbx, %rdx
je 0x58b82
movq 0x30(%rax), %rdx
movl $0x38, %ecx
cmpq %rbx, %rdx
jne 0x58b8b
movq (%rax,%rcx), %r14
testq %r14, %r14
jne 0x58bb2
movabsq $0x541d0401d4dcff33, %rdi # imm = 0x541D0401D4DCFF33
movq %rbx, %rsi
callq 0xe9bc5
movq %rax, %r14
leaq 0x144551(%rip), %rdi    # 0x19d0f8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x115fac
movabsq $-0x119c5552ba4e4eea, %rbx # imm = 0xEE63AAAD45B1B116
leaq 0x68(%rsp), %rsi
movq %r14, %rdi
movq %rbx, %rdx
callq 0x102b4b
testb %al, %al
jne 0x58bf9
leaq 0xd4a70(%rip), %rdi     # 0x12d647
leaq 0xde8a1(%rip), %rsi     # 0x13747f
leaq 0xde8d9(%rip), %rdx     # 0x1374be
leaq 0xde742(%rip), %rcx     # 0x13732e
movl $0x39a, %r8d            # imm = 0x39A
xorl %eax, %eax
callq 0xbe4ef
leaq 0x68(%rsp), %rsi
movq (%rsi), %rdx
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rcx
callq 0x584a7
movq 0x10(%r14), %rax
testb $0x2, %al
jne 0x58c22
orq $0x1, %rax
movq %rax, 0x30(%rsp)
testb $0x2, %al
jne 0x5905f
movq 0x20(%rsp), %rax
cmpq $0x4035, (%rax)         # imm = 0x4035
je 0x58c61
leaq 0xd4a08(%rip), %rdi     # 0x12d647
leaq 0xde889(%rip), %rsi     # 0x1374cf
leaq 0xde871(%rip), %rdx     # 0x1374be
leaq 0xde6da(%rip), %rcx     # 0x13732e
movl $0x39d, %r8d            # imm = 0x39D
xorl %eax, %eax
callq 0xbe4ef
leaq 0xe0(%rsp), %r14
movl $0x3039, %esi           # imm = 0x3039
movq %r14, %rdi
callq 0x107a1f
leaq 0x68(%rsp), %r15
movq (%r15), %rdx
movq 0x10(%r14), %rax
movq %rax, 0x10(%rsp)
movups (%r14), %xmm0
movups %xmm0, (%rsp)
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
movq %rbx, %rcx
callq 0x58747
movq (%r15), %rdx
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
movq %rbx, %rcx
callq 0x584a7
movq 0x10(%r14), %rax
testb $0x2, %al
jne 0x58cc6
orq $0x1, %rax
movq %rax, 0x30(%rsp)
testb $0x2, %al
jne 0x5905f
movq 0x20(%rsp), %rax
cmpq $0x3039, (%rax)         # imm = 0x3039
je 0x58d05
leaq 0xd4964(%rip), %rdi     # 0x12d647
leaq 0xde7f4(%rip), %rsi     # 0x1374de
leaq 0xde7cd(%rip), %rdx     # 0x1374be
leaq 0xde636(%rip), %rcx     # 0x13732e
movl $0x3a1, %r8d            # imm = 0x3A1
xorl %eax, %eax
callq 0xbe4ef
movabsq $-0x74dceedd59a2bd6f, %rbx # imm = 0x8B231122A65D4291
callq 0x56c50
leaq 0x80(%rsp), %rdi
xorl %esi, %esi
movq %rbx, %rdx
movq %rax, %rcx
callq 0xd68a8
movq %rax, %r14
movq (%r13), %rsi
leaq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0xd6675
movq $0x0, 0x10(%r15)
leaq 0xd6fd1(%rip), %rdi     # 0x12fd1d
callq 0xe4688
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xd6b17
movq %r14, %rdi
movq %rax, %rsi
callq 0x56f5e
movq %r15, %rdi
callq 0xd6d2c
leaq 0x68(%rsp), %rcx
movq (%rcx), %rdx
leaq 0x20(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x57639
testb $0x2, 0x10(%r15)
jne 0x59042
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x5905a
cmpq $0x3039, (%rax)         # imm = 0x3039
je 0x58dd4
leaq 0xd4895(%rip), %rdi     # 0x12d647
leaq 0xde734(%rip), %rsi     # 0x1374ed
leaq 0xde6fe(%rip), %rdx     # 0x1374be
leaq 0xde567(%rip), %rcx     # 0x13732e
movl $0x3a5, %r8d            # imm = 0x3A5
xorl %eax, %eax
callq 0xbe4ef
movabsq $-0x5aa4411ac4e2880e, %rbp # imm = 0xA55BBEE53B1D77F2
leaq 0xc8(%rsp), %r14
movl $0x2, %esi
movq %r14, %rdi
callq 0x1036b7
movq (%r14), %rdx
leaq 0x80(%rsp), %r15
movq %r15, %rdi
xorl %esi, %esi
callq 0xd6b17
movq %rax, %r14
callq 0x56c50
movq %r15, %rdi
xorl %esi, %esi
movq %rbx, %rdx
movq %rax, %rcx
callq 0xd68a8
movq %rax, %r15
movq (%r13), %rsi
leaq 0x20(%rsp), %r12
movq %r12, %rdi
callq 0xd6675
movq $0x0, 0x10(%r12)
leaq 0xde6cd(%rip), %rdi     # 0x137511
callq 0xe4688
movq %r12, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xd6b17
movq %r15, %rdi
movq %rax, %rsi
callq 0x56f5e
movq %r12, %rdi
callq 0xd6d2c
movq (%r14), %rdx
leaq 0x20(%rsp), %r12
movq %r12, %rdi
movq %r15, %rsi
movq %r14, %rcx
callq 0x57639
movq 0x10(%r12), %rax
movq %rax, 0x60(%rsp)
movups (%r12), %xmm0
movaps %xmm0, 0x50(%rsp)
movq 0x58(%rsp), %rax
testq %rax, %rax
je 0x58ea3
cmpq %rbp, 0x8(%rax)
je 0x58ecc
leaq 0xd479d(%rip), %rdi     # 0x12d647
leaq 0xde678(%rip), %rsi     # 0x137529
leaq 0xde606(%rip), %rdx     # 0x1374be
leaq 0xde46f(%rip), %rcx     # 0x13732e
movl $0x3ac, %r8d            # imm = 0x3AC
xorl %eax, %eax
callq 0xbe4ef
leaq 0x50(%rsp), %rdi
callq 0x1086af
testq %rax, %rax
je 0x58f04
leaq 0xd4765(%rip), %rdi     # 0x12d647
leaq 0xde660(%rip), %rsi     # 0x137549
leaq 0xde5ce(%rip), %rdx     # 0x1374be
leaq 0xde437(%rip), %rcx     # 0x13732e
movl $0x3ad, %r8d            # imm = 0x3AD
xorl %eax, %eax
callq 0xbe4ef
callq 0x56c50
leaq 0x80(%rsp), %rdi
xorl %esi, %esi
movq %rbx, %rdx
movq %rax, %rcx
callq 0xd68a8
movq %rax, %rbx
movq (%r13), %rsi
leaq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0xd6675
movq $0x0, 0x10(%r15)
leaq 0xde5d0(%rip), %rdi     # 0x137511
callq 0xe4688
movq %r15, %rdi
xorl %esi, %esi
movq %rax, %rdx
callq 0xd6b17
movq %rbx, %rdi
movq %rax, %rsi
callq 0x56f5e
movq %r15, %rdi
callq 0xd6d2c
leaq 0xb0(%rsp), %r15
movl $0x14, %esi
movq %r15, %rdi
callq 0x107a1f
movq (%r14), %rdx
movq 0x10(%r15), %rax
movq %rax, 0x10(%rsp)
movups (%r15), %xmm0
movups %xmm0, (%rsp)
leaq 0x20(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rcx
callq 0x57a65
movq 0x10(%r15), %rax
movq %rax, 0x60(%rsp)
movups (%r15), %xmm0
movaps %xmm0, 0x50(%rsp)
movq 0x58(%rsp), %rax
testq %rax, %rax
je 0x58fc4
cmpq %rbp, 0x8(%rax)
je 0x58fed
leaq 0xd467c(%rip), %rdi     # 0x12d647
leaq 0xde557(%rip), %rsi     # 0x137529
leaq 0xde4e5(%rip), %rdx     # 0x1374be
leaq 0xde34e(%rip), %rcx     # 0x13732e
movl $0x3b0, %r8d            # imm = 0x3B0
xorl %eax, %eax
callq 0xbe4ef
leaq 0x50(%rsp), %rdi
callq 0x1086af
cmpq $0x14, %rax
je 0x59026
leaq 0xd4643(%rip), %rdi     # 0x12d647
leaq 0xde555(%rip), %rsi     # 0x137560
leaq 0xde4ac(%rip), %rdx     # 0x1374be
leaq 0xde315(%rip), %rcx     # 0x13732e
movl $0x3b1, %r8d            # imm = 0x3B1
xorl %eax, %eax
callq 0xbe4ef
leaq 0x78(%rsp), %rdi
callq 0xd6d0d
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movups 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x107590
callq 0xd510
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movups 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
callq 0x107590