// File: /workspace/github_c_makefile_star2_O0/meaning-matters[P]Except/Test.c
// Function: TestReturn
static int TestReturn(void)
{
    printf("\nRETURN TESTS ------------------------------------------\n\n");

    printf("-->%2d: Returns 6?\n", testNum++);
    printf("Return value = %d\n", t1());
    printf("\n");

    printf("-->%2d: Returns 7?\n", testNum++);
    printf("Return value = %d\n", t2());
    printf("\n");

    printf("-->%2d: Returns 8?\n", testNum++);
    printf("Return value = %d\n", t3());
    printf("\n");

    printf("-->%2d: Returns 9?\n", testNum++);
    printf("Return value = %d\n", t4());
    printf("\n");

    printf("-->%2d: Prints \"ABC2\"?\n", testNum++);
    try
    {
        printf("%d\n", spell());
    }
    catch (Throwable, e)
        printf("%s\n", e->getMessage());
    finally;
    printf("\n");

    printf("-->%2d: Prints \"A B C 1\"?\n", testNum++);
    printf("%d\n", tX());
    printf("\n");    
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
leaq 0x764d(%rip), %rdi      # 0xe55c
movb $0x0, %al
callq 0x1060
movl 0xa334(%rip), %esi      # 0x11250
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0xa329(%rip)      # 0x11250
leaq 0x7669(%rip), %rdi      # 0xe597
movb $0x0, %al
callq 0x1060
callq 0x4760
movl %eax, %esi
leaq 0x7668(%rip), %rdi      # 0xe5ab
movb $0x0, %al
callq 0x1060
leaq 0x7ac9(%rip), %rdi      # 0xea1a
movb $0x0, %al
callq 0x1060
movl 0xa2f2(%rip), %esi      # 0x11250
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0xa2e7(%rip)      # 0x11250
leaq 0x764e(%rip), %rdi      # 0xe5be
movb $0x0, %al
callq 0x1060
callq 0x4aa0
movl %eax, %esi
leaq 0x7626(%rip), %rdi      # 0xe5ab
movb $0x0, %al
callq 0x1060
leaq 0x7a87(%rip), %rdi      # 0xea1a
movb $0x0, %al
callq 0x1060
movl 0xa2b0(%rip), %esi      # 0x11250
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0xa2a5(%rip)      # 0x11250
leaq 0x7620(%rip), %rdi      # 0xe5d2
movb $0x0, %al
callq 0x1060
callq 0x4d50
movl %eax, %esi
leaq 0x75e4(%rip), %rdi      # 0xe5ab
movb $0x0, %al
callq 0x1060
leaq 0x7a45(%rip), %rdi      # 0xea1a
movb $0x0, %al
callq 0x1060
movl 0xa26e(%rip), %esi      # 0x11250
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0xa263(%rip)      # 0x11250
leaq 0x75f2(%rip), %rdi      # 0xe5e6
movb $0x0, %al
callq 0x1060
callq 0x5000
movl %eax, %esi
leaq 0x75a2(%rip), %rdi      # 0xe5ab
movb $0x0, %al
callq 0x1060
leaq 0x7a03(%rip), %rdi      # 0xea1a
movb $0x0, %al
callq 0x1060
movl 0xa22c(%rip), %esi      # 0x11250
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0xa221(%rip)      # 0x11250
leaq 0x75c4(%rip), %rdi      # 0xe5fa
movb $0x0, %al
callq 0x1060
leaq 0xa21c(%rip), %rax      # 0x11260
movq (%rax), %rdi
leaq 0x7412(%rip), %rsi      # 0xe460
movl $0xee, %edx
callq 0x1610
leaq 0xa201(%rip), %rax      # 0x11260
movq (%rax), %rdi
callq 0x12a0
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rdi
leaq 0xa2a2(%rip), %rsi      # 0x11320
leaq 0x73db(%rip), %rdx      # 0xe460
movl $0xee, %ecx
callq 0x1f60
cmpl $0x0, %eax
je 0x70e9
movq -0x18(%rbp), %rax
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x70e9
movq -0x18(%rbp), %rax
movq (%rax), %rdi
addq $0x8, %rdi
movl $0x1, %esi
callq 0x1110
cmpl $0x0, %eax
jne 0x70e9
movq -0x18(%rbp), %rax
movq (%rax), %rax
movl $0x1, 0x1b8(%rax)
callq 0x5850
movl %eax, %esi
leaq 0x728a(%rip), %rdi      # 0xe367
movb $0x0, %al
callq 0x1060
jmp 0x717d
movq -0x18(%rbp), %rdi
leaq 0xa22c(%rip), %rsi      # 0x11320
leaq 0x9fb5(%rip), %rdx      # 0x110b0
leaq 0x735e(%rip), %rcx      # 0xe460
movl $0xf2, %r8d
callq 0x2030
cmpl $0x0, %eax
je 0x717b
movq -0x18(%rbp), %rax
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
je 0x717b
movq -0x18(%rbp), %rdi
leaq 0x9f83(%rip), %rsi      # 0x110b0
callq 0x1b80
cmpl $0x0, %eax
je 0x717b
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rdi
movl $0x1, %esi
callq 0x2550
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq (%rax), %rax
movl $0x2, 0x1b8(%rax)
movq -0x20(%rbp), %rax
callq *0x1e0(%rax)
movq %rax, %rsi
leaq 0x76f2(%rip), %rdi      # 0xe864
movb $0x0, %al
callq 0x1060
jmp 0x717b
jmp 0x717d
cmpl $0x0, 0xa19c(%rip)      # 0x11320
jne 0x718b
jmp 0x7058
movq -0x18(%rbp), %rax
movq (%rax), %rax
cmpl $0x0, 0x1b4(%rax)
jne 0x71cb
movq -0x18(%rbp), %rax
movq (%rax), %rdi
addq $0xd0, %rdi
movl $0x1, %esi
callq 0x1110
cmpl $0x0, %eax
jne 0x71cb
movq -0x18(%rbp), %rax
movq (%rax), %rax
movl $0x1, 0x1b4(%rax)
jmp 0x71cd
jmp 0x71d2
jmp 0x7058
leaq 0xa087(%rip), %rax      # 0x11260
movq (%rax), %rdi
callq 0x12a0
movq (%rax), %rax
movl $0x3, 0x1b8(%rax)
leaq 0xa06b(%rip), %rax      # 0x11260
movq (%rax), %rdi
callq 0x12a0
movq (%rax), %rcx
movb $0x1, %al
cmpl $0x0, 0x1b4(%rcx)
movb %al, -0x21(%rbp)
jg 0x7226
leaq 0xa04b(%rip), %rax      # 0x11260
movq (%rax), %rdi
callq 0x1c60
cmpl $0x0, %eax
setne %al
movb %al, -0x21(%rbp)
movb -0x21(%rbp), %al
testb $0x1, %al
jne 0x722f
jmp 0x725d
jmp 0x7231
leaq 0xa028(%rip), %rax      # 0x11260
movq (%rax), %rdi
callq 0x12a0
movq (%rax), %rcx
movl 0x1b4(%rcx), %eax
movl %eax, %edx
addl $-0x1, %edx
movl %edx, 0x1b4(%rcx)
cmpl $0x0, %eax
jle 0x725b
jmp 0x7231
jmp 0x71ee
leaq 0x77b6(%rip), %rdi      # 0xea1a
movb $0x0, %al
callq 0x1060
movl 0x9fdf(%rip), %esi      # 0x11250
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x9fd4(%rip)      # 0x11250
leaq 0x738f(%rip), %rdi      # 0xe612
movb $0x0, %al
callq 0x1060
callq 0x5350
movl %eax, %esi
leaq 0x70cf(%rip), %rdi      # 0xe367
movb $0x0, %al
callq 0x1060
leaq 0x7774(%rip), %rdi      # 0xea1a
movb $0x0, %al
callq 0x1060
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)