	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function mri_char_constant
_mri_char_constant:                     ## @mri_char_constant
	.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
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	_input_line_pointer@GOTPCREL(%rip), %r13
	movq	(%r13), %r8
	cmpb	$39, (%r8)
	jne	LBB0_2
## %bb.1:
	cmpb	$39, 1(%r8)
	jne	LBB0_34
LBB0_2:
	movq	%rdi, -48(%rbp)                 ## 8-byte Spill
	movq	_SIZE_OF_LARGE_NUMBER@GOTPCREL(%rip), %rdi
	movl	(%rdi), %r9d
	testl	%r9d, %r9d
	jle	LBB0_27
## %bb.3:
	movq	_generic_bignum@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movl	$1, %r11d
	subl	%r9d, %r11d
	leal	-1(%r9), %r10d
	movq	_CHARS_PER_LITTLENUM@GOTPCREL(%rip), %r15
	jmp	LBB0_5
	.p2align	4, 0x90
LBB0_4:                                 ##   in Loop: Header=BB0_5 Depth=1
	incl	%r11d
	decl	%r10d
	cmpq	$1, %r9
	movq	%r12, %r9
	jle	LBB0_27
LBB0_5:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_8 Depth 2
                                        ##     Child Loop BB0_12 Depth 2
	leaq	-1(%r9), %r12
	movl	%r12d, %edx
	movl	$0, (%rax,%rdx,4)
	movl	(%r15), %ecx
	xorl	%ebx, %ebx
	xorl	%esi, %esi
	testl	%ecx, %ecx
	jg	LBB0_8
	jmp	LBB0_10
	.p2align	4, 0x90
LBB0_6:                                 ##   in Loop: Header=BB0_8 Depth=2
	incq	%r8
	movq	%r8, (%r13)
LBB0_7:                                 ##   in Loop: Header=BB0_8 Depth=2
	shll	$8, %ebx
	movl	%ebx, (%rax,%rdx,4)
	movsbl	(%r8), %ecx
	addl	%ecx, %ebx
	movl	%ebx, (%rax,%rdx,4)
	incq	%r8
	movq	%r8, (%r13)
	incl	%esi
	movl	(%r15), %ecx
	cmpl	%ecx, %esi
	jge	LBB0_10
LBB0_8:                                 ##   Parent Loop BB0_5 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	cmpb	$39, (%r8)
	jne	LBB0_7
## %bb.9:                               ##   in Loop: Header=BB0_8 Depth=2
	cmpb	$39, 1(%r8)
	je	LBB0_6
LBB0_10:                                ##   in Loop: Header=BB0_5 Depth=1
	movslq	(%rdi), %r14
	cmpq	%r14, %r9
	jge	LBB0_13
## %bb.11:                              ##   in Loop: Header=BB0_5 Depth=1
	cmpl	%ecx, %esi
	jge	LBB0_13
	.p2align	4, 0x90
LBB0_12:                                ##   Parent Loop BB0_5 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	shll	$8, %ebx
	movl	%ebx, (%rax,%rdx,4)
	incl	%esi
	cmpl	(%r15), %esi
	jl	LBB0_12
LBB0_13:                                ##   in Loop: Header=BB0_5 Depth=1
	cmpb	$39, (%r8)
	jne	LBB0_4
## %bb.14:                              ##   in Loop: Header=BB0_5 Depth=1
	cmpb	$39, 1(%r8)
	je	LBB0_4
## %bb.15:
	testl	%r9d, %r9d
	jle	LBB0_27
## %bb.16:
	testl	%r12d, %r12d
	je	LBB0_28
## %bb.17:
	movl	(%rdi), %r9d
	movl	%r9d, %r15d
	subl	%r12d, %r15d
	testl	%r15d, %r15d
	jle	LBB0_29
## %bb.18:
	movl	%r15d, %r8d
	cmpl	$8, %r15d
	jb	LBB0_20
## %bb.19:
	shlq	$32, %r12
	sarq	$30, %r12
	addq	$31, %r12
	cmpq	$32, %r12
	jae	LBB0_39
LBB0_20:
	xorl	%edi, %edi
	movq	-48(%rbp), %r14                 ## 8-byte Reload
