	.text
	.allow_optimizations
	.file	"3"
	.section	.text.__runCodelet_LayerNormF8,"ax",@progbits
	.globl	__runCodelet_LayerNormF8        # -- Begin function __runCodelet_LayerNormF8
	.p2align	2
	.type	__runCodelet_LayerNormF8,@function
__runCodelet_LayerNormF8:               # @__runCodelet_LayerNormF8
	.worker
.Lfunc_begin0:
# %bb.0:                                # %entry
	setzi $m6, 40
	cmpult $m6, $m6, __worker_stack_max_growth_plus_one
	brz $m6, _stackoverflow
	add $m11, $m12, -40
	get $m0, 1
	ld32 $m3, $m13, $m15, 7
	and $m0, $m0, 7
	ld32 $m1, $m13, $m15, 6
	ld32 $m5, $m13, $m15, 0
	ld32 $m2, $m13, $m15, 5
	brz $m3, .LBB0_6
# %bb.1:                                # %for.body.preheader.i
	ld64 $ap0, $m1, $m15, 0
	{
		ld64 $ap1, $m1, $m15, 1
		f32v2add $ap0, $ap0, $apzero
	}
	{
		ld64 $ap1, $m1, $m15, 2
		f32v2add $ap0, $ap0, $ap1
	}
	{
		ld64 $ap1, $m1, $m15, 3
		f32v2add $ap0, $ap0, $ap1
	}
	{
		ld64 $ap1, $m1, $m15, 4
		f32v2add $ap0, $ap0, $ap1
	}
	{
		ld64 $ap1, $m1, $m15, 5
		f32v2add $ap0, $ap0, $ap1
	}
	{
		cmpeq $m3, $m3, 1
		f32v2add $ap0, $ap0, $ap1
	}
	{
		st32 $m2, $m11, $m15, 0
		f32add $a0, $a0, $a1
	}
	ld32 $a1, $m11, $m15, 0
	f32fromui32 $a1, $a1
	{
		brz $m3, .LBB0_2
		f32div $a0, $a0, $a1
	}
# %bb.13:                               # %if.then11.i
	cmpult $m3, $m2, 96
	brnz $m3, .LBB0_16
# %bb.14:                               # %if.then11.i
	or $m3, $m2, $m5
	and $m3, $m3, 7
	brnz $m3, .LBB0_16
# %bb.15:                               # %if.then.i75.i
	mov	$m3, $m15
	{
		shr $m2, $m2, 2
		f32sub $a7, $azero, $a0
	}
	sub $m4, $m2, $m0
	add $m2, $m11, 32
	add $m4, $m4, 5
	setzi $m6, 43691
	sort4x16lo $m7, $m4, $m15
	shr $m4, $m4, 16
	mul $m8, $m7, $m6
	mul $m6, $m4, $m6
	shr $m8, $m8, 16
	add $m6, $m6, $m8
	setzi $m8, 43690
	mul $m7, $m7, $m8
	mul $m4, $m4, $m8
	sort4x16lo $m8, $m6, $m15
	shr $m6, $m6, 16
	add $m7, $m7, $m8
	add $m4, $m4, $m6
	shr $m6, $m7, 16
	shl $m7, $m0, 3
	add $m4, $m4, $m6
	add $m5, $m5, $m7
	shr $m4, $m4, 2
	#APP
	setzi $a0, 8
	put	1, $a0
	mov	$a6, $a7
	{
		rpt $m4, 5
		fnop
	}

	{
		ld64step $ap2, $m15, $m5+=, 6
		fnop
	}

	{
		nop
		f16v2tof32 $ap0, $a4
	}

	{
		nop
		f16v2tof32 $ap1, $a5
	}

	{
		nop
		f32v2add $ap0, $a6:B, $ap0
	}

	{
		nop
		f32v2add $ap1, $a6:B, $ap1
	}

	{
		nop
		f32v4sqacc $aq0
	}

	f32v2gina $ap0, $apzero, 0
	f32v2gina $ap1, $apzero, 0
	f32v2add $ap0, $ap0, $ap1
	st64 $ap0, $m2, $m15, 0

	#NO_APP
	ld64 $ap3, $m11, $m15, 4
	bri .LBB0_18
.LBB0_6:                                # %if.then.i
	cmpult $m3, $m2, 96
	brnz $m3, .LBB0_9
# %bb.7:                                # %if.then.i
	or $m3, $m2, $m5
	and $m3, $m3, 7
	brnz $m3, .LBB0_9
