	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function atmel_tsadcc_interrupt
_atmel_tsadcc_interrupt:                ## @atmel_tsadcc_interrupt
	.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	%rsi, %r15
	movq	16(%rsi), %r14
	movq	_ATMEL_TSADCC_SR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_atmel_tsadcc_read
	movl	%eax, %r12d
	movq	_ATMEL_TSADCC_IMR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_atmel_tsadcc_read
	movl	%eax, %ebx
	andl	%r12d, %ebx
	movq	_ATMEL_TSADCC_NOCNT@GOTPCREL(%rip), %r12
	testl	%ebx, (%r12)
	je	LBB0_2
## %bb.1:
	movq	_ATMEL_TSADCC_MR@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	callq	_atmel_tsadcc_read
	movq	_ATMEL_TSADCC_PENDBC@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movl	(%rbx), %edi
	movl	%eax, %esi
	callq	_atmel_tsadcc_write
	movq	_ATMEL_TSADCC_TRGR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_ATMEL_TSADCC_TRGMOD_NONE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_atmel_tsadcc_write
	movq	_ATMEL_TSADCC_IDR@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	movl	$3, %edi
	callq	_ATMEL_TSADCC_EOC
	orl	(%r12), %eax
	movl	%ebx, %edi
	movl	%eax, %esi
	callq	_atmel_tsadcc_write
	movq	_ATMEL_TSADCC_IER@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_ATMEL_TSADCC_PENCNT@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_atmel_tsadcc_write
	movq	_BTN_TOUCH@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdi
	xorl	%edx, %edx
	callq	_input_report_key
	movl	$0, (%r15)
	movq	%r14, %rdi
	callq	_input_sync
	jmp	LBB0_9
LBB0_2:
	movq	_ATMEL_TSADCC_PENCNT@GOTPCREL(%rip), %r13
	testl	%ebx, (%r13)
	je	LBB0_4
## %bb.3:
	movq	_ATMEL_TSADCC_MR@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	callq	_atmel_tsadcc_read
	movq	_ATMEL_TSADCC_PENDBC@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ebx
	notl	%ebx
	andl	%eax, %ebx
	movq	_ATMEL_TSADCC_IDR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r13), %esi
	callq	_atmel_tsadcc_write
	movl	(%r14), %edi
	movl	%ebx, %esi
	callq	_atmel_tsadcc_write
	movq	_ATMEL_TSADCC_IER@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	movl	$3, %edi
	callq	_ATMEL_TSADCC_EOC
	orl	(%r12), %eax
	movl	%ebx, %edi
	movl	%eax, %esi
	callq	_atmel_tsadcc_write
	movq	_ATMEL_TSADCC_TRGR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_ATMEL_TSADCC_TRGMOD_PERIOD@GOTPCREL(%rip), %rax
	movl	$268369920, %esi                ## imm = 0xFFF0000
	orl	(%rax), %esi
	callq	_atmel_tsadcc_write
	jmp	LBB0_9
LBB0_4:
	movl	$3, %edi
	callq	_ATMEL_TSADCC_EOC
	testl	%ebx, %eax
	je	LBB0_9
## %bb.5:
	cmpl	$0, (%r15)
	je	LBB0_7
## %bb.6:
	movq	_ABS_X@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	4(%r15), %edx
	movq	%r14, %rdi
	callq	_input_report_abs
	movq	_ABS_Y@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	8(%r15), %edx
	movq	%r14, %rdi
	callq	_input_report_abs
	movq	_BTN_TOUCH@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdi
	movl	$1, %edx
	callq	_input_report_key
	movq	%r14, %rdi
	callq	_input_sync
	jmp	LBB0_8
LBB0_7:
	movl	$1, (%r15)