LBB0_21:
	movq	%rdi, %rcx
	notq	%rcx
	addq	%r8, %rcx
	testb	$3, %r8b
	je	LBB0_24
## %bb.22:
	movslq	%r10d, %rdx
	leaq	(%rax,%rdx,4), %rdx
	leal	(%r9,%r11), %esi
	movzbl	%sil, %esi
	andl	$3, %esi
	.p2align	4, 0x90
LBB0_23:                                ## =>This Inner Loop Header: Depth=1
	movl	(%rdx,%rdi,4), %ebx
	movl	%ebx, (%rax,%rdi,4)
	incq	%rdi
	decq	%rsi
	jne	LBB0_23
LBB0_24:
	cmpq	$3, %rcx
	jb	LBB0_30
## %bb.25:
	addl	%r11d, %r9d
	movslq	%r10d, %rcx
	leaq	(%rax,%rcx,4), %rcx
	addq	$12, %rcx
	addq	$12, %rax
	.p2align	4, 0x90
LBB0_26:                                ## =>This Inner Loop Header: Depth=1
	movl	-12(%rcx,%rdi,4), %edx
	movl	%edx, -12(%rax,%rdi,4)
	movl	-8(%rcx,%rdi,4), %edx
	movl	%edx, -8(%rax,%rdi,4)
	movl	-4(%rcx,%rdi,4), %edx
	movl	%edx, -4(%rax,%rdi,4)
	movl	(%rcx,%rdi,4), %edx
	movl	%edx, (%rax,%rdi,4)
	addq	$4, %rdi
	cmpq	%rdi, %r9
	jne	LBB0_26
	jmp	LBB0_30
LBB0_27:
	leaq	L_.str(%rip), %rdi
	callq	__
	movl	%eax, %edi
	callq	_as_bad
LBB0_28:
	xorl	%r15d, %r15d
LBB0_29:
	movq	-48(%rbp), %r14                 ## 8-byte Reload
LBB0_30:
	movq	_LITTLENUM_NUMBER_OF_BITS@GOTPCREL(%rip), %rbx
	xorl	%edi, %edi
	cmpl	$16, (%rbx)
	sete	%dil
	callq	_know
	cmpl	$3, %r15d
	jl	LBB0_32
## %bb.31:
	movq	_O_big@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 8(%r14)
	jmp	LBB0_36
LBB0_32:
	movq	_O_constant@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 8(%r14)
	movq	_generic_bignum@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	_LITTLENUM_MASK@GOTPCREL(%rip), %rcx
	cmpl	$2, %r15d
	jne	LBB0_35
## %bb.33:
	movl	(%rcx), %r15d
	movl	4(%rax), %edx
	andl	%r15d, %edx
	movb	(%rbx), %cl
	shll	%cl, %edx
	andl	(%rax), %r15d
	orl	%edx, %r15d
	jmp	LBB0_36
LBB0_34:
	movq	_O_constant@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 8(%rdi)
	movl	$0, (%rdi)
	jmp	LBB0_37
LBB0_35:
	movl	(%rcx), %r15d
	andl	(%rax), %r15d
LBB0_36:
	movl	%r15d, (%r14)
	incq	(%r13)
LBB0_37:
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_39:
	movl	%r8d, %edi
	andl	$-8, %edi
	leaq	-8(%rdi), %rdx
	movq	%rdx, %rcx
	shrq	$3, %rcx
	incq	%rcx
	movslq	%r10d, %r12
	cmpq	$24, %rdx
	jae	LBB0_41
## %bb.40:
	xorl	%edx, %edx
	jmp	LBB0_43
LBB0_41:
	leaq	(%rax,%r12,4), %rsi
	addq	$112, %rsi
	leal	(%r9,%r11), %ebx
	andl	$-8, %ebx
	addq	$-8, %rbx
	shrq	$3, %rbx
	incq	%rbx
	andq	$-4, %rbx
	xorl	%edx, %edx
