	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function tegra_kbc_report_keys
LCPI0_0:
	.byte	7                               ## 0x7
	.byte	7                               ## 0x7
	.byte	7                               ## 0x7
	.byte	7                               ## 0x7
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
LCPI0_1:
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_tegra_kbc_report_keys:                 ## @tegra_kbc_report_keys
	.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
	subq	$72, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, -64(%rbp)                 ## 8-byte Spill
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	movq	_KBC_MAX_KPENT@GOTPCREL(%rip), %r14
	movl	(%r14), %ebx
	movq	%rbx, %rax
	callq	____chkstk_darwin
	addq	$15, %rax
	andq	$-16, %rax
	subq	%rax, %rsp
	movq	%rsp, %r13
	leaq	(%rbx,%rbx), %rax
	callq	____chkstk_darwin
	addq	$15, %rax
	andq	$-16, %rax
	subq	%rax, %rsp
	movq	%rsp, %r15
	testq	%rbx, %rbx
	je	LBB0_1
## %bb.2:
	movq	%r15, -88(%rbp)                 ## 8-byte Spill
	xorl	%r12d, %r12d
	movq	_KEY_FN@GOTPCREL(%rip), %r15
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
	movl	$0, -72(%rbp)                   ## 4-byte Folded Spill
	jmp	LBB0_3
	.p2align	4, 0x90
LBB0_9:                                 ##   in Loop: Header=BB0_3 Depth=1
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	incl	%eax
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
LBB0_10:                                ##   in Loop: Header=BB0_3 Depth=1
	sarl	$8, %ebx
	incq	%r12
	movl	(%r14), %eax
	cmpq	%rax, %r12
	jae	LBB0_11
LBB0_3:                                 ## =>This Inner Loop Header: Depth=1
	testb	$3, %r12b
	je	LBB0_4
## %bb.5:                               ##   in Loop: Header=BB0_3 Depth=1
	testb	$-128, %bl
	je	LBB0_10
	jmp	LBB0_6
	.p2align	4, 0x90
LBB0_4:                                 ##   in Loop: Header=BB0_3 Depth=1
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	movq	48(%rax), %rdi
	movq	_KBC_KP_ENT0_0@GOTPCREL(%rip), %rax
	addq	(%rax), %rdi
	addq	%r12, %rdi
	callq	_readl
	movl	%eax, %ebx
	testb	$-128, %bl
	je	LBB0_10
LBB0_6:                                 ##   in Loop: Header=BB0_3 Depth=1
	movl	%ebx, %esi
	andl	$7, %esi
	movl	%ebx, %edi
	shrl	$3, %edi
	andl	$15, %edi
	movq	_KBC_ROW_SHIFT@GOTPCREL(%rip), %rax
	movzbl	(%rax), %edx
	callq	_MATRIX_SCAN_CODE
	movl	-56(%rbp), %ecx                 ## 4-byte Reload
	movb	%al, (%r13,%rcx)
	movq	-64(%rbp), %rdx                 ## 8-byte Reload
	movq	(%rdx), %rdx
	movzbl	%al, %eax
	movzwl	(%rdx,%rax,2), %eax
	movq	-88(%rbp), %rdx                 ## 8-byte Reload
	movw	%ax, (%rdx,%rcx,2)
	cmpw	(%r15), %ax
	jne	LBB0_9
## %bb.7:                               ##   in Loop: Header=BB0_3 Depth=1
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	cmpq	$0, 40(%rax)
	je	LBB0_9
## %bb.8:                               ##   in Loop: Header=BB0_3 Depth=1
	movl	$1, -72(%rbp)                   ## 4-byte Folded Spill
	jmp	LBB0_10
LBB0_11:
	xorl	%eax, %eax
	movq	-64(%rbp), %rcx                 ## 8-byte Reload
	cmpq	$0, 32(%rcx)
	je	LBB0_12
## %bb.17:
	movl	$0, %edx
	cmpl	$3, -56(%rbp)                   ## 4-byte Folded Reload
	jb	LBB0_13
## %bb.18:
	movq	_KBC_ROW_SHIFT@GOTPCREL(%rip), %rax
	movzbl	(%rax), %ecx
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	movl	%eax, %r15d
	leal	-2(%rax), %r8d
	movd	%ecx, %xmm0
	movq	%r13, %rsi
	addq	$5, %rsi
	xorl	%ebx, %ebx
	movl	$1, %r12d
	movl	$1, %r11d
	pmovzxdq	%xmm0, %xmm13                   ## xmm13 = xmm0[0],zero,xmm0[1],zero
	movdqa	LCPI0_0(%rip), %xmm10           ## xmm10 = <7,7,7,7,u,u,u,u,u,u,u,u,u,u,u,u>
	pxor	%xmm11, %xmm11
	movaps	LCPI0_1(%rip), %xmm12           ## xmm12 = [1,1,1,1]
	movl	%r8d, -76(%rbp)                 ## 4-byte Spill
	xorl	%edx, %edx
	xorl	%eax, %eax
	movl	%r8d, -68(%rbp)                 ## 4-byte Spill
	jmp	LBB0_20
LBB0_30:                                ##   in Loop: Header=BB0_20 Depth=1
	movl	-68(%rbp), %r8d                 ## 4-byte Reload
	.p2align	4, 0x90
LBB0_19:                                ##   in Loop: Header=BB0_20 Depth=1
	incq	%r12
	incq	%rsi
	decl	-76(%rbp)                       ## 4-byte Folded Spill
	movq	-112(%rbp), %rbx                ## 8-byte Reload
	cmpq	%r15, %rbx
	je	LBB0_13
LBB0_20:                                ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_26 Depth 2
                                        ##     Child Loop BB0_32 Depth 2
	movzbl	(%r13,%rbx), %r14d
	movl	%r14d, %r9d
	shrl	%cl, %r9d
	leaq	1(%rbx), %rdi
	cmpq	%r15, %rdi
	movq	%rdi, -112(%rbp)                ## 8-byte Spill
	jae	LBB0_19
## %bb.21:                              ##   in Loop: Header=BB0_20 Depth=1
	movl	%r8d, %r10d
	subl	%ebx, %r10d
	cmpl	$3, %r10d
	jae	LBB0_23
## %bb.22:                              ##   in Loop: Header=BB0_20 Depth=1
	movq	%r12, %r10
	jmp	LBB0_32
	.p2align	4, 0x90
