	.file	"extr_route6d.c_mask2len.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	mask2len, @function
mask2len:
.LFB0:
	.cfi_startproc
	endbr64
	test	esi, esi
	jle	.L14
	lea	eax, -1[rsi]
	xor	r8d, r8d
	lea	rdx, 4[rdi+rax*4]
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L17:
	add	rdi, 4
	add	r8d, 8
	cmp	rdx, rdi
	je	.L1
.L4:
	mov	eax, DWORD PTR [rdi]
	cmp	eax, 255
	je	.L17
	cmp	eax, 254
	jg	.L1
	cmp	eax, 223
	jle	.L18
	sub	eax, 224
	cmp	eax, 30
	ja	.L1
	lea	rdx, .L13[rip]
	movsx	rax, DWORD PTR [rdx+rax*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L13:
	.long	.L9-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L8-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L7-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L1-.L13
	.long	.L6-.L13
	.long	.L1-.L13
	.long	.L5-.L13
	.text
	.p2align 4,,10
	.p2align 3
.L18:
	cmp	eax, 128
	je	.L11
	cmp	eax, 192
	jne	.L1
	add	r8d, 2
.L1:
	mov	eax, r8d
	ret
.L5:
	add	r8d, 7
	jmp	.L1
.L9:
	add	r8d, 3
	jmp	.L1
.L8:
	add	r8d, 4
	jmp	.L1
.L7:
	add	r8d, 5
	jmp	.L1
.L6:
	add	r8d, 6
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L11:
	add	r8d, 1
	jmp	.L1
.L14:
	xor	r8d, r8d
	jmp	.L1
	.cfi_endproc
.LFE0:
	.size	mask2len, .-mask2len
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_route6d.c_mask2len.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	mask2len, %function
mask2len:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	@ link register save eliminated.
	cmp	r1, #0
	mov	ip, r0
	ble	.L14
	mov	r2, #0
	sub	ip, ip, #4
	mov	r0, r2
	b	.L4
.L19:
	cmp	r1, r2
	add	r0, r0, #8
	bxeq	lr
.L4:
	ldr	r3, [ip, #4]!
	add	r2, r2, #1
	cmp	r3, #255
	beq	.L19
	cmp	r3, #254
	bxgt	lr
	cmp	r3, #223
	ble	.L20
	sub	r3, r3, #224
	cmp	r3, #30
	ldrls	pc, [pc, r3, asl #2]
	b	.L1
.L13:
	.word	.L9
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L8
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L7
	.word	.L1
	.word	.L1
	.word	.L1
	.word	.L6
	.word	.L1
	.word	.L5
.L1:
	bx	lr
.L20:
	cmp	r3, #128
	beq	.L11
	cmp	r3, #192
	bxne	lr
	add	r0, r0, #2
	bx	lr
.L5:
	add	r0, r0, #7
	bx	lr
.L9:
	add	r0, r0, #3
	bx	lr
.L8:
	add	r0, r0, #4
	bx	lr
.L7:
	add	r0, r0, #5
	bx	lr
.L6:
	add	r0, r0, #6
	bx	lr
.L11:
	add	r0, r0, #1
	bx	lr
.L14:
	mov	r0, #0
	bx	lr
	.size	mask2len, .-mask2len
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
