	.file	"extr_arb_program_shader.c_gen_nv12_read.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"PARAM nv12_coef = "
.LC1:
	.string	";\n"
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC2:
	.string	"MOV texcrd, fragment.texcoord[0];\n"
	.align 8
.LC3:
	.string	"MUL texcrd.x, texcrd.x, coef.y;\n"
	.section	.rodata.str1.1
.LC4:
	.string	"RCP chroma.w, size.x;\n"
.LC5:
	.string	"RCP chroma.z, size.y;\n"
	.section	.rodata.str1.8
	.align 8
.LC6:
	.string	"MAD texcrd.y, texcrd.y, nv12_coef.y, nv12_coef.x;\n"
	.align 8
.LC7:
	.string	"MUL texcrd.x, texcrd.x, size.x;\n"
	.section	.rodata.str1.1
.LC8:
	.string	"FLR texcrd.x, texcrd.x;\n"
	.section	.rodata.str1.8
	.align 8
.LC9:
	.string	"MAD texcrd.x, texcrd.x, coef.z, coef.y;\n"
	.align 8
.LC10:
	.string	"MUL texcrd.x, texcrd.x, chroma.w;\n"
	.align 8
.LC11:
	.string	"MAD temp.y, coef.y, chroma.z, nv12_coef.x;\n"
	.align 8
.LC12:
	.string	"MAX texcrd.y, temp.y, texcrd.y;\n"
	.align 8
.LC13:
	.string	"MAD temp.y, -coef.y, chroma.z, nv12_coef.z;\n"
	.align 8
.LC14:
	.string	"MIN texcrd.y, temp.y, texcrd.y;\n"
	.align 8
.LC15:
	.string	"MAD texcrd.y, texcrd.y, coef.y, size.y;\n"
	.align 8
.LC16:
	.string	"MAD temp.y, size.y, coef.y, size.y;\n"
	.section	.rodata.str1.1
.LC17:
	.string	"ADD temp.y, temp.y, -coef.y;\n"
.LC18:
	.string	"ADD temp.y, size.y, coef.y;\n"
	.section	.rodata.str1.8
	.align 8
.LC19:
	.string	"TEX temp, texcrd, texture[0], %s;\n"
	.section	.rodata.str1.1
.LC20:
	.string	"MOV chroma.y, temp.w;\n"
	.section	.rodata.str1.8
	.align 8
.LC21:
	.string	"ADD texcrd.x, texcrd.x, chroma.w;\n"
	.align 8
.LC22:
	.string	"ADD texcrd.x, texcrd.x, coef.x;\n"
	.section	.rodata.str1.1
.LC23:
	.string	"MOV chroma.x, temp.w;\n"
	.section	.rodata.str1.8
	.align 8
.LC24:
	.string	"MUL texcrd.y, texcrd.y, nv12_coef.x;\n"
	.align 8
.LC25:
	.string	"MAD temp.y, -coef.y, chroma.w, nv12_coef.x;\n"
	.align 8
.LC26:
	.string	"TEX luminance, texcrd, texture[0], %s;\n"
	.section	.rodata.str1.1
.LC27:
	.string	"ADD temp.x, size.y, -coef.y;\n"
	.section	.rodata.str1.8
	.align 8
.LC28:
	.string	"MIN texcrd.y, texcrd.y, size.x;\n"
	.text
	.p2align 4
	.type	gen_nv12_read, @function
