	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function transform_texcoords
_transform_texcoords:                   ## @transform_texcoords
	.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	$88, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	(%rdi), %eax
	addl	$-128, %eax
	cmpl	$3, %eax
	ja	LBB0_50
## %bb.1:
	movq	%rdx, %r14
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_2:
	testq	%rsi, %rsi
	je	LBB0_49
## %bb.3:
	movq	8(%rdi), %rax
	movdqu	(%rax), %xmm8
	movdqu	16(%rax), %xmm1
	movdqu	32(%rax), %xmm2
	movdqu	48(%rax), %xmm3
	cmpq	$4, %rsi
	jae	LBB0_5
## %bb.4:
	xorl	%edx, %edx
LBB0_16:
	subq	%rdx, %rsi
	shlq	$4, %rdx
	addq	%rdx, %r14
	.p2align	4, 0x90
LBB0_17:                                ## =>This Inner Loop Header: Depth=1
	movd	(%r14), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	pmulld	%xmm8, %xmm0
	movd	4(%r14), %xmm4                  ## xmm4 = mem[0],zero,zero,zero
	pshufd	$0, %xmm4, %xmm4                ## xmm4 = xmm4[0,0,0,0]
	pmulld	%xmm1, %xmm4
	paddd	%xmm0, %xmm4
	movd	8(%r14), %xmm0                  ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	pmulld	%xmm2, %xmm0
	movd	12(%r14), %xmm5                 ## xmm5 = mem[0],zero,zero,zero
	pshufd	$0, %xmm5, %xmm5                ## xmm5 = xmm5[0,0,0,0]
	pmulld	%xmm3, %xmm5
	paddd	%xmm0, %xmm5
	paddd	%xmm4, %xmm5
	movdqu	%xmm5, (%r14)
	addq	$16, %r14
	decq	%rsi
	jne	LBB0_17
	jmp	LBB0_49
LBB0_50:
	leaq	L_.str(%rip), %rsi
	xorl	%edi, %edi
	addq	$88, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_gl_problem                     ## TAILCALL
LBB0_32:
	testq	%rsi, %rsi
	je	LBB0_49
## %bb.33:
	movq	8(%rdi), %rax
	movl	(%rax), %edi
	movl	4(%rax), %r10d
	movl	8(%rax), %ebx
	movl	16(%rax), %r12d
	movl	20(%rax), %r8d
	movl	24(%rax), %ecx
	movl	%ecx, -192(%rbp)                ## 4-byte Spill
	movl	32(%rax), %r9d
	movl	36(%rax), %r15d
	movl	40(%rax), %ecx
	movl	48(%rax), %edx
	movl	%edx, -80(%rbp)                 ## 4-byte Spill
	movl	52(%rax), %edx
	movl	%edx, -144(%rbp)                ## 4-byte Spill
	movl	56(%rax), %eax
	movl	%eax, -64(%rbp)                 ## 4-byte Spill
	cmpq	$4, %rsi
	movl	%r8d, -176(%rbp)                ## 4-byte Spill
	movl	%r12d, -160(%rbp)               ## 4-byte Spill
	movl	%r15d, -128(%rbp)               ## 4-byte Spill
	movl	%r9d, -112(%rbp)                ## 4-byte Spill
	jae	LBB0_35
## %bb.34:
	xorl	%r13d, %r13d
	movl	-80(%rbp), %r12d                ## 4-byte Reload
	movl	-64(%rbp), %edx                 ## 4-byte Reload
	jmp	LBB0_47
LBB0_18:
	testq	%rsi, %rsi
	je	LBB0_49
## %bb.19:
	movq	8(%rdi), %rax
	movl	(%rax), %r8d
	movl	4(%rax), %r9d
	movl	16(%rax), %r10d
	movl	20(%rax), %r11d
	movl	48(%rax), %r13d
	movl	52(%rax), %r15d
	cmpq	$4, %rsi
	jae	LBB0_21
## %bb.20:
	xorl	%edx, %edx
LBB0_30:
	subq	%rdx, %rsi
	shlq	$4, %rdx
	addq	%rdx, %r14
	.p2align	4, 0x90
LBB0_31:                                ## =>This Inner Loop Header: Depth=1
	movl	(%r14), %edi
	movl	4(%r14), %ebx
	movl	12(%r14), %edx
	movl	%edi, %eax
	imull	%r8d, %eax
	movl	%ebx, %ecx
	imull	%r10d, %ecx
	addl	%eax, %ecx
	movl	%edx, %eax
	imull	%r13d, %eax
	addl	%ecx, %eax
	movl	%eax, (%r14)
	imull	%r9d, %edi
	imull	%r11d, %ebx
	addl	%edi, %ebx
	imull	%r15d, %edx
	addl	%ebx, %edx
	movl	%edx, 4(%r14)
	addq	$16, %r14
	decq	%rsi
	jne	LBB0_31
	jmp	LBB0_49
