	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function wmv2_idct_row_mmi
_wmv2_idct_row_mmi:                     ## @wmv2_idct_row_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	_W0@GOTPCREL(%rip), %rax
	movswl	(%rax), %eax
	movswl	(%rdi), %r12d
	imull	%eax, %r12d
	movswl	8(%rdi), %r15d
	imull	%eax, %r15d
	movq	_W1@GOTPCREL(%rip), %rax
	movswl	(%rax), %ecx
	movl	%ecx, -52(%rbp)                 ## 4-byte Spill
	movswl	2(%rdi), %r14d
	movl	%r14d, %eax
	imull	%ecx, %eax
	movq	_W7@GOTPCREL(%rip), %rcx
	movswl	(%rcx), %ecx
	movl	%ecx, -48(%rbp)                 ## 4-byte Spill
	movswl	14(%rdi), %ebx
	movl	%ebx, %r11d
	imull	%ecx, %r11d
	addl	%eax, %r11d
	movq	_W2@GOTPCREL(%rip), %rax
	movswl	(%rax), %edx
	movl	%edx, -44(%rbp)                 ## 4-byte Spill
	movswl	4(%rdi), %eax
	movq	_W6@GOTPCREL(%rip), %rcx
	movswl	(%rcx), %r9d
	movswl	12(%rdi), %r10d
	movl	%r10d, %r13d
	imull	%r9d, %r13d
	imull	%eax, %r9d
	imull	%edx, %eax
	addl	%eax, %r13d
	movq	_W3@GOTPCREL(%rip), %rax
	movswl	(%rax), %edx
	movq	_W5@GOTPCREL(%rip), %rax
	movswl	(%rax), %eax
	movswl	6(%rdi), %esi
	movl	%esi, %ecx
	imull	%eax, %ecx
	movswl	10(%rdi), %r8d
	imull	%r8d, %eax
	imull	%edx, %r8d
	subl	%ecx, %r8d
	leal	(%r15,%r12), %ecx
	subl	%r15d, %r12d
	imull	%edx, %esi
	addl	%eax, %esi
	imull	-44(%rbp), %r10d                ## 4-byte Folded Reload
	subl	%r10d, %r9d
	imull	-48(%rbp), %r14d                ## 4-byte Folded Reload
	imull	-52(%rbp), %ebx                 ## 4-byte Folded Reload
	subl	%ebx, %r14d
	movl	%r11d, %edx
	subl	%esi, %edx
	movl	%r14d, %eax
	subl	%r8d, %eax
	addl	%edx, %eax
	imull	$181, %eax, %eax
	subl	$-128, %eax
	sarl	$8, %eax
	movl	%r8d, %ebx
	subl	%r14d, %ebx
	addl	%edx, %ebx
	imull	$181, %ebx, %r15d
	subl	$-128, %r15d
	sarl	$8, %r15d
	leal	(%rcx,%r13), %ebx
	addl	%r11d, %esi
	leal	(%rsi,%rbx), %edx
	addl	$128, %edx
	shrl	$8, %edx
	movw	%dx, (%rdi)
	leal	(%r9,%r12), %edx
	addl	%eax, %edx
	addl	$128, %edx
	shrl	$8, %edx
	movw	%dx, 2(%rdi)
	leal	(%r9,%r12), %r11d
	addl	$128, %r11d
	subl	%r9d, %r12d
	leal	(%r12,%r15), %edx
	addl	$128, %edx
	shrl	$8, %edx
	movw	%dx, 4(%rdi)
	subl	%r13d, %ecx
	addl	%r8d, %r14d
	leal	(%rcx,%r14), %edx
	addl	$128, %edx
	shrl	$8, %edx
	movw	%dx, 6(%rdi)
	subl	%r14d, %ecx
	subl	$-128, %ecx
	shrl	$8, %ecx
	movw	%cx, 8(%rdi)
	movl	%r12d, %ecx
	subl	$-128, %ecx
	subl	%r15d, %ecx
	shrl	$8, %ecx
	movw	%cx, 10(%rdi)
	subl	%eax, %r11d
	shrl	$8, %r11d
	movw	%r11w, 12(%rdi)
	subl	%esi, %ebx
	subl	$-128, %ebx
	shrl	$8, %ebx
	movw	%bx, 14(%rdi)
	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_row_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_row_mmi
