	.text
	.allow_optimizations
	.file	"3"
	.section	.text.__runCodelet_Cast2To1,"ax",@progbits
	.globl	__runCodelet_Cast2To1           # -- Begin function __runCodelet_Cast2To1
	.p2align	2
	.type	__runCodelet_Cast2To1,@function
__runCodelet_Cast2To1:                  # @__runCodelet_Cast2To1
	.worker
.Lfunc_begin0:
# %bb.0:                                # %entry
	setzi $m6, 128
	cmpult $m6, $m6, __worker_stack_max_growth_plus_one
	brz $m6, _stackoverflow
	add $m11, $m12, -128
	mov	$m8, $m15
	{
		get $m0, 1
		setzi $a0, 2
	}
	ld32 $m2, $m13, $m15, 5
	cmpeq $m3, $m2, 0
	setzi $m10, 1
	mov	$m4, $m2
	ld32 $m5, $m13, $m15, 4
	ld32 $m6, $m13, $m15, 7
	movnz	$m4, $m3, $m10
	sub $m3, 0, $m5
	ld32 $m1, $m13, $m15, 2
	ld32 $m5, $m13, $m15, 6
	cmpeq $m9, $m6, 0
	st32 $m6, $m11, $m15, 24                # 4-byte Folded Spill
	mul $m4, $m4, $m6
	and $m3, $m3, 255
	ld32 $m7, $m13, $m15, 0
	st32 $m5, $m11, $m15, 23                # 4-byte Folded Spill
	st32 $m9, $m11, $m15, 19                # 4-byte Folded Spill
	movnz	$m4, $m9, $m5
	st32 $m3, $m11, $m15, 3
	ld32 $a1, $m11, $m15, 3
	ld32 $m9, $m13, $m15, 1
	#APP
	put	9, $a0
	put	10, $a1
	#NO_APP
	st32 $m1, $m11, $m15, 30                # 4-byte Folded Spill
	brz $m1, .LBB0_6
# %bb.1:                                # %entry
	shl $m3, $m4, 1
	brz $m3, .LBB0_6
# %bb.2:                                # %land.rhs.i.i
	mov	$m5, $m4
	add $m3, $m7, $m3
	add $m3, $m3, -1
	shr $m3, $m3, 15
	shr $m4, $m9, 15
	cmpult $m3, $m3, $m4
	brz $m3, .LBB0_4
# %bb.3:
	setzi $m8, 1
	bri .LBB0_5
.LBB0_4:                                # %lor.rhs.i.i
	ld32 $m1, $m11, $m15, 30                # 4-byte Folded Reload
	add $m3, $m9, $m1
	add $m3, $m3, -1
	shr $m3, $m3, 15
	shr $m4, $m7, 15
	cmpult $m8, $m3, $m4
.LBB0_5:                                # %_ZL16separateElementsPKvjS0_j.exit.i
	mov	$m4, $m5
.LBB0_6:                                # %_ZL16separateElementsPKvjS0_j.exit.i
	and $m6, $m0, 7
	brz $m2, .LBB0_9
# %bb.7:                                # %if.then.i
	st32 $m10, $m11, $m15, 25               # 4-byte Folded Spill
	st32 $m4, $m11, $m15, 13                # 4-byte Folded Spill
	st32 $m8, $m11, $m15, 11                # 4-byte Folded Spill
	st32 $m9, $m11, $m15, 21                # 4-byte Folded Spill
	st32 $m7, $m11, $m15, 18                # 4-byte Folded Spill
	ld32 $m3, $m13, $m15, 3
	ld32 $m1, $m11, $m15, 19                # 4-byte Folded Reload
	movnz	$m3, $m1, $m15
	cmpeq $m8, $m3, 0
	shr $m7, $m3, 16
	movnz	$m7, $m8, $m2
	mul $m4, $m2, 192
	ld32 $m1, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m1, $m4
	cmpeq $m4, $m4, 0
	cmpult $m5, $m7, 33
	and $m0, $m5, $m4
	mov	$m5, $m6
	movnz	$m5, $m0, $m15
	st32 $m0, $m11, $m15, 20                # 4-byte Folded Spill
	cmpeq $m10, $m0, 1
	setzi $m9, 65535
	shl $m0, $m2, 5
	st32 $m0, $m11, $m15, 22                # 4-byte Folded Spill
	setzi $m4, 32
	st32 $m4, $m11, $m15, 28                # 4-byte Folded Spill
	brz $m10, .LBB0_11
# %bb.8:                                # %cond.end40.thread.i
	mov	$m10, $m15
	and $m1, $m3, $m9
	movnz	$m1, $m8, $m2
	cmpult $m3, $m5, $m1
	movnz	$m10, $m3, $m1
	setzi $m9, 1
	setzi $m0, 6
	st32 $m0, $m11, $m15, 25                # 4-byte Folded Spill
	st32 $m4, $m11, $m15, 29                # 4-byte Folded Spill
	st32 $m7, $m11, $m15, 27                # 4-byte Folded Spill
	bri .LBB0_19
.LBB0_9:                                # %if.end182.i
	ld32 $m0, $m11, $m15, 30                # 4-byte Folded Reload
	shr $m0, $m0, 3
	sub $m0, $m0, $m6
	add $m0, $m0, 5
	setzi $m1, 43691
	sort4x16lo $m3, $m0, $m15
	shr $m4, $m0, 16
	mul $m5, $m3, $m1
	mul $m1, $m4, $m1
	shr $m5, $m5, 16
	add $m1, $m1, $m5
	setzi $m5, 43690
	mov	$m2, $m6
	sort4x16lo $m6, $m1, $m15
	mul $m3, $m3, $m5
	shr $m1, $m1, 16
	mul $m4, $m4, $m5
	setzi $m5, 23
	add $m3, $m3, $m6
	cmpult $m0, $m5, $m0
	add $m1, $m4, $m1
	shr $m3, $m3, 16
	and $m0, $m8, $m0
	add $m1, $m1, $m3
	shl $m3, $m2, 3
	shl $m2, $m2, 4
	cmpeq $m0, $m0, 1
	shr $m4, $m1, 2
	add $m5, $m7, $m2
	add $m6, $m9, $m3
	mov	$m8, $m7
	brz $m0, .LBB0_13
