	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function Vdp2Draw
LCPI0_0:
	.long	0x3b000000                      ## float 0.001953125
LCPI0_1:
	.long	0x3b800000                      ## float 0.00390625
LCPI0_2:
	.long	0x358637bd                      ## float 9.99999997E-7
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_Vdp2Draw:                              ## @Vdp2Draw
	.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
	subq	$104, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	_PVR_TA_PM2_USIZE_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$6, %eax
	shll	%cl, %eax
	movq	_PVR_TA_PM2_USIZE_MASK@GOTPCREL(%rip), %rcx
	movq	_PVR_TA_PM2_VSIZE_MASK@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	(%rcx), %edx
	notl	%edx
	movq	_pt_sprite_hdr@GOTPCREL(%rip), %rsi
	andl	(%rsi), %edx
	movl	%edi, %ebx
	movq	_PVR_TA_PM2_VSIZE_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	movl	$5, %edi
	shll	%cl, %edi
	orl	%eax, %edi
	orl	%edx, %edi
	movq	_cur_vdp2@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	shrl	$3, %eax
	andl	$2097151, %eax                  ## imm = 0x1FFFFF
	movq	_PVR_TXRFMT_NONTWIDDLED@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movl	%edi, (%rsi)
	movl	%eax, 4(%rsi)
	movq	_PVR_LIST_PT_POLY@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	movl	$4, %edx
	callq	_pvr_list_prim
	movq	_PVR_CMD_VERTEX_EOL@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -48(%rbp)
	xorps	%xmm0, %xmm0
	movups	%xmm0, -64(%rbp)
	movq	_priority_levels@GOTPCREL(%rip), %r15
	movq	(%r15), %rax
	movslq	%ebx, %rbx
	movss	(%rax,%rbx,4), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	movss	%xmm1, -136(%rbp)
	movq	_vdp2width@GOTPCREL(%rip), %r12
	movss	(%r12), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	movss	%xmm1, -132(%rbp)
	movss	(%rax,%rbx,4), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	movss	%xmm2, -128(%rbp)
	movss	%xmm1, -124(%rbp)
	movq	_vdp2height@GOTPCREL(%rip), %r13
	movss	(%r13), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	movss	%xmm1, -120(%rbp)
	movss	(%rax,%rbx,4), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	movss	%xmm2, -116(%rbp)
	movups	%xmm0, -80(%rbp)
	movss	%xmm1, -112(%rbp)
	xorps	%xmm0, %xmm0
	xorps	%xmm1, %xmm1
	callq	_PVR_PACK_16BIT_UV
	movq	%rax, -88(%rbp)
	movss	(%r12), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	mulss	LCPI0_0(%rip), %xmm0
	xorps	%xmm1, %xmm1
	callq	_PVR_PACK_16BIT_UV
	movss	LCPI0_0(%rip), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	mulss	(%r12), %xmm0
	movq	%rax, -96(%rbp)
	movss	(%r13), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	mulss	LCPI0_1(%rip), %xmm1
	callq	_PVR_PACK_16BIT_UV
	movq	%rax, -104(%rbp)
	movl	(%r14), %edi
	leaq	-144(%rbp), %rsi
	movl	$104, %edx
	callq	_pvr_list_prim
	movq	(%r15), %rax
	movss	(%rax,%rbx,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	addss	LCPI0_2(%rip), %xmm0
	movss	%xmm0, (%rax,%rbx,4)
	addq	$104, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_PVR_TA_PM2_USIZE_MASK,4,2      ## @PVR_TA_PM2_USIZE_MASK
	.comm	_PVR_TA_PM2_VSIZE_MASK,4,2      ## @PVR_TA_PM2_VSIZE_MASK
	.comm	_pt_sprite_hdr,104,3            ## @pt_sprite_hdr
	.comm	_PVR_TA_PM2_USIZE_SHIFT,4,2     ## @PVR_TA_PM2_USIZE_SHIFT
	.comm	_PVR_TA_PM2_VSIZE_SHIFT,4,2     ## @PVR_TA_PM2_VSIZE_SHIFT
	.comm	_cur_vdp2,4,2                   ## @cur_vdp2
	.comm	_PVR_TXRFMT_NONTWIDDLED,4,2     ## @PVR_TXRFMT_NONTWIDDLED
	.comm	_PVR_LIST_PT_POLY,4,2           ## @PVR_LIST_PT_POLY
	.comm	_PVR_CMD_VERTEX_EOL,4,2         ## @PVR_CMD_VERTEX_EOL
	.comm	_priority_levels,8,3            ## @priority_levels
	.comm	_vdp2width,4,2                  ## @vdp2width
	.comm	_vdp2height,4,2                 ## @vdp2height
	.no_dead_strip	_Vdp2Draw
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function Vdp2Draw
_Vdp2Draw:                              ; @Vdp2Draw
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #192
	.cfi_def_cfa_offset 192
	stp	d9, d8, [sp, #112]              ; 16-byte Folded Spill
	stp	x24, x23, [sp, #128]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #144]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #160]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #176]            ; 16-byte Folded Spill
	add	x29, sp, #176
	.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
	.cfi_offset b8, -72
	.cfi_offset b9, -80
	mov	x19, x0
Lloh0:
	adrp	x8, _PVR_TA_PM2_USIZE_MASK@GOTPAGE
Lloh1:
	ldr	x8, [x8, _PVR_TA_PM2_USIZE_MASK@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _PVR_TA_PM2_VSIZE_MASK@GOTPAGE
Lloh4:
	ldr	x9, [x9, _PVR_TA_PM2_VSIZE_MASK@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh6:
	adrp	x1, _pt_sprite_hdr@GOTPAGE
Lloh7:
	ldr	x1, [x1, _pt_sprite_hdr@GOTPAGEOFF]
	ldr	w9, [x1]
Lloh8:
	adrp	x10, _PVR_TA_PM2_USIZE_SHIFT@GOTPAGE
Lloh9:
	ldr	x10, [x10, _PVR_TA_PM2_USIZE_SHIFT@GOTPAGEOFF]
	bic	w8, w9, w8
Lloh10:
	ldr	w9, [x10]
	mov	w10, #6
	lsl	w9, w10, w9
Lloh11:
	adrp	x10, _PVR_TA_PM2_VSIZE_SHIFT@GOTPAGE
Lloh12:
	ldr	x10, [x10, _PVR_TA_PM2_VSIZE_SHIFT@GOTPAGEOFF]
Lloh13:
	ldr	w10, [x10]
	mov	w11, #5
	lsl	w10, w11, w10
	orr	w8, w9, w8
Lloh14:
	adrp	x9, _cur_vdp2@GOTPAGE
Lloh15:
	ldr	x9, [x9, _cur_vdp2@GOTPAGEOFF]
	orr	w8, w8, w10
Lloh16:
	ldr	w9, [x9]
	ubfx	w9, w9, #3, #21
Lloh17:
	adrp	x10, _PVR_TXRFMT_NONTWIDDLED@GOTPAGE
Lloh18:
	ldr	x10, [x10, _PVR_TXRFMT_NONTWIDDLED@GOTPAGEOFF]
Lloh19:
	ldr	w10, [x10]
	orr	w9, w9, w10
	stp	w8, w9, [x1]
Lloh20:
	adrp	x20, _PVR_LIST_PT_POLY@GOTPAGE
Lloh21:
	ldr	x20, [x20, _PVR_LIST_PT_POLY@GOTPAGEOFF]
	ldr	w0, [x20]
	mov	w2, #4
	bl	_pvr_list_prim
Lloh22:
	adrp	x8, _PVR_CMD_VERTEX_EOL@GOTPAGE
Lloh23:
	ldr	x8, [x8, _PVR_CMD_VERTEX_EOL@GOTPAGEOFF]
Lloh24:
	ldr	w8, [x8]
	str	w8, [sp, #104]
	stp	xzr, xzr, [sp, #88]
Lloh25:
	adrp	x21, _priority_levels@GOTPAGE
Lloh26:
	ldr	x21, [x21, _priority_levels@GOTPAGEOFF]
	ldr	x8, [x21]
	sbfiz	x19, x19, #2, #32
	ldr	s0, [x8, x19]
Lloh27:
	adrp	x22, _vdp2width@GOTPAGE
Lloh28:
	ldr	x22, [x22, _vdp2width@GOTPAGEOFF]
	ldr	s1, [x22]
	stp	s0, s1, [sp, #16]
	ldr	s0, [x8, x19]
	stp	s0, s1, [sp, #24]
Lloh29:
	adrp	x23, _vdp2height@GOTPAGE
Lloh30:
	ldr	x23, [x23, _vdp2height@GOTPAGEOFF]
	ldr	s0, [x23]
	str	s0, [sp, #32]
	ldr	s1, [x8, x19]
	stp	xzr, xzr, [sp, #72]
	stp	s1, s0, [sp, #36]
	movi	d0, #0000000000000000
	movi	d1, #0000000000000000
	bl	_PVR_PACK_16BIT_UV
	str	x0, [sp, #64]
	ldr	s0, [x22]
	movi.2s	v8, #59, lsl #24
	fmul	s0, s0, s8
	movi	d1, #0000000000000000
	bl	_PVR_PACK_16BIT_UV
	str	x0, [sp, #56]
	ldr	s0, [x22]
	fmul	s0, s0, s8
	ldr	s1, [x23]
	mov	w8, #998244352
	fmov	s2, w8
	fmul	s1, s1, s2
	bl	_PVR_PACK_16BIT_UV
	str	x0, [sp, #48]
	ldr	w0, [x20]
	add	x1, sp, #8
	mov	w2, #104
	bl	_pvr_list_prim
	ldr	x8, [x21]
	ldr	s0, [x8, x19]
	mov	w9, #14269
	movk	w9, #13702, lsl #16
	fmov	s1, w9
	fadd	s0, s0, s1
	str	s0, [x8, x19]
	ldp	x29, x30, [sp, #176]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #160]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #144]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #128]            ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #112]              ; 16-byte Folded Reload
	add	sp, sp, #192
	ret
	.loh AdrpLdrGot	Lloh29, Lloh30
	.loh AdrpLdrGot	Lloh27, Lloh28
	.loh AdrpLdrGot	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGot	Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_PVR_TA_PM2_USIZE_MASK,4,2      ; @PVR_TA_PM2_USIZE_MASK
	.comm	_PVR_TA_PM2_VSIZE_MASK,4,2      ; @PVR_TA_PM2_VSIZE_MASK
	.comm	_pt_sprite_hdr,104,3            ; @pt_sprite_hdr
	.comm	_PVR_TA_PM2_USIZE_SHIFT,4,2     ; @PVR_TA_PM2_USIZE_SHIFT
	.comm	_PVR_TA_PM2_VSIZE_SHIFT,4,2     ; @PVR_TA_PM2_VSIZE_SHIFT
	.comm	_cur_vdp2,4,2                   ; @cur_vdp2
	.comm	_PVR_TXRFMT_NONTWIDDLED,4,2     ; @PVR_TXRFMT_NONTWIDDLED
	.comm	_PVR_LIST_PT_POLY,4,2           ; @PVR_LIST_PT_POLY
	.comm	_PVR_CMD_VERTEX_EOL,4,2         ; @PVR_CMD_VERTEX_EOL
	.comm	_priority_levels,8,3            ; @priority_levels
	.comm	_vdp2width,4,2                  ; @vdp2width
	.comm	_vdp2height,4,2                 ; @vdp2height
	.no_dead_strip	_Vdp2Draw
.subsections_via_symbols
