	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function count_pseudo
_count_pseudo:                          ## @count_pseudo
	.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	%r12
	pushq	%rbx
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%edi, %ebx
	callq	_REG_FREQ
	movl	%eax, %r14d
	movq	_reg_renumber@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movslq	%ebx, %rsi
	movslq	(%rax,%rsi,4), %r15
	movq	_pseudos_counted@GOTPCREL(%rip), %rdi
                                        ## kill: def $esi killed $esi killed $rsi
	callq	_REGNO_REG_SET_P
	testq	%rax, %rax
	jne	LBB0_10
## %bb.1:
	movq	_spilled_pseudos@GOTPCREL(%rip), %rdi
	movl	%ebx, %esi
	callq	_REGNO_REG_SET_P
	testq	%rax, %rax
	jne	LBB0_10
## %bb.2:
	movq	_pseudos_counted@GOTPCREL(%rip), %rdi
	movl	%ebx, %esi
	callq	_SET_REGNO_REG_SET
	movl	%r15d, %edi
	notl	%edi
	shrl	$31, %edi
	callq	_gcc_assert
	movq	_spill_add_cost@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	addl	%r14d, (%rax,%r15,4)
	movq	_hard_regno_nregs@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rax,%r15,8), %r12
	movl	%ebx, %edi
	callq	_PSEUDO_REGNO_MODE
	movl	(%r12,%rax,4), %edx
	testl	%edx, %edx
	jle	LBB0_10
## %bb.3:
	movq	_spill_cost@GOTPCREL(%rip), %rax
	movq	(%rax), %r8
	cmpl	$8, %edx
	jae	LBB0_5
## %bb.4:
	movq	%rdx, %rax
	jmp	LBB0_8
LBB0_5:
	movl	%edx, %ebx
	andl	$-8, %ebx
	movl	%edx, %eax
	andl	$7, %eax
	movd	%r14d, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	leaq	(%r15,%rdx), %rcx
	leaq	(%r8,%rcx,4), %rdi
	addq	$-16, %rdi
	movq	%rbx, %rsi
	negq	%rsi
	xorl	%ecx, %ecx
	pshufd	$27, %xmm0, %xmm0               ## xmm0 = xmm0[3,2,1,0]
	.p2align	4, 0x90
LBB0_6:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	-16(%rdi,%rcx,4), %xmm1
	movdqu	(%rdi,%rcx,4), %xmm2
	paddd	%xmm0, %xmm2
	movdqu	%xmm2, (%rdi,%rcx,4)
	paddd	%xmm0, %xmm1
	movdqu	%xmm1, -16(%rdi,%rcx,4)
	addq	$-8, %rcx
	cmpq	%rcx, %rsi
	jne	LBB0_6
## %bb.7:
	cmpq	%rdx, %rbx
	je	LBB0_10
LBB0_8:
	incq	%rax
	leaq	(%r8,%r15,4), %rcx
	.p2align	4, 0x90
LBB0_9:                                 ## =>This Inner Loop Header: Depth=1
	addl	%r14d, -8(%rcx,%rax,4)
	decq	%rax
	cmpq	$1, %rax
	ja	LBB0_9
LBB0_10:
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_reg_renumber,8,3               ## @reg_renumber
	.comm	_pseudos_counted,4,2            ## @pseudos_counted
	.comm	_spilled_pseudos,4,2            ## @spilled_pseudos
	.comm	_spill_add_cost,8,3             ## @spill_add_cost
	.comm	_hard_regno_nregs,8,3           ## @hard_regno_nregs
	.comm	_spill_cost,8,3                 ## @spill_cost
	.no_dead_strip	_count_pseudo
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function count_pseudo
_count_pseudo:                          ; @count_pseudo
	.cfi_startproc
; %bb.0:
	stp	x22, x21, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.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
	mov	x20, x0
	bl	_REG_FREQ
	mov	x19, x0
Lloh0:
	adrp	x8, _reg_renumber@GOTPAGE