LBB0_5:
	leaq	-1(%rsi), %rax
	leaq	12(%r14), %rdi
	movl	$16, %ecx
	mulq	%rcx
	seto	%cl
	leaq	(%r14,%rax), %rbx
	addq	$12, %rbx
	xorl	%edx, %edx
	cmpq	%rdi, %rbx
	jb	LBB0_16
## %bb.6:
	testb	%cl, %cl
	jne	LBB0_16
## %bb.7:
	leaq	8(%r14), %rdi
	leaq	(%r14,%rax), %rbx
	addq	$8, %rbx
	cmpq	%rdi, %rbx
	jb	LBB0_16
## %bb.8:
	testb	%cl, %cl
	jne	LBB0_16
## %bb.9:
	leaq	4(%r14), %rdi
	leaq	(%r14,%rax), %rbx
	addq	$4, %rbx
	cmpq	%rdi, %rbx
	jb	LBB0_16
## %bb.10:
	testb	%cl, %cl
	jne	LBB0_16
## %bb.11:
	addq	%r14, %rax
	cmpq	%r14, %rax
	jb	LBB0_16
## %bb.12:
	testb	%cl, %cl
	jne	LBB0_16
## %bb.13:
	movq	%rsi, %rdx
	andq	$-4, %rdx
	pshufd	$0, %xmm8, %xmm0                ## xmm0 = xmm8[0,0,0,0]
	movdqa	%xmm0, -192(%rbp)               ## 16-byte Spill
	pshufd	$0, %xmm1, %xmm0                ## xmm0 = xmm1[0,0,0,0]
	movdqa	%xmm0, -176(%rbp)               ## 16-byte Spill
	pshufd	$0, %xmm2, %xmm0                ## xmm0 = xmm2[0,0,0,0]
	movdqa	%xmm0, -160(%rbp)               ## 16-byte Spill
	pshufd	$0, %xmm3, %xmm0                ## xmm0 = xmm3[0,0,0,0]
	movdqa	%xmm0, -144(%rbp)               ## 16-byte Spill
	pshufd	$85, %xmm8, %xmm0               ## xmm0 = xmm8[1,1,1,1]
	movdqa	%xmm0, -128(%rbp)               ## 16-byte Spill
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	movdqa	%xmm0, -112(%rbp)               ## 16-byte Spill
	pshufd	$85, %xmm2, %xmm0               ## xmm0 = xmm2[1,1,1,1]
	movdqa	%xmm0, -96(%rbp)                ## 16-byte Spill
	pshufd	$85, %xmm3, %xmm0               ## xmm0 = xmm3[1,1,1,1]
	movdqa	%xmm0, -224(%rbp)               ## 16-byte Spill
	pshufd	$170, %xmm8, %xmm0              ## xmm0 = xmm8[2,2,2,2]
	movdqa	%xmm0, -208(%rbp)               ## 16-byte Spill
	pshufd	$170, %xmm1, %xmm0              ## xmm0 = xmm1[2,2,2,2]
	movdqa	%xmm0, -80(%rbp)                ## 16-byte Spill
	pshufd	$170, %xmm2, %xmm0              ## xmm0 = xmm2[2,2,2,2]
	movdqa	%xmm0, -64(%rbp)                ## 16-byte Spill
	pshufd	$170, %xmm3, %xmm0              ## xmm0 = xmm3[2,2,2,2]
	movdqa	%xmm0, -256(%rbp)               ## 16-byte Spill
	pshufd	$255, %xmm8, %xmm0              ## xmm0 = xmm8[3,3,3,3]
	movdqa	%xmm0, -240(%rbp)               ## 16-byte Spill
	pshufd	$255, %xmm1, %xmm9              ## xmm9 = xmm1[3,3,3,3]
	pshufd	$255, %xmm2, %xmm10             ## xmm10 = xmm2[3,3,3,3]
	pshufd	$255, %xmm3, %xmm11             ## xmm11 = xmm3[3,3,3,3]
	movq	%rdx, %rax
	movq	%r14, %rdi
	.p2align	4, 0x90