# %bb.8:                                # %if.then.i.i
	mov	$m3, $m15
	shr $m4, $m2, 3
	add $m2, $m11, 32
	sub $m4, $m4, $m0
	add $m4, $m4, 5
	setzi $m6, 43691
	sort4x16lo $m7, $m4, $m15
	shr $m4, $m4, 16
	mul $m8, $m7, $m6
	mul $m6, $m4, $m6
	shr $m8, $m8, 16
	add $m6, $m6, $m8
	setzi $m8, 43690
	mul $m7, $m7, $m8
	mul $m4, $m4, $m8
	sort4x16lo $m8, $m6, $m15
	shr $m6, $m6, 16
	add $m7, $m7, $m8
	add $m4, $m4, $m6
	shr $m6, $m7, 16
	shl $m7, $m0, 4
	add $m4, $m4, $m6
	add $m5, $m5, $m7
	shr $m4, $m4, 2
	#APP
	setzi $a0, 8
	put	1, $a0
	{
		rpt $m4, 2
		fnop
	}

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

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

	{
		nop
		f16v8acc $aq0
	}

	f32v2gina $ap0, $apzero, 0
	f32v2gina $ap1, $apzero, 0
	f32v2add $ap0, $ap0, $ap1
	f32v2gina $ap1, $apzero, 0
	f32v2add $ap0, $ap0, $ap1
	f32v2gina $ap1, $apzero, 0
	f32v2add $ap0, $ap0, $ap1
	st64 $ap0, $m2, $m15, 0

	#NO_APP
	ld64 $ap2, $m11, $m15, 4
	st64 $ap2, $m1, $m15, $m0
	exitz $m15
.LBB0_2:                                # %for.body20.preheader.i
	{
		ld64 $ap1, $m1, $m15, 6
		setzi $a4, 407485
	}
	{
		ld32 $m3, $m13, $m15, 9
		f32v2add $ap1, $ap1, $apzero
	}
	{
		sub $m3, 0, $m3
		or $a4, $a4, 897581056
	}
	{
		and $m3, $m3, 255
		setzi $a5, 2
	}
	f32sub $a0, $azero, $a0
	st32 $a0, $m11, $m15, 7                 # 4-byte Folded Spill
	ld64 $ap3, $m1, $m15, 7
	{
		ld64 $ap3, $m1, $m15, 8
		f32v2add $ap1, $ap1, $ap3
	}
	{
		ld64 $ap3, $m1, $m15, 9
		f32v2add $ap1, $ap1, $ap3
	}
	{
		ld64 $ap3, $m1, $m15, 10
		f32v2add $ap1, $ap1, $ap3
	}
	{
		ld64 $ap3, $m1, $m15, 11
		f32v2add $ap1, $ap1, $ap3
	}
	st32 $m3, $m11, $m15, 0
	ld32 $a0, $m11, $m15, 0
	#APP
	put	9, $a5
	put	10, $a0
	#NO_APP
	f32v2add $ap1, $ap1, $ap3
	{
		ld32 $m4, $m13, $m15, 4
		f32add $a0, $a2, $a3
	}
	{
		cmpeq $m7, $m4, 1
		f32div $a0, $a0, $a1
	}
	f32add $a0, $a0, $a4
	#APP
	f32oorx $a0, $a0
	#NO_APP
	ld32 $m3, $m13, $m15, 1
	ld32 $m9, $m13, $m15, 2
	ld32 $a1, $m11, $m15, 7                 # 4-byte Folded Reload
	st32 $a1, $m11, $m15, 8
	ld32 $m10, $m13, $m15, 3
	st32 $a0, $m11, $m15, 9
	ld32 $m8, $m13, $m15, 8
	ld32 $m1, $m13, $m15, 10
	st32 $m10, $m11, $m15, 6                # 4-byte Folded Spill
	brnz $m7, .LBB0_4
# %bb.3:                                # %for.body20.preheader.i
	brz $m1, .LBB0_4
# %bb.19:                               # %if.else.i.i
	shl $m7, $m0, 2
	cmpult $m6, $m7, $m2
	brz $m6, .LBB0_24
# %bb.20:                               # %for.body.i.i.preheader
	st32 $m1, $m11, $m15, 2                 # 4-byte Folded Spill
	st32 $m0, $m11, $m15, 1                 # 4-byte Folded Spill
	shl $m6, $m0, 3
	add $m0, $m11, 32
	st32 $m0, $m11, $m15, 5                 # 4-byte Folded Spill
	add $m9, $m9, $m6
	add $m3, $m3, $m6
	add $m5, $m5, $m6
	setzi $m0, 1
	st32 $m0, $m11, $m15, 4                 # 4-byte Folded Spill
	st32 $m8, $m11, $m15, 7                 # 4-byte Folded Spill
	st32 $m4, $m11, $m15, 3                 # 4-byte Folded Spill