_wmv2_idct_row_mmi:                     ; @wmv2_idct_row_mmi
	.cfi_startproc
; %bb.0:
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, #8]
	mul	w8, w10, w8
Lloh3:
	adrp	x10, _W1@GOTPAGE
Lloh4:
	ldr	x10, [x10, _W1@GOTPAGEOFF]
Lloh5:
	ldrsh	w10, [x10]
	ldrsh	w11, [x0, #2]
	mul	w12, w11, w10
Lloh6:
	adrp	x13, _W7@GOTPAGE
Lloh7:
	ldr	x13, [x13, _W7@GOTPAGEOFF]
Lloh8:
	ldrsh	w13, [x13]
	ldrsh	w14, [x0, #14]
	madd	w12, w14, w13, w12
Lloh9:
	adrp	x15, _W2@GOTPAGE
Lloh10:
	ldr	x15, [x15, _W2@GOTPAGEOFF]
Lloh11:
	ldrsh	w15, [x15]
	ldrsh	w16, [x0, #4]
Lloh12:
	adrp	x17, _W6@GOTPAGE
Lloh13:
	ldr	x17, [x17, _W6@GOTPAGEOFF]
	mul	w1, w16, w15
Lloh14:
	ldrsh	w17, [x17]
	ldrsh	w2, [x0, #12]
	madd	w1, w2, w17, w1
Lloh15:
	adrp	x3, _W3@GOTPAGE
Lloh16:
	ldr	x3, [x3, _W3@GOTPAGEOFF]
Lloh17:
	ldrsh	w3, [x3]
	ldrsh	w4, [x0, #10]
Lloh18:
	adrp	x5, _W5@GOTPAGE
Lloh19:
	ldr	x5, [x5, _W5@GOTPAGEOFF]
Lloh20:
	ldrsh	w5, [x5]
	ldrsh	w6, [x0, #6]
	mul	w7, w6, w5
	neg	w7, w7
	madd	w7, w4, w3, w7
	mul	w4, w5, w4
	madd	w3, w6, w3, w4
	mul	w15, w2, w15
	neg	w15, w15
	madd	w15, w17, w16, w15
	mul	w10, w14, w10
	neg	w10, w10
	madd	w10, w13, w11, w10
	sub	w11, w12, w3
	sub	w13, w10, w7
	add	w13, w13, w11
	mov	w14, #181
	orr	w16, wzr, #0x80
	madd	w13, w13, w14, w16
	asr	w13, w13, #8
	sub	w17, w7, w10
	add	w11, w17, w11
	madd	w11, w11, w14, w16
	asr	w11, w11, #8
	add	w14, w8, w9
	add	w16, w1, w14
	add	w12, w3, w12
	add	w17, w12, w16
	add	w17, w17, #128
	lsr	w17, w17, #8
	sub	w8, w9, w8
	add	w9, w15, w8
	add	w9, w9, #128
	add	w2, w9, w13
	strh	w17, [x0]
	lsr	w17, w2, #8
	strh	w17, [x0, #2]
	sub	w8, w8, w15
	add	w8, w8, #128
	add	w15, w8, w11
	lsr	w15, w15, #8
	strh	w15, [x0, #4]
	sub	w14, w14, w1
	add	w10, w7, w10
	add	w15, w10, w14
	add	w15, w15, #128
	lsr	w15, w15, #8
	strh	w15, [x0, #6]
	sub	w10, w14, w10
	add	w10, w10, #128
	lsr	w10, w10, #8
	strh	w10, [x0, #8]
	sub	w8, w8, w11
	lsr	w8, w8, #8
	strh	w8, [x0, #10]
	sub	w8, w9, w13
	lsr	w8, w8, #8
	strh	w8, [x0, #12]
	sub	w8, w16, w12
	add	w8, w8, #128
	lsr	w8, w8, #8
	strh	w8, [x0, #14]
	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_row_mmi
.subsections_via_symbols