LBB0_14:                                ## =>This Inner Loop Header: Depth=1
	movd	(%rdi), %xmm14                  ## xmm14 = mem[0],zero,zero,zero
	pinsrd	$1, 16(%rdi), %xmm14
	pinsrd	$2, 32(%rdi), %xmm14
	pinsrd	$3, 48(%rdi), %xmm14
	movd	4(%rdi), %xmm13                 ## xmm13 = mem[0],zero,zero,zero
	pinsrd	$1, 20(%rdi), %xmm13
	pinsrd	$2, 36(%rdi), %xmm13
	pinsrd	$3, 52(%rdi), %xmm13
	movd	8(%rdi), %xmm4                  ## xmm4 = mem[0],zero,zero,zero
	pinsrd	$1, 24(%rdi), %xmm4
	pinsrd	$2, 40(%rdi), %xmm4
	pinsrd	$3, 56(%rdi), %xmm4
	movd	12(%rdi), %xmm15                ## xmm15 = mem[0],zero,zero,zero
	pinsrd	$1, 28(%rdi), %xmm15
	pinsrd	$2, 44(%rdi), %xmm15
	pinsrd	$3, 60(%rdi), %xmm15
	movdqa	%xmm14, %xmm5
	pmulld	-192(%rbp), %xmm5               ## 16-byte Folded Reload
	movdqa	%xmm13, %xmm7
	pmulld	-176(%rbp), %xmm7               ## 16-byte Folded Reload
	paddd	%xmm5, %xmm7
	movdqa	%xmm4, %xmm5
	pmulld	-160(%rbp), %xmm5               ## 16-byte Folded Reload
	movdqa	%xmm15, %xmm6
	pmulld	-144(%rbp), %xmm6               ## 16-byte Folded Reload
	paddd	%xmm5, %xmm6
	paddd	%xmm7, %xmm6
	movdqa	%xmm14, %xmm5
	pmulld	-128(%rbp), %xmm5               ## 16-byte Folded Reload
	movdqa	%xmm13, %xmm7
	pmulld	-112(%rbp), %xmm7               ## 16-byte Folded Reload
	paddd	%xmm5, %xmm7
	movdqa	%xmm4, %xmm0
	pmulld	-96(%rbp), %xmm0                ## 16-byte Folded Reload
	movdqa	%xmm15, %xmm5
	pmulld	-224(%rbp), %xmm5               ## 16-byte Folded Reload
	paddd	%xmm0, %xmm5
	paddd	%xmm7, %xmm5
	movdqa	%xmm14, %xmm0
	pmulld	-208(%rbp), %xmm0               ## 16-byte Folded Reload
	movdqa	%xmm13, %xmm7
	pmulld	-80(%rbp), %xmm7                ## 16-byte Folded Reload
	paddd	%xmm0, %xmm7
	movdqa	%xmm4, %xmm0
	pmulld	-64(%rbp), %xmm0                ## 16-byte Folded Reload
	movdqa	%xmm15, %xmm12
	pmulld	-256(%rbp), %xmm12              ## 16-byte Folded Reload
	paddd	%xmm0, %xmm12
	paddd	%xmm7, %xmm12
	pmulld	-240(%rbp), %xmm14              ## 16-byte Folded Reload
	pmulld	%xmm9, %xmm13
	paddd	%xmm14, %xmm13
	pmulld	%xmm10, %xmm4
	pmulld	%xmm11, %xmm15
	paddd	%xmm4, %xmm15
	paddd	%xmm13, %xmm15
	pshufd	$85, %xmm6, %xmm0               ## xmm0 = xmm6[1,1,1,1]
	pblendw	$12, %xmm5, %xmm0               ## xmm0 = xmm0[0,1],xmm5[2,3],xmm0[4,5,6,7]
	movdqa	%xmm6, %xmm4
	punpckhdq	%xmm5, %xmm4            ## xmm4 = xmm4[2],xmm5[2],xmm4[3],xmm5[3]
	punpckldq	%xmm5, %xmm6            ## xmm6 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]
	movdqa	%xmm12, %xmm5
	punpckldq	%xmm15, %xmm5           ## xmm5 = xmm5[0],xmm15[0],xmm5[1],xmm15[1]
	pblendw	$240, %xmm5, %xmm0              ## xmm0 = xmm0[0,1,2,3],xmm5[4,5,6,7]
	punpcklqdq	%xmm5, %xmm6            ## xmm6 = xmm6[0],xmm5[0]
	pshufd	$170, %xmm15, %xmm5             ## xmm5 = xmm15[2,2,2,2]
	pblendw	$63, %xmm12, %xmm5              ## xmm5 = xmm12[0,1,2,3,4,5],xmm5[6,7]
	punpckhdq	%xmm15, %xmm12          ## xmm12 = xmm12[2],xmm15[2],xmm12[3],xmm15[3]
	pblendw	$15, %xmm4, %xmm5               ## xmm5 = xmm4[0,1,2,3],xmm5[4,5,6,7]
	punpckhqdq	%xmm12, %xmm4           ## xmm4 = xmm4[1],xmm12[1]
	movdqu	%xmm4, 48(%rdi)
	movdqu	%xmm6, (%rdi)
	movdqu	%xmm5, 32(%rdi)
	movdqu	%xmm0, 16(%rdi)
	addq	$64, %rdi
	addq	$-4, %rax
	jne	LBB0_14
## %bb.15:
	cmpq	%rsi, %rdx
	jne	LBB0_16
	jmp	LBB0_49
LBB0_35:
	movl	%ecx, %r13d
	movl	%r10d, %ecx
	leaq	-1(%rsi), %rax
	leaq	12(%r14), %rdx
	movq	%rdx, -96(%rbp)                 ## 8-byte Spill
	movl	$16, %edx
	mulq	%rdx
	seto	%r10b
	leaq	(%r14,%rax), %r11
	addq	$12, %r11
	cmpq	-96(%rbp), %r11                 ## 8-byte Folded Reload
	jb	LBB0_36
