	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function data_sam_s16le
LCPI0_0:
	.byte	1                               ## 0x1
	.byte	3                               ## 0x3
	.byte	5                               ## 0x5
	.byte	7                               ## 0x7
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
LCPI0_1:
	.byte	0                               ## 0x0
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	2                               ## 0x2
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	4                               ## 0x4
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	6                               ## 0x6
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
LCPI0_2:
	.byte	8                               ## 0x8
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	10                              ## 0xa
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	12                              ## 0xc
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	14                              ## 0xe
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
	.byte	128                             ## 0x80
LCPI0_3:
	.byte	9                               ## 0x9
	.byte	11                              ## 0xb
	.byte	13                              ## 0xd
	.byte	15                              ## 0xf
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
	.space	1
LCPI0_4:
	.long	32512                           ## 0x7f00
	.long	32512                           ## 0x7f00
	.long	32512                           ## 0x7f00
	.long	32512                           ## 0x7f00
LCPI0_5:
	.long	32768                           ## 0x8000
	.long	32768                           ## 0x8000
	.long	32768                           ## 0x8000
	.long	32768                           ## 0x8000
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_data_sam_s16le:                        ## @data_sam_s16le
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
                                        ## kill: def $edx killed $edx def $rdx
                                        ## kill: def $esi killed $esi def $rsi
	movl	(%rdi), %r8d
	cmpl	%esi, %r8d
	cmovll	%r8d, %esi
	leal	(%rsi,%rdx,2), %eax
	cmpl	%r8d, %eax
	jle	LBB0_2
## %bb.1:
	subl	%esi, %r8d
	movl	%r8d, %edx
	shrl	$31, %edx
	addl	%r8d, %edx
	sarl	%edx
LBB0_2:
	testl	%edx, %edx
	jle	LBB0_16
## %bb.3:
	movq	8(%rdi), %r9
	movslq	%esi, %r8
	movl	%edx, %r14d
	cmpl	$8, %edx
	jb	LBB0_4
## %bb.5:
	leaq	(%r9,%r8), %rsi
	leaq	(%r8,%r14,2), %rdx
	addq	%r9, %rdx
	cmpq	%rcx, %rdx
	jbe	LBB0_8
## %bb.6:
	leaq	(%rcx,%r14,2), %rdx
	cmpq	%rdx, %rsi
	jae	LBB0_8
LBB0_4:
	xorl	%edx, %edx
LBB0_11:
	movq	%rdx, %r11
	notq	%r11
	testb	$1, %r14b
	je	LBB0_13
## %bb.12:
	leaq	(%r8,%rdx,2), %rdi
	movzbl	(%r9,%rdi), %r10d
	movsbl	1(%r9,%rdi), %esi
	shll	$8, %esi
	movl	%esi, %edi
	andl	$32512, %edi                    ## imm = 0x7F00
	orl	%r10d, %edi
	andl	$32768, %esi                    ## imm = 0x8000
	subl	%esi, %edi
	movw	%di, (%rcx,%rdx,2)
	orq	$1, %rdx
LBB0_13:
	addq	%r14, %r11
	je	LBB0_16
## %bb.14:
	leaq	(%r8,%r9), %rsi
	addq	$3, %rsi
	.p2align	4, 0x90
LBB0_15:                                ## =>This Inner Loop Header: Depth=1
	movzbl	-3(%rsi,%rdx,2), %edi
	movsbl	-2(%rsi,%rdx,2), %ebx
	shll	$8, %ebx
	movl	%ebx, %eax
	andl	$32512, %eax                    ## imm = 0x7F00
	orl	%edi, %eax
	andl	$32768, %ebx                    ## imm = 0x8000
	subl	%ebx, %eax
	movw	%ax, (%rcx,%rdx,2)
	movzbl	-1(%rsi,%rdx,2), %eax
	movsbl	(%rsi,%rdx,2), %ebx
	shll	$8, %ebx
	movl	%ebx, %edi
	andl	$32512, %edi                    ## imm = 0x7F00
	orl	%eax, %edi
	andl	$32768, %ebx                    ## imm = 0x8000
	subl	%ebx, %edi
	movw	%di, 2(%rcx,%rdx,2)
	addq	$2, %rdx
	cmpq	%rdx, %r14
	jne	LBB0_15
	jmp	LBB0_16
LBB0_8:
	movl	%r14d, %edx
	andl	$-8, %edx
	xorl	%edi, %edi
	movdqa	LCPI0_0(%rip), %xmm8            ## xmm8 = <1,3,5,7,u,u,u,u,u,u,u,u,u,u,u,u>
	movdqa	LCPI0_1(%rip), %xmm9            ## xmm9 = [0,128,128,128,2,128,128,128,4,128,128,128,6,128,128,128]
	movdqa	LCPI0_2(%rip), %xmm10           ## xmm10 = [8,128,128,128,10,128,128,128,12,128,128,128,14,128,128,128]
	movdqa	LCPI0_3(%rip), %xmm11           ## xmm11 = <9,11,13,15,u,u,u,u,u,u,u,u,u,u,u,u>
	movdqa	LCPI0_4(%rip), %xmm12           ## xmm12 = [32512,32512,32512,32512]
	movdqa	LCPI0_5(%rip), %xmm5            ## xmm5 = [32768,32768,32768,32768]
	pxor	%xmm6, %xmm6
	.p2align	4, 0x90
