	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function ioat_dca_get_tag
LCPI0_0:
	.long	0                               ## 0x0
	.long	1                               ## 0x1
	.long	2                               ## 0x2
	.long	3                               ## 0x3
LCPI0_1:
	.long	4                               ## 0x4
	.long	4                               ## 0x4
	.long	4                               ## 0x4
	.long	4                               ## 0x4
LCPI0_2:
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
LCPI0_3:
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
LCPI0_4:
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_ioat_dca_get_tag:                      ## @ioat_dca_get_tag
	.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	$32, %rsp
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movl	%edx, %ebx
	callq	_dca_priv
	movq	%rax, %r14
	movl	%ebx, %edi
	callq	_cpu_physical_id
	movq	_IOAT_TAG_MAP_LEN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r10d
	testl	%r10d, %r10d
	jle	LBB0_1
## %bb.2:
	movq	(%r14), %rdi
	movq	_DCA_TAG_MAP_VALID@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r9d
	movl	%r9d, %r8d
	notl	%r8d
	cmpl	$8, %r10d
	jae	LBB0_4
## %bb.3:
	xorl	%ecx, %ecx
	xorl	%edx, %edx
	jmp	LBB0_7
LBB0_1:
	xorl	%edx, %edx
	jmp	LBB0_11
LBB0_4:
	movl	%r10d, %ecx
	andl	$-8, %ecx
	movd	%r9d, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movdqa	%xmm0, -48(%rbp)                ## 16-byte Spill
	movd	%r8d, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movdqa	%xmm0, -32(%rbp)                ## 16-byte Spill
	movd	%eax, %xmm0
	pshufd	$0, %xmm0, %xmm9                ## xmm9 = xmm0[0,0,0,0]
	leaq	(,%r10,4), %rdx
	andq	$-32, %rdx
	movdqa	LCPI0_0(%rip), %xmm4            ## xmm4 = [0,1,2,3]
	pxor	%xmm13, %xmm13
	xorl	%ebx, %ebx
	movdqa	LCPI0_2(%rip), %xmm14           ## xmm14 = [1,1,1,1]
	pxor	%xmm15, %xmm15
	pxor	%xmm10, %xmm10
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	(%rdi,%rbx), %xmm5
	movdqu	16(%rdi,%rbx), %xmm1
	movdqa	%xmm5, %xmm0
	movdqa	-32(%rbp), %xmm7                ## 16-byte Reload
	pand	%xmm7, %xmm0
	pshuflw	$254, %xmm0, %xmm2              ## xmm2 = xmm0[2,3,3,3,4,5,6,7]
	movdqa	%xmm9, %xmm6
	psrld	%xmm2, %xmm6
	pshufd	$238, %xmm0, %xmm2              ## xmm2 = xmm0[2,3,2,3]
	pshuflw	$254, %xmm2, %xmm3              ## xmm3 = xmm2[2,3,3,3,4,5,6,7]
	movdqa	%xmm9, %xmm8
	psrld	%xmm3, %xmm8
	pshuflw	$84, %xmm0, %xmm0               ## xmm0 = xmm0[0,1,1,1,4,5,6,7]
	movdqa	%xmm9, %xmm11
	psrld	%xmm0, %xmm11
	pshuflw	$84, %xmm2, %xmm0               ## xmm0 = xmm2[0,1,1,1,4,5,6,7]
	movdqa	%xmm9, %xmm3
	psrld	%xmm0, %xmm3
	movdqa	-48(%rbp), %xmm12               ## 16-byte Reload
	movdqa	%xmm12, %xmm0
	pand	%xmm5, %xmm0
	pcmpeqd	%xmm13, %xmm0
	pblendw	$15, %xmm6, %xmm8               ## xmm8 = xmm6[0,1,2,3],xmm8[4,5,6,7]
	movdqa	%xmm1, %xmm2
	pand	%xmm7, %xmm2
	pblendw	$15, %xmm11, %xmm3              ## xmm3 = xmm11[0,1,2,3],xmm3[4,5,6,7]
	pblendw	$204, %xmm8, %xmm3              ## xmm3 = xmm3[0,1],xmm8[2,3],xmm3[4,5],xmm8[6,7]
	pshuflw	$254, %xmm2, %xmm7              ## xmm7 = xmm2[2,3,3,3,4,5,6,7]
	movdqa	%xmm9, %xmm6
	psrld	%xmm7, %xmm6
	pand	%xmm14, %xmm3
	pcmpeqd	%xmm13, %xmm5
	pandn	%xmm14, %xmm5
	blendvps	%xmm0, %xmm5, %xmm3
	pshufd	$238, %xmm2, %xmm0              ## xmm0 = xmm2[2,3,2,3]
	pshuflw	$254, %xmm0, %xmm5              ## xmm5 = xmm0[2,3,3,3,4,5,6,7]
	movdqa	%xmm9, %xmm7
	psrld	%xmm5, %xmm7
	pshuflw	$84, %xmm2, %xmm2               ## xmm2 = xmm2[0,1,1,1,4,5,6,7]
	movdqa	%xmm9, %xmm5
	psrld	%xmm2, %xmm5
	pshuflw	$84, %xmm0, %xmm0               ## xmm0 = xmm0[0,1,1,1,4,5,6,7]
	movdqa	%xmm9, %xmm2
	psrld	%xmm0, %xmm2
	pblendw	$15, %xmm6, %xmm7               ## xmm7 = xmm6[0,1,2,3],xmm7[4,5,6,7]
	pblendw	$15, %xmm5, %xmm2               ## xmm2 = xmm5[0,1,2,3],xmm2[4,5,6,7]
	pblendw	$204, %xmm7, %xmm2              ## xmm2 = xmm2[0,1],xmm7[2,3],xmm2[4,5],xmm7[6,7]
	pand	%xmm1, %xmm12
	pcmpeqd	%xmm13, %xmm12
	pand	%xmm14, %xmm2
	pcmpeqd	%xmm13, %xmm1
	pandn	%xmm14, %xmm1
	movdqa	%xmm12, %xmm0
	blendvps	%xmm0, %xmm1, %xmm2
	movdqa	%xmm4, %xmm0
	pslld	$23, %xmm0
	movdqa	LCPI0_3(%rip), %xmm1            ## xmm1 = [1065353216,1065353216,1065353216,1065353216]
	paddd	%xmm1, %xmm0
	cvttps2dq	%xmm0, %xmm0
	pmulld	%xmm3, %xmm0
	por	%xmm0, %xmm15
	movdqa	%xmm4, %xmm0
	paddd	LCPI0_1(%rip), %xmm0
	pslld	$23, %xmm0
	paddd	%xmm1, %xmm0
	cvttps2dq	%xmm0, %xmm0
	pmulld	%xmm2, %xmm0
	por	%xmm0, %xmm10
	paddd	LCPI0_4(%rip), %xmm4
	addq	$32, %rbx
	cmpq	%rbx, %rdx
	jne	LBB0_5
