// File: /workspace/github_cpp_makefile_star2_O3/porzell[P]PTest/examples/unit_test.cpp
// Function: CanAddToVector5()
P_TEST(CanAddToVector) {
    std::vector<int> vec;
    vec.push_back(3);
    P_ASSERT(vec.size() == 1);
    vec.push_back(5);
    P_ASSERT(vec.size() == 2);
    vec.push_back(4);
    P_ASSERT(vec.size() == 3);
    vec.clear();
    // Assertion will fail.
    P_ASSERT(vec.size() != 0);
    // This will not run.
    printf("You shouldn't see me!\n");
    vec.push_back(4);
    P_ASSERT(vec.size() == 3);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x1e8, %rsp            # imm = 0x1E8
xorps %xmm0, %xmm0
leaq -0x40(%rbp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq -0x1c(%rbp), %rdx
movl $0x3, (%rdx)
xorl %esi, %esi
callq 0x3cf4
movq -0x38(%rbp), %r15
subq -0x40(%rbp), %r15
xorl %r14d, %r14d
cmpq $0x4, %r15
sete %r14b
callq 0x2b84
movq %rax, %rbx
leaq 0x2ba6(%rip), %rdx      # 0x50f3
leaq 0x2bb6(%rip), %r8       # 0x510a
leaq -0x200(%rbp), %rdi
movl %r14d, %esi
movl $0x8, %ecx
xorl %r9d, %r9d
callq 0x3c2c
leaq -0x200(%rbp), %rsi
movq %rbx, %rdi
xorl %edx, %edx
callq 0x3af2
leaq -0x200(%rbp), %rdi
callq 0x389c
cmpq $0x4, %r15
jne 0x2715
movl $0x5, -0x1c(%rbp)
movq -0x38(%rbp), %rbx
cmpq -0x30(%rbp), %rbx
je 0x25b3
movl $0x5, (%rbx)
addq $0x4, %rbx
movq %rbx, -0x38(%rbp)
jmp 0x25c7
leaq -0x40(%rbp), %rdi
leaq -0x1c(%rbp), %rdx
movq %rbx, %rsi
callq 0x3cf4
movq -0x38(%rbp), %rbx
subq -0x40(%rbp), %rbx
xorl %r15d, %r15d
cmpq $0x8, %rbx
sete %r15b
callq 0x2b84
movq %rax, %r14
leaq 0x2b0e(%rip), %rdx      # 0x50f3
leaq 0x2b2e(%rip), %r8       # 0x511a
leaq -0x190(%rbp), %rdi
movl %r15d, %esi
movl $0xa, %ecx
xorl %r9d, %r9d
callq 0x3c2c
leaq -0x190(%rbp), %rsi
movq %r14, %rdi
xorl %edx, %edx
callq 0x3af2
leaq -0x190(%rbp), %rdi
callq 0x389c
cmpq $0x8, %rbx
jne 0x2715
movl $0x4, -0x1c(%rbp)
movq -0x38(%rbp), %rbx
cmpq -0x30(%rbp), %rbx
je 0x264b
movl $0x4, (%rbx)
addq $0x4, %rbx
movq %rbx, -0x38(%rbp)
jmp 0x265f
leaq -0x40(%rbp), %rdi
leaq -0x1c(%rbp), %rdx
movq %rbx, %rsi
callq 0x3cf4
movq -0x38(%rbp), %rbx
subq -0x40(%rbp), %rbx
xorl %r15d, %r15d
cmpq $0xc, %rbx
sete %r15b
callq 0x2b84
movq %rax, %r14
leaq 0x2a76(%rip), %rdx      # 0x50f3
leaq 0x2aa6(%rip), %r8       # 0x512a
leaq -0x120(%rbp), %rdi
movl %r15d, %esi
movl $0xc, %ecx
xorl %r9d, %r9d
callq 0x3c2c
leaq -0x120(%rbp), %rsi
movq %r14, %rdi
xorl %edx, %edx
callq 0x3af2
leaq -0x120(%rbp), %rdi
callq 0x389c
cmpq $0xc, %rbx
jne 0x2715
movq -0x40(%rbp), %rax
cmpq %rax, -0x38(%rbp)
je 0x26cc
movq %rax, -0x38(%rbp)
callq 0x2b84
movq %rax, %rbx
leaq 0x2a18(%rip), %rdx      # 0x50f3
leaq 0x2a58(%rip), %r8       # 0x513a
leaq -0xb0(%rbp), %rdi
xorl %esi, %esi
movl $0xf, %ecx
xorl %r9d, %r9d
callq 0x3c2c
leaq -0xb0(%rbp), %rsi
movq %rbx, %rdi
xorl %edx, %edx
callq 0x3af2
leaq -0xb0(%rbp), %rdi
callq 0x389c
movq -0x40(%rbp), %rdi
testq %rdi, %rdi
je 0x2723
callq 0x2140
addq $0x1e8, %rsp            # imm = 0x1E8
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0x2772
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
jmp 0x2769
jmp 0x2772
jmp 0x2772
movq %rax, %rbx
leaq -0x120(%rbp), %rdi
jmp 0x2769
jmp 0x2772
movq %rax, %rbx
leaq -0x190(%rbp), %rdi
jmp 0x2769
jmp 0x2772
movq %rax, %rbx
leaq -0x200(%rbp), %rdi
callq 0x389c
jmp 0x2775
jmp 0x2772
movq %rax, %rbx
movq -0x40(%rbp), %rdi
testq %rdi, %rdi
je 0x2783
callq 0x2140
movq %rbx, %rdi
callq 0x2200