	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function pidff_init_fields
_pidff_init_fields:                     ## @pidff_init_fields
	.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, %r14
	movq	%rdi, %r15
	movq	_set_effect@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_SET_EFFECT@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_6
## %bb.1:
	movl	(%r15), %edi
	leaq	L_.str(%rip), %rsi
LBB0_2:
	callq	_hid_err
LBB0_3:
	movq	_ENODEV@GOTPCREL(%rip), %rax
	xorl	%ebx, %ebx
LBB0_4:
	subl	(%rax), %ebx
LBB0_5:
	movl	%ebx, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_6:
	movq	_block_load@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_BLOCK_LOAD@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	xorl	%ebx, %ebx
	xorl	%edx, %edx
	callq	_PIDFF_FIND_FIELDS
	movq	8(%r15), %rax
	movq	_PID_EFFECT_BLOCK_INDEX@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	cmpl	$0, (%rax,%rcx,4)
	je	LBB0_9
## %bb.7:
	movq	_effect_operation@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_EFFECT_OPERATION@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_10
## %bb.8:
	movl	(%r15), %edi
	leaq	L_.str.2(%rip), %rsi
	jmp	LBB0_2
LBB0_9:
	movl	(%r15), %edi
	leaq	L_.str.1(%rip), %rsi
	callq	_hid_err
	movq	_ENODEV@GOTPCREL(%rip), %rax
	jmp	LBB0_4
LBB0_10:
	movq	_block_free@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_BLOCK_FREE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_12
## %bb.11:
	movl	(%r15), %edi
	leaq	L_.str.3(%rip), %rsi
	jmp	LBB0_2
LBB0_12:
	movq	_set_envelope@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_SET_ENVELOPE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	movq	%rax, %rbx
	movq	%r15, %rdi
	callq	_pidff_find_special_fields
	testq	%rax, %rax
	jne	LBB0_3
## %bb.13:
	movq	%r15, %rdi
	movq	%r14, %rsi
	callq	_pidff_find_effects
	testq	%rax, %rax
	jne	LBB0_3
## %bb.14:
	testq	%rbx, %rbx
	je	LBB0_21
## %bb.15:
	movq	_FF_CONSTANT@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_test_and_clear_bit
	testq	%rax, %rax
	je	LBB0_17
## %bb.16:
	movl	(%r15), %edi
	leaq	L_.str.4(%rip), %rsi
	callq	_hid_warn
LBB0_17:
	movq	_FF_RAMP@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_test_and_clear_bit
	testq	%rax, %rax
	je	LBB0_19
## %bb.18:
	movl	(%r15), %edi
	leaq	L_.str.5(%rip), %rsi
	callq	_hid_warn
LBB0_19:
	movq	_FF_PERIODIC@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_test_and_clear_bit
	testq	%rax, %rax
	je	LBB0_21
## %bb.20:
	movl	(%r15), %edi
	leaq	L_.str.6(%rip), %rsi
	callq	_hid_warn
LBB0_21:
	movq	_FF_CONSTANT@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	je	LBB0_24
## %bb.22:
	movq	_set_constant@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_SET_CONSTANT@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_24
## %bb.23:
	movl	(%r15), %edi
	leaq	L_.str.7(%rip), %rsi
	callq	_hid_warn
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_clear_bit
LBB0_24:
	movq	_FF_RAMP@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	je	LBB0_27
## %bb.25:
	movq	_set_ramp@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_SET_RAMP@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_27
## %bb.26:
	movl	(%r15), %edi
	leaq	L_.str.8(%rip), %rsi
	callq	_hid_warn
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_clear_bit
LBB0_27:
	movq	_FF_SPRING@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	jne	LBB0_31
## %bb.28:
	movq	_FF_DAMPER@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	jne	LBB0_31
## %bb.29:
	movq	_FF_FRICTION@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	jne	LBB0_31
## %bb.30:
	movq	_FF_INERTIA@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	je	LBB0_33
LBB0_31:
	movq	_set_condition@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_SET_CONDITION@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_33