# %bb.10:                               # %if.then194.i
	add $m7, $m4, -1
	#APP
	ld64step $ap0, $m15, $m5+=, 1
	ld64step $ap1, $m15, $m5+=, 11
	tapack $m0:1, $m5, $m15, $m6
	ld64step $apzero, $m15, $m5+=, 1
	mul $m2, $m7, 48
	add $m6, $m6, $m2
	setzi $m2, 12294
	{
		rpt $m7, 1
		fnop
	}

	{
		ld64step $ap1, $m15, $m5+=, 12
		f16v8tof8 $ap0, $aq0
	}

	{
		ldst64pace $ap0, $ap0, $m0:1+=, $m2, 6
		fnop
	}

	f16v8tof8 $ap1, $aq0
	st64step $ap1, $m15, $m6+=, 6

	#NO_APP
	bri .LBB0_14
.LBB0_11:                               # %cond.end40.i
	st32 $m15, $m11, $m15, 26               # 4-byte Folded Spill
	and $m3, $m3, $m9
	st32 $m6, $m11, $m15, 31                # 4-byte Folded Spill
	sub $m1, 5, $m6
	movnz	$m3, $m8, $m2
	mov	$m0, $m1
	add $m8, $m7, $m1
	setzi $m10, 43691
	sort4x16lo $m6, $m8, $m15
	shr $m1, $m8, 16
	mul $m8, $m6, $m10
	shr $m8, $m8, 16
	mul $m9, $m1, $m10
	add $m9, $m9, $m8
	setzi $m8, 43690
	mul $m6, $m6, $m8
	mul $m1, $m1, $m8
	sort4x16lo $m4, $m9, $m15
	shr $m9, $m9, 16
	add $m4, $m6, $m4
	add $m1, $m1, $m9
	shr $m4, $m4, 16
	add $m1, $m1, $m4
	cmpult $m4, $m5, $m3
	setzi $m6, 192
	st32 $m6, $m11, $m15, 29                # 4-byte Folded Spill
	shr $m1, $m1, 2
	st32 $m1, $m11, $m15, 27                # 4-byte Folded Spill
	setzi $m9, 6
	brz $m4, .LBB0_17
# %bb.12:                               # %cond.false52.i
	add $m1, $m3, $m0
	sort4x16lo $m3, $m1, $m15
	shr $m1, $m1, 16
	mul $m4, $m3, $m10
	mul $m6, $m1, $m10
	shr $m4, $m4, 16
	add $m4, $m6, $m4
	sort4x16lo $m6, $m4, $m15
	mul $m3, $m3, $m8
	shr $m4, $m4, 16
	mul $m1, $m1, $m8
	add $m3, $m3, $m6
	add $m1, $m1, $m4
	shr $m3, $m3, 16
	add $m1, $m1, $m3
	shr $m10, $m1, 2
	bri .LBB0_18
.LBB0_13:                               # %if.else.i
	#APP
	{
		rpt $m4, 3
		fnop
	}

	{
		ld64step $ap0, $m15, $m5+=, 1
		fnop
	}

	{
		ld64step $ap1, $m15, $m5+=, 11
		fnop
	}

	{
		nop
		f16v8tof8 $ap2, $aq0
	}

	{
		st64step $ap2, $m15, $m6+=, 6
		fnop
	}


	#NO_APP
.LBB0_14:                               # %if.end199.i
	mul $m0, $m4, 48
	add $m1, $m0, $m3
	ld32 $m0, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m0, $m1, $m0
	brz $m0, .LBB0_61
# %bb.15:                               # %if.end214.i
	mov	$m5, $m8
	ldb16 $a0, $m5, $m15, $m1
	sort4x16lo $a4, $a0, $azero
	{
		or $m0, $m1, 4
		mov	$a5, $azero
	}
	ld32 $m2, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m2, $m0, $m2
	brz $m2, .LBB0_46
# %bb.16:                               # %if.then218.i
	ldb16 $a0, $m5, $m15, $m0
	sort4x16lo $a6, $a0, $azero
	{
		bri .LBB0_47
		mov	$a7, $azero
	}
.LBB0_17:
	ld32 $m10, $m11, $m15, 26               # 4-byte Folded Reload
.LBB0_18:                               # %cond.end58.i
	ld32 $m6, $m11, $m15, 31                # 4-byte Folded Reload
.LBB0_19:                               # %cond.end58.i
	mov	$m3, $m15
	ld32 $m0, $m11, $m15, 22                # 4-byte Folded Reload
	mul $m1, $m0, $m6
	ld32 $m0, $m11, $m15, 20                # 4-byte Folded Reload
	movnz	$m3, $m0, $m1
	ld32 $m1, $m11, $m15, 30                # 4-byte Folded Reload
	st32 $m3, $m11, $m15, 31                # 4-byte Folded Spill
	cmpult $m1, $m3, $m1
	brz $m1, .LBB0_61
# %bb.20:                               # %cond.end58.i
	cmpult $m1, $m5, $m7
	brz $m1, .LBB0_61
