	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_in6_mask2len                   ## -- Begin function in6_mask2len
	.p2align	4, 0x90
_in6_mask2len:                          ## @in6_mask2len
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	%rsi, %rax
	subq	%rdi, %rax
	leaq	16(%rdi), %rcx
	cmpq	$17, %rax
	movq	%rsi, %r8
	cmovaeq	%rcx, %r8
	testq	%rsi, %rsi
	cmoveq	%rcx, %r8
	xorl	%edx, %edx
	movl	$0, %ecx
	cmpq	%r8, %rdi
	jae	LBB0_18
## %bb.1:
	xorl	%edx, %edx
	.p2align	4, 0x90
LBB0_2:                                 ## =>This Inner Loop Header: Depth=1
	movl	(%rdi), %esi
	cmpl	$255, %esi
	jne	LBB0_3
## %bb.16:                              ##   in Loop: Header=BB0_2 Depth=1
	incl	%edx
	addq	$4, %rdi
	cmpq	%r8, %rdi
	jb	LBB0_2
## %bb.17:
	xorl	%ecx, %ecx
LBB0_18:
	leal	(%rcx,%rdx,8), %eax
LBB0_19:
	popq	%rbp
	retq
LBB0_3:
	xorl	%ecx, %ecx
	testb	$-128, %sil
	je	LBB0_12
## %bb.4:
	movl	$1, %ecx
	testb	$64, %sil
	je	LBB0_11
## %bb.5:
	movl	$2, %ecx
	testb	$32, %sil
	je	LBB0_11
## %bb.6:
	movl	$3, %ecx
	testb	$16, %sil
	je	LBB0_11
## %bb.7:
	movl	$4, %ecx
	testb	$8, %sil
	je	LBB0_11
## %bb.8:
	movl	$5, %ecx
	testb	$4, %sil
	je	LBB0_11
## %bb.9:
	movl	$6, %ecx
	testb	$2, %sil
	je	LBB0_11
## %bb.10:
	movl	%esi, %ecx
	andl	$1, %ecx
	addl	$7, %ecx
LBB0_11:
	shll	%cl, %esi
	movl	$-1, %eax
	testb	%sil, %sil
	jne	LBB0_19
LBB0_12:
	addq	$4, %rdi
	.p2align	4, 0x90
LBB0_13:                                ## =>This Inner Loop Header: Depth=1
	cmpq	%r8, %rdi
	jae	LBB0_18
## %bb.14:                              ##   in Loop: Header=BB0_13 Depth=1
	cmpl	$0, (%rdi)
	leaq	4(%rdi), %rdi
	je	LBB0_13
## %bb.15:
	movl	$-1, %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
	.globl	_in6_mask2len                   ; -- Begin function in6_mask2len
	.p2align	2
_in6_mask2len:                          ; @in6_mask2len
	.cfi_startproc
; %bb.0:
	sub	x8, x1, x0
	cmp	x8, #16
	ccmp	x1, #0, #4, ls
	add	x8, x0, #16
	csel	x9, x8, x1, eq
	cmp	x0, x9
	b.hs	LBB0_4
; %bb.1:
	mov	w8, #0
LBB0_2:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w11, [x0]
	cmp	w11, #255
	b.ne	LBB0_7
; %bb.3:                                ;   in Loop: Header=BB0_2 Depth=1
	add	w8, w8, #1
	add	x0, x0, #4
	cmp	x0, x9
	b.lo	LBB0_2
	b	LBB0_5
LBB0_4:
	mov	w8, #0
LBB0_5:
	mov	w10, #0
LBB0_6:
	add	w0, w10, w8, lsl #3
	ret
LBB0_7:
	tbnz	w11, #7, LBB0_9
; %bb.8:
	mov	w10, #0
	b	LBB0_10
LBB0_9:
	mov	w10, #1
	mov	w12, #2
	mov	w13, #3
	mov	w14, #4
	mov	w15, #5
	mov	w16, #6
	tst	w11, #0x1
	mov	w17, #7
	cinc	w17, w17, ne
	tst	w11, #0x2
	csel	w16, w16, w17, eq
	tst	w11, #0x4
	csel	w15, w15, w16, eq
	tst	w11, #0x8
	csel	w14, w14, w15, eq
	tst	w11, #0x10
	csel	w13, w13, w14, eq
	tst	w11, #0x20
	csel	w12, w12, w13, eq
	tst	w11, #0x40
	csel	w10, w10, w12, eq
	lsl	w11, w11, w10
	tst	w11, #0xff
	b.ne	LBB0_13
LBB0_10:
	add	x11, x0, #4
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	cmp	x11, x9
	b.hs	LBB0_6
; %bb.12:                               ;   in Loop: Header=BB0_11 Depth=1
	ldr	w12, [x11], #4
	cbz	w12, LBB0_11
LBB0_13:
	mov	w0, #-1
	ret
	.cfi_endproc
                                        ; -- End function
.subsections_via_symbols