## %bb.32:
	movl	(%r15), %edi
	leaq	L_.str.9(%rip), %rsi
	callq	_hid_warn
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_clear_bit
	movq	_FF_DAMPER@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_clear_bit
	movq	_FF_FRICTION@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_clear_bit
	movq	_FF_INERTIA@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_clear_bit
LBB0_33:
	movq	_FF_PERIODIC@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_test_bit
	testq	%rax, %rax
	je	LBB0_36
## %bb.34:
	movq	_set_periodic@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_SET_PERIODIC@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	je	LBB0_36
## %bb.35:
	movl	(%r15), %edi
	leaq	L_.str.10(%rip), %rsi
	callq	_hid_warn
	movl	(%rbx), %edi
	movl	(%r14), %esi
	callq	_clear_bit
LBB0_36:
	movq	_pool@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_POOL@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	xorl	%ebx, %ebx
	xorl	%edx, %edx
	callq	_PIDFF_FIND_FIELDS
	movq	_device_gain@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PID_DEVICE_GAIN@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$1, %edx
	callq	_PIDFF_FIND_FIELDS
	testq	%rax, %rax
	jne	LBB0_5
## %bb.37:
	movq	_FF_GAIN@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	(%r14), %esi
	callq	_set_bit
	jmp	LBB0_5
	.cfi_endproc
                                        ## -- End function
	.comm	_set_effect,4,2                 ## @set_effect
	.comm	_PID_SET_EFFECT,4,2             ## @PID_SET_EFFECT
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"unknown set_effect report layout\n"

	.comm	_ENODEV,4,2                     ## @ENODEV
	.comm	_block_load,4,2                 ## @block_load
	.comm	_PID_BLOCK_LOAD,4,2             ## @PID_BLOCK_LOAD
	.comm	_PID_EFFECT_BLOCK_INDEX,8,3     ## @PID_EFFECT_BLOCK_INDEX
L_.str.1:                               ## @.str.1
	.asciz	"unknown pid_block_load report layout\n"

	.comm	_effect_operation,4,2           ## @effect_operation
	.comm	_PID_EFFECT_OPERATION,4,2       ## @PID_EFFECT_OPERATION
L_.str.2:                               ## @.str.2
	.asciz	"unknown effect_operation report layout\n"

	.comm	_block_free,4,2                 ## @block_free
	.comm	_PID_BLOCK_FREE,4,2             ## @PID_BLOCK_FREE
L_.str.3:                               ## @.str.3
	.asciz	"unknown pid_block_free report layout\n"

	.comm	_set_envelope,4,2               ## @set_envelope
	.comm	_PID_SET_ENVELOPE,4,2           ## @PID_SET_ENVELOPE
	.comm	_FF_CONSTANT,4,2                ## @FF_CONSTANT
L_.str.4:                               ## @.str.4
	.asciz	"has constant effect but no envelope\n"

	.comm	_FF_RAMP,4,2                    ## @FF_RAMP
L_.str.5:                               ## @.str.5
	.asciz	"has ramp effect but no envelope\n"

	.comm	_FF_PERIODIC,4,2                ## @FF_PERIODIC
L_.str.6:                               ## @.str.6
	.asciz	"has periodic effect but no envelope\n"

	.comm	_set_constant,4,2               ## @set_constant
	.comm	_PID_SET_CONSTANT,4,2           ## @PID_SET_CONSTANT
L_.str.7:                               ## @.str.7
	.asciz	"unknown constant effect layout\n"

	.comm	_set_ramp,4,2                   ## @set_ramp
	.comm	_PID_SET_RAMP,4,2               ## @PID_SET_RAMP
L_.str.8:                               ## @.str.8
	.asciz	"unknown ramp effect layout\n"

	.comm	_FF_SPRING,4,2                  ## @FF_SPRING
	.comm	_FF_DAMPER,4,2                  ## @FF_DAMPER
	.comm	_FF_FRICTION,4,2                ## @FF_FRICTION
	.comm	_FF_INERTIA,4,2                 ## @FF_INERTIA
	.comm	_set_condition,4,2              ## @set_condition
	.comm	_PID_SET_CONDITION,4,2          ## @PID_SET_CONDITION