# %bb.21:                               # %for.body.lr.ph.i
	mov	$m8, $m15
	mov	$m7, $m15
	mov	$m3, $m6
	ld32 $m0, $m11, $m15, 24                # 4-byte Folded Reload
	mul $m1, $m0, $m9
	shl $m0, $m1, 1
	mov	$m6, $m5
	ld32 $m9, $m11, $m15, 19                # 4-byte Folded Reload
	ld32 $m4, $m11, $m15, 29                # 4-byte Folded Reload
	movnz	$m0, $m9, $m4
	shl $m1, $m3, 5
	shl $m2, $m2, 4
	st32 $m2, $m11, $m15, 26                # 4-byte Folded Spill
	ld32 $m2, $m11, $m15, 20                # 4-byte Folded Reload
	movnz	$m8, $m2, $m1
	shl $m1, $m6, 5
	ld32 $m5, $m11, $m15, 31                # 4-byte Folded Reload
	add $m1, $m5, $m1
	ld32 $m2, $m11, $m15, 25                # 4-byte Folded Reload
	ld32 $m3, $m11, $m15, 22                # 4-byte Folded Reload
	mul $m2, $m2, $m3
	st32 $m2, $m11, $m15, 25                # 4-byte Folded Spill
	add $m2, $m5, $m3
	st32 $m2, $m11, $m15, 12                # 4-byte Folded Spill
	add $m2, $m10, -1
	mul $m3, $m10, $m4
	add $m3, $m1, $m3
	st32 $m3, $m11, $m15, 17                # 4-byte Folded Spill
	ld32 $m3, $m11, $m15, 21                # 4-byte Folded Reload
	add $m1, $m3, $m1
	st32 $m1, $m11, $m15, 22                # 4-byte Folded Spill
	ld32 $m1, $m11, $m15, 17                # 4-byte Folded Reload
	add $m1, $m3, $m1
	st32 $m1, $m11, $m15, 21                # 4-byte Folded Spill
	setzi $m1, 16
	ld32 $m3, $m11, $m15, 26                # 4-byte Folded Reload
	movnz	$m1, $m9, $m3
	shl $m1, $m1, 1
	st32 $m1, $m11, $m15, 10                # 4-byte Folded Spill
	mul $m9, $m2, $m0
	mul $m1, $m2, $m4
	add $m2, $m15, -32
	shl $m3, $m6, 4
	st32 $m3, $m11, $m15, 26                # 4-byte Folded Spill
	ld32 $m3, $m11, $m15, 24                # 4-byte Folded Reload
	mul $m3, $m6, $m3
	st32 $m3, $m11, $m15, 17                # 4-byte Folded Spill
	ld32 $m3, $m11, $m15, 26                # 4-byte Folded Reload
	add $m3, $m5, $m3
	st32 $m3, $m11, $m15, 16                # 4-byte Folded Spill
	cmpne $m5, $m9, $m2
	cmpne $m2, $m1, $m2
	and $m2, $m5, $m2
	st32 $m2, $m11, $m15, 6                 # 4-byte Folded Spill
	ld32 $m2, $m11, $m15, 22                # 4-byte Folded Reload
	add $m1, $m2, $m1
	add $m2, $m9, 31
	st32 $m2, $m11, $m15, 5                 # 4-byte Folded Spill
	add $m1, $m1, 31
	st32 $m1, $m11, $m15, 4                 # 4-byte Folded Spill
	st32 $m0, $m11, $m15, 14                # 4-byte Folded Spill
	shr $m0, $m0, 3
	shr $m1, $m4, 3
	add $m1, $m1, -3
	st32 $m1, $m11, $m15, 9                 # 4-byte Folded Spill
	setzi $m1, 192
	ld32 $m2, $m11, $m15, 28                # 4-byte Folded Reload
	ld32 $m3, $m11, $m15, 20                # 4-byte Folded Reload
	movnz	$m2, $m3, $m1
	st32 $m2, $m11, $m15, 28                # 4-byte Folded Spill
	ld32 $m1, $m11, $m15, 24                # 4-byte Folded Reload
	cmpne $m1, $m1, $m15
	st32 $m1, $m11, $m15, 15                # 4-byte Folded Spill
	ld32 $m1, $m11, $m15, 27                # 4-byte Folded Reload
	sub $m1, $m1, $m10
	st32 $m1, $m11, $m15, 20                # 4-byte Folded Spill
	add $m1, $m0, -514
	st32 $m1, $m11, $m15, 7                 # 4-byte Folded Spill
	add $m0, $m0, -3
	st32 $m0, $m11, $m15, 8                 # 4-byte Folded Spill
	ld32 $m0, $m11, $m15, 23                # 4-byte Folded Reload
	sub $m9, $m0, $m8
	st32 $m10, $m11, $m15, 26               # 4-byte Folded Spill
	bri .LBB0_25
.LBB0_22:                               # %if.then101.i
                                        #   in Loop: Header=BB0_25 Depth=1
	mov	$m0, $m2
	mov	$m1, $m10
	ld32 $m2, $m11, $m15, 29                # 4-byte Folded Reload
	call $m10, _ZL14zeroPackedRowsPhjj
.LBB0_23:                               # %cleanup165.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m10, $m11, $m15, 26               # 4-byte Folded Reload
.LBB0_24:                               # %cleanup165.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m1, $m11, $m15, 31                # 4-byte Folded Reload
	ld32 $m2, $m11, $m15, 25                # 4-byte Folded Reload
	add $m1, $m1, $m2
	ld32 $m0, $m11, $m15, 30                # 4-byte Folded Reload
	st32 $m1, $m11, $m15, 31                # 4-byte Folded Spill
	cmpult $m0, $m1, $m0
	ld32 $m1, $m11, $m15, 28                # 4-byte Folded Reload
	add $m8, $m8, $m1
	sub $m9, $m9, $m1
	add $m7, $m7, $m2
	brz $m0, .LBB0_61
