// File: /workspace/github_c_makefile_star2_O0/Tarsnap[P]libcperciva/tests/sysendian/main.c
// Function: selftest
static int
selftest(void)
{
	struct tests tests_actual;
	struct tests * tests = &tests_actual;

	/* Copy the tests into the volatile variables. */
	fill_testcases(tests);

	TEST_FULL(tests, 16);
	TEST_FULL(tests, 32);
	TEST_FULL(tests, 64);

	/* Success! */
	return (0);

err0:
	/* Failure! */
	return (1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x160, %rsp            # imm = 0x160
leaq -0x108(%rbp), %rax
movq %rax, -0x110(%rbp)
movq -0x110(%rbp), %rdi
callq 0x2030
movq $0x0, -0x120(%rbp)
cmpq $0x2, -0x120(%rbp)
jae 0x18c7
leaq -0x116(%rbp), %rdi
movq -0x110(%rbp), %rax
movq -0x120(%rbp), %rcx
movw (%rax,%rcx,2), %ax
movzwl %ax, %esi
callq 0x27d0
leaq -0x116(%rbp), %rax
leaq 0x5b73(%rip), %rcx      # 0x70e0
imulq $0x6, -0x120(%rbp), %rdx
addq %rdx, %rcx
addq $0x2, %rcx
movw (%rcx), %cx
movw (%rax), %ax
subw %cx, %ax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x161d
jmp 0x1596
callq 0x1070
cmpl $0x0, (%rax)
je 0x15c2
movq -0x120(%rbp), %rsi
leaq 0x3a6d(%rip), %rdi      # 0x501b
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x15d7
movq -0x120(%rbp), %rsi
leaq 0x3a4b(%rip), %rdi      # 0x501b
movb $0x0, %al
callq 0x3ea0
jmp 0x15d9
leaq -0x116(%rbp), %rsi
leaq 0x3a4c(%rip), %rdi      # 0x5033
movl $0x2, %edx
callq 0x2810
leaq 0x5ae8(%rip), %rsi      # 0x70e0
imulq $0x6, -0x120(%rbp), %rax
addq %rax, %rsi
addq $0x2, %rsi
leaq 0x3a30(%rip), %rdi      # 0x503e
movl $0x2, %edx
callq 0x2810
jmp 0x1fd1
leaq -0x116(%rbp), %rdi
movq -0x110(%rbp), %rax
movq -0x120(%rbp), %rcx
movw (%rax,%rcx,2), %ax
movzwl %ax, %esi
callq 0x2890
leaq -0x116(%rbp), %rax
leaq 0x5a94(%rip), %rcx      # 0x70e0
imulq $0x6, -0x120(%rbp), %rdx
addq %rdx, %rcx
addq $0x4, %rcx
movw (%rcx), %cx
movw (%rax), %ax
subw %cx, %ax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x16fc
jmp 0x1675
callq 0x1070
cmpl $0x0, (%rax)
je 0x16a1
movq -0x120(%rbp), %rsi
leaq 0x39bb(%rip), %rdi      # 0x5048
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x16b6
movq -0x120(%rbp), %rsi
leaq 0x3999(%rip), %rdi      # 0x5048
movb $0x0, %al
callq 0x3ea0
jmp 0x16b8
leaq -0x116(%rbp), %rsi
leaq 0x396d(%rip), %rdi      # 0x5033
movl $0x2, %edx
callq 0x2810
leaq 0x5a09(%rip), %rsi      # 0x70e0
imulq $0x6, -0x120(%rbp), %rax
addq %rax, %rsi
addq $0x4, %rsi
leaq 0x3951(%rip), %rdi      # 0x503e
movl $0x2, %edx
callq 0x2810
jmp 0x1fd1
movq -0x110(%rbp), %rax
movq -0x120(%rbp), %rcx
movw 0x4(%rax,%rcx,2), %ax
movw %ax, -0x114(%rbp)
leaq -0x114(%rbp), %rdi
callq 0x28d0
movw %ax, -0x112(%rbp)
movw -0x112(%rbp), %ax
movzwl %ax, %eax
movq -0x110(%rbp), %rcx
movq -0x120(%rbp), %rdx
movw (%rcx,%rdx,2), %cx
movzwl %cx, %ecx
cmpl %ecx, %eax
je 0x17d5
jmp 0x1752
callq 0x1070
cmpl $0x0, (%rax)
je 0x177e
movq -0x120(%rbp), %rsi
leaq 0x38f6(%rip), %rdi      # 0x5060
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1793
movq -0x120(%rbp), %rsi
leaq 0x38d4(%rip), %rdi      # 0x5060
movb $0x0, %al
callq 0x3ea0
jmp 0x1795
movw -0x112(%rbp), %ax
movzwl %ax, %esi
leaq 0x38d2(%rip), %rdi      # 0x5078
movb $0x0, %al
callq 0x10c0
movq -0x110(%rbp), %rax
movq -0x120(%rbp), %rcx
movw (%rax,%rcx,2), %ax
movzwl %ax, %esi
leaq 0x38bd(%rip), %rdi      # 0x5086
movb $0x0, %al
callq 0x10c0
jmp 0x1fd1
movq -0x110(%rbp), %rax
movq -0x120(%rbp), %rcx
movw 0x8(%rax,%rcx,2), %ax
movw %ax, -0x114(%rbp)
leaq -0x114(%rbp), %rdi
callq 0x2900
movw %ax, -0x112(%rbp)
movw -0x112(%rbp), %ax
movzwl %ax, %eax
movq -0x110(%rbp), %rcx
movq -0x120(%rbp), %rdx
movw (%rcx,%rdx,2), %cx
movzwl %cx, %ecx
cmpl %ecx, %eax
je 0x18ae
jmp 0x182b
callq 0x1070
cmpl $0x0, (%rax)
je 0x1857
movq -0x120(%rbp), %rsi
leaq 0x3850(%rip), %rdi      # 0x5093
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x186c
movq -0x120(%rbp), %rsi
leaq 0x382e(%rip), %rdi      # 0x5093
movb $0x0, %al
callq 0x3ea0
jmp 0x186e
movw -0x112(%rbp), %ax
movzwl %ax, %esi
leaq 0x37f9(%rip), %rdi      # 0x5078
movb $0x0, %al
callq 0x10c0
movq -0x110(%rbp), %rax
movq -0x120(%rbp), %rcx
movw (%rax,%rcx,2), %ax
movzwl %ax, %esi
leaq 0x37e4(%rip), %rdi      # 0x5086
movb $0x0, %al
callq 0x10c0
jmp 0x1fd1
jmp 0x18b0
movq -0x120(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x120(%rbp)
jmp 0x1530
jmp 0x18c9
jmp 0x18cb
movq $0x0, -0x138(%rbp)
cmpq $0x4, -0x138(%rbp)
jae 0x1c37
leaq -0x12c(%rbp), %rdi
movq -0x110(%rbp), %rax
movq -0x138(%rbp), %rcx
movl 0xc(%rax,%rcx,4), %esi
callq 0x23b0
leaq -0x12c(%rbp), %rax
leaq 0x57e0(%rip), %rcx      # 0x70f0
imulq $0xc, -0x138(%rbp), %rdx
addq %rdx, %rcx
addq $0x4, %rcx
movl (%rcx), %ecx
movl (%rax), %eax
subl %ecx, %eax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x19bd
jmp 0x1936
callq 0x1070
cmpl $0x0, (%rax)
je 0x1962
movq -0x138(%rbp), %rsi
leaq 0x375d(%rip), %rdi      # 0x50ab
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1977
movq -0x138(%rbp), %rsi
leaq 0x373b(%rip), %rdi      # 0x50ab
movb $0x0, %al
callq 0x3ea0
jmp 0x1979
leaq -0x12c(%rbp), %rsi
leaq 0x36ac(%rip), %rdi      # 0x5033
movl $0x4, %edx
callq 0x2810
leaq 0x5758(%rip), %rsi      # 0x70f0
imulq $0xc, -0x138(%rbp), %rax
addq %rax, %rsi
addq $0x4, %rsi
leaq 0x3690(%rip), %rdi      # 0x503e
movl $0x4, %edx
callq 0x2810
jmp 0x1fd1
leaq -0x12c(%rbp), %rdi
movq -0x110(%rbp), %rax
movq -0x138(%rbp), %rcx
movl 0xc(%rax,%rcx,4), %esi
callq 0x2420
leaq -0x12c(%rbp), %rax
leaq 0x5707(%rip), %rcx      # 0x70f0
imulq $0xc, -0x138(%rbp), %rdx
addq %rdx, %rcx
addq $0x8, %rcx
movl (%rcx), %ecx
movl (%rax), %eax
subl %ecx, %eax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x1a96
jmp 0x1a0f
callq 0x1070
cmpl $0x0, (%rax)
je 0x1a3b
movq -0x138(%rbp), %rsi
leaq 0x369c(%rip), %rdi      # 0x50c3
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1a50
movq -0x138(%rbp), %rsi
leaq 0x367a(%rip), %rdi      # 0x50c3
movb $0x0, %al
callq 0x3ea0
jmp 0x1a52
leaq -0x12c(%rbp), %rsi
leaq 0x35d3(%rip), %rdi      # 0x5033
movl $0x4, %edx
callq 0x2810
leaq 0x567f(%rip), %rsi      # 0x70f0
imulq $0xc, -0x138(%rbp), %rax
addq %rax, %rsi
addq $0x8, %rsi
leaq 0x35b7(%rip), %rdi      # 0x503e
movl $0x4, %edx
callq 0x2810
jmp 0x1fd1
movq -0x110(%rbp), %rax
movq -0x138(%rbp), %rcx
movl 0x1c(%rax,%rcx,4), %eax
movl %eax, -0x128(%rbp)
leaq -0x128(%rbp), %rdi
callq 0x2490
movl %eax, -0x124(%rbp)
movl -0x124(%rbp), %eax
movq -0x110(%rbp), %rcx
movq -0x138(%rbp), %rdx
movl 0xc(%rcx,%rdx,4), %ecx
cmpl %ecx, %eax
je 0x1b5a
jmp 0x1ade
callq 0x1070
cmpl $0x0, (%rax)
je 0x1b0a
movq -0x138(%rbp), %rsi
leaq 0x35e5(%rip), %rdi      # 0x50db
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1b1f
movq -0x138(%rbp), %rsi
leaq 0x35c3(%rip), %rdi      # 0x50db
movb $0x0, %al
callq 0x3ea0
jmp 0x1b21
movl -0x124(%rbp), %esi
leaq 0x354a(%rip), %rdi      # 0x5078
movb $0x0, %al
callq 0x10c0
movq -0x110(%rbp), %rax
movq -0x138(%rbp), %rcx
movl 0xc(%rax,%rcx,4), %esi
leaq 0x3538(%rip), %rdi      # 0x5086
movb $0x0, %al
callq 0x10c0
jmp 0x1fd1
movq -0x110(%rbp), %rax
movq -0x138(%rbp), %rcx
movl 0x2c(%rax,%rcx,4), %eax
movl %eax, -0x128(%rbp)
leaq -0x128(%rbp), %rdi
callq 0x24d0
movl %eax, -0x124(%rbp)
movl -0x124(%rbp), %eax
movq -0x110(%rbp), %rcx
movq -0x138(%rbp), %rdx
movl 0xc(%rcx,%rdx,4), %ecx
cmpl %ecx, %eax
je 0x1c1e
jmp 0x1ba2
callq 0x1070
cmpl $0x0, (%rax)
je 0x1bce
movq -0x138(%rbp), %rsi
leaq 0x3539(%rip), %rdi      # 0x50f3
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1be3
movq -0x138(%rbp), %rsi
leaq 0x3517(%rip), %rdi      # 0x50f3
movb $0x0, %al
callq 0x3ea0
jmp 0x1be5
movl -0x124(%rbp), %esi
leaq 0x3486(%rip), %rdi      # 0x5078
movb $0x0, %al
callq 0x10c0
movq -0x110(%rbp), %rax
movq -0x138(%rbp), %rcx
movl 0xc(%rax,%rcx,4), %esi
leaq 0x3474(%rip), %rdi      # 0x5086
movb $0x0, %al
callq 0x10c0
jmp 0x1fd1
jmp 0x1c20
movq -0x138(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x138(%rbp)
jmp 0x18d6
jmp 0x1c39
jmp 0x1c3b
movq $0x0, -0x158(%rbp)
cmpq $0x8, -0x158(%rbp)
jae 0x1fc6
leaq -0x150(%rbp), %rdi
movq -0x110(%rbp), %rax
movq -0x158(%rbp), %rcx
movq 0x40(%rax,%rcx,8), %rsi
callq 0x2510
leaq -0x150(%rbp), %rax
leaq 0x549f(%rip), %rcx      # 0x7120
imulq $0x18, -0x158(%rbp), %rdx
addq %rdx, %rcx
addq $0x8, %rcx
movq (%rcx), %rcx
movq (%rax), %rax
subq %rcx, %rax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x1d31
jmp 0x1caa
callq 0x1070
cmpl $0x0, (%rax)
je 0x1cd6
movq -0x158(%rbp), %rsi
leaq 0x3449(%rip), %rdi      # 0x510b
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1ceb
movq -0x158(%rbp), %rsi
leaq 0x3427(%rip), %rdi      # 0x510b
movb $0x0, %al
callq 0x3ea0
jmp 0x1ced
leaq -0x150(%rbp), %rsi
leaq 0x3338(%rip), %rdi      # 0x5033
movl $0x8, %edx
callq 0x2810
leaq 0x5414(%rip), %rsi      # 0x7120
imulq $0x18, -0x158(%rbp), %rax
addq %rax, %rsi
addq $0x8, %rsi
leaq 0x331c(%rip), %rdi      # 0x503e
movl $0x8, %edx
callq 0x2810
jmp 0x1fd1
leaq -0x150(%rbp), %rdi
movq -0x110(%rbp), %rax
movq -0x158(%rbp), %rcx
movq 0x40(%rax,%rcx,8), %rsi
callq 0x25e0
leaq -0x150(%rbp), %rax
leaq 0x53c2(%rip), %rcx      # 0x7120
imulq $0x18, -0x158(%rbp), %rdx
addq %rdx, %rcx
addq $0x10, %rcx
movq (%rcx), %rcx
movq (%rax), %rax
subq %rcx, %rax
setne %al
movzbl %al, %eax
cmpl $0x0, %eax
je 0x1e0e
jmp 0x1d87
callq 0x1070
cmpl $0x0, (%rax)
je 0x1db3
movq -0x158(%rbp), %rsi
leaq 0x3384(%rip), %rdi      # 0x5123
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1dc8
movq -0x158(%rbp), %rsi
leaq 0x3362(%rip), %rdi      # 0x5123
movb $0x0, %al
callq 0x3ea0
jmp 0x1dca
leaq -0x150(%rbp), %rsi
leaq 0x325b(%rip), %rdi      # 0x5033
movl $0x8, %edx
callq 0x2810
leaq 0x5337(%rip), %rsi      # 0x7120
imulq $0x18, -0x158(%rbp), %rax
addq %rax, %rsi
addq $0x10, %rsi
leaq 0x323f(%rip), %rdi      # 0x503e
movl $0x8, %edx
callq 0x2810
jmp 0x1fd1
movq -0x110(%rbp), %rax
movq -0x158(%rbp), %rcx
movq 0x80(%rax,%rcx,8), %rax
movq %rax, -0x148(%rbp)
leaq -0x148(%rbp), %rdi
callq 0x26b0
movq %rax, -0x140(%rbp)
movq -0x140(%rbp), %rax
movq -0x110(%rbp), %rcx
movq -0x158(%rbp), %rdx
movq 0x40(%rcx,%rdx,8), %rcx
cmpq %rcx, %rax
je 0x1ee1
jmp 0x1e63
callq 0x1070
cmpl $0x0, (%rax)
je 0x1e8f
movq -0x158(%rbp), %rsi
leaq 0x32c0(%rip), %rdi      # 0x513b
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1ea4
movq -0x158(%rbp), %rsi
leaq 0x329e(%rip), %rdi      # 0x513b
movb $0x0, %al
callq 0x3ea0
jmp 0x1ea6
movq -0x140(%rbp), %rsi
leaq 0x329f(%rip), %rdi      # 0x5153
movb $0x0, %al
callq 0x10c0
movq -0x110(%rbp), %rax
movq -0x158(%rbp), %rcx
movq 0x40(%rax,%rcx,8), %rsi
leaq 0x328d(%rip), %rdi      # 0x5162
movb $0x0, %al
callq 0x10c0
jmp 0x1fd1
movq -0x110(%rbp), %rax
movq -0x158(%rbp), %rcx
movq 0xc0(%rax,%rcx,8), %rax
movq %rax, -0x148(%rbp)
leaq -0x148(%rbp), %rdi
callq 0x2740
movq %rax, -0x140(%rbp)
movq -0x140(%rbp), %rax
movq -0x110(%rbp), %rcx
movq -0x158(%rbp), %rdx
movq 0x40(%rcx,%rdx,8), %rcx
cmpq %rcx, %rax
je 0x1fad
jmp 0x1f32
callq 0x1070
cmpl $0x0, (%rax)
je 0x1f5e
movq -0x158(%rbp), %rsi
leaq 0x3226(%rip), %rdi      # 0x5170
movb $0x0, %al
callq 0x3c50
callq 0x1070
movl $0x0, (%rax)
jmp 0x1f73
movq -0x158(%rbp), %rsi
leaq 0x3204(%rip), %rdi      # 0x5170
movb $0x0, %al
callq 0x3ea0
jmp 0x1f75
movq -0x140(%rbp), %rsi
leaq 0x31d0(%rip), %rdi      # 0x5153
movb $0x0, %al
callq 0x10c0
movq -0x110(%rbp), %rax
movq -0x158(%rbp), %rcx
movq 0x40(%rax,%rcx,8), %rsi
leaq 0x31be(%rip), %rdi      # 0x5162
movb $0x0, %al
callq 0x10c0
jmp 0x1fd1
jmp 0x1faf
movq -0x158(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x158(%rbp)
jmp 0x1c46
jmp 0x1fc8
movl $0x0, -0x4(%rbp)
jmp 0x1fd8
movl $0x1, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x160, %rsp            # imm = 0x160
popq %rbp
retq
nopw %cs:(%rax,%rax)