## %bb.37:
	testb	%r10b, %r10b
	jne	LBB0_36
## %bb.38:
	leaq	8(%r14), %r11
	leaq	(%r14,%rax), %rdx
	addq	$8, %rdx
	cmpq	%r11, %rdx
	jb	LBB0_36
## %bb.39:
	testb	%r10b, %r10b
	jne	LBB0_36
## %bb.40:
	leaq	4(%r14), %r11
	leaq	(%r14,%rax), %rdx
	addq	$4, %rdx
	cmpq	%r11, %rdx
	jb	LBB0_36
## %bb.41:
	testb	%r10b, %r10b
	movl	-192(%rbp), %r9d                ## 4-byte Reload
	jne	LBB0_36
## %bb.42:
	addq	%r14, %rax
	cmpq	%r14, %rax
	jb	LBB0_36
## %bb.43:
	testb	%r10b, %r10b
	movl	%ecx, %r10d
	movl	%r13d, %ecx
	movl	-80(%rbp), %r12d                ## 4-byte Reload
	movl	-64(%rbp), %edx                 ## 4-byte Reload
	movl	$0, %r13d
	jne	LBB0_47
## %bb.44:
	movq	%rsi, %r13
	andq	$-4, %r13
	movd	%edi, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movdqa	%xmm0, -96(%rbp)                ## 16-byte Spill
	movd	-160(%rbp), %xmm0               ## 4-byte Folded Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movdqa	%xmm0, -224(%rbp)               ## 16-byte Spill
	movd	-112(%rbp), %xmm0               ## 4-byte Folded Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movdqa	%xmm0, -208(%rbp)               ## 16-byte Spill
	movd	%r12d, %xmm0
	pshufd	$0, %xmm0, %xmm11               ## xmm11 = xmm0[0,0,0,0]
	movd	%r10d, %xmm0
	pshufd	$0, %xmm0, %xmm12               ## xmm12 = xmm0[0,0,0,0]
	movd	-176(%rbp), %xmm0               ## 4-byte Folded Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm13               ## xmm13 = xmm0[0,0,0,0]
	movd	-128(%rbp), %xmm0               ## 4-byte Folded Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm14               ## xmm14 = xmm0[0,0,0,0]
	movd	-144(%rbp), %xmm0               ## 4-byte Folded Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	pshufd	$0, %xmm0, %xmm15               ## xmm15 = xmm0[0,0,0,0]
	movd	%ebx, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movd	%r9d, %xmm1
	pshufd	$0, %xmm1, %xmm1                ## xmm1 = xmm1[0,0,0,0]
	movd	%ecx, %xmm2
	pshufd	$0, %xmm2, %xmm2                ## xmm2 = xmm2[0,0,0,0]
	movd	%edx, %xmm3
	pshufd	$0, %xmm3, %xmm3                ## xmm3 = xmm3[0,0,0,0]
	leaq	60(%r14), %rax
	movq	%r13, %rdx
	.p2align	4, 0x90
LBB0_45:                                ## =>This Inner Loop Header: Depth=1
	movd	-60(%rax), %xmm8                ## xmm8 = mem[0],zero,zero,zero
	pinsrd	$1, -44(%rax), %xmm8
	pinsrd	$2, -28(%rax), %xmm8
	pinsrd	$3, -12(%rax), %xmm8
	movd	-56(%rax), %xmm9                ## xmm9 = mem[0],zero,zero,zero
	pinsrd	$1, -40(%rax), %xmm9
	pinsrd	$2, -24(%rax), %xmm9
	pinsrd	$3, -8(%rax), %xmm9
	movd	-52(%rax), %xmm6                ## xmm6 = mem[0],zero,zero,zero
	pinsrd	$1, -36(%rax), %xmm6
	pinsrd	$2, -20(%rax), %xmm6
	pinsrd	$3, -4(%rax), %xmm6
	movd	-48(%rax), %xmm10               ## xmm10 = mem[0],zero,zero,zero
	pinsrd	$1, -32(%rax), %xmm10
	pinsrd	$2, -16(%rax), %xmm10
	pinsrd	$3, (%rax), %xmm10
	movdqa	%xmm8, %xmm5
	pmulld	-96(%rbp), %xmm5                ## 16-byte Folded Reload
	movdqa	%xmm9, %xmm4
	pmulld	-224(%rbp), %xmm4               ## 16-byte Folded Reload
	paddd	%xmm5, %xmm4
	movdqa	%xmm6, %xmm5
	pmulld	-208(%rbp), %xmm5               ## 16-byte Folded Reload
	movdqa	%xmm10, %xmm7
	pmulld	%xmm11, %xmm7
	paddd	%xmm5, %xmm7
	paddd	%xmm4, %xmm7
	movd	%xmm7, -60(%rax)
	pextrd	$1, %xmm7, -44(%rax)
	pextrd	$2, %xmm7, -28(%rax)
	pextrd	$3, %xmm7, -12(%rax)
	movdqa	%xmm8, %xmm4
	pmulld	%xmm12, %xmm4
	movdqa	%xmm9, %xmm5
	pmulld	%xmm13, %xmm5
	paddd	%xmm4, %xmm5
	movdqa	%xmm6, %xmm4
	pmulld	%xmm14, %xmm4
	movdqa	%xmm10, %xmm7
	pmulld	%xmm15, %xmm7
	paddd	%xmm4, %xmm7
	paddd	%xmm5, %xmm7
	movd	%xmm7, -56(%rax)
	pextrd	$1, %xmm7, -40(%rax)
	pextrd	$2, %xmm7, -24(%rax)
	pextrd	$3, %xmm7, -8(%rax)
	pmulld	%xmm0, %xmm8
	pmulld	%xmm1, %xmm9
	paddd	%xmm8, %xmm9
	pmulld	%xmm2, %xmm6
	pmulld	%xmm3, %xmm10
	paddd	%xmm6, %xmm10
	paddd	%xmm9, %xmm10
	movd	%xmm10, -52(%rax)
	pextrd	$1, %xmm10, -36(%rax)
	pextrd	$2, %xmm10, -20(%rax)
	pextrd	$3, %xmm10, -4(%rax)
	addq	$64, %rax
	addq	$-4, %rdx
	jne	LBB0_45