.LBB0_25:                               # %for.body.i
                                        # =>This Inner Loop Header: Depth=1
	ld32 $m0, $m11, $m15, 27                # 4-byte Folded Reload
	cmpult $m0, $m10, $m0
	brz $m0, .LBB0_27
# %bb.26:                               # %if.then93.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m0, $m11, $m15, 21                # 4-byte Folded Reload
	add $m0, $m0, $m7
	ld32 $m1, $m11, $m15, 20                # 4-byte Folded Reload
	ld32 $m2, $m11, $m15, 29                # 4-byte Folded Reload
	call $m10, _ZL14zeroPackedRowsPhjj
	ld32 $m10, $m11, $m15, 26               # 4-byte Folded Reload
.LBB0_27:                               # %if.end.i
                                        #   in Loop: Header=BB0_25 Depth=1
	brz $m10, .LBB0_24
# %bb.28:                               # %if.end98.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m0, $m11, $m15, 22                # 4-byte Folded Reload
	add $m2, $m0, $m7
	ld32 $m0, $m11, $m15, 24                # 4-byte Folded Reload
	brz $m0, .LBB0_30
# %bb.29:                               # %if.end98.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m0, $m11, $m15, 23                # 4-byte Folded Reload
	cmpult $m0, $m8, $m0
	brz $m0, .LBB0_22
.LBB0_30:                               # %if.end102.i
                                        #   in Loop: Header=BB0_25 Depth=1
	add $m0, $m8, 32
	ld32 $m1, $m11, $m15, 17                # 4-byte Folded Reload
	add $m1, $m1, $m8
	ld32 $m3, $m11, $m15, 23                # 4-byte Folded Reload
	cmpult $m0, $m3, $m0
	ld32 $m3, $m11, $m15, 15                # 4-byte Folded Reload
	and $m0, $m3, $m0
	cmpeq $m3, $m0, 1
	ld32 $m0, $m11, $m15, 16                # 4-byte Folded Reload
	add $m0, $m0, $m7
	ld32 $m4, $m11, $m15, 19                # 4-byte Folded Reload
	movnz	$m1, $m4, $m0
	shl $m0, $m1, 1
	ld32 $m1, $m11, $m15, 18                # 4-byte Folded Reload
	add $m0, $m1, $m0
	brz $m3, .LBB0_32
# %bb.31:                               # %if.then117.i
                                        #   in Loop: Header=BB0_25 Depth=1
	st32 $m9, $m11, $m15, 1
	ld32 $m1, $m11, $m15, 29                # 4-byte Folded Reload
	st32 $m1, $m11, $m15, 0
	mov	$m1, $m2
	mov	$m2, $m10
	ld32 $m3, $m11, $m15, 14                # 4-byte Folded Reload
	call $m10, _ZL11castRowTailPKDhPhjjjj
	bri .LBB0_23
.LBB0_32:                               # %if.end119.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m1, $m11, $m15, 24                # 4-byte Folded Reload
	brnz $m1, .LBB0_35
# %bb.33:                               # %if.end119.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m1, $m11, $m15, 12                # 4-byte Folded Reload
	add $m1, $m1, $m7
	ld32 $m3, $m11, $m15, 13                # 4-byte Folded Reload
	cmpult $m1, $m3, $m1
	brz $m1, .LBB0_35
# %bb.34:                               # %if.then134.i
                                        #   in Loop: Header=BB0_25 Depth=1
	mov	$m1, $m15
	mov	$m3, $m15
	ld32 $m4, $m11, $m15, 29                # 4-byte Folded Reload
	ld32 $m5, $m11, $m15, 14                # 4-byte Folded Reload
	#APP
	{
		rpt $m10, 9
		fnop
	}

	{
		ld64 $ap0, $m0, $m1, 0
		fnop
	}

	{
		ld64 $ap1, $m0, $m1, 1
		fnop
	}

	{
		ld64 $ap0, $m0, $m1, 2
		f16v8tof8 $ap2, $aq0
	}

	{
		ld64 $ap1, $m0, $m1, 3
		fnop
	}

	{
		st64 $ap2, $m2, $m3, 0
		f16v8tof8 $ap3, $aq0
	}

	{
		st64 $ap3, $m2, $m3, 1
		zero	$ap2
	}

	{
		st64 $ap2, $m2, $m3, 2
		fnop
	}

	{
		st64 $ap2, $m2, $m3, 3
		fnop
	}

	{
		add $m1, $m1, $m5
		fnop
	}

	{
		add $m3, $m3, $m4
		fnop
	}


	#NO_APP
	bri .LBB0_24
.LBB0_35:                               # %if.end136.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m1, $m11, $m15, 10                # 4-byte Folded Reload
	add $m1, $m0, $m1
	setzi $m3, 1
	ld32 $m4, $m11, $m15, 11                # 4-byte Folded Reload
	brz $m4, .LBB0_40
.LBB0_36:                               # %lor.end.i
                                        #   in Loop: Header=BB0_25 Depth=1
	brz $m3, .LBB0_45
# %bb.37:                               # %lor.end.i
                                        #   in Loop: Header=BB0_25 Depth=1
	cmpult $m3, $m10, 16
	brnz $m3, .LBB0_45
# %bb.38:                               # %lor.end.i
                                        #   in Loop: Header=BB0_25 Depth=1
	add $m3, $m15, -512
	ld32 $m4, $m11, $m15, 7                 # 4-byte Folded Reload
	cmpult $m3, $m4, $m3
	brnz $m3, .LBB0_45