LBB0_8:
	movq	_ATMEL_TSADCC_CDR3@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_atmel_tsadcc_read
	shll	$10, %eax
	movl	%eax, 4(%r15)
	movq	_ATMEL_TSADCC_CDR2@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_atmel_tsadcc_read
	movl	%eax, %ecx
	movl	4(%r15), %eax
	cltd
	idivl	%ecx
	movl	%eax, 4(%r15)
	movq	_ATMEL_TSADCC_CDR1@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_atmel_tsadcc_read
	shll	$10, %eax
	movl	%eax, 8(%r15)
	movq	_ATMEL_TSADCC_CDR0@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_atmel_tsadcc_read
	movl	%eax, %ecx
	movl	8(%r15), %eax
	cltd
	idivl	%ecx
	movl	%eax, 8(%r15)
LBB0_9:
	movq	_IRQ_HANDLED@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ATMEL_TSADCC_SR,4,2            ## @ATMEL_TSADCC_SR
	.comm	_ATMEL_TSADCC_IMR,4,2           ## @ATMEL_TSADCC_IMR
	.comm	_ATMEL_TSADCC_NOCNT,4,2         ## @ATMEL_TSADCC_NOCNT
	.comm	_ATMEL_TSADCC_MR,4,2            ## @ATMEL_TSADCC_MR
	.comm	_ATMEL_TSADCC_PENDBC,4,2        ## @ATMEL_TSADCC_PENDBC
	.comm	_ATMEL_TSADCC_TRGR,4,2          ## @ATMEL_TSADCC_TRGR
	.comm	_ATMEL_TSADCC_TRGMOD_NONE,4,2   ## @ATMEL_TSADCC_TRGMOD_NONE
	.comm	_ATMEL_TSADCC_IDR,4,2           ## @ATMEL_TSADCC_IDR
	.comm	_ATMEL_TSADCC_IER,4,2           ## @ATMEL_TSADCC_IER
	.comm	_ATMEL_TSADCC_PENCNT,4,2        ## @ATMEL_TSADCC_PENCNT
	.comm	_BTN_TOUCH,4,2                  ## @BTN_TOUCH
	.comm	_ATMEL_TSADCC_TRGMOD_PERIOD,4,2 ## @ATMEL_TSADCC_TRGMOD_PERIOD
	.comm	_ABS_X,4,2                      ## @ABS_X
	.comm	_ABS_Y,4,2                      ## @ABS_Y
	.comm	_ATMEL_TSADCC_CDR3,4,2          ## @ATMEL_TSADCC_CDR3
	.comm	_ATMEL_TSADCC_CDR2,4,2          ## @ATMEL_TSADCC_CDR2
	.comm	_ATMEL_TSADCC_CDR1,4,2          ## @ATMEL_TSADCC_CDR1
	.comm	_ATMEL_TSADCC_CDR0,4,2          ## @ATMEL_TSADCC_CDR0
	.comm	_IRQ_HANDLED,4,2                ## @IRQ_HANDLED
	.no_dead_strip	_atmel_tsadcc_interrupt
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function atmel_tsadcc_interrupt
_atmel_tsadcc_interrupt:                ; @atmel_tsadcc_interrupt
	.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, x1
	ldr	x20, [x1, #16]
Lloh0:
	adrp	x8, _ATMEL_TSADCC_SR@GOTPAGE
Lloh1:
	ldr	x8, [x8, _ATMEL_TSADCC_SR@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
	bl	_atmel_tsadcc_read
	mov	x21, x0
Lloh3:
	adrp	x8, _ATMEL_TSADCC_IMR@GOTPAGE
Lloh4:
	ldr	x8, [x8, _ATMEL_TSADCC_IMR@GOTPAGEOFF]
Lloh5:
	ldr	w0, [x8]
	bl	_atmel_tsadcc_read
	and	w21, w0, w21
Lloh6:
	adrp	x22, _ATMEL_TSADCC_NOCNT@GOTPAGE
Lloh7:
	ldr	x22, [x22, _ATMEL_TSADCC_NOCNT@GOTPAGEOFF]
	ldr	w8, [x22]
	tst	w21, w8
	b.eq	LBB0_2
; %bb.1:
Lloh8:
	adrp	x21, _ATMEL_TSADCC_MR@GOTPAGE
Lloh9:
	ldr	x21, [x21, _ATMEL_TSADCC_MR@GOTPAGEOFF]
	ldr	w0, [x21]
	bl	_atmel_tsadcc_read
Lloh10:
	adrp	x8, _ATMEL_TSADCC_PENDBC@GOTPAGE
Lloh11:
	ldr	x8, [x8, _ATMEL_TSADCC_PENDBC@GOTPAGEOFF]
Lloh12:
	ldr	w8, [x8]
	orr	w1, w8, w0
	ldr	w0, [x21]
	bl	_atmel_tsadcc_write
Lloh13:
	adrp	x8, _ATMEL_TSADCC_TRGR@GOTPAGE
Lloh14:
	ldr	x8, [x8, _ATMEL_TSADCC_TRGR@GOTPAGEOFF]
Lloh15:
	ldr	w0, [x8]
Lloh16:
	adrp	x8, _ATMEL_TSADCC_TRGMOD_NONE@GOTPAGE
Lloh17:
	ldr	x8, [x8, _ATMEL_TSADCC_TRGMOD_NONE@GOTPAGEOFF]
Lloh18:
	ldr	w1, [x8]
	bl	_atmel_tsadcc_write
Lloh19:
	adrp	x8, _ATMEL_TSADCC_IDR@GOTPAGE
Lloh20:
	ldr	x8, [x8, _ATMEL_TSADCC_IDR@GOTPAGEOFF]
Lloh21:
	ldr	w21, [x8]
	mov	w0, #3
	bl	_ATMEL_TSADCC_EOC
	ldr	w8, [x22]
	orr	w1, w8, w0
	mov	x0, x21
	bl	_atmel_tsadcc_write
Lloh22:
	adrp	x8, _ATMEL_TSADCC_IER@GOTPAGE
Lloh23:
	ldr	x8, [x8, _ATMEL_TSADCC_IER@GOTPAGEOFF]
Lloh24:
	ldr	w0, [x8]
Lloh25:
	adrp	x8, _ATMEL_TSADCC_PENCNT@GOTPAGE
Lloh26:
	ldr	x8, [x8, _ATMEL_TSADCC_PENCNT@GOTPAGEOFF]
Lloh27:
	ldr	w1, [x8]
	bl	_atmel_tsadcc_write
Lloh28:
	adrp	x8, _BTN_TOUCH@GOTPAGE
Lloh29:
	ldr	x8, [x8, _BTN_TOUCH@GOTPAGEOFF]
Lloh30:
	ldr	w1, [x8]
	mov	x0, x20
	mov	w2, #0
	bl	_input_report_key
	str	wzr, [x19]
	mov	x0, x20
	bl	_input_sync
	b	LBB0_9
LBB0_2:
Lloh31:
	adrp	x23, _ATMEL_TSADCC_PENCNT@GOTPAGE
Lloh32:
	ldr	x23, [x23, _ATMEL_TSADCC_PENCNT@GOTPAGEOFF]
	ldr	w8, [x23]
	tst	w8, w21
	b.eq	LBB0_4
; %bb.3:
Lloh33:
	adrp	x20, _ATMEL_TSADCC_MR@GOTPAGE
Lloh34:
	ldr	x20, [x20, _ATMEL_TSADCC_MR@GOTPAGEOFF]
	ldr	w0, [x20]
	bl	_atmel_tsadcc_read
Lloh35:
	adrp	x8, _ATMEL_TSADCC_PENDBC@GOTPAGE
Lloh36:
	ldr	x8, [x8, _ATMEL_TSADCC_PENDBC@GOTPAGEOFF]
Lloh37:
	ldr	w8, [x8]
	bic	w19, w0, w8
Lloh38:
	adrp	x8, _ATMEL_TSADCC_IDR@GOTPAGE
Lloh39:
	ldr	x8, [x8, _ATMEL_TSADCC_IDR@GOTPAGEOFF]
Lloh40:
	ldr	w0, [x8]
	ldr	w1, [x23]
	bl	_atmel_tsadcc_write
	ldr	w0, [x20]
	mov	x1, x19
	bl	_atmel_tsadcc_write
Lloh41:
	adrp	x8, _ATMEL_TSADCC_IER@GOTPAGE
Lloh42:
	ldr	x8, [x8, _ATMEL_TSADCC_IER@GOTPAGEOFF]
Lloh43:
	ldr	w19, [x8]
	mov	w0, #3
	bl	_ATMEL_TSADCC_EOC
	ldr	w8, [x22]
	orr	w1, w8, w0
	mov	x0, x19
	bl	_atmel_tsadcc_write
Lloh44:
	adrp	x8, _ATMEL_TSADCC_TRGR@GOTPAGE
Lloh45:
	ldr	x8, [x8, _ATMEL_TSADCC_TRGR@GOTPAGEOFF]
Lloh46:
	ldr	w0, [x8]
Lloh47:
	adrp	x8, _ATMEL_TSADCC_TRGMOD_PERIOD@GOTPAGE
Lloh48:
	ldr	x8, [x8, _ATMEL_TSADCC_TRGMOD_PERIOD@GOTPAGEOFF]
Lloh49:
	ldr	w8, [x8]
	orr	w1, w8, #0xfff0000
	bl	_atmel_tsadcc_write
	b	LBB0_9
LBB0_4:
	mov	w0, #3
	bl	_ATMEL_TSADCC_EOC
	tst	w0, w21
	b.eq	LBB0_9
; %bb.5:
	ldr	w8, [x19]
	cbz	w8, LBB0_7
; %bb.6:
Lloh50:
	adrp	x8, _ABS_X@GOTPAGE
Lloh51:
	ldr	x8, [x8, _ABS_X@GOTPAGEOFF]
Lloh52:
	ldr	w1, [x8]
	ldr	w2, [x19, #4]
	mov	x0, x20
	bl	_input_report_abs
Lloh53:
	adrp	x8, _ABS_Y@GOTPAGE
Lloh54:
	ldr	x8, [x8, _ABS_Y@GOTPAGEOFF]
Lloh55:
	ldr	w1, [x8]
	ldr	w2, [x19, #8]
	mov	x0, x20
	bl	_input_report_abs
Lloh56:
	adrp	x8, _BTN_TOUCH@GOTPAGE
Lloh57:
	ldr	x8, [x8, _BTN_TOUCH@GOTPAGEOFF]
Lloh58:
	ldr	w1, [x8]
	mov	x0, x20
	mov	w2, #1
	bl	_input_report_key
	mov	x0, x20
	bl	_input_sync
	b	LBB0_8
LBB0_7:
	mov	w8, #1
	str	w8, [x19]
LBB0_8:
Lloh59:
	adrp	x8, _ATMEL_TSADCC_CDR3@GOTPAGE
Lloh60:
	ldr	x8, [x8, _ATMEL_TSADCC_CDR3@GOTPAGEOFF]
Lloh61:
	ldr	w0, [x8]
	bl	_atmel_tsadcc_read
	lsl	w8, w0, #10
	str	w8, [x19, #4]
Lloh62:
	adrp	x8, _ATMEL_TSADCC_CDR2@GOTPAGE
Lloh63:
	ldr	x8, [x8, _ATMEL_TSADCC_CDR2@GOTPAGEOFF]
Lloh64:
	ldr	w0, [x8]
	bl	_atmel_tsadcc_read
	ldr	w8, [x19, #4]
	sdiv	w8, w8, w0
	str	w8, [x19, #4]
Lloh65:
	adrp	x8, _ATMEL_TSADCC_CDR1@GOTPAGE
Lloh66:
	ldr	x8, [x8, _ATMEL_TSADCC_CDR1@GOTPAGEOFF]
Lloh67:
	ldr	w0, [x8]
	bl	_atmel_tsadcc_read
	lsl	w8, w0, #10
	str	w8, [x19, #8]
Lloh68:
	adrp	x8, _ATMEL_TSADCC_CDR0@GOTPAGE
Lloh69:
	ldr	x8, [x8, _ATMEL_TSADCC_CDR0@GOTPAGEOFF]
Lloh70:
	ldr	w0, [x8]
	bl	_atmel_tsadcc_read
	ldr	w8, [x19, #8]
	sdiv	w8, w8, w0
	str	w8, [x19, #8]
LBB0_9:
Lloh71:
	adrp	x8, _IRQ_HANDLED@GOTPAGE
Lloh72:
	ldr	x8, [x8, _IRQ_HANDLED@GOTPAGEOFF]
Lloh73:
	ldr	w0, [x8]
	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
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh28, Lloh29, Lloh30
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh47, Lloh48, Lloh49
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGot	Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh56, Lloh57, Lloh58
	.loh AdrpLdrGotLdr	Lloh53, Lloh54, Lloh55
	.loh AdrpLdrGotLdr	Lloh50, Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh65, Lloh66, Lloh67
	.loh AdrpLdrGotLdr	Lloh62, Lloh63, Lloh64
	.loh AdrpLdrGotLdr	Lloh59, Lloh60, Lloh61
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh73
	.cfi_endproc
                                        ; -- End function
	.comm	_ATMEL_TSADCC_SR,4,2            ; @ATMEL_TSADCC_SR
	.comm	_ATMEL_TSADCC_IMR,4,2           ; @ATMEL_TSADCC_IMR
	.comm	_ATMEL_TSADCC_NOCNT,4,2         ; @ATMEL_TSADCC_NOCNT
	.comm	_ATMEL_TSADCC_MR,4,2            ; @ATMEL_TSADCC_MR
	.comm	_ATMEL_TSADCC_PENDBC,4,2        ; @ATMEL_TSADCC_PENDBC
	.comm	_ATMEL_TSADCC_TRGR,4,2          ; @ATMEL_TSADCC_TRGR
	.comm	_ATMEL_TSADCC_TRGMOD_NONE,4,2   ; @ATMEL_TSADCC_TRGMOD_NONE
	.comm	_ATMEL_TSADCC_IDR,4,2           ; @ATMEL_TSADCC_IDR
	.comm	_ATMEL_TSADCC_IER,4,2           ; @ATMEL_TSADCC_IER
	.comm	_ATMEL_TSADCC_PENCNT,4,2        ; @ATMEL_TSADCC_PENCNT
	.comm	_BTN_TOUCH,4,2                  ; @BTN_TOUCH
	.comm	_ATMEL_TSADCC_TRGMOD_PERIOD,4,2 ; @ATMEL_TSADCC_TRGMOD_PERIOD
	.comm	_ABS_X,4,2                      ; @ABS_X
	.comm	_ABS_Y,4,2                      ; @ABS_Y
	.comm	_ATMEL_TSADCC_CDR3,4,2          ; @ATMEL_TSADCC_CDR3
	.comm	_ATMEL_TSADCC_CDR2,4,2          ; @ATMEL_TSADCC_CDR2
	.comm	_ATMEL_TSADCC_CDR1,4,2          ; @ATMEL_TSADCC_CDR1
	.comm	_ATMEL_TSADCC_CDR0,4,2          ; @ATMEL_TSADCC_CDR0
	.comm	_IRQ_HANDLED,4,2                ; @IRQ_HANDLED
	.no_dead_strip	_atmel_tsadcc_interrupt
.subsections_via_symbols