.LBB0_21:                               # %for.body.i.i
                                        # =>This Inner Loop Header: Depth=1
	shr $m0, $m7, 5
	mul $m0, $m0, $m4
	ld32 $m1, $m11, $m15, 7                 # 4-byte Folded Reload
	add $m0, $m0, $m1
	shl $m0, $m0, 5
	mov	$m4, $m2
	and $m2, $m7, 28
	or $m0, $m0, $m2
	add $m7, $m7, 24
	add $m0, $m10, $m0
	mov	$m2, $m5
	add $m5, $m5, 48
	mov	$m1, $m9
	add $m9, $m9, 48
	mov	$m10, $m3
	ld32 $m6, $m11, $m15, 5                 # 4-byte Folded Reload
	ld32 $m8, $m11, $m15, 4                 # 4-byte Folded Reload
	#APP
	ld32 $a6, $m6, $m15, 0
	ld32 $a7, $m6, $m15, 1
	{
		rpt $m8, 20
		fnop
	}

	{
		ld32step $a0, $m15, $m2+=, 1
		fnop
	}

	{
		nop
		f16v2tof32 $ap0, $a0
	}

	{
		nop
		f32v2add $ap0, $a6:B, $ap0
	}

	{
		ld32step $a2, $m15, $m10+=, 1
		f32v2mul $ap0, $a7:B, $ap0
	}

	{
		nop
		f16v2tof32 $ap1, $a2
	}

	{
		ld32step $a4, $m15, $m1+=, 1
		f32v2mul $ap0, $ap0, $ap1
	}

	{
		nop
		f16v2tof32 $ap1, $a4
	}

	{
		nop
		f32v2add $ap0, $ap0, $ap1
	}

	{
		nop
		f32v2tof16 $a5, $ap0
	}

	{
		ld32step $a0, $m15, $m2+=, 11
		f16v2tof8 $a5, $a5
	}

	{
		nop
		f16v2tof32 $ap0, $a0
	}

	{
		nop
		f32v2add $ap0, $a6:B, $ap0
	}

	{
		ld32step $a2, $m15, $m10+=, 11
		f32v2mul $ap0, $a7:B, $ap0
	}

	{
		nop
		f16v2tof32 $ap1, $a2
	}

	{
		ld32step $a4, $m15, $m1+=, 11
		f32v2mul $ap0, $ap0, $ap1
	}

	{
		nop
		f16v2tof32 $ap1, $a4
	}

	{
		nop
		f32v2add $ap0, $ap0, $ap1
	}

	{
		nop
		f32v2tof16 $a0, $ap0
	}

	{
		nop
		f16v2tof8 $a0, $a0
	}

	{
		nop
		sort4x16lo $a0, $a5, $a0
	}

	{
		st32step $a0, $m15, $m0+=, 6
		fnop
	}


	#NO_APP
	ld32 $m10, $m11, $m15, 6                # 4-byte Folded Reload
	mov	$m2, $m4
	ld32 $m4, $m11, $m15, 3                 # 4-byte Folded Reload
	add $m3, $m3, 48
	cmpult $m0, $m7, $m2
	brnz $m0, .LBB0_21
	bri .LBB0_22
.LBB0_9:                                # %if.end.i.i
	shr $m3, $m2, 1
	cmpult $m2, $m0, $m3
	brz $m2, .LBB0_10
# %bb.11:                               # %if.end6.i.i
	{
		mov	$m2, $m15
		zero	$ap2
	}
	sub $m3, $m3, $m0
	add $m3, $m3, 5
	setzi $m4, 43691
	sort4x16lo $m6, $m3, $m15
	shr $m3, $m3, 16
	mul $m7, $m6, $m4
	mul $m4, $m3, $m4
	shr $m7, $m7, 16
	add $m4, $m4, $m7
	setzi $m7, 43690
	mul $m6, $m6, $m7
	mul $m3, $m3, $m7
	sort4x16lo $m7, $m4, $m15
	shr $m4, $m4, 16
	add $m6, $m6, $m7
	add $m3, $m3, $m4
	shr $m4, $m6, 16
	shl $m6, $m0, 2
	add $m3, $m3, $m4
	add $m4, $m5, $m6
	shr $m3, $m3, 2
	#APP
	{
		rpt $m3, 2
		fnop
	}

	{
		ld32step $a0, $m15, $m4+=, 6
		fnop
	}

	{
		nop
		f16v2tof32 $ap0, $a0
	}

	{
		nop
		f32v2add $ap2, $ap2, $ap0
	}


	#NO_APP
	st64 $ap2, $m1, $m15, $m0
	exitz $m15
