	.file	"93886520.c"
	.intel_syntax noprefix
	.text
	.local	testfile
	.comm	testfile,8,8
	.local	testfile2
	.comm	testfile2,8,8
	.local	testdir
	.comm	testdir,8,8
	.local	testdir2
	.comm	testdir2,8,8
	.local	testname
	.comm	testname,256,32
	.data
	.align 16
	.type	testdata, @object
	.size	testdata, 27
testdata:
	.string	"abcdefghijklmnopqrstuvwxyz"
	.align 32
	.type	testdata2, @object
	.size	testdata2, 46
testdata2:
	.string	"1234567890-=qwertyuiop[]\007sdfghjkl;'zxcvbnm,./"
	.section	.rodata
.LC0:
	.string	"f1"
.LC1:
	.string	"f2"
	.section	.data.rel.local,"aw"
	.align 16
	.type	testdir_files, @object
	.size	testdir_files, 24
testdir_files:
	.quad	.LC0
	.quad	.LC1
	.quad	0
	.local	zerodata
	.comm	zerodata,4096,32
	.data
	.align 4
	.type	testdatalen, @object
	.size	testdatalen, 4
testdatalen:
	.long	26
	.align 4
	.type	testdata2len, @object
	.size	testdata2len, 4
testdata2len:
	.long	45
	.section	.rodata
.LC2:
	.string	"NG [%s] %s(): %s: %s\n"
	.text
	.type	test_perror, @function