LBB0_23:                                ##   in Loop: Header=BB0_20 Depth=1
	movq	%r12, -104(%rbp)                ## 8-byte Spill
	incq	%r10
	movq	%r10, -96(%rbp)                 ## 8-byte Spill
	movabsq	$8589934588, %rdi               ## imm = 0x1FFFFFFFC
	andq	%rdi, %r10
	leaq	-4(%r10), %r8
	movq	%r8, %rdi
	shrq	$2, %rdi
	incq	%rdi
	movd	%edx, %xmm8
	pshufd	$0, %xmm8, %xmm6                ## xmm6 = xmm8[0,0,0,0]
	movd	%eax, %xmm9
	pshufd	$0, %xmm9, %xmm7                ## xmm7 = xmm9[0,0,0,0]
	movzbl	%r14b, %ebx
	movd	%ebx, %xmm0
	punpcklbw	%xmm0, %xmm0            ## xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
	pshuflw	$0, %xmm0, %xmm4                ## xmm4 = xmm0[0,0,0,0,4,5,6,7]
	movd	%r9d, %xmm0
	pshufd	$0, %xmm0, %xmm3                ## xmm3 = xmm0[0,0,0,0]
	testq	%r8, %r8
	je	LBB0_24
## %bb.25:                              ##   in Loop: Header=BB0_20 Depth=1
	movl	-76(%rbp), %r12d                ## 4-byte Reload
	incq	%r12
	andq	$-4, %r12
	addq	$-4, %r12
	shrq	$2, %r12
	incq	%r12
	andq	$-2, %r12
	xorl	%r8d, %r8d
	.p2align	4, 0x90
LBB0_26:                                ##   Parent Loop BB0_20 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movd	-4(%rsi,%r8), %xmm0             ## xmm0 = mem[0],zero,zero,zero
	pmovzxbd	%xmm0, %xmm5                    ## xmm5 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero
	psrld	%xmm13, %xmm5
	pxor	%xmm4, %xmm0
	pand	%xmm10, %xmm0
	pcmpeqb	%xmm11, %xmm0
	pcmpeqd	%xmm3, %xmm5
	movd	(%rsi,%r8), %xmm2               ## xmm2 = mem[0],zero,zero,zero
	pmovzxbd	%xmm2, %xmm1                    ## xmm1 = xmm2[0],zero,zero,zero,xmm2[1],zero,zero,zero,xmm2[2],zero,zero,zero,xmm2[3],zero,zero,zero
	psrld	%xmm13, %xmm1
	pxor	%xmm4, %xmm2
	pand	%xmm10, %xmm2
	pcmpeqb	%xmm11, %xmm2
	por	%xmm0, %xmm2
	pmovsxbd	%xmm2, %xmm0
	blendvps	%xmm0, %xmm12, %xmm7
	pcmpeqd	%xmm3, %xmm1
	por	%xmm5, %xmm1
	movdqa	%xmm1, %xmm0
	blendvps	%xmm0, %xmm12, %xmm6
	addq	$8, %r8
	addq	$-2, %r12
	jne	LBB0_26
	jmp	LBB0_27
LBB0_24:                                ##   in Loop: Header=BB0_20 Depth=1
	xorl	%r8d, %r8d
LBB0_27:                                ##   in Loop: Header=BB0_20 Depth=1
	testb	$1, %dil
	movq	-104(%rbp), %r12                ## 8-byte Reload
	je	LBB0_29
## %bb.28:                              ##   in Loop: Header=BB0_20 Depth=1
	addq	%r12, %r8
	movd	(%r13,%r8), %xmm0               ## xmm0 = mem[0],zero,zero,zero
	pmovzxbd	%xmm0, %xmm1                    ## xmm1 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero
	psrld	%xmm13, %xmm1
	pxor	%xmm0, %xmm4
	pand	%xmm10, %xmm4
	pcmpeqb	%xmm11, %xmm4
	pmovsxbd	%xmm4, %xmm0
	blendvps	%xmm0, %xmm12, %xmm7
	pcmpeqd	%xmm3, %xmm1
	movdqa	%xmm1, %xmm0
	blendvps	%xmm0, %xmm12, %xmm6
LBB0_29:                                ##   in Loop: Header=BB0_20 Depth=1
	pshufd	$0, %xmm9, %xmm0                ## xmm0 = xmm9[0,0,0,0]
	psubd	%xmm0, %xmm7
	ptest	%xmm7, %xmm7
	cmovnel	%r11d, %eax
	pshufd	$0, %xmm8, %xmm0                ## xmm0 = xmm8[0,0,0,0]
	psubd	%xmm0, %xmm6
	ptest	%xmm6, %xmm6
	cmovnel	%r11d, %edx
	cmpq	%r10, -96(%rbp)                 ## 8-byte Folded Reload
	je	LBB0_30
## %bb.31:                              ##   in Loop: Header=BB0_20 Depth=1
	addq	%r12, %r10
	movl	-68(%rbp), %r8d                 ## 4-byte Reload
	.p2align	4, 0x90
LBB0_32:                                ##   Parent Loop BB0_20 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movzbl	(%r13,%r10), %ebx
	movl	%ebx, %edi
	shrl	%cl, %edi
	xorb	%r14b, %bl
	testb	$7, %bl
	cmovel	%r11d, %eax
	cmpl	%r9d, %edi
	cmovel	%r11d, %edx
	incq	%r10
	cmpl	%r10d, %r15d
	jne	LBB0_32
	jmp	LBB0_19
LBB0_1:
	xorl	%eax, %eax
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
	jmp	LBB0_39
LBB0_12:
	xorl	%edx, %edx
LBB0_13:
	cmpl	$0, -72(%rbp)                   ## 4-byte Folded Reload
	movq	-88(%rbp), %r15                 ## 8-byte Reload
	je	LBB0_37
