	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function printIOstats
LCPI0_0:
	.long	1000                            ## 0x3e8
	.long	1000                            ## 0x3e8
	.space	4
	.space	4
LCPI0_1:
	.long	1125899907                      ## 0x431bde83
	.long	1125899907                      ## 0x431bde83
	.long	1125899907                      ## 0x431bde83
	.long	1125899907                      ## 0x431bde83
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_printIOstats:                          ## @printIOstats
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	_CLOCK_REALTIME_PRECISE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_finishpass@GOTPCREL(%rip), %rbx
	movq	%rbx, %rsi
	callq	_clock_gettime
	movq	_startpass@GOTPCREL(%rip), %rsi
	movq	%rbx, %rdi
	movq	%rbx, %rdx
	callq	_timespecsub
	movl	8(%rbx), %esi
	movslq	(%rbx), %rax
	imulq	$1125899907, %rax, %rdx         ## imm = 0x431BDE83
	movq	%rdx, %rax
	shrq	$63, %rax
	sarq	$50, %rdx
	addl	%eax, %edx
	leaq	L_.str(%rip), %rdi
                                        ## kill: def $edx killed $edx killed $rdx
	xorl	%eax, %eax
	callq	_printf
	leaq	L_str(%rip), %rdi
	callq	_puts
	movq	_BT_NUMBUFTYPES@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	testl	%eax, %eax
	jle	LBB0_8
## %bb.1:
	movq	_readtime@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	cmpl	$4, %eax
	jae	LBB0_3
## %bb.2:
	xorl	%edx, %edx
	xorl	%r12d, %r12d
	jmp	LBB0_6
LBB0_3:
	movl	%eax, %edx
	andl	$-4, %edx
	leaq	(,%rax,8), %rsi
	andq	$-32, %rsi
	pxor	%xmm0, %xmm0
	xorl	%edi, %edi
	movdqa	LCPI0_0(%rip), %xmm8            ## xmm8 = <1000,1000,u,u>
	movdqa	LCPI0_1(%rip), %xmm9            ## xmm9 = [1125899907,1125899907,1125899907,1125899907]
	pxor	%xmm1, %xmm1
	.p2align	4, 0x90
LBB0_4:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	(%rcx,%rdi), %xmm5
	movdqu	16(%rcx,%rdi), %xmm6
	pshufd	$232, %xmm5, %xmm7              ## xmm7 = xmm5[0,2,2,3]
	pshufd	$232, %xmm6, %xmm4              ## xmm4 = xmm6[0,2,2,3]
	pshufd	$237, %xmm5, %xmm2              ## xmm2 = xmm5[1,3,2,3]
	pshufd	$237, %xmm6, %xmm3              ## xmm3 = xmm6[1,3,2,3]
	pmulld	%xmm8, %xmm7
	pmulld	%xmm8, %xmm4
	pshufd	$255, %xmm5, %xmm5              ## xmm5 = xmm5[3,3,3,3]
	pmuldq	%xmm9, %xmm5
	pmuldq	%xmm9, %xmm2
	pshufd	$245, %xmm2, %xmm2              ## xmm2 = xmm2[1,1,3,3]
	pblendw	$204, %xmm5, %xmm2              ## xmm2 = xmm2[0,1],xmm5[2,3],xmm2[4,5],xmm5[6,7]
	movdqa	%xmm2, %xmm5
	psrld	$31, %xmm5
	psrad	$18, %xmm2
	paddd	%xmm5, %xmm2
	paddd	%xmm7, %xmm2
	pshufd	$255, %xmm6, %xmm5              ## xmm5 = xmm6[3,3,3,3]
	pmuldq	%xmm9, %xmm5
	pmuldq	%xmm9, %xmm3
	pshufd	$245, %xmm3, %xmm3              ## xmm3 = xmm3[1,1,3,3]
	pblendw	$204, %xmm5, %xmm3              ## xmm3 = xmm3[0,1],xmm5[2,3],xmm3[4,5],xmm5[6,7]
	movdqa	%xmm3, %xmm5
	psrld	$31, %xmm5
	psrad	$18, %xmm3
	paddd	%xmm5, %xmm3
	paddd	%xmm4, %xmm3
	pmovsxdq	%xmm2, %xmm2
	paddq	%xmm2, %xmm0
	pmovsxdq	%xmm3, %xmm2
	paddq	%xmm2, %xmm1
	addq	$32, %rdi
	cmpq	%rdi, %rsi
	jne	LBB0_4
