	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function av_get_bits_per_pixel
LCPI0_0:
	.long	0                               ## 0x0
	.long	1                               ## 0x1
	.long	2                               ## 0x2
	.long	3                               ## 0x3
LCPI0_1:
	.long	3                               ## 0x3
	.long	3                               ## 0x3
	.long	3                               ## 0x3
	.long	3                               ## 0x3
LCPI0_2:
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
LCPI0_3:
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_av_get_bits_per_pixel
	.p2align	4, 0x90
_av_get_bits_per_pixel:                 ## @av_get_bits_per_pixel
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movl	4(%rdi), %r9d
	movl	8(%rdi), %r10d
	addl	(%rdi), %r9d
	testl	%r10d, %r10d
	jle	LBB0_1
## %bb.2:
	movq	16(%rdi), %rdi
	xorl	%r8d, %r8d
	cmpl	$8, %r10d
	jae	LBB0_4
## %bb.3:
	xorl	%esi, %esi
	xorl	%eax, %eax
	jmp	LBB0_7
LBB0_1:
	xorl	%eax, %eax
	jmp	LBB0_8
LBB0_4:
	movl	%r10d, %esi
	andl	$-8, %esi
	movd	%r9d, %xmm0
	leaq	(,%r10,4), %rax
	andq	$-32, %rax
	movdqa	LCPI0_0(%rip), %xmm5            ## xmm5 = [0,1,2,3]
	pxor	%xmm2, %xmm2
	xorl	%ecx, %ecx
	pcmpeqd	%xmm8, %xmm8
	movdqa	LCPI0_1(%rip), %xmm9            ## xmm9 = [3,3,3,3]
	movdqa	LCPI0_2(%rip), %xmm11           ## xmm11 = [1,1,1,1]
	pmovzxdq	%xmm0, %xmm12                   ## xmm12 = xmm0[0],zero,xmm0[1],zero
	movdqa	LCPI0_3(%rip), %xmm10           ## xmm10 = [8,8,8,8]
	pxor	%xmm6, %xmm6
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movdqa	%xmm5, %xmm1
	paddd	%xmm8, %xmm1
	movdqa	%xmm5, %xmm3
	paddd	%xmm9, %xmm3
	movdqa	%xmm1, %xmm0
	pminud	%xmm11, %xmm0
	pcmpeqd	%xmm1, %xmm0
	movdqa	%xmm3, %xmm1
	pminud	%xmm11, %xmm1
	pcmpeqd	%xmm3, %xmm1
	movdqu	(%rdi,%rcx), %xmm7
	movdqa	%xmm7, %xmm3
	pslld	%xmm12, %xmm3
	movdqu	16(%rdi,%rcx), %xmm4
	blendvps	%xmm0, %xmm7, %xmm3
	paddd	%xmm3, %xmm2
	movdqa	%xmm4, %xmm3
	pslld	%xmm12, %xmm3
	movdqa	%xmm1, %xmm0
	blendvps	%xmm0, %xmm4, %xmm3
	paddd	%xmm3, %xmm6
	paddd	%xmm10, %xmm5
	addq	$32, %rcx
	cmpq	%rcx, %rax
	jne	LBB0_5
## %bb.6:
	paddd	%xmm2, %xmm6
	pshufd	$238, %xmm6, %xmm0              ## xmm0 = xmm6[2,3,2,3]
	paddd	%xmm6, %xmm0
	pshufd	$85, %xmm0, %xmm1               ## xmm1 = xmm0[1,1,1,1]
	paddd	%xmm0, %xmm1
	movd	%xmm1, %eax
	cmpq	%r10, %rsi
	je	LBB0_8
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	leal	-1(%rsi), %ecx
	cmpl	$2, %ecx
	movl	%r9d, %ecx
	cmovbl	%r8d, %ecx
	movl	(%rdi,%rsi,4), %edx
                                        ## kill: def $cl killed $cl killed $ecx
	shll	%cl, %edx
	addl	%edx, %eax
	incq	%rsi
	cmpq	%rsi, %r10
	jne	LBB0_7
LBB0_8:
	movl	%r9d, %ecx
	sarl	%cl, %eax
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
.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 av_get_bits_per_pixel
lCPI0_0:
	.long	0                               ; 0x0
	.long	1                               ; 0x1
	.long	2                               ; 0x2
	.long	3                               ; 0x3
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_av_get_bits_per_pixel
	.p2align	2
_av_get_bits_per_pixel:                 ; @av_get_bits_per_pixel
	.cfi_startproc
; %bb.0:
	ldp	w8, w9, [x0]
	add	w8, w9, w8
	ldr	w9, [x0, #8]
	cmp	w9, #1
	b.lt	LBB0_3
; %bb.1:
	ldr	x10, [x0, #16]
	cmp	w9, #16
	b.hs	LBB0_4
; %bb.2:
	mov	x11, #0
	mov	w12, #0
	b	LBB0_7
LBB0_3:
	asr	w0, wzr, w8
	ret
LBB0_4:
	and	x11, x9, #0xfffffff0
	dup.4s	v0, w8
	movi.2d	v1, #0000000000000000
	movi.2d	v2, #0xffffffffffffffff
	movi.4s	v3, #3
Lloh0:
	adrp	x12, lCPI0_0@PAGE
Lloh1:
	ldr	q4, [x12, lCPI0_0@PAGEOFF]
	movi.4s	v5, #7
	add	x12, x10, #32
	movi.4s	v6, #11
	movi.4s	v7, #2
	movi.4s	v16, #16
	mov	x13, x11
	movi.2d	v17, #0000000000000000
	movi.2d	v18, #0000000000000000
	movi.2d	v19, #0000000000000000
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	add.4s	v20, v4, v2
	add.4s	v21, v4, v3
	add.4s	v22, v4, v5
	add.4s	v23, v4, v6
	cmhi.4s	v20, v7, v20
	cmhi.4s	v21, v7, v21
	cmhi.4s	v22, v7, v22
	cmhi.4s	v23, v7, v23
	bic.16b	v20, v0, v20
	bic.16b	v21, v0, v21
	bic.16b	v22, v0, v22
	bic.16b	v23, v0, v23
	ldp	q24, q25, [x12, #-32]
	ldp	q26, q27, [x12], #64
	ushl.4s	v20, v24, v20
	ushl.4s	v21, v25, v21
	ushl.4s	v22, v26, v22
	ushl.4s	v23, v27, v23
	add.4s	v1, v20, v1
	add.4s	v17, v21, v17
	add.4s	v18, v22, v18
	add.4s	v19, v23, v19
	add.4s	v4, v4, v16
	subs	x13, x13, #16
	b.ne	LBB0_5
; %bb.6:
	add.4s	v0, v17, v1
	add.4s	v0, v18, v0
	add.4s	v0, v19, v0
	addv.4s	s0, v0
	fmov	w12, s0
	cmp	x11, x9
	b.eq	LBB0_9
LBB0_7:
	sub	w13, w11, #1
	add	x10, x10, x11, lsl #2
	sub	x9, x9, x11
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	cmp	w13, #2
	csel	w11, wzr, w8, lo
	ldr	w14, [x10], #4
	lsl	w11, w14, w11
	add	w12, w11, w12
	add	w13, w13, #1
	subs	x9, x9, #1
	b.ne	LBB0_8
LBB0_9:
	asr	w0, w12, w8
	ret
	.loh AdrpLdr	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
.subsections_via_symbols
