	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_needed_again                   ## -- Begin function needed_again
	.p2align	4, 0x90
_needed_again:                          ## @needed_again
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
                                        ## kill: def $esi killed $esi def $rsi
	movq	_itype@GOTPCREL(%rip), %rax
	movq	(%rax), %r8
	testl	%esi, %esi
	jle	LBB0_5
## %bb.1:
	leal	-1(%rsi), %eax
	movq	(%r8,%rax,8), %rcx
	movq	_UJUMP@GOTPCREL(%rip), %rdx
	movq	(%rdx), %r10
	movq	_RJUMP@GOTPCREL(%rip), %rdx
	movq	(%rdx), %r9
	cmpq	%r10, %rcx
	je	LBB0_3
## %bb.2:
	cmpq	%r9, %rcx
	jne	LBB0_6
LBB0_3:
	movq	_ba@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movl	(%rcx,%rax,4), %ecx
	movq	_start@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%eax, %eax
	cmpl	%edx, %ecx
	jl	LBB0_17
## %bb.4:
	movq	_slen@GOTPCREL(%rip), %rbx
	movl	(%rbx), %ebx
	leal	(%rdx,%rbx,4), %edx
	addl	$-4, %edx
	cmpl	%edx, %ecx
	jle	LBB0_6
	jmp	LBB0_17
LBB0_5:
	movq	_UJUMP@GOTPCREL(%rip), %rax
	movq	(%rax), %r10
	movq	_RJUMP@GOTPCREL(%rip), %rax
	movq	(%rax), %r9
LBB0_6:
	movq	_slen@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movl	%esi, %r11d
	movslq	%esi, %r12
	cmpl	%esi, %ecx
	cmovgl	%ecx, %r11d
	jle	LBB0_12
## %bb.7:
	movq	(%r8,%r12,8), %rdx
	movl	$1, %r13d
	cmpq	%r10, %rdx
	je	LBB0_13
## %bb.8:
	cmpq	%r9, %rdx
	je	LBB0_13
## %bb.9:
	movq	_SYSCALL@GOTPCREL(%rip), %rax
	movq	(%rax), %r15
	xorl	%eax, %eax
	cmpq	%r15, %rdx
	je	LBB0_17
## %bb.10:
	movq	_SYSTEM@GOTPCREL(%rip), %rbx
	movq	(%rbx), %r14
	cmpq	%r14, %rdx
	je	LBB0_17
## %bb.11:
	subl	%esi, %r11d
	cmpl	$1, %r11d
	jne	LBB0_18
LBB0_12:
	notl	%esi
	addl	%esi, %ecx
	movl	%ecx, %r13d
	testl	%ecx, %ecx
	jle	LBB0_16
LBB0_13:
	movq	_rs1@GOTPCREL(%rip), %rsi
	movl	$1, %r9d
	movl	%edi, %ecx
	shll	%cl, %r9d
	movq	_rs2@GOTPCREL(%rip), %rbx
	movq	_unneeded_reg@GOTPCREL(%rip), %rdx
	movl	%r13d, %ecx
	shlq	$2, %r12
	movq	(%rsi), %rsi
	addq	%r12, %rsi
	movq	(%rbx), %rbx
	addq	%r12, %rbx
	addq	(%rdx), %r12
	movl	$10, %r8d
	movl	$10, %edx
	.p2align	4, 0x90
LBB0_14:                                ## =>This Inner Loop Header: Depth=1
	cmpl	%edi, (%rsi,%rcx,4)
	cmovel	%ecx, %edx
	cmpl	%edi, (%rbx,%rcx,4)
	cmovel	%ecx, %edx
	testl	%r9d, (%r12,%rcx,4)
	cmovnel	%r8d, %edx
	leaq	-1(%rcx), %rax
	cmpq	$1, %rcx
	movq	%rax, %rcx
	ja	LBB0_14
## %bb.15:
	xorl	%eax, %eax
	cmpl	$10, %edx
	setl	%al
	jmp	LBB0_17
LBB0_16:
	xorl	%eax, %eax
LBB0_17:
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_18:
	movq	8(%r8,%r12,8), %rax
	cmpq	%r10, %rax
	je	LBB0_57
## %bb.19:
	cmpq	%r9, %rax
	je	LBB0_57
## %bb.20:
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.21:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.22:
	cmpl	$2, %r11d
	je	LBB0_12
## %bb.23:
	movq	16(%r8,%r12,8), %rax
	cmpq	%r10, %rax
	je	LBB0_59
## %bb.24:
	cmpq	%r9, %rax
	je	LBB0_59
## %bb.25:
	movl	$2, %r13d
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.26:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.27:
	cmpl	$3, %r11d
	je	LBB0_12