## %bb.5:
	paddq	%xmm0, %xmm1
	pshufd	$238, %xmm1, %xmm0              ## xmm0 = xmm1[2,3,2,3]
	paddq	%xmm1, %xmm0
	movq	%xmm0, %r12
	cmpq	%rax, %rdx
	je	LBB0_7
	.p2align	4, 0x90
LBB0_6:                                 ## =>This Inner Loop Header: Depth=1
	movslq	(%rcx,%rdx,8), %rsi
	imulq	$1000, %rsi, %rsi               ## imm = 0x3E8
	movslq	4(%rcx,%rdx,8), %rdi
	imulq	$1125899907, %rdi, %rdi         ## imm = 0x431BDE83
	movq	%rdi, %rbx
	shrq	$63, %rbx
	sarq	$50, %rdi
	addl	%ebx, %edi
	movslq	%edi, %rdi
	addq	%rsi, %rdi
	addq	%rdi, %r12
	incq	%rdx
	cmpq	%rdx, %rax
	jne	LBB0_6
LBB0_7:
	testq	%r12, %r12
	jne	LBB0_9
LBB0_8:
	movl	$1, %r12d
LBB0_9:
	testl	%eax, %eax
	jle	LBB0_20
## %bb.10:
	movq	_readcnt@GOTPCREL(%rip), %r13
	xorl	%r15d, %r15d
	jmp	LBB0_11
	.p2align	4, 0x90
LBB0_17:                                ##   in Loop: Header=BB0_11 Depth=1
	cqto
	idivq	%r12
	movq	%rax, %rbx
LBB0_18:                                ##   in Loop: Header=BB0_11 Depth=1
	movq	%rbx, %rax
	movabsq	$7378697629483820647, %rdx      ## imm = 0x6666666666666667
	imulq	%rdx
	movq	%rdx, %rax
	shrq	$63, %rax
	sarq	$2, %rdx
	addq	%rax, %rdx
	addq	%rdx, %rdx
	leaq	(%rdx,%rdx,4), %rax
	subq	%rax, %rbx
	subq	$8, %rsp
	leaq	L_.str.2(%rip), %rdi
	movl	%ecx, %edx
	movl	%r10d, %ecx
	xorl	%eax, %eax
	pushq	%rbx
	pushq	%r11
	pushq	%r14
	callq	_printf
	addq	$32, %rsp
	movq	_BT_NUMBUFTYPES@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
LBB0_19:                                ##   in Loop: Header=BB0_11 Depth=1
	incq	%r15
	movslq	%eax, %rcx
	cmpq	%rcx, %r15
	jge	LBB0_20
LBB0_11:                                ## =>This Inner Loop Header: Depth=1
	movq	(%r13), %rcx
	movl	(%rcx,%r15,4), %ecx
	testl	%ecx, %ecx
	je	LBB0_19