L_.str.9:                               ## @.str.9
	.asciz	"unknown condition effect layout\n"

	.comm	_set_periodic,4,2               ## @set_periodic
	.comm	_PID_SET_PERIODIC,4,2           ## @PID_SET_PERIODIC
L_.str.10:                              ## @.str.10
	.asciz	"unknown periodic effect layout\n"

	.comm	_pool,4,2                       ## @pool
	.comm	_PID_POOL,4,2                   ## @PID_POOL
	.comm	_device_gain,4,2                ## @device_gain
	.comm	_PID_DEVICE_GAIN,4,2            ## @PID_DEVICE_GAIN
	.comm	_FF_GAIN,4,2                    ## @FF_GAIN
	.no_dead_strip	_pidff_init_fields
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function pidff_init_fields
_pidff_init_fields:                     ; @pidff_init_fields
	.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
	mov	x20, x0
Lloh0:
	adrp	x8, _set_effect@GOTPAGE
Lloh1:
	ldr	x8, [x8, _set_effect@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
Lloh3:
	adrp	x8, _PID_SET_EFFECT@GOTPAGE
Lloh4:
	ldr	x8, [x8, _PID_SET_EFFECT@GOTPAGEOFF]
Lloh5:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_5
; %bb.1:
	ldr	w0, [x20]
Lloh6:
	adrp	x1, l_.str@PAGE
Lloh7:
	add	x1, x1, l_.str@PAGEOFF
LBB0_2:
	bl	_hid_err
LBB0_3:
Lloh8:
	adrp	x8, _ENODEV@GOTPAGE
Lloh9:
	ldr	x8, [x8, _ENODEV@GOTPAGEOFF]
Lloh10:
	ldr	w8, [x8]
	neg	w0, w8
LBB0_4:
	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_5:
Lloh11:
	adrp	x8, _block_load@GOTPAGE
Lloh12:
	ldr	x8, [x8, _block_load@GOTPAGEOFF]
Lloh13:
	ldr	w0, [x8]
Lloh14:
	adrp	x8, _PID_BLOCK_LOAD@GOTPAGE
Lloh15:
	ldr	x8, [x8, _PID_BLOCK_LOAD@GOTPAGEOFF]
Lloh16:
	ldr	w1, [x8]
	mov	w2, #0
	bl	_PIDFF_FIND_FIELDS
	ldr	x8, [x20, #8]
Lloh17:
	adrp	x9, _PID_EFFECT_BLOCK_INDEX@GOTPAGE
Lloh18:
	ldr	x9, [x9, _PID_EFFECT_BLOCK_INDEX@GOTPAGEOFF]
Lloh19:
	ldr	x9, [x9]
	ldr	w8, [x8, x9, lsl #2]
	cbz	w8, LBB0_8
; %bb.6:
Lloh20:
	adrp	x8, _effect_operation@GOTPAGE
Lloh21:
	ldr	x8, [x8, _effect_operation@GOTPAGEOFF]
Lloh22:
	ldr	w0, [x8]
Lloh23:
	adrp	x8, _PID_EFFECT_OPERATION@GOTPAGE
Lloh24:
	ldr	x8, [x8, _PID_EFFECT_OPERATION@GOTPAGEOFF]
Lloh25:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_9
; %bb.7:
	ldr	w0, [x20]
Lloh26:
	adrp	x1, l_.str.2@PAGE
Lloh27:
	add	x1, x1, l_.str.2@PAGEOFF
	b	LBB0_2
LBB0_8:
	ldr	w0, [x20]
Lloh28:
	adrp	x1, l_.str.1@PAGE
Lloh29:
	add	x1, x1, l_.str.1@PAGEOFF
	b	LBB0_2
LBB0_9:
Lloh30:
	adrp	x8, _block_free@GOTPAGE
Lloh31:
	ldr	x8, [x8, _block_free@GOTPAGEOFF]
Lloh32:
	ldr	w0, [x8]
Lloh33:
	adrp	x8, _PID_BLOCK_FREE@GOTPAGE
Lloh34:
	ldr	x8, [x8, _PID_BLOCK_FREE@GOTPAGEOFF]
Lloh35:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_11
; %bb.10:
	ldr	w0, [x20]
Lloh36:
	adrp	x1, l_.str.3@PAGE
Lloh37:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_2
LBB0_11:
Lloh38:
	adrp	x8, _set_envelope@GOTPAGE
Lloh39:
	ldr	x8, [x8, _set_envelope@GOTPAGEOFF]
Lloh40:
	ldr	w0, [x8]
Lloh41:
	adrp	x8, _PID_SET_ENVELOPE@GOTPAGE
Lloh42:
	ldr	x8, [x8, _PID_SET_ENVELOPE@GOTPAGEOFF]
Lloh43:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	mov	x21, x0
	mov	x0, x20
	bl	_pidff_find_special_fields
	cbnz	x0, LBB0_3
; %bb.12:
	mov	x0, x20
	mov	x1, x19
	bl	_pidff_find_effects
	cbnz	x0, LBB0_3
; %bb.13:
Lloh44:
	adrp	x24, _FF_CONSTANT@GOTPAGE
Lloh45:
	ldr	x24, [x24, _FF_CONSTANT@GOTPAGEOFF]
Lloh46:
	adrp	x23, _FF_RAMP@GOTPAGE
Lloh47:
	ldr	x23, [x23, _FF_RAMP@GOTPAGEOFF]
Lloh48:
	adrp	x22, _FF_PERIODIC@GOTPAGE
Lloh49:
	ldr	x22, [x22, _FF_PERIODIC@GOTPAGEOFF]
	cbz	x21, LBB0_20
; %bb.14:
	ldr	w0, [x24]
	ldr	w1, [x19]
	bl	_test_and_clear_bit
	cbz	x0, LBB0_16
; %bb.15:
	ldr	w0, [x20]
Lloh50:
	adrp	x1, l_.str.4@PAGE
Lloh51:
	add	x1, x1, l_.str.4@PAGEOFF
	bl	_hid_warn
LBB0_16:
	ldr	w0, [x23]
	ldr	w1, [x19]
	bl	_test_and_clear_bit
	cbz	x0, LBB0_18
; %bb.17:
	ldr	w0, [x20]
Lloh52:
	adrp	x1, l_.str.5@PAGE
Lloh53:
	add	x1, x1, l_.str.5@PAGEOFF
	bl	_hid_warn
LBB0_18:
	ldr	w0, [x22]
	ldr	w1, [x19]
	bl	_test_and_clear_bit
	cbz	x0, LBB0_20
; %bb.19:
	ldr	w0, [x20]
Lloh54:
	adrp	x1, l_.str.6@PAGE
Lloh55:
	add	x1, x1, l_.str.6@PAGEOFF
	bl	_hid_warn
LBB0_20:
	ldr	w0, [x24]
	ldr	w1, [x19]
	bl	_test_bit
	cbz	x0, LBB0_23
; %bb.21:
Lloh56:
	adrp	x8, _set_constant@GOTPAGE
Lloh57:
	ldr	x8, [x8, _set_constant@GOTPAGEOFF]
Lloh58:
	ldr	w0, [x8]
Lloh59:
	adrp	x8, _PID_SET_CONSTANT@GOTPAGE
Lloh60:
	ldr	x8, [x8, _PID_SET_CONSTANT@GOTPAGEOFF]
Lloh61:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_23
; %bb.22:
	ldr	w0, [x20]
Lloh62:
	adrp	x1, l_.str.7@PAGE
Lloh63:
	add	x1, x1, l_.str.7@PAGEOFF
	bl	_hid_warn
	ldr	w0, [x24]
	ldr	w1, [x19]
	bl	_clear_bit
LBB0_23:
	ldr	w0, [x23]
	ldr	w1, [x19]
	bl	_test_bit
	cbz	x0, LBB0_26
; %bb.24:
Lloh64:
	adrp	x8, _set_ramp@GOTPAGE
Lloh65:
	ldr	x8, [x8, _set_ramp@GOTPAGEOFF]
Lloh66:
	ldr	w0, [x8]
Lloh67:
	adrp	x8, _PID_SET_RAMP@GOTPAGE
Lloh68:
	ldr	x8, [x8, _PID_SET_RAMP@GOTPAGEOFF]
Lloh69:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_26
; %bb.25:
	ldr	w0, [x20]
Lloh70:
	adrp	x1, l_.str.8@PAGE
Lloh71:
	add	x1, x1, l_.str.8@PAGEOFF
	bl	_hid_warn
	ldr	w0, [x23]
	ldr	w1, [x19]
	bl	_clear_bit
LBB0_26:
Lloh72:
	adrp	x21, _FF_SPRING@GOTPAGE
Lloh73:
	ldr	x21, [x21, _FF_SPRING@GOTPAGEOFF]
	ldr	w0, [x21]
	ldr	w1, [x19]
	bl	_test_bit
	cbnz	x0, LBB0_30
; %bb.27:
Lloh74:
	adrp	x8, _FF_DAMPER@GOTPAGE
Lloh75:
	ldr	x8, [x8, _FF_DAMPER@GOTPAGEOFF]
Lloh76:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_test_bit
	cbnz	x0, LBB0_30
; %bb.28:
Lloh77:
	adrp	x8, _FF_FRICTION@GOTPAGE
Lloh78:
	ldr	x8, [x8, _FF_FRICTION@GOTPAGEOFF]
Lloh79:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_test_bit
	cbnz	x0, LBB0_30
; %bb.29:
Lloh80:
	adrp	x8, _FF_INERTIA@GOTPAGE
Lloh81:
	ldr	x8, [x8, _FF_INERTIA@GOTPAGEOFF]
Lloh82:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_test_bit
	cbz	x0, LBB0_32
LBB0_30:
Lloh83:
	adrp	x8, _set_condition@GOTPAGE
Lloh84:
	ldr	x8, [x8, _set_condition@GOTPAGEOFF]
Lloh85:
	ldr	w0, [x8]
Lloh86:
	adrp	x8, _PID_SET_CONDITION@GOTPAGE
Lloh87:
	ldr	x8, [x8, _PID_SET_CONDITION@GOTPAGEOFF]
Lloh88:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_32
; %bb.31:
	ldr	w0, [x20]
Lloh89:
	adrp	x1, l_.str.9@PAGE
Lloh90:
	add	x1, x1, l_.str.9@PAGEOFF
	bl	_hid_warn
	ldr	w0, [x21]
	ldr	w1, [x19]
	bl	_clear_bit
Lloh91:
	adrp	x8, _FF_DAMPER@GOTPAGE
Lloh92:
	ldr	x8, [x8, _FF_DAMPER@GOTPAGEOFF]
Lloh93:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_clear_bit
Lloh94:
	adrp	x8, _FF_FRICTION@GOTPAGE
Lloh95:
	ldr	x8, [x8, _FF_FRICTION@GOTPAGEOFF]
Lloh96:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_clear_bit
Lloh97:
	adrp	x8, _FF_INERTIA@GOTPAGE
Lloh98:
	ldr	x8, [x8, _FF_INERTIA@GOTPAGEOFF]
Lloh99:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_clear_bit
LBB0_32:
	ldr	w0, [x22]
	ldr	w1, [x19]
	bl	_test_bit
	cbz	x0, LBB0_35
; %bb.33:
Lloh100:
	adrp	x8, _set_periodic@GOTPAGE
Lloh101:
	ldr	x8, [x8, _set_periodic@GOTPAGEOFF]
Lloh102:
	ldr	w0, [x8]
Lloh103:
	adrp	x8, _PID_SET_PERIODIC@GOTPAGE
Lloh104:
	ldr	x8, [x8, _PID_SET_PERIODIC@GOTPAGEOFF]
Lloh105:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	cbz	x0, LBB0_35
; %bb.34:
	ldr	w0, [x20]
Lloh106:
	adrp	x1, l_.str.10@PAGE
Lloh107:
	add	x1, x1, l_.str.10@PAGEOFF
	bl	_hid_warn
	ldr	w0, [x22]
	ldr	w1, [x19]
	bl	_clear_bit
LBB0_35:
Lloh108:
	adrp	x8, _pool@GOTPAGE
Lloh109:
	ldr	x8, [x8, _pool@GOTPAGEOFF]
Lloh110:
	ldr	w0, [x8]
Lloh111:
	adrp	x8, _PID_POOL@GOTPAGE
Lloh112:
	ldr	x8, [x8, _PID_POOL@GOTPAGEOFF]
Lloh113:
	ldr	w1, [x8]
	mov	w2, #0
	bl	_PIDFF_FIND_FIELDS
Lloh114:
	adrp	x8, _device_gain@GOTPAGE
Lloh115:
	ldr	x8, [x8, _device_gain@GOTPAGEOFF]
Lloh116:
	ldr	w0, [x8]
Lloh117:
	adrp	x8, _PID_DEVICE_GAIN@GOTPAGE
Lloh118:
	ldr	x8, [x8, _PID_DEVICE_GAIN@GOTPAGEOFF]
Lloh119:
	ldr	w1, [x8]
	mov	w2, #1
	bl	_PIDFF_FIND_FIELDS
	mov	x8, x0
	mov	w0, #0
	cbnz	x8, LBB0_4
; %bb.36:
Lloh120:
	adrp	x8, _FF_GAIN@GOTPAGE
Lloh121:
	ldr	x8, [x8, _FF_GAIN@GOTPAGEOFF]
Lloh122:
	ldr	w0, [x8]
	ldr	w1, [x19]
	bl	_set_bit
	mov	w0, #0
	b	LBB0_4
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh25
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpAdd	Lloh26, Lloh27
	.loh AdrpAdd	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpAdd	Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGot	Lloh48, Lloh49
	.loh AdrpLdrGot	Lloh46, Lloh47
	.loh AdrpLdrGot	Lloh44, Lloh45
	.loh AdrpAdd	Lloh50, Lloh51
	.loh AdrpAdd	Lloh52, Lloh53
	.loh AdrpAdd	Lloh54, Lloh55
	.loh AdrpLdrGotLdr	Lloh59, Lloh60, Lloh61
	.loh AdrpLdrGotLdr	Lloh56, Lloh57, Lloh58
	.loh AdrpAdd	Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh69
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpAdd	Lloh70, Lloh71
	.loh AdrpLdrGot	Lloh72, Lloh73
	.loh AdrpLdrGotLdr	Lloh74, Lloh75, Lloh76
	.loh AdrpLdrGotLdr	Lloh77, Lloh78, Lloh79
	.loh AdrpLdrGotLdr	Lloh80, Lloh81, Lloh82
	.loh AdrpLdrGotLdr	Lloh86, Lloh87, Lloh88
	.loh AdrpLdrGotLdr	Lloh83, Lloh84, Lloh85
	.loh AdrpLdrGotLdr	Lloh97, Lloh98, Lloh99
	.loh AdrpLdrGotLdr	Lloh94, Lloh95, Lloh96
	.loh AdrpLdrGotLdr	Lloh91, Lloh92, Lloh93
	.loh AdrpAdd	Lloh89, Lloh90
	.loh AdrpLdrGotLdr	Lloh103, Lloh104, Lloh105
	.loh AdrpLdrGotLdr	Lloh100, Lloh101, Lloh102
	.loh AdrpAdd	Lloh106, Lloh107
	.loh AdrpLdrGotLdr	Lloh117, Lloh118, Lloh119
	.loh AdrpLdrGotLdr	Lloh114, Lloh115, Lloh116
	.loh AdrpLdrGotLdr	Lloh111, Lloh112, Lloh113
	.loh AdrpLdrGotLdr	Lloh108, Lloh109, Lloh110
	.loh AdrpLdrGotLdr	Lloh120, Lloh121, Lloh122
	.cfi_endproc
                                        ; -- End function
	.comm	_set_effect,4,2                 ; @set_effect
	.comm	_PID_SET_EFFECT,4,2             ; @PID_SET_EFFECT
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"unknown set_effect report layout\n"

	.comm	_ENODEV,4,2                     ; @ENODEV
	.comm	_block_load,4,2                 ; @block_load
	.comm	_PID_BLOCK_LOAD,4,2             ; @PID_BLOCK_LOAD
	.comm	_PID_EFFECT_BLOCK_INDEX,8,3     ; @PID_EFFECT_BLOCK_INDEX
l_.str.1:                               ; @.str.1
	.asciz	"unknown pid_block_load report layout\n"

	.comm	_effect_operation,4,2           ; @effect_operation
	.comm	_PID_EFFECT_OPERATION,4,2       ; @PID_EFFECT_OPERATION
l_.str.2:                               ; @.str.2
	.asciz	"unknown effect_operation report layout\n"

	.comm	_block_free,4,2                 ; @block_free
	.comm	_PID_BLOCK_FREE,4,2             ; @PID_BLOCK_FREE
l_.str.3:                               ; @.str.3
	.asciz	"unknown pid_block_free report layout\n"

	.comm	_set_envelope,4,2               ; @set_envelope
	.comm	_PID_SET_ENVELOPE,4,2           ; @PID_SET_ENVELOPE
	.comm	_FF_CONSTANT,4,2                ; @FF_CONSTANT
l_.str.4:                               ; @.str.4
	.asciz	"has constant effect but no envelope\n"

	.comm	_FF_RAMP,4,2                    ; @FF_RAMP
l_.str.5:                               ; @.str.5
	.asciz	"has ramp effect but no envelope\n"

	.comm	_FF_PERIODIC,4,2                ; @FF_PERIODIC
l_.str.6:                               ; @.str.6
	.asciz	"has periodic effect but no envelope\n"

	.comm	_set_constant,4,2               ; @set_constant
	.comm	_PID_SET_CONSTANT,4,2           ; @PID_SET_CONSTANT
l_.str.7:                               ; @.str.7
	.asciz	"unknown constant effect layout\n"

	.comm	_set_ramp,4,2                   ; @set_ramp
	.comm	_PID_SET_RAMP,4,2               ; @PID_SET_RAMP
l_.str.8:                               ; @.str.8
	.asciz	"unknown ramp effect layout\n"

	.comm	_FF_SPRING,4,2                  ; @FF_SPRING
	.comm	_FF_DAMPER,4,2                  ; @FF_DAMPER
	.comm	_FF_FRICTION,4,2                ; @FF_FRICTION
	.comm	_FF_INERTIA,4,2                 ; @FF_INERTIA
	.comm	_set_condition,4,2              ; @set_condition
	.comm	_PID_SET_CONDITION,4,2          ; @PID_SET_CONDITION
l_.str.9:                               ; @.str.9
	.asciz	"unknown condition effect layout\n"

	.comm	_set_periodic,4,2               ; @set_periodic
	.comm	_PID_SET_PERIODIC,4,2           ; @PID_SET_PERIODIC
l_.str.10:                              ; @.str.10
	.asciz	"unknown periodic effect layout\n"

	.comm	_pool,4,2                       ; @pool
	.comm	_PID_POOL,4,2                   ; @PID_POOL
	.comm	_device_gain,4,2                ; @device_gain
	.comm	_PID_DEVICE_GAIN,4,2            ; @PID_DEVICE_GAIN
	.comm	_FF_GAIN,4,2                    ; @FF_GAIN
	.no_dead_strip	_pidff_init_fields
.subsections_via_symbols
