	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function aw_gpio_pin_toggle
_aw_gpio_pin_toggle:                    ## @aw_gpio_pin_toggle
	.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	%rbx
	pushq	%rax
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %rbx
	callq	_device_get_softc
	movq	%rax, %r15
	movq	(%rax), %rax
	cmpq	%rbx, (%rax)
	jae	LBB0_2
## %bb.1:
	movq	_EINVAL@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	jmp	LBB0_3
LBB0_2:
	movq	8(%rax), %rax
	shlq	$4, %rbx
	movq	(%rax,%rbx), %r14
	movb	8(%rax,%rbx), %bl
	movq	%r15, %rdi
	callq	_AW_GPIO_LOCK
	movq	%r14, %rdi
	callq	_AW_GPIO_GP_DAT
	movq	%r15, %rdi
	movl	%eax, %esi
	callq	_AW_GPIO_READ
	movl	$1, %edx
	movl	%ebx, %ecx
	shll	%cl, %edx
	movl	$-2, %esi
	roll	%cl, %esi
	movslq	%edx, %rcx
	movslq	%esi, %rdx
	andq	%rax, %rdx
	movq	%rax, %rbx
	orq	%rcx, %rbx
	testq	%rcx, %rax
	cmovneq	%rdx, %rbx
	movq	%r14, %rdi
	callq	_AW_GPIO_GP_DAT
	movq	%r15, %rdi
	movl	%eax, %esi
	movq	%rbx, %rdx
	callq	_AW_GPIO_WRITE
	movq	%r15, %rdi
	callq	_AW_GPIO_UNLOCK
	xorl	%eax, %eax
LBB0_3:
	addq	$8, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_EINVAL,4,2                     ## @EINVAL
	.no_dead_strip	_aw_gpio_pin_toggle
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function aw_gpio_pin_toggle
_aw_gpio_pin_toggle:                    ; @aw_gpio_pin_toggle
	.cfi_startproc
; %bb.0:
	stp	x22, x21, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.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
	mov	x20, x1
	bl	_device_get_softc
	ldr	x8, [x0]
	ldr	x9, [x8]
	cmp	x9, x20
	b.hs	LBB0_2
; %bb.1:
Lloh0:
	adrp	x8, _EINVAL@GOTPAGE
Lloh1:
	ldr	x8, [x8, _EINVAL@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
	b	LBB0_3
LBB0_2:
	mov	x19, x0
	ldr	x8, [x8, #8]
	add	x8, x8, x20, lsl #4
	ldr	x20, [x8]
	ldr	w21, [x8, #8]
	bl	_AW_GPIO_LOCK
	mov	x0, x20
	bl	_AW_GPIO_GP_DAT
	mov	x1, x0
	mov	x0, x19
	bl	_AW_GPIO_READ
	mov	w8, #1
	lsl	w8, w8, w21
	sxtw	x9, w8
	mvn	w8, w8
	sxtw	x8, w8
	and	x8, x0, x8
	orr	x10, x0, x9
	tst	x0, x9
	csel	x21, x10, x8, eq
	mov	x0, x20
	bl	_AW_GPIO_GP_DAT
	mov	x1, x0
	mov	x0, x19
	mov	x2, x21
	bl	_AW_GPIO_WRITE
	mov	x0, x19
	bl	_AW_GPIO_UNLOCK
	mov	w0, #0
LBB0_3:
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_EINVAL,4,2                     ; @EINVAL
	.no_dead_strip	_aw_gpio_pin_toggle
.subsections_via_symbols
