	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function bgx_get_map
LCPI0_0:
	.long	0                               ## 0x0
	.long	1                               ## 0x1
	.space	4
	.space	4
LCPI0_1:
	.long	2                               ## 0x2
	.long	2                               ## 0x2
	.space	4
	.space	4
LCPI0_2:
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
LCPI0_3:
	.long	4                               ## 0x4
	.long	4                               ## 0x4
	.space	4
	.space	4
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_bgx_get_map
	.p2align	4, 0x90
_bgx_get_map:                           ## @bgx_get_map
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	_max_bgx_per_node@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	testl	%edx, %edx
	jle	LBB0_1
## %bb.2:
	movq	_bgx_vnic@GOTPCREL(%rip), %rax
	movq	(%rax), %r8
	imull	%edx, %edi
	movslq	%edi, %r9
	xorl	%r10d, %r10d
	cmpl	$4, %edx
	jae	LBB0_4
## %bb.3:
	xorl	%ecx, %ecx
	xorl	%eax, %eax
	jmp	LBB0_7
LBB0_1:
	xorl	%eax, %eax
	popq	%rbp
	retq
LBB0_4:
	movl	%edx, %ecx
	andl	$-4, %ecx
	leaq	(%r8,%r9,8), %rax
	addq	$16, %rax
	leaq	(,%rdx,8), %rdi
	andq	$-32, %rdi
	movdqa	LCPI0_0(%rip), %xmm1            ## xmm1 = <0,1,u,u>
	pxor	%xmm10, %xmm10
	xorl	%esi, %esi
	movdqa	LCPI0_1(%rip), %xmm8            ## xmm8 = <2,2,u,u>
	movdqa	LCPI0_2(%rip), %xmm4            ## xmm4 = [1065353216,1065353216,1065353216,1065353216]
	movdqa	LCPI0_3(%rip), %xmm9            ## xmm9 = <4,4,u,u>
	pxor	%xmm5, %xmm5
	pxor	%xmm2, %xmm2
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movdqa	%xmm1, %xmm7
	paddd	%xmm8, %xmm7
	movdqu	-16(%rax,%rsi), %xmm3
	movdqu	(%rax,%rsi), %xmm6
	pcmpeqq	%xmm10, %xmm3
	pshufd	$232, %xmm3, %xmm3              ## xmm3 = xmm3[0,2,2,3]
	pcmpeqq	%xmm10, %xmm6
	pshufd	$232, %xmm6, %xmm6              ## xmm6 = xmm6[0,2,2,3]
	movdqa	%xmm1, %xmm0
	pslld	$23, %xmm0
	paddd	%xmm4, %xmm0
	cvttps2dq	%xmm0, %xmm0
	pandn	%xmm0, %xmm3
	por	%xmm3, %xmm5
	pslld	$23, %xmm7
	paddd	%xmm4, %xmm7
	cvttps2dq	%xmm7, %xmm0
	pandn	%xmm0, %xmm6
	por	%xmm6, %xmm2
	paddd	%xmm9, %xmm1
	addq	$32, %rsi
	cmpq	%rsi, %rdi
	jne	LBB0_5
## %bb.6:
	por	%xmm5, %xmm2
	pshufd	$85, %xmm2, %xmm0               ## xmm0 = xmm2[1,1,1,1]
	por	%xmm2, %xmm0
	movd	%xmm0, %eax
	cmpq	%rdx, %rcx
	je	LBB0_9
LBB0_7:
	leaq	(%r8,%r9,8), %rsi
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	movl	$1, %edi
	shll	%cl, %edi
	cmpq	$0, (%rsi,%rcx,8)
	cmovel	%r10d, %edi
	orl	%edi, %eax
	incq	%rcx
	cmpq	%rcx, %rdx
	jne	LBB0_8