gen_nv12_read:
.LFB0:
	.cfi_startproc
	endbr64
	push	r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	mov	r13, rdx
	push	r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	push	rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	mov	rbp, rdi
	push	rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	mov	rbx, rsi
	sub	rsp, 8
	.cfi_def_cfa_offset 48
	mov	rdi, QWORD PTR [rsi]
	call	arbfp_texture_target@PLT
	lea	rsi, .LC0[rip]
	mov	rdi, rbp
	mov	r12, rax
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, nv12_coef.1936[rip]
	mov	rdi, rbp
	call	shader_arb_append_imm_vec4@PLT
	lea	rsi, .LC1[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC2[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC3[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	mov	rax, QWORD PTR WINED3D_GL_RES_TYPE_TEX_2D[rip]
	cmp	QWORD PTR [rbx], rax
	je	.L11
	lea	rsi, .LC15[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC8[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC9[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC16[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC17[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC14[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC18[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC12[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
.L3:
	mov	rdx, r12
	lea	rsi, .LC19[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC20[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	mov	rax, QWORD PTR WINED3D_GL_RES_TYPE_TEX_2D[rip]
	cmp	QWORD PTR [rbx], rax
	je	.L12
	lea	rsi, .LC22[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
.L5:
	mov	rdx, r12
	lea	rsi, .LC19[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC23[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC2[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	mov	rax, QWORD PTR WINED3D_GL_RES_TYPE_TEX_2D[rip]
	cmp	QWORD PTR [rbx], rax
	je	.L13
	lea	rsi, .LC27[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC28[rip]
.L9:
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdx, r12
	mov	rdi, rbp
	xor	eax, eax
	lea	rsi, .LC26[rip]
	call	shader_addline@PLT
	mov	BYTE PTR 0[r13], 97
	mov	eax, DWORD PTR TRUE[rip]
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	pop	rbx
	.cfi_def_cfa_offset 32
	pop	rbp
	.cfi_def_cfa_offset 24
	pop	r12
	.cfi_def_cfa_offset 16
	pop	r13
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L11:
	.cfi_restore_state
	mov	rdi, rbp
	lea	rsi, .LC4[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC5[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC6[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC7[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC8[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC9[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC10[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC11[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC12[rip]
	xor	eax, eax
	call	shader_addline@PLT
	mov	rdi, rbp
	lea	rsi, .LC13[rip]
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC14[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	jmp	.L3
	.p2align 4,,10
	.p2align 3
.L13:
	lea	rsi, .LC24[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC25[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	lea	rsi, .LC14[rip]
	jmp	.L9
	.p2align 4,,10
	.p2align 3
.L12:
	lea	rsi, .LC21[rip]
	mov	rdi, rbp
	xor	eax, eax
	call	shader_addline@PLT
	jmp	.L5
	.cfi_endproc
.LFE0:
	.size	gen_nv12_read, .-gen_nv12_read
	.section	.rodata
	.align 16
	.type	nv12_coef.1936, @object
	.size	nv12_coef.1936, 16
nv12_coef.1936:
	.long	1059760811
	.long	1051372203
	.long	1065353216
	.long	1065353216
	.comm	WINED3D_GL_RES_TYPE_TEX_2D,8,8
	.comm	TRUE,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_arb_program_shader.c_gen_nv12_read.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"PARAM nv12_coef = \000"
	.align	2
.LC1:
	.ascii	";\012\000"
	.align	2
.LC2:
	.ascii	"MOV texcrd, fragment.texcoord[0];\012\000"
	.align	2
.LC3:
	.ascii	"MUL texcrd.x, texcrd.x, coef.y;\012\000"
	.align	2
.LC4:
	.ascii	"RCP chroma.w, size.x;\012\000"
	.align	2
.LC5:
	.ascii	"RCP chroma.z, size.y;\012\000"
	.align	2
.LC6:
	.ascii	"MAD texcrd.y, texcrd.y, nv12_coef.y, nv12_coef.x;\012"
	.ascii	"\000"
	.align	2
.LC7:
	.ascii	"MUL texcrd.x, texcrd.x, size.x;\012\000"
	.align	2
.LC8:
	.ascii	"FLR texcrd.x, texcrd.x;\012\000"
	.align	2
.LC9:
	.ascii	"MAD texcrd.x, texcrd.x, coef.z, coef.y;\012\000"
	.align	2
.LC10:
	.ascii	"MUL texcrd.x, texcrd.x, chroma.w;\012\000"
	.align	2
.LC11:
	.ascii	"MAD temp.y, coef.y, chroma.z, nv12_coef.x;\012\000"
	.align	2
.LC12:
	.ascii	"MAX texcrd.y, temp.y, texcrd.y;\012\000"
	.align	2
.LC13:
	.ascii	"MAD temp.y, -coef.y, chroma.z, nv12_coef.z;\012\000"
	.align	2
.LC14:
	.ascii	"MIN texcrd.y, temp.y, texcrd.y;\012\000"
	.align	2
.LC15:
	.ascii	"MAD texcrd.y, texcrd.y, coef.y, size.y;\012\000"
	.align	2
.LC16:
	.ascii	"MAD temp.y, size.y, coef.y, size.y;\012\000"
	.align	2
.LC17:
	.ascii	"ADD temp.y, temp.y, -coef.y;\012\000"
	.align	2
.LC18:
	.ascii	"ADD temp.y, size.y, coef.y;\012\000"
	.align	2
.LC19:
	.ascii	"TEX temp, texcrd, texture[0], %s;\012\000"
	.align	2
.LC20:
	.ascii	"MOV chroma.y, temp.w;\012\000"
	.align	2
.LC21:
	.ascii	"ADD texcrd.x, texcrd.x, chroma.w;\012\000"
	.align	2
.LC22:
	.ascii	"ADD texcrd.x, texcrd.x, coef.x;\012\000"
	.align	2
.LC23:
	.ascii	"MOV chroma.x, temp.w;\012\000"
	.align	2
.LC24:
	.ascii	"MUL texcrd.y, texcrd.y, nv12_coef.x;\012\000"
	.align	2
.LC25:
	.ascii	"MAD temp.y, -coef.y, chroma.w, nv12_coef.x;\012\000"
	.align	2
.LC26:
	.ascii	"TEX luminance, texcrd, texture[0], %s;\012\000"
	.align	2
.LC27:
	.ascii	"ADD temp.x, size.y, -coef.y;\012\000"
	.align	2
.LC28:
	.ascii	"MIN texcrd.y, texcrd.y, size.x;\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	gen_nv12_read, %function
gen_nv12_read:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, lr}
	mov	r4, r0
	ldr	r0, [r1]
	mov	r7, r2
	mov	r5, r1
	bl	arbfp_texture_target
	ldr	r1, .L13
	mov	r6, r0
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+4
	mov	r0, r4
	bl	shader_arb_append_imm_vec4
	ldr	r1, .L13+8
	mov	r0, r4
	bl	shader_addline
	ldr	r8, .L13+12
	ldr	r1, .L13+16
	mov	r0, r4
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+20
	bl	shader_addline
	ldr	r2, [r5]
	ldr	r3, [r8]
	cmp	r2, r3
	beq	.L11
	ldr	r1, .L13+24
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+28
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+32
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+36
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+40
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+44
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+48
	mov	r0, r4
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+52
	bl	shader_addline
.L3:
	mov	r2, r6
	ldr	r1, .L13+56
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+60
	mov	r0, r4
	bl	shader_addline
	ldr	r3, [r8]
	ldr	r2, [r5]
	mov	r0, r4
	cmp	r2, r3
	ldreq	r1, .L13+64
	ldrne	r1, .L13+68
	bl	shader_addline
	mov	r2, r6
	ldr	r1, .L13+56
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+72
	mov	r0, r4
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+16
	bl	shader_addline
	ldr	r2, [r5]
	ldr	r3, [r8]
	cmp	r2, r3
	beq	.L12
	ldr	r1, .L13+76
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+80
.L9:
	mov	r0, r4
	bl	shader_addline
	mov	r2, r6
	mov	r0, r4
	ldr	r1, .L13+84
	bl	shader_addline
	mov	r2, #97
	ldr	r3, .L13+88
	strb	r2, [r7]
	ldr	r0, [r3]
	pop	{r4, r5, r6, r7, r8, pc}
.L11:
	mov	r0, r4
	ldr	r1, .L13+92
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+96
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+100
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+104
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+28
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+32
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+108
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+112
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+52
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+116
	bl	shader_addline
	mov	r0, r4
	ldr	r1, .L13+44
	bl	shader_addline
	b	.L3
.L12:
	ldr	r1, .L13+120
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+124
	mov	r0, r4
	bl	shader_addline
	ldr	r1, .L13+44
	b	.L9
.L14:
	.align	2
.L13:
	.word	.LC0
	.word	.LANCHOR0
	.word	.LC1
	.word	WINED3D_GL_RES_TYPE_TEX_2D
	.word	.LC2
	.word	.LC3
	.word	.LC15
	.word	.LC8
	.word	.LC9
	.word	.LC16
	.word	.LC17
	.word	.LC14
	.word	.LC18
	.word	.LC12
	.word	.LC19
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.word	.LC27
	.word	.LC28
	.word	.LC26
	.word	TRUE
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC10
	.word	.LC11
	.word	.LC13
	.word	.LC24
	.word	.LC25
	.size	gen_nv12_read, .-gen_nv12_read
	.comm	WINED3D_GL_RES_TYPE_TEX_2D,4,4
	.comm	TRUE,4,4
	.section	.rodata
	.align	2
	.set	.LANCHOR0,. + 0
	.type	nv12_coef.4220, %object
	.size	nv12_coef.4220, 16
nv12_coef.4220:
	.word	1059760811
	.word	1051372203
	.word	1065353216
	.word	1065353216
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