LBB0_42:                                ## =>This Inner Loop Header: Depth=1
	movups	-112(%rsi,%rdx,4), %xmm0
	movups	-96(%rsi,%rdx,4), %xmm1
	movups	%xmm0, (%rax,%rdx,4)
	movups	%xmm1, 16(%rax,%rdx,4)
	movups	-80(%rsi,%rdx,4), %xmm0
	movups	-64(%rsi,%rdx,4), %xmm1
	movups	%xmm0, 32(%rax,%rdx,4)
	movups	%xmm1, 48(%rax,%rdx,4)
	movups	-48(%rsi,%rdx,4), %xmm0
	movups	-32(%rsi,%rdx,4), %xmm1
	movups	%xmm0, 64(%rax,%rdx,4)
	movups	%xmm1, 80(%rax,%rdx,4)
	movups	-16(%rsi,%rdx,4), %xmm0
	movups	(%rsi,%rdx,4), %xmm1
	movups	%xmm0, 96(%rax,%rdx,4)
	movups	%xmm1, 112(%rax,%rdx,4)
	addq	$32, %rdx
	addq	$-4, %rbx
	jne	LBB0_42
LBB0_43:
	testb	$3, %cl
	je	LBB0_46
## %bb.44:
	leaq	(%rax,%rdx,4), %rcx
	addq	$16, %rcx
	leaq	(%rcx,%r12,4), %rdx
	leal	(%r9,%r11), %esi
	andb	$24, %sil
	addb	$-8, %sil
	shrb	$3, %sil
	incb	%sil
	movzbl	%sil, %esi
	andl	$3, %esi
	shlq	$5, %rsi
	xorl	%ebx, %ebx
LBB0_45:                                ## =>This Inner Loop Header: Depth=1
	movups	-16(%rdx,%rbx), %xmm0
	movups	(%rdx,%rbx), %xmm1
	movups	%xmm0, -16(%rcx,%rbx)
	movups	%xmm1, (%rcx,%rbx)
	addq	$32, %rbx
	cmpq	%rbx, %rsi
	jne	LBB0_45
LBB0_46:
	cmpq	%r8, %rdi
	movq	-48(%rbp), %r14                 ## 8-byte Reload
	jne	LBB0_21
	jmp	LBB0_30
	.cfi_endproc
                                        ## -- End function
	.comm	_input_line_pointer,8,3         ## @input_line_pointer
	.comm	_O_constant,8,3                 ## @O_constant
	.comm	_SIZE_OF_LARGE_NUMBER,4,2       ## @SIZE_OF_LARGE_NUMBER
	.comm	_generic_bignum,8,3             ## @generic_bignum
	.comm	_CHARS_PER_LITTLENUM,4,2        ## @CHARS_PER_LITTLENUM
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"character constant too large"

	.comm	_LITTLENUM_NUMBER_OF_BITS,4,2   ## @LITTLENUM_NUMBER_OF_BITS
	.comm	_O_big,8,3                      ## @O_big
	.comm	_LITTLENUM_MASK,4,2             ## @LITTLENUM_MASK
	.no_dead_strip	_mri_char_constant
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function mri_char_constant
_mri_char_constant:                     ; @mri_char_constant
	.cfi_startproc