# %bb.39:                               # %if.then156.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m3, $m11, $m15, 14                # 4-byte Folded Reload
	st32 $m3, $m11, $m15, 1
	ld32 $m3, $m11, $m15, 29                # 4-byte Folded Reload
	st32 $m3, $m11, $m15, 0
	mov	$m3, $m10
	call $m10, _ZL14castPackedRowsPKDhS0_Phjjj
	bri .LBB0_23
.LBB0_40:                               # %lor.rhs.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m4, $m11, $m15, 6                 # 4-byte Folded Reload
	brz $m4, .LBB0_45
# %bb.41:                               # %land.rhs.i444.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m4, $m11, $m15, 5                 # 4-byte Folded Reload
	add $m4, $m4, $m0
	shr $m5, $m4, 15
	shr $m4, $m2, 15
	cmpult $m5, $m5, $m4
	brnz $m5, .LBB0_43
# %bb.42:                               # %_ZL16separateElementsPKvjS0_j.exit451.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m5, $m11, $m15, 4                 # 4-byte Folded Reload
	add $m5, $m5, $m7
	shr $m5, $m5, 15
	shr $m6, $m0, 15
	cmpult $m5, $m5, $m6
	brz $m5, .LBB0_45
.LBB0_43:                               # %land.rhs.i460.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m5, $m11, $m15, 5                 # 4-byte Folded Reload
	add $m5, $m5, $m1
	shr $m5, $m5, 15
	cmpult $m4, $m5, $m4
	brnz $m4, .LBB0_36
# %bb.44:                               # %lor.rhs.i466.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m3, $m11, $m15, 4                 # 4-byte Folded Reload
	add $m3, $m3, $m7
	shr $m3, $m3, 15
	shr $m4, $m1, 15
	cmpult $m3, $m3, $m4
	bri .LBB0_36
.LBB0_45:                               # %if.end157.i
                                        #   in Loop: Header=BB0_25 Depth=1
	ld32 $m3, $m11, $m15, 9                 # 4-byte Folded Reload
	ld32 $m4, $m11, $m15, 8                 # 4-byte Folded Reload
	#APP
	{
		rpt $m10, 11
		fnop
	}

	{
		ld64step $ap0, $m15, $m0+=, 1
		fnop
	}

	{
		ld64step $ap1, $m15, $m0+=, 1
		fnop
	}

	{
		ld64step $ap0, $m15, $m0+=, 1
		f16v8tof8 $ap2, $aq0
	}

	{
		ld64step $ap1, $m15, $m0+=, $m4
		fnop
	}

	{
		st64step $ap2, $m15, $m2+=, 1
		f16v8tof8 $ap3, $aq0
	}

	{
		ld64step $ap0, $m15, $m1+=, 1
		fnop
	}

	{
		ld64step $ap1, $m15, $m1+=, 1
		fnop
	}

	{
		st64step $ap3, $m15, $m2+=, 1
		f16v8tof8 $ap2, $aq0
	}

	{
		ld64step $ap0, $m15, $m1+=, 1
		fnop
	}

	{
		ld64step $ap1, $m15, $m1+=, $m4
		fnop
	}

	{
		st64step $ap2, $m15, $m2+=, 1
		f16v8tof8 $ap3, $aq0
	}

	{
		st64step $ap3, $m15, $m2+=, $m3
		fnop
	}


	#NO_APP
	bri .LBB0_24
.LBB0_46:
	zero	$ap3
.LBB0_47:                               # %for.inc224.i
	or $m3, $m1, 1
	ld32 $m4, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m3, $m4
	brz $m4, .LBB0_49
# %bb.48:                               # %if.then211.1.i
	ldb16 $a0, $m5, $m15, $m3
	sort4x16lo $a4, $a4, $a0
.LBB0_49:                               # %if.end214.1.i
	or $m3, $m1, 5
	ld32 $m4, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m3, $m4
	brz $m4, .LBB0_51
# %bb.50:                               # %if.then218.1.i
	ldb16 $a0, $m5, $m15, $m3
	sort4x16lo $a6, $a6, $a0
.LBB0_51:                               # %for.inc224.1.i
	or $m3, $m1, 2
	ld32 $m4, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m3, $m4
	brz $m4, .LBB0_53
# %bb.52:                               # %if.then211.2.i
	ldb16 $a0, $m5, $m15, $m3
	roll16 $a0, $a5, $a0
	swap16	$a5, $a0
.LBB0_53:                               # %if.end214.2.i
	or $m3, $m1, 6
	ld32 $m4, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m3, $m4
	brz $m4, .LBB0_55
# %bb.54:                               # %if.then218.2.i
	ldb16 $a0, $m5, $m15, $m3
	roll16 $a0, $a7, $a0
	swap16	$a7, $a0
.LBB0_55:                               # %for.inc224.2.i
	or $m3, $m1, 3
	ld32 $m4, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m3, $m4
	brz $m4, .LBB0_57
# %bb.56:                               # %if.then211.3.i
	ldb16 $a0, $m5, $m15, $m3
	sort4x16lo $a5, $a5, $a0
.LBB0_57:                               # %if.end214.3.i
	or $m3, $m1, 7
	ld32 $m4, $m11, $m15, 30                # 4-byte Folded Reload
	cmpult $m4, $m3, $m4
	brz $m4, .LBB0_59
# %bb.58:                               # %if.then218.3.i
	ldb16 $a0, $m5, $m15, $m3
	sort4x16lo $a7, $a7, $a0
.LBB0_59:                               # %for.body236.i
	ld32 $m3, $m11, $m15, 30                # 4-byte Folded Reload
	sub $m3, $m3, $m1
	#APP
	mov	$ap0, $ap2
	mov	$ap1, $ap3
	f16v8tof8 $ap2, $aq0
	#NO_APP
	cmpult $m4, $m3, 4
	brnz $m4, .LBB0_62
