	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function mxl111sf_i2c_readagain
LCPI0_0:
	.long	221                             ## 0xdd
	.long	0                               ## 0x0
	.long	0                               ## 0x0
	.long	0                               ## 0x0
LCPI0_1:
	.long	12                              ## 0xc
	.long	0                               ## 0x0
	.long	0                               ## 0x0
	.long	0                               ## 0x0
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_mxl111sf_i2c_readagain:                ## @mxl111sf_i2c_readagain
	.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
	subq	$408, %rsp                      ## imm = 0x198
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdx, %r14
	movq	%rsi, %r15
	movq	%rdi, %r13
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	leaq	L_.str(%rip), %rdi
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_mxl_i2c
	.p2align	4, 0x90
LBB0_1:                                 ## =>This Inner Loop Header: Depth=1
	movq	%r13, %rdi
	callq	_mxl111sf_i2c_check_fifo
	testq	%rax, %rax
	jne	LBB0_3
## %bb.2:                               ##   in Loop: Header=BB0_1 Depth=1
	leaq	1(%rbx), %rax
	cmpq	$4, %rbx
	movq	%rax, %rbx
	jb	LBB0_1
LBB0_3:
	movaps	LCPI0_0(%rip), %xmm0            ## xmm0 = [221,0,0,0]
	movaps	%xmm0, -256(%rbp)
	leaq	-240(%rbp), %rdi
	leaq	L_.memset_pattern(%rip), %rsi
	movl	$192, %edx
	callq	_memset_pattern16
	testq	%r15, %r15
	jle	LBB0_10
## %bb.4:
	cmpq	$1, %r15
	jne	LBB0_6
## %bb.5:
	xorl	%eax, %eax
	jmp	LBB0_8
LBB0_6:
	movq	%r15, %rcx
	andq	$-2, %rcx
	xorl	%eax, %eax
	movaps	LCPI0_1(%rip), %xmm0            ## xmm0 = [12,0,0,0]
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	movaps	%xmm0, -240(%rbp,%rax,8)
	movq	$0, -224(%rbp,%rax,8)
	movups	%xmm0, -216(%rbp,%rax,8)
	movq	$0, -200(%rbp,%rax,8)
	addq	$6, %rax
	addq	$-2, %rcx
	jne	LBB0_7
LBB0_8:
	testb	$1, %r15b
	je	LBB0_10
## %bb.9:
	movaps	LCPI0_1(%rip), %xmm0            ## xmm0 = [12,0,0,0]
	movups	%xmm0, -240(%rbp,%rax,8)
	movq	$0, -224(%rbp,%rax,8)
LBB0_10:
	xorl	%ebx, %ebx
	leaq	-256(%rbp), %rdx
	leaq	-448(%rbp), %rcx
	movq	%r13, %rdi
	xorl	%esi, %esi
	callq	_mxl111sf_i2c_get_data
	movq	%r13, %rdi
	callq	_mxl111sf_i2c_check_status
	cmpl	$1, %eax
	jne	LBB0_11
## %bb.17:
	leaq	L_.str.1(%rip), %rdi
	xorl	%eax, %eax
	callq	_mxl_i2c
	jmp	LBB0_15
LBB0_11:
	movl	$1, %ebx
	testq	%r15, %r15
	jle	LBB0_15
## %bb.12:
	leaq	-432(%rbp), %rbx
	leaq	L_.str.2(%rip), %r13
	xorl	%r12d, %r12d
	.p2align	4, 0x90
LBB0_13:                                ## =>This Inner Loop Header: Depth=1
	movq	-8(%rbx), %rsi
	movq	%rsi, (%r14,%r12,8)
	movq	(%rbx), %rdx
	movq	%r13, %rdi
	xorl	%eax, %eax
	callq	_mxl_i2c
	incq	%r12
	addq	$24, %rbx
	cmpq	%r12, %r15
	jne	LBB0_13
## %bb.14:
	movl	$1, %ebx
LBB0_15:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_18
## %bb.16:
	movl	%ebx, %eax
	addq	$408, %rsp                      ## imm = 0x198
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_18:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"read %d bytes"

L_.str.1:                               ## @.str.1
	.asciz	"error!"

L_.str.2:                               ## @.str.2
	.asciz	"%02x\t %02x"

	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## @.memset_pattern
L_.memset_pattern:
	.quad	254                             ## 0xfe
	.quad	254                             ## 0xfe

	.no_dead_strip	_mxl111sf_i2c_readagain
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ; -- Begin function mxl111sf_i2c_readagain
lCPI0_0:
	.quad	221                             ; 0xdd
	.quad	0                               ; 0x0
lCPI0_1:
	.quad	0                               ; 0x0
	.quad	12                              ; 0xc
lCPI0_2:
	.quad	12                              ; 0xc
	.quad	0                               ; 0x0
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_mxl111sf_i2c_readagain:                ; @mxl111sf_i2c_readagain
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #496
	.cfi_def_cfa_offset 496
	stp	x28, x27, [sp, #432]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #448]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #464]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #480]            ; 16-byte Folded Spill
	add	x29, sp, #480
	.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 w27, -56
	.cfi_offset w28, -64
	mov	x19, x2
	mov	x20, x1
	mov	x21, x0
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-56]
	str	x1, [sp]
Lloh3:
	adrp	x0, l_.str@PAGE