## %bb.6:
	por	%xmm15, %xmm10
	pshufd	$238, %xmm10, %xmm0             ## xmm0 = xmm10[2,3,2,3]
	por	%xmm10, %xmm0
	pshufd	$85, %xmm0, %xmm1               ## xmm1 = xmm0[1,1,1,1]
	por	%xmm0, %xmm1
	movd	%xmm1, %edx
	cmpq	%r10, %rcx
	jne	LBB0_7
LBB0_11:
	movl	%edx, %eax
	addq	$32, %rsp
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.p2align	4, 0x90
LBB0_9:                                 ##   in Loop: Header=BB0_7 Depth=1
	xorl	%ebx, %ebx
	testl	%esi, %esi
	setne	%bl
LBB0_10:                                ##   in Loop: Header=BB0_7 Depth=1
	shll	%cl, %ebx
	orl	%ebx, %edx
	incq	%rcx
	cmpq	%rcx, %r10
	je	LBB0_11
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	movl	(%rdi,%rcx,4), %esi
	testl	%esi, %r9d
	je	LBB0_9
## %bb.8:                               ##   in Loop: Header=BB0_7 Depth=1
	andl	%r8d, %esi
	xorl	%ebx, %ebx
	btl	%esi, %eax
	setb	%bl
	jmp	LBB0_10
	.cfi_endproc
                                        ## -- End function
	.comm	_IOAT_TAG_MAP_LEN,4,2           ## @IOAT_TAG_MAP_LEN
	.comm	_DCA_TAG_MAP_VALID,4,2          ## @DCA_TAG_MAP_VALID
	.no_dead_strip	_ioat_dca_get_tag
.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 ioat_dca_get_tag
lCPI0_0:
	.long	0                               ; 0x0
	.long	1                               ; 0x1
	.long	2                               ; 0x2
	.long	3                               ; 0x3
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_ioat_dca_get_tag:                      ; @ioat_dca_get_tag
	.cfi_startproc
