	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function mix_columns
LCPI0_0:
	.long	283                             ## 0x11b
	.long	283                             ## 0x11b
	.long	283                             ## 0x11b
	.long	283                             ## 0x11b
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_mix_columns:                           ## @mix_columns
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movd	(%rdi), %xmm2                   ## xmm2 = mem[0],zero,zero,zero
	pinsrd	$1, 16(%rdi), %xmm2
	pinsrd	$2, 32(%rdi), %xmm2
	pinsrd	$3, 48(%rdi), %xmm2
	movd	4(%rdi), %xmm1                  ## xmm1 = mem[0],zero,zero,zero
	pinsrd	$1, 20(%rdi), %xmm1
	pinsrd	$2, 36(%rdi), %xmm1
	pinsrd	$3, 52(%rdi), %xmm1
	movd	8(%rdi), %xmm3                  ## xmm3 = mem[0],zero,zero,zero
	pinsrd	$1, 24(%rdi), %xmm3
	pinsrd	$2, 40(%rdi), %xmm3
	pinsrd	$3, 56(%rdi), %xmm3
	movd	12(%rdi), %xmm0                 ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, 28(%rdi), %xmm0
	pinsrd	$2, 44(%rdi), %xmm0
	pinsrd	$3, 60(%rdi), %xmm0
	movdqa	%xmm2, %xmm6
	paddd	%xmm2, %xmm6
	pxor	%xmm1, %xmm6
	movdqa	%xmm1, %xmm4
	paddd	%xmm1, %xmm4
	movdqa	%xmm4, %xmm5
	pxor	%xmm3, %xmm5
	pxor	%xmm6, %xmm5
	pxor	%xmm0, %xmm5
	movdqa	%xmm3, %xmm7
	paddd	%xmm3, %xmm7
	pxor	%xmm2, %xmm3
	pxor	%xmm3, %xmm4
	pxor	%xmm2, %xmm1
	pxor	%xmm7, %xmm1
	pxor	%xmm0, %xmm7
	pxor	%xmm4, %xmm7
	movdqa	%xmm0, %xmm4
	paddd	%xmm0, %xmm4
	pxor	%xmm4, %xmm0
	pxor	%xmm1, %xmm0
	pxor	%xmm3, %xmm4
	pxor	%xmm6, %xmm4
	movdqa	%xmm5, %xmm3
	psrld	$8, %xmm3
	pxor	%xmm2, %xmm2
	pxor	%xmm1, %xmm1
	psubd	%xmm3, %xmm1
	movdqa	LCPI0_0(%rip), %xmm6            ## xmm6 = [283,283,283,283]
	pand	%xmm6, %xmm1
	pxor	%xmm5, %xmm1
	movdqa	%xmm7, %xmm5
	psrld	$8, %xmm5
	pxor	%xmm3, %xmm3
	psubd	%xmm5, %xmm3
	pand	%xmm6, %xmm3
	pxor	%xmm7, %xmm3
	movdqa	%xmm0, %xmm7
	psrld	$8, %xmm7
	pxor	%xmm5, %xmm5
	psubd	%xmm7, %xmm5
	pand	%xmm6, %xmm5
	pxor	%xmm0, %xmm5
	movdqa	%xmm4, %xmm0
	psrld	$8, %xmm0
	psubd	%xmm0, %xmm2
	pand	%xmm6, %xmm2
	pxor	%xmm4, %xmm2
	movdqa	%xmm5, %xmm0
	punpckldq	%xmm2, %xmm0            ## xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]
	pshufd	$85, %xmm1, %xmm4               ## xmm4 = xmm1[1,1,1,1]
	pblendw	$12, %xmm3, %xmm4               ## xmm4 = xmm4[0,1],xmm3[2,3],xmm4[4,5,6,7]
	pblendw	$240, %xmm0, %xmm4              ## xmm4 = xmm4[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm1, %xmm6
	punpckhdq	%xmm3, %xmm6            ## xmm6 = xmm6[2],xmm3[2],xmm6[3],xmm3[3]
	pshufd	$170, %xmm2, %xmm7              ## xmm7 = xmm2[2,2,2,2]
	pblendw	$63, %xmm5, %xmm7               ## xmm7 = xmm5[0,1,2,3,4,5],xmm7[6,7]
	pblendw	$15, %xmm6, %xmm7               ## xmm7 = xmm6[0,1,2,3],xmm7[4,5,6,7]
	punpckldq	%xmm3, %xmm1            ## xmm1 = xmm1[0],xmm3[0],xmm1[1],xmm3[1]
	punpcklqdq	%xmm0, %xmm1            ## xmm1 = xmm1[0],xmm0[0]
	punpckhdq	%xmm2, %xmm5            ## xmm5 = xmm5[2],xmm2[2],xmm5[3],xmm2[3]
	punpckhqdq	%xmm5, %xmm6            ## xmm6 = xmm6[1],xmm5[1]
	movdqu	%xmm6, 48(%rdi)
	movdqu	%xmm1, (%rdi)
	movdqu	%xmm7, 32(%rdi)
	movdqu	%xmm4, 16(%rdi)
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_mix_columns
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function mix_columns
_mix_columns:                           ; @mix_columns
	.cfi_startproc
; %bb.0:
	mov	w8, #283
	dup.4s	v0, w8
	ld4.4s	{ v1, v2, v3, v4 }, [x0]
	shl.4s	v5, v1, #1
	eor.16b	v6, v5, v2
	shl.4s	v7, v2, #1
	eor3.16b	v16, v5, v2, v7
	eor3.16b	v17, v6, v7, v3
	eor3.16b	v16, v16, v3, v4
	shl.4s	v18, v3, #1
	eor.16b	v19, v3, v7
	eor3.16b	v7, v3, v7, v1
	eor3.16b	v19, v19, v1, v18
	eor3.16b	v7, v7, v18, v4
	eor.16b	v20, v2, v1
	eor3.16b	v21, v2, v1, v18
	eor3.16b	v18, v20, v18, v4
	shl.4s	v20, v4, #1
	eor3.16b	v21, v21, v4, v20
	eor3.16b	v5, v5, v2, v1
	eor3.16b	v6, v6, v1, v3
	eor3.16b	v5, v5, v3, v20
	ushr.4s	v16, v16, #8
	neg.4s	v16, v16
	and.16b	v16, v16, v0
	eor3.16b	v22, v17, v4, v16
	ushr.4s	v7, v7, #8
	neg.4s	v7, v7
	and.16b	v7, v7, v0
	eor3.16b	v23, v19, v4, v7
	ushr.4s	v1, v21, #8
	neg.4s	v1, v1
	and.16b	v1, v1, v0
	eor3.16b	v24, v18, v20, v1
	ushr.4s	v1, v5, #8
	neg.4s	v1, v1
	and.16b	v0, v1, v0
	eor3.16b	v25, v6, v20, v0
	st4.4s	{ v22, v23, v24, v25 }, [x0]
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_mix_columns
.subsections_via_symbols