## %bb.14:
	cmpl	$0, -56(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_37
## %bb.15:
	movq	-64(%rbp), %rcx                 ## 8-byte Reload
	movb	24(%rcx), %bl
	movq	(%rcx), %rsi
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
	movl	%ecx, %r8d
	cmpl	$1, %ecx
	jne	LBB0_33
## %bb.16:
	xorl	%edi, %edi
	jmp	LBB0_35
LBB0_33:
	movl	%r8d, %r9d
	andl	$-2, %r9d
	xorl	%edi, %edi
	.p2align	4, 0x90
LBB0_34:                                ## =>This Inner Loop Header: Depth=1
	movzbl	(%r13,%rdi), %ecx
	addb	%bl, %cl
	movb	%cl, (%r13,%rdi)
	movzbl	%cl, %ecx
	movzwl	(%rsi,%rcx,2), %ecx
	movw	%cx, (%r15,%rdi,2)
	movzbl	1(%r13,%rdi), %ecx
	addb	%bl, %cl
	movb	%cl, 1(%r13,%rdi)
	movzbl	%cl, %ecx
	movzwl	(%rsi,%rcx,2), %ecx
	movw	%cx, 2(%r15,%rdi,2)
	addq	$2, %rdi
	cmpq	%rdi, %r9
	jne	LBB0_34
LBB0_35:
	testb	$1, %r8b
	je	LBB0_37
## %bb.36:
	addb	(%r13,%rdi), %bl
	movb	%bl, (%r13,%rdi)
	movzbl	%bl, %ecx
	movzwl	(%rsi,%rcx,2), %ecx
	movw	%cx, (%r15,%rdi,2)
LBB0_37:
	testl	%eax, %eax
	je	LBB0_39
## %bb.38:
	testl	%edx, %edx
	jne	LBB0_40
LBB0_39:
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	movl	16(%rbx), %edi
	movl	8(%rbx), %edx
	movl	12(%rbx), %esi
	movq	%r15, %rcx
	movq	-56(%rbp), %r14                 ## 8-byte Reload
	movl	%r14d, %r8d
	callq	_tegra_kbc_report_released_keys
	movl	16(%rbx), %edi
	movq	%r13, %rsi
	movq	%r15, %rdx
	movl	%r14d, %ecx
	callq	_tegra_kbc_report_pressed_keys
	movl	16(%rbx), %edi
	callq	_input_sync
	movl	12(%rbx), %edi
	movq	%r15, %rsi
	movl	$4, %edx
	callq	_memcpy
	movl	%r14d, 8(%rbx)
LBB0_40:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_42
## %bb.41:
	leaq	-40(%rbp), %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_42:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_KBC_MAX_KPENT,4,2              ## @KBC_MAX_KPENT
	.comm	_KBC_KP_ENT0_0,8,3              ## @KBC_KP_ENT0_0
	.comm	_KBC_ROW_SHIFT,1,0              ## @KBC_ROW_SHIFT
	.comm	_KEY_FN,2,1                     ## @KEY_FN
	.no_dead_strip	_tegra_kbc_report_keys
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ; -- Begin function tegra_kbc_report_keys
lCPI0_0:
	.byte	12                              ; 0xc
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	13                              ; 0xd
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	14                              ; 0xe
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	15                              ; 0xf
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_1:
	.byte	8                               ; 0x8
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	9                               ; 0x9
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	10                              ; 0xa
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	11                              ; 0xb
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_2:
	.byte	0                               ; 0x0
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	1                               ; 0x1
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	2                               ; 0x2
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	3                               ; 0x3
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_3:
	.byte	4                               ; 0x4
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	5                               ; 0x5
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	6                               ; 0x6
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	7                               ; 0x7
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_tegra_kbc_report_keys:                 ; @tegra_kbc_report_keys
	.cfi_startproc
; %bb.0:
	stp	d15, d14, [sp, #-160]!          ; 16-byte Folded Spill
	.cfi_def_cfa_offset 160
	stp	d13, d12, [sp, #16]             ; 16-byte Folded Spill
	stp	d11, d10, [sp, #32]             ; 16-byte Folded Spill
	stp	d9, d8, [sp, #48]               ; 16-byte Folded Spill
	stp	x28, x27, [sp, #64]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #80]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #96]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #112]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #128]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #144]            ; 16-byte Folded Spill
	add	x29, sp, #144
	.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
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	.cfi_offset b8, -104
	.cfi_offset b9, -112
	.cfi_offset b10, -120
	.cfi_offset b11, -128
	.cfi_offset b12, -136
	.cfi_offset b13, -144
	.cfi_offset b14, -152
	.cfi_offset b15, -160
	sub	sp, sp, #352
	mov	x19, x0
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-160]
Lloh3:
	adrp	x25, _KBC_MAX_KPENT@GOTPAGE
Lloh4:
	ldr	x25, [x25, _KBC_MAX_KPENT@GOTPAGEOFF]
	ldr	w8, [x25]
	mov	x9, x8
Lloh5:
	adrp	x16, ___chkstk_darwin@GOTPAGE
Lloh6:
	ldr	x16, [x16, ___chkstk_darwin@GOTPAGEOFF]
	blr	x16
	mov	x9, sp
	add	x10, x8, #15
	and	x10, x10, #0x1fffffff0
	sub	x21, x9, x10
	mov	sp, x21
	lsl	x12, x8, #1
	mov	x9, x12
Lloh7:
	adrp	x16, ___chkstk_darwin@GOTPAGE
Lloh8:
	ldr	x16, [x16, ___chkstk_darwin@GOTPAGEOFF]
	blr	x16
	mov	x9, sp
	add	x10, x12, #15
	and	x10, x10, #0x3fffffff0
	sub	x20, x9, x10
	mov	sp, x20
	cbz	w8, LBB0_31
; %bb.1:
	mov	x27, #0
	mov	w23, #0
	mov	w22, #0
	sub	x8, x29, #164
	stur	wzr, [x8, #-256]                ; 4-byte Folded Spill
Lloh9:
	adrp	x28, _KBC_KP_ENT0_0@GOTPAGE
Lloh10:
	ldr	x28, [x28, _KBC_KP_ENT0_0@GOTPAGEOFF]
Lloh11:
	adrp	x26, _KBC_ROW_SHIFT@GOTPAGE
Lloh12:
	ldr	x26, [x26, _KBC_ROW_SHIFT@GOTPAGEOFF]
Lloh13:
	adrp	x24, _KEY_FN@GOTPAGE
Lloh14:
	ldr	x24, [x24, _KEY_FN@GOTPAGEOFF]
	b	LBB0_4
LBB0_2:                                 ;   in Loop: Header=BB0_4 Depth=1
	add	w22, w22, #1
LBB0_3:                                 ;   in Loop: Header=BB0_4 Depth=1
	asr	w23, w23, #8
	add	x27, x27, #1
	ldr	w8, [x25]
	cmp	x27, x8
	b.hs	LBB0_10
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	tst	x27, #0x3
	b.eq	LBB0_6
; %bb.5:                                ;   in Loop: Header=BB0_4 Depth=1
	tbz	w23, #7, LBB0_3
	b	LBB0_7
LBB0_6:                                 ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x19, #48]
	ldr	x9, [x28]
	add	x8, x8, x9
	add	x0, x27, x8
	bl	_readl
	mov	x23, x0
	tbz	w23, #7, LBB0_3
LBB0_7:                                 ;   in Loop: Header=BB0_4 Depth=1
	and	w1, w23, #0x7
	ubfx	w0, w23, #3, #4
	ldrb	w2, [x26]
	bl	_MATRIX_SCAN_CODE
	strb	w0, [x21, w22, uxtw]
	ldr	x8, [x19]
	ldrh	w8, [x8, w0, uxtw #1]
	strh	w8, [x20, w22, uxtw #1]
	ldrh	w9, [x24]
	cmp	w8, w9
	b.ne	LBB0_2
; %bb.8:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x19, #40]
	cbz	x8, LBB0_2
; %bb.9:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	w8, #1
	sub	x9, x29, #164
	stur	w8, [x9, #-256]                 ; 4-byte Folded Spill
	b	LBB0_3
LBB0_10:
	mov	w8, #0
	ldr	x9, [x19, #32]
	cbz	x9, LBB0_32
; %bb.11:
	mov	x9, x8
	cmp	w22, #3
	b.lo	LBB0_33
; %bb.12:
	mov	x11, #0
	mov	w9, #0
	mov	w8, #0
	ldrb	w10, [x26]
	mov	w16, w22
	sub	w5, w22, #2
	dup.4s	v0, w10
	add	x13, x21, #33
	mov	w14, #1
Lloh15:
	adrp	x12, lCPI0_2@PAGE
Lloh16:
	ldr	q26, [x12, lCPI0_2@PAGEOFF]
Lloh17:
	adrp	x12, lCPI0_3@PAGE
Lloh18:
	ldr	q27, [x12, lCPI0_3@PAGEOFF]
	neg.4s	v2, v0
	movi.8b	v20, #7
	movi.4s	v4, #1
	adrp	x23, lCPI0_0@PAGE
	adrp	x24, lCPI0_1@PAGE
	mov	x17, x5
	sub	x12, x29, #200
	stur	x19, [x12, #-256]               ; 8-byte Folded Spill
	sub	x12, x29, #208
	stur	x20, [x12, #-256]               ; 8-byte Folded Spill
	sub	x12, x29, #216
	stur	x21, [x12, #-256]               ; 8-byte Folded Spill
	sub	x12, x29, #224
	stur	x16, [x12, #-256]               ; 8-byte Folded Spill
	sub	x12, x29, #228
	stur	w5, [x12, #-256]                ; 4-byte Folded Spill
	movi.16b	v8, #7
	b	LBB0_15
LBB0_13:                                ;   in Loop: Header=BB0_15 Depth=1
	mov	x8, x12
	mov	x9, x11
	sub	x11, x29, #200
	ldur	x19, [x11, #-256]               ; 8-byte Folded Reload
	sub	x11, x29, #208
	ldur	x20, [x11, #-256]               ; 8-byte Folded Reload
	sub	x11, x29, #216
	ldur	x21, [x11, #-256]               ; 8-byte Folded Reload
	sub	x11, x29, #224
	ldur	x16, [x11, #-256]               ; 8-byte Folded Reload
	sub	x11, x29, #228
	ldur	w5, [x11, #-256]                ; 4-byte Folded Reload
	movi.8b	v20, #7
	adrp	x23, lCPI0_0@PAGE
	adrp	x24, lCPI0_1@PAGE
LBB0_14:                                ;   in Loop: Header=BB0_15 Depth=1
	add	x14, x14, #1
	sub	w17, w17, #1
	add	x13, x13, #1
	mov	x11, x0
	cmp	x0, x16
	b.eq	LBB0_33
LBB0_15:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_21 Depth 2
                                        ;     Child Loop BB0_26 Depth 2
                                        ;     Child Loop BB0_30 Depth 2
	add	x0, x11, #1
	cmp	x0, x16
	b.hs	LBB0_14
; %bb.16:                               ;   in Loop: Header=BB0_15 Depth=1
	sub	w12, w5, w11
	ldrb	w1, [x21, x11]
	lsr	w2, w1, w10
	cmp	w12, #7
	b.hs	LBB0_18
; %bb.17:                               ;   in Loop: Header=BB0_15 Depth=1
	mov	x4, x14
	mov	x11, x9
	mov	x12, x8
	b	LBB0_29
LBB0_18:                                ;   in Loop: Header=BB0_15 Depth=1
	mov	w11, w17
	add	x15, x11, #1
	add	x3, x12, #1
	dup.4s	v6, w2
	cmp	w12, #63
	b.hs	LBB0_20
; %bb.19:                               ;   in Loop: Header=BB0_15 Depth=1
	mov	x7, #0
	mov	x11, x9
	mov	x12, x8
	b	LBB0_25
LBB0_20:                                ;   in Loop: Header=BB0_15 Depth=1
	sub	x11, x29, #192
	stur	x15, [x11, #-256]               ; 8-byte Folded Spill
	and	x6, x15, #0x1ffffffc0
	dup.4s	v28, w9
	sub	x11, x29, #176
	stur	x3, [x11, #-256]                ; 8-byte Folded Spill
	and	x11, x3, #0x1ffffffc0
	sub	x12, x29, #184
	stur	x11, [x12, #-256]               ; 8-byte Folded Spill
	mov	x7, x13
	stur	q28, [x29, #-192]               ; 16-byte Folded Spill
	stur	q28, [x29, #-240]               ; 16-byte Folded Spill
	dup.4s	v11, w8
	sub	x11, x29, #32
	stur	q28, [x11, #-256]               ; 16-byte Folded Spill
	sub	x11, x29, #16
	stur	q28, [x11, #-256]               ; 16-byte Folded Spill
	stur	q28, [x29, #-224]               ; 16-byte Folded Spill
	sub	x11, x29, #48
	stur	q28, [x11, #-256]               ; 16-byte Folded Spill
	sub	x11, x29, #64
	stur	q28, [x11, #-256]               ; 16-byte Folded Spill
	mov.16b	v29, v28
	mov.16b	v25, v28
	dup.16b	v0, w1
	sub	x11, x29, #160
	stur	q0, [x11, #-256]                ; 16-byte Folded Spill
	stur	q28, [x29, #-208]               ; 16-byte Folded Spill
	stur	q28, [x29, #-256]               ; 16-byte Folded Spill
	mov.16b	v22, v28
	mov.16b	v23, v28
	mov.16b	v21, v28
	mov.16b	v24, v28
	mov.16b	v17, v11
	mov.16b	v3, v11
	mov.16b	v7, v11
	mov.16b	v0, v11
	mov.16b	v1, v11
	mov.16b	v16, v11
	mov.16b	v31, v11
	mov.16b	v12, v11
	mov.16b	v13, v11
	mov.16b	v5, v11
	mov.16b	v15, v11
	mov.16b	v30, v11
	mov.16b	v9, v11
	mov.16b	v10, v11
	mov.16b	v14, v11
LBB0_21:                                ;   Parent Loop BB0_15 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	sub	x11, x29, #144
	stur	q24, [x11, #-256]               ; 16-byte Folded Spill
	sub	x11, x29, #128
	stur	q28, [x11, #-256]               ; 16-byte Folded Spill
	sub	x11, x29, #112
	stur	q23, [x11, #-256]               ; 16-byte Folded Spill
	sub	x11, x29, #96
	stur	q22, [x11, #-256]               ; 16-byte Folded Spill
	sub	x11, x29, #80
	stur	q21, [x11, #-256]               ; 16-byte Folded Spill
	ldp	q20, q19, [x7, #-32]
	sub	x11, x29, #160
	ldur	q28, [x11, #-256]               ; 16-byte Folded Reload
	eor.16b	v21, v20, v28
	and.16b	v21, v21, v8
	cmeq.16b	v21, v21, #0
	sshll2.8h	v22, v21, #0
	sshll2.4s	v23, v22, #0
	bit.16b	v7, v4, v23
	ldp	q23, q24, [x7]
	mov.16b	v18, v29
	mov.16b	v29, v25
	mov.16b	v25, v27
	mov.16b	v27, v26
	eor.16b	v26, v19, v28
	and.16b	v26, v26, v8
	sshll.8h	v21, v21, #0
	sshll.4s	v22, v22, #0
	bit.16b	v3, v4, v22
	sshll.4s	v22, v21, #0
	sshll2.4s	v21, v21, #0
	cmeq.16b	v26, v26, #0
	bit.16b	v17, v4, v21
	sshll2.8h	v21, v26, #0
	bit.16b	v11, v4, v22
	sshll2.4s	v22, v21, #0
	bit.16b	v31, v4, v22
	eor.16b	v22, v23, v28
	and.16b	v22, v22, v8
	sshll.8h	v26, v26, #0
	sshll.4s	v21, v21, #0
	bit.16b	v16, v4, v21
	sshll.4s	v21, v26, #0
	sshll2.4s	v26, v26, #0
	cmeq.16b	v22, v22, #0
	bit.16b	v1, v4, v26
	sshll2.8h	v26, v22, #0
	bit.16b	v0, v4, v21
	sshll2.4s	v21, v26, #0
	bit.16b	v15, v4, v21
	eor.16b	v21, v24, v28
	sub	x11, x29, #128
	ldur	q28, [x11, #-256]               ; 16-byte Folded Reload
	and.16b	v21, v21, v8
	sshll.8h	v22, v22, #0
	sshll.4s	v26, v26, #0
	bit.16b	v5, v4, v26
	sshll.4s	v26, v22, #0
	sshll2.4s	v22, v22, #0
	cmeq.16b	v21, v21, #0
	bit.16b	v13, v4, v22
	sshll2.8h	v22, v21, #0
	bit.16b	v12, v4, v26
	sshll2.4s	v26, v22, #0
	bit.16b	v14, v4, v26
	mov.16b	v26, v27
	mov.16b	v27, v25
	mov.16b	v25, v29
	mov.16b	v29, v18
	sshll.8h	v21, v21, #0
	sshll.4s	v22, v22, #0
	bit.16b	v10, v4, v22
	sshll2.4s	v22, v21, #0
	bit.16b	v9, v4, v22
	ldr	q22, [x24, lCPI0_1@PAGEOFF]
	sshll.4s	v21, v21, #0
	bit.16b	v30, v4, v21
	tbl.16b	v21, { v20 }, v27
	ushl.4s	v21, v21, v2
	cmeq.4s	v21, v21, v6
	ldur	q18, [x29, #-192]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v21
	stur	q18, [x29, #-192]               ; 16-byte Folded Spill
	tbl.16b	v21, { v20 }, v26
	ushl.4s	v21, v21, v2
	cmeq.4s	v21, v21, v6
	bit.16b	v28, v4, v21
	tbl.16b	v21, { v20 }, v22
	ushl.4s	v21, v21, v2
	cmeq.4s	v21, v21, v6
	ldur	q18, [x29, #-240]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v21
	stur	q18, [x29, #-240]               ; 16-byte Folded Spill
	ldr	q21, [x23, lCPI0_0@PAGEOFF]
	tbl.16b	v20, { v20 }, v21
	ushl.4s	v20, v20, v2
	cmeq.4s	v20, v20, v6
	sub	x11, x29, #32
	ldur	q18, [x11, #-256]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v20
	sub	x11, x29, #32
	stur	q18, [x11, #-256]               ; 16-byte Folded Spill
	tbl.16b	v20, { v19 }, v27
	ushl.4s	v20, v20, v2
	cmeq.4s	v20, v20, v6
	ldur	q18, [x29, #-224]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v20
	stur	q18, [x29, #-224]               ; 16-byte Folded Spill
	tbl.16b	v20, { v19 }, v26
	ushl.4s	v20, v20, v2
	cmeq.4s	v20, v20, v6
	sub	x11, x29, #16
	ldur	q18, [x11, #-256]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v20
	sub	x11, x29, #16
	stur	q18, [x11, #-256]               ; 16-byte Folded Spill
	tbl.16b	v20, { v19 }, v22
	ushl.4s	v20, v20, v2
	cmeq.4s	v20, v20, v6
	sub	x11, x29, #48
	ldur	q18, [x11, #-256]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v20
	sub	x11, x29, #48
	stur	q18, [x11, #-256]               ; 16-byte Folded Spill
	tbl.16b	v19, { v19 }, v21
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	sub	x11, x29, #64
	ldur	q18, [x11, #-256]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v19
	sub	x11, x29, #64
	stur	q18, [x11, #-256]               ; 16-byte Folded Spill
	tbl.16b	v19, { v23 }, v27
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	bit.16b	v25, v4, v19
	tbl.16b	v19, { v23 }, v26
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	bit.16b	v29, v4, v19
	tbl.16b	v19, { v23 }, v22
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	ldur	q18, [x29, #-208]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v19
	stur	q18, [x29, #-208]               ; 16-byte Folded Spill
	tbl.16b	v19, { v23 }, v21
	sub	x11, x29, #112
	ldur	q23, [x11, #-256]               ; 16-byte Folded Reload
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	ldur	q18, [x29, #-256]               ; 16-byte Folded Reload
	bit.16b	v18, v4, v19
	stur	q18, [x29, #-256]               ; 16-byte Folded Spill
	tbl.16b	v19, { v24 }, v27
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	bit.16b	v23, v4, v19
	tbl.16b	v19, { v24 }, v21
	tbl.16b	v20, { v24 }, v22
	sub	x11, x29, #96
	ldur	q22, [x11, #-256]               ; 16-byte Folded Reload
	tbl.16b	v21, { v24 }, v26
	sub	x11, x29, #144
	ldur	q24, [x11, #-256]               ; 16-byte Folded Reload
	ushl.4s	v21, v21, v2
	cmeq.4s	v21, v21, v6
	bit.16b	v22, v4, v21
	sub	x11, x29, #80
	ldur	q21, [x11, #-256]               ; 16-byte Folded Reload
	ushl.4s	v20, v20, v2
	cmeq.4s	v20, v20, v6
	bit.16b	v21, v4, v20
	ushl.4s	v19, v19, v2
	cmeq.4s	v19, v19, v6
	bit.16b	v24, v4, v19
	add	x7, x7, #64
	subs	x6, x6, #64
	b.ne	LBB0_21
; %bb.22:                               ;   in Loop: Header=BB0_15 Depth=1
	dup.4s	v19, w8
	cmeq.4s	v20, v7, v19
	bit.16b	v7, v31, v20
	cmeq.4s	v20, v3, v19
	bit.16b	v3, v16, v20
	cmeq.4s	v16, v11, v19
	bif.16b	v0, v11, v16
	cmeq.4s	v16, v17, v19
	bif.16b	v1, v17, v16
	cmeq.4s	v16, v1, v19
	cmeq.4s	v17, v0, v19
	cmeq.4s	v20, v7, v19
	bit.16b	v7, v15, v20
	cmeq.4s	v20, v3, v19
	bit.16b	v3, v5, v20
	mov.16b	v5, v17
	bsl.16b	v5, v12, v0
	bsl.16b	v16, v13, v1
	cmeq.4s	v17, v16, v19
	cmeq.4s	v20, v5, v19
	cmeq.4s	v1, v3, v19
	cmeq.4s	v0, v7, v19
	bsl.16b	v0, v14, v7
	bsl.16b	v1, v10, v3
	mov.16b	v3, v20
	bsl.16b	v3, v30, v5
	mov.16b	v5, v17
	bsl.16b	v5, v9, v16
	dup.4s	v7, w9
	sub	x11, x29, #32
	ldur	q17, [x11, #-256]               ; 16-byte Folded Reload
	cmeq.4s	v16, v17, v7
	sub	x11, x29, #64
	ldur	q18, [x11, #-256]               ; 16-byte Folded Reload
	bsl.16b	v16, v18, v17
	ldur	q18, [x29, #-240]               ; 16-byte Folded Reload
	cmeq.4s	v17, v18, v7
	sub	x11, x29, #48
	ldur	q20, [x11, #-256]               ; 16-byte Folded Reload
	bsl.16b	v17, v20, v18
	cmeq.4s	v20, v28, v7
	sub	x11, x29, #16
	ldur	q18, [x11, #-256]               ; 16-byte Folded Reload
	bif.16b	v18, v28, v20
	cmeq.4s	v5, v5, v19
	mvn.16b	v5, v5
	cmeq.4s	v3, v3, v19
	mvn.16b	v3, v3
	uzp1.8h	v3, v3, v5
	xtn.8b	v3, v3
	umov.b	w23, v3[1]
	ldur	q20, [x29, #-192]               ; 16-byte Folded Reload
	cmeq.4s	v5, v20, v7
	ldur	q28, [x29, #-224]               ; 16-byte Folded Reload
	bsl.16b	v5, v28, v20
	umov.b	w24, v3[0]
	umov.b	w25, v3[2]
	cmeq.4s	v20, v16, v7
	ldur	q28, [x29, #-256]               ; 16-byte Folded Reload
	bit.16b	v16, v28, v20
	umov.b	w26, v3[3]
	umov.b	w6, v3[4]
	cmeq.4s	v20, v17, v7
	ldur	q28, [x29, #-208]               ; 16-byte Folded Reload
	bit.16b	v17, v28, v20
	umov.b	w11, v3[5]
	stur	w11, [x29, #-208]               ; 4-byte Folded Spill
	umov.b	w11, v3[6]
	stur	w11, [x29, #-192]               ; 4-byte Folded Spill
	cmeq.4s	v20, v18, v7
	bit.16b	v18, v29, v20
	umov.b	w11, v3[7]
	stur	w11, [x29, #-224]               ; 4-byte Folded Spill
	cmeq.4s	v1, v1, v19
	cmeq.4s	v0, v0, v19
	mvn.16b	v1, v1
	mvn.16b	v0, v0
	uzp1.8h	v0, v1, v0
	xtn.8b	v0, v0
	umov.b	w11, v0[0]
	stur	w11, [x29, #-240]               ; 4-byte Folded Spill
	cmeq.4s	v1, v5, v7
	bsl.16b	v1, v25, v5
	umov.b	w11, v0[1]
	sub	x12, x29, #16
	stur	w11, [x12, #-256]               ; 4-byte Folded Spill
	umov.b	w11, v0[2]
	stur	w11, [x29, #-256]               ; 4-byte Folded Spill
	cmeq.4s	v3, v16, v7
	bsl.16b	v3, v24, v16
	umov.b	w11, v0[3]
	sub	x12, x29, #48
	stur	w11, [x12, #-256]               ; 4-byte Folded Spill
	umov.b	w11, v0[4]
	sub	x12, x29, #32
	stur	w11, [x12, #-256]               ; 4-byte Folded Spill
	cmeq.4s	v5, v18, v7
	bsl.16b	v5, v22, v18
	umov.b	w7, v0[5]
	umov.b	w11, v0[6]
	sub	x12, x29, #64
	stur	w11, [x12, #-256]               ; 4-byte Folded Spill
	cmeq.4s	v16, v1, v7
	bit.16b	v1, v23, v16
	umov.b	w11, v0[7]
	sub	x12, x29, #80
	stur	w11, [x12, #-256]               ; 4-byte Folded Spill
	cmeq.4s	v0, v1, v7
	mvn.16b	v0, v0
	cmeq.4s	v1, v5, v7
	mvn.16b	v1, v1
	uzp1.8h	v0, v1, v0
	cmeq.4s	v1, v17, v7
	xtn.8b	v0, v0
	umov.b	w5, v0[1]
	umov.b	w4, v0[0]
	umov.b	w3, v0[2]
	umov.b	w12, v0[3]
	umov.b	w15, v0[4]
	umov.b	w27, v0[5]
	umov.b	w28, v0[6]
	bsl.16b	v1, v21, v17
	umov.b	w30, v0[7]
	cmeq.4s	v0, v1, v7
	cmeq.4s	v1, v3, v7
	mvn.16b	v0, v0
	mvn.16b	v1, v1
	uzp1.8h	v0, v0, v1
	and	w23, w23, #0x1
	and	w24, w24, #0x1
	bfi	w24, w23, #1, #1
	and	w23, w25, #0x1
	bfi	w24, w23, #2, #1
	and	w23, w26, #0x1
	bfi	w24, w23, #3, #1
	xtn.8b	v0, v0
	umov.b	w23, v0[0]
	umov.b	w25, v0[1]
	umov.b	w26, v0[2]
	umov.b	w16, v0[3]
	umov.b	w11, v0[4]
	umov.b	w19, v0[5]
	umov.b	w20, v0[6]
	umov.b	w21, v0[7]
	and	w6, w6, #0x1
	bfi	w24, w6, #4, #1
	ldur	w6, [x29, #-208]                ; 4-byte Folded Reload
	and	w6, w6, #0x1
	bfi	w24, w6, #5, #1
	ldur	w6, [x29, #-192]                ; 4-byte Folded Reload
	and	w6, w6, #0x1
	orr	w6, w24, w6, lsl #6
	ldur	w24, [x29, #-224]               ; 4-byte Folded Reload
	and	w24, w24, #0x1
	orr	w6, w6, w24, lsl #7
	ldur	w24, [x29, #-240]               ; 4-byte Folded Reload
	and	w24, w24, #0x1
	orr	w6, w6, w24, lsl #8
	sub	x24, x29, #16
	ldur	w24, [x24, #-256]               ; 4-byte Folded Reload
	and	w24, w24, #0x1
	orr	w6, w6, w24, lsl #9
	ldur	w24, [x29, #-256]               ; 4-byte Folded Reload
	and	w24, w24, #0x1
	orr	w6, w6, w24, lsl #10
	sub	x24, x29, #48
	ldur	w24, [x24, #-256]               ; 4-byte Folded Reload
	and	w24, w24, #0x1
	orr	w6, w6, w24, lsl #11
	sub	x24, x29, #32
	ldur	w24, [x24, #-256]               ; 4-byte Folded Reload
	and	w24, w24, #0x1
	orr	w6, w6, w24, lsl #12
	and	w7, w7, #0x1
	orr	w6, w6, w7, lsl #13
	sub	x24, x29, #64
	ldur	w7, [x24, #-256]                ; 4-byte Folded Reload
	and	w7, w7, #0x1
	orr	w6, w6, w7, lsl #14
	sub	x24, x29, #80
	ldur	w7, [x24, #-256]                ; 4-byte Folded Reload
	orr	w6, w6, w7, lsl #15
	tst	w6, #0xffff
	and	w5, w5, #0x1
	and	w4, w4, #0x1
	bfi	w4, w5, #1, #1
	and	w3, w3, #0x1
	bfi	w4, w3, #2, #1
	and	w12, w12, #0x1
	bfi	w4, w12, #3, #1
	and	w12, w15, #0x1
	bfi	w4, w12, #4, #1
	and	w12, w27, #0x1
	bfi	w4, w12, #5, #1
	and	w12, w28, #0x1
	orr	w12, w4, w12, lsl #6
	and	w15, w30, #0x1
	orr	w12, w12, w15, lsl #7
	and	w15, w23, #0x1
	orr	w12, w12, w15, lsl #8
	and	w15, w25, #0x1
	orr	w12, w12, w15, lsl #9
	and	w15, w26, #0x1
	orr	w12, w12, w15, lsl #10
	and	w15, w16, #0x1
	orr	w12, w12, w15, lsl #11
	and	w11, w11, #0x1
	orr	w11, w12, w11, lsl #12
	and	w12, w19, #0x1
	orr	w11, w11, w12, lsl #13
	and	w12, w20, #0x1
	orr	w11, w11, w12, lsl #14
	csinc	w12, w8, wzr, eq
	orr	w11, w11, w21, lsl #15
	tst	w11, #0xffff
	csinc	w11, w9, wzr, eq
	sub	x15, x29, #176
	ldur	x3, [x15, #-256]                ; 8-byte Folded Reload
	sub	x15, x29, #184
	ldur	x7, [x15, #-256]                ; 8-byte Folded Reload
	cmp	x3, x7
	b.eq	LBB0_13
; %bb.23:                               ;   in Loop: Header=BB0_15 Depth=1
	tst	x3, #0x38
	sub	x15, x29, #200
	ldur	x19, [x15, #-256]               ; 8-byte Folded Reload
	sub	x15, x29, #208
	ldur	x20, [x15, #-256]               ; 8-byte Folded Reload
	sub	x15, x29, #216
	ldur	x21, [x15, #-256]               ; 8-byte Folded Reload
	sub	x15, x29, #224
	ldur	x16, [x15, #-256]               ; 8-byte Folded Reload
	sub	x15, x29, #228
	ldur	w5, [x15, #-256]                ; 4-byte Folded Reload
	movi.8b	v20, #7
	b.eq	LBB0_28
; %bb.24:                               ;   in Loop: Header=BB0_15 Depth=1
	adrp	x23, lCPI0_0@PAGE
	adrp	x24, lCPI0_1@PAGE
	sub	x15, x29, #192
	ldur	x15, [x15, #-256]               ; 8-byte Folded Reload
LBB0_25:                                ;   in Loop: Header=BB0_15 Depth=1
	and	x15, x15, #0x1fffffff8
	and	x6, x3, #0x1fffffff8
	add	x4, x14, x6
	dup.4s	v0, w11
	dup.4s	v3, w12
	dup.8b	v5, w1
	sub	x11, x7, x15
	add	x12, x21, x7
	mov.16b	v1, v0
	mov.16b	v7, v3
LBB0_26:                                ;   Parent Loop BB0_15 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	d16, [x12, x14]
	tbl.16b	v17, { v16 }, v26
	tbl.16b	v18, { v16 }, v27
	ushl.4s	v18, v18, v2
	ushl.4s	v17, v17, v2
	eor.8b	v16, v16, v5
	and.8b	v16, v16, v20
	cmeq.8b	v16, v16, #0
	sshll.8h	v16, v16, #0
	sshll.4s	v19, v16, #0
	sshll2.4s	v16, v16, #0
	bit.16b	v7, v4, v16
	bit.16b	v3, v4, v19
	cmeq.4s	v16, v17, v6
	cmeq.4s	v17, v18, v6
	bit.16b	v1, v4, v17
	bit.16b	v0, v4, v16
	add	x12, x12, #8
	adds	x11, x11, #8
	b.ne	LBB0_26
; %bb.27:                               ;   in Loop: Header=BB0_15 Depth=1
	dup.4s	v5, w8
	cmeq.4s	v6, v7, v5
	mvn.16b	v6, v6
	cmeq.4s	v3, v3, v5
	mvn.16b	v3, v3
	uzp1.8h	v3, v3, v6
	xtn.8b	v3, v3
	umov.b	w11, v3[1]
	and	w11, w11, #0x1
	umov.b	w12, v3[0]
	and	w12, w12, #0x1
	bfi	w12, w11, #1, #1
	umov.b	w11, v3[2]
	and	w11, w11, #0x1
	bfi	w12, w11, #2, #1
	umov.b	w11, v3[3]
	and	w11, w11, #0x1
	bfi	w12, w11, #3, #1
	umov.b	w11, v3[4]
	and	w11, w11, #0x1
	bfi	w12, w11, #4, #1
	umov.b	w11, v3[5]
	and	w11, w11, #0x1
	bfi	w12, w11, #5, #1
	umov.b	w11, v3[6]
	and	w11, w11, #0x1
	orr	w11, w12, w11, lsl #6
	umov.b	w12, v3[7]
	orr	w11, w11, w12, lsl #7
	tst	w11, #0xff
	dup.4s	v3, w9
	csinc	w8, w8, wzr, eq
	cmeq.4s	v1, v1, v3
	mvn.16b	v1, v1
	cmeq.4s	v0, v0, v3
	mvn.16b	v0, v0
	uzp1.8h	v0, v0, v1
	xtn.8b	v0, v0
	umov.b	w11, v0[1]
	and	w11, w11, #0x1
	umov.b	w12, v0[0]
	and	w12, w12, #0x1
	bfi	w12, w11, #1, #1
	umov.b	w11, v0[2]
	and	w11, w11, #0x1
	bfi	w12, w11, #2, #1
	umov.b	w11, v0[3]
	and	w11, w11, #0x1
	bfi	w12, w11, #3, #1
	umov.b	w11, v0[4]
	and	w11, w11, #0x1
	bfi	w12, w11, #4, #1
	umov.b	w11, v0[5]
	and	w11, w11, #0x1
	bfi	w12, w11, #5, #1
	umov.b	w11, v0[6]
	and	w11, w11, #0x1
	orr	w11, w12, w11, lsl #6
	umov.b	w12, v0[7]
	orr	w11, w11, w12, lsl #7
	tst	w11, #0xff
	csinc	w9, w9, wzr, eq
	mov	x11, x9
	mov	x12, x8
	cmp	x3, x6
	b.eq	LBB0_14
	b	LBB0_29
LBB0_28:                                ;   in Loop: Header=BB0_15 Depth=1
	add	x4, x14, x7
	adrp	x23, lCPI0_0@PAGE
	adrp	x24, lCPI0_1@PAGE
LBB0_29:                                ;   in Loop: Header=BB0_15 Depth=1
	add	x3, x21, x4
	sub	w4, w22, w4
	mov	x9, x11
	mov	x8, x12
LBB0_30:                                ;   Parent Loop BB0_15 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldrb	w11, [x3], #1
	lsr	w12, w11, w10
	eor	w11, w11, w1
	tst	w11, #0x7
	csinc	w8, w8, wzr, ne
	cmp	w12, w2
	csinc	w9, w9, wzr, ne
	subs	w4, w4, #1
	b.ne	LBB0_30
	b	LBB0_14
LBB0_31:
	mov	w22, #0
	b	LBB0_39
LBB0_32:
	mov	x9, x8
LBB0_33:
	sub	x10, x29, #164
	ldur	w10, [x10, #-256]               ; 4-byte Folded Reload
	cbz	w10, LBB0_37
; %bb.34:
	cbz	w22, LBB0_37
; %bb.35:
	ldrb	w10, [x19, #24]
	ldr	x11, [x19]
	mov	w12, w22
	mov	x13, x20
	mov	x14, x21
LBB0_36:                                ; =>This Inner Loop Header: Depth=1
	ldrb	w15, [x14]
	add	w15, w15, w10
	strb	w15, [x14], #1
	and	x15, x15, #0xff
	ldrh	w15, [x11, x15, lsl #1]
	strh	w15, [x13], #2
	subs	x12, x12, #1
	b.ne	LBB0_36
LBB0_37:
	cbz	w8, LBB0_39
; %bb.38:
	cbnz	w9, LBB0_40
LBB0_39:
	ldp	w1, w0, [x19, #12]
	ldr	w2, [x19, #8]
	mov	x3, x20
	mov	x4, x22
	bl	_tegra_kbc_report_released_keys
	ldr	w0, [x19, #16]
	mov	x1, x21
	mov	x2, x20
	mov	x3, x22
	bl	_tegra_kbc_report_pressed_keys
	ldr	w0, [x19, #16]
	bl	_input_sync
	ldr	w0, [x19, #12]
	mov	x1, x20
	mov	w2, #4
	bl	_memcpy
	str	w22, [x19, #8]
LBB0_40:
	ldur	x8, [x29, #-160]
Lloh19:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh20:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh21:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_42
; %bb.41:
	sub	sp, x29, #144
	ldp	x29, x30, [sp, #144]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #128]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #112]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #96]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #80]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #64]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #48]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #32]             ; 16-byte Folded Reload
	ldp	d13, d12, [sp, #16]             ; 16-byte Folded Reload
	ldp	d15, d14, [sp], #160            ; 16-byte Folded Reload
	ret
LBB0_42:
	bl	___stack_chk_fail
	.loh AdrpLdrGot	Lloh7, Lloh8
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh11, Lloh12
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdr	Lloh17, Lloh18
	.loh AdrpAdrp	Lloh15, Lloh17
	.loh AdrpLdr	Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.cfi_endproc
                                        ; -- End function
	.comm	_KBC_MAX_KPENT,4,2              ; @KBC_MAX_KPENT
	.comm	_KBC_KP_ENT0_0,8,3              ; @KBC_KP_ENT0_0
	.comm	_KBC_ROW_SHIFT,1,0              ; @KBC_ROW_SHIFT
	.comm	_KEY_FN,2,1                     ; @KEY_FN
	.no_dead_strip	_tegra_kbc_report_keys
.subsections_via_symbols