## %bb.28:
	movq	24(%r8,%r12,8), %rax
	cmpq	%r10, %rax
	je	LBB0_61
## %bb.29:
	cmpq	%r9, %rax
	je	LBB0_61
## %bb.30:
	movl	$3, %r13d
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.31:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.32:
	cmpl	$4, %r11d
	je	LBB0_12
## %bb.33:
	movq	32(%r8,%r12,8), %rax
	cmpq	%r10, %rax
	je	LBB0_63
## %bb.34:
	cmpq	%r9, %rax
	je	LBB0_63
## %bb.35:
	movl	$4, %r13d
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.36:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.37:
	cmpl	$5, %r11d
	je	LBB0_12
## %bb.38:
	movq	40(%r8,%r12,8), %rax
	cmpq	%r10, %rax
	je	LBB0_65
## %bb.39:
	cmpq	%r9, %rax
	je	LBB0_65
## %bb.40:
	movl	$5, %r13d
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.41:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.42:
	cmpl	$6, %r11d
	je	LBB0_12
## %bb.43:
	movq	48(%r8,%r12,8), %rax
	cmpq	%r10, %rax
	je	LBB0_67
## %bb.44:
	cmpq	%r9, %rax
	je	LBB0_67
## %bb.45:
	movl	$6, %r13d
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.46:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.47:
	cmpl	$7, %r11d
	je	LBB0_12
## %bb.48:
	movq	56(%r8,%r12,8), %rax
	movl	$8, %r13d
	cmpq	%r10, %rax
	je	LBB0_13
## %bb.49:
	cmpq	%r9, %rax
	je	LBB0_13
## %bb.50:
	movl	$7, %r13d
	cmpq	%r15, %rax
	je	LBB0_13
## %bb.51:
	cmpq	%r14, %rax
	je	LBB0_13
## %bb.52:
	cmpl	$8, %r11d
	je	LBB0_12
## %bb.53:
	movq	64(%r8,%r12,8), %rax
	movl	$9, %r13d
	cmpq	%r10, %rax
	je	LBB0_13
## %bb.54:
	cmpq	%r9, %rax
	je	LBB0_13
## %bb.55:
	cmpq	%r15, %rax
	sete	%cl
	cmpq	%r14, %rax
	sete	%al
	orb	%cl, %al
	movzbl	%al, %r13d
	xorl	$9, %r13d
	jmp	LBB0_13
LBB0_57:
	movl	$2, %r13d
	jmp	LBB0_13
LBB0_59:
	movl	$3, %r13d
	jmp	LBB0_13
LBB0_61:
	movl	$4, %r13d
	jmp	LBB0_13
LBB0_63:
	movl	$5, %r13d
	jmp	LBB0_13
LBB0_65:
	movl	$6, %r13d
	jmp	LBB0_13
LBB0_67:
	movl	$7, %r13d
	jmp	LBB0_13
	.cfi_endproc
                                        ## -- End function
	.comm	_itype,8,3                      ## @itype
	.comm	_UJUMP,8,3                      ## @UJUMP
	.comm	_RJUMP,8,3                      ## @RJUMP
	.comm	_ba,8,3                         ## @ba
	.comm	_start,4,2                      ## @start
	.comm	_slen,4,2                       ## @slen
	.comm	_SYSCALL,8,3                    ## @SYSCALL
	.comm	_SYSTEM,8,3                     ## @SYSTEM
	.comm	_rs1,8,3                        ## @rs1
	.comm	_rs2,8,3                        ## @rs2
	.comm	_unneeded_reg,8,3               ## @unneeded_reg
	.comm	_CJUMP,8,3                      ## @CJUMP
	.comm	_SJUMP,8,3                      ## @SJUMP
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_needed_again                   ; -- Begin function needed_again
	.p2align	2
_needed_again:                          ; @needed_again
	.cfi_startproc
; %bb.0:
                                        ; kill: def $w1 killed $w1 def $x1
Lloh0:
	adrp	x8, _itype@GOTPAGE
Lloh1:
	ldr	x8, [x8, _itype@GOTPAGEOFF]
Lloh2:
	ldr	x9, [x8]
Lloh3:
	adrp	x10, _UJUMP@GOTPAGE
Lloh4:
	ldr	x10, [x10, _UJUMP@GOTPAGEOFF]
Lloh5:
	adrp	x11, _RJUMP@GOTPAGE
Lloh6:
	ldr	x11, [x11, _RJUMP@GOTPAGEOFF]
	cmp	w1, #0
	b.le	LBB0_4
