	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function wmv2_idct_col_mmi
_wmv2_idct_col_mmi:                     ## @wmv2_idct_col_mmi
	.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
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %r10
	movq	_W0@GOTPCREL(%rip), %rax
	movswl	(%rax), %eax
	movswl	(%rdi), %r14d
	imull	%eax, %r14d
	movswl	64(%rdi), %r11d
	imull	%eax, %r11d
	movq	_W1@GOTPCREL(%rip), %rax
	movswl	(%rax), %ecx
	movl	%ecx, -44(%rbp)                 ## 4-byte Spill
	movswl	16(%rdi), %esi
	movq	_W7@GOTPCREL(%rip), %rax
	movswl	(%rax), %r8d
	movswl	112(%rdi), %eax
	movl	%eax, -48(%rbp)                 ## 4-byte Spill
                                        ## kill: def $eax killed $eax def $rax
	imull	%r8d, %eax
	imull	%esi, %r8d
	movl	%esi, %edx
	imull	%ecx, %edx
	leal	(%rdx,%rax), %r15d
	addl	$4, %r15d
	movq	_W2@GOTPCREL(%rip), %rax
	movswl	(%rax), %r12d
	movswl	32(%rdi), %esi
	movq	_W6@GOTPCREL(%rip), %rdx
	movswl	(%rdx), %edx
	movswl	96(%rdi), %edi
	movl	%edi, %ebx
	imull	%edx, %ebx
	imull	%esi, %edx
                                        ## kill: def $esi killed $esi def $rsi
	imull	%r12d, %esi
	leal	(%rsi,%rbx), %r9d
	addl	$4, %r9d
	movq	_W3@GOTPCREL(%rip), %rsi
	movswl	(%rsi), %r13d
	movq	_W5@GOTPCREL(%rip), %rsi
	movswl	(%rsi), %ecx
	movswl	48(%r10), %eax
	movl	%eax, %esi
	imull	%ecx, %esi
	movswl	80(%r10), %ebx
	imull	%ebx, %ecx
	imull	%r13d, %ebx
	subl	%esi, %ebx
	leal	(%r11,%r14), %esi
	subl	%r11d, %r14d
	imull	%r13d, %eax
	leal	(%rcx,%rax), %r11d
	addl	$4, %r11d
	imull	%r12d, %edi
	sarl	$3, %esi
	sarl	$3, %r15d
	movq	%r9, %r12
	sarl	$3, %r12d
	addl	$4, %ebx
	sarl	$3, %ebx
	sarl	$3, %r14d
	sarl	$3, %r11d
	subl	%edi, %edx
	addl	$4, %edx
	sarl	$3, %edx
	movl	-48(%rbp), %eax                 ## 4-byte Reload
	imull	-44(%rbp), %eax                 ## 4-byte Folded Reload
	subl	%eax, %r8d
	addl	$4, %r8d
	sarl	$3, %r8d
	movl	%r15d, %eax
	subl	%r11d, %eax
	movl	%r8d, %ecx
	subl	%ebx, %ecx
	addl	%eax, %ecx
	imull	$181, %ecx, %ecx
	subl	$-128, %ecx
	sarl	$8, %ecx
	movl	%ebx, %edi
	subl	%r8d, %edi
	addl	%eax, %edi
	imull	$181, %edi, %r9d
	subl	$-128, %r9d
	sarl	$8, %r9d
	leal	(%r12,%rsi), %eax
	addl	%r15d, %r11d
	leal	(%r11,%rax), %edi
	addl	$8192, %edi                     ## imm = 0x2000
	shrl	$14, %edi
	movw	%di, (%r10)
	leal	(%rdx,%r14), %edi
	addl	%ecx, %edi
	addl	$8192, %edi                     ## imm = 0x2000
	shrl	$14, %edi
	movw	%di, 16(%r10)
	leal	(%rdx,%r14), %r15d
	addl	$8192, %r15d                    ## imm = 0x2000
	subl	%edx, %r14d
	leal	(%r14,%r9), %edx
	addl	$8192, %edx                     ## imm = 0x2000
	shrl	$14, %edx
	movw	%dx, 32(%r10)
	subl	%r12d, %esi
	addl	%ebx, %r8d
	leal	(%rsi,%r8), %edx
	addl	$8192, %edx                     ## imm = 0x2000
	shrl	$14, %edx
	movw	%dx, 48(%r10)
	subl	%r8d, %esi
	addl	$8192, %esi                     ## imm = 0x2000
	shrl	$14, %esi
	movw	%si, 64(%r10)
	movl	%r14d, %edx
	addl	$8192, %edx                     ## imm = 0x2000
	subl	%r9d, %edx
	shrl	$14, %edx
	movw	%dx, 80(%r10)
	subl	%ecx, %r15d
	shrl	$14, %r15d
	movw	%r15w, 96(%r10)
	subl	%r11d, %eax
	addl	$8192, %eax                     ## imm = 0x2000
	shrl	$14, %eax
	movw	%ax, 112(%r10)
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_W0,2,1                         ## @W0
	.comm	_W1,2,1                         ## @W1
	.comm	_W7,2,1                         ## @W7
	.comm	_W2,2,1                         ## @W2
	.comm	_W6,2,1                         ## @W6
	.comm	_W3,2,1                         ## @W3
	.comm	_W5,2,1                         ## @W5
	.no_dead_strip	_wmv2_idct_col_mmi
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function wmv2_idct_col_mmi
_wmv2_idct_col_mmi:                     ; @wmv2_idct_col_mmi
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-16]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 16
	.cfi_offset w19, -8
	.cfi_offset w20, -16