## %bb.46:
	cmpq	%rsi, %r13
	movl	-80(%rbp), %r12d                ## 4-byte Reload
	movl	-64(%rbp), %edx                 ## 4-byte Reload
	jne	LBB0_47
	jmp	LBB0_49
LBB0_21:
	leaq	-1(%rsi), %rax
	leaq	12(%r14), %rdi
	movl	$16, %ecx
	mulq	%rcx
	seto	%r12b
	leaq	(%r14,%rax), %rcx
	addq	$12, %rcx
	xorl	%edx, %edx
	cmpq	%rdi, %rcx
	jb	LBB0_30
## %bb.22:
	testb	%r12b, %r12b
	jne	LBB0_30
## %bb.23:
	leaq	4(%r14), %rdi
	leaq	(%r14,%rax), %rcx
	addq	$4, %rcx
	cmpq	%rdi, %rcx
	jb	LBB0_30
## %bb.24:
	testb	%r12b, %r12b
	jne	LBB0_30
## %bb.25:
	addq	%r14, %rax
	cmpq	%r14, %rax
	jb	LBB0_30
## %bb.26:
	testb	%r12b, %r12b
	jne	LBB0_30
## %bb.27:
	movq	%rsi, %rdx
	andq	$-4, %rdx
	movd	%r8d, %xmm0
	pshufd	$0, %xmm0, %xmm8                ## xmm8 = xmm0[0,0,0,0]
	movd	%r10d, %xmm0
	pshufd	$0, %xmm0, %xmm9                ## xmm9 = xmm0[0,0,0,0]
	movd	%r13d, %xmm0
	pshufd	$0, %xmm0, %xmm10               ## xmm10 = xmm0[0,0,0,0]
	movd	%r9d, %xmm0
	pshufd	$0, %xmm0, %xmm3                ## xmm3 = xmm0[0,0,0,0]
	movd	%r11d, %xmm0
	pshufd	$0, %xmm0, %xmm4                ## xmm4 = xmm0[0,0,0,0]
	movd	%r15d, %xmm0
	pshufd	$0, %xmm0, %xmm5                ## xmm5 = xmm0[0,0,0,0]
	movq	%rdx, %rax
	movq	%r14, %rcx
	.p2align	4, 0x90
LBB0_28:                                ## =>This Inner Loop Header: Depth=1
	movd	(%rcx), %xmm6                   ## xmm6 = mem[0],zero,zero,zero
	pinsrd	$1, 16(%rcx), %xmm6
	pinsrd	$2, 32(%rcx), %xmm6
	pinsrd	$3, 48(%rcx), %xmm6
	movd	4(%rcx), %xmm7                  ## xmm7 = mem[0],zero,zero,zero
	pinsrd	$1, 20(%rcx), %xmm7
	pinsrd	$2, 36(%rcx), %xmm7
	pinsrd	$3, 52(%rcx), %xmm7
	movd	12(%rcx), %xmm0                 ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, 28(%rcx), %xmm0
	pinsrd	$2, 44(%rcx), %xmm0
	pinsrd	$3, 60(%rcx), %xmm0
	movdqa	%xmm6, %xmm1
	pmulld	%xmm8, %xmm1
	movdqa	%xmm7, %xmm2
	pmulld	%xmm9, %xmm2
	paddd	%xmm1, %xmm2
	movdqa	%xmm0, %xmm1
	pmulld	%xmm10, %xmm1
	paddd	%xmm2, %xmm1
	movd	%xmm1, (%rcx)
	pextrd	$1, %xmm1, 16(%rcx)
	pextrd	$2, %xmm1, 32(%rcx)
	pextrd	$3, %xmm1, 48(%rcx)
	pmulld	%xmm3, %xmm6
	pmulld	%xmm4, %xmm7
	paddd	%xmm6, %xmm7
	pmulld	%xmm5, %xmm0
	paddd	%xmm7, %xmm0
	movd	%xmm0, 4(%rcx)
	pextrd	$1, %xmm0, 20(%rcx)
	pextrd	$2, %xmm0, 36(%rcx)
	pextrd	$3, %xmm0, 52(%rcx)
	addq	$64, %rcx
	addq	$-4, %rax
	jne	LBB0_28