# %bb.60:                               # %if.then245.i
	mov	$m4, $a4
	mov	$m5, $a5
	st32 $m4, $m9, $m1, 0
	brnz $m2, .LBB0_63
.LBB0_61:                               # %_ZN8Cast2To17computeEj.exit
	exitz $m15
.LBB0_62:                               # %if.else247.i
	shl $m3, $m3, 3
	add $m4, $m15, -1
	shl $m3, $m4, $m3
	ld32 $m4, $m9, $m1, 0
	and $m4, $m4, $m3
	mov	$m6, $a4
	mov	$m7, $a5
	andc $m3, $m6, $m3
	or $m4, $m4, $m3
	st32 $m4, $m9, $m1, 0
	brz $m2, .LBB0_61
.LBB0_63:                               # %for.body236.1.i
	ld32 $m1, $m11, $m15, 30                # 4-byte Folded Reload
	sub $m1, $m1, $m0
	setzi $m2, 3
	cmpult $m2, $m2, $m1
	brz $m2, .LBB0_65
# %bb.64:                               # %if.then245.1.i
	mov	$m2, $a4
	mov	$m3, $a5
	st32 $m3, $m9, $m0, 0
	exitz $m15
.LBB0_65:                               # %if.else247.1.i
	shl $m1, $m1, 3
	add $m2, $m15, -1
	shl $m1, $m2, $m1
	ld32 $m2, $m9, $m0, 0
	and $m2, $m2, $m1
	mov	$m4, $a4
	mov	$m5, $a5
	andc $m1, $m5, $m1
	or $m3, $m2, $m1
	st32 $m3, $m9, $m0, 0
	exitz $m15
.Lfunc_end0:
	.size	__runCodelet_Cast2To1, .Lfunc_end0-__runCodelet_Cast2To1
	.section	.stack_sizes,"o",@progbits,.text.__runCodelet_Cast2To1
	.long	.Lfunc_begin0
	.ascii	"\200\001"
	.section	.text.__runCodelet_Cast2To1,"ax",@progbits
                                        # -- End function
	.section	.text._ZL14zeroPackedRowsPhjj,"ax",@progbits
	.p2align	2                               # -- Begin function _ZL14zeroPackedRowsPhjj
	.type	_ZL14zeroPackedRowsPhjj,@function
_ZL14zeroPackedRowsPhjj:                # @_ZL14zeroPackedRowsPhjj
	.worker
.Lfunc_begin1:
# %bb.0:                                # %entry
	mov	$m3, $m15
	#APP
	{
		rpt $m1, 4
		fnop
	}

	{
		st64 $apzero, $m0, $m3, 0
		fnop
	}

	{
		st64 $apzero, $m0, $m3, 1
		fnop
	}

	{
		st64 $apzero, $m0, $m3, 2
		fnop
	}

	{
		st64 $apzero, $m0, $m3, 3
		fnop
	}

	{
		add $m3, $m3, $m2
		fnop
	}


	#NO_APP
	br $m10
.Lfunc_end1:
	.size	_ZL14zeroPackedRowsPhjj, .Lfunc_end1-_ZL14zeroPackedRowsPhjj
	.section	.stack_sizes,"o",@progbits,.text._ZL14zeroPackedRowsPhjj
	.long	.Lfunc_begin1
	.byte	0
	.section	.text._ZL14zeroPackedRowsPhjj,"ax",@progbits
                                        # -- End function
	.section	.text._ZL11castRowTailPKDhPhjjjj,"ax",@progbits
	.p2align	2                               # -- Begin function _ZL11castRowTailPKDhPhjjjj
	.type	_ZL11castRowTailPKDhPhjjjj,@function
_ZL11castRowTailPKDhPhjjjj:             # @_ZL11castRowTailPKDhPhjjjj
	.worker
.Lfunc_begin2:
# %bb.0:                                # %entry
	add $m11, $m11, -16
	sub $m6, $m12, $m11
	cmpult $m6, $m6, __worker_stack_max_growth_plus_one
	brz $m6, _stackoverflow
	st32 $m8, $m11, $m15, 3                 # 4-byte Folded Spill
	st32 $m9, $m11, $m15, 2                 # 4-byte Folded Spill
	st32 $m10, $m11, $m15, 1                # 4-byte Folded Spill
	st32 $m7, $m11, $m15, 0                 # 4-byte Folded Spill
	ld32 $m5, $m11, $m15, 5
	setzi $m4, 7
	cmpult $m6, $m4, $m5
	ld32 $m4, $m11, $m15, 4
	brnz $m6, .LBB2_4
# %bb.1:                                # %if.else
	brz $m5, .LBB2_3
# %bb.2:                                # %if.then5
	mov	$m5, $m15
	mov	$m7, $m15
	add $m6, $m1, 8
	#APP
	zero	$ap1
	{
		rpt $m2, 3
		fnop
	}

	{
		ld64 $ap0, $m0, $m5, 0
		fnop
	}

	{
		add $m5, $m5, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m1, $m7, 0
		fnop
	}

	{
		add $m7, $m7, $m4
		fnop
	}


	#NO_APP
	bri .LBB2_6
.LBB2_4:                                # %if.end9
	mov	$m6, $m15
	mov	$m7, $m15
	setzi $m8, 15
	#APP
	{
		rpt $m2, 4
		fnop
	}

	{
		ld64 $ap0, $m0, $m6, 0
		fnop
	}

	{
		ld64 $ap1, $m0, $m6, 1
		fnop
	}

	{
		add $m6, $m6, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m1, $m7, 0
		fnop
	}

	{
		add $m7, $m7, $m4
		fnop
	}


	#NO_APP
	cmpult $m7, $m8, $m5
	add $m8, $m0, 16
	add $m6, $m1, 8
	brnz $m7, .LBB2_8