## %bb.12:                              ##   in Loop: Header=BB0_11 Depth=1
	movq	_readtime@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movl	(%rax,%r15,8), %r9d
	imull	$1000, %r9d, %edx               ## imm = 0x3E8
	movslq	4(%rax,%r15,8), %rax
	imulq	$1125899907, %rax, %r14         ## imm = 0x431BDE83
	movq	%r14, %rax
	shrq	$63, %rax
	sarq	$50, %r14
	addl	%eax, %r14d
	addl	%r14d, %edx
	movslq	%edx, %rdi
	movq	_buftype@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rax,%r15,8), %rsi
	imull	$100, %ecx, %eax
	movq	_diskreads@GOTPCREL(%rip), %rdx
	movl	(%rdx), %ebx
	cltd
	idivl	%ebx
	movl	%eax, %r10d
	imull	$1000, %ecx, %eax               ## imm = 0x3E8
	cltd
	idivl	%ebx
	movl	%eax, %r8d
	cltq
	imulq	$1717986919, %rax, %rbx         ## imm = 0x66666667
	movq	%rbx, %rax
	shrq	$63, %rax
	sarq	$34, %rbx
	addl	%eax, %ebx
	addl	%ebx, %ebx
	imulq	$100, %rdi, %rax
	movq	%rax, %rdx
	orq	%r12, %rdx
	shrq	$32, %rdx
	je	LBB0_13
## %bb.14:                              ##   in Loop: Header=BB0_11 Depth=1
	cqto
	idivq	%r12
	movq	%rax, %r11
	jmp	LBB0_15
	.p2align	4, 0x90
LBB0_13:                                ##   in Loop: Header=BB0_11 Depth=1
                                        ## kill: def $eax killed $eax killed $rax
	xorl	%edx, %edx
	divl	%r12d
	movl	%eax, %r11d
LBB0_15:                                ##   in Loop: Header=BB0_11 Depth=1
	leal	(%rbx,%rbx,4), %eax
	subl	%eax, %r8d
	imulq	$1000, %rdi, %rax               ## imm = 0x3E8
	movq	%rax, %rdx
	orq	%r12, %rdx
	shrq	$32, %rdx
	jne	LBB0_17
## %bb.16:                              ##   in Loop: Header=BB0_11 Depth=1
                                        ## kill: def $eax killed $eax killed $rax
	xorl	%edx, %edx
	divl	%r12d
	movl	%eax, %ebx
	jmp	LBB0_18
LBB0_20:
	movl	$10, %edi
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_putchar                        ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_CLOCK_REALTIME_PRECISE,4,2     ## @CLOCK_REALTIME_PRECISE
	.comm	_finishpass,16,3                ## @finishpass
	.comm	_startpass,4,2                  ## @startpass
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Running time: %jd.%03ld sec\n"

	.comm	_BT_NUMBUFTYPES,4,2             ## @BT_NUMBUFTYPES
	.comm	_readtime,8,3                   ## @readtime
	.comm	_readcnt,8,3                    ## @readcnt
L_.str.2:                               ## @.str.2
	.asciz	"%21s:%8ld %2ld.%ld%% %4jd.%03ld sec %2lld.%lld%%\n"

	.comm	_buftype,8,3                    ## @buftype
	.comm	_diskreads,4,2                  ## @diskreads