test_perror:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rax, QWORD PTR stdout[rip]
	mov	rsi, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r9, rcx
	mov	r8, rsi
	mov	rcx, rdx
	lea	rdx, testname[rip]
	lea	rsi, .LC2[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	test_perror, .-test_perror
	.section	.rodata
.LC3:
	.string	"NG [%s] %s(): "
	.text
	.type	test_error, @function
test_error:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 224
	mov	QWORD PTR -216[rbp], rdi
	mov	QWORD PTR -224[rbp], rsi
	mov	QWORD PTR -160[rbp], rdx
	mov	QWORD PTR -152[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L3
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L3:
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR stdout[rip]
	mov	rdx, QWORD PTR -216[rbp]
	mov	rcx, rdx
	lea	rdx, testname[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	DWORD PTR -208[rbp], 16
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	lea	rdx, -208[rbp]
	mov	rcx, QWORD PTR -224[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	vfprintf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L4
	call	__stack_chk_fail@PLT
.L4:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	test_error, .-test_error
	.section	.rodata
.LC4:
	.string	"OK [%s]\n"
	.text
	.type	success, @function
success:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR stdout[rip]
	lea	rdx, testname[rip]
	lea	rsi, .LC4[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	success, .-success
	.type	start_test, @function
start_test:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 224
	mov	QWORD PTR -216[rbp], rdi
	mov	QWORD PTR -168[rbp], rsi
	mov	QWORD PTR -160[rbp], rdx
	mov	QWORD PTR -152[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L7
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L7:
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -208[rbp], 8
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	lea	rdx, -208[rbp]
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rax
	lea	rdi, testname[rip]
	call	vsprintf@PLT
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L8
	call	__stack_chk_fail@PLT
.L8:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	start_test, .-start_test
	.section	.rodata
.LC5:
	.string	"stat"
.LC6:
	.string	"length %u instead of %u"
	.text
	.type	check_size, @function
check_size:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	DWORD PTR -188[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	stat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], -1
	jne	.L10
	lea	rsi, .LC5[rip]
	lea	rdi, func.34[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L13
.L10:
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	cmp	rdx, rax
	je	.L12
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	mov	ecx, eax
	lea	rsi, .LC6[rip]
	lea	rdi, func.34[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L13
.L12:
	mov	eax, 0
.L13:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L14
	call	__stack_chk_fail@PLT
.L14:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	check_size, .-check_size
	.section	.rodata
.LC7:
	.string	"lstat"
.LC8:
	.string	"type 0%o instead of 0%o"
	.text
	.type	check_type, @function
check_type:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	DWORD PTR -188[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], -1
	jne	.L16
	lea	rsi, .LC7[rip]
	lea	rdi, func.33[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L19
.L16:
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	cmp	DWORD PTR -188[rbp], eax
	je	.L18
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	mov	ecx, eax
	lea	rsi, .LC8[rip]
	lea	rdi, func.33[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L19
.L18:
	mov	eax, 0
.L19:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L20
	call	__stack_chk_fail@PLT
.L20:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	check_type, .-check_type
	.section	.rodata
.LC9:
	.string	"mode 0%o instead of 0%o"
	.text
	.type	check_mode, @function
check_mode:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	DWORD PTR -188[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], -1
	jne	.L22
	lea	rsi, .LC7[rip]
	lea	rdi, func.32[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L25
.L22:
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 4095
	cmp	DWORD PTR -188[rbp], eax
	je	.L24
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 4095
	mov	edx, eax
	mov	eax, DWORD PTR -188[rbp]
	mov	ecx, eax
	lea	rsi, .LC9[rip]
	lea	rdi, func.32[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L25
.L24:
	mov	eax, 0
.L25:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L26
	call	__stack_chk_fail@PLT
.L26:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	check_mode, .-check_mode
	.section	.rodata
.LC10:
	.string	"different atime"
.LC11:
	.string	"different mtime"
	.text
	.type	check_times, @function
check_times:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 208
	mov	QWORD PTR -184[rbp], rdi
	mov	QWORD PTR -192[rbp], rsi
	mov	QWORD PTR -200[rbp], rdx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -168[rbp], 0
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], -1
	jne	.L28
	lea	rsi, .LC7[rip]
	lea	rdi, func.31[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L33
.L28:
	mov	rax, QWORD PTR -88[rbp]
	cmp	QWORD PTR -192[rbp], rax
	je	.L30
	lea	rsi, .LC10[rip]
	lea	rdi, func.31[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -168[rbp], 1
.L30:
	mov	rax, QWORD PTR -72[rbp]
	cmp	QWORD PTR -200[rbp], rax
	je	.L31
	lea	rsi, .LC11[rip]
	lea	rdi, func.31[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -168[rbp], 1
.L31:
	cmp	DWORD PTR -168[rbp], 0
	je	.L32
	mov	eax, -1
	jmp	.L33
.L32:
	mov	eax, 0
.L33:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L34
	call	__stack_chk_fail@PLT
.L34:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	check_times, .-check_times
	.section	.rodata
.LC12:
	.string	"nlink %i instead of %i"
	.text
	.type	check_nlink, @function
check_nlink:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	QWORD PTR -192[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], -1
	jne	.L36
	lea	rsi, .LC7[rip]
	lea	rdi, func.30[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L39
.L36:
	mov	rax, QWORD PTR -144[rbp]
	cmp	QWORD PTR -192[rbp], rax
	je	.L38
	mov	rax, QWORD PTR -144[rbp]
	mov	rdx, QWORD PTR -192[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC12[rip]
	lea	rdi, func.30[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L39
.L38:
	mov	eax, 0
.L39:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L40
	call	__stack_chk_fail@PLT
.L40:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	check_nlink, .-check_nlink
	.section	.rodata
.LC13:
	.string	"file should not exist"
.LC14:
	.string	"file should not exist: %s"
	.text
	.type	check_nonexist, @function
check_nonexist:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], 0
	jne	.L42
	lea	rsi, .LC13[rip]
	lea	rdi, func.29[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L45
.L42:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	je	.L44
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rdx, rax
	lea	rsi, .LC14[rip]
	lea	rdi, func.29[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L45
.L44:
	mov	eax, 0
.L45:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L46
	call	__stack_chk_fail@PLT
.L46:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	check_nonexist, .-check_nonexist
	.section	.rodata
.LC15:
	.string	"data mismatch"
	.text
	.type	check_buffer, @function
check_buffer:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	DWORD PTR -20[rbp], edx
	mov	edx, DWORD PTR -20[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcmp@PLT
	test	eax, eax
	je	.L48
	lea	rsi, .LC15[rip]
	lea	rdi, func.28[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L49
.L48:
	mov	eax, 0
.L49:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	check_buffer, .-check_buffer
	.section	.rodata
.LC16:
	.string	"open"
.LC17:
	.string	"lseek"
.LC18:
	.string	"read"
	.align 8
.LC19:
	.string	"%s: short read: %u instead of %u"
.LC20:
	.string	"close"
	.text
	.type	do_check_data, @function
do_check_data:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 64
	mov	QWORD PTR -4136[rbp], rdi
	mov	QWORD PTR -4144[rbp], rsi
	mov	QWORD PTR -4152[rbp], rdx
	mov	DWORD PTR -4156[rbp], ecx
	mov	DWORD PTR -4160[rbp], r8d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -4136[rbp]
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -4124[rbp], eax
	cmp	DWORD PTR -4124[rbp], -1
	jne	.L51
	lea	rsi, .LC16[rip]
	lea	rdi, func.27[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L60
.L51:
	mov	eax, DWORD PTR -4156[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -4124[rbp]
	mov	edx, 0
	mov	rsi, rcx
	mov	edi, eax
	call	lseek@PLT
	cmp	rax, -1
	jne	.L54
	lea	rsi, .LC17[rip]
	lea	rdi, func.27[rip]
	call	test_perror
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L60
.L58:
	mov	eax, 4096
	cmp	DWORD PTR -4160[rbp], 4096
	cmovbe	eax, DWORD PTR -4160[rbp]
	mov	DWORD PTR -4116[rbp], eax
	mov	eax, DWORD PTR -4116[rbp]
	movsx	rdx, eax
	lea	rcx, -4112[rbp]
	mov	eax, DWORD PTR -4124[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR -4120[rbp], eax
	cmp	DWORD PTR -4120[rbp], -1
	jne	.L55
	lea	rsi, .LC18[rip]
	lea	rdi, func.27[rip]
	call	test_perror
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L60
.L55:
	mov	eax, DWORD PTR -4120[rbp]
	cmp	eax, DWORD PTR -4116[rbp]
	je	.L56
	mov	ecx, DWORD PTR -4116[rbp]
	mov	edx, DWORD PTR -4120[rbp]
	mov	rax, QWORD PTR -4144[rbp]
	mov	r8d, ecx
	mov	ecx, edx
	mov	rdx, rax
	lea	rsi, .LC19[rip]
	lea	rdi, func.27[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L60
.L56:
	mov	edx, DWORD PTR -4116[rbp]
	mov	rcx, QWORD PTR -4152[rbp]
	lea	rax, -4112[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_buffer
	test	eax, eax
	je	.L57
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L60
.L57:
	mov	eax, DWORD PTR -4116[rbp]
	cdqe
	add	QWORD PTR -4152[rbp], rax
	mov	eax, DWORD PTR -4116[rbp]
	sub	DWORD PTR -4160[rbp], eax
.L54:
	cmp	DWORD PTR -4160[rbp], 0
	jne	.L58
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
	mov	DWORD PTR -4120[rbp], eax
	cmp	DWORD PTR -4120[rbp], -1
	jne	.L59
	lea	rsi, .LC20[rip]
	lea	rdi, func.27[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L60
.L59:
	mov	eax, 0
.L60:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L61
	call	__stack_chk_fail@PLT
.L61:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	do_check_data, .-do_check_data
	.section	.rodata
.LC21:
	.string	"the_stack_data/93886520.c"
.LC22:
	.string	"i < MAX_ENTRIES - 3"
.LC23:
	.string	"."
.LC24:
	.string	".."
.LC25:
	.string	"opendir"
.LC26:
	.string	"readdir"
.LC27:
	.string	"i < MAX_ENTRIES"
.LC28:
	.string	"duplicate entry <%s>"
.LC29:
	.string	"unexpected entry <%s>"
.LC30:
	.string	"missing entry <%s>"
.LC31:
	.string	"closedir"
	.text
	.type	check_dir_contents, @function
check_dir_contents:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 64
	mov	QWORD PTR -12344[rbp], rdi
	mov	QWORD PTR -12352[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -12328[rbp], 0
	mov	DWORD PTR -12332[rbp], 0
	jmp	.L63
.L65:
	cmp	DWORD PTR -12332[rbp], 1020
	jle	.L64
	lea	rcx, __PRETTY_FUNCTION__.26[rip]
	mov	edx, 275
	lea	rsi, .LC21[rip]
	lea	rdi, .LC22[rip]
	call	__assert_fail@PLT
.L64:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	DWORD PTR -12304[rbp+rax*4], 0
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -12352[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	QWORD PTR -8208[rbp+rax*8], rdx
	add	DWORD PTR -12332[rbp], 1
.L63:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -12352[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L65
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	DWORD PTR -12304[rbp+rax*4], 0
	mov	eax, DWORD PTR -12332[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -12332[rbp], edx
	cdqe
	lea	rdx, .LC23[rip]
	mov	QWORD PTR -8208[rbp+rax*8], rdx
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	DWORD PTR -12304[rbp+rax*4], 0
	mov	eax, DWORD PTR -12332[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -12332[rbp], edx
	cdqe
	lea	rdx, .LC24[rip]
	mov	QWORD PTR -8208[rbp+rax*8], rdx
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	QWORD PTR -8208[rbp+rax*8], 0
	mov	rax, QWORD PTR -12344[rbp]
	mov	rdi, rax
	call	opendir@PLT
	mov	QWORD PTR -12320[rbp], rax
	cmp	QWORD PTR -12320[rbp], 0
	jne	.L66
	lea	rsi, .LC25[rip]
	lea	rdi, func.25[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L85
.L66:
	lea	rax, -12304[rbp]
	mov	edx, 4096
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
.L79:
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 0
	mov	rax, QWORD PTR -12320[rbp]
	mov	rdi, rax
	call	readdir@PLT
	mov	QWORD PTR -12312[rbp], rax
	cmp	QWORD PTR -12312[rbp], 0
	jne	.L68
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L87
	lea	rsi, .LC26[rip]
	lea	rdi, func.25[rip]
	call	test_perror
	mov	rax, QWORD PTR -12320[rbp]
	mov	rdi, rax
	call	closedir@PLT
	mov	eax, -1
	jmp	.L85
.L68:
	mov	DWORD PTR -12332[rbp], 0
	jmp	.L71
.L77:
	cmp	DWORD PTR -12332[rbp], 1023
	jle	.L72
	lea	rcx, __PRETTY_FUNCTION__.26[rip]
	mov	edx, 303
	lea	rsi, .LC21[rip]
	lea	rdi, .LC27[rip]
	call	__assert_fail@PLT
.L72:
	mov	rax, QWORD PTR -12312[rbp]
	lea	rdx, 19[rax]
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	rax, QWORD PTR -8208[rbp+rax*8]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L73
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	eax, DWORD PTR -12304[rbp+rax*4]
	test	eax, eax
	je	.L74
	mov	rax, QWORD PTR -12312[rbp]
	add	rax, 19
	mov	rdx, rax
	lea	rsi, .LC28[rip]
	lea	rdi, func.25[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -12328[rbp], 1
	jmp	.L76
.L74:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	DWORD PTR -12304[rbp+rax*4], 1
	jmp	.L76
.L73:
	add	DWORD PTR -12332[rbp], 1
.L71:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	rax, QWORD PTR -8208[rbp+rax*8]
	test	rax, rax
	jne	.L77
.L76:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	rax, QWORD PTR -8208[rbp+rax*8]
	test	rax, rax
	jne	.L79
	mov	rax, QWORD PTR -12312[rbp]
	add	rax, 19
	mov	rdx, rax
	lea	rsi, .LC29[rip]
	lea	rdi, func.25[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -12328[rbp], 1
	jmp	.L79
.L87:
	nop
	mov	DWORD PTR -12332[rbp], 0
	jmp	.L80
.L82:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	eax, DWORD PTR -12304[rbp+rax*4]
	test	eax, eax
	jne	.L81
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	rax, QWORD PTR -8208[rbp+rax*8]
	mov	rdx, rax
	lea	rsi, .LC30[rip]
	lea	rdi, func.25[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -12328[rbp], 1
.L81:
	add	DWORD PTR -12332[rbp], 1
.L80:
	mov	eax, DWORD PTR -12332[rbp]
	cdqe
	mov	rax, QWORD PTR -8208[rbp+rax*8]
	test	rax, rax
	jne	.L82
	mov	rax, QWORD PTR -12320[rbp]
	mov	rdi, rax
	call	closedir@PLT
	mov	DWORD PTR -12324[rbp], eax
	cmp	DWORD PTR -12324[rbp], -1
	jne	.L83
	lea	rsi, .LC31[rip]
	lea	rdi, func.25[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L85
.L83:
	cmp	DWORD PTR -12328[rbp], 0
	je	.L84
	mov	eax, -1
	jmp	.L85
.L84:
	mov	eax, 0
.L85:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L86
	call	__stack_chk_fail@PLT
.L86:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	check_dir_contents, .-check_dir_contents
	.section	.rodata
.LC32:
	.string	"creat"
.LC33:
	.string	"write"
	.align 8
.LC34:
	.string	"write is short: %u instead of %u"
.LC35:
	.string	"path"
	.text
	.type	create_file, @function
create_file:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -36[rbp], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 420
	mov	rdi, rax
	call	creat@PLT
	mov	DWORD PTR -8[rbp], eax
	cmp	DWORD PTR -8[rbp], -1
	jne	.L89
	lea	rsi, .LC32[rip]
	lea	rdi, func.24[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L90
.L89:
	cmp	DWORD PTR -36[rbp], 0
	je	.L91
	mov	eax, DWORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L92
	lea	rsi, .LC33[rip]
	lea	rdi, func.24[rip]
	call	test_perror
	mov	eax, DWORD PTR -8[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L90
.L92:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	je	.L91
	mov	edx, DWORD PTR -36[rbp]
	mov	eax, DWORD PTR -4[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC34[rip]
	lea	rdi, func.24[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -8[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L90
.L91:
	mov	eax, DWORD PTR -8[rbp]
	mov	edi, eax
	call	close@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L93
	lea	rsi, .LC20[rip]
	lea	rdi, func.24[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L90
.L93:
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 32768
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L94
	mov	eax, -1
	jmp	.L90
.L94:
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 420
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L95
	mov	eax, -1
	jmp	.L90
.L95:
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L96
	mov	eax, -1
	jmp	.L90
.L96:
	mov	edx, DWORD PTR -36[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L97
	mov	eax, -1
	jmp	.L90
.L97:
	cmp	DWORD PTR -36[rbp], 0
	je	.L98
	mov	ecx, DWORD PTR -36[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC35[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L98
	mov	eax, -1
	jmp	.L90
.L98:
	mov	eax, 0
.L90:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	create_file, .-create_file
	.section	.rodata
.LC36:
	.string	"%s/%s"
.LC37:
	.string	"unlink"
	.text
	.type	cleanup_dir, @function
cleanup_dir:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1088
	mov	QWORD PTR -1064[rbp], rdi
	mov	QWORD PTR -1072[rbp], rsi
	mov	DWORD PTR -1076[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -1048[rbp], 0
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L100
.L102:
	mov	eax, DWORD PTR -1052[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -1072[rbp]
	add	rax, rdx
	mov	rcx, QWORD PTR [rax]
	mov	rdx, QWORD PTR -1064[rbp]
	lea	rax, -1040[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	lea	rax, -1040[rbp]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -1044[rbp], eax
	cmp	DWORD PTR -1044[rbp], -1
	jne	.L101
	cmp	DWORD PTR -1076[rbp], 0
	jne	.L101
	lea	rsi, .LC37[rip]
	lea	rdi, func.23[rip]
	call	test_perror
	sub	DWORD PTR -1048[rbp], 1
.L101:
	add	DWORD PTR -1052[rbp], 1
.L100:
	mov	eax, DWORD PTR -1052[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -1072[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L102
	cmp	DWORD PTR -1048[rbp], 0
	je	.L103
	mov	eax, -1
	jmp	.L104
.L103:
	mov	eax, 0
.L104:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L105
	call	__stack_chk_fail@PLT
.L105:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	cleanup_dir, .-cleanup_dir
	.section	.rodata
.LC38:
	.string	"mkdir"
.LC39:
	.string	""
	.text
	.type	create_dir, @function
create_dir:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1072
	mov	QWORD PTR -1064[rbp], rdi
	mov	QWORD PTR -1072[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -1064[rbp]
	mov	rdi, rax
	call	rmdir@PLT
	mov	rax, QWORD PTR -1064[rbp]
	mov	esi, 493
	mov	rdi, rax
	call	mkdir@PLT
	mov	DWORD PTR -1044[rbp], eax
	cmp	DWORD PTR -1044[rbp], -1
	jne	.L107
	lea	rsi, .LC38[rip]
	lea	rdi, func.22[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L108
.L107:
	mov	rax, QWORD PTR -1064[rbp]
	mov	esi, 16384
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -1044[rbp], eax
	cmp	DWORD PTR -1044[rbp], -1
	jne	.L109
	mov	eax, -1
	jmp	.L108
.L109:
	mov	rax, QWORD PTR -1064[rbp]
	mov	esi, 493
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -1044[rbp], eax
	cmp	DWORD PTR -1044[rbp], -1
	jne	.L110
	mov	eax, -1
	jmp	.L108
.L110:
	mov	DWORD PTR -1048[rbp], 0
	jmp	.L111
.L113:
	mov	eax, DWORD PTR -1048[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -1072[rbp]
	add	rax, rdx
	mov	rcx, QWORD PTR [rax]
	mov	rdx, QWORD PTR -1064[rbp]
	lea	rax, -1040[rbp]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	lea	rax, -1040[rbp]
	mov	edx, 0
	lea	rsi, .LC39[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -1044[rbp], eax
	cmp	DWORD PTR -1044[rbp], -1
	jne	.L112
	mov	rcx, QWORD PTR -1072[rbp]
	mov	rax, QWORD PTR -1064[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	rdi, rax
	call	cleanup_dir
	mov	eax, -1
	jmp	.L108
.L112:
	add	DWORD PTR -1048[rbp], 1
.L111:
	mov	eax, DWORD PTR -1048[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -1072[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L113
	mov	rdx, QWORD PTR -1072[rbp]
	mov	rax, QWORD PTR -1064[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	check_dir_contents
	mov	DWORD PTR -1044[rbp], eax
	cmp	DWORD PTR -1044[rbp], -1
	jne	.L114
	mov	rcx, QWORD PTR -1072[rbp]
	mov	rax, QWORD PTR -1064[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	rdi, rax
	call	cleanup_dir
	mov	eax, -1
	jmp	.L108
.L114:
	mov	eax, 0
.L108:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L115
	call	__stack_chk_fail@PLT
.L115:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	create_dir, .-create_dir
	.section	.rodata
.LC40:
	.string	"truncate(%u)"
.LC41:
	.string	"truncate"
.LC42:
	.string	"testfile"
	.text
	.type	test_truncate, @function
test_truncate:
.LFB22:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	lea	rax, testdata[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, eax
	lea	rdi, .LC40[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -16[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L117
	mov	eax, -1
	jmp	.L118
.L117:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	truncate@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L119
	lea	rsi, .LC41[rip]
	lea	rdi, func.21[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L118
.L119:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L120
	mov	eax, -1
	jmp	.L118
.L120:
	cmp	DWORD PTR -20[rbp], 0
	jle	.L121
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jg	.L122
	mov	ecx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L121
	mov	eax, -1
	jmp	.L118
.L122:
	mov	ecx, DWORD PTR -16[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L123
	mov	eax, -1
	jmp	.L118
.L123:
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, DWORD PTR -16[rbp]
	mov	ecx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -16[rbp]
	mov	r8d, ecx
	mov	ecx, edx
	lea	rdx, zerodata[rip]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L121
	mov	eax, -1
	jmp	.L118
.L121:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L124
	lea	rsi, .LC37[rip]
	lea	rdi, func.21[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L118
.L124:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L125
	mov	eax, -1
	jmp	.L118
.L125:
	call	success
	mov	eax, 0
.L118:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	test_truncate, .-test_truncate
	.section	.rodata
	.align 8
.LC43:
	.string	"open(%s) fchmod(0%03o) truncate(%u) errno=%s"
.LC44:
	.string	"ftruncate(%u) mode=0%03o"
.LC45:
	.string	"fchmod"
.LC46:
	.string	"truncate should have failed"
.LC47:
	.string	"ftruncate"
	.text
	.type	test_ftruncate_common, @function
test_ftruncate_common:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	DWORD PTR -40[rbp], esi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -48[rbp], ecx
	mov	QWORD PTR -56[rbp], r8
	mov	DWORD PTR -60[rbp], r9d
	lea	rax, testdata[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -28[rbp], eax
	cmp	DWORD PTR -44[rbp], 0
	je	.L127
	mov	ecx, DWORD PTR -36[rbp]
	mov	edx, DWORD PTR -40[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	r8, QWORD PTR 16[rbp]
	mov	rsi, rax
	lea	rdi, .LC43[rip]
	mov	eax, 0
	call	start_test
	lea	rax, f2.20[rip]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L128
.L127:
	mov	edx, DWORD PTR -40[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	esi, eax
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	start_test
	lea	rax, f1.19[rip]
	mov	QWORD PTR -16[rbp], rax
.L128:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -28[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L129
	mov	eax, -1
	jmp	.L130
.L129:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], -1
	jne	.L131
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC16[rip]
	mov	rdi, rax
	call	test_perror
	mov	eax, -1
	jmp	.L130
.L131:
	mov	edx, DWORD PTR -40[rbp]
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	fchmod@PLT
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L132
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC45[rip]
	mov	rdi, rax
	call	test_perror
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L130
.L132:
	mov	edx, DWORD PTR -40[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L133
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L130
.L133:
	cmp	DWORD PTR -44[rbp], 0
	je	.L134
	mov	eax, DWORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	truncate@PLT
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L135
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -60[rbp], eax
	je	.L135
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC41[rip]
	mov	rdi, rax
	call	test_perror
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L130
.L135:
	cmp	DWORD PTR -24[rbp], 0
	jne	.L136
	cmp	DWORD PTR -60[rbp], 0
	je	.L136
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC46[rip]
	mov	rdi, rax
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L130
.L136:
	cmp	DWORD PTR -60[rbp], 0
	je	.L137
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR -36[rbp], eax
	jmp	.L137
.L134:
	mov	eax, DWORD PTR -36[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -20[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	ftruncate@PLT
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L137
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC47[rip]
	mov	rdi, rax
	call	test_perror
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L130
.L137:
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -36[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L138
	mov	eax, -1
	jmp	.L130
.L138:
	cmp	DWORD PTR -36[rbp], 0
	jle	.L139
	mov	eax, DWORD PTR -36[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jg	.L140
	mov	ecx, DWORD PTR -36[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L139
	mov	eax, -1
	jmp	.L130
.L140:
	mov	ecx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L141
	mov	eax, -1
	jmp	.L130
.L141:
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, DWORD PTR -28[rbp]
	mov	ecx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -28[rbp]
	mov	r8d, ecx
	mov	ecx, edx
	lea	rdx, zerodata[rip]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L139
	mov	eax, -1
	jmp	.L130
.L139:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L142
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC37[rip]
	mov	rdi, rax
	call	test_perror
	mov	eax, -1
	jmp	.L130
.L142:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], -1
	jne	.L143
	mov	eax, -1
	jmp	.L130
.L143:
	call	success
	mov	eax, 0
.L130:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	test_ftruncate_common, .-test_ftruncate_common
	.section	.rodata
.LC48:
	.string	"utime"
	.text
	.type	test_utime, @function
test_utime:
.LFB24:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -48[rbp], 987631200
	mov	QWORD PTR -40[rbp], 123116400
	lea	rdi, .LC48[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, 0
	mov	esi, 0
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L145
	mov	eax, -1
	jmp	.L151
.L145:
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR testfile[rip]
	lea	rdx, -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	utime@PLT
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L147
	lea	rsi, .LC48[rip]
	lea	rdi, func.18[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L151
.L147:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_times
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L148
	mov	eax, -1
	jmp	.L151
.L148:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L149
	lea	rsi, .LC37[rip]
	lea	rdi, func.18[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L151
.L149:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L150
	mov	eax, -1
	jmp	.L151
.L150:
	call	success
	mov	eax, 0
.L151:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L152
	call	__stack_chk_fail@PLT
.L152:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	test_utime, .-test_utime
	.section	.rodata
.LC49:
	.string	"create"
	.text
	.type	test_create, @function
test_create:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	lea	rax, testdata[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -24[rbp], eax
	mov	DWORD PTR -20[rbp], 0
	lea	rdi, .LC49[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 420
	mov	rdi, rax
	call	creat@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L154
	lea	rsi, .LC32[rip]
	lea	rdi, func.17[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L155
.L154:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L156
	lea	rsi, .LC33[rip]
	lea	rdi, func.17[rip]
	call	test_perror
	mov	eax, DWORD PTR -16[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L155
.L156:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	je	.L157
	mov	edx, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -12[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC34[rip]
	lea	rdi, func.17[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -16[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L155
.L157:
	mov	eax, DWORD PTR -16[rbp]
	mov	edi, eax
	call	close@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L158
	lea	rsi, .LC20[rip]
	lea	rdi, func.17[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L155
.L158:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 32768
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L159
	mov	eax, -1
	jmp	.L155
.L159:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 420
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -20[rbp], eax
	mov	ecx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L160
	lea	rsi, .LC37[rip]
	lea	rdi, func.17[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L155
.L160:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L161
	mov	eax, -1
	jmp	.L155
.L161:
	cmp	DWORD PTR -20[rbp], 0
	je	.L162
	mov	eax, -1
	jmp	.L155
.L162:
	call	success
	mov	eax, 0
.L155:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	test_create, .-test_create
	.section	.rodata
.LC50:
	.string	"+"
.LC51:
	.string	"-"
.LC52:
	.string	"open(%s, %s, 0%03o)"
.LC53:
	.string	"open should have failed"
.LC54:
	.string	"write should have failed"
.LC55:
	.string	"offset should have returned 0"
	.align 8
.LC56:
	.string	"read is short: %i instead of %u"
.LC57:
	.string	"read should have failed"
	.text
	.type	do_test_open, @function
do_test_open:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 96
	mov	DWORD PTR -4164[rbp], edi
	mov	DWORD PTR -4168[rbp], esi
	mov	QWORD PTR -4176[rbp], rdx
	mov	DWORD PTR -4180[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, testdata[rip]
	mov	QWORD PTR -4128[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -4144[rbp], eax
	mov	DWORD PTR -4152[rbp], 0
	mov	DWORD PTR -4148[rbp], 0
	cmp	DWORD PTR -4164[rbp], 0
	je	.L164
	lea	rax, .LC50[rip]
	jmp	.L165
.L164:
	lea	rax, .LC51[rip]
.L165:
	mov	ecx, DWORD PTR -4180[rbp]
	mov	rdx, QWORD PTR -4176[rbp]
	mov	rsi, rax
	lea	rdi, .LC52[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	cmp	DWORD PTR -4164[rbp], 0
	je	.L166
	mov	edx, DWORD PTR testdata2len[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata2[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -4140[rbp], eax
	cmp	DWORD PTR -4140[rbp], -1
	jne	.L167
	mov	eax, -1
	jmp	.L196
.L167:
	mov	eax, DWORD PTR testdata2len[rip]
	mov	DWORD PTR -4152[rbp], eax
.L166:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -4180[rbp]
	mov	ecx, DWORD PTR -4168[rbp]
	mov	esi, ecx
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -4136[rbp], eax
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 64
	test	eax, eax
	je	.L169
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 128
	test	eax, eax
	je	.L169
	cmp	DWORD PTR -4164[rbp], 0
	je	.L169
	cmp	DWORD PTR -4136[rbp], -1
	je	.L170
	lea	rsi, .LC53[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -4136[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L196
.L170:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 17
	je	.L198
.L169:
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 64
	test	eax, eax
	jne	.L172
	cmp	DWORD PTR -4164[rbp], 0
	jne	.L172
	cmp	DWORD PTR -4136[rbp], -1
	je	.L173
	lea	rsi, .LC53[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -4136[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L196
.L173:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	je	.L199
.L172:
	cmp	DWORD PTR -4136[rbp], -1
	jne	.L174
	lea	rsi, .LC16[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L196
.L174:
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 512
	test	eax, eax
	je	.L175
	mov	DWORD PTR -4152[rbp], 0
.L175:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 32768
	mov	rdi, rax
	call	check_type
	add	DWORD PTR -4148[rbp], eax
	cmp	DWORD PTR -4164[rbp], 0
	je	.L176
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 420
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -4148[rbp], eax
	jmp	.L177
.L176:
	mov	edx, DWORD PTR -4180[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -4148[rbp], eax
.L177:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -4148[rbp], eax
	mov	edx, DWORD PTR -4152[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -4148[rbp], eax
	cmp	DWORD PTR -4164[rbp], 0
	je	.L178
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 512
	test	eax, eax
	jne	.L178
	mov	eax, DWORD PTR -4180[rbp]
	and	eax, 256
	test	eax, eax
	je	.L178
	mov	eax, DWORD PTR testdata2len[rip]
	mov	edx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	r8d, edx
	mov	ecx, 0
	lea	rdx, testdata2[rip]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -4148[rbp], eax
.L178:
	mov	eax, DWORD PTR -4144[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -4128[rbp]
	mov	eax, DWORD PTR -4136[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -4140[rbp], eax
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 3
	test	eax, eax
	je	.L179
	cmp	DWORD PTR -4140[rbp], -1
	jne	.L180
	lea	rsi, .LC33[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L181
.L180:
	mov	eax, DWORD PTR -4140[rbp]
	cmp	eax, DWORD PTR -4144[rbp]
	je	.L182
	mov	edx, DWORD PTR -4144[rbp]
	mov	eax, DWORD PTR -4140[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC34[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L181
.L182:
	mov	eax, DWORD PTR -4152[rbp]
	cmp	DWORD PTR -4144[rbp], eax
	jle	.L183
	mov	eax, DWORD PTR -4144[rbp]
	mov	DWORD PTR -4152[rbp], eax
.L183:
	mov	edx, DWORD PTR -4152[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -4148[rbp], eax
	mov	eax, DWORD PTR -4180[rbp]
	and	eax, 256
	test	eax, eax
	je	.L181
	mov	ecx, DWORD PTR -4144[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -4128[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -4148[rbp], eax
	cmp	DWORD PTR -4164[rbp], 0
	je	.L181
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 512
	test	eax, eax
	jne	.L181
	mov	eax, DWORD PTR testdata2len[rip]
	cmp	DWORD PTR -4144[rbp], eax
	jge	.L181
	mov	eax, DWORD PTR testdata2len[rip]
	sub	eax, DWORD PTR -4144[rbp]
	mov	ecx, eax
	mov	eax, DWORD PTR -4144[rbp]
	cdqe
	lea	rdx, testdata2[rip]
	lea	rsi, [rax+rdx]
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -4144[rbp]
	mov	r8d, ecx
	mov	ecx, edx
	mov	rdx, rsi
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -4148[rbp], eax
	jmp	.L181
.L179:
	cmp	DWORD PTR -4140[rbp], -1
	je	.L184
	lea	rsi, .LC54[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L181
.L184:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 9
	je	.L181
	lea	rsi, .LC33[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	sub	DWORD PTR -4148[rbp], 1
.L181:
	mov	eax, DWORD PTR -4136[rbp]
	mov	edx, 0
	mov	esi, 0
	mov	edi, eax
	call	lseek@PLT
	mov	QWORD PTR -4120[rbp], rax
	cmp	QWORD PTR -4120[rbp], -1
	jne	.L185
	lea	rsi, .LC17[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L186
.L185:
	cmp	QWORD PTR -4120[rbp], 0
	je	.L186
	lea	rsi, .LC55[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -4148[rbp], 1
.L186:
	lea	rcx, -4112[rbp]
	mov	eax, DWORD PTR -4136[rbp]
	mov	edx, 4096
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR -4140[rbp], eax
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 3
	cmp	eax, 1
	je	.L187
	cmp	DWORD PTR -4140[rbp], -1
	jne	.L188
	lea	rsi, .LC18[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L189
.L188:
	mov	eax, 4096
	cmp	DWORD PTR -4152[rbp], 4096
	cmovbe	eax, DWORD PTR -4152[rbp]
	mov	DWORD PTR -4132[rbp], eax
	mov	eax, DWORD PTR -4140[rbp]
	cmp	eax, DWORD PTR -4132[rbp]
	je	.L190
	mov	edx, DWORD PTR -4132[rbp]
	mov	eax, DWORD PTR -4140[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC56[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L189
.L190:
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 3
	test	eax, eax
	je	.L191
	mov	edx, DWORD PTR -4144[rbp]
	mov	rcx, QWORD PTR -4128[rbp]
	lea	rax, -4112[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_buffer
	add	DWORD PTR -4148[rbp], eax
	cmp	DWORD PTR -4164[rbp], 0
	je	.L189
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 512
	test	eax, eax
	jne	.L189
	mov	eax, DWORD PTR testdata2len[rip]
	cmp	DWORD PTR -4144[rbp], eax
	jge	.L189
	mov	eax, DWORD PTR testdata2len[rip]
	sub	eax, DWORD PTR -4144[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -4144[rbp]
	cdqe
	lea	rcx, testdata2[rip]
	add	rcx, rax
	mov	eax, DWORD PTR -4144[rbp]
	cdqe
	lea	rsi, -4112[rbp]
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	check_buffer
	add	DWORD PTR -4148[rbp], eax
	jmp	.L189
.L191:
	cmp	DWORD PTR -4164[rbp], 0
	je	.L189
	mov	eax, DWORD PTR -4168[rbp]
	and	eax, 512
	test	eax, eax
	jne	.L189
	mov	eax, DWORD PTR testdata2len[rip]
	mov	edx, eax
	lea	rax, -4112[rbp]
	lea	rsi, testdata2[rip]
	mov	rdi, rax
	call	check_buffer
	add	DWORD PTR -4148[rbp], eax
	jmp	.L189
.L187:
	cmp	DWORD PTR -4140[rbp], -1
	je	.L192
	lea	rsi, .LC57[rip]
	lea	rdi, func.16[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -4148[rbp], 1
	jmp	.L189
.L192:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 9
	je	.L189
	lea	rsi, .LC18[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	sub	DWORD PTR -4148[rbp], 1
.L189:
	mov	eax, DWORD PTR -4136[rbp]
	mov	edi, eax
	call	close@PLT
	mov	DWORD PTR -4140[rbp], eax
	cmp	DWORD PTR -4140[rbp], -1
	jne	.L193
	lea	rsi, .LC20[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L196
.L193:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -4140[rbp], eax
	cmp	DWORD PTR -4140[rbp], -1
	jne	.L194
	lea	rsi, .LC37[rip]
	lea	rdi, func.16[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L196
.L194:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -4140[rbp], eax
	cmp	DWORD PTR -4140[rbp], -1
	jne	.L195
	mov	eax, -1
	jmp	.L196
.L195:
	cmp	DWORD PTR -4148[rbp], 0
	je	.L200
	mov	eax, -1
	jmp	.L196
.L198:
	nop
	jmp	.L171
.L199:
	nop
	jmp	.L171
.L200:
	nop
.L171:
	call	success
	mov	eax, 0
.L196:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L197
	call	__stack_chk_fail@PLT
.L197:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	do_test_open, .-do_test_open
	.section	.rodata
	.align 8
.LC58:
	.string	"open_acc(%s) mode=0%03o errno=%s"
.LC59:
	.string	"chmod"
	.text
	.type	do_test_open_acc, @function
do_test_open_acc:
.LFB27:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -40[rbp], edx
	mov	DWORD PTR -52[rbp], ecx
	mov	QWORD PTR -64[rbp], r8
	lea	rax, testdata[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -20[rbp], eax
	mov	rcx, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -40[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rax
	lea	rdi, .LC58[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L202
	mov	eax, -1
	jmp	.L203
.L202:
	mov	edx, DWORD PTR -40[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	chmod@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L204
	lea	rsi, .LC59[rip]
	lea	rdi, func.15[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L203
.L204:
	mov	edx, DWORD PTR -40[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L205
	mov	eax, -1
	jmp	.L203
.L205:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -36[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L206
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -52[rbp], eax
	je	.L207
	lea	rsi, .LC16[rip]
	lea	rdi, func.15[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L203
.L207:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L208
	mov	eax, -1
	jmp	.L203
.L208:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 256
	mov	rdi, rax
	call	chmod@PLT
	mov	ecx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L209
	mov	eax, -1
	jmp	.L203
.L206:
	cmp	DWORD PTR -52[rbp], 0
	je	.L210
	lea	rsi, .LC53[rip]
	lea	rdi, func.15[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L203
.L210:
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -36[rbp]
	and	eax, 512
	test	eax, eax
	je	.L209
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 0
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L209
	mov	eax, -1
	jmp	.L203
.L209:
	call	success
	mov	eax, 0
.L203:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	do_test_open_acc, .-do_test_open_acc
	.section	.rodata
.LC60:
	.string	"symlink"
.LC61:
	.string	"readlink"
	.align 8
.LC62:
	.string	"short readlink: %u instead of %u"
.LC63:
	.string	"link mismatch"
.LC64:
	.string	"testfile2"
	.text
	.type	test_symlink, @function
test_symlink:
.LFB28:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1072
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, testdata[rip]
	mov	QWORD PTR -1048[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -1060[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	strlen@PLT
	mov	DWORD PTR -1056[rbp], eax
	mov	DWORD PTR -1064[rbp], 0
	lea	rdi, .LC60[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -1060[rbp]
	mov	rcx, QWORD PTR -1048[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -1052[rbp], eax
	cmp	DWORD PTR -1052[rbp], -1
	jne	.L212
	mov	eax, -1
	jmp	.L222
.L212:
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rdx, QWORD PTR testfile2[rip]
	mov	rax, QWORD PTR testfile[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	symlink@PLT
	mov	DWORD PTR -1052[rbp], eax
	cmp	DWORD PTR -1052[rbp], -1
	jne	.L214
	lea	rsi, .LC60[rip]
	lea	rdi, func.14[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L222
.L214:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 40960
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -1052[rbp], eax
	cmp	DWORD PTR -1052[rbp], -1
	jne	.L215
	mov	eax, -1
	jmp	.L222
.L215:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 511
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -1064[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -1064[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	lea	rcx, -1040[rbp]
	mov	edx, 1024
	mov	rsi, rcx
	mov	rdi, rax
	call	readlink@PLT
	mov	DWORD PTR -1052[rbp], eax
	cmp	DWORD PTR -1052[rbp], -1
	jne	.L216
	lea	rsi, .LC61[rip]
	lea	rdi, func.14[rip]
	call	test_perror
	sub	DWORD PTR -1064[rbp], 1
.L216:
	mov	eax, DWORD PTR -1052[rbp]
	cmp	eax, DWORD PTR -1056[rbp]
	je	.L217
	mov	edx, DWORD PTR -1056[rbp]
	mov	eax, DWORD PTR -1052[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC62[rip]
	lea	rdi, func.14[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -1064[rbp], 1
.L217:
	mov	eax, DWORD PTR -1056[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR testfile[rip]
	lea	rax, -1040[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcmp@PLT
	test	eax, eax
	je	.L218
	lea	rsi, .LC63[rip]
	lea	rdi, func.14[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -1064[rbp], 1
.L218:
	mov	rax, QWORD PTR testfile2[rip]
	mov	edx, DWORD PTR -1060[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -1064[rbp], eax
	mov	ecx, DWORD PTR -1060[rbp]
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdx, QWORD PTR -1048[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC64[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -1064[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -1052[rbp], eax
	cmp	DWORD PTR -1052[rbp], -1
	jne	.L219
	lea	rsi, .LC37[rip]
	lea	rdi, func.14[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L222
.L219:
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -1052[rbp], eax
	cmp	DWORD PTR -1052[rbp], -1
	jne	.L220
	mov	eax, -1
	jmp	.L222
.L220:
	cmp	DWORD PTR -1064[rbp], 0
	je	.L221
	mov	eax, -1
	jmp	.L222
.L221:
	call	success
	mov	eax, 0
.L222:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L223
	call	__stack_chk_fail@PLT
.L223:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	test_symlink, .-test_symlink
	.section	.rodata
.LC65:
	.string	"link"
	.text
	.type	test_link, @function
test_link:
.LFB29:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	lea	rax, testdata[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -20[rbp], eax
	mov	DWORD PTR -16[rbp], 0
	lea	rdi, .LC65[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L225
	mov	eax, -1
	jmp	.L226
.L225:
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rdx, QWORD PTR testfile2[rip]
	mov	rax, QWORD PTR testfile[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	link@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L227
	lea	rsi, .LC65[rip]
	lea	rdi, func.13[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L226
.L227:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 32768
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L228
	mov	eax, -1
	jmp	.L226
.L228:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 420
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 2
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -16[rbp], eax
	mov	ecx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC64[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L229
	lea	rsi, .LC37[rip]
	lea	rdi, func.13[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L226
.L229:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L230
	mov	eax, -1
	jmp	.L226
.L230:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L231
	lea	rsi, .LC37[rip]
	lea	rdi, func.13[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L226
.L231:
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L232
	mov	eax, -1
	jmp	.L226
.L232:
	cmp	DWORD PTR -16[rbp], 0
	je	.L233
	mov	eax, -1
	jmp	.L226
.L233:
	call	success
	mov	eax, 0
.L226:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	test_link, .-test_link
	.section	.rodata
.LC66:
	.string	"rename file"
.LC67:
	.string	"rename"
	.text
	.type	test_rename_file, @function
test_rename_file:
.LFB30:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	lea	rax, testdata[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	DWORD PTR -20[rbp], eax
	mov	DWORD PTR -16[rbp], 0
	lea	rdi, .LC66[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L235
	mov	eax, -1
	jmp	.L236
.L235:
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rdx, QWORD PTR testfile2[rip]
	mov	rax, QWORD PTR testfile[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	rename@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L237
	lea	rsi, .LC67[rip]
	lea	rdi, func.12[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L236
.L237:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L238
	mov	eax, -1
	jmp	.L236
.L238:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 32768
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L239
	mov	eax, -1
	jmp	.L236
.L239:
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 420
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	edx, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -16[rbp], eax
	mov	ecx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	r8d, ecx
	mov	ecx, 0
	lea	rsi, .LC64[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L240
	lea	rsi, .LC37[rip]
	lea	rdi, func.12[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L236
.L240:
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L241
	mov	eax, -1
	jmp	.L236
.L241:
	cmp	DWORD PTR -16[rbp], 0
	je	.L242
	mov	eax, -1
	jmp	.L236
.L242:
	call	success
	mov	eax, 0
.L236:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	test_rename_file, .-test_rename_file
	.section	.rodata
.LC68:
	.string	"rename dir"
.LC69:
	.string	"rmdir"
	.text
	.type	test_rename_dir, @function
test_rename_dir:
.LFB31:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -8[rbp], 0
	lea	rdi, .LC68[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testdir[rip]
	lea	rsi, testdir_files[rip]
	mov	rdi, rax
	call	create_dir
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L244
	mov	eax, -1
	jmp	.L245
.L244:
	mov	rax, QWORD PTR testdir2[rip]
	mov	rdi, rax
	call	rmdir@PLT
	mov	rdx, QWORD PTR testdir2[rip]
	mov	rax, QWORD PTR testdir[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	rename@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L246
	lea	rsi, .LC67[rip]
	lea	rdi, func.11[rip]
	call	test_perror
	mov	rax, QWORD PTR testdir[rip]
	mov	edx, 1
	lea	rsi, testdir_files[rip]
	mov	rdi, rax
	call	cleanup_dir
	mov	eax, -1
	jmp	.L245
.L246:
	mov	rax, QWORD PTR testdir[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L247
	mov	rax, QWORD PTR testdir[rip]
	mov	edx, 1
	lea	rsi, testdir_files[rip]
	mov	rdi, rax
	call	cleanup_dir
	mov	eax, -1
	jmp	.L245
.L247:
	mov	rax, QWORD PTR testdir2[rip]
	mov	esi, 16384
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L248
	mov	rax, QWORD PTR testdir2[rip]
	mov	edx, 1
	lea	rsi, testdir_files[rip]
	mov	rdi, rax
	call	cleanup_dir
	mov	eax, -1
	jmp	.L245
.L248:
	mov	rax, QWORD PTR testdir2[rip]
	mov	esi, 493
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR testdir2[rip]
	lea	rsi, testdir_files[rip]
	mov	rdi, rax
	call	check_dir_contents
	add	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR testdir2[rip]
	mov	edx, 0
	lea	rsi, testdir_files[rip]
	mov	rdi, rax
	call	cleanup_dir
	add	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR testdir2[rip]
	mov	rdi, rax
	call	rmdir@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L249
	lea	rsi, .LC69[rip]
	lea	rdi, func.11[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L245
.L249:
	mov	rax, QWORD PTR testdir2[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L250
	mov	eax, -1
	jmp	.L245
.L250:
	cmp	DWORD PTR -8[rbp], 0
	je	.L251
	mov	eax, -1
	jmp	.L245
.L251:
	call	success
	mov	eax, 0
.L245:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	test_rename_dir, .-test_rename_dir
	.section	.rodata
.LC70:
	.string	"mkfifo"
	.text
	.type	test_mkfifo, @function
test_mkfifo:
.LFB32:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -8[rbp], 0
	lea	rdi, .LC70[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 420
	mov	rdi, rax
	call	mkfifo@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L253
	lea	rsi, .LC70[rip]
	lea	rdi, func.10[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L254
.L253:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 4096
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L255
	mov	eax, -1
	jmp	.L254
.L255:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 420
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L256
	lea	rsi, .LC37[rip]
	lea	rdi, func.10[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L254
.L256:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L257
	mov	eax, -1
	jmp	.L254
.L257:
	cmp	DWORD PTR -8[rbp], 0
	je	.L258
	mov	eax, -1
	jmp	.L254
.L258:
	call	success
	mov	eax, 0
.L254:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	test_mkfifo, .-test_mkfifo
	.type	test_mkdir, @function
test_mkdir:
.LFB33:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -24[rbp], 0
	mov	QWORD PTR -16[rbp], 0
	lea	rdi, .LC38[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testdir[rip]
	mov	rdi, rax
	call	rmdir@PLT
	mov	rax, QWORD PTR testdir[rip]
	mov	esi, 493
	mov	rdi, rax
	call	mkdir@PLT
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], -1
	jne	.L260
	lea	rsi, .LC38[rip]
	lea	rdi, func.9[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L266
.L260:
	mov	rax, QWORD PTR testdir[rip]
	mov	esi, 16384
	mov	rdi, rax
	call	check_type
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], -1
	jne	.L262
	mov	eax, -1
	jmp	.L266
.L262:
	mov	rax, QWORD PTR testdir[rip]
	mov	esi, 493
	mov	rdi, rax
	call	check_mode
	add	DWORD PTR -24[rbp], eax
	mov	rax, QWORD PTR testdir[rip]
	mov	esi, 2
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -24[rbp], eax
	mov	rax, QWORD PTR testdir[rip]
	lea	rdx, -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	check_dir_contents
	add	DWORD PTR -24[rbp], eax
	mov	rax, QWORD PTR testdir[rip]
	mov	rdi, rax
	call	rmdir@PLT
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], -1
	jne	.L263
	lea	rsi, .LC69[rip]
	lea	rdi, func.9[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L266
.L263:
	mov	rax, QWORD PTR testdir[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], -1
	jne	.L264
	mov	eax, -1
	jmp	.L266
.L264:
	cmp	DWORD PTR -24[rbp], 0
	je	.L265
	mov	eax, -1
	jmp	.L266
.L265:
	call	success
	mov	eax, 0
.L266:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L267
	call	__stack_chk_fail@PLT
.L267:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	test_mkdir, .-test_mkdir
	.section	.rodata
.LC71:
	.string	"mmap(%s, %s)"
.LC72:
	.string	"mmap"
	.text
	.type	do_test_mmap, @function
do_test_mmap:
.LFB34:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -40[rbp], edx
	mov	QWORD PTR -56[rbp], rcx
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -20[rbp], 0
	mov	rdx, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rax
	lea	rdi, .LC71[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	edx, DWORD PTR testdata2len[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata2[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L269
	mov	eax, -1
	jmp	.L270
.L269:
	mov	eax, DWORD PTR testdata2len[rip]
	mov	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L271
	lea	rsi, .LC16[rip]
	lea	rdi, func.8[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L270
.L271:
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, DWORD PTR -12[rbp]
	mov	ecx, DWORD PTR -40[rbp]
	mov	edx, DWORD PTR -36[rbp]
	mov	r9d, 0
	mov	r8d, esi
	mov	rsi, rax
	mov	edi, 0
	call	mmap@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	cmp	QWORD PTR -8[rbp], -1
	jne	.L272
	lea	rsi, .LC72[rip]
	lea	rdi, func.8[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L270
.L272:
	mov	eax, DWORD PTR -36[rbp]
	and	eax, 1
	test	eax, eax
	je	.L273
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -8[rbp]
	lea	rsi, testdata2[rip]
	mov	rdi, rax
	call	check_buffer
	add	DWORD PTR -24[rbp], eax
.L273:
	mov	eax, DWORD PTR -36[rbp]
	and	eax, 2
	test	eax, eax
	je	.L274
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -8[rbp]
	lea	rsi, testdata3.7[rip]
	mov	rdi, rax
	call	memcpy@PLT
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -8[rbp]
	lea	rsi, testdata3.7[rip]
	mov	rdi, rax
	call	check_buffer
	add	DWORD PTR -24[rbp], eax
.L274:
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	munmap@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_nlink
	add	DWORD PTR -24[rbp], eax
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, edx
	mov	rdi, rax
	call	check_size
	add	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], 0
	je	.L275
	mov	eax, -1
	jmp	.L270
.L275:
	call	success
	mov	eax, 0
.L270:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	do_test_mmap, .-do_test_mmap
	.section	.rodata
.LC73:
	.string	"seek_EOF offset=%d"
.LC74:
	.string	"cannot write correctly"
	.text
	.type	test_seek_eof, @function
test_seek_eof:
.LFB35:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 2096
	mov	DWORD PTR -2084[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	eax, DWORD PTR -2084[rbp]
	mov	esi, eax
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, 420
	mov	esi, 66
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -2072[rbp], eax
	cmp	DWORD PTR -2072[rbp], -1
	jne	.L277
	lea	rsi, .LC16[rip]
	lea	rdi, func.6[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L282
.L277:
	mov	DWORD PTR -2076[rbp], 0
	jmp	.L279
.L280:
	mov	eax, DWORD PTR -2076[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -2076[rbp]
	cdqe
	mov	BYTE PTR -2064[rbp+rax], dl
	add	DWORD PTR -2076[rbp], 1
.L279:
	cmp	DWORD PTR -2076[rbp], 1023
	jle	.L280
	mov	eax, DWORD PTR -2084[rbp]
	sub	eax, 2
	movsx	rdx, eax
	lea	rsi, -2064[rbp]
	mov	eax, DWORD PTR -2072[rbp]
	mov	rcx, rdx
	mov	edx, 1
	mov	edi, eax
	call	pwrite@PLT
	mov	eax, DWORD PTR -2084[rbp]
	sub	eax, 2
	movsx	rdx, eax
	lea	rsi, -1040[rbp]
	mov	eax, DWORD PTR -2072[rbp]
	mov	rcx, rdx
	mov	edx, 2
	mov	edi, eax
	call	pread@PLT
	mov	eax, DWORD PTR -2084[rbp]
	sub	eax, 1
	movsx	rdx, eax
	lea	rsi, -2064[rbp]
	mov	eax, DWORD PTR -2072[rbp]
	mov	rcx, rdx
	mov	edx, 1
	mov	edi, eax
	call	pwrite@PLT
	mov	eax, DWORD PTR -2084[rbp]
	movsx	rdx, eax
	lea	rsi, -2064[rbp]
	mov	eax, DWORD PTR -2072[rbp]
	mov	rcx, rdx
	mov	edx, 2
	mov	edi, eax
	call	pwrite@PLT
	mov	eax, DWORD PTR -2084[rbp]
	movsx	rdx, eax
	lea	rsi, -1040[rbp]
	mov	eax, DWORD PTR -2072[rbp]
	mov	rcx, rdx
	mov	edx, 1024
	mov	edi, eax
	call	pread@PLT
	mov	DWORD PTR -2068[rbp], eax
	cmp	DWORD PTR -2068[rbp], 2
	je	.L281
	lea	rsi, .LC74[rip]
	lea	rdi, func.6[rip]
	mov	eax, 0
	call	test_error
	mov	eax, -1
	jmp	.L282
.L281:
	call	success
	mov	eax, 0
.L282:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L283
	call	__stack_chk_fail@PLT
.L283:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	test_seek_eof, .-test_seek_eof
	.section	.rodata
.LC75:
	.string	"open size"
	.text
	.type	test_open_size, @function
test_open_size:
.LFB36:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -17[rbp], 48
	lea	rdi, .LC75[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	edx, DWORD PTR testdatalen[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L285
	mov	eax, -1
	jmp	.L292
.L285:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, 384
	mov	esi, 578
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L287
	lea	rsi, .LC16[rip]
	lea	rdi, func.5[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L292
.L287:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 0
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L288
	mov	eax, -1
	jmp	.L292
.L288:
	lea	rcx, -17[rbp]
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L289
	lea	rsi, .LC33[rip]
	lea	rdi, func.5[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L292
.L289:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 1
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L290
	mov	eax, -1
	jmp	.L292
.L290:
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, 0
	mov	esi, 65536
	mov	edi, eax
	call	lseek@PLT
	lea	rcx, -17[rbp]
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -16[rbp], eax
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 65537
	mov	rdi, rax
	call	check_size
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L291
	mov	eax, -1
	jmp	.L292
.L291:
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	call	success
	mov	eax, 0
.L292:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L293
	call	__stack_chk_fail@PLT
.L293:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	test_open_size, .-test_open_size
	.section	.rodata
.LC76:
	.string	"open rename utime close"
.LC77:
	.string	"open_1"
.LC78:
	.string	"open_2"
.LC79:
	.string	"utime_1"
.LC80:
	.string	"utime_2"
	.text
	.type	test_open_rename, @function
test_open_rename:
.LFB37:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -64[rbp], 0
	mov	QWORD PTR -48[rbp], 987631200
	mov	QWORD PTR -40[rbp], 123116400
	lea	rdi, .LC76[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	edx, DWORD PTR testdatalen[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -60[rbp], eax
	cmp	DWORD PTR -60[rbp], -1
	jne	.L295
	mov	eax, -1
	jmp	.L306
.L295:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -56[rbp], eax
	cmp	DWORD PTR -56[rbp], -1
	jne	.L297
	lea	rsi, .LC77[rip]
	lea	rdi, func.4[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L306
.L297:
	mov	rdx, QWORD PTR testfile2[rip]
	mov	rax, QWORD PTR testfile[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	rename@PLT
	mov	DWORD PTR -60[rbp], eax
	cmp	DWORD PTR -60[rbp], -1
	jne	.L298
	lea	rsi, .LC67[rip]
	lea	rdi, func.4[rip]
	call	test_perror
	mov	eax, DWORD PTR -56[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L306
.L298:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -60[rbp], eax
	cmp	DWORD PTR -60[rbp], -1
	jne	.L299
	mov	eax, -1
	jmp	.L306
.L299:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, 384
	mov	esi, 194
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L300
	lea	rsi, .LC78[rip]
	lea	rdi, func.4[rip]
	call	test_perror
	mov	eax, DWORD PTR -56[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L306
.L300:
	mov	eax, DWORD PTR testdata2len[rip]
	movsx	rdx, eax
	mov	eax, DWORD PTR -52[rbp]
	lea	rsi, testdata2[rip]
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -60[rbp], eax
	cmp	DWORD PTR -60[rbp], -1
	jne	.L301
	lea	rsi, .LC33[rip]
	lea	rdi, func.4[rip]
	call	test_perror
	sub	DWORD PTR -64[rbp], 1
	jmp	.L302
.L301:
	mov	eax, DWORD PTR testdata2len[rip]
	cmp	DWORD PTR -60[rbp], eax
	je	.L302
	mov	edx, DWORD PTR testdata2len[rip]
	mov	eax, DWORD PTR -60[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC34[rip]
	lea	rdi, func.4[rip]
	mov	eax, 0
	call	test_error
	sub	DWORD PTR -64[rbp], 1
.L302:
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR testfile[rip]
	lea	rdx, -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	utime@PLT
	mov	DWORD PTR -60[rbp], eax
	mov	DWORD PTR -60[rbp], 0
	cmp	DWORD PTR -60[rbp], -1
	jne	.L303
	lea	rsi, .LC79[rip]
	lea	rdi, func.4[rip]
	call	test_perror
	sub	DWORD PTR -64[rbp], 1
.L303:
	mov	rax, QWORD PTR testfile2[rip]
	lea	rdx, -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	utime@PLT
	mov	DWORD PTR -60[rbp], eax
	cmp	DWORD PTR -60[rbp], -1
	jne	.L304
	lea	rsi, .LC80[rip]
	lea	rdi, func.4[rip]
	call	test_perror
	sub	DWORD PTR -64[rbp], 1
.L304:
	mov	eax, DWORD PTR -56[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -52[rbp]
	mov	edi, eax
	call	close@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_times
	add	DWORD PTR -64[rbp], eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_times
	add	DWORD PTR -64[rbp], eax
	mov	eax, DWORD PTR testdata2len[rip]
	mov	edx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	r8d, edx
	mov	ecx, 0
	lea	rdx, testdata2[rip]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -64[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	edx, eax
	mov	rax, QWORD PTR testfile2[rip]
	mov	r8d, edx
	mov	ecx, 0
	lea	rdx, testdata[rip]
	lea	rsi, .LC64[rip]
	mov	rdi, rax
	call	do_check_data
	add	DWORD PTR -64[rbp], eax
	cmp	DWORD PTR -64[rbp], 0
	je	.L305
	mov	eax, -1
	jmp	.L306
.L305:
	call	success
	mov	eax, 0
.L306:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L307
	call	__stack_chk_fail@PLT
.L307:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	test_open_rename, .-test_open_rename
	.section	.rodata
.LC81:
	.string	"open unlink close"
	.text
	.type	test_open_unlink, @function
test_open_unlink:
.LFB38:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -17[rbp], 48
	lea	rdi, .LC81[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	edx, DWORD PTR testdatalen[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L309
	mov	eax, -1
	jmp	.L316
.L309:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L311
	lea	rsi, .LC16[rip]
	lea	rdi, func.3[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L316
.L311:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L312
	lea	rsi, .LC37[rip]
	lea	rdi, func.3[rip]
	call	test_perror
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L316
.L312:
	lea	rcx, -17[rbp]
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L313
	mov	eax, -1
	jmp	.L316
.L313:
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, 448
	mov	edi, eax
	call	fchmod@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L314
	lea	rsi, .LC45[rip]
	lea	rdi, func.3[rip]
	call	test_perror
.L314:
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	check_nonexist
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L315
	mov	eax, -1
	jmp	.L316
.L315:
	call	success
	mov	eax, 0
.L316:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L317
	call	__stack_chk_fail@PLT
.L317:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE38:
	.size	test_open_unlink, .-test_open_unlink
	.section	.rodata
.LC82:
	.string	"open utime close"
	.text
	.type	test_open_utime, @function
test_open_utime:
.LFB39:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -57[rbp], 48
	mov	QWORD PTR -48[rbp], 987631200
	mov	QWORD PTR -40[rbp], 123116400
	lea	rdi, .LC82[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	edx, DWORD PTR testdatalen[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -56[rbp], eax
	cmp	DWORD PTR -56[rbp], -1
	jne	.L319
	mov	eax, -1
	jmp	.L325
.L319:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -52[rbp], eax
	cmp	DWORD PTR -52[rbp], -1
	jne	.L321
	lea	rsi, .LC16[rip]
	lea	rdi, func.2[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L325
.L321:
	lea	rcx, -57[rbp]
	mov	eax, DWORD PTR -52[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR testfile[rip]
	lea	rdx, -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	utime@PLT
	mov	DWORD PTR -56[rbp], eax
	cmp	DWORD PTR -56[rbp], -1
	jne	.L322
	lea	rsi, .LC48[rip]
	lea	rdi, func.2[rip]
	call	test_perror
	mov	eax, DWORD PTR -52[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L325
.L322:
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_times
	mov	DWORD PTR -56[rbp], eax
	cmp	DWORD PTR -56[rbp], -1
	jne	.L323
	mov	eax, -1
	jmp	.L325
.L323:
	mov	eax, DWORD PTR -52[rbp]
	mov	edi, eax
	call	close@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	check_times
	mov	DWORD PTR -56[rbp], eax
	cmp	DWORD PTR -56[rbp], -1
	jne	.L324
	mov	eax, -1
	jmp	.L325
.L324:
	call	success
	mov	eax, 0
.L325:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L326
	call	__stack_chk_fail@PLT
.L326:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE39:
	.size	test_open_utime, .-test_open_utime
	.section	.rodata
	.align 8
.LC83:
	.string	"chmod(0%o) open chmod(0%o) close"
.LC84:
	.string	"chmod_1"
.LC85:
	.string	"chmod_2"
	.text
	.type	test_open_chmod, @function
test_open_chmod:
.LFB40:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -36[rbp], edi
	mov	DWORD PTR -40[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -17[rbp], 48
	mov	edx, DWORD PTR -40[rbp]
	mov	eax, DWORD PTR -36[rbp]
	mov	esi, eax
	lea	rdi, .LC83[rip]
	mov	eax, 0
	call	start_test
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	edx, DWORD PTR testdatalen[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L328
	mov	eax, -1
	jmp	.L336
.L328:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -36[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	chmod@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L330
	lea	rsi, .LC84[rip]
	lea	rdi, func.1[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L336
.L330:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -36[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L331
	mov	eax, -1
	jmp	.L336
.L331:
	mov	rax, QWORD PTR testfile[rip]
	mov	esi, 2
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L332
	lea	rsi, .LC16[rip]
	lea	rdi, func.1[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L336
.L332:
	lea	rcx, -17[rbp]
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -40[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	chmod@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L333
	lea	rsi, .LC85[rip]
	lea	rdi, func.1[rip]
	call	test_perror
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L336
.L333:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -40[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	cmp	DWORD PTR -16[rbp], -1
	jne	.L334
	mov	eax, -1
	jmp	.L336
.L334:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -40[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_mode
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L335
	mov	eax, -1
	jmp	.L336
.L335:
	call	success
	mov	eax, 0
.L336:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L337
	call	__stack_chk_fail@PLT
.L337:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE40:
	.size	test_open_chmod, .-test_open_chmod
	.section	.rodata
.LC86:
	.string	"creat(%s) open(%s)"
.LC87:
	.string	"open(%s) open(%s)"
	.text
	.type	do_test_open_open, @function
do_test_open_open:
.LFB41:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	mov	QWORD PTR -32[rbp], rdx
	mov	DWORD PTR -36[rbp], ecx
	mov	QWORD PTR -48[rbp], r8
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	cmp	DWORD PTR -20[rbp], 0
	je	.L339
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC86[rip]
	mov	eax, 0
	call	start_test
	mov	eax, DWORD PTR -24[rbp]
	or	eax, 64
	mov	ecx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, 420
	mov	esi, ecx
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L340
	lea	rsi, .LC77[rip]
	lea	rdi, func.0[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L341
.L340:
	mov	eax, DWORD PTR testdatalen[rip]
	movsx	rdx, eax
	mov	eax, DWORD PTR -12[rbp]
	lea	rsi, testdata[rip]
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -8[rbp], eax
	cmp	DWORD PTR -8[rbp], -1
	jne	.L342
	lea	rsi, .LC33[rip]
	lea	rdi, func.0[rip]
	call	test_perror
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L341
.L342:
	mov	eax, DWORD PTR testdatalen[rip]
	cmp	DWORD PTR -8[rbp], eax
	je	.L343
	mov	edx, DWORD PTR testdatalen[rip]
	mov	eax, DWORD PTR -8[rbp]
	mov	ecx, edx
	mov	edx, eax
	lea	rsi, .LC34[rip]
	lea	rdi, func.0[rip]
	mov	eax, 0
	call	test_error
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L341
.L339:
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC87[rip]
	mov	eax, 0
	call	start_test
	mov	edx, DWORD PTR testdatalen[rip]
	mov	rax, QWORD PTR testfile[rip]
	lea	rsi, testdata[rip]
	mov	rdi, rax
	call	create_file
	mov	DWORD PTR -8[rbp], eax
	cmp	DWORD PTR -8[rbp], -1
	jne	.L344
	mov	eax, -1
	jmp	.L341
.L344:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L343
	lea	rsi, .LC77[rip]
	lea	rdi, func.0[rip]
	call	test_perror
	mov	eax, -1
	jmp	.L341
.L343:
	mov	rax, QWORD PTR testfile[rip]
	mov	edx, DWORD PTR -36[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L345
	lea	rsi, .LC78[rip]
	lea	rdi, func.0[rip]
	call	test_perror
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, -1
	jmp	.L341
.L345:
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR testdatalen[rip]
	mov	edx, eax
	mov	rax, QWORD PTR testfile[rip]
	mov	r8d, edx
	mov	ecx, 0
	lea	rdx, testdata[rip]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	do_check_data
	mov	DWORD PTR -8[rbp], eax
	cmp	DWORD PTR -8[rbp], -1
	jne	.L346
	mov	eax, -1
	jmp	.L341
.L346:
	call	success
	mov	eax, 0
.L341:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE41:
	.size	do_test_open_open, .-do_test_open_open
	.section	.rodata
.LC88:
	.string	"%s_%s_%s"
	.text
	.type	filename_set, @function
filename_set:
.LFB42:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	QWORD PTR -56[rbp], rdx
	mov	QWORD PTR -64[rbp], rcx
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rbx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	rbx, rax
	mov	rax, QWORD PTR -64[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	rax, rbx
	sal	rax, 3
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	malloc@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L348
	mov	edi, 1
	call	exit@PLT
.L348:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, QWORD PTR -64[rbp]
	mov	rcx, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR -48[rbp]
	mov	rsi, QWORD PTR -24[rbp]
	mov	r9, rdi
	mov	r8, rcx
	mov	rcx, rdx
	lea	rdx, .LC88[rip]
	mov	rdi, rax
	mov	eax, 0
	call	snprintf@PLT
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE42:
	.size	filename_set, .-filename_set
	.section	.rodata
.LC89:
	.string	"tmp"
.LC90:
	.string	"%d"
.LC91:
	.string	"./__testfile1"
.LC92:
	.string	"./__testfile2"
.LC93:
	.string	"./__testdir1"
.LC94:
	.string	"./__testdir2"
	.text
	.type	test_initialize, @function
test_initialize:
.LFB43:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 112
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -80[rbp]
	mov	esi, 64
	mov	rdi, rax
	call	gethostname@PLT
	mov	DWORD PTR -100[rbp], eax
	cmp	DWORD PTR -100[rbp], -1
	jne	.L350
	lea	rax, -80[rbp]
	lea	rdx, .LC89[rip]
	mov	esi, 64
	mov	rdi, rax
	mov	eax, 0
	call	snprintf@PLT
.L350:
	call	getpid@PLT
	mov	edx, eax
	lea	rax, -96[rbp]
	mov	ecx, edx
	lea	rdx, .LC90[rip]
	mov	esi, 16
	mov	rdi, rax
	mov	eax, 0
	call	snprintf@PLT
	lea	rdx, -96[rbp]
	lea	rax, -80[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC91[rip]
	lea	rdi, testfile[rip]
	call	filename_set
	lea	rdx, -96[rbp]
	lea	rax, -80[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC92[rip]
	lea	rdi, testfile2[rip]
	call	filename_set
	lea	rdx, -96[rbp]
	lea	rax, -80[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC93[rip]
	lea	rdi, testdir[rip]
	call	filename_set
	lea	rdx, -96[rbp]
	lea	rax, -80[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	lea	rsi, .LC94[rip]
	lea	rdi, testdir2[rip]
	call	filename_set
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L351
	call	__stack_chk_fail@PLT
.L351:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE43:
	.size	test_initialize, .-test_initialize
	.section	.rodata
.LC95:
	.string	"%i tests failed\n"
	.text
	.type	test_finalize, @function
test_finalize:
.LFB44:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	mov	rax, QWORD PTR testfile[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testfile2[rip]
	mov	rdi, rax
	call	unlink@PLT
	mov	rax, QWORD PTR testdir[rip]
	mov	rdi, rax
	call	rmdir@PLT
	mov	rax, QWORD PTR testdir2[rip]
	mov	rdi, rax
	call	rmdir@PLT
	cmp	DWORD PTR -4[rbp], 0
	je	.L353
	mov	eax, DWORD PTR -4[rbp]
	neg	eax
	mov	edx, eax
	mov	rax, QWORD PTR stdout[rip]
	lea	rsi, .LC95[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 1
	jmp	.L354
.L353:
	mov	eax, 0
.L354:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE44:
	.size	test_finalize, .-test_finalize
	.section	.rodata
.LC96:
	.string	"canceled\n"
	.text
	.type	signal_exit, @function
signal_exit:
.LFB45:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	edi, 0
	call	test_finalize
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 9
	mov	esi, 1
	lea	rdi, .LC96[rip]
	call	fwrite@PLT
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	exit@PLT
	.cfi_endproc
.LFE45:
	.size	signal_exit, .-signal_exit
	.section	.rodata
.LC97:
	.string	"usage: %s [-m] testdir\n"
	.text
	.type	usage, @function
usage:
.LFB46:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR stderr[rip]
	mov	rdx, QWORD PTR -8[rbp]
	lea	rsi, .LC97[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE46:
	.size	usage, .-usage
	.section	.rodata
.LC98:
	.string	"m"
.LC99:
	.string	"O_RDONLY"
.LC100:
	.string	"O_RDWR"
.LC101:
	.string	"O_WRONLY"
.LC102:
	.string	"O_RDWR | O_CREAT"
.LC103:
	.string	"O_RDWR | O_CREAT | O_TRUNC"
.LC104:
	.string	"O_RDONLY | O_CREAT"
.LC105:
	.string	"O_WRONLY | O_CREAT"
.LC106:
	.string	"O_RDWR | O_CREAT | O_EXCL"
.LC107:
	.string	"0"
.LC108:
	.string	"EACCES"
.LC109:
	.string	"O_RDONLY | O_TRUNC"
.LC110:
	.string	"O_WRONLY | O_TRUNC"
.LC111:
	.string	"O_RDWR | O_TRUNC"
.LC112:
	.string	"MAP_SHARED"
.LC113:
	.string	"PROT_READ"
.LC114:
	.string	"PROT_WRITE"
.LC115:
	.string	"PROT_READ | PROT_WRITE"
	.text
	.globl	main
	.type	main, @function
main:
.LFB47:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 208
	mov	DWORD PTR -196[rbp], edi
	mov	QWORD PTR -208[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -176[rbp], 0
	mov	rax, QWORD PTR -208[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -168[rbp], rax
	mov	DWORD PTR -172[rbp], 0
	jmp	.L358
.L361:
	movsx	eax, BYTE PTR -177[rbp]
	cmp	eax, 109
	jne	.L359
	mov	DWORD PTR -172[rbp], 1
	jmp	.L358
.L359:
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	usage
	mov	eax, 1
	jmp	.L364
.L358:
	mov	rcx, QWORD PTR -208[rbp]
	mov	eax, DWORD PTR -196[rbp]
	lea	rdx, .LC98[rip]
	mov	rsi, rcx
	mov	edi, eax
	call	getopt@PLT
	mov	BYTE PTR -177[rbp], al
	cmp	BYTE PTR -177[rbp], -1
	jne	.L361
	mov	eax, DWORD PTR optind[rip]
	sub	DWORD PTR -196[rbp], eax
	mov	eax, DWORD PTR optind[rip]
	cdqe
	sal	rax, 3
	add	QWORD PTR -208[rbp], rax
	cmp	DWORD PTR -196[rbp], 1
	je	.L362
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	usage
	mov	eax, 1
	jmp	.L364
.L362:
	mov	edi, 0
	call	umask@PLT
	mov	rax, QWORD PTR -208[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	chdir@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	ecx, 0
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	setvbuf@PLT
	mov	rax, QWORD PTR stderr[rip]
	mov	ecx, 0
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	setvbuf@PLT
	lea	rax, signal_exit[rip]
	mov	QWORD PTR -160[rbp], rax
	lea	rax, -160[rbp]
	mov	edx, 0
	mov	rsi, rax
	mov	edi, 1
	call	sigaction@PLT
	lea	rax, -160[rbp]
	mov	edx, 0
	mov	rsi, rax
	mov	edi, 2
	call	sigaction@PLT
	mov	eax, 0
	call	test_initialize
	call	test_create
	add	DWORD PTR -176[rbp], eax
	call	test_symlink
	add	DWORD PTR -176[rbp], eax
	call	test_link
	add	DWORD PTR -176[rbp], eax
	call	test_mkfifo
	add	DWORD PTR -176[rbp], eax
	call	test_mkdir
	add	DWORD PTR -176[rbp], eax
	call	test_rename_file
	add	DWORD PTR -176[rbp], eax
	call	test_rename_dir
	add	DWORD PTR -176[rbp], eax
	call	test_utime
	add	DWORD PTR -176[rbp], eax
	mov	edi, 0
	call	test_truncate
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	edi, eax
	call	test_truncate
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	edi, eax
	call	test_truncate
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	add	eax, 100
	mov	edi, eax
	call	test_truncate
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 384
	mov	edi, 0
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 384
	mov	edi, eax
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 384
	mov	edi, eax
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR testdatalen[rip]
	add	eax, 100
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 384
	mov	edi, eax
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 256
	mov	edi, 0
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 128
	mov	edi, 0
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	push	0
	mov	r9d, 0
	mov	r8d, 0
	mov	ecx, 1
	mov	edx, 0
	mov	esi, 0
	mov	edi, 0
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC99[rip]
	mov	esi, 0
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC99[rip]
	mov	esi, 0
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC100[rip]
	mov	esi, 2
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC101[rip]
	mov	esi, 1
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC102[rip]
	mov	esi, 66
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC102[rip]
	mov	esi, 66
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC103[rip]
	mov	esi, 578
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC103[rip]
	mov	esi, 578
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC104[rip]
	mov	esi, 64
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 256
	lea	rdx, .LC104[rip]
	mov	esi, 64
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 128
	lea	rdx, .LC104[rip]
	mov	esi, 64
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC104[rip]
	mov	esi, 64
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC105[rip]
	mov	esi, 65
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 256
	lea	rdx, .LC105[rip]
	mov	esi, 65
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 128
	lea	rdx, .LC105[rip]
	mov	esi, 65
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC105[rip]
	mov	esi, 65
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 256
	lea	rdx, .LC102[rip]
	mov	esi, 66
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 128
	lea	rdx, .LC102[rip]
	mov	esi, 66
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC102[rip]
	mov	esi, 66
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC106[rip]
	mov	esi, 194
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 384
	lea	rdx, .LC106[rip]
	mov	esi, 194
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC106[rip]
	mov	esi, 194
	mov	edi, 0
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	mov	ecx, 0
	lea	rdx, .LC106[rip]
	mov	esi, 194
	mov	edi, 1
	call	do_test_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 384
	lea	rsi, .LC99[rip]
	mov	edi, 0
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 384
	lea	rsi, .LC101[rip]
	mov	edi, 1
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 384
	lea	rsi, .LC100[rip]
	mov	edi, 2
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 256
	lea	rsi, .LC99[rip]
	mov	edi, 0
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 256
	lea	rsi, .LC109[rip]
	mov	edi, 512
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 256
	lea	rsi, .LC101[rip]
	mov	edi, 1
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 256
	lea	rsi, .LC100[rip]
	mov	edi, 2
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 128
	lea	rsi, .LC99[rip]
	mov	edi, 0
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 128
	lea	rsi, .LC101[rip]
	mov	edi, 1
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 128
	lea	rsi, .LC100[rip]
	mov	edi, 2
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 0
	lea	rsi, .LC99[rip]
	mov	edi, 0
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 0
	lea	rsi, .LC101[rip]
	mov	edi, 1
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 0
	lea	rsi, .LC100[rip]
	mov	edi, 2
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 384
	lea	rsi, .LC109[rip]
	mov	edi, 512
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 128
	lea	rsi, .LC109[rip]
	mov	edi, 512
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC107[rip]
	mov	ecx, 0
	mov	edx, 128
	lea	rsi, .LC110[rip]
	mov	edi, 513
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC108[rip]
	mov	ecx, 13
	mov	edx, 128
	lea	rsi, .LC111[rip]
	mov	edi, 514
	call	do_test_open_acc
	add	DWORD PTR -176[rbp], eax
	cmp	DWORD PTR -172[rbp], 0
	je	.L363
	lea	rcx, .LC112[rip]
	mov	edx, 1
	lea	rsi, .LC113[rip]
	mov	edi, 1
	call	do_test_mmap
	add	DWORD PTR -176[rbp], eax
	lea	rcx, .LC112[rip]
	mov	edx, 1
	lea	rsi, .LC114[rip]
	mov	edi, 2
	call	do_test_mmap
	add	DWORD PTR -176[rbp], eax
	lea	rcx, .LC112[rip]
	mov	edx, 1
	lea	rsi, .LC115[rip]
	mov	edi, 3
	call	do_test_mmap
	add	DWORD PTR -176[rbp], eax
.L363:
	mov	edi, 10
	call	test_seek_eof
	add	DWORD PTR -176[rbp], eax
	mov	eax, 0
	call	test_open_size
	add	DWORD PTR -176[rbp], eax
	mov	eax, 0
	call	test_open_rename
	add	DWORD PTR -176[rbp], eax
	mov	eax, 0
	call	test_open_unlink
	add	DWORD PTR -176[rbp], eax
	mov	eax, 0
	call	test_open_utime
	add	DWORD PTR -176[rbp], eax
	mov	esi, 448
	mov	edi, 384
	call	test_open_chmod
	add	DWORD PTR -176[rbp], eax
	mov	esi, 384
	mov	edi, 448
	call	test_open_chmod
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC101[rip]
	mov	ecx, 1
	lea	rdx, .LC99[rip]
	mov	esi, 0
	mov	edi, 0
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC100[rip]
	mov	ecx, 2
	lea	rdx, .LC99[rip]
	mov	esi, 0
	mov	edi, 0
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC99[rip]
	mov	ecx, 0
	lea	rdx, .LC101[rip]
	mov	esi, 1
	mov	edi, 0
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC100[rip]
	mov	ecx, 2
	lea	rdx, .LC101[rip]
	mov	esi, 1
	mov	edi, 0
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC99[rip]
	mov	ecx, 0
	lea	rdx, .LC100[rip]
	mov	esi, 2
	mov	edi, 0
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC101[rip]
	mov	ecx, 1
	lea	rdx, .LC100[rip]
	mov	esi, 2
	mov	edi, 0
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC99[rip]
	mov	ecx, 0
	lea	rdx, .LC101[rip]
	mov	esi, 1
	mov	edi, 1
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC100[rip]
	mov	ecx, 2
	lea	rdx, .LC101[rip]
	mov	esi, 1
	mov	edi, 1
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC99[rip]
	mov	ecx, 0
	lea	rdx, .LC100[rip]
	mov	esi, 2
	mov	edi, 1
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	lea	r8, .LC101[rip]
	mov	ecx, 1
	lea	rdx, .LC100[rip]
	mov	esi, 2
	mov	edi, 1
	call	do_test_open_open
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	lea	rax, .LC107[rip]
	push	rax
	mov	r9d, 0
	lea	r8, .LC99[rip]
	mov	ecx, 0
	mov	edx, 1
	mov	esi, 128
	mov	edi, 0
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	lea	rax, .LC107[rip]
	push	rax
	mov	r9d, 0
	lea	r8, .LC99[rip]
	mov	ecx, 0
	mov	edx, 1
	mov	esi, 384
	mov	edi, 5
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	lea	rax, .LC108[rip]
	push	rax
	mov	r9d, 13
	lea	r8, .LC99[rip]
	mov	ecx, 0
	mov	edx, 1
	mov	esi, 256
	mov	edi, 5
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	lea	rax, .LC107[rip]
	push	rax
	mov	r9d, 0
	lea	r8, .LC101[rip]
	mov	ecx, 1
	mov	edx, 1
	mov	esi, 384
	mov	edi, 5
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	sub	rsp, 8
	lea	rax, .LC108[rip]
	push	rax
	mov	r9d, 13
	lea	r8, .LC101[rip]
	mov	ecx, 1
	mov	edx, 1
	mov	esi, 256
	mov	edi, 5
	call	test_ftruncate_common
	add	rsp, 16
	add	DWORD PTR -176[rbp], eax
	mov	eax, DWORD PTR -176[rbp]
	mov	edi, eax
	call	test_finalize
.L364:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L365
	call	__stack_chk_fail@PLT
.L365:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE47:
	.size	main, .-main
	.data
	.align 8
	.type	func.34, @object
	.size	func.34, 11
func.34:
	.string	"check_size"
	.align 8
	.type	func.33, @object
	.size	func.33, 11
func.33:
	.string	"check_type"
	.align 8
	.type	func.32, @object
	.size	func.32, 11
func.32:
	.string	"check_mode"
	.align 8
	.type	func.31, @object
	.size	func.31, 12
func.31:
	.string	"check_times"
	.align 8
	.type	func.30, @object
	.size	func.30, 12
func.30:
	.string	"check_nlink"
	.align 8
	.type	func.29, @object
	.size	func.29, 15
func.29:
	.string	"check_nonexist"
	.align 8
	.type	func.28, @object
	.size	func.28, 13
func.28:
	.string	"check_buffer"
	.align 8
	.type	func.27, @object
	.size	func.27, 14
func.27:
	.string	"do_check_data"
	.section	.rodata
	.align 16
	.type	__PRETTY_FUNCTION__.26, @object
	.size	__PRETTY_FUNCTION__.26, 19
__PRETTY_FUNCTION__.26:
	.string	"check_dir_contents"
	.data
	.align 16
	.type	func.25, @object
	.size	func.25, 19
func.25:
	.string	"check_dir_contents"
	.align 8
	.type	func.24, @object
	.size	func.24, 12
func.24:
	.string	"create_file"
	.align 8
	.type	func.23, @object
	.size	func.23, 12
func.23:
	.string	"cleanup_dir"
	.align 8
	.type	func.22, @object
	.size	func.22, 11
func.22:
	.string	"create_dir"
	.align 8
	.type	func.21, @object
	.size	func.21, 14
func.21:
	.string	"test_truncate"
	.align 16
	.type	f2.20, @object
	.size	f2.20, 19
f2.20:
	.string	"test_open_truncate"
	.align 8
	.type	f1.19, @object
	.size	f1.19, 15
f1.19:
	.string	"test_ftruncate"
	.align 8
	.type	func.18, @object
	.size	func.18, 11
func.18:
	.string	"test_utime"
	.align 8
	.type	func.17, @object
	.size	func.17, 12
func.17:
	.string	"test_create"
	.align 8
	.type	func.16, @object
	.size	func.16, 13
func.16:
	.string	"do_test_open"
	.align 16
	.type	func.15, @object
	.size	func.15, 17
func.15:
	.string	"do_test_open_acc"
	.align 8
	.type	func.14, @object
	.size	func.14, 13
func.14:
	.string	"test_symlink"
	.align 8
	.type	func.13, @object
	.size	func.13, 10
func.13:
	.string	"test_link"
	.align 16
	.type	func.12, @object
	.size	func.12, 17
func.12:
	.string	"test_rename_file"
	.align 16
	.type	func.11, @object
	.size	func.11, 16
func.11:
	.string	"test_rename_dir"
	.align 8
	.type	func.10, @object
	.size	func.10, 12
func.10:
	.string	"test_mkfifo"
	.align 8
	.type	func.9, @object
	.size	func.9, 11
func.9:
	.string	"test_mkdir"
	.align 8
	.type	func.8, @object
	.size	func.8, 13
func.8:
	.string	"do_test_mmap"
	.align 32
	.type	testdata3.7, @object
	.size	testdata3.7, 46
testdata3.7:
	.string	"_1234567890-=qwertyuiop[]\007sdfghjkl;'zxcvbnm,."
	.align 8
	.type	func.6, @object
	.size	func.6, 14
func.6:
	.string	"test_seek_eof"
	.align 8
	.type	func.5, @object
	.size	func.5, 15
func.5:
	.string	"test_open_size"
	.align 16
	.type	func.4, @object
	.size	func.4, 17
func.4:
	.string	"test_open_rename"
	.align 16
	.type	func.3, @object
	.size	func.3, 17
func.3:
	.string	"test_open_unlink"
	.align 16
	.type	func.2, @object
	.size	func.2, 16
func.2:
	.string	"test_open_utime"
	.align 16
	.type	func.1, @object
	.size	func.1, 16
func.1:
	.string	"test_open_chmod"
	.align 16
	.type	func.0, @object
	.size	func.0, 18
func.0:
	.string	"do_test_open_open"
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"93886520.c"
	.text
	.local	testfile
	.comm	testfile,4,4
	.local	testfile2
	.comm	testfile2,4,4
	.local	testdir
	.comm	testdir,4,4
	.local	testdir2
	.comm	testdir2,4,4
	.local	testname
	.comm	testname,256,4
	.data
	.align	2
	.type	testdata, %object
	.size	testdata, 27
testdata:
	.ascii	"abcdefghijklmnopqrstuvwxyz\000"
	.align	2
	.type	testdata2, %object
	.size	testdata2, 46
testdata2:
	.ascii	"1234567890-=qwertyuiop[]\007sdfghjkl;'zxcvbnm,./\000"
	.section	.rodata
	.align	2
.LC0:
	.ascii	"f1\000"
	.align	2
.LC1:
	.ascii	"f2\000"
	.data
	.align	2
	.type	testdir_files, %object
	.size	testdir_files, 12
testdir_files:
	.word	.LC0
	.word	.LC1
	.word	0
	.local	zerodata
	.comm	zerodata,4096,4
	.align	2
	.type	testdatalen, %object
	.size	testdatalen, 4
testdatalen:
	.word	26
	.align	2
	.type	testdata2len, %object
	.size	testdata2len, 4
testdata2len:
	.word	45
	.section	.rodata
	.align	2
.LC2:
	.ascii	"NG [%s] %s(): %s: %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_perror, %function
test_perror:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, .L2
	ldr	r4, [r3]
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	mov	r0, r3
	bl	strerror
	mov	r3, r0
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L2+4
	ldr	r1, .L2+8
	mov	r0, r4
	bl	fprintf
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L3:
	.align	2
.L2:
	.word	stdout
	.word	testname
	.word	.LC2
	.size	test_perror, .-test_perror
	.section	.rodata
	.align	2
.LC3:
	.ascii	"NG [%s] %s(): \000"
	.align	2
.LC4:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_error, %function
test_error:
	@ args = 4, pretend = 12, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 1
	push	{r1, r2, r3}
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #20
	str	r0, [fp, #-20]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-24]
	ldr	r3, .L6
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	mov	r3,#0
	ldr	r3, .L6+4
	ldr	r0, [r3]
	ldr	r3, [fp, #-20]
	ldr	r2, .L6+8
	ldr	r1, .L6+12
	bl	fprintf
	add	r3, fp, #8
	str	r3, [fp, #-16]
	ldr	r3, .L6+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	vfprintf
	ldr	r3, .L6+4
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, #10
	bl	fputc
	nop
	ldr	r3, .L6
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L5
	bl	__stack_chk_fail
.L5:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #12
	bx	lr
.L7:
	.align	2
.L6:
	.word	.LC4
	.word	stdout
	.word	testname
	.word	.LC3
	.size	test_error, .-test_error
	.section	.rodata
	.align	2
.LC5:
	.ascii	"OK [%s]\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	success, %function
success:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L9
	ldr	r3, [r3]
	ldr	r2, .L9+4
	ldr	r1, .L9+8
	mov	r0, r3
	bl	fprintf
	nop
	pop	{fp, pc}
.L10:
	.align	2
.L9:
	.word	stdout
	.word	testname
	.word	.LC5
	.size	success, .-success
	.section	.rodata
	.align	2
.LC6:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	start_test, %function
start_test:
	@ args = 4, pretend = 16, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 1
	push	{r0, r1, r2, r3}
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, [fp, #4]
	str	r3, [fp, #-16]
	ldr	r3, .L13
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	add	r3, fp, #8
	str	r3, [fp, #-12]
	ldr	r2, [fp, #-12]
	ldr	r1, [fp, #-16]
	ldr	r0, .L13+4
	bl	vsprintf
	nop
	ldr	r3, .L13
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L12
	bl	__stack_chk_fail
.L12:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #16
	bx	lr
.L14:
	.align	2
.L13:
	.word	.LC6
	.word	testname
	.size	start_test, .-start_test
	.section	.rodata
	.align	2
.LC7:
	.ascii	"stat\000"
	.align	2
.LC8:
	.ascii	"length %u instead of %u\000"
	.align	2
.LC9:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_size, %function
check_size:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	str	r1, [fp, #-116]
	ldr	r3, .L21
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	stat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmn	r3, #1
	bne	.L16
	ldr	r1, .L21+4
	ldr	r0, .L21+8
	bl	test_perror
	mvn	r3, #0
	b	.L19
.L16:
	ldr	r3, [fp, #-56]
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	beq	.L18
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-116]
	ldr	r1, .L21+12
	ldr	r0, .L21+8
	bl	test_error
	mvn	r3, #0
	b	.L19
.L18:
	mov	r3, #0
.L19:
	ldr	r2, .L21
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L20
	bl	__stack_chk_fail
.L20:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L22:
	.align	2
.L21:
	.word	.LC9
	.word	.LC7
	.word	func.7236
	.word	.LC8
	.size	check_size, .-check_size
	.section	.rodata
	.align	2
.LC10:
	.ascii	"lstat\000"
	.align	2
.LC11:
	.ascii	"type 0%o instead of 0%o\000"
	.align	2
.LC12:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_type, %function
check_type:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	str	r1, [fp, #-116]
	ldr	r3, .L29
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmn	r3, #1
	bne	.L24
	ldr	r1, .L29+4
	ldr	r0, .L29+8
	bl	test_perror
	mvn	r3, #0
	b	.L27
.L24:
	ldr	r3, [fp, #-84]
	and	r3, r3, #61440
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	beq	.L26
	ldr	r3, [fp, #-84]
	and	r2, r3, #61440
	ldr	r3, [fp, #-116]
	ldr	r1, .L29+12
	ldr	r0, .L29+8
	bl	test_error
	mvn	r3, #0
	b	.L27
.L26:
	mov	r3, #0
.L27:
	ldr	r2, .L29
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L28
	bl	__stack_chk_fail
.L28:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L30:
	.align	2
.L29:
	.word	.LC12
	.word	.LC10
	.word	func.7243
	.word	.LC11
	.size	check_type, .-check_type
	.section	.rodata
	.align	2
.LC13:
	.ascii	"mode 0%o instead of 0%o\000"
	.align	2
.LC14:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_mode, %function
check_mode:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	str	r1, [fp, #-116]
	ldr	r3, .L37
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmn	r3, #1
	bne	.L32
	ldr	r1, .L37+4
	ldr	r0, .L37+8
	bl	test_perror
	mvn	r3, #0
	b	.L35
.L32:
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #20
	lsr	r3, r3, #20
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	beq	.L34
	ldr	r3, [fp, #-84]
	lsl	r2, r3, #20
	lsr	r2, r2, #20
	ldr	r3, [fp, #-116]
	ldr	r1, .L37+12
	ldr	r0, .L37+8
	bl	test_error
	mvn	r3, #0
	b	.L35
.L34:
	mov	r3, #0
.L35:
	ldr	r2, .L37
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L36
	bl	__stack_chk_fail
.L36:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L38:
	.align	2
.L37:
	.word	.LC14
	.word	.LC10
	.word	func.7250
	.word	.LC13
	.size	check_mode, .-check_mode
	.section	.rodata
	.align	2
.LC15:
	.ascii	"different atime\000"
	.align	2
.LC16:
	.ascii	"different mtime\000"
	.align	2
.LC17:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_times, %function
check_times:
	@ args = 0, pretend = 0, frame = 120
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #120
	str	r0, [fp, #-112]
	str	r1, [fp, #-116]
	str	r2, [fp, #-120]
	ldr	r3, .L47
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-108]
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmn	r3, #1
	bne	.L40
	ldr	r1, .L47+4
	ldr	r0, .L47+8
	bl	test_perror
	mvn	r3, #0
	b	.L45
.L40:
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	beq	.L42
	ldr	r1, .L47+12
	ldr	r0, .L47+8
	bl	test_error
	ldr	r3, [fp, #-108]
	sub	r3, r3, #1
	str	r3, [fp, #-108]
.L42:
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-120]
	cmp	r2, r3
	beq	.L43
	ldr	r1, .L47+16
	ldr	r0, .L47+8
	bl	test_error
	ldr	r3, [fp, #-108]
	sub	r3, r3, #1
	str	r3, [fp, #-108]
.L43:
	ldr	r3, [fp, #-108]
	cmp	r3, #0
	beq	.L44
	mvn	r3, #0
	b	.L45
.L44:
	mov	r3, #0
.L45:
	ldr	r2, .L47
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L46
	bl	__stack_chk_fail
.L46:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L48:
	.align	2
.L47:
	.word	.LC17
	.word	.LC10
	.word	func.7258
	.word	.LC15
	.word	.LC16
	.size	check_times, .-check_times
	.section	.rodata
	.align	2
.LC18:
	.ascii	"nlink %i instead of %i\000"
	.align	2
.LC19:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_nlink, %function
check_nlink:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	str	r1, [fp, #-116]
	ldr	r3, .L55
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmn	r3, #1
	bne	.L50
	ldr	r1, .L55+4
	ldr	r0, .L55+8
	bl	test_perror
	mvn	r3, #0
	b	.L53
.L50:
	ldr	r3, [fp, #-80]
	ldr	r2, [fp, #-116]
	cmp	r2, r3
	beq	.L52
	ldr	r2, [fp, #-80]
	ldr	r3, [fp, #-116]
	ldr	r1, .L55+12
	ldr	r0, .L55+8
	bl	test_error
	mvn	r3, #0
	b	.L53
.L52:
	mov	r3, #0
.L53:
	ldr	r2, .L55
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L54
	bl	__stack_chk_fail
.L54:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L56:
	.align	2
.L55:
	.word	.LC19
	.word	.LC10
	.word	func.7266
	.word	.LC18
	.size	check_nlink, .-check_nlink
	.section	.rodata
	.align	2
.LC20:
	.ascii	"file should not exist\000"
	.align	2
.LC21:
	.ascii	"file should not exist: %s\000"
	.align	2
.LC22:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_nonexist, %function
check_nonexist:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	ldr	r3, .L63
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmp	r3, #0
	bne	.L58
	ldr	r1, .L63+4
	ldr	r0, .L63+8
	bl	test_error
	mvn	r3, #0
	b	.L61
.L58:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L60
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	mov	r0, r3
	bl	strerror
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L63+12
	ldr	r0, .L63+8
	bl	test_error
	mvn	r3, #0
	b	.L61
.L60:
	mov	r3, #0
.L61:
	ldr	r2, .L63
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L62
	bl	__stack_chk_fail
.L62:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L64:
	.align	2
.L63:
	.word	.LC22
	.word	.LC20
	.word	func.7272
	.word	.LC21
	.size	check_nonexist, .-check_nonexist
	.section	.rodata
	.align	2
.LC23:
	.ascii	"data mismatch\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_buffer, %function
check_buffer:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	memcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L66
	ldr	r1, .L68
	ldr	r0, .L68+4
	bl	test_error
	mvn	r3, #0
	b	.L67
.L66:
	mov	r3, #0
.L67:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L69:
	.align	2
.L68:
	.word	.LC23
	.word	func.7280
	.size	check_buffer, .-check_buffer
	.section	.rodata
	.align	2
.LC24:
	.ascii	"open\000"
	.align	2
.LC25:
	.ascii	"lseek\000"
	.align	2
.LC26:
	.ascii	"read\000"
	.align	2
.LC27:
	.ascii	"%s: short read: %u instead of %u\000"
	.align	2
.LC28:
	.ascii	"close\000"
	.align	2
.LC29:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_check_data, %function
do_check_data:
	@ args = 4, pretend = 0, frame = 4128
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #4096
	sub	sp, sp, #44
	sub	ip, fp, #4096
	sub	ip, ip, #12
	str	r0, [ip, #-20]
	sub	r0, fp, #4096
	sub	r0, r0, #12
	str	r1, [r0, #-24]
	sub	r1, fp, #4096
	sub	r1, r1, #12
	str	r2, [r1, #-28]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [r2, #-32]
	ldr	r3, .L82
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, #0
	ldr	r0, [r3, #-20]
	bl	open
	str	r0, [r4, #-16]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmn	r3, #1
	bne	.L71
	ldr	r1, .L82+4
	ldr	r0, .L82+8
	bl	test_perror
	mvn	r3, #0
	b	.L80
.L71:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, #0
	ldr	r1, [r1, #-32]
	ldr	r0, [r3, #-16]
	bl	lseek
	mov	r3, r0
	cmn	r3, #1
	bne	.L74
	ldr	r1, .L82+12
	ldr	r0, .L82+8
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	mvn	r3, #0
	b	.L80
.L78:
	ldr	r3, [fp, #4]
	cmp	r3, #4096
	movcc	r3, r3
	movcs	r3, #4096
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [r2, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r3, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	sub	r1, fp, #4096
	sub	r1, r1, #12
	mov	r0, r1
	mov	r1, r3
	ldr	r0, [r0, #-16]
	bl	read
	str	r0, [r4, #-12]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmn	r3, #1
	bne	.L75
	ldr	r1, .L82+16
	ldr	r0, .L82+8
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	mvn	r3, #0
	b	.L80
.L75:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r2, #-12]
	ldr	r3, [r3, #-8]
	cmp	r2, r3
	beq	.L76
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	str	r3, [sp]
	ldr	r3, [r1, #-12]
	ldr	r2, [r2, #-24]
	ldr	r1, .L82+20
	ldr	r0, .L82+8
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	mvn	r3, #0
	b	.L80
.L76:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r3, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	ldr	r1, [r1, #-28]
	mov	r0, r3
	bl	check_buffer
	mov	r3, r0
	cmp	r3, #0
	beq	.L77
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	mvn	r3, #0
	b	.L80
.L77:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r1, r2
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-28]
	add	r3, r2, r3
	str	r3, [r1, #-28]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	ldr	r2, [fp, #4]
	sub	r3, r2, r3
	str	r3, [fp, #4]
.L74:
	ldr	r3, [fp, #4]
	cmp	r3, #0
	bne	.L78
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	str	r0, [r4, #-12]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmn	r3, #1
	bne	.L79
	ldr	r1, .L82+24
	ldr	r0, .L82+8
	bl	test_perror
	mvn	r3, #0
	b	.L80
.L79:
	mov	r3, #0
.L80:
	ldr	r2, .L82
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L81
	bl	__stack_chk_fail
.L81:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L83:
	.align	2
.L82:
	.word	.LC29
	.word	.LC24
	.word	func.7288
	.word	.LC25
	.word	.LC26
	.word	.LC27
	.word	.LC28
	.size	do_check_data, .-do_check_data
	.section	.rodata
	.align	2
.LC30:
	.ascii	"the_stack_data/93886520.c\000"
	.align	2
.LC31:
	.ascii	"i < MAX_ENTRIES - 3\000"
	.align	2
.LC32:
	.ascii	".\000"
	.align	2
.LC33:
	.ascii	"..\000"
	.align	2
.LC34:
	.ascii	"opendir\000"
	.align	2
.LC35:
	.ascii	"readdir\000"
	.align	2
.LC36:
	.ascii	"i < MAX_ENTRIES\000"
	.align	2
.LC37:
	.ascii	"duplicate entry <%s>\000"
	.align	2
.LC38:
	.ascii	"unexpected entry <%s>\000"
	.align	2
.LC39:
	.ascii	"missing entry <%s>\000"
	.align	2
.LC40:
	.ascii	"closedir\000"
	.align	2
.LC41:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_dir_contents, %function
check_dir_contents:
	@ args = 0, pretend = 0, frame = 8224
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #8192
	sub	sp, sp, #36
	sub	r3, fp, #8192
	sub	r3, r3, #12
	str	r0, [r3, #-28]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	str	r1, [r3, #-32]
	ldr	r3, .L110
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-20]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-24]
	b	.L85
.L87:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	cmp	r3, #1020
	ble	.L86
	ldr	r3, .L110+4
	ldr	r2, .L110+8
	ldr	r1, .L110+12
	ldr	r0, .L110+16
	bl	__assert_fail
.L86:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-32]
	add	r3, r2, r3
	ldr	r2, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r1, r3
	str	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	add	r3, r3, #1
	str	r3, [r2, #-24]
.L85:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-32]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L87
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	mov	r1, r2
	add	r2, r3, #1
	str	r2, [r1, #-24]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, .L110+20
	str	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	mov	r1, r2
	add	r2, r3, #1
	str	r2, [r1, #-24]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, .L110+24
	str	r2, [r3, #-4]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-28]
	bl	opendir
	str	r0, [r4, #-16]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #0
	bne	.L88
	ldr	r1, .L110+28
	ldr	r0, .L110+32
	bl	test_perror
	mvn	r3, #0
	b	.L107
.L88:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	sub	r3, r3, #4
	mov	r2, #4096
	mov	r1, #0
	mov	r0, r3
	bl	memset
.L101:
	bl	__errno_location
	mov	r3, r0
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	readdir
	str	r0, [r4, #-12]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmp	r3, #0
	bne	.L90
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L109
	ldr	r1, .L110+36
	ldr	r0, .L110+32
	bl	test_perror
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	closedir
	mvn	r3, #0
	b	.L107
.L90:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-24]
	b	.L93
.L99:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	cmp	r3, #1024
	blt	.L94
	ldr	r3, .L110+4
	ldr	r2, .L110+40
	ldr	r1, .L110+12
	ldr	r0, .L110+44
	bl	__assert_fail
.L94:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, [r3, #-4]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	add	r3, r3, #11
	mov	r1, r3
	mov	r0, r2
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L95
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-4]
	cmp	r3, #0
	beq	.L96
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	add	r3, r3, #11
	mov	r2, r3
	ldr	r1, .L110+48
	ldr	r0, .L110+32
	bl	test_error
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	sub	r3, r3, #1
	str	r3, [r2, #-20]
	b	.L98
.L96:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #1
	str	r2, [r3, #-4]
	b	.L98
.L95:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	add	r3, r3, #1
	str	r3, [r2, #-24]
.L93:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-4]
	cmp	r3, #0
	bne	.L99
.L98:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-4]
	cmp	r3, #0
	bne	.L101
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	add	r3, r3, #11
	mov	r2, r3
	ldr	r1, .L110+52
	ldr	r0, .L110+32
	bl	test_error
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	sub	r3, r3, #1
	str	r3, [r2, #-20]
	b	.L101
.L109:
	nop
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-24]
	b	.L102
.L104:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-4]
	cmp	r3, #0
	bne	.L103
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-4]
	mov	r2, r3
	ldr	r1, .L110+56
	ldr	r0, .L110+32
	bl	test_error
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	sub	r3, r3, #1
	str	r3, [r2, #-20]
.L103:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	add	r3, r3, #1
	str	r3, [r2, #-24]
.L102:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-4]
	cmp	r3, #0
	bne	.L104
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	closedir
	str	r0, [r4, #-8]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmn	r3, #1
	bne	.L105
	ldr	r1, .L110+60
	ldr	r0, .L110+32
	bl	test_perror
	mvn	r3, #0
	b	.L107
.L105:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmp	r3, #0
	beq	.L106
	mvn	r3, #0
	b	.L107
.L106:
	mov	r3, #0
.L107:
	ldr	r2, .L110
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L108
	bl	__stack_chk_fail
.L108:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L111:
	.align	2
.L110:
	.word	.LC41
	.word	__PRETTY_FUNCTION__.7307
	.word	275
	.word	.LC30
	.word	.LC31
	.word	.LC32
	.word	.LC33
	.word	.LC34
	.word	func.7300
	.word	.LC35
	.word	303
	.word	.LC36
	.word	.LC37
	.word	.LC38
	.word	.LC39
	.word	.LC40
	.size	check_dir_contents, .-check_dir_contents
	.section	.rodata
	.align	2
.LC42:
	.ascii	"creat\000"
	.align	2
.LC43:
	.ascii	"write\000"
	.align	2
.LC44:
	.ascii	"write is short: %u instead of %u\000"
	.align	2
.LC45:
	.ascii	"path\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	create_file, %function
create_file:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	unlink
	mov	r1, #420
	ldr	r0, [fp, #-16]
	bl	creat
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L113
	ldr	r1, .L123
	ldr	r0, .L123+4
	bl	test_perror
	mvn	r3, #0
	b	.L114
.L113:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L115
	ldr	r3, [fp, #-24]
	mov	r2, r3
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-12]
	bl	write
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L116
	ldr	r1, .L123+8
	ldr	r0, .L123+4
	bl	test_perror
	ldr	r0, [fp, #-12]
	bl	close
	mvn	r3, #0
	b	.L114
.L116:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	beq	.L115
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-8]
	ldr	r1, .L123+12
	ldr	r0, .L123+4
	bl	test_error
	ldr	r0, [fp, #-12]
	bl	close
	mvn	r3, #0
	b	.L114
.L115:
	ldr	r0, [fp, #-12]
	bl	close
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L117
	ldr	r1, .L123+16
	ldr	r0, .L123+4
	bl	test_perror
	mvn	r3, #0
	b	.L114
.L117:
	mov	r1, #32768
	ldr	r0, [fp, #-16]
	bl	check_type
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L118
	mvn	r3, #0
	b	.L114
.L118:
	mov	r1, #420
	ldr	r0, [fp, #-16]
	bl	check_mode
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L119
	mvn	r3, #0
	b	.L114
.L119:
	mov	r1, #1
	ldr	r0, [fp, #-16]
	bl	check_nlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L120
	mvn	r3, #0
	b	.L114
.L120:
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	check_size
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L121
	mvn	r3, #0
	b	.L114
.L121:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L122
	ldr	r3, [fp, #-24]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-20]
	ldr	r1, .L123+20
	ldr	r0, [fp, #-16]
	bl	do_check_data
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L122
	mvn	r3, #0
	b	.L114
.L122:
	mov	r3, #0
.L114:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L124:
	.align	2
.L123:
	.word	.LC42
	.word	func.7325
	.word	.LC43
	.word	.LC44
	.word	.LC28
	.word	.LC45
	.size	create_file, .-create_file
	.section	.rodata
	.align	2
.LC46:
	.ascii	"%s/%s\000"
	.align	2
.LC47:
	.ascii	"unlink\000"
	.align	2
.LC48:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	cleanup_dir, %function
cleanup_dir:
	@ args = 0, pretend = 0, frame = 1056
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1056
	str	r0, [fp, #-1048]
	str	r1, [fp, #-1052]
	str	r2, [fp, #-1056]
	ldr	r3, .L132
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-1040]
	mov	r3, #0
	str	r3, [fp, #-1044]
	b	.L126
.L128:
	ldr	r3, [fp, #-1044]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-1052]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r0, fp, #1024
	sub	r0, r0, #4
	sub	r0, r0, #4
	ldr	r2, [fp, #-1048]
	ldr	r1, .L132+4
	bl	sprintf
	sub	r3, fp, #1024
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L127
	ldr	r3, [fp, #-1056]
	cmp	r3, #0
	bne	.L127
	ldr	r1, .L132+8
	ldr	r0, .L132+12
	bl	test_perror
	ldr	r3, [fp, #-1040]
	sub	r3, r3, #1
	str	r3, [fp, #-1040]
.L127:
	ldr	r3, [fp, #-1044]
	add	r3, r3, #1
	str	r3, [fp, #-1044]
.L126:
	ldr	r3, [fp, #-1044]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-1052]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L128
	ldr	r3, [fp, #-1040]
	cmp	r3, #0
	beq	.L129
	mvn	r3, #0
	b	.L130
.L129:
	mov	r3, #0
.L130:
	ldr	r2, .L132
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L131
	bl	__stack_chk_fail
.L131:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L133:
	.align	2
.L132:
	.word	.LC48
	.word	.LC46
	.word	.LC47
	.word	func.7333
	.size	cleanup_dir, .-cleanup_dir
	.section	.rodata
	.align	2
.LC49:
	.ascii	"mkdir\000"
	.align	2
.LC50:
	.ascii	"\000"
	.align	2
.LC51:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	create_dir, %function
create_dir:
	@ args = 0, pretend = 0, frame = 1048
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1040
	sub	sp, sp, #8
	str	r0, [fp, #-1048]
	str	r1, [fp, #-1052]
	ldr	r3, .L144
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, [fp, #-1048]
	bl	rmdir
	ldr	r1, .L144+4
	ldr	r0, [fp, #-1048]
	bl	mkdir
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L135
	ldr	r1, .L144+8
	ldr	r0, .L144+12
	bl	test_perror
	mvn	r3, #0
	b	.L136
.L135:
	mov	r1, #16384
	ldr	r0, [fp, #-1048]
	bl	check_type
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L137
	mvn	r3, #0
	b	.L136
.L137:
	ldr	r1, .L144+4
	ldr	r0, [fp, #-1048]
	bl	check_mode
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L138
	mvn	r3, #0
	b	.L136
.L138:
	mov	r3, #0
	str	r3, [fp, #-1040]
	b	.L139
.L141:
	ldr	r3, [fp, #-1040]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-1052]
	add	r3, r2, r3
	ldr	r3, [r3]
	sub	r0, fp, #1024
	sub	r0, r0, #4
	sub	r0, r0, #4
	ldr	r2, [fp, #-1048]
	ldr	r1, .L144+16
	bl	sprintf
	sub	r3, fp, #1024
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r2, #0
	ldr	r1, .L144+20
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L140
	mov	r2, #1
	ldr	r1, [fp, #-1052]
	ldr	r0, [fp, #-1048]
	bl	cleanup_dir
	mvn	r3, #0
	b	.L136
.L140:
	ldr	r3, [fp, #-1040]
	add	r3, r3, #1
	str	r3, [fp, #-1040]
.L139:
	ldr	r3, [fp, #-1040]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-1052]
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L141
	ldr	r1, [fp, #-1052]
	ldr	r0, [fp, #-1048]
	bl	check_dir_contents
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L142
	mov	r2, #1
	ldr	r1, [fp, #-1052]
	ldr	r0, [fp, #-1048]
	bl	cleanup_dir
	mvn	r3, #0
	b	.L136
.L142:
	mov	r3, #0
.L136:
	ldr	r2, .L144
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L143
	bl	__stack_chk_fail
.L143:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L145:
	.align	2
.L144:
	.word	.LC51
	.word	493
	.word	.LC49
	.word	func.7345
	.word	.LC46
	.word	.LC50
	.size	create_dir, .-create_dir
	.section	.rodata
	.align	2
.LC52:
	.ascii	"truncate(%u)\000"
	.align	2
.LC53:
	.ascii	"truncate\000"
	.align	2
.LC54:
	.ascii	"testfile\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_truncate, %function
test_truncate:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	ldr	r3, .L156
	str	r3, [fp, #-16]
	ldr	r3, .L156+4
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r1, [fp, #-24]
	ldr	r0, .L156+8
	bl	start_test
	ldr	r3, .L156+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L147
	mvn	r3, #0
	b	.L148
.L147:
	ldr	r3, .L156+12
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	truncate
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L149
	ldr	r1, .L156+16
	ldr	r0, .L156+20
	bl	test_perror
	mvn	r3, #0
	b	.L148
.L149:
	ldr	r3, .L156+12
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L150
	mvn	r3, #0
	b	.L148
.L150:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	ble	.L151
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	bgt	.L152
	ldr	r3, .L156+12
	ldr	r0, [r3]
	ldr	r3, [fp, #-24]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-16]
	ldr	r1, .L156+24
	bl	do_check_data
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L151
	mvn	r3, #0
	b	.L148
.L152:
	ldr	r3, .L156+12
	ldr	r0, [r3]
	ldr	r3, [fp, #-12]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-16]
	ldr	r1, .L156+24
	bl	do_check_data
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L153
	mvn	r3, #0
	b	.L148
.L153:
	ldr	r3, .L156+12
	ldr	r0, [r3]
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	sub	r3, r2, r3
	str	r3, [sp]
	ldr	r3, [fp, #-12]
	ldr	r2, .L156+28
	ldr	r1, .L156+24
	bl	do_check_data
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L151
	mvn	r3, #0
	b	.L148
.L151:
	ldr	r3, .L156+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L154
	ldr	r1, .L156+32
	ldr	r0, .L156+20
	bl	test_perror
	mvn	r3, #0
	b	.L148
.L154:
	ldr	r3, .L156+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L155
	mvn	r3, #0
	b	.L148
.L155:
	bl	success
	mov	r3, #0
.L148:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L157:
	.align	2
.L156:
	.word	testdata
	.word	testdatalen
	.word	.LC52
	.word	testfile
	.word	.LC53
	.word	func.7355
	.word	.LC54
	.word	zerodata
	.word	.LC47
	.size	test_truncate, .-test_truncate
	.section	.rodata
	.align	2
.LC55:
	.ascii	"open(%s) fchmod(0%03o) truncate(%u) errno=%s\000"
	.align	2
.LC56:
	.ascii	"ftruncate(%u) mode=0%03o\000"
	.align	2
.LC57:
	.ascii	"fchmod\000"
	.align	2
.LC58:
	.ascii	"truncate should have failed\000"
	.align	2
.LC59:
	.ascii	"ftruncate\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_ftruncate_common, %function
test_ftruncate_common:
	@ args = 12, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, .L176
	str	r3, [fp, #-20]
	ldr	r3, .L176+4
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	beq	.L159
	ldr	r3, [fp, #12]
	str	r3, [sp]
	ldr	r3, [fp, #-32]
	ldr	r2, [fp, #-36]
	ldr	r1, [fp, #4]
	ldr	r0, .L176+8
	bl	start_test
	ldr	r3, .L176+12
	str	r3, [fp, #-24]
	b	.L160
.L159:
	ldr	r2, [fp, #-36]
	ldr	r1, [fp, #-32]
	ldr	r0, .L176+16
	bl	start_test
	ldr	r3, .L176+20
	str	r3, [fp, #-24]
.L160:
	ldr	r3, .L176+24
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L161
	mvn	r3, #0
	b	.L162
.L161:
	ldr	r3, .L176+24
	ldr	r3, [r3]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	open
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L163
	ldr	r1, .L176+28
	ldr	r0, [fp, #-24]
	bl	test_perror
	mvn	r3, #0
	b	.L162
.L163:
	ldr	r3, [fp, #-36]
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	fchmod
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L164
	ldr	r1, .L176+32
	ldr	r0, [fp, #-24]
	bl	test_perror
	ldr	r0, [fp, #-8]
	bl	close
	mvn	r3, #0
	b	.L162
.L164:
	ldr	r3, .L176+24
	ldr	r3, [r3]
	ldr	r2, [fp, #-36]
	mov	r1, r2
	mov	r0, r3
	bl	check_mode
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L165
	ldr	r0, [fp, #-8]
	bl	close
	mvn	r3, #0
	b	.L162
.L165:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	beq	.L166
	ldr	r3, .L176+24
	ldr	r3, [r3]
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	truncate
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L167
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	ldr	r2, [fp, #8]
	cmp	r2, r3
	beq	.L167
	ldr	r1, .L176+36
	ldr	r0, [fp, #-24]
	bl	test_perror
	ldr	r0, [fp, #-8]
	bl	close
	mvn	r3, #0
	b	.L162
.L167:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L168
	ldr	r3, [fp, #8]
	cmp	r3, #0
	beq	.L168
	ldr	r1, .L176+40
	ldr	r0, [fp, #-24]
	bl	test_error
	ldr	r0, [fp, #-8]
	bl	close
	mvn	r3, #0
	b	.L162
.L168:
	ldr	r3, [fp, #8]
	cmp	r3, #0
	beq	.L169
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-32]
	b	.L169
.L166:
	ldr	r1, [fp, #-32]
	ldr	r0, [fp, #-8]
	bl	ftruncate
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L169
	ldr	r1, .L176+44
	ldr	r0, [fp, #-24]
	bl	test_perror
	ldr	r0, [fp, #-8]
	bl	close
	mvn	r3, #0
	b	.L162
.L169:
	ldr	r0, [fp, #-8]
	bl	close
	ldr	r3, .L176+24
	ldr	r3, [r3]
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L170
	mvn	r3, #0
	b	.L162
.L170:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	ble	.L171
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bgt	.L172
	ldr	r3, .L176+24
	ldr	r0, [r3]
	ldr	r3, [fp, #-32]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-20]
	ldr	r1, .L176+48
	bl	do_check_data
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L171
	mvn	r3, #0
	b	.L162
.L172:
	ldr	r3, .L176+24
	ldr	r0, [r3]
	ldr	r3, [fp, #-16]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-20]
	ldr	r1, .L176+48
	bl	do_check_data
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L173
	mvn	r3, #0
	b	.L162
.L173:
	ldr	r3, .L176+24
	ldr	r0, [r3]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-16]
	sub	r3, r2, r3
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L176+52
	ldr	r1, .L176+48
	bl	do_check_data
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L171
	mvn	r3, #0
	b	.L162
.L171:
	ldr	r3, .L176+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L174
	ldr	r1, .L176+56
	ldr	r0, [fp, #-24]
	bl	test_perror
	mvn	r3, #0
	b	.L162
.L174:
	ldr	r3, .L176+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L175
	mvn	r3, #0
	b	.L162
.L175:
	bl	success
	mov	r3, #0
.L162:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L177:
	.align	2
.L176:
	.word	testdata
	.word	testdatalen
	.word	.LC55
	.word	f2.7370
	.word	.LC56
	.word	f1.7369
	.word	testfile
	.word	.LC24
	.word	.LC57
	.word	.LC53
	.word	.LC58
	.word	.LC59
	.word	.LC54
	.word	zerodata
	.word	.LC47
	.size	test_ftruncate_common, .-test_ftruncate_common
	.section	.rodata
	.align	2
.LC60:
	.ascii	"utime\000"
	.align	2
.LC61:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_utime, %function
test_utime:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	ldr	r3, .L187
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L187+4
	str	r3, [fp, #-28]
	ldr	r3, .L187+8
	str	r3, [fp, #-24]
	ldr	r0, .L187+12
	bl	start_test
	ldr	r3, .L187+16
	ldr	r3, [r3]
	mov	r2, #0
	mov	r1, #0
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L179
	mvn	r3, #0
	b	.L185
.L179:
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-12]
	ldr	r3, .L187+16
	ldr	r3, [r3]
	sub	r2, fp, #16
	mov	r1, r2
	mov	r0, r3
	bl	utime
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L181
	ldr	r1, .L187+12
	ldr	r0, .L187+20
	bl	test_perror
	mvn	r3, #0
	b	.L185
.L181:
	ldr	r3, .L187+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	check_times
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L182
	mvn	r3, #0
	b	.L185
.L182:
	ldr	r3, .L187+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L183
	ldr	r1, .L187+24
	ldr	r0, .L187+20
	bl	test_perror
	mvn	r3, #0
	b	.L185
.L183:
	ldr	r3, .L187+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L184
	mvn	r3, #0
	b	.L185
.L184:
	bl	success
	mov	r3, #0
.L185:
	ldr	r2, .L187
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L186
	bl	__stack_chk_fail
.L186:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L188:
	.align	2
.L187:
	.word	.LC61
	.word	987631200
	.word	123116400
	.word	.LC60
	.word	testfile
	.word	func.7378
	.word	.LC47
	.size	test_utime, .-test_utime
	.section	.rodata
	.align	2
.LC62:
	.ascii	"create\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_create, %function
test_create:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	ldr	r3, .L199
	str	r3, [fp, #-24]
	ldr	r3, .L199+4
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-16]
	ldr	r0, .L199+8
	bl	start_test
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	creat
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L190
	ldr	r1, .L199+16
	ldr	r0, .L199+20
	bl	test_perror
	mvn	r3, #0
	b	.L191
.L190:
	ldr	r3, [fp, #-20]
	mov	r2, r3
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-12]
	bl	write
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L192
	ldr	r1, .L199+24
	ldr	r0, .L199+20
	bl	test_perror
	ldr	r0, [fp, #-12]
	bl	close
	mvn	r3, #0
	b	.L191
.L192:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	beq	.L193
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-8]
	ldr	r1, .L199+28
	ldr	r0, .L199+20
	bl	test_error
	ldr	r0, [fp, #-12]
	bl	close
	mvn	r3, #0
	b	.L191
.L193:
	ldr	r0, [fp, #-12]
	bl	close
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L194
	ldr	r1, .L199+32
	ldr	r0, .L199+20
	bl	test_perror
	mvn	r3, #0
	b	.L191
.L194:
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r1, #32768
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L195
	mvn	r3, #0
	b	.L191
.L195:
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-16]
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-16]
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r3, .L199+12
	ldr	r3, [r3]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	ldr	r3, [fp, #-16]
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r3, .L199+12
	ldr	r0, [r3]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-24]
	ldr	r1, .L199+36
	bl	do_check_data
	mov	r2, r0
	ldr	r3, [fp, #-16]
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L196
	ldr	r1, .L199+40
	ldr	r0, .L199+20
	bl	test_perror
	mvn	r3, #0
	b	.L191
.L196:
	ldr	r3, .L199+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L197
	mvn	r3, #0
	b	.L191
.L197:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L198
	mvn	r3, #0
	b	.L191
.L198:
	bl	success
	mov	r3, #0
.L191:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L200:
	.align	2
.L199:
	.word	testdata
	.word	testdatalen
	.word	.LC62
	.word	testfile
	.word	.LC42
	.word	func.7386
	.word	.LC43
	.word	.LC44
	.word	.LC28
	.word	.LC54
	.word	.LC47
	.size	test_create, .-test_create
	.section	.rodata
	.align	2
.LC63:
	.ascii	"+\000"
	.align	2
.LC64:
	.ascii	"-\000"
	.align	2
.LC65:
	.ascii	"open(%s, %s, 0%03o)\000"
	.align	2
.LC66:
	.ascii	"open should have failed\000"
	.align	2
.LC67:
	.ascii	"write should have failed\000"
	.align	2
.LC68:
	.ascii	"offset should have returned 0\000"
	.align	2
.LC69:
	.ascii	"read is short: %i instead of %u\000"
	.align	2
.LC70:
	.ascii	"read should have failed\000"
	.align	2
.LC71:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_test_open, %function
do_test_open:
	@ args = 0, pretend = 0, frame = 4152
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #4160
	sub	sp, sp, #4
	sub	ip, fp, #4096
	sub	ip, ip, #12
	str	r0, [ip, #-44]
	sub	r0, fp, #4096
	sub	r0, r0, #12
	str	r1, [r0, #-48]
	sub	r1, fp, #4096
	sub	r1, r1, #12
	str	r2, [r1, #-52]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [r2, #-56]
	ldr	r3, .L239
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, .L239+4
	str	r3, [r2, #-28]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	ldr	r3, .L239+8
	ldr	r3, [r3]
	str	r3, [r2, #-24]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-36]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-32]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L202
	ldr	r1, .L239+12
	b	.L203
.L202:
	ldr	r1, .L239+16
.L203:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r3, [r3, #-56]
	ldr	r2, [r2, #-52]
	ldr	r0, .L239+20
	bl	start_test
	ldr	r3, .L239+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L204
	ldr	r3, .L239+24
	ldr	r3, [r3]
	ldr	r2, .L239+28
	ldr	r2, [r2]
	sub	r1, fp, #4096
	sub	r1, r1, #12
	mov	r4, r1
	ldr	r1, .L239+32
	mov	r0, r3
	bl	create_file
	str	r0, [r4, #-20]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	bne	.L205
	mvn	r3, #0
	b	.L234
.L205:
	ldr	r3, .L239+28
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [r2, #-36]
.L204:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r4, r2
	sub	r2, fp, #4096
	sub	r2, r2, #12
	sub	r1, fp, #4096
	sub	r1, r1, #12
	ldr	r2, [r2, #-56]
	ldr	r1, [r1, #-48]
	mov	r0, r3
	bl	open
	str	r0, [r4, #-16]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #64
	cmp	r3, #0
	beq	.L207
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #128
	cmp	r3, #0
	beq	.L207
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L207
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmn	r3, #1
	beq	.L208
	ldr	r1, .L239+36
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	mvn	r3, #0
	b	.L234
.L208:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #17
	beq	.L236
.L207:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #64
	cmp	r3, #0
	bne	.L210
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	bne	.L210
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmn	r3, #1
	beq	.L211
	ldr	r1, .L239+36
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	mvn	r3, #0
	b	.L234
.L211:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L237
.L210:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmn	r3, #1
	bne	.L212
	ldr	r1, .L239+44
	ldr	r0, .L239+40
	bl	test_perror
	mvn	r3, #0
	b	.L234
.L212:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #512
	cmp	r3, #0
	beq	.L213
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-36]
.L213:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	mov	r1, #32768
	mov	r0, r3
	bl	check_type
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L214
	ldr	r3, .L239+24
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	b	.L215
.L214:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-56]
	mov	r1, r2
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
.L215:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	ldr	r3, .L239+24
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-36]
	mov	r1, r2
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L216
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #512
	cmp	r3, #0
	bne	.L216
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-56]
	and	r3, r3, #256
	cmp	r3, #0
	beq	.L216
	ldr	r3, .L239+24
	ldr	r0, [r3]
	ldr	r3, .L239+28
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, .L239+32
	ldr	r1, .L239+48
	bl	do_check_data
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
.L216:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r4, r2
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r1, r2
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r0, r2
	mov	r2, r3
	ldr	r1, [r1, #-28]
	ldr	r0, [r0, #-16]
	bl	write
	str	r0, [r4, #-20]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #3
	cmp	r3, #0
	beq	.L217
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	bne	.L218
	ldr	r1, .L239+52
	ldr	r0, .L239+40
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L219
.L218:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r2, #-20]
	ldr	r3, [r3, #-24]
	cmp	r2, r3
	beq	.L220
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r3, [r3, #-24]
	ldr	r2, [r2, #-20]
	ldr	r1, .L239+56
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L219
.L220:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-36]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-24]
	cmp	r2, r3
	ble	.L221
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	str	r3, [r2, #-36]
.L221:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-36]
	mov	r1, r2
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-56]
	and	r3, r3, #256
	cmp	r3, #0
	beq	.L219
	ldr	r3, .L239+24
	ldr	r0, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [r2, #-28]
	ldr	r1, .L239+48
	bl	do_check_data
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L219
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #512
	cmp	r3, #0
	bne	.L219
	ldr	r3, .L239+28
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-24]
	cmp	r2, r3
	bge	.L219
	ldr	r3, .L239+24
	ldr	r0, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	ldr	r2, .L239+32
	add	r1, r3, r2
	ldr	r3, .L239+28
	ldr	r2, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	sub	r3, r2, r3
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	str	r2, [sp]
	ldr	r3, [r3, #-24]
	mov	r2, r1
	ldr	r1, .L239+48
	bl	do_check_data
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	b	.L219
.L217:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	beq	.L222
	ldr	r1, .L239+60
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L219
.L222:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #9
	beq	.L219
	ldr	r1, .L239+52
	ldr	r0, .L239+40
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
.L219:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, #0
	mov	r1, #0
	ldr	r0, [r3, #-16]
	bl	lseek
	str	r0, [r4, #-12]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmn	r3, #1
	bne	.L223
	ldr	r1, .L239+64
	ldr	r0, .L239+40
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L224
.L223:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmp	r3, #0
	beq	.L224
	ldr	r1, .L239+68
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
.L224:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r0, r2
	mov	r2, #4096
	mov	r1, r3
	ldr	r0, [r0, #-16]
	bl	read
	str	r0, [r4, #-20]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #3
	cmp	r3, #1
	beq	.L225
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	bne	.L226
	ldr	r1, .L239+72
	ldr	r0, .L239+40
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L227
.L226:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-36]
	cmp	r3, #4096
	movcc	r3, r3
	movcs	r3, #4096
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [r2, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r2, #-20]
	ldr	r3, [r3, #-8]
	cmp	r2, r3
	beq	.L228
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r3, [r3, #-8]
	ldr	r2, [r2, #-20]
	ldr	r1, .L239+76
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L227
.L228:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #3
	cmp	r3, #0
	beq	.L229
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r3, #-24]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	ldr	r1, [r1, #-28]
	mov	r0, r3
	bl	check_buffer
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L227
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #512
	cmp	r3, #0
	bne	.L227
	ldr	r3, .L239+28
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	ldr	r2, [r2, #-24]
	cmp	r2, r3
	bge	.L227
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r3, #-24]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	add	r0, r3, r2
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	ldr	r2, .L239+32
	add	r1, r3, r2
	ldr	r3, .L239+28
	ldr	r2, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-24]
	sub	r3, r2, r3
	mov	r2, r3
	bl	check_buffer
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	b	.L227
.L229:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-44]
	cmp	r3, #0
	beq	.L227
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-48]
	and	r3, r3, #512
	cmp	r3, #0
	bne	.L227
	ldr	r3, .L239+28
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	ldr	r1, .L239+32
	mov	r0, r3
	bl	check_buffer
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	add	r3, r2, r3
	str	r3, [r1, #-32]
	b	.L227
.L225:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	beq	.L230
	ldr	r1, .L239+80
	ldr	r0, .L239+40
	bl	test_error
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
	b	.L227
.L230:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #9
	beq	.L227
	ldr	r1, .L239+72
	ldr	r0, .L239+40
	bl	test_perror
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	sub	r3, r3, #1
	str	r3, [r2, #-32]
.L227:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	str	r0, [r4, #-20]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	bne	.L231
	ldr	r1, .L239+84
	ldr	r0, .L239+40
	bl	test_perror
	mvn	r3, #0
	b	.L234
.L231:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r4, r2
	mov	r0, r3
	bl	unlink
	str	r0, [r4, #-20]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	bne	.L232
	ldr	r1, .L239+88
	ldr	r0, .L239+40
	bl	test_perror
	mvn	r3, #0
	b	.L234
.L232:
	ldr	r3, .L239+24
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r4, r2
	mov	r0, r3
	bl	check_nonexist
	str	r0, [r4, #-20]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmn	r3, #1
	bne	.L233
	mvn	r3, #0
	b	.L234
.L233:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-32]
	cmp	r3, #0
	beq	.L238
	mvn	r3, #0
	b	.L234
.L236:
	nop
	b	.L209
.L237:
	nop
	b	.L209
.L238:
	nop
.L209:
	bl	success
	mov	r3, #0
.L234:
	ldr	r2, .L239
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L235
	bl	__stack_chk_fail
.L235:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L240:
	.align	2
.L239:
	.word	.LC71
	.word	testdata
	.word	testdatalen
	.word	.LC63
	.word	.LC64
	.word	.LC65
	.word	testfile
	.word	testdata2len
	.word	testdata2
	.word	.LC66
	.word	func.7398
	.word	.LC24
	.word	.LC54
	.word	.LC43
	.word	.LC44
	.word	.LC67
	.word	.LC25
	.word	.LC68
	.word	.LC26
	.word	.LC69
	.word	.LC70
	.word	.LC28
	.word	.LC47
	.size	do_test_open, .-do_test_open
	.section	.rodata
	.align	2
.LC72:
	.ascii	"open_acc(%s) mode=0%03o errno=%s\000"
	.align	2
.LC73:
	.ascii	"chmod\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_test_open_acc, %function
do_test_open_acc:
	@ args = 4, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, .L251
	str	r3, [fp, #-20]
	ldr	r3, .L251+4
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-28]
	ldr	r0, .L251+8
	bl	start_test
	ldr	r3, .L251+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L251+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L242
	mvn	r3, #0
	b	.L243
.L242:
	ldr	r3, .L251+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	mov	r1, r2
	mov	r0, r3
	bl	chmod
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L244
	ldr	r1, .L251+16
	ldr	r0, .L251+20
	bl	test_perror
	mvn	r3, #0
	b	.L243
.L244:
	ldr	r3, .L251+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	mov	r1, r2
	mov	r0, r3
	bl	check_mode
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L245
	mvn	r3, #0
	b	.L243
.L245:
	ldr	r3, .L251+12
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	open
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L246
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	beq	.L247
	ldr	r1, .L251+24
	ldr	r0, .L251+20
	bl	test_perror
	mvn	r3, #0
	b	.L243
.L247:
	ldr	r3, .L251+12
	ldr	r3, [r3]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L248
	mvn	r3, #0
	b	.L243
.L248:
	ldr	r3, .L251+12
	ldr	r3, [r3]
	mov	r1, #256
	mov	r0, r3
	bl	chmod
	ldr	r3, .L251+12
	ldr	r0, [r3]
	ldr	r3, [fp, #-16]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-20]
	ldr	r1, .L251+28
	bl	do_check_data
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L249
	mvn	r3, #0
	b	.L243
.L246:
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	beq	.L250
	ldr	r1, .L251+32
	ldr	r0, .L251+20
	bl	test_error
	ldr	r0, [fp, #-8]
	bl	close
	mvn	r3, #0
	b	.L243
.L250:
	ldr	r0, [fp, #-8]
	bl	close
	ldr	r3, [fp, #-24]
	and	r3, r3, #512
	cmp	r3, #0
	beq	.L249
	ldr	r3, .L251+12
	ldr	r3, [r3]
	mov	r1, #0
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L249
	mvn	r3, #0
	b	.L243
.L249:
	bl	success
	mov	r3, #0
.L243:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L252:
	.align	2
.L251:
	.word	testdata
	.word	testdatalen
	.word	.LC72
	.word	testfile
	.word	.LC73
	.word	func.7416
	.word	.LC24
	.word	.LC54
	.word	.LC66
	.size	do_test_open_acc, .-do_test_open_acc
	.section	.rodata
	.align	2
.LC74:
	.ascii	"symlink\000"
	.align	2
.LC75:
	.ascii	"readlink\000"
	.align	2
.LC76:
	.ascii	"short readlink: %u instead of %u\000"
	.align	2
.LC77:
	.ascii	"link mismatch\000"
	.align	2
.LC78:
	.ascii	"testfile2\000"
	.align	2
.LC79:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_symlink, %function
test_symlink:
	@ args = 0, pretend = 0, frame = 1048
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1056
	ldr	r3, .L266
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L266+4
	str	r3, [fp, #-1048]
	ldr	r3, .L266+8
	ldr	r3, [r3]
	str	r3, [fp, #-1044]
	ldr	r3, .L266+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	str	r3, [fp, #-1040]
	mov	r3, #0
	str	r3, [fp, #-1052]
	ldr	r0, .L266+16
	bl	start_test
	ldr	r3, .L266+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1044]
	ldr	r1, [fp, #-1048]
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L254
	mvn	r3, #0
	b	.L264
.L254:
	ldr	r3, .L266+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L266+12
	ldr	r3, [r3]
	ldr	r2, .L266+20
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	symlink
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L256
	ldr	r1, .L266+16
	ldr	r0, .L266+24
	bl	test_perror
	mvn	r3, #0
	b	.L264
.L256:
	ldr	r3, .L266+20
	ldr	r3, [r3]
	mov	r1, #40960
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L257
	mvn	r3, #0
	b	.L264
.L257:
	ldr	r3, .L266+20
	ldr	r3, [r3]
	ldr	r1, .L266+28
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-1052]
	add	r3, r3, r2
	str	r3, [fp, #-1052]
	ldr	r3, .L266+20
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-1052]
	add	r3, r3, r2
	str	r3, [fp, #-1052]
	ldr	r3, .L266+20
	ldr	r0, [r3]
	sub	r3, fp, #1024
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r2, #1024
	mov	r1, r3
	bl	readlink
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L258
	ldr	r1, .L266+32
	ldr	r0, .L266+24
	bl	test_perror
	ldr	r3, [fp, #-1052]
	sub	r3, r3, #1
	str	r3, [fp, #-1052]
.L258:
	ldr	r2, [fp, #-1036]
	ldr	r3, [fp, #-1040]
	cmp	r2, r3
	beq	.L259
	ldr	r3, [fp, #-1040]
	ldr	r2, [fp, #-1036]
	ldr	r1, .L266+36
	ldr	r0, .L266+24
	bl	test_error
	ldr	r3, [fp, #-1052]
	sub	r3, r3, #1
	str	r3, [fp, #-1052]
.L259:
	ldr	r3, .L266+12
	ldr	r1, [r3]
	ldr	r2, [fp, #-1040]
	sub	r3, fp, #1024
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	memcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L260
	ldr	r1, .L266+40
	ldr	r0, .L266+24
	bl	test_error
	ldr	r3, [fp, #-1052]
	sub	r3, r3, #1
	str	r3, [fp, #-1052]
.L260:
	ldr	r3, .L266+20
	ldr	r3, [r3]
	ldr	r1, [fp, #-1044]
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	ldr	r3, [fp, #-1052]
	add	r3, r3, r2
	str	r3, [fp, #-1052]
	ldr	r3, .L266+20
	ldr	r0, [r3]
	ldr	r3, [fp, #-1044]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-1048]
	ldr	r1, .L266+44
	bl	do_check_data
	mov	r2, r0
	ldr	r3, [fp, #-1052]
	add	r3, r3, r2
	str	r3, [fp, #-1052]
	ldr	r3, .L266+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L261
	ldr	r1, .L266+48
	ldr	r0, .L266+24
	bl	test_perror
	mvn	r3, #0
	b	.L264
.L261:
	ldr	r3, .L266+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-1036]
	ldr	r3, [fp, #-1036]
	cmn	r3, #1
	bne	.L262
	mvn	r3, #0
	b	.L264
.L262:
	ldr	r3, [fp, #-1052]
	cmp	r3, #0
	beq	.L263
	mvn	r3, #0
	b	.L264
.L263:
	bl	success
	mov	r3, #0
.L264:
	ldr	r2, .L266
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L265
	bl	__stack_chk_fail
.L265:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L267:
	.align	2
.L266:
	.word	.LC79
	.word	testdata
	.word	testdatalen
	.word	testfile
	.word	.LC74
	.word	testfile2
	.word	func.7424
	.word	511
	.word	.LC75
	.word	.LC76
	.word	.LC77
	.word	.LC78
	.word	.LC47
	.size	test_symlink, .-test_symlink
	.section	.rodata
	.align	2
.LC80:
	.ascii	"link\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_link, %function
test_link:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	ldr	r3, .L278
	str	r3, [fp, #-20]
	ldr	r3, .L278+4
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r0, .L278+8
	bl	start_test
	ldr	r3, .L278+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L269
	mvn	r3, #0
	b	.L270
.L269:
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L278+12
	ldr	r3, [r3]
	ldr	r2, .L278+16
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	link
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L271
	ldr	r1, .L278+8
	ldr	r0, .L278+20
	bl	test_perror
	mvn	r3, #0
	b	.L270
.L271:
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r1, #32768
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L272
	mvn	r3, #0
	b	.L270
.L272:
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L278+16
	ldr	r3, [r3]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L278+16
	ldr	r0, [r3]
	ldr	r3, [fp, #-16]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-20]
	ldr	r1, .L278+24
	bl	do_check_data
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L278+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L273
	ldr	r1, .L278+28
	ldr	r0, .L278+20
	bl	test_perror
	mvn	r3, #0
	b	.L270
.L273:
	ldr	r3, .L278+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L274
	mvn	r3, #0
	b	.L270
.L274:
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L275
	ldr	r1, .L278+28
	ldr	r0, .L278+20
	bl	test_perror
	mvn	r3, #0
	b	.L270
.L275:
	ldr	r3, .L278+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L276
	mvn	r3, #0
	b	.L270
.L276:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L277
	mvn	r3, #0
	b	.L270
.L277:
	bl	success
	mov	r3, #0
.L270:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L279:
	.align	2
.L278:
	.word	testdata
	.word	testdatalen
	.word	.LC80
	.word	testfile
	.word	testfile2
	.word	func.7434
	.word	.LC78
	.word	.LC47
	.size	test_link, .-test_link
	.section	.rodata
	.align	2
.LC81:
	.ascii	"rename file\000"
	.align	2
.LC82:
	.ascii	"rename\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_rename_file, %function
test_rename_file:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	ldr	r3, .L289
	str	r3, [fp, #-20]
	ldr	r3, .L289+4
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r0, .L289+8
	bl	start_test
	ldr	r3, .L289+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L281
	mvn	r3, #0
	b	.L282
.L281:
	ldr	r3, .L289+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L289+12
	ldr	r3, [r3]
	ldr	r2, .L289+16
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	rename
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L283
	ldr	r1, .L289+20
	ldr	r0, .L289+24
	bl	test_perror
	mvn	r3, #0
	b	.L282
.L283:
	ldr	r3, .L289+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L284
	mvn	r3, #0
	b	.L282
.L284:
	ldr	r3, .L289+16
	ldr	r3, [r3]
	mov	r1, #32768
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L285
	mvn	r3, #0
	b	.L282
.L285:
	ldr	r3, .L289+16
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L289+16
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L289+16
	ldr	r3, [r3]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L289+16
	ldr	r0, [r3]
	ldr	r3, [fp, #-16]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-20]
	ldr	r1, .L289+28
	bl	do_check_data
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L289+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L286
	ldr	r1, .L289+32
	ldr	r0, .L289+24
	bl	test_perror
	mvn	r3, #0
	b	.L282
.L286:
	ldr	r3, .L289+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L287
	mvn	r3, #0
	b	.L282
.L287:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L288
	mvn	r3, #0
	b	.L282
.L288:
	bl	success
	mov	r3, #0
.L282:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L290:
	.align	2
.L289:
	.word	testdata
	.word	testdatalen
	.word	.LC81
	.word	testfile
	.word	testfile2
	.word	.LC82
	.word	func.7442
	.word	.LC78
	.word	.LC47
	.size	test_rename_file, .-test_rename_file
	.section	.rodata
	.align	2
.LC83:
	.ascii	"rename dir\000"
	.align	2
.LC84:
	.ascii	"rmdir\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_rename_dir, %function
test_rename_dir:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r0, .L300
	bl	start_test
	ldr	r3, .L300+4
	ldr	r3, [r3]
	ldr	r1, .L300+8
	mov	r0, r3
	bl	create_dir
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L292
	mvn	r3, #0
	b	.L293
.L292:
	ldr	r3, .L300+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	rmdir
	ldr	r3, .L300+4
	ldr	r3, [r3]
	ldr	r2, .L300+12
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	rename
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L294
	ldr	r1, .L300+16
	ldr	r0, .L300+20
	bl	test_perror
	ldr	r3, .L300+4
	ldr	r3, [r3]
	mov	r2, #1
	ldr	r1, .L300+8
	mov	r0, r3
	bl	cleanup_dir
	mvn	r3, #0
	b	.L293
.L294:
	ldr	r3, .L300+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L295
	ldr	r3, .L300+4
	ldr	r3, [r3]
	mov	r2, #1
	ldr	r1, .L300+8
	mov	r0, r3
	bl	cleanup_dir
	mvn	r3, #0
	b	.L293
.L295:
	ldr	r3, .L300+12
	ldr	r3, [r3]
	mov	r1, #16384
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L296
	ldr	r3, .L300+12
	ldr	r3, [r3]
	mov	r2, #1
	ldr	r1, .L300+8
	mov	r0, r3
	bl	cleanup_dir
	mvn	r3, #0
	b	.L293
.L296:
	ldr	r3, .L300+12
	ldr	r3, [r3]
	ldr	r1, .L300+24
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L300+12
	ldr	r3, [r3]
	ldr	r1, .L300+8
	mov	r0, r3
	bl	check_dir_contents
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L300+12
	ldr	r3, [r3]
	mov	r2, #0
	ldr	r1, .L300+8
	mov	r0, r3
	bl	cleanup_dir
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L300+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	rmdir
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L297
	ldr	r1, .L300+28
	ldr	r0, .L300+20
	bl	test_perror
	mvn	r3, #0
	b	.L293
.L297:
	ldr	r3, .L300+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L298
	mvn	r3, #0
	b	.L293
.L298:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L299
	mvn	r3, #0
	b	.L293
.L299:
	bl	success
	mov	r3, #0
.L293:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L301:
	.align	2
.L300:
	.word	.LC83
	.word	testdir
	.word	testdir_files
	.word	testdir2
	.word	.LC82
	.word	func.7450
	.word	493
	.word	.LC84
	.size	test_rename_dir, .-test_rename_dir
	.section	.rodata
	.align	2
.LC85:
	.ascii	"mkfifo\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_mkfifo, %function
test_mkfifo:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r0, .L309
	bl	start_test
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	mkfifo
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L303
	ldr	r1, .L309
	ldr	r0, .L309+8
	bl	test_perror
	mvn	r3, #0
	b	.L304
.L303:
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r1, #4096
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L305
	mvn	r3, #0
	b	.L304
.L305:
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r1, #420
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-12]
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L306
	ldr	r1, .L309+12
	ldr	r0, .L309+8
	bl	test_perror
	mvn	r3, #0
	b	.L304
.L306:
	ldr	r3, .L309+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L307
	mvn	r3, #0
	b	.L304
.L307:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L308
	mvn	r3, #0
	b	.L304
.L308:
	bl	success
	mov	r3, #0
.L304:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L310:
	.align	2
.L309:
	.word	.LC85
	.word	testfile
	.word	func.7456
	.word	.LC47
	.size	test_mkfifo, .-test_mkfifo
	.section	.rodata
	.align	2
.LC86:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_mkdir, %function
test_mkdir:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L320
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r0, .L320+4
	bl	start_test
	ldr	r3, .L320+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	rmdir
	ldr	r3, .L320+8
	ldr	r3, [r3]
	ldr	r1, .L320+12
	mov	r0, r3
	bl	mkdir
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L312
	ldr	r1, .L320+4
	ldr	r0, .L320+16
	bl	test_perror
	mvn	r3, #0
	b	.L318
.L312:
	ldr	r3, .L320+8
	ldr	r3, [r3]
	mov	r1, #16384
	mov	r0, r3
	bl	check_type
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L314
	mvn	r3, #0
	b	.L318
.L314:
	ldr	r3, .L320+8
	ldr	r3, [r3]
	ldr	r1, .L320+12
	mov	r0, r3
	bl	check_mode
	mov	r2, r0
	ldr	r3, [fp, #-20]
	add	r3, r3, r2
	str	r3, [fp, #-20]
	ldr	r3, .L320+8
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-20]
	add	r3, r3, r2
	str	r3, [fp, #-20]
	ldr	r3, .L320+8
	ldr	r3, [r3]
	sub	r2, fp, #12
	mov	r1, r2
	mov	r0, r3
	bl	check_dir_contents
	mov	r2, r0
	ldr	r3, [fp, #-20]
	add	r3, r3, r2
	str	r3, [fp, #-20]
	ldr	r3, .L320+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	rmdir
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L315
	ldr	r1, .L320+20
	ldr	r0, .L320+16
	bl	test_perror
	mvn	r3, #0
	b	.L318
.L315:
	ldr	r3, .L320+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L316
	mvn	r3, #0
	b	.L318
.L316:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L317
	mvn	r3, #0
	b	.L318
.L317:
	bl	success
	mov	r3, #0
.L318:
	ldr	r2, .L320
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L319
	bl	__stack_chk_fail
.L319:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L321:
	.align	2
.L320:
	.word	.LC86
	.word	.LC49
	.word	testdir
	.word	493
	.word	func.7462
	.word	.LC84
	.size	test_mkdir, .-test_mkdir
	.section	.rodata
	.align	2
.LC87:
	.ascii	"mmap(%s, %s)\000"
	.align	2
.LC88:
	.ascii	"mmap\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_test_mmap, %function
do_test_mmap:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	mov	r3, #0
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r2, [fp, #-44]
	ldr	r1, [fp, #-36]
	ldr	r0, .L330
	bl	start_test
	ldr	r3, .L330+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L330+4
	ldr	r3, [r3]
	ldr	r2, .L330+8
	ldr	r2, [r2]
	ldr	r1, .L330+12
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L323
	mvn	r3, #0
	b	.L324
.L323:
	ldr	r3, .L330+8
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldr	r3, .L330+4
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	open
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L325
	ldr	r1, .L330+16
	ldr	r0, .L330+20
	bl	test_perror
	mvn	r3, #0
	b	.L324
.L325:
	mov	r3, #0
	str	r3, [sp, #4]
	ldr	r3, [fp, #-12]
	str	r3, [sp]
	ldr	r3, [fp, #-40]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-20]
	mov	r0, #0
	bl	mmap
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-12]
	bl	close
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L326
	ldr	r1, .L330+24
	ldr	r0, .L330+20
	bl	test_perror
	mvn	r3, #0
	b	.L324
.L326:
	ldr	r3, [fp, #-32]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L327
	ldr	r2, [fp, #-20]
	ldr	r1, .L330+12
	ldr	r0, [fp, #-8]
	bl	check_buffer
	mov	r2, r0
	ldr	r3, [fp, #-24]
	add	r3, r3, r2
	str	r3, [fp, #-24]
.L327:
	ldr	r3, [fp, #-32]
	and	r3, r3, #2
	cmp	r3, #0
	beq	.L328
	ldr	r2, [fp, #-20]
	ldr	r1, .L330+28
	ldr	r0, [fp, #-8]
	bl	memcpy
	ldr	r2, [fp, #-20]
	ldr	r1, .L330+28
	ldr	r0, [fp, #-8]
	bl	check_buffer
	mov	r2, r0
	ldr	r3, [fp, #-24]
	add	r3, r3, r2
	str	r3, [fp, #-24]
.L328:
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-8]
	bl	munmap
	ldr	r3, .L330+4
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_nlink
	mov	r2, r0
	ldr	r3, [fp, #-24]
	add	r3, r3, r2
	str	r3, [fp, #-24]
	ldr	r3, .L330+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	mov	r1, r2
	mov	r0, r3
	bl	check_size
	mov	r2, r0
	ldr	r3, [fp, #-24]
	add	r3, r3, r2
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L329
	mvn	r3, #0
	b	.L324
.L329:
	bl	success
	mov	r3, #0
.L324:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L331:
	.align	2
.L330:
	.word	.LC87
	.word	testfile
	.word	testdata2len
	.word	testdata2
	.word	.LC24
	.word	func.7472
	.word	.LC88
	.word	testdata3.7478
	.size	do_test_mmap, .-do_test_mmap
	.section	.rodata
	.align	2
.LC89:
	.ascii	"seek_EOF offset=%d\000"
	.align	2
.LC90:
	.ascii	"cannot write correctly\000"
	.align	2
.LC91:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_seek_eof, %function
test_seek_eof:
	@ args = 0, pretend = 0, frame = 2072
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #2064
	sub	sp, sp, #8
	str	r0, [fp, #-2072]
	ldr	r3, .L340
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r1, [fp, #-2072]
	ldr	r0, .L340+4
	bl	start_test
	ldr	r3, .L340+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L340+8
	ldr	r3, [r3]
	mov	r2, #420
	mov	r1, #66
	mov	r0, r3
	bl	open
	str	r0, [fp, #-2064]
	ldr	r3, [fp, #-2064]
	cmn	r3, #1
	bne	.L333
	ldr	r1, .L340+12
	ldr	r0, .L340+16
	bl	test_perror
	mvn	r3, #0
	b	.L338
.L333:
	mov	r3, #0
	str	r3, [fp, #-2068]
	b	.L335
.L336:
	ldr	r3, [fp, #-2068]
	and	r1, r3, #255
	sub	r3, fp, #2048
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r2, [fp, #-2068]
	add	r3, r3, r2
	mov	r2, r1
	strb	r2, [r3]
	ldr	r3, [fp, #-2068]
	add	r3, r3, #1
	str	r3, [fp, #-2068]
.L335:
	ldr	r3, [fp, #-2068]
	cmp	r3, #1024
	blt	.L336
	ldr	r3, [fp, #-2072]
	sub	r3, r3, #2
	sub	r1, fp, #2048
	sub	r1, r1, #4
	sub	r1, r1, #4
	mov	r2, #1
	ldr	r0, [fp, #-2064]
	bl	pwrite
	ldr	r3, [fp, #-2072]
	sub	r3, r3, #2
	sub	r1, fp, #1024
	sub	r1, r1, #4
	sub	r1, r1, #4
	mov	r2, #2
	ldr	r0, [fp, #-2064]
	bl	pread
	ldr	r3, [fp, #-2072]
	sub	r3, r3, #1
	sub	r1, fp, #2048
	sub	r1, r1, #4
	sub	r1, r1, #4
	mov	r2, #1
	ldr	r0, [fp, #-2064]
	bl	pwrite
	sub	r1, fp, #2048
	sub	r1, r1, #4
	sub	r1, r1, #4
	ldr	r3, [fp, #-2072]
	mov	r2, #2
	ldr	r0, [fp, #-2064]
	bl	pwrite
	sub	r1, fp, #1024
	sub	r1, r1, #4
	sub	r1, r1, #4
	ldr	r3, [fp, #-2072]
	mov	r2, #1024
	ldr	r0, [fp, #-2064]
	bl	pread
	str	r0, [fp, #-2060]
	ldr	r3, [fp, #-2060]
	cmp	r3, #2
	beq	.L337
	ldr	r1, .L340+20
	ldr	r0, .L340+16
	bl	test_error
	mvn	r3, #0
	b	.L338
.L337:
	bl	success
	mov	r3, #0
.L338:
	ldr	r2, .L340
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L339
	bl	__stack_chk_fail
.L339:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L341:
	.align	2
.L340:
	.word	.LC91
	.word	.LC89
	.word	testfile
	.word	.LC24
	.word	func.7482
	.word	.LC90
	.size	test_seek_eof, .-test_seek_eof
	.section	.rodata
	.align	2
.LC92:
	.ascii	"open size\000"
	.align	2
.LC93:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_open_size, %function
test_open_size:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L352
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #48
	strb	r3, [fp, #-17]
	ldr	r0, .L352+4
	bl	start_test
	ldr	r3, .L352+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L352+8
	ldr	r3, [r3]
	ldr	r2, .L352+12
	ldr	r2, [r2]
	ldr	r1, .L352+16
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L343
	mvn	r3, #0
	b	.L350
.L343:
	ldr	r3, .L352+8
	ldr	r3, [r3]
	mov	r2, #384
	ldr	r1, .L352+20
	mov	r0, r3
	bl	open
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L345
	ldr	r1, .L352+24
	ldr	r0, .L352+28
	bl	test_perror
	mvn	r3, #0
	b	.L350
.L345:
	ldr	r3, .L352+8
	ldr	r3, [r3]
	mov	r1, #0
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L346
	mvn	r3, #0
	b	.L350
.L346:
	sub	r3, fp, #17
	mov	r2, #1
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	write
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L347
	ldr	r1, .L352+32
	ldr	r0, .L352+28
	bl	test_perror
	mvn	r3, #0
	b	.L350
.L347:
	ldr	r3, .L352+8
	ldr	r3, [r3]
	mov	r1, #1
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L348
	mvn	r3, #0
	b	.L350
.L348:
	mov	r2, #0
	mov	r1, #65536
	ldr	r0, [fp, #-12]
	bl	lseek
	sub	r3, fp, #17
	mov	r2, #1
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	write
	str	r0, [fp, #-16]
	ldr	r3, .L352+8
	ldr	r3, [r3]
	ldr	r1, .L352+36
	mov	r0, r3
	bl	check_size
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L349
	mvn	r3, #0
	b	.L350
.L349:
	ldr	r0, [fp, #-12]
	bl	close
	bl	success
	mov	r3, #0
.L350:
	ldr	r2, .L352
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L351
	bl	__stack_chk_fail
.L351:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L353:
	.align	2
.L352:
	.word	.LC93
	.word	.LC92
	.word	testfile
	.word	testdatalen
	.word	testdata
	.word	578
	.word	.LC24
	.word	func.7493
	.word	.LC43
	.word	65537
	.size	test_open_size, .-test_open_size
	.section	.rodata
	.align	2
.LC94:
	.ascii	"open rename utime close\000"
	.align	2
.LC95:
	.ascii	"open_1\000"
	.align	2
.LC96:
	.ascii	"open_2\000"
	.align	2
.LC97:
	.ascii	"utime_1\000"
	.align	2
.LC98:
	.ascii	"utime_2\000"
	.align	2
.LC99:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_open_rename, %function
test_open_rename:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	ldr	r3, .L368
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-40]
	ldr	r3, .L368+4
	str	r3, [fp, #-36]
	ldr	r3, .L368+8
	str	r3, [fp, #-32]
	ldr	r0, .L368+12
	bl	start_test
	ldr	r3, .L368+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L368+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L368+16
	ldr	r3, [r3]
	ldr	r2, .L368+24
	ldr	r2, [r2]
	ldr	r1, .L368+28
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L355
	mvn	r3, #0
	b	.L366
.L355:
	ldr	r3, .L368+16
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	open
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmn	r3, #1
	bne	.L357
	ldr	r1, .L368+32
	ldr	r0, .L368+36
	bl	test_perror
	mvn	r3, #0
	b	.L366
.L357:
	ldr	r3, .L368+16
	ldr	r3, [r3]
	ldr	r2, .L368+20
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	rename
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L358
	ldr	r1, .L368+40
	ldr	r0, .L368+36
	bl	test_perror
	ldr	r0, [fp, #-24]
	bl	close
	mvn	r3, #0
	b	.L366
.L358:
	ldr	r3, .L368+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L359
	mvn	r3, #0
	b	.L366
.L359:
	ldr	r3, .L368+16
	ldr	r3, [r3]
	mov	r2, #384
	mov	r1, #194
	mov	r0, r3
	bl	open
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L360
	ldr	r1, .L368+44
	ldr	r0, .L368+36
	bl	test_perror
	ldr	r0, [fp, #-24]
	bl	close
	mvn	r3, #0
	b	.L366
.L360:
	ldr	r3, .L368+48
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L368+52
	ldr	r0, [fp, #-20]
	bl	write
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L361
	ldr	r1, .L368+56
	ldr	r0, .L368+36
	bl	test_perror
	ldr	r3, [fp, #-40]
	sub	r3, r3, #1
	str	r3, [fp, #-40]
	b	.L362
.L361:
	ldr	r3, .L368+48
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	cmp	r2, r3
	beq	.L362
	ldr	r3, .L368+48
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	ldr	r1, .L368+60
	ldr	r0, .L368+36
	bl	test_error
	ldr	r3, [fp, #-40]
	sub	r3, r3, #1
	str	r3, [fp, #-40]
.L362:
	ldr	r3, [fp, #-36]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-12]
	ldr	r3, .L368+16
	ldr	r3, [r3]
	sub	r2, fp, #16
	mov	r1, r2
	mov	r0, r3
	bl	utime
	str	r0, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L363
	ldr	r1, .L368+64
	ldr	r0, .L368+36
	bl	test_perror
	ldr	r3, [fp, #-40]
	sub	r3, r3, #1
	str	r3, [fp, #-40]
.L363:
	ldr	r3, .L368+20
	ldr	r3, [r3]
	sub	r2, fp, #16
	mov	r1, r2
	mov	r0, r3
	bl	utime
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L364
	ldr	r1, .L368+68
	ldr	r0, .L368+36
	bl	test_perror
	ldr	r3, [fp, #-40]
	sub	r3, r3, #1
	str	r3, [fp, #-40]
.L364:
	ldr	r0, [fp, #-24]
	bl	close
	ldr	r0, [fp, #-20]
	bl	close
	ldr	r3, .L368+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-36]
	mov	r0, r3
	bl	check_times
	mov	r2, r0
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	str	r3, [fp, #-40]
	ldr	r3, .L368+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-36]
	mov	r0, r3
	bl	check_times
	mov	r2, r0
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	str	r3, [fp, #-40]
	ldr	r3, .L368+16
	ldr	r0, [r3]
	ldr	r3, .L368+48
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, .L368+52
	ldr	r1, .L368+72
	bl	do_check_data
	mov	r2, r0
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	str	r3, [fp, #-40]
	ldr	r3, .L368+20
	ldr	r0, [r3]
	ldr	r3, .L368+24
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, .L368+28
	ldr	r1, .L368+76
	bl	do_check_data
	mov	r2, r0
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	beq	.L365
	mvn	r3, #0
	b	.L366
.L365:
	bl	success
	mov	r3, #0
.L366:
	ldr	r2, .L368
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L367
	bl	__stack_chk_fail
.L367:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L369:
	.align	2
.L368:
	.word	.LC99
	.word	987631200
	.word	123116400
	.word	.LC94
	.word	testfile
	.word	testfile2
	.word	testdatalen
	.word	testdata
	.word	.LC95
	.word	func.7499
	.word	.LC82
	.word	.LC96
	.word	testdata2len
	.word	testdata2
	.word	.LC43
	.word	.LC44
	.word	.LC97
	.word	.LC98
	.word	.LC54
	.word	.LC78
	.size	test_open_rename, .-test_open_rename
	.section	.rodata
	.align	2
.LC100:
	.ascii	"open unlink close\000"
	.align	2
.LC101:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_open_unlink, %function
test_open_unlink:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L380
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #48
	strb	r3, [fp, #-17]
	ldr	r0, .L380+4
	bl	start_test
	ldr	r3, .L380+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L380+8
	ldr	r3, [r3]
	ldr	r2, .L380+12
	ldr	r2, [r2]
	ldr	r1, .L380+16
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L371
	mvn	r3, #0
	b	.L378
.L371:
	ldr	r3, .L380+8
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	open
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L373
	ldr	r1, .L380+20
	ldr	r0, .L380+24
	bl	test_perror
	mvn	r3, #0
	b	.L378
.L373:
	ldr	r3, .L380+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L374
	ldr	r1, .L380+28
	ldr	r0, .L380+24
	bl	test_perror
	ldr	r0, [fp, #-12]
	bl	close
	mvn	r3, #0
	b	.L378
.L374:
	sub	r3, fp, #17
	mov	r2, #1
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	write
	ldr	r3, .L380+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L375
	mvn	r3, #0
	b	.L378
.L375:
	mov	r1, #448
	ldr	r0, [fp, #-12]
	bl	fchmod
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L376
	ldr	r1, .L380+32
	ldr	r0, .L380+24
	bl	test_perror
.L376:
	ldr	r0, [fp, #-12]
	bl	close
	ldr	r3, .L380+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	check_nonexist
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L377
	mvn	r3, #0
	b	.L378
.L377:
	bl	success
	mov	r3, #0
.L378:
	ldr	r2, .L380
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L379
	bl	__stack_chk_fail
.L379:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L381:
	.align	2
.L380:
	.word	.LC101
	.word	.LC100
	.word	testfile
	.word	testdatalen
	.word	testdata
	.word	.LC24
	.word	func.7509
	.word	.LC47
	.word	.LC57
	.size	test_open_unlink, .-test_open_unlink
	.section	.rodata
	.align	2
.LC102:
	.ascii	"open utime close\000"
	.align	2
.LC103:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_open_utime, %function
test_open_utime:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	ldr	r3, .L391
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #48
	strb	r3, [fp, #-33]
	ldr	r3, .L391+4
	str	r3, [fp, #-32]
	ldr	r3, .L391+8
	str	r3, [fp, #-28]
	ldr	r0, .L391+12
	bl	start_test
	ldr	r3, .L391+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L391+16
	ldr	r3, [r3]
	ldr	r2, .L391+20
	ldr	r2, [r2]
	ldr	r1, .L391+24
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmn	r3, #1
	bne	.L383
	mvn	r3, #0
	b	.L389
.L383:
	ldr	r3, .L391+16
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	open
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L385
	ldr	r1, .L391+28
	ldr	r0, .L391+32
	bl	test_perror
	mvn	r3, #0
	b	.L389
.L385:
	sub	r3, fp, #33
	mov	r2, #1
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	write
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-12]
	ldr	r3, .L391+16
	ldr	r3, [r3]
	sub	r2, fp, #16
	mov	r1, r2
	mov	r0, r3
	bl	utime
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmn	r3, #1
	bne	.L386
	ldr	r1, .L391+36
	ldr	r0, .L391+32
	bl	test_perror
	ldr	r0, [fp, #-20]
	bl	close
	mvn	r3, #0
	b	.L389
.L386:
	ldr	r3, .L391+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	check_times
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmn	r3, #1
	bne	.L387
	mvn	r3, #0
	b	.L389
.L387:
	ldr	r0, [fp, #-20]
	bl	close
	ldr	r3, .L391+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	check_times
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmn	r3, #1
	bne	.L388
	mvn	r3, #0
	b	.L389
.L388:
	bl	success
	mov	r3, #0
.L389:
	ldr	r2, .L391
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L390
	bl	__stack_chk_fail
.L390:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L392:
	.align	2
.L391:
	.word	.LC103
	.word	987631200
	.word	123116400
	.word	.LC102
	.word	testfile
	.word	testdatalen
	.word	testdata
	.word	.LC24
	.word	func.7515
	.word	.LC60
	.size	test_open_utime, .-test_open_utime
	.section	.rodata
	.align	2
.LC104:
	.ascii	"chmod(0%o) open chmod(0%o) close\000"
	.align	2
.LC105:
	.ascii	"chmod_1\000"
	.align	2
.LC106:
	.ascii	"chmod_2\000"
	.align	2
.LC107:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_open_chmod, %function
test_open_chmod:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, .L404
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #48
	strb	r3, [fp, #-17]
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-24]
	ldr	r0, .L404+4
	bl	start_test
	ldr	r3, .L404+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L404+8
	ldr	r3, [r3]
	ldr	r2, .L404+12
	ldr	r2, [r2]
	ldr	r1, .L404+16
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L394
	mvn	r3, #0
	b	.L402
.L394:
	ldr	r3, .L404+8
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	chmod
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L396
	ldr	r1, .L404+20
	ldr	r0, .L404+24
	bl	test_perror
	mvn	r3, #0
	b	.L402
.L396:
	ldr	r3, .L404+8
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	check_mode
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L397
	mvn	r3, #0
	b	.L402
.L397:
	ldr	r3, .L404+8
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	open
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L398
	ldr	r1, .L404+28
	ldr	r0, .L404+24
	bl	test_perror
	mvn	r3, #0
	b	.L402
.L398:
	sub	r3, fp, #17
	mov	r2, #1
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	write
	ldr	r3, .L404+8
	ldr	r3, [r3]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	chmod
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L399
	ldr	r1, .L404+32
	ldr	r0, .L404+24
	bl	test_perror
	ldr	r0, [fp, #-12]
	bl	close
	mvn	r3, #0
	b	.L402
.L399:
	ldr	r3, .L404+8
	ldr	r3, [r3]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	check_mode
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-12]
	bl	close
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L400
	mvn	r3, #0
	b	.L402
.L400:
	ldr	r3, .L404+8
	ldr	r3, [r3]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	check_mode
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L401
	mvn	r3, #0
	b	.L402
.L401:
	bl	success
	mov	r3, #0
.L402:
	ldr	r2, .L404
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L403
	bl	__stack_chk_fail
.L403:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L405:
	.align	2
.L404:
	.word	.LC107
	.word	.LC104
	.word	testfile
	.word	testdatalen
	.word	testdata
	.word	.LC105
	.word	func.7526
	.word	.LC24
	.word	.LC106
	.size	test_open_chmod, .-test_open_chmod
	.section	.rodata
	.align	2
.LC108:
	.ascii	"creat(%s) open(%s)\000"
	.align	2
.LC109:
	.ascii	"open(%s) open(%s)\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_test_open_open, %function
do_test_open_open:
	@ args = 4, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, .L415
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L407
	ldr	r2, [fp, #4]
	ldr	r1, [fp, #-32]
	ldr	r0, .L415+4
	bl	start_test
	ldr	r3, .L415
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	orr	r3, r3, #64
	mov	r2, #420
	mov	r1, r3
	bl	open
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L408
	ldr	r1, .L415+8
	ldr	r0, .L415+12
	bl	test_perror
	mvn	r3, #0
	b	.L409
.L408:
	ldr	r3, .L415+16
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L415+20
	ldr	r0, [fp, #-16]
	bl	write
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L410
	ldr	r1, .L415+24
	ldr	r0, .L415+12
	bl	test_perror
	ldr	r0, [fp, #-16]
	bl	close
	mvn	r3, #0
	b	.L409
.L410:
	ldr	r3, .L415+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	beq	.L411
	ldr	r3, .L415+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	ldr	r1, .L415+28
	ldr	r0, .L415+12
	bl	test_error
	ldr	r0, [fp, #-16]
	bl	close
	mvn	r3, #0
	b	.L409
.L407:
	ldr	r2, [fp, #4]
	ldr	r1, [fp, #-32]
	ldr	r0, .L415+32
	bl	start_test
	ldr	r3, .L415
	ldr	r3, [r3]
	ldr	r2, .L415+16
	ldr	r2, [r2]
	ldr	r1, .L415+20
	mov	r0, r3
	bl	create_file
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L412
	mvn	r3, #0
	b	.L409
.L412:
	ldr	r3, .L415
	ldr	r3, [r3]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	open
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmn	r3, #1
	bne	.L411
	ldr	r1, .L415+8
	ldr	r0, .L415+12
	bl	test_perror
	mvn	r3, #0
	b	.L409
.L411:
	ldr	r3, .L415
	ldr	r3, [r3]
	ldr	r1, [fp, #-36]
	mov	r0, r3
	bl	open
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L413
	ldr	r1, .L415+36
	ldr	r0, .L415+12
	bl	test_perror
	ldr	r0, [fp, #-16]
	bl	close
	mvn	r3, #0
	b	.L409
.L413:
	ldr	r0, [fp, #-16]
	bl	close
	ldr	r0, [fp, #-8]
	bl	close
	ldr	r3, .L415
	ldr	r0, [r3]
	ldr	r3, .L415+16
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, .L415+20
	ldr	r1, .L415+40
	bl	do_check_data
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L414
	mvn	r3, #0
	b	.L409
.L414:
	bl	success
	mov	r3, #0
.L409:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L416:
	.align	2
.L415:
	.word	testfile
	.word	.LC108
	.word	.LC95
	.word	func.7537
	.word	testdatalen
	.word	testdata
	.word	.LC43
	.word	.LC44
	.word	.LC109
	.word	.LC96
	.word	.LC54
	.size	do_test_open_open, .-do_test_open_open
	.section	.rodata
	.align	2
.LC110:
	.ascii	"%s_%s_%s\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	filename_set, %function
filename_set:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r0, [fp, #-28]
	bl	strlen
	mov	r4, r0
	ldr	r0, [fp, #-32]
	bl	strlen
	mov	r3, r0
	add	r4, r4, r3
	ldr	r0, [fp, #-36]
	bl	strlen
	mov	r3, r0
	add	r3, r4, r3
	lsl	r3, r3, #2
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L418
	mov	r0, #1
	bl	exit
.L418:
	ldr	r3, [fp, #-24]
	ldr	r0, [r3]
	ldr	r3, [fp, #-36]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-32]
	str	r3, [sp]
	ldr	r3, [fp, #-28]
	ldr	r2, .L419
	ldr	r1, [fp, #-16]
	bl	snprintf
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L420:
	.align	2
.L419:
	.word	.LC110
	.size	filename_set, .-filename_set
	.section	.rodata
	.align	2
.LC111:
	.ascii	"tmp\000"
	.align	2
.LC112:
	.ascii	"%d\000"
	.align	2
.LC113:
	.ascii	"./__testfile1\000"
	.align	2
.LC114:
	.ascii	"./__testfile2\000"
	.align	2
.LC115:
	.ascii	"./__testdir1\000"
	.align	2
.LC116:
	.ascii	"./__testdir2\000"
	.align	2
.LC117:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_initialize, %function
test_initialize:
	@ args = 0, pretend = 0, frame = 88
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #88
	ldr	r3, .L424
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #72
	mov	r1, #64
	mov	r0, r3
	bl	gethostname
	str	r0, [fp, #-92]
	ldr	r3, [fp, #-92]
	cmn	r3, #1
	bne	.L422
	sub	r3, fp, #72
	ldr	r2, .L424+4
	mov	r1, #64
	mov	r0, r3
	bl	snprintf
.L422:
	bl	getpid
	mov	r3, r0
	sub	r0, fp, #88
	ldr	r2, .L424+8
	mov	r1, #16
	bl	snprintf
	sub	r3, fp, #88
	sub	r2, fp, #72
	ldr	r1, .L424+12
	ldr	r0, .L424+16
	bl	filename_set
	sub	r3, fp, #88
	sub	r2, fp, #72
	ldr	r1, .L424+20
	ldr	r0, .L424+24
	bl	filename_set
	sub	r3, fp, #88
	sub	r2, fp, #72
	ldr	r1, .L424+28
	ldr	r0, .L424+32
	bl	filename_set
	sub	r3, fp, #88
	sub	r2, fp, #72
	ldr	r1, .L424+36
	ldr	r0, .L424+40
	bl	filename_set
	nop
	ldr	r3, .L424
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L423
	bl	__stack_chk_fail
.L423:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L425:
	.align	2
.L424:
	.word	.LC117
	.word	.LC111
	.word	.LC112
	.word	.LC113
	.word	testfile
	.word	.LC114
	.word	testfile2
	.word	.LC115
	.word	testdir
	.word	.LC116
	.word	testdir2
	.size	test_initialize, .-test_initialize
	.section	.rodata
	.align	2
.LC118:
	.ascii	"%i tests failed\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_finalize, %function
test_finalize:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, .L429
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L429+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	unlink
	ldr	r3, .L429+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	rmdir
	ldr	r3, .L429+12
	ldr	r3, [r3]
	mov	r0, r3
	bl	rmdir
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L427
	ldr	r3, .L429+16
	ldr	r0, [r3]
	ldr	r3, [fp, #-8]
	rsb	r3, r3, #0
	mov	r2, r3
	ldr	r1, .L429+20
	bl	fprintf
	mov	r3, #1
	b	.L428
.L427:
	mov	r3, #0
.L428:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L430:
	.align	2
.L429:
	.word	testfile
	.word	testfile2
	.word	testdir
	.word	testdir2
	.word	stdout
	.word	.LC118
	.size	test_finalize, .-test_finalize
	.section	.rodata
	.align	2
.LC119:
	.ascii	"canceled\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	signal_exit, %function
signal_exit:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r0, #0
	bl	test_finalize
	str	r0, [fp, #-8]
	ldr	r3, .L432
	ldr	r3, [r3]
	mov	r2, #9
	mov	r1, #1
	ldr	r0, .L432+4
	bl	fwrite
	ldr	r0, [fp, #-8]
	bl	exit
.L433:
	.align	2
.L432:
	.word	stderr
	.word	.LC119
	.size	signal_exit, .-signal_exit
	.section	.rodata
	.align	2
.LC120:
	.ascii	"usage: %s [-m] testdir\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	usage, %function
usage:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, .L435
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	ldr	r1, .L435+4
	mov	r0, r3
	bl	fprintf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L436:
	.align	2
.L435:
	.word	stderr
	.word	.LC120
	.size	usage, .-usage
	.section	.rodata
	.align	2
.LC121:
	.ascii	"m\000"
	.align	2
.LC122:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 168
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #168
	str	r0, [fp, #-168]
	str	r1, [fp, #-172]
	ldr	r3, .L445
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-160]
	ldr	r3, [fp, #-172]
	ldr	r3, [r3]
	str	r3, [fp, #-156]
	mov	r3, #0
	str	r3, [fp, #-152]
	b	.L438
.L444:
	mov	r3, #1
	str	r3, [fp, #-152]
	b	.L438
.L439:
	ldr	r0, [fp, #-156]
	bl	usage
	mov	r3, #1
	ldr	r2, .L445
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L442
	b	.L443
.L438:
	ldr	r2, .L445+4
	ldr	r1, [fp, #-172]
	ldr	r0, [fp, #-168]
	bl	getopt
	mov	r3, r0
	strb	r3, [fp, #-161]
	ldrb	r3, [fp, #-161]	@ zero_extendqisi2
	cmp	r3, #109
	bne	.L439
	b	.L444
.L443:
	bl	__stack_chk_fail
.L442:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L446:
	.align	2
.L445:
	.word	.LC122
	.word	.LC121
	.size	main, .-main
	.data
	.align	2
	.type	func.7236, %object
	.size	func.7236, 11
func.7236:
	.ascii	"check_size\000"
	.align	2
	.type	func.7243, %object
	.size	func.7243, 11
func.7243:
	.ascii	"check_type\000"
	.align	2
	.type	func.7250, %object
	.size	func.7250, 11
func.7250:
	.ascii	"check_mode\000"
	.align	2
	.type	func.7258, %object
	.size	func.7258, 12
func.7258:
	.ascii	"check_times\000"
	.align	2
	.type	func.7266, %object
	.size	func.7266, 12
func.7266:
	.ascii	"check_nlink\000"
	.align	2
	.type	func.7272, %object
	.size	func.7272, 15
func.7272:
	.ascii	"check_nonexist\000"
	.align	2
	.type	func.7280, %object
	.size	func.7280, 13
func.7280:
	.ascii	"check_buffer\000"
	.align	2
	.type	func.7288, %object
	.size	func.7288, 14
func.7288:
	.ascii	"do_check_data\000"
	.section	.rodata
	.align	2
	.type	__PRETTY_FUNCTION__.7307, %object
	.size	__PRETTY_FUNCTION__.7307, 19
__PRETTY_FUNCTION__.7307:
	.ascii	"check_dir_contents\000"
	.data
	.align	2
	.type	func.7300, %object
	.size	func.7300, 19
func.7300:
	.ascii	"check_dir_contents\000"
	.align	2
	.type	func.7325, %object
	.size	func.7325, 12
func.7325:
	.ascii	"create_file\000"
	.align	2
	.type	func.7333, %object
	.size	func.7333, 12
func.7333:
	.ascii	"cleanup_dir\000"
	.align	2
	.type	func.7345, %object
	.size	func.7345, 11
func.7345:
	.ascii	"create_dir\000"
	.align	2
	.type	func.7355, %object
	.size	func.7355, 14
func.7355:
	.ascii	"test_truncate\000"
	.align	2
	.type	f2.7370, %object
	.size	f2.7370, 19
f2.7370:
	.ascii	"test_open_truncate\000"
	.align	2
	.type	f1.7369, %object
	.size	f1.7369, 15
f1.7369:
	.ascii	"test_ftruncate\000"
	.align	2
	.type	func.7378, %object
	.size	func.7378, 11
func.7378:
	.ascii	"test_utime\000"
	.align	2
	.type	func.7386, %object
	.size	func.7386, 12
func.7386:
	.ascii	"test_create\000"
	.align	2
	.type	func.7398, %object
	.size	func.7398, 13
func.7398:
	.ascii	"do_test_open\000"
	.align	2
	.type	func.7416, %object
	.size	func.7416, 17
func.7416:
	.ascii	"do_test_open_acc\000"
	.align	2
	.type	func.7424, %object
	.size	func.7424, 13
func.7424:
	.ascii	"test_symlink\000"
	.align	2
	.type	func.7434, %object
	.size	func.7434, 10
func.7434:
	.ascii	"test_link\000"
	.align	2
	.type	func.7442, %object
	.size	func.7442, 17
func.7442:
	.ascii	"test_rename_file\000"
	.align	2
	.type	func.7450, %object
	.size	func.7450, 16
func.7450:
	.ascii	"test_rename_dir\000"
	.align	2
	.type	func.7456, %object
	.size	func.7456, 12
func.7456:
	.ascii	"test_mkfifo\000"
	.align	2
	.type	func.7462, %object
	.size	func.7462, 11
func.7462:
	.ascii	"test_mkdir\000"
	.align	2
	.type	func.7472, %object
	.size	func.7472, 13
func.7472:
	.ascii	"do_test_mmap\000"
	.align	2
	.type	testdata3.7478, %object
	.size	testdata3.7478, 46
testdata3.7478:
	.ascii	"_1234567890-=qwertyuiop[]\007sdfghjkl;'zxcvbnm,.\000"
	.align	2
	.type	func.7482, %object
	.size	func.7482, 14
func.7482:
	.ascii	"test_seek_eof\000"
	.align	2
	.type	func.7493, %object
	.size	func.7493, 15
func.7493:
	.ascii	"test_open_size\000"
	.align	2
	.type	func.7499, %object
	.size	func.7499, 17
func.7499:
	.ascii	"test_open_rename\000"
	.align	2
	.type	func.7509, %object
	.size	func.7509, 17
func.7509:
	.ascii	"test_open_unlink\000"
	.align	2
	.type	func.7515, %object
	.size	func.7515, 16
func.7515:
	.ascii	"test_open_utime\000"
	.align	2
	.type	func.7526, %object
	.size	func.7526, 16
func.7526:
	.ascii	"test_open_chmod\000"
	.align	2
	.type	func.7537, %object
	.size	func.7537, 18
func.7537:
	.ascii	"do_test_open_open\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