Lloh0:
	adrp	x8, _W0@GOTPAGE
Lloh1:
	ldr	x8, [x8, _W0@GOTPAGEOFF]
Lloh2:
	ldrsh	w8, [x8]
	ldrsh	w9, [x0]
	mul	w9, w9, w8
	ldrsh	w10, [x0, #64]
	mul	w10, w10, w8
	add	w8, w10, w9
	asr	w8, w8, #3
Lloh3:
	adrp	x11, _W1@GOTPAGE
Lloh4:
	ldr	x11, [x11, _W1@GOTPAGEOFF]
Lloh5:
	ldrsh	w11, [x11]
	ldrsh	w12, [x0, #16]
Lloh6:
	adrp	x13, _W7@GOTPAGE
Lloh7:
	ldr	x13, [x13, _W7@GOTPAGEOFF]
Lloh8:
	ldrsh	w13, [x13]
	ldrsh	w14, [x0, #112]
	mul	w15, w14, w13
	madd	w15, w12, w11, w15
	add	w15, w15, #4
	asr	w15, w15, #3
Lloh9:
	adrp	x16, _W2@GOTPAGE
Lloh10:
	ldr	x16, [x16, _W2@GOTPAGEOFF]
Lloh11:
	ldrsh	w16, [x16]
	ldrsh	w17, [x0, #32]
Lloh12:
	adrp	x1, _W6@GOTPAGE
Lloh13:
	ldr	x1, [x1, _W6@GOTPAGEOFF]
Lloh14:
	ldrsh	w1, [x1]
	ldrsh	w2, [x0, #96]
	mul	w3, w2, w1
	madd	w3, w17, w16, w3
	add	w3, w3, #4
	asr	w3, w3, #3
Lloh15:
	adrp	x4, _W3@GOTPAGE
Lloh16:
	ldr	x4, [x4, _W3@GOTPAGEOFF]
Lloh17:
	ldrsh	w4, [x4]
	ldrsh	w5, [x0, #80]
Lloh18:
	adrp	x6, _W5@GOTPAGE
Lloh19:
	ldr	x6, [x6, _W5@GOTPAGEOFF]
Lloh20:
	ldrsh	w6, [x6]
	ldrsh	w7, [x0, #48]
	mul	w19, w7, w6
	neg	w19, w19
	madd	w19, w5, w4, w19
	add	w19, w19, #4
	asr	w19, w19, #3
	sub	w9, w9, w10
	asr	w9, w9, #3
	mul	w10, w7, w4
	madd	w10, w6, w5, w10
	add	w10, w10, #4
	asr	w10, w10, #3
	mul	w16, w2, w16
	neg	w16, w16
	madd	w16, w1, w17, w16
	add	w16, w16, #4
	asr	w16, w16, #3
	mul	w11, w14, w11
	neg	w11, w11
	madd	w11, w13, w12, w11
	add	w11, w11, #4
	asr	w11, w11, #3
	sub	w12, w15, w10
	sub	w13, w11, w19
	add	w13, w13, w12
	mov	w14, #181
	orr	w17, wzr, #0x80
	madd	w13, w13, w14, w17
	asr	w13, w13, #8
	sub	w1, w19, w11
	add	w12, w1, w12
	madd	w12, w12, w14, w17
	asr	w12, w12, #8
	add	w14, w3, w8
	add	w10, w10, w15
	add	w15, w10, w14
	add	w15, w15, #2, lsl #12           ; =8192
	lsr	w15, w15, #14
	add	w17, w16, w9
	add	w17, w17, #2, lsl #12           ; =8192
	add	w1, w17, w13
	strh	w15, [x0]
	lsr	w15, w1, #14
	strh	w15, [x0, #16]
	sub	w9, w9, w16
	add	w9, w9, #2, lsl #12             ; =8192
	add	w15, w9, w12
	lsr	w15, w15, #14
	strh	w15, [x0, #32]
	sub	w8, w8, w3
	add	w11, w19, w11
	add	w15, w11, w8
	add	w15, w15, #2, lsl #12           ; =8192
	lsr	w15, w15, #14
	strh	w15, [x0, #48]
	sub	w8, w8, w11
	add	w8, w8, #2, lsl #12             ; =8192
	lsr	w8, w8, #14
	strh	w8, [x0, #64]
	sub	w8, w9, w12
	lsr	w8, w8, #14
	strh	w8, [x0, #80]
	sub	w8, w17, w13
	lsr	w8, w8, #14
	strh	w8, [x0, #96]
	sub	w8, w14, w10
	add	w8, w8, #2, lsl #12             ; =8192
	lsr	w8, w8, #14
	strh	w8, [x0, #112]
	ldp	x20, x19, [sp], #16             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_W0,2,1                         ; @W0
	.comm	_W1,2,1                         ; @W1
	.comm	_W7,2,1                         ; @W7
	.comm	_W2,2,1                         ; @W2
	.comm	_W6,2,1                         ; @W6
	.comm	_W3,2,1                         ; @W3
	.comm	_W5,2,1                         ; @W5
	.no_dead_strip	_wmv2_idct_col_mmi
.subsections_via_symbols