L_str:                                  ## @str
	.asciz	"buffer reads by type:"

	.no_dead_strip	_printIOstats
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function printIOstats
_printIOstats:                          ; @printIOstats
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #160
	.cfi_def_cfa_offset 160
	stp	x28, x27, [sp, #64]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #80]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #96]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #112]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #128]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #144]            ; 16-byte Folded Spill
	add	x29, sp, #144
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	mov	w20, #16960
	movk	w20, #15, lsl #16
Lloh0:
	adrp	x8, _CLOCK_REALTIME_PRECISE@GOTPAGE
Lloh1:
	ldr	x8, [x8, _CLOCK_REALTIME_PRECISE@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
Lloh3:
	adrp	x19, _finishpass@GOTPAGE
Lloh4:
	ldr	x19, [x19, _finishpass@GOTPAGEOFF]
	mov	x1, x19
	bl	_clock_gettime
Lloh5:
	adrp	x1, _startpass@GOTPAGE
Lloh6:
	ldr	x1, [x1, _startpass@GOTPAGEOFF]
	mov	x0, x19
	mov	x2, x19
	bl	_timespecsub
	ldr	x8, [x19, #8]
	ldrsw	x9, [x19]
	mov	w10, #56963
	movk	w10, #17179, lsl #16
	mul	x9, x9, x10
	lsr	x10, x9, #63
	asr	x9, x9, #50
	add	w9, w9, w10
	stp	x8, x9, [sp]
Lloh7:
	adrp	x0, l_.str@PAGE
Lloh8:
	add	x0, x0, l_.str@PAGEOFF
	bl	_printf
Lloh9:
	adrp	x0, l_str@PAGE
Lloh10:
	add	x0, x0, l_str@PAGEOFF
	bl	_puts
Lloh11:
	adrp	x8, _BT_NUMBUFTYPES@GOTPAGE
Lloh12:
	ldr	x8, [x8, _BT_NUMBUFTYPES@GOTPAGEOFF]
Lloh13:
	ldr	w8, [x8]
	cmp	w8, #1
	b.lt	LBB0_9
; %bb.1:
Lloh14:
	adrp	x9, _readtime@GOTPAGE
Lloh15:
	ldr	x9, [x9, _readtime@GOTPAGEOFF]
Lloh16:
	ldr	x9, [x9]
	cmp	w8, #4
	b.hs	LBB0_3
; %bb.2:
	mov	x10, #0
	mov	x23, #0
	b	LBB0_6
LBB0_3:
	mov	x13, #0
	mov	x14, #0
	mov	x12, #0
	mov	x11, #0
	and	x10, x8, #0xfffffffc
	add	x15, x9, #16
	mov	w16, #1000
	mov	x17, x10
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	ldp	w0, w1, [x15, #-16]
                                        ; kill: def $w0 killed $w0 def $x0
	sxtw	x0, w0
	mul	x0, x0, x16
	ldp	w2, w3, [x15, #-8]
                                        ; kill: def $w2 killed $w2 def $x2
	sxtw	x2, w2
	mul	x2, x2, x16
	ldp	w4, w5, [x15]
                                        ; kill: def $w4 killed $w4 def $x4
	sxtw	x4, w4
	mul	x4, x4, x16
	ldp	w6, w7, [x15, #8]
                                        ; kill: def $w6 killed $w6 def $x6
	sxtw	x6, w6
	mul	x6, x6, x16
	sdiv	w1, w1, w20
	sdiv	w3, w3, w20
	sdiv	w5, w5, w20
	add	x0, x0, w1, sxtw
	add	x1, x2, w3, sxtw
	add	x2, x4, w5, sxtw
	sdiv	w3, w7, w20
	add	x3, x6, w3, sxtw
	add	x13, x13, x0
	add	x14, x14, x1
	add	x12, x12, x2
	add	x11, x11, x3
	add	x15, x15, #32
	subs	x17, x17, #4
	b.ne	LBB0_4
; %bb.5:
	add	x13, x14, x13
	add	x12, x12, x13
	add	x23, x11, x12
	cmp	x10, x8
	b.eq	LBB0_8
LBB0_6:
	add	x9, x9, x10, lsl #3
	add	x9, x9, #4
	sub	x10, x8, x10
	mov	w11, #1000
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	ldursw	x12, [x9, #-4]
	ldr	w13, [x9], #8
	mul	x12, x12, x11
	sdiv	w13, w13, w20
	add	x12, x12, w13, sxtw
	add	x23, x23, x12
	subs	x10, x10, #1
	b.ne	LBB0_7
LBB0_8:
	cbnz	x23, LBB0_10
LBB0_9:
	mov	w23, #1
LBB0_10:
	cmp	w8, #1
	b.lt	LBB0_15
; %bb.11:
	mov	x24, #0
	mov	x25, #0
Lloh17:
	adrp	x26, _readcnt@GOTPAGE
Lloh18:
	ldr	x26, [x26, _readcnt@GOTPAGEOFF]
	mov	w27, #1000
	mov	w21, #100
	mov	w22, #10
	mov	x28, #7378697629483820646
	movk	x28, #26215
Lloh19:
	adrp	x19, l_.str.2@PAGE
Lloh20:
	add	x19, x19, l_.str.2@PAGEOFF
	b	LBB0_13
LBB0_12:                                ;   in Loop: Header=BB0_13 Depth=1
	add	x25, x25, #1
	add	x24, x24, #8
	cmp	x25, w8, sxtw
	b.ge	LBB0_15
LBB0_13:                                ; =>This Inner Loop Header: Depth=1
	ldr	x9, [x26]
	ldr	w9, [x9, x25, lsl #2]
	cbz	w9, LBB0_12
; %bb.14:                               ;   in Loop: Header=BB0_13 Depth=1
Lloh21:
	adrp	x8, _readtime@GOTPAGE
Lloh22:
	ldr	x8, [x8, _readtime@GOTPAGEOFF]
Lloh23:
	ldr	x8, [x8]
	add	x8, x8, x24
	ldp	w10, w8, [x8]
	sdiv	w8, w8, w20
	madd	w11, w10, w27, w8
Lloh24:
	adrp	x12, _buftype@GOTPAGE
Lloh25:
	ldr	x12, [x12, _buftype@GOTPAGEOFF]
Lloh26:
	ldr	x12, [x12]
	ldr	x12, [x12, x24]
	mul	w13, w9, w21
Lloh27:
	adrp	x14, _diskreads@GOTPAGE
Lloh28:
	ldr	x14, [x14, _diskreads@GOTPAGEOFF]
Lloh29:
	ldr	w14, [x14]
	sdiv	w13, w13, w14
	mul	w15, w9, w27
	sdiv	w14, w15, w14
	mov	w15, #26215
	movk	w15, #26214, lsl #16
	smull	x15, w14, w15
	lsr	x16, x15, #32
	lsr	x15, x15, #63
	add	w15, w15, w16, asr #2
	msub	w14, w15, w22, w14
	smull	x15, w11, w21
	smull	x11, w11, w27
	sdiv	x11, x11, x23
	smulh	x16, x11, x28
	asr	x17, x16, #2
	add	x16, x17, x16, lsr #63
	msub	x11, x16, x22, x11
	sdiv	x15, x15, x23
	stp	x10, x8, [sp, #32]
	stp	x12, x9, [sp]
	stp	x13, x14, [sp, #16]
	stp	x15, x11, [sp, #48]
	mov	x0, x19
	bl	_printf
Lloh30:
	adrp	x8, _BT_NUMBUFTYPES@GOTPAGE
Lloh31:
	ldr	x8, [x8, _BT_NUMBUFTYPES@GOTPAGEOFF]
Lloh32:
	ldr	w8, [x8]
	b	LBB0_12
LBB0_15:
	mov	w0, #10
	ldp	x29, x30, [sp, #144]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #128]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #112]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #96]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #80]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #64]             ; 16-byte Folded Reload
	add	sp, sp, #160
	b	_putchar
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpAdd	Lloh9, Lloh10
	.loh AdrpAdd	Lloh7, Lloh8
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpAdd	Lloh19, Lloh20
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.cfi_endproc
                                        ; -- End function
	.comm	_CLOCK_REALTIME_PRECISE,4,2     ; @CLOCK_REALTIME_PRECISE
	.comm	_finishpass,16,3                ; @finishpass
	.comm	_startpass,4,2                  ; @startpass
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Running time: %jd.%03ld sec\n"

	.comm	_BT_NUMBUFTYPES,4,2             ; @BT_NUMBUFTYPES
	.comm	_readtime,8,3                   ; @readtime
	.comm	_readcnt,8,3                    ; @readcnt
l_.str.2:                               ; @.str.2
	.asciz	"%21s:%8ld %2ld.%ld%% %4jd.%03ld sec %2lld.%lld%%\n"

	.comm	_buftype,8,3                    ; @buftype
	.comm	_diskreads,4,2                  ; @diskreads
l_str:                                  ; @str
	.asciz	"buffer reads by type:"

	.no_dead_strip	_printIOstats
.subsections_via_symbols