; %bb.1:
	sub	w8, w1, #1
	ldr	x12, [x9, w8, uxtw #3]
	ldr	x10, [x10]
	ldr	x11, [x11]
	cmp	x12, x10
	ccmp	x12, x11, #4, ne
	b.ne	LBB0_5
; %bb.2:
Lloh7:
	adrp	x12, _ba@GOTPAGE
Lloh8:
	ldr	x12, [x12, _ba@GOTPAGEOFF]
Lloh9:
	ldr	x12, [x12]
	ldr	w8, [x12, x8, lsl #2]
Lloh10:
	adrp	x12, _start@GOTPAGE
Lloh11:
	ldr	x12, [x12, _start@GOTPAGEOFF]
Lloh12:
	ldr	w12, [x12]
	cmp	w8, w12
	b.lt	LBB0_14
; %bb.3:
Lloh13:
	adrp	x13, _slen@GOTPAGE
Lloh14:
	ldr	x13, [x13, _slen@GOTPAGEOFF]
Lloh15:
	ldr	w13, [x13]
	add	w12, w12, w13, lsl #2
	sub	w12, w12, #4
	cmp	w8, w12
	b.le	LBB0_5
	b	LBB0_14
LBB0_4:
	ldr	x10, [x10]
	ldr	x11, [x11]
LBB0_5:
Lloh16:
	adrp	x8, _slen@GOTPAGE
Lloh17:
	ldr	x8, [x8, _slen@GOTPAGEOFF]
Lloh18:
	ldr	w12, [x8]
	cmp	w12, w1
	csel	w15, w12, w1, gt
	sxtw	x8, w1
	cmp	w12, w1
	b.le	LBB0_10
; %bb.6:
	ldr	x16, [x9, x8, lsl #3]
	cmp	x16, x10
	ccmp	x16, x11, #4, ne
	b.ne	LBB0_8
LBB0_7:
	mov	w15, #1
	b	LBB0_11
LBB0_8:
Lloh19:
	adrp	x13, _SYSCALL@GOTPAGE
Lloh20:
	ldr	x13, [x13, _SYSCALL@GOTPAGEOFF]
Lloh21:
	ldr	x13, [x13]
Lloh22:
	adrp	x14, _SYSTEM@GOTPAGE
Lloh23:
	ldr	x14, [x14, _SYSTEM@GOTPAGEOFF]
Lloh24:
	ldr	x14, [x14]
	cmp	x16, x13
	ccmp	x16, x14, #4, ne
	b.eq	LBB0_14
; %bb.9:
	sub	w16, w15, w1
	cmp	w16, #1
	b.ne	LBB0_15
LBB0_10:
	mvn	w9, w1
	add	w15, w12, w9
	cmp	w15, #1
	b.lt	LBB0_14
LBB0_11:
Lloh25:
	adrp	x9, _rs1@GOTPAGE
Lloh26:
	ldr	x9, [x9, _rs1@GOTPAGEOFF]
Lloh27:
	ldr	x11, [x9]
Lloh28:
	adrp	x9, _rs2@GOTPAGE
Lloh29:
	ldr	x9, [x9, _rs2@GOTPAGEOFF]
Lloh30:
	ldr	x12, [x9]
Lloh31:
	adrp	x13, _unneeded_reg@GOTPAGE
Lloh32:
	ldr	x13, [x13, _unneeded_reg@GOTPAGEOFF]
	mov	w9, #1
	lsl	w9, w9, w0
	mov	w10, w15
	lsl	x14, x8, #2
	add	x8, x11, x14
Lloh33:
	ldr	x13, [x13]
	add	x11, x12, x14
	add	x12, x13, x14
	mov	w13, #10
	mov	w14, #10
LBB0_12:                                ; =>This Inner Loop Header: Depth=1
	lsl	x15, x10, #2
	ldr	w16, [x8, x15]
	cmp	w16, w0
	ldr	w16, [x11, x15]
	ccmp	w16, w0, #4, ne
	csel	w14, w10, w14, eq
	ldr	w15, [x12, x15]
	tst	w15, w9
	csel	w14, w14, w13, eq
	subs	x10, x10, #1
	b.hi	LBB0_12
; %bb.13:
	cmp	w14, #10
	cset	w0, lt
	ret
LBB0_14:
	mov	w0, #0
	ret
LBB0_15:
	add	x15, x9, x8, lsl #3
	ldr	x15, [x15, #8]
	cmp	x15, x10
	ccmp	x15, x11, #4, ne
	b.ne	LBB0_17
LBB0_16:
	mov	w15, #2
	b	LBB0_11
LBB0_17:
	cmp	x15, x13
	ccmp	x15, x14, #4, ne
	b.eq	LBB0_7
; %bb.18:
	cmp	w16, #2
	b.eq	LBB0_10
; %bb.19:
	add	x15, x9, x8, lsl #3
	ldr	x15, [x15, #16]
	cmp	x15, x10
	ccmp	x15, x11, #4, ne
	b.ne	LBB0_21
; %bb.20:
	mov	w15, #3
	b	LBB0_11
LBB0_21:
	cmp	x15, x13
	ccmp	x15, x14, #4, ne
	b.eq	LBB0_16
; %bb.22:
	cmp	w16, #3
	b.eq	LBB0_10
; %bb.23:
	add	x15, x9, x8, lsl #3
	ldr	x17, [x15, #24]
	mov	w15, #4
	cmp	x17, x10
	b.eq	LBB0_11
; %bb.24:
	cmp	x17, x11
	b.eq	LBB0_11
; %bb.25:
	mov	w15, #3
	cmp	x17, x13
	b.eq	LBB0_11
; %bb.26:
	cmp	x17, x14
	b.eq	LBB0_11
; %bb.27:
	cmp	w16, #4
	b.eq	LBB0_10
; %bb.28:
	add	x15, x9, x8, lsl #3
	ldr	x17, [x15, #32]
	mov	w15, #5
	cmp	x17, x10
	b.eq	LBB0_11
; %bb.29:
	cmp	x17, x11
	b.eq	LBB0_11
; %bb.30:
	mov	w15, #4
	cmp	x17, x13
	b.eq	LBB0_11
; %bb.31:
	cmp	x17, x14
	b.eq	LBB0_11
; %bb.32:
	cmp	w16, #5
	b.eq	LBB0_10
; %bb.33:
	add	x15, x9, x8, lsl #3
	ldr	x17, [x15, #40]
	mov	w15, #6
	cmp	x17, x10
	b.eq	LBB0_11
; %bb.34:
	cmp	x17, x11
	b.eq	LBB0_11
; %bb.35:
	mov	w15, #5
	cmp	x17, x13
	b.eq	LBB0_11
; %bb.36:
	cmp	x17, x14
	b.eq	LBB0_11
; %bb.37:
	cmp	w16, #6
	b.eq	LBB0_10
; %bb.38:
	add	x15, x9, x8, lsl #3
	ldr	x17, [x15, #48]
	mov	w15, #7
	cmp	x17, x10
	b.eq	LBB0_11
; %bb.39:
	cmp	x17, x11
	b.eq	LBB0_11
; %bb.40:
	mov	w15, #6
	cmp	x17, x13
	b.eq	LBB0_11
; %bb.41:
	cmp	x17, x14
	b.eq	LBB0_11
; %bb.42:
	cmp	w16, #7
	b.eq	LBB0_10
; %bb.43:
	add	x15, x9, x8, lsl #3
	ldr	x17, [x15, #56]
	mov	w15, #8
	cmp	x17, x10
	b.eq	LBB0_11
; %bb.44:
	cmp	x17, x11
	b.eq	LBB0_11
; %bb.45:
	mov	w15, #7
	cmp	x17, x13
	b.eq	LBB0_11
; %bb.46:
	cmp	x17, x14
	b.eq	LBB0_11
; %bb.47:
	cmp	w16, #8
	b.eq	LBB0_10
; %bb.48:
	add	x9, x9, x8, lsl #3
	ldr	x9, [x9, #64]
	mov	w15, #9
	cmp	x9, x10
	b.eq	LBB0_11
; %bb.49:
	cmp	x9, x11
	b.eq	LBB0_11
; %bb.50:
	cmp	x9, x14
	ccmp	x9, x13, #4, ne
	mov	w9, #8
	cinc	w15, w9, ne
	b	LBB0_11
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh31, Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh28, Lloh29, Lloh30
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.cfi_endproc
                                        ; -- End function
	.comm	_itype,8,3                      ; @itype
	.comm	_UJUMP,8,3                      ; @UJUMP
	.comm	_RJUMP,8,3                      ; @RJUMP
	.comm	_ba,8,3                         ; @ba
	.comm	_start,4,2                      ; @start
	.comm	_slen,4,2                       ; @slen
	.comm	_SYSCALL,8,3                    ; @SYSCALL
	.comm	_SYSTEM,8,3                     ; @SYSTEM
	.comm	_rs1,8,3                        ; @rs1
	.comm	_rs2,8,3                        ; @rs2
	.comm	_unneeded_reg,8,3               ; @unneeded_reg
	.comm	_CJUMP,8,3                      ; @CJUMP
	.comm	_SJUMP,8,3                      ; @SJUMP
.subsections_via_symbols