.LBB0_16:                               # %if.end.i78.i
	{
		shr $m3, $m2, 1
		zero	$ap3
	}
	cmpult $m2, $m0, $m3
	brz $m2, .LBB0_18
# %bb.17:                               # %if.end6.i84.i
	mov	$m2, $m15
	{
		sub $m3, $m3, $m0
		f32sub $a3, $azero, $a0
	}
	add $m3, $m3, 5
	setzi $m4, 43691
	sort4x16lo $m6, $m3, $m15
	shr $m3, $m3, 16
	mul $m7, $m6, $m4
	mul $m4, $m3, $m4
	shr $m7, $m7, 16
	add $m4, $m4, $m7
	setzi $m7, 43690
	mul $m6, $m6, $m7
	mul $m3, $m3, $m7
	sort4x16lo $m7, $m4, $m15
	shr $m4, $m4, 16
	add $m6, $m6, $m7
	add $m3, $m3, $m4
	shr $m4, $m6, 16
	shl $m6, $m0, 2
	add $m3, $m3, $m4
	add $m4, $m5, $m6
	shr $m3, $m3, 2
	#APP
	mov	$a4, $a3
	{
		rpt $m3, 4
		fnop
	}

	{
		ld32step $a0, $m15, $m4+=, 6
		fnop
	}

	{
		nop
		f16v2tof32 $ap0, $a0
	}

	{
		nop
		f32v2add $ap0, $a4:B, $ap0
	}

	{
		nop
		f32v2mul $ap0, $ap0, $ap0
	}

	{
		nop
		f32v2add $ap3, $ap3, $ap0
	}


	#NO_APP
.LBB0_18:                               # %_ZL7normSumPKDhS0_jjfb.exit87.i
	shl $m0, $m0, 3
	st64 $ap3, $m0, $m1, 6
	exitz $m15
.LBB0_4:                                # %if.then.i90.i
	st32 $m1, $m11, $m15, 2                 # 4-byte Folded Spill
	shr $m7, $m2, 2
	st32 $m0, $m11, $m15, 1                 # 4-byte Folded Spill
	st32 $m8, $m11, $m15, 7                 # 4-byte Folded Spill
	cmpult $m8, $m0, $m7
	brz $m8, .LBB0_22
# %bb.5:                                # %if.then2.i.i
	ld32 $m0, $m11, $m15, 1                 # 4-byte Folded Reload
	sub $m8, $m7, $m0
	add $m1, $m11, 32
	st32 $m1, $m11, $m15, 5                 # 4-byte Folded Spill
	add $m8, $m8, 5
	st32 $m9, $m11, $m15, 4                 # 4-byte Folded Spill
	setzi $m9, 43691
	sort4x16lo $m10, $m8, $m15
	shr $m8, $m8, 16
	mul $m7, $m10, $m9
	mul $m9, $m8, $m9
	shr $m7, $m7, 16
	add $m7, $m9, $m7
	setzi $m9, 43690
	mul $m10, $m10, $m9
	mul $m8, $m8, $m9
	sort4x16lo $m9, $m7, $m15
	shr $m7, $m7, 16
	add $m9, $m10, $m9
	ld32 $m1, $m11, $m15, 7                 # 4-byte Folded Reload
	mul $m10, $m1, $m2
	add $m7, $m8, $m7
	shr $m8, $m9, 16
	shl $m9, $m0, 2
	ld32 $m1, $m11, $m15, 6                 # 4-byte Folded Reload
	add $m10, $m1, $m10
	add $m7, $m7, $m8
	shl $m6, $m0, 3
	add $m5, $m5, $m6
	add $m8, $m3, $m6
	ld32 $m0, $m11, $m15, 4                 # 4-byte Folded Reload
	add $m6, $m0, $m6
	add $m9, $m10, $m9
	ld32 $m10, $m11, $m15, 6                # 4-byte Folded Reload
	shr $m7, $m7, 2
	ld32 $m0, $m11, $m15, 5                 # 4-byte Folded Reload
	#APP
	ld32 $a6, $m0, $m15, 0
	ld32 $a7, $m0, $m15, 1
	{
		rpt $m7, 20
		fnop
	}

	{
		ld32step $a0, $m15, $m5+=, 1
		fnop
	}

	{
		nop
		f16v2tof32 $ap0, $a0
	}

	{
		nop
		f32v2add $ap0, $a6:B, $ap0
	}

	{
		ld32step $a2, $m15, $m8+=, 1
		f32v2mul $ap0, $a7:B, $ap0
	}

	{
		nop
		f16v2tof32 $ap1, $a2
	}

	{
		ld32step $a4, $m15, $m6+=, 1
		f32v2mul $ap0, $ap0, $ap1
	}

	{
		nop
		f16v2tof32 $ap1, $a4
	}

	{
		nop
		f32v2add $ap0, $ap0, $ap1
	}

	{
		nop
		f32v2tof16 $a5, $ap0
	}

	{
		ld32step $a0, $m15, $m5+=, 11
		f16v2tof8 $a5, $a5
	}

	{
		nop
		f16v2tof32 $ap0, $a0
	}

	{
		nop
		f32v2add $ap0, $a6:B, $ap0
	}

	{
		ld32step $a2, $m15, $m8+=, 11
		f32v2mul $ap0, $a7:B, $ap0
	}

	{
		nop
		f16v2tof32 $ap1, $a2
	}

	{
		ld32step $a4, $m15, $m6+=, 11
		f32v2mul $ap0, $ap0, $ap1
	}

	{
		nop
		f16v2tof32 $ap1, $a4
	}

	{
		nop
		f32v2add $ap0, $ap0, $ap1
	}

	{
		nop
		f32v2tof16 $a0, $ap0
	}

	{
		nop
		f16v2tof8 $a0, $a0
	}

	{
		nop
		sort4x16lo $a0, $a5, $a0
	}

	{
		st32step $a0, $m15, $m9+=, 6
		fnop
	}


	#NO_APP