; %bb.0:
	stp	d11, d10, [sp, #-64]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 64
	stp	d9, d8, [sp, #16]               ; 16-byte Folded Spill
	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
	.cfi_offset b8, -40
	.cfi_offset b9, -48
	.cfi_offset b10, -56
	.cfi_offset b11, -64
	mov	x20, x2
	bl	_dca_priv
	mov	x19, x0
	mov	x0, x20
	bl	_cpu_physical_id
Lloh0:
	adrp	x8, _IOAT_TAG_MAP_LEN@GOTPAGE
Lloh1:
	ldr	x8, [x8, _IOAT_TAG_MAP_LEN@GOTPAGEOFF]
Lloh2:
	ldr	w9, [x8]
	cmp	w9, #1
	b.lt	LBB0_3
; %bb.1:
	ldr	x10, [x19]
Lloh3:
	adrp	x8, _DCA_TAG_MAP_VALID@GOTPAGE
Lloh4:
	ldr	x8, [x8, _DCA_TAG_MAP_VALID@GOTPAGEOFF]
Lloh5:
	ldr	w11, [x8]
	mvn	w12, w11
	cmp	w9, #16
	b.hs	LBB0_4
; %bb.2:
	mov	x13, #0
	mov	w8, #0
	b	LBB0_7
LBB0_3:
	mov	w8, #0
	b	LBB0_8
LBB0_4:
	dup.4s	v0, w11
	and	x13, x9, #0xfffffff0
	dup.4s	v1, w12
	movi.2d	v2, #0000000000000000
	dup.4s	v3, w0
	movi.4s	v4, #4
	movi.4s	v5, #8
Lloh6:
	adrp	x8, lCPI0_0@PAGE
Lloh7:
	ldr	q6, [x8, lCPI0_0@PAGEOFF]
	add	x8, x10, #32
	movi.4s	v7, #12
	movi.4s	v16, #1
	movi.4s	v17, #16
	mov	x14, x13
	movi.2d	v18, #0000000000000000
	movi.2d	v19, #0000000000000000
	movi.2d	v20, #0000000000000000
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	add.4s	v21, v6, v4
	add.4s	v22, v6, v5
	add.4s	v23, v6, v7
	ldp	q24, q25, [x8, #-32]
	ldp	q26, q27, [x8], #64
	and.16b	v28, v0, v24
	and.16b	v29, v0, v25
	and.16b	v30, v0, v26
	and.16b	v31, v0, v27
	cmeq.4s	v28, v28, #0
	cmeq.4s	v29, v29, #0
	cmeq.4s	v30, v30, #0
	cmeq.4s	v31, v31, #0
	and.16b	v8, v24, v1
	and.16b	v9, v25, v1
	and.16b	v10, v26, v1
	and.16b	v11, v27, v1
	neg.4s	v8, v8
	ushl.4s	v8, v3, v8
	neg.4s	v9, v9
	ushl.4s	v9, v3, v9
	neg.4s	v10, v10
	ushl.4s	v10, v3, v10
	neg.4s	v11, v11
	ushl.4s	v11, v3, v11
	cmtst.4s	v24, v24, v24
	cmtst.4s	v25, v25, v25
	cmtst.4s	v26, v26, v26
	cmtst.4s	v27, v27, v27
	bif.16b	v24, v8, v28
	and.16b	v24, v24, v16
	bif.16b	v25, v9, v29
	and.16b	v25, v25, v16
	bif.16b	v26, v10, v30
	and.16b	v26, v26, v16
	bif.16b	v27, v11, v31
	and.16b	v27, v27, v16
	ushl.4s	v24, v24, v6
	ushl.4s	v21, v25, v21
	ushl.4s	v22, v26, v22
	ushl.4s	v23, v27, v23
	orr.16b	v2, v24, v2
	orr.16b	v18, v21, v18
	orr.16b	v19, v22, v19
	orr.16b	v20, v23, v20
	add.4s	v6, v6, v17
	subs	x14, x14, #16
	b.ne	LBB0_5
; %bb.6:
	orr.16b	v0, v18, v2
	orr.16b	v0, v19, v0
	orr.16b	v0, v20, v0
	ext.16b	v1, v0, v0, #8
	orr.8b	v0, v0, v1
	fmov	w8, s0
	mov.s	w14, v0[1]
	orr	w8, w8, w14
	cmp	x13, x9
	b.eq	LBB0_8
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w14, [x10, x13, lsl #2]
	cmp	w14, #0
	cset	w15, ne
	and	w16, w14, w12
	lsr	w16, w0, w16
	and	w16, w16, #0x1
	tst	w11, w14
	csel	w14, w15, w16, eq
	lsl	w14, w14, w13
	orr	w8, w14, w8
	add	x13, x13, #1
	cmp	x9, x13
	b.ne	LBB0_7
LBB0_8:
	mov	x0, x8
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #16]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp], #64             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdr	Lloh6, Lloh7
	.cfi_endproc
                                        ; -- End function
	.comm	_IOAT_TAG_MAP_LEN,4,2           ; @IOAT_TAG_MAP_LEN
	.comm	_DCA_TAG_MAP_VALID,4,2          ; @DCA_TAG_MAP_VALID
	.no_dead_strip	_ioat_dca_get_tag
.subsections_via_symbols