Lloh4:
	add	x0, x0, l_.str@PAGEOFF
	bl	_mxl_i2c
	mov	x0, x21
	bl	_mxl111sf_i2c_check_fifo
	cbnz	x0, LBB0_5
; %bb.1:
	mov	x0, x21
	bl	_mxl111sf_i2c_check_fifo
	cbnz	x0, LBB0_5
; %bb.2:
	mov	x0, x21
	bl	_mxl111sf_i2c_check_fifo
	cbnz	x0, LBB0_5
; %bb.3:
	mov	x0, x21
	bl	_mxl111sf_i2c_check_fifo
	cbnz	x0, LBB0_5
; %bb.4:
	mov	x0, x21
	bl	_mxl111sf_i2c_check_fifo
LBB0_5:
Lloh5:
	adrp	x8, lCPI0_0@PAGE
Lloh6:
	ldr	q0, [x8, lCPI0_0@PAGEOFF]
	str	q0, [sp, #208]
	add	x8, sp, #208
	add	x0, x8, #16
Lloh7:
	adrp	x1, l_.memset_pattern@PAGE
Lloh8:
	add	x1, x1, l_.memset_pattern@PAGEOFF
	mov	w2, #192
	bl	_memset_pattern16
	cmp	x20, #1
	b.lt	LBB0_13
; %bb.6:
	adrp	x8, lCPI0_2@PAGE
	cmp	x20, #8
	b.hs	LBB0_8
; %bb.7:
	mov	x9, #0
	b	LBB0_11
LBB0_8:
	and	x9, x20, #0xfffffffffffffff8
	add	x10, sp, #208
	add	x11, x10, #64
	mov	w12, #18
	movi.2d	v0, #0000000000000000
Lloh9:
	adrp	x13, lCPI0_1@PAGE
Lloh10:
	ldr	q1, [x13, lCPI0_1@PAGEOFF]
	ldr	q2, [x8, lCPI0_2@PAGEOFF]
	mov	x13, x9
LBB0_9:                                 ; =>This Inner Loop Header: Depth=1
	stp	q1, q0, [x11, #-32]
	lsl	x14, x12, #3
	orr	x14, x14, #0x20
	add	x14, x10, x14
	stur	q2, [x11, #-48]
	stp	q2, q1, [x11]
	stp	q1, q0, [x11, #64]
	stp	q0, q2, [x11, #32]
	stp	q1, q0, [x14]
	add	x12, x12, #24
	add	x11, x11, #192
	stur	q2, [x14, #-16]
	subs	x13, x13, #8
	b.ne	LBB0_9
; %bb.10:
	cmp	x9, x20
	b.eq	LBB0_13
LBB0_11:
	sub	x10, x20, x9
	mov	w11, #24
	add	x12, sp, #208
	madd	x9, x9, x11, x12
	add	x9, x9, #32
	ldr	q0, [x8, lCPI0_2@PAGEOFF]
LBB0_12:                                ; =>This Inner Loop Header: Depth=1
	stur	q0, [x9, #-16]
	str	xzr, [x9], #24
	subs	x10, x10, #1
	b.ne	LBB0_12
LBB0_13:
	add	x2, sp, #208
	add	x3, sp, #16
	mov	x0, x21
	mov	w1, #0
	bl	_mxl111sf_i2c_get_data
	mov	x0, x21
	bl	_mxl111sf_i2c_check_status
	cmp	w0, #1
	b.ne	LBB0_15
; %bb.14:
Lloh11:
	adrp	x0, l_.str.1@PAGE
Lloh12:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_mxl_i2c
	mov	w0, #0
	b	LBB0_19
LBB0_15:
	cmp	x20, #1
	b.lt	LBB0_18
; %bb.16:
	add	x8, sp, #16
	add	x22, x8, #16
Lloh13:
	adrp	x21, l_.str.2@PAGE
Lloh14:
	add	x21, x21, l_.str.2@PAGEOFF
LBB0_17:                                ; =>This Inner Loop Header: Depth=1
	ldp	x8, x9, [x22, #-8]
	str	x8, [x19], #8
	stp	x8, x9, [sp]
	mov	x0, x21
	bl	_mxl_i2c
	add	x22, x22, #24
	subs	x20, x20, #1
	b.ne	LBB0_17
LBB0_18:
	mov	w0, #1
LBB0_19:
	ldur	x8, [x29, #-56]
Lloh15:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh16:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh17:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_21
; %bb.20:
	ldp	x29, x30, [sp, #480]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #464]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #448]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #432]            ; 16-byte Folded Reload
	add	sp, sp, #496
	ret
LBB0_21:
	bl	___stack_chk_fail
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh7, Lloh8
	.loh AdrpLdr	Lloh5, Lloh6
	.loh AdrpLdr	Lloh9, Lloh10
	.loh AdrpAdd	Lloh11, Lloh12
	.loh AdrpAdd	Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.cfi_endproc
                                        ; -- End function
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"read %d bytes"

l_.str.1:                               ; @.str.1
	.asciz	"error!"

l_.str.2:                               ; @.str.2
	.asciz	"%02x\t %02x"

	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ; @.memset_pattern
l_.memset_pattern:
	.quad	254                             ; 0xfe
	.quad	254                             ; 0xfe

	.no_dead_strip	_mxl111sf_i2c_readagain
.subsections_via_symbols
