	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_decr_init                      ## -- Begin function decr_init
	.p2align	4, 0x90
_decr_init:                             ## @decr_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	%r14
	pushq	%rbx
	subq	$64, %rsp
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -24(%rbp)
	leaq	-72(%rbp), %rdi
	callq	_platform_smp_get_bsp
	testq	%rax, %rax
	je	LBB0_2
## %bb.1:
	leaq	-72(%rbp), %rdi
	callq	_platform_smp_first_cpu
LBB0_2:
	leaq	-72(%rbp), %rdi
	callq	_platform_timebase_freq
	movq	_ticks_per_sec@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movslq	%eax, %rsi
	movabsq	$1000000000000, %rax            ## imm = 0xE8D4A51000
	xorl	%edx, %edx
	idivq	%rsi
	movq	_ps_per_tick@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_mftb@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
                                        ## kill: def $esi killed $esi killed $rsi
	xorl	%edx, %edx
	callq	_set_cputicker
	movq	_curcpu@GOTPCREL(%rip), %rbx
	movl	(%rbx), %ecx
	leaq	L_.str(%rip), %rdx
	leaq	-64(%rbp), %r14
	movq	%r14, %rdi
	movl	$32, %esi
	callq	_snprintf
	movq	_decr_counts@GOTPCREL(%rip), %rax
	movslq	(%rbx), %rsi
	shlq	$2, %rsi
	addq	(%rax), %rsi
	movq	%r14, %rdi
	callq	_intrcnt_add
	xorl	%edi, %edi
	callq	_decr_et_stop
	movq	_initialized@GOTPCREL(%rip), %rax
	movl	$1, (%rax)
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-24(%rbp), %rax
	jne	LBB0_4
## %bb.3:
	addq	$64, %rsp
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
LBB0_4:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_ticks_per_sec,4,2              ## @ticks_per_sec
	.comm	_ps_per_tick,4,2                ## @ps_per_tick
	.comm	_mftb,4,2                       ## @mftb
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"cpu%d:decrementer"

	.comm	_curcpu,4,2                     ## @curcpu
	.comm	_decr_counts,8,3                ## @decr_counts
	.comm	_initialized,4,2                ## @initialized
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_decr_init                      ; -- Begin function decr_init
	.p2align	2
_decr_init:                             ; @decr_init
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.cfi_def_cfa_offset 80
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-24]
	mov	x0, sp
	bl	_platform_smp_get_bsp
	cbz	x0, LBB0_2
; %bb.1:
	mov	x0, sp
	bl	_platform_smp_first_cpu
LBB0_2:
	mov	x0, sp
	bl	_platform_timebase_freq
	mov	x1, x0
Lloh3:
	adrp	x8, _ticks_per_sec@GOTPAGE
Lloh4:
	ldr	x8, [x8, _ticks_per_sec@GOTPAGEOFF]
Lloh5:
	str	w0, [x8]
	sxtw	x8, w1
	mov	x9, #4096
	movk	x9, #54437, lsl #16
	movk	x9, #232, lsl #32
	sdiv	x8, x9, x8
Lloh6:
	adrp	x9, _ps_per_tick@GOTPAGE
Lloh7:
	ldr	x9, [x9, _ps_per_tick@GOTPAGEOFF]
Lloh8:
	str	w8, [x9]
Lloh9:
	adrp	x8, _mftb@GOTPAGE
Lloh10:
	ldr	x8, [x8, _mftb@GOTPAGEOFF]
Lloh11:
	ldr	w0, [x8]
                                        ; kill: def $w1 killed $w1 killed $x1
	mov	w2, #0
	bl	_set_cputicker
Lloh12:
	adrp	x19, _curcpu@GOTPAGE
Lloh13:
	ldr	x19, [x19, _curcpu@GOTPAGEOFF]
	ldr	w3, [x19]
Lloh14:
	adrp	x2, l_.str@PAGE
Lloh15:
	add	x2, x2, l_.str@PAGEOFF
	add	x0, sp, #8
	mov	w1, #32
	bl	_snprintf
Lloh16:
	adrp	x8, _decr_counts@GOTPAGE
Lloh17:
	ldr	x8, [x8, _decr_counts@GOTPAGEOFF]
Lloh18:
	ldr	x8, [x8]
	ldrsw	x9, [x19]
	add	x1, x8, x9, lsl #2
	add	x0, sp, #8
	bl	_intrcnt_add
	mov	x0, #0
	bl	_decr_et_stop
Lloh19:
	adrp	x8, _initialized@GOTPAGE
Lloh20:
	ldr	x8, [x8, _initialized@GOTPAGEOFF]
	mov	w9, #1
Lloh21:
	str	w9, [x8]
	ldur	x8, [x29, #-24]
Lloh22:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh23:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh24:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_4
; %bb.3:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	ret
LBB0_4:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotStr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpAdd	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotStr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotStr	Lloh3, Lloh4, Lloh5
	.cfi_endproc
                                        ; -- End function
	.comm	_ticks_per_sec,4,2              ; @ticks_per_sec
	.comm	_ps_per_tick,4,2                ; @ps_per_tick
	.comm	_mftb,4,2                       ; @mftb
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"cpu%d:decrementer"

	.comm	_curcpu,4,2                     ; @curcpu
	.comm	_decr_counts,8,3                ; @decr_counts
	.comm	_initialized,4,2                ; @initialized
.subsections_via_symbols