## %bb.29:
	cmpq	%rsi, %rdx
	jne	LBB0_30
	jmp	LBB0_49
LBB0_36:
	movl	%ecx, %r10d
	movl	%r13d, %ecx
	movl	-80(%rbp), %r12d                ## 4-byte Reload
	movl	-64(%rbp), %edx                 ## 4-byte Reload
	xorl	%r13d, %r13d
LBB0_47:
	subq	%r13, %rsi
	shlq	$4, %r13
	addq	%r13, %r14
	.p2align	4, 0x90
LBB0_48:                                ## =>This Inner Loop Header: Depth=1
	movl	%edx, %r9d
	movl	%ecx, %r8d
	movl	(%r14), %ecx
	movl	4(%r14), %r15d
	movl	8(%r14), %eax
	movl	12(%r14), %r13d
	movl	%ecx, %r11d
	imull	%edi, %r11d
	movl	%r10d, %edx
	movl	%r15d, %r10d
	imull	-160(%rbp), %r10d               ## 4-byte Folded Reload
	addl	%r11d, %r10d
	movl	%ebx, %r11d
	movl	%edi, %ebx
	movl	%eax, %edi
	imull	-112(%rbp), %edi                ## 4-byte Folded Reload
	addl	%r10d, %edi
	movl	%edx, %r10d
	movl	%r13d, %edx
	imull	%r12d, %edx
	addl	%edi, %edx
	movl	%edx, (%r14)
	movl	%ecx, %edx
	imull	%r10d, %edx
	movl	%r15d, %edi
	imull	-176(%rbp), %edi                ## 4-byte Folded Reload
	addl	%edx, %edi
	movl	%eax, %edx
	imull	-128(%rbp), %edx                ## 4-byte Folded Reload
	addl	%edi, %edx
	movl	%r13d, %edi
	imull	-144(%rbp), %edi                ## 4-byte Folded Reload
	addl	%edx, %edi
	movl	%edi, 4(%r14)
	movl	%ebx, %edi
	movl	%r11d, %ebx
	imull	%r11d, %ecx
	imull	-192(%rbp), %r15d               ## 4-byte Folded Reload
	addl	%ecx, %r15d
	movl	%r8d, %ecx
	movl	%r9d, %edx
	imull	%r8d, %eax
	addl	%r15d, %eax
	imull	%edx, %r13d
	addl	%eax, %r13d
	movl	%r13d, 8(%r14)
	addq	$16, %r14
	decq	%rsi
	jne	LBB0_48
LBB0_49:
	addq	$88, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_49, LBB0_49-LJTI0_0
.set L0_0_set_2, LBB0_2-LJTI0_0
.set L0_0_set_32, LBB0_32-LJTI0_0
.set L0_0_set_18, LBB0_18-LJTI0_0
LJTI0_0:
	.long	L0_0_set_49
	.long	L0_0_set_2
	.long	L0_0_set_32
	.long	L0_0_set_18
	.end_data_region
                                        ## -- End function
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"invalid matrix type in transform_texcoords()"

	.no_dead_strip	_transform_texcoords
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function transform_texcoords
_transform_texcoords:                   ; @transform_texcoords
	.cfi_startproc