LBB0_9:
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_max_bgx_per_node,4,2           ## @max_bgx_per_node
	.comm	_bgx_vnic,8,3                   ## @bgx_vnic
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ; -- Begin function bgx_get_map
lCPI0_0:
	.long	0                               ; 0x0
	.long	1                               ; 0x1
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_bgx_get_map
	.p2align	2
_bgx_get_map:                           ; @bgx_get_map
	.cfi_startproc
; %bb.0:
Lloh0:
	adrp	x8, _max_bgx_per_node@GOTPAGE
Lloh1:
	ldr	x8, [x8, _max_bgx_per_node@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
	cmp	w8, #1
	b.lt	LBB0_3
; %bb.1:
Lloh3:
	adrp	x9, _bgx_vnic@GOTPAGE
Lloh4:
	ldr	x9, [x9, _bgx_vnic@GOTPAGEOFF]
Lloh5:
	ldr	x10, [x9]
	mul	w9, w8, w0
	sxtw	x11, w9
	cmp	w8, #8
	b.hs	LBB0_4
; %bb.2:
	mov	x9, #0
	mov	w0, #0
	b	LBB0_7
LBB0_3:
	mov	w0, #0
	ret
LBB0_4:
	and	x9, x8, #0xfffffff8
	add	x12, x10, x11, lsl #3
	add	x12, x12, #32
	movi.2d	v0, #0000000000000000
	movi.2s	v1, #2
	movi.2s	v2, #4
Lloh6:
	adrp	x13, lCPI0_0@PAGE
Lloh7:
	ldr	d3, [x13, lCPI0_0@PAGEOFF]
	movi.2s	v4, #6
	movi.2s	v5, #1
	movi.2s	v6, #8
	mov	x13, x9
	movi.2d	v7, #0000000000000000
	movi.2d	v16, #0000000000000000
	movi.2d	v17, #0000000000000000
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	add.2s	v18, v3, v1
	add.2s	v19, v3, v2
	add.2s	v20, v3, v4
	ldp	q21, q22, [x12, #-32]
	ldp	q23, q24, [x12], #64
	cmeq.2d	v21, v21, #0
	xtn.2s	v21, v21
	cmeq.2d	v22, v22, #0
	xtn.2s	v22, v22
	cmeq.2d	v23, v23, #0
	xtn.2s	v23, v23
	cmeq.2d	v24, v24, #0
	xtn.2s	v24, v24
	ushl.2s	v25, v5, v3
	ushl.2s	v18, v5, v18
	ushl.2s	v19, v5, v19
	ushl.2s	v20, v5, v20
	bic.8b	v21, v25, v21
	bic.8b	v18, v18, v22
	bic.8b	v19, v19, v23
	bic.8b	v20, v20, v24
	orr.8b	v0, v21, v0
	orr.8b	v7, v18, v7
	orr.8b	v16, v19, v16
	orr.8b	v17, v20, v17
	add.2s	v3, v3, v6
	subs	x13, x13, #8
	b.ne	LBB0_5
; %bb.6:
	orr.8b	v0, v7, v0
	orr.8b	v0, v16, v0
	orr.8b	v0, v17, v0
	mov.s	w12, v0[1]
	fmov	w13, s0
	orr	w0, w13, w12
	cmp	x9, x8
	b.eq	LBB0_9
LBB0_7:
	add	x10, x10, x11, lsl #3
	mov	w11, #1
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	ldr	x12, [x10, x9, lsl #3]
	lsl	w13, w11, w9
	cmp	x12, #0
	csel	w12, wzr, w13, eq
	orr	w0, w12, w0
	add	x9, x9, #1
	cmp	x8, x9
	b.ne	LBB0_8
LBB0_9:
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdr	Lloh6, Lloh7
	.cfi_endproc
                                        ; -- End function
	.comm	_max_bgx_per_node,4,2           ; @max_bgx_per_node
	.comm	_bgx_vnic,8,3                   ; @bgx_vnic
.subsections_via_symbols