.LBB0_22:                               # %if.end26.i.i
	ld32 $m8, $m11, $m15, 7                 # 4-byte Folded Reload
	ld32 $m0, $m11, $m15, 2                 # 4-byte Folded Reload
	brz $m0, .LBB0_27
# %bb.23:                               # %if.end26.i.if.then28.i_crit_edge.i
	ld32 $m0, $m11, $m15, 1                 # 4-byte Folded Reload
	shl $m7, $m0, 2
.LBB0_24:                               # %if.then28.i.i
	add $m1, $m2, 31
	add $m0, $m7, $m2
	andc $m5, $m1, 31
	cmpult $m1, $m0, $m5
	brz $m1, .LBB0_27
# %bb.25:                               # %for.body38.i.i.preheader
	add $m1, $m7, $m2
	add $m1, $m1, 24
	mov	$m3, $m2
	cmpult $m2, $m1, $m5
	movnz	$m1, $m2, $m5
	sub $m1, $m1, $m7
	sub $m1, $m1, $m3
	add $m1, $m1, -24
	cmpeq $m2, $m1, 0
	setzi $m3, 1
	movnz	$m3, $m2, $m1
	sub $m1, $m1, $m3
	setzi $m2, 43691
	sort4x16lo $m5, $m1, $m15
	shr $m1, $m1, 16
	mul $m6, $m5, $m2
	mul $m2, $m1, $m2
	shr $m6, $m6, 16
	add $m2, $m2, $m6
	setzi $m6, 43690
	sort4x16lo $m7, $m2, $m15
	mul $m5, $m5, $m6
	shr $m2, $m2, 16
	mul $m1, $m1, $m6
	add $m5, $m5, $m7
	add $m1, $m1, $m2
	shr $m2, $m5, 16
	add $m1, $m1, $m2
	shr $m1, $m1, 4
	add $m1, $m3, $m1
	add $m2, $m1, 1
	add $m2, $m2, -1
.LBB0_26:                               # %for.body38.i.i
                                        # =>This Inner Loop Header: Depth=1
	shr $m1, $m0, 5
	mul $m1, $m1, $m4
	add $m1, $m1, $m8
	shl $m1, $m1, 5
	and $m3, $m0, 31
	or $m1, $m1, $m3
	st32 $azero, $m10, $m1, 0
	add $m0, $m0, 24
	brnzdec $m2, .LBB0_26
.LBB0_27:                               # %_ZN11LayerNormF87computeEj.exit
	exitz $m15
.LBB0_10:
	zero	$ap2
	st64 $ap2, $m1, $m15, $m0
	exitz $m15
.Lfunc_end0:
	.size	__runCodelet_LayerNormF8, .Lfunc_end0-__runCodelet_LayerNormF8
	.section	.stack_sizes,"o",@progbits,.text.__runCodelet_LayerNormF8
	.long	.Lfunc_begin0
	.byte	40
	.section	.text.__runCodelet_LayerNormF8,"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