; %bb.0:
	stp	x24, x23, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x22, x21, [sp, #16]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	.cfi_offset w19, -8
	.cfi_offset w20, -16
	.cfi_offset w21, -24
	.cfi_offset w22, -32
	.cfi_offset w23, -40
	.cfi_offset w24, -48
	ldr	w8, [x0]
	sub	w8, w8, #128
	cmp	w8, #3
	b.hi	LBB0_5
; %bb.1:
Lloh0:
	adrp	x9, lJTI0_0@PAGE
Lloh1:
	add	x9, x9, lJTI0_0@PAGEOFF
	adr	x10, LBB0_2
	ldrb	w11, [x9, x8]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_2:
	cbz	x1, LBB0_38
; %bb.3:
	ldr	x7, [x0, #8]
	ldp	w8, w9, [x7]
	ldp	w10, w11, [x7, #16]
	ldp	w12, w13, [x7, #32]
	ldp	w14, w15, [x7, #48]
	ldp	w16, w17, [x7, #8]
	ldp	w0, w3, [x7, #24]
	ldp	w4, w5, [x7, #40]
	ldp	w6, w7, [x7, #56]
	cmp	x1, #4
	b.hs	LBB0_12
; %bb.4:
	mov	x19, #0
	b	LBB0_23
LBB0_5:
Lloh2:
	adrp	x1, l_.str@PAGE
Lloh3:
	add	x1, x1, l_.str@PAGEOFF
	mov	x0, #0
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp], #48             ; 16-byte Folded Reload
	b	_gl_problem
LBB0_6:
	cbz	x1, LBB0_38
; %bb.7:
	ldr	x3, [x0, #8]
	ldp	w8, w9, [x3]
	ldr	w10, [x3, #8]
	ldp	w11, w12, [x3, #16]
	ldr	w13, [x3, #24]
	ldp	w14, w15, [x3, #32]
	ldr	w16, [x3, #40]
	ldp	w17, w0, [x3, #48]
	ldr	w3, [x3, #56]
	cmp	x1, #4
	b.hs	LBB0_25
; %bb.8:
	mov	x4, #0
	b	LBB0_36
LBB0_9:
	cbz	x1, LBB0_38
; %bb.10:
	ldr	x8, [x0, #8]
	ldr	d0, [x8]
	ldr	d1, [x8, #16]
	ldr	d2, [x8, #48]
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	mov	x8, x2
	ld1r.2s	{ v3 }, [x8], #4
	add	x9, x2, #12
	mul.2s	v3, v3, v0
	ld1r.2s	{ v4 }, [x8]
	mla.2s	v3, v4, v1
	ld1r.2s	{ v4 }, [x9]
	mla.2s	v3, v4, v2
	str	d3, [x2], #16
	subs	x1, x1, #1
	b.ne	LBB0_11
	b	LBB0_38
LBB0_12:
	mov	x19, #0
	sub	x21, x1, #1
	add	x22, x2, #12
	cmp	xzr, x21, lsr #60
	cset	w20, ne
	lsl	x21, x21, #4
	add	x23, x22, x21
	cmp	x23, x22
	b.lo	LBB0_23
; %bb.13:
	tbnz	w20, #0, LBB0_23
; %bb.14:
	add	x22, x2, #8
	add	x23, x22, x21
	cmp	x23, x22
	b.lo	LBB0_23
; %bb.15:
	tbnz	w20, #0, LBB0_23
; %bb.16:
	add	x22, x2, #4
	add	x23, x22, x21
	cmp	x23, x22
	b.lo	LBB0_23
; %bb.17:
	tbnz	w20, #0, LBB0_23
; %bb.18:
	add	x21, x2, x21
	cmp	x21, x2
	b.lo	LBB0_23
; %bb.19:
	tbnz	w20, #0, LBB0_23
; %bb.20:
	dup.4s	v0, w8
	and	x19, x1, #0xfffffffffffffffc
	dup.4s	v1, w10
	dup.4s	v2, w12
	dup.4s	v3, w14
	dup.4s	v4, w9
	dup.4s	v5, w11
	dup.4s	v6, w13
	dup.4s	v7, w15
	dup.4s	v16, w16
	dup.4s	v17, w0
	dup.4s	v18, w4
	dup.4s	v19, w6
	dup.4s	v20, w17
	dup.4s	v21, w3
	dup.4s	v22, w5
	mov	x20, x19
	mov	x21, x2
	dup.4s	v23, w7
LBB0_21:                                ; =>This Inner Loop Header: Depth=1
	ld4.4s	{ v24, v25, v26, v27 }, [x21]
	mul.4s	v28, v24, v0
	mla.4s	v28, v25, v1
	mla.4s	v28, v26, v2
	mla.4s	v28, v27, v3
	mul.4s	v29, v24, v4
	mla.4s	v29, v25, v5
	mla.4s	v29, v26, v6
	mla.4s	v29, v27, v7
	mul.4s	v30, v24, v16
	mla.4s	v30, v25, v17
	mla.4s	v30, v26, v18
	mla.4s	v30, v27, v19
	mul.4s	v31, v24, v20
	mla.4s	v31, v25, v21
	mla.4s	v31, v26, v22
	mla.4s	v31, v27, v23
	st4.4s	{ v28, v29, v30, v31 }, [x21], #64
	subs	x20, x20, #4
	b.ne	LBB0_21
; %bb.22:
	cmp	x19, x1
	b.eq	LBB0_38
LBB0_23:
	sub	x1, x1, x19
	add	x2, x2, x19, lsl #4
	add	x2, x2, #8
LBB0_24:                                ; =>This Inner Loop Header: Depth=1
	ldp	w19, w20, [x2, #-8]
	ldp	w21, w22, [x2]
	mul	w23, w19, w8
	madd	w23, w20, w10, w23
	madd	w23, w21, w12, w23
	madd	w23, w22, w14, w23
	mul	w24, w19, w9
	madd	w24, w20, w11, w24
	madd	w24, w21, w13, w24
	madd	w24, w22, w15, w24
	stp	w23, w24, [x2, #-8]
	mul	w23, w19, w16
	madd	w23, w20, w0, w23
	madd	w23, w21, w4, w23
	madd	w23, w22, w6, w23
	mul	w19, w19, w17
	madd	w19, w20, w3, w19
	madd	w19, w21, w5, w19
	madd	w19, w22, w7, w19
	stp	w23, w19, [x2], #16
	subs	x1, x1, #1
	b.ne	LBB0_24
	b	LBB0_38
LBB0_25:
	mov	x4, #0
	sub	x6, x1, #1
	add	x7, x2, #12
	cmp	xzr, x6, lsr #60
	cset	w5, ne
	lsl	x6, x6, #4
	add	x19, x7, x6
	cmp	x19, x7
	b.lo	LBB0_36
; %bb.26:
	tbnz	w5, #0, LBB0_36
; %bb.27:
	add	x7, x2, #8
	add	x19, x7, x6
	cmp	x19, x7
	b.lo	LBB0_36
; %bb.28:
	tbnz	w5, #0, LBB0_36
; %bb.29:
	add	x7, x2, #4
	add	x19, x7, x6
	cmp	x19, x7
	b.lo	LBB0_36
; %bb.30:
	tbnz	w5, #0, LBB0_36
; %bb.31:
	add	x6, x2, x6
	cmp	x6, x2
	b.lo	LBB0_36
; %bb.32:
	tbnz	w5, #0, LBB0_36
; %bb.33:
	dup.4s	v0, w8
	dup.4s	v1, w11
	dup.4s	v2, w14
	dup.4s	v3, w17
	dup.4s	v4, w9
	dup.4s	v5, w12
	dup.4s	v6, w15
	dup.4s	v7, w0
	dup.4s	v16, w10
	dup.4s	v17, w13
	dup.4s	v18, w16
	and	x4, x1, #0xfffffffffffffffc
	mov	x5, x4
	mov	x7, x2
	mov	x6, x2
	dup.4s	v19, w3
LBB0_34:                                ; =>This Inner Loop Header: Depth=1
	ld4.4s	{ v20, v21, v22, v23 }, [x6], #64
	add	x19, x7, #24
	add	x20, x7, #40
	add	x21, x7, #56
	mul.4s	v24, v20, v0
	mla.4s	v24, v21, v1
	mla.4s	v24, v22, v2
	mla.4s	v24, v23, v3
	mul.4s	v25, v20, v4
	mla.4s	v25, v21, v5
	mla.4s	v25, v22, v6
	mla.4s	v25, v23, v7
	zip1.2s	v26, v24, v25
	str	d26, [x7]
	zip2.2s	v26, v24, v25
	str	d26, [x7, #16]
	ext.16b	v25, v25, v25, #8
	ext.16b	v24, v24, v24, #8
	zip1.2s	v26, v24, v25
	str	d26, [x7, #32]
	zip2.2s	v24, v24, v25
	str	d24, [x7, #48]
	mul.4s	v24, v20, v16
	mla.4s	v24, v21, v17
	mla.4s	v24, v22, v18
	mla.4s	v24, v23, v19
	str	s24, [x7, #8]
	st1.s	{ v24 }[1], [x19]
	st1.s	{ v24 }[2], [x20]
	st1.s	{ v24 }[3], [x21]
	mov	x7, x6
	subs	x5, x5, #4
	b.ne	LBB0_34
; %bb.35:
	cmp	x4, x1
	b.eq	LBB0_38
LBB0_36:
	sub	x1, x1, x4
	add	x2, x2, x4, lsl #4
	add	x2, x2, #8
LBB0_37:                                ; =>This Inner Loop Header: Depth=1
	ldp	w4, w5, [x2, #-8]
	ldp	w6, w7, [x2]
	mul	w19, w4, w8
	madd	w19, w5, w11, w19
	madd	w19, w6, w14, w19
	madd	w19, w7, w17, w19
	mul	w20, w4, w9
	madd	w20, w5, w12, w20
	madd	w20, w6, w15, w20
	madd	w20, w7, w0, w20
	stp	w19, w20, [x2, #-8]
	mul	w4, w4, w10
	madd	w4, w5, w13, w4
	madd	w4, w6, w16, w4
	madd	w4, w7, w3, w4
	str	w4, [x2], #16
	subs	x1, x1, #1
	b.ne	LBB0_37
LBB0_38:
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpAdd	Lloh2, Lloh3
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_38-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
	.byte	(LBB0_9-LBB0_2)>>2
                                        ; -- End function
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"invalid matrix type in transform_texcoords()"

	.no_dead_strip	_transform_texcoords
.subsections_via_symbols
