	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function wiiu_gfx_free
LCPI0_0:
	.long	0x3f800000                      ## float 1
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_wiiu_gfx_free:                         ## @wiiu_gfx_free
	.cfi_startproc
## %bb.0:
	testq	%rdi, %rdi
	je	LBB0_1
## %bb.2:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	%rdi, %rbx
	leaq	28(%rdi), %r14
	movss	LCPI0_0(%rip), %xmm3            ## xmm3 = mem[0],zero,zero,zero
	xorps	%xmm0, %xmm0
	xorps	%xmm1, %xmm1
	xorps	%xmm2, %xmm2
	movq	%r14, %rdi
	callq	_GX2ClearColor
	movq	_GX2_SCAN_TARGET_DRC@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdi
	callq	_GX2CopyColorBufferToScanBuffer
	movq	_GX2_SCAN_TARGET_TV@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdi
	callq	_GX2CopyColorBufferToScanBuffer
	xorl	%eax, %eax
	callq	_GX2SwapScanBuffers
	xorl	%eax, %eax
	callq	_GX2Flush
	xorl	%eax, %eax
	callq	_GX2DrawDone
	xorl	%eax, %eax
	callq	_GX2WaitForVsync
	xorl	%eax, %eax
	callq	_GX2Shutdown
	movq	_GX2_DISABLE@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	callq	_GX2SetTVEnable
	movl	(%r14), %edi
	callq	_GX2SetDRCEnable
	movq	_frame_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_tex_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_sprite_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_ribbon_simple_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_ribbon_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_bokeh_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_snow_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_snow_simple_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	_snowflake_shader@GOTPCREL(%rip), %rdi
	callq	_GX2DestroyShader
	movq	%rbx, %rdi
	callq	_wiiu_free_shader_preset
	movl	68(%rbx), %edi
	callq	_MEM2_free
	movl	64(%rbx), %edi
	callq	_MEM2_free
	movl	60(%rbx), %edi
	callq	_MEM2_free
	movl	52(%rbx), %edi
	callq	_MEM2_free
	movl	56(%rbx), %edi
	callq	_MEM2_free
	movl	48(%rbx), %edi
	callq	_MEM2_free
	movl	44(%rbx), %edi
	callq	_MEM2_free
	movl	40(%rbx), %edi
	callq	_MEM2_free
	movl	36(%rbx), %edi
	callq	_MEM2_free
	movl	32(%rbx), %edi
	callq	_MEM2_free
	movl	28(%rbx), %edi
	callq	_MEM1_free
	movl	24(%rbx), %edi
	callq	_MEM1_free
	movl	20(%rbx), %edi
	callq	_MEM1_free
	movl	16(%rbx), %edi
	callq	_MEM1_free
	movl	12(%rbx), %edi
	callq	_MEM1_free
	movl	8(%rbx), %edi
	callq	_MEM1_free
	movl	4(%rbx), %edi
	callq	_MEMBucket_free
	movl	(%rbx), %edi
	callq	_MEMBucket_free
	movq	%rbx, %rdi
	popq	%rbx
	popq	%r14
	popq	%rbp
	jmp	_free                           ## TAILCALL
LBB0_1:
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_GX2_SCAN_TARGET_DRC,4,2        ## @GX2_SCAN_TARGET_DRC
	.comm	_GX2_SCAN_TARGET_TV,4,2         ## @GX2_SCAN_TARGET_TV
	.comm	_GX2_DISABLE,4,2                ## @GX2_DISABLE
	.comm	_frame_shader,4,2               ## @frame_shader
	.comm	_tex_shader,4,2                 ## @tex_shader
	.comm	_sprite_shader,4,2              ## @sprite_shader
	.comm	_ribbon_simple_shader,4,2       ## @ribbon_simple_shader
	.comm	_ribbon_shader,4,2              ## @ribbon_shader
	.comm	_bokeh_shader,4,2               ## @bokeh_shader
	.comm	_snow_shader,4,2                ## @snow_shader
	.comm	_snow_simple_shader,4,2         ## @snow_simple_shader
	.comm	_snowflake_shader,4,2           ## @snowflake_shader
	.no_dead_strip	_wiiu_gfx_free
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function wiiu_gfx_free
_wiiu_gfx_free:                         ; @wiiu_gfx_free
	.cfi_startproc
; %bb.0:
	cbz	x0, LBB0_2
; %bb.1:
	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
	add	x20, x0, #28
	movi	d0, #0000000000000000
	movi	d1, #0000000000000000
	movi	d2, #0000000000000000
	fmov	s3, #1.00000000
	mov	x0, x20
	bl	_GX2ClearColor
Lloh0:
	adrp	x8, _GX2_SCAN_TARGET_DRC@GOTPAGE
