	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function __intel_vgpu_release
___intel_vgpu_release:                  ## @__intel_vgpu_release
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -24
	movq	%rdi, %rbx
	movq	(%rdi), %rdi
	callq	_handle_valid
	testl	%eax, %eax
	je	LBB0_3
## %bb.1:
	leaq	28(%rbx), %rdi
	xorl	%esi, %esi
	movl	$1, %edx
	callq	_atomic_cmpxchg
	testq	%rax, %rax
	jne	LBB0_3
## %bb.2:
	movq	_intel_gvt_ops@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rbx, %rdi
	callq	*(%rax)
	movl	20(%rbx), %edi
	callq	_mdev_dev
	movq	_VFIO_IOMMU_NOTIFY@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	leaq	24(%rbx), %rdx
	movl	%eax, %edi
	callq	_vfio_unregister_notifier
	leaq	L_.str(%rip), %rsi
	movl	%eax, %edi
	movl	%eax, %edx
	callq	_WARN
	movl	20(%rbx), %edi
	callq	_mdev_dev
	movq	_VFIO_GROUP_NOTIFY@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	leaq	16(%rbx), %rdx
	movl	%eax, %edi
	callq	_vfio_unregister_notifier
	leaq	L_.str.1(%rip), %rsi
	movl	%eax, %edi
	movl	%eax, %edx
	callq	_WARN
	movq	_THIS_MODULE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_module_put
	movq	(%rbx), %rdi
	callq	_kvmgt_guest_exit
	movq	%rbx, %rdi
	callq	_intel_vgpu_release_msi_eventfd_ctx
	xorps	%xmm0, %xmm0
	movups	%xmm0, (%rbx)
LBB0_3:
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_intel_gvt_ops,8,3              ## @intel_gvt_ops
	.comm	_VFIO_IOMMU_NOTIFY,4,2          ## @VFIO_IOMMU_NOTIFY
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"vfio_unregister_notifier for iommu failed: %d\n"

	.comm	_VFIO_GROUP_NOTIFY,4,2          ## @VFIO_GROUP_NOTIFY
L_.str.1:                               ## @.str.1
	.asciz	"vfio_unregister_notifier for group failed: %d\n"

	.comm	_THIS_MODULE,4,2                ## @THIS_MODULE
	.no_dead_strip	___intel_vgpu_release
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function __intel_vgpu_release
___intel_vgpu_release:                  ; @__intel_vgpu_release
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	mov	x19, x0
	ldr	x0, [x0]
	bl	_handle_valid
	cbz	w0, LBB0_3
; %bb.1:
	add	x0, x19, #28
	mov	w1, #0
	mov	w2, #1
	bl	_atomic_cmpxchg
	cbnz	x0, LBB0_3
; %bb.2:
Lloh0:
	adrp	x8, _intel_gvt_ops@GOTPAGE
Lloh1:
	ldr	x8, [x8, _intel_gvt_ops@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	ldr	x8, [x8]
	mov	x0, x19
	blr	x8
	ldr	w0, [x19, #20]
	bl	_mdev_dev
Lloh3:
	adrp	x8, _VFIO_IOMMU_NOTIFY@GOTPAGE
Lloh4:
	ldr	x8, [x8, _VFIO_IOMMU_NOTIFY@GOTPAGEOFF]
Lloh5:
	ldr	w1, [x8]
	add	x2, x19, #24
	bl	_vfio_unregister_notifier
Lloh6:
	adrp	x1, l_.str@PAGE
Lloh7:
	add	x1, x1, l_.str@PAGEOFF
	mov	x2, x0
	bl	_WARN
	ldr	w0, [x19, #20]
	bl	_mdev_dev
Lloh8:
	adrp	x8, _VFIO_GROUP_NOTIFY@GOTPAGE
Lloh9:
	ldr	x8, [x8, _VFIO_GROUP_NOTIFY@GOTPAGEOFF]
Lloh10:
	ldr	w1, [x8]
	add	x2, x19, #16
	bl	_vfio_unregister_notifier
Lloh11:
	adrp	x1, l_.str.1@PAGE
Lloh12:
	add	x1, x1, l_.str.1@PAGEOFF
	mov	x2, x0
	bl	_WARN
Lloh13:
	adrp	x8, _THIS_MODULE@GOTPAGE
Lloh14:
	ldr	x8, [x8, _THIS_MODULE@GOTPAGEOFF]
Lloh15:
	ldr	w0, [x8]
	bl	_module_put
	ldr	x0, [x19]
	bl	_kvmgt_guest_exit
	mov	x0, x19
	bl	_intel_vgpu_release_msi_eventfd_ctx
	stp	xzr, xzr, [x19]
LBB0_3:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpAdd	Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_intel_gvt_ops,8,3              ; @intel_gvt_ops
	.comm	_VFIO_IOMMU_NOTIFY,4,2          ; @VFIO_IOMMU_NOTIFY
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"vfio_unregister_notifier for iommu failed: %d\n"

	.comm	_VFIO_GROUP_NOTIFY,4,2          ; @VFIO_GROUP_NOTIFY
l_.str.1:                               ; @.str.1
	.asciz	"vfio_unregister_notifier for group failed: %d\n"

	.comm	_THIS_MODULE,4,2                ; @THIS_MODULE
	.no_dead_strip	___intel_vgpu_release
.subsections_via_symbols
