	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_snd_pcm_timer_init             ## -- Begin function snd_pcm_timer_init
	.p2align	4, 0x90
_snd_pcm_timer_init:                    ## @snd_pcm_timer_init
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%rbx
	subq	$40, %rsp
	.cfi_offset %rbx, -24
	movq	%rdi, %rbx
	movq	_SNDRV_TIMER_SCLASS_NONE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -24(%rbp)
	movq	_SNDRV_TIMER_CLASS_PCM@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -28(%rbp)
	movq	16(%rdi), %rax
	movq	8(%rax), %rdi
	movl	(%rdi), %ecx
	movl	%ecx, -40(%rbp)
	movl	(%rax), %eax
	movl	%eax, -36(%rbp)
	movl	(%rbx), %eax
	movl	4(%rbx), %ecx
	andl	$1, %ecx
	leal	(%rcx,%rax,2), %eax
	movl	%eax, -32(%rbp)
	leaq	L_.str(%rip), %rsi
	leaq	-40(%rbp), %rdx
	leaq	-16(%rbp), %rcx
	callq	_snd_timer_new
	testq	%rax, %rax
	js	LBB0_4
## %bb.1:
	movq	-16(%rbp), %rax
	movl	4(%rbx), %ecx
	movq	_SNDRV_PCM_STREAM_CAPTURE@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %ecx
	leaq	L_.str.2(%rip), %rcx
	leaq	L_.str.3(%rip), %rdx
	cmoveq	%rcx, %rdx
	movl	24(%rax), %edi
	movl	-40(%rbp), %ecx
	movl	-36(%rbp), %r8d
	movl	-32(%rbp), %r9d
	leaq	L_.str.1(%rip), %rsi
	callq	_sprintf
	movq	_snd_pcm_timer@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	-16(%rbp), %rsi
	movl	%eax, 20(%rsi)
	movl	16(%rsi), %edi
	callq	_snd_device_register
	movq	-16(%rbp), %rsi
	testq	%rax, %rax
	js	LBB0_2
## %bb.3:
	movq	%rbx, 8(%rsi)
	movq	_snd_pcm_timer_free@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%rsi)
	movq	%rsi, 8(%rbx)
	jmp	LBB0_4
LBB0_2:
	movl	16(%rsi), %edi
	callq	_snd_device_free
LBB0_4:
	addq	$40, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_SNDRV_TIMER_SCLASS_NONE,4,2    ## @SNDRV_TIMER_SCLASS_NONE
	.comm	_SNDRV_TIMER_CLASS_PCM,4,2      ## @SNDRV_TIMER_CLASS_PCM
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"PCM"

L_.str.1:                               ## @.str.1
	.asciz	"PCM %s %i-%i-%i"

	.comm	_SNDRV_PCM_STREAM_CAPTURE,4,2   ## @SNDRV_PCM_STREAM_CAPTURE
L_.str.2:                               ## @.str.2
	.asciz	"capture"

L_.str.3:                               ## @.str.3
	.asciz	"playback"

	.comm	_snd_pcm_timer,4,2              ## @snd_pcm_timer
	.comm	_snd_pcm_timer_free,4,2         ## @snd_pcm_timer_free
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_snd_pcm_timer_init             ; -- Begin function snd_pcm_timer_init
	.p2align	2
_snd_pcm_timer_init:                    ; @snd_pcm_timer_init
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #64
	.cfi_def_cfa_offset 64
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	mov	x19, x0
Lloh0:
	adrp	x8, _SNDRV_TIMER_SCLASS_NONE@GOTPAGE
Lloh1:
	ldr	x8, [x8, _SNDRV_TIMER_SCLASS_NONE@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _SNDRV_TIMER_CLASS_PCM@GOTPAGE
Lloh4:
	ldr	x9, [x9, _SNDRV_TIMER_CLASS_PCM@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	stp	w9, w8, [sp, #20]
	ldr	x8, [x0, #16]
	ldr	x0, [x8, #8]
	ldr	w9, [x0]
	str	w9, [sp, #8]
	ldp	w9, w10, [x19]
	bfi	w10, w9, #1, #31
	ldr	w8, [x8]
	stp	w8, w10, [sp, #12]
Lloh6:
	adrp	x1, l_.str@PAGE
Lloh7:
	add	x1, x1, l_.str@PAGEOFF
	add	x2, sp, #8
	mov	x3, sp
	bl	_snd_timer_new
	tbnz	x0, #63, LBB0_4
; %bb.1:
	ldr	x8, [sp]
	ldr	w0, [x8, #24]
	ldr	w8, [x19, #4]
Lloh8:
	adrp	x9, _SNDRV_PCM_STREAM_CAPTURE@GOTPAGE
Lloh9:
	ldr	x9, [x9, _SNDRV_PCM_STREAM_CAPTURE@GOTPAGEOFF]
Lloh10:
	adrp	x10, l_.str.3@PAGE
Lloh11:
	add	x10, x10, l_.str.3@PAGEOFF
Lloh12:
	adrp	x11, l_.str.2@PAGE
Lloh13:
	add	x11, x11, l_.str.2@PAGEOFF
Lloh14:
	ldr	w9, [x9]
	cmp	w8, w9
	csel	x2, x11, x10, eq
	ldp	w3, w4, [sp, #8]
	ldr	w5, [sp, #16]
Lloh15:
	adrp	x1, l_.str.1@PAGE
Lloh16:
	add	x1, x1, l_.str.1@PAGEOFF
	bl	_sprintf
Lloh17:
	adrp	x8, _snd_pcm_timer@GOTPAGE
Lloh18:
	ldr	x8, [x8, _snd_pcm_timer@GOTPAGEOFF]
Lloh19:
	ldr	w8, [x8]
	ldr	x1, [sp]
	str	w8, [x1, #20]
	ldr	w0, [x1, #16]
	bl	_snd_device_register
	ldr	x1, [sp]
	tbnz	x0, #63, LBB0_3
; %bb.2:
	str	x19, [x1, #8]
Lloh20:
	adrp	x8, _snd_pcm_timer_free@GOTPAGE
Lloh21:
	ldr	x8, [x8, _snd_pcm_timer_free@GOTPAGEOFF]
Lloh22:
	ldr	w8, [x8]
	str	w8, [x1]
	str	x1, [x19, #8]
	b	LBB0_4
LBB0_3:
	ldr	w0, [x1, #16]
	bl	_snd_device_free
LBB0_4:
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #64
	ret
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpAdd	Lloh15, Lloh16
	.loh AdrpAdd	Lloh12, Lloh13
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh14
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.cfi_endproc
                                        ; -- End function
	.comm	_SNDRV_TIMER_SCLASS_NONE,4,2    ; @SNDRV_TIMER_SCLASS_NONE
	.comm	_SNDRV_TIMER_CLASS_PCM,4,2      ; @SNDRV_TIMER_CLASS_PCM
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"PCM"

l_.str.1:                               ; @.str.1
	.asciz	"PCM %s %i-%i-%i"

	.comm	_SNDRV_PCM_STREAM_CAPTURE,4,2   ; @SNDRV_PCM_STREAM_CAPTURE
l_.str.2:                               ; @.str.2
	.asciz	"capture"

l_.str.3:                               ; @.str.3
	.asciz	"playback"

	.comm	_snd_pcm_timer,4,2              ; @snd_pcm_timer
	.comm	_snd_pcm_timer_free,4,2         ; @snd_pcm_timer_free
.subsections_via_symbols