Lloh1:
	ldr	x8, [x8, _reg_renumber@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	ldrsw	x21, [x8, w20, sxtw #2]
Lloh3:
	adrp	x0, _pseudos_counted@GOTPAGE
Lloh4:
	ldr	x0, [x0, _pseudos_counted@GOTPAGEOFF]
	mov	x1, x20
	bl	_REGNO_REG_SET_P
	cbnz	x0, LBB0_10
; %bb.1:
Lloh5:
	adrp	x0, _spilled_pseudos@GOTPAGE
Lloh6:
	ldr	x0, [x0, _spilled_pseudos@GOTPAGEOFF]
	mov	x1, x20
	bl	_REGNO_REG_SET_P
	cbnz	x0, LBB0_10
; %bb.2:
Lloh7:
	adrp	x0, _pseudos_counted@GOTPAGE
Lloh8:
	ldr	x0, [x0, _pseudos_counted@GOTPAGEOFF]
	mov	x1, x20
	bl	_SET_REGNO_REG_SET
	mvn	w8, w21
	lsr	w0, w8, #31
	bl	_gcc_assert
Lloh9:
	adrp	x8, _spill_add_cost@GOTPAGE
Lloh10:
	ldr	x8, [x8, _spill_add_cost@GOTPAGEOFF]
Lloh11:
	ldr	x8, [x8]
	lsl	x9, x21, #2
	ldr	w10, [x8, x9]
	add	w10, w10, w19
	str	w10, [x8, x9]
Lloh12:
	adrp	x8, _hard_regno_nregs@GOTPAGE
Lloh13:
	ldr	x8, [x8, _hard_regno_nregs@GOTPAGEOFF]
Lloh14:
	ldr	x8, [x8]
	ldr	x22, [x8, x21, lsl #3]
	mov	x0, x20
	bl	_PSEUDO_REGNO_MODE
	ldr	w9, [x22, x0, lsl #2]
	cmp	w9, #1
	b.lt	LBB0_10
; %bb.3:
Lloh15:
	adrp	x8, _spill_cost@GOTPAGE
Lloh16:
	ldr	x8, [x8, _spill_cost@GOTPAGEOFF]
Lloh17:
	ldr	x10, [x8]
	cmp	w9, #16
	b.hs	LBB0_5
; %bb.4:
	mov	x8, x9
	b	LBB0_8
LBB0_5:
	and	x11, x9, #0xfffffff0
	and	x8, x9, #0xf
	dup.4s	v0, w19
	add	x12, x21, x9
	add	x12, x10, x12, lsl #2
	sub	x12, x12, #32
	rev64.4s	v0, v0
	ext.16b	v0, v0, v0, #8
	mov	x13, x11
LBB0_6:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q2, q1, [x12]
	ldp	q4, q3, [x12, #-32]
	add.4s	v1, v1, v0
	add.4s	v2, v2, v0
	stp	q2, q1, [x12]
	add.4s	v1, v3, v0
	add.4s	v2, v4, v0
	stp	q2, q1, [x12, #-32]
	sub	x12, x12, #64
	sub	x13, x13, #16
	cbnz	x13, LBB0_6
; %bb.7:
	cmp	x11, x9
	b.eq	LBB0_10
LBB0_8:
	add	x9, x10, x21, lsl #2
	sub	x9, x9, #4
LBB0_9:                                 ; =>This Inner Loop Header: Depth=1
	lsl	x10, x8, #2
	ldr	w11, [x9, x10]
	add	w11, w11, w19
	str	w11, [x9, x10]
	subs	x8, x8, #1
	b.hi	LBB0_9
LBB0_10:
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGot	Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.cfi_endproc
                                        ; -- End function
	.comm	_reg_renumber,8,3               ; @reg_renumber
	.comm	_pseudos_counted,4,2            ; @pseudos_counted
	.comm	_spilled_pseudos,4,2            ; @spilled_pseudos
	.comm	_spill_add_cost,8,3             ; @spill_add_cost
	.comm	_hard_regno_nregs,8,3           ; @hard_regno_nregs
	.comm	_spill_cost,8,3                 ; @spill_cost
	.no_dead_strip	_count_pseudo
.subsections_via_symbols