LBB0_9:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	(%rsi,%rdi,2), %xmm7
	movdqa	%xmm7, %xmm0
	pshufb	%xmm8, %xmm0
	movdqa	%xmm7, %xmm1
	pshufb	%xmm9, %xmm1
	movdqa	%xmm7, %xmm2
	pshufb	%xmm10, %xmm2
	pmovsxbd	%xmm0, %xmm4
	pshufb	%xmm11, %xmm7
	pmovsxbd	%xmm7, %xmm3
	movdqa	%xmm3, %xmm7
	pslld	$8, %xmm7
	movdqa	%xmm4, %xmm0
	pslld	$8, %xmm0
	pand	%xmm12, %xmm0
	por	%xmm1, %xmm0
	pand	%xmm12, %xmm7
	por	%xmm2, %xmm7
	pand	%xmm5, %xmm3
	psubd	%xmm3, %xmm7
	pand	%xmm5, %xmm4
	psubd	%xmm4, %xmm0
	pblendw	$170, %xmm6, %xmm7              ## xmm7 = xmm7[0],xmm6[1],xmm7[2],xmm6[3],xmm7[4],xmm6[5],xmm7[6],xmm6[7]
	pblendw	$170, %xmm6, %xmm0              ## xmm0 = xmm0[0],xmm6[1],xmm0[2],xmm6[3],xmm0[4],xmm6[5],xmm0[6],xmm6[7]
	packusdw	%xmm7, %xmm0
	movdqu	%xmm0, (%rcx,%rdi,2)
	addq	$8, %rdi
	cmpq	%rdi, %rdx
	jne	LBB0_9
## %bb.10:
	cmpq	%r14, %rdx
	jne	LBB0_11
LBB0_16:
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_data_sam_s16le
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ; -- Begin function data_sam_s16le
lCPI0_0:
	.byte	4                               ; 0x4
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	5                               ; 0x5
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	6                               ; 0x6
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	7                               ; 0x7
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_1:
	.byte	0                               ; 0x0
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	1                               ; 0x1
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	2                               ; 0x2
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	3                               ; 0x3
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_data_sam_s16le:                        ; @data_sam_s16le
	.cfi_startproc
; %bb.0:
	ldr	w9, [x0]
	cmp	w9, w1
	csel	w8, w9, w1, lt
	add	w10, w8, w2, lsl #1
	cmp	w10, w9
	b.le	LBB0_2
; %bb.1:
	sub	w9, w9, w8
	cmp	w9, #0
	cinc	w9, w9, lt
	asr	w2, w9, #1
LBB0_2:
	cmp	w2, #1
	b.lt	LBB0_11
; %bb.3:
	ldr	x9, [x0, #8]
	sxtw	x10, w8
	mov	w8, w2
	cmp	w2, #8
	b.lo	LBB0_8
; %bb.4:
	lsl	x11, x8, #1
	add	x13, x3, x11
	add	x12, x9, x10
	add	x11, x11, x10
	add	x11, x9, x11
	cmp	x11, x3
	ccmp	x12, x13, #2, hi
	b.lo	LBB0_8
; %bb.5:
	and	x11, x8, #0xfffffff8
Lloh0:
	adrp	x13, lCPI0_0@PAGE
Lloh1:
	ldr	q0, [x13, lCPI0_0@PAGEOFF]
Lloh2:
	adrp	x13, lCPI0_1@PAGE
Lloh3:
	ldr	q1, [x13, lCPI0_1@PAGEOFF]
	movi.4s	v2, #127, lsl #8
	movi.4s	v3, #128, lsl #8
	mov	x13, x11
	mov	x14, x3
LBB0_6:                                 ; =>This Inner Loop Header: Depth=1
	ld2.8b	{ v4, v5 }, [x12], #16
	tbl.16b	v6, { v4 }, v0
	tbl.16b	v7, { v4 }, v1
	sshll.8h	v4, v5, #0
	sshll.4s	v5, v4, #8
	sshll2.4s	v4, v4, #8
	and.16b	v16, v4, v2
	and.16b	v17, v5, v2
	orr.16b	v7, v17, v7
	orr.16b	v6, v16, v6
	and.16b	v5, v5, v3
	and.16b	v4, v4, v3
	sub.4s	v4, v6, v4
	sub.4s	v5, v7, v5
	uzp1.8h	v4, v5, v4
	str	q4, [x14], #16
	subs	x13, x13, #8
	b.ne	LBB0_6
; %bb.7:
	cmp	x11, x8
	b.ne	LBB0_9
	b	LBB0_11
LBB0_8:
	mov	x11, #0
LBB0_9:
	lsl	x12, x11, #1
	add	x10, x12, x10
	add	x9, x10, x9
	add	x9, x9, #1
	add	x10, x3, x12
	sub	x8, x8, x11
LBB0_10:                                ; =>This Inner Loop Header: Depth=1
	ldurb	w11, [x9, #-1]
	ldrsb	w12, [x9]
	lsl	w13, w12, #8
	bfi	w11, w12, #8, #7
	and	w12, w13, #0x8000
	sub	w11, w11, w12
	strh	w11, [x10], #2
	add	x9, x9, #2
	subs	x8, x8, #1
	b.ne	LBB0_10
LBB0_11:
	ret
	.loh AdrpLdr	Lloh2, Lloh3
	.loh AdrpAdrp	Lloh0, Lloh2
	.loh AdrpLdr	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_data_sam_s16le
.subsections_via_symbols