# %bb.5:                                # %if.else.1
	setzi $m0, 8
	cmpult $m0, $m0, $m5
	brz $m0, .LBB2_6
# %bb.7:                                # %if.then5.1
	mov	$m0, $m15
	mov	$m5, $m15
	add $m7, $m1, 16
	#APP
	zero	$ap1
	{
		rpt $m2, 3
		fnop
	}

	{
		ld64 $ap0, $m8, $m0, 0
		fnop
	}

	{
		add $m0, $m0, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m6, $m5, 0
		fnop
	}

	{
		add $m5, $m5, $m4
		fnop
	}


	#NO_APP
	bri .LBB2_10
.LBB2_8:                                # %if.end9.1
	mov	$m7, $m15
	mov	$m9, $m15
	#APP
	{
		rpt $m2, 4
		fnop
	}

	{
		ld64 $ap0, $m8, $m7, 0
		fnop
	}

	{
		ld64 $ap1, $m8, $m7, 1
		fnop
	}

	{
		add $m7, $m7, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m6, $m9, 0
		fnop
	}

	{
		add $m9, $m9, $m4
		fnop
	}


	#NO_APP
	setzi $m6, 23
	cmpult $m6, $m6, $m5
	add $m8, $m0, 32
	add $m7, $m1, 16
	brnz $m6, .LBB2_12
# %bb.9:                                # %if.else.2
	setzi $m0, 16
	cmpult $m0, $m0, $m5
	brz $m0, .LBB2_10
# %bb.11:                               # %if.then5.2
	mov	$m5, $m15
	mov	$m6, $m15
	add $m0, $m1, 24
	#APP
	zero	$ap1
	{
		rpt $m2, 3
		fnop
	}

	{
		ld64 $ap0, $m8, $m5, 0
		fnop
	}

	{
		add $m5, $m5, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m7, $m6, 0
		fnop
	}

	{
		add $m6, $m6, $m4
		fnop
	}


	#NO_APP
	bri .LBB2_15
.LBB2_3:                                # %if.else8
	mov	$m0, $m15
	add $m6, $m1, 8
	#APP
	zero	$ap0
	{
		rpt $m2, 1
		fnop
	}

	{
		st64 $ap0, $m1, $m0, 0
		fnop
	}

	{
		add $m0, $m0, $m4
		fnop
	}


	#NO_APP
.LBB2_6:                                # %if.else8.1
	mov	$m0, $m15
	add $m7, $m1, 16
	#APP
	zero	$ap0
	{
		rpt $m2, 1
		fnop
	}

	{
		st64 $ap0, $m6, $m0, 0
		fnop
	}

	{
		add $m0, $m0, $m4
		fnop
	}


	#NO_APP
.LBB2_10:                               # %if.else8.2
	mov	$m3, $m15
	add $m0, $m1, 24
	#APP
	zero	$ap0
	{
		rpt $m2, 1
		fnop
	}

	{
		st64 $ap0, $m7, $m3, 0
		fnop
	}

	{
		add $m3, $m3, $m4
		fnop
	}


	#NO_APP
.LBB2_15:                               # %if.else8.3
	mov	$m1, $m15
	#APP
	zero	$ap0
	{
		rpt $m2, 1
		fnop
	}

	{
		st64 $ap0, $m0, $m1, 0
		fnop
	}

	{
		add $m1, $m1, $m4
		fnop
	}


	#NO_APP
.LBB2_17:                               # %if.end9.3
	ld32 $m7, $m11, $m15, 0                 # 4-byte Folded Reload
	ld32 $m10, $m11, $m15, 1                # 4-byte Folded Reload
	ld32 $m9, $m11, $m15, 2                 # 4-byte Folded Reload
	ld32 $m8, $m11, $m15, 3                 # 4-byte Folded Reload
	add $m11, $m11, 16
	br $m10
.LBB2_12:                               # %if.end9.2
	mov	$m9, $m15
	mov	$m10, $m15
	add $m6, $m0, 48
	#APP
	{
		rpt $m2, 4
		fnop
	}

	{
		ld64 $ap0, $m8, $m9, 0
		fnop
	}

	{
		ld64 $ap1, $m8, $m9, 1
		fnop
	}

	{
		add $m9, $m9, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m7, $m10, 0
		fnop
	}

	{
		add $m10, $m10, $m4
		fnop
	}


	#NO_APP
	cmpult $m7, $m5, 32
	add $m0, $m1, 24
	brz $m7, .LBB2_13
# %bb.14:                               # %if.else.3
	setzi $m1, 24
	cmpult $m1, $m1, $m5
	brz $m1, .LBB2_15
# %bb.16:                               # %if.then5.3
	mov	$m1, $m15
	mov	$m5, $m15
	#APP
	zero	$ap1
	{
		rpt $m2, 3
		fnop
	}

	{
		ld64 $ap0, $m6, $m1, 0
		fnop
	}

	{
		add $m1, $m1, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m0, $m5, 0
		fnop
	}

	{
		add $m5, $m5, $m4
		fnop
	}


	#NO_APP
	bri .LBB2_17
.LBB2_13:                               # %if.then.3
	mov	$m1, $m15
	mov	$m5, $m15
	#APP
	{
		rpt $m2, 4
		fnop
	}

	{
		ld64 $ap0, $m6, $m1, 0
		fnop
	}

	{
		ld64 $ap1, $m6, $m1, 1
		fnop
	}

	{
		add $m1, $m1, $m3
		f16v8tof8 $ap2, $aq0
	}

	{
		st64 $ap2, $m0, $m5, 0
		fnop
	}

	{
		add $m5, $m5, $m4
		fnop
	}


	#NO_APP
	bri .LBB2_17