; %bb.0:
	stp	x24, x23, [sp, #-64]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 64
	stp	x22, x21, [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 w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	mov	x19, x0
Lloh0:
	adrp	x20, _input_line_pointer@GOTPAGE
Lloh1:
	ldr	x20, [x20, _input_line_pointer@GOTPAGEOFF]
	ldr	x12, [x20]
	ldrb	w8, [x12]
	cmp	w8, #39
	b.ne	LBB0_2
; %bb.1:
	ldrb	w8, [x12, #1]
	cmp	w8, #39
	b.ne	LBB0_30
LBB0_2:
Lloh2:
	adrp	x11, _SIZE_OF_LARGE_NUMBER@GOTPAGE
Lloh3:
	ldr	x11, [x11, _SIZE_OF_LARGE_NUMBER@GOTPAGEOFF]
	ldr	w13, [x11]
Lloh4:
	adrp	x21, _generic_bignum@GOTPAGE
Lloh5:
	ldr	x21, [x21, _generic_bignum@GOTPAGEOFF]
	cmp	w13, #1
	b.lt	LBB0_24
; %bb.3:
	ldr	x8, [x21]
	sub	w10, w13, #1
	mov	w9, #1
	sub	w9, w9, w13
Lloh6:
	adrp	x15, _CHARS_PER_LITTLENUM@GOTPAGE
Lloh7:
	ldr	x15, [x15, _CHARS_PER_LITTLENUM@GOTPAGEOFF]
	b	LBB0_5
LBB0_4:                                 ;   in Loop: Header=BB0_5 Depth=1
	sub	w10, w10, #1
	add	w9, w9, #1
	cmp	x13, #1
	mov	x13, x14
	b.le	LBB0_24
LBB0_5:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_8 Depth 2
                                        ;     Child Loop BB0_13 Depth 2
	sub	x14, x13, #1
	and	x16, x14, #0xffffffff
	str	wzr, [x8, w14, uxtw #2]
	ldr	w1, [x15]
	cmp	w1, #1
	b.lt	LBB0_11
; %bb.6:                                ;   in Loop: Header=BB0_5 Depth=1
	mov	w0, #0
	mov	w17, #0
	b	LBB0_8
LBB0_7:                                 ;   in Loop: Header=BB0_8 Depth=2
	lsl	w0, w0, #8
	lsl	x1, x16, #2
	str	w0, [x8, x1]
	ldrsb	w2, [x12], #1
	add	w0, w0, w2
	str	w0, [x8, x1]
	str	x12, [x20]
	add	w17, w17, #1
	ldr	w1, [x15]
	cmp	w17, w1
	b.ge	LBB0_12
LBB0_8:                                 ;   Parent Loop BB0_5 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldrb	w2, [x12]
	cmp	w2, #39
	b.ne	LBB0_7
; %bb.9:                                ;   in Loop: Header=BB0_8 Depth=2
	mov	x2, x12
	ldrb	w3, [x2, #1]!
	cmp	w3, #39
	b.ne	LBB0_12
; %bb.10:                               ;   in Loop: Header=BB0_8 Depth=2
	str	x2, [x20]
	mov	x12, x2
	b	LBB0_7
LBB0_11:                                ;   in Loop: Header=BB0_5 Depth=1
	mov	w0, #0
	mov	w17, #0
LBB0_12:                                ;   in Loop: Header=BB0_5 Depth=1
	ldrsw	x2, [x11]
	cmp	x13, x2
	ccmp	w17, w1, #0, lt
	b.ge	LBB0_14
LBB0_13:                                ;   Parent Loop BB0_5 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	lsl	w0, w0, #8
	str	w0, [x8, x16, lsl #2]
	add	w17, w17, #1
	ldr	w1, [x15]
	cmp	w17, w1
	b.lt	LBB0_13
LBB0_14:                                ;   in Loop: Header=BB0_5 Depth=1
	ldrb	w16, [x12]
	cmp	w16, #39
	b.ne	LBB0_4
; %bb.15:                               ;   in Loop: Header=BB0_5 Depth=1
	ldrb	w16, [x12, #1]
	cmp	w16, #39
	b.eq	LBB0_4
; %bb.16:
	cmp	w13, #0
	b.le	LBB0_24
; %bb.17:
	cbz	w14, LBB0_25
; %bb.18:
	ldr	w11, [x11]
	sub	w22, w11, w14
	cmp	w22, #1
	b.lt	LBB0_26
; %bb.19:
	cmp	w22, #16
	b.lo	LBB0_21
; %bb.20:
	lsl	x12, x14, #32
	asr	x12, x12, #30
	add	x12, x12, #63
	cmp	x12, #64
	b.hs	LBB0_34
LBB0_21:
	mov	x12, #0
LBB0_22:
	add	x10, x12, w10, sxtw
	add	x10, x8, x10, lsl #2
	add	x8, x8, x12, lsl #2
	add	w9, w11, w9
	sub	x9, x12, x9
LBB0_23:                                ; =>This Inner Loop Header: Depth=1
	ldr	w11, [x10], #4
	str	w11, [x8], #4
	adds	x9, x9, #1
	b.lo	LBB0_23
	b	LBB0_26
LBB0_24:
Lloh8:
	adrp	x0, l_.str@PAGE
Lloh9:
	add	x0, x0, l_.str@PAGEOFF
	bl	__
	bl	_as_bad
LBB0_25:
	mov	w22, #0
LBB0_26:
Lloh10:
	adrp	x23, _LITTLENUM_NUMBER_OF_BITS@GOTPAGE
Lloh11:
	ldr	x23, [x23, _LITTLENUM_NUMBER_OF_BITS@GOTPAGEOFF]
	ldr	w8, [x23]
	cmp	w8, #16
	cset	w0, eq
	bl	_know
	cmp	w22, #3
	b.lt	LBB0_28
; %bb.27:
Lloh12:
	adrp	x8, _O_big@GOTPAGE
Lloh13:
	ldr	x8, [x8, _O_big@GOTPAGEOFF]
Lloh14:
	ldr	x8, [x8]
	str	x8, [x19, #8]
	b	LBB0_32
LBB0_28:
Lloh15:
	adrp	x8, _O_constant@GOTPAGE
Lloh16:
	ldr	x8, [x8, _O_constant@GOTPAGEOFF]
Lloh17:
	ldr	x8, [x8]
	str	x8, [x19, #8]
	ldr	x8, [x21]
	cmp	w22, #2
	b.ne	LBB0_31
; %bb.29:
Lloh18:
	adrp	x9, _LITTLENUM_MASK@GOTPAGE
Lloh19:
	ldr	x9, [x9, _LITTLENUM_MASK@GOTPAGEOFF]
Lloh20:
	ldr	w9, [x9]
	ldp	w8, w10, [x8]
	and	w10, w9, w10
	ldr	w11, [x23]
	lsl	w10, w10, w11
	and	w8, w8, w9
	orr	w22, w8, w10
	b	LBB0_32
LBB0_30:
Lloh21:
	adrp	x8, _O_constant@GOTPAGE
Lloh22:
	ldr	x8, [x8, _O_constant@GOTPAGEOFF]
Lloh23:
	ldr	x8, [x8]
	str	x8, [x19, #8]
	str	wzr, [x19]
	b	LBB0_33
LBB0_31:
	ldr	w8, [x8]
Lloh24:
	adrp	x9, _LITTLENUM_MASK@GOTPAGE
Lloh25:
	ldr	x9, [x9, _LITTLENUM_MASK@GOTPAGEOFF]
Lloh26:
	ldr	w9, [x9]
	and	w22, w9, w8
LBB0_32:
	str	w22, [x19]
	ldr	x8, [x20]
	add	x8, x8, #1
	str	x8, [x20]
LBB0_33:
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp], #64             ; 16-byte Folded Reload
	ret
LBB0_34:
	and	x12, x22, #0xfffffff0
	add	w13, w11, w9
	and	x13, x13, #0xfffffff0
	add	x14, x8, #32
	sbfiz	x15, x10, #2, #32
LBB0_35:                                ; =>This Inner Loop Header: Depth=1
	add	x16, x14, x15
	ldp	q0, q1, [x16, #-32]
	ldp	q2, q3, [x16]
	stp	q0, q1, [x14, #-32]
	stp	q2, q3, [x14], #64
	subs	x13, x13, #16
	b.ne	LBB0_35
; %bb.36:
	cmp	x12, x22
	b.eq	LBB0_26
	b	LBB0_22
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGot	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.cfi_endproc
                                        ; -- End function
	.comm	_input_line_pointer,8,3         ; @input_line_pointer
	.comm	_O_constant,8,3                 ; @O_constant
	.comm	_SIZE_OF_LARGE_NUMBER,4,2       ; @SIZE_OF_LARGE_NUMBER
	.comm	_generic_bignum,8,3             ; @generic_bignum
	.comm	_CHARS_PER_LITTLENUM,4,2        ; @CHARS_PER_LITTLENUM
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"character constant too large"

	.comm	_LITTLENUM_NUMBER_OF_BITS,4,2   ; @LITTLENUM_NUMBER_OF_BITS
	.comm	_O_big,8,3                      ; @O_big
	.comm	_LITTLENUM_MASK,4,2             ; @LITTLENUM_MASK
	.no_dead_strip	_mri_char_constant
.subsections_via_symbols