Lloh1:
	ldr	x8, [x8, _GX2_SCAN_TARGET_DRC@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
	mov	x0, x20
	bl	_GX2CopyColorBufferToScanBuffer
Lloh3:
	adrp	x8, _GX2_SCAN_TARGET_TV@GOTPAGE
Lloh4:
	ldr	x8, [x8, _GX2_SCAN_TARGET_TV@GOTPAGEOFF]
Lloh5:
	ldr	w1, [x8]
	mov	x0, x20
	bl	_GX2CopyColorBufferToScanBuffer
	bl	_GX2SwapScanBuffers
	bl	_GX2Flush
	bl	_GX2DrawDone
	bl	_GX2WaitForVsync
	bl	_GX2Shutdown
Lloh6:
	adrp	x20, _GX2_DISABLE@GOTPAGE
Lloh7:
	ldr	x20, [x20, _GX2_DISABLE@GOTPAGEOFF]
	ldr	w0, [x20]
	bl	_GX2SetTVEnable
	ldr	w0, [x20]
	bl	_GX2SetDRCEnable
Lloh8:
	adrp	x0, _frame_shader@GOTPAGE
Lloh9:
	ldr	x0, [x0, _frame_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh10:
	adrp	x0, _tex_shader@GOTPAGE
Lloh11:
	ldr	x0, [x0, _tex_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh12:
	adrp	x0, _sprite_shader@GOTPAGE
Lloh13:
	ldr	x0, [x0, _sprite_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh14:
	adrp	x0, _ribbon_simple_shader@GOTPAGE
Lloh15:
	ldr	x0, [x0, _ribbon_simple_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh16:
	adrp	x0, _ribbon_shader@GOTPAGE
Lloh17:
	ldr	x0, [x0, _ribbon_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh18:
	adrp	x0, _bokeh_shader@GOTPAGE
Lloh19:
	ldr	x0, [x0, _bokeh_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh20:
	adrp	x0, _snow_shader@GOTPAGE
Lloh21:
	ldr	x0, [x0, _snow_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh22:
	adrp	x0, _snow_simple_shader@GOTPAGE
Lloh23:
	ldr	x0, [x0, _snow_simple_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
Lloh24:
	adrp	x0, _snowflake_shader@GOTPAGE
Lloh25:
	ldr	x0, [x0, _snowflake_shader@GOTPAGEOFF]
	bl	_GX2DestroyShader
	mov	x0, x19
	bl	_wiiu_free_shader_preset
	ldr	w0, [x19, #68]
	bl	_MEM2_free
	ldr	w0, [x19, #64]
	bl	_MEM2_free
	ldr	w0, [x19, #60]
	bl	_MEM2_free
	ldr	w0, [x19, #52]
	bl	_MEM2_free
	ldr	w0, [x19, #56]
	bl	_MEM2_free
	ldr	w0, [x19, #48]
	bl	_MEM2_free
	ldr	w0, [x19, #44]
	bl	_MEM2_free
	ldr	w0, [x19, #40]
	bl	_MEM2_free
	ldr	w0, [x19, #36]
	bl	_MEM2_free
	ldr	w0, [x19, #32]
	bl	_MEM2_free
	ldr	w0, [x19, #28]
	bl	_MEM1_free
	ldr	w0, [x19, #24]
	bl	_MEM1_free
	ldr	w0, [x19, #20]
	bl	_MEM1_free
	ldr	w0, [x19, #16]
	bl	_MEM1_free
	ldr	w0, [x19, #12]
	bl	_MEM1_free
	ldr	w0, [x19, #8]
	bl	_MEM1_free
	ldr	w0, [x19, #4]
	bl	_MEMBucket_free
	ldr	w0, [x19]
	bl	_MEMBucket_free
	mov	x0, x19
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	b	_free
LBB0_2:
	.cfi_def_cfa wsp, 0
	.cfi_same_value w30
	.cfi_same_value w29
	.cfi_same_value w19
	.cfi_same_value w20
	ret
	.loh AdrpLdrGot	Lloh24, Lloh25
	.loh AdrpLdrGot	Lloh22, Lloh23
	.loh AdrpLdrGot	Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh18, Lloh19
	.loh AdrpLdrGot	Lloh16, Lloh17
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_GX2_SCAN_TARGET_DRC,4,2        ; @GX2_SCAN_TARGET_DRC
	.comm	_GX2_SCAN_TARGET_TV,4,2         ; @GX2_SCAN_TARGET_TV
	.comm	_GX2_DISABLE,4,2                ; @GX2_DISABLE
	.comm	_frame_shader,4,2               ; @frame_shader
	.comm	_tex_shader,4,2                 ; @tex_shader
	.comm	_sprite_shader,4,2              ; @sprite_shader
	.comm	_ribbon_simple_shader,4,2       ; @ribbon_simple_shader
	.comm	_ribbon_shader,4,2              ; @ribbon_shader
	.comm	_bokeh_shader,4,2               ; @bokeh_shader
	.comm	_snow_shader,4,2                ; @snow_shader
	.comm	_snow_simple_shader,4,2         ; @snow_simple_shader
	.comm	_snowflake_shader,4,2           ; @snowflake_shader
	.no_dead_strip	_wiiu_gfx_free
.subsections_via_symbols