.Lfunc_end2:
	.size	_ZL11castRowTailPKDhPhjjjj, .Lfunc_end2-_ZL11castRowTailPKDhPhjjjj
	.section	.stack_sizes,"o",@progbits,.text._ZL11castRowTailPKDhPhjjjj
	.long	.Lfunc_begin2
	.byte	16
	.section	.text._ZL11castRowTailPKDhPhjjjj,"ax",@progbits
                                        # -- End function
	.section	.text._ZL14castPackedRowsPKDhS0_Phjjj,"ax",@progbits
	.p2align	2                               # -- Begin function _ZL14castPackedRowsPKDhS0_Phjjj
	.type	_ZL14castPackedRowsPKDhS0_Phjjj,@function
_ZL14castPackedRowsPKDhS0_Phjjj:        # @_ZL14castPackedRowsPKDhS0_Phjjj
	.worker
.Lfunc_begin3:
# %bb.0:                                # %entry
	add $m11, $m11, -32
	sub $m6, $m12, $m11
	cmpult $m6, $m6, __worker_stack_max_growth_plus_one
	brz $m6, _stackoverflow
	st32 $m8, $m11, $m15, 7                 # 4-byte Folded Spill
	st32 $m9, $m11, $m15, 6                 # 4-byte Folded Spill
	st32 $m10, $m11, $m15, 5                # 4-byte Folded Spill
	st64 $ap3, $m11, $m15, 1                # 8-byte Folded Spill
	st32 $m7, $m11, $m15, 1                 # 4-byte Folded Spill
	mov	$m4, $m2
	mov	$m5, $m1
	mov	$m6, $m0
	ld32 $m0, $m11, $m15, 8
	ld32 $m1, $m11, $m15, 9
	shl $m2, $m0, 17
	setzi $m7, 1048575
	shr $m1, $m1, 3
	andc $m2, $m2, $m7
	or $m7, $m15, 4293918720
	add $m8, $m1, -2
	add $m1, $m2, $m7
	add $m7, $m3, -1
	or $m1, $m1, $m8
	mul $m0, $m7, $m0
	or $m9, $m1, 2048
	add $m10, $m4, $m0
	#APP
	ld64step $ap0, $m15, $m6+=, 1
	ld64step $ap1, $m15, $m6+=, 2
	ld64step $ap2, $m15, $m5+=, 1
	ld64step $ap3, $m15, $m5+=, 2
	add $m0, $m6, -8
	tapack $m0:1, $m0, $m15, $m4
	add $m2, $m5, -8
	add $m3, $m4, 16
	tapack $m2:3, $m2, $m15, $m3
	{
		rpt $m7, 7
		fnop
	}

	{
		ld64step $ap1, $m15, $m6+=, $m8
		f16v8tof8 $ap0, $aq0
	}

	{
		ldst64pace $ap0, $ap0, $m0:1+=, $m9, 1
		fnop
	}

	{
		ld64step $ap1, $m15, $m6+=, 2
		f16v8tof8 $ap0, $aq0
	}

	{
		ldst64pace $ap0, $ap0, $m0:1+=, $m9, 14
		fnop
	}

	{
		ld64step $ap3, $m15, $m5+=, $m8
		f16v8tof8 $ap2, $aq1
	}

	{
		ldst64pace $ap2, $ap2, $m2:3+=, $m9, 1
		fnop
	}

	{
		ld64step $ap3, $m15, $m5+=, 2
		f16v8tof8 $ap2, $aq1
	}

	{
		ldst64pace $ap2, $ap2, $m2:3+=, $m9, 14
		fnop
	}

	{
		ld64 $ap1, $m6, $m15, 0
		f16v8tof8 $ap0, $aq0
	}

	{
		ldst64pace $ap0, $ap0, $m0:1+=, $m9, 1
		fnop
	}

	{
		nop
		f16v8tof8 $ap1, $aq0
	}

	{
		ld64 $ap3, $m5, $m15, 0
		f16v8tof8 $ap2, $aq1
	}

	{
		ldst64pace $ap2, $ap2, $m2:3+=, $m9, 1
		fnop
	}

	{
		st64 $ap1, $m10, $m15, 1
		f16v8tof8 $ap3, $aq1
	}

	{
		st64 $ap3, $m10, $m15, 3
		fnop
	}


	#NO_APP
	ld32 $m7, $m11, $m15, 1                 # 4-byte Folded Reload
	ld64 $ap3, $m11, $m15, 1                # 8-byte Folded Reload
	ld32 $m10, $m11, $m15, 5                # 4-byte Folded Reload
	ld32 $m9, $m11, $m15, 6                 # 4-byte Folded Reload
	ld32 $m8, $m11, $m15, 7                 # 4-byte Folded Reload
	add $m11, $m11, 32
	br $m10
.Lfunc_end3:
	.size	_ZL14castPackedRowsPKDhS0_Phjjj, .Lfunc_end3-_ZL14castPackedRowsPKDhS0_Phjjj
	.section	.stack_sizes,"o",@progbits,.text._ZL14castPackedRowsPKDhS0_Phjjj
	.long	.Lfunc_begin3
	.byte	32
	.section	.text._ZL14castPackedRowsPKDhS0_Phjjj,"ax",@progbits
                                        # -- End function
	.ident	"clang version 16.0.0 (git@github.com:Software-GCAI/llvm-project.git 6343a843cd5af31429c62a83b6ba249a74d36969)"
	.section	".note.GNU-stack","",@progbits
	.addrsig
