	.text
	.allow_optimizations
	.file	"3"
	.section	.text.__runCodelet_LayerNormApply,"ax",@progbits
	.globl	__runCodelet_LayerNormApply     # -- Begin function __runCodelet_LayerNormApply
	.p2align	2
	.type	__runCodelet_LayerNormApply,@function
__runCodelet_LayerNormApply:            # @__runCodelet_LayerNormApply
	.worker
.Lfunc_begin0:
# %bb.0:                                # %entry
	setzi $m6, 32
	cmpult $m6, $m6, __worker_stack_max_growth_plus_one
	brz $m6, _stackoverflow
	add $m11, $m12, -32
	get $m2, 1
	ld32 $m9, $m13, $m15, 5
	brz $m9, .LBB0_16
# %bb.1:                                # %for.cond6.preheader.lr.ph.i
	mov	$m0, $m15
	mov	$m1, $m15
	{
		and $m2, $m2, 7
		setzi $a0, 407485
	}
	{
		ld32 $m6, $m13, $m15, 1
		or $a0, $a0, 897581056
	}
	st32 $a0, $m11, $m15, 3                 # 4-byte Folded Spill
	ld32 $m7, $m13, $m15, 2
	ld32 $m3, $m13, $m15, 3
	shl $m8, $m2, 2
	ld32 $m4, $m13, $m15, 0
	ld32 $m5, $m13, $m15, 4
	add $m7, $m7, $m8
	st32 $m7, $m11, $m15, 2                 # 4-byte Folded Spill
	add $m6, $m6, $m8
	st32 $m6, $m11, $m15, 1                 # 4-byte Folded Spill
	st32 $m3, $m11, $m15, 5                 # 4-byte Folded Spill
	add $m3, $m3, 4
	st32 $m3, $m11, $m15, 4                 # 4-byte Folded Spill
	bri .LBB0_2
.LBB0_15:                               # %for.cond.cleanup44.i
                                        #   in Loop: Header=BB0_2 Depth=1
	add $m1, $m1, 1
	cmpult $m3, $m1, $m9
	add $m0, $m0, 8
	brz $m3, .LBB0_16
.LBB0_2:                                # %for.cond6.preheader.i
                                        # =>This Loop Header: Depth=1
                                        #     Child Loop BB0_5 Depth 2
                                        #     Child Loop BB0_8 Depth 2
                                        #     Child Loop BB0_13 Depth 2
	ld32 $m10, $m13, $m15, 7
	brz $m10, .LBB0_10
# %bb.3:                                # %for.body9.lr.ph.i
                                        #   in Loop: Header=BB0_2 Depth=1
	{
		mul $m6, $m10, $m0
		mov	$a1, $azero
	}
	ld32 $m3, $m11, $m15, 5                 # 4-byte Folded Reload
	add $m7, $m3, $m6
	setzi $m8, 1
	cmpslt $m3, $m8, $m10
	ld32step $a2, $m15, $m7+=, 2
	add $m8, $m10, -1
	brz $m3, .LBB0_6
# %bb.4:                                # %for.body9.i
                                        #   in Loop: Header=BB0_2 Depth=1
	add $m8, $m8, -1
.LBB0_5:                                # %for.body9.i
                                        #   Parent Loop BB0_2 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	{
		ld32step $a2, $m15, $m7+=, 2
		f32add $a1, $a1, $a2
	}
	brnzdec $m8, .LBB0_5
.LBB0_6:                                #   in Loop: Header=BB0_2 Depth=1
	f32add $a2, $a1, $a2
	{
		st32 $m10, $m11, $m15, 0
		mov	$a1, $azero
	}
	ld32 $a3, $m11, $m15, 0
	{
		ld32 $a4, $m13, $m15, 6
		f32fromui32 $a3, $a3
	}
	{
		ld32 $m3, $m11, $m15, 4
		f32div $a2, $a2, $a3
	}
	{
		add $m7, $m3, $m6
		f32fromui32 $a3, $a4
	}
	mov	$m6, $a4
	add $m3, $m15, -4
	{
		ld64 $ap2, $m7, $m3, 0
		mov	$a0, $a2
	}
	{
		setzi $m3, 1
		f32sub $a4, $a4, $a2
	}
	{
		cmpslt $m3, $m3, $m10
		f32mul $a6, $a4, $a3
	}
	{
		add $m7, $m7, 8
		f32mul $a4, $a6, $a4
	}
	add $m8, $m10, -1
	brz $m3, .LBB0_9
# %bb.7:                                # %for.body18.i
                                        #   in Loop: Header=BB0_2 Depth=1
	add $m8, $m8, -1
.LBB0_8:                                # %for.body18.i
                                        #   Parent Loop BB0_2 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	{
		add $m3, $m15, -4
		f32add $a6, $a4, $a5
	}
	ld64 $ap2, $m7, $m3, 0
	{
		add $m7, $m7, 8
		f32sub $a4, $a4, $a0
	}
	f32add $a1, $a1, $a6
	f32mul $a6, $a4, $a3
	{
		brnzdec $m8, .LBB0_8
		f32mul $a4, $a6, $a4
	}
.LBB0_9:                                #   in Loop: Header=BB0_2 Depth=1
	f32add $a3, $a4, $a5
	f32add $a1, $a1, $a3
	{
		bri .LBB0_11
		mov	$a2, $a0
	}
.LBB0_10:                               # %for.cond.cleanup8.for.cond.cleanup17_crit_edge.i
                                        #   in Loop: Header=BB0_2 Depth=1
	{
		ld32 $m6, $m13, $m15, 6
		mov	$a1, $azero
	}
	or $a2, $azero, 2143289344
.LBB0_11:                               # %for.cond.cleanup17.i
                                        #   in Loop: Header=BB0_2 Depth=1
	shr $m7, $m6, 1
	cmpult $m3, $m2, $m7
	brz $m3, .LBB0_15
# %bb.12:                               # %for.body45.lr.ph.i
                                        #   in Loop: Header=BB0_2 Depth=1
	mul $m3, $m6, $m10
	st32 $m3, $m11, $m15, 0
	ld32 $a3, $m11, $m15, 0
	f32fromui32 $a4, $a3
	{
		ld32 $m6, $m11, $m15, 1
		mov	$a3, $a2
	}
	ld32 $m9, $m11, $m15, 2                 # 4-byte Folded Reload
	{
		mov	$m10, $m2
		f32div $a1, $a1, $a4
	}
	ld32 $a0, $m11, $m15, 3                 # 4-byte Folded Reload
	f32add $a1, $a1, $a0
	f32oorx $a0, $a1
	mov	$a1, $a0
	{
		st64 $ap0, $m11, $m15, 3
		mov	$ap2, $ap1
	}
.LBB0_13:                               # %for.body45.i
                                        #   Parent Loop BB0_2 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	mul $m3, $m1, $m7
	add $m3, $m10, $m3
	add $m10, $m10, 6
	ld32 $a1, $m4, $m15, $m3
	{
		ld32step $a1, $m15, $m6+=, 6
		f16v2tof32 $ap3, $a1
	}
	{
		ld32step $a0, $m15, $m9+=, 6
		f32v2sub $ap3, $ap3, $ap2
	}
	ld64 $ap1, $m11, $m15, 3                # 8-byte Folded Reload
	f32v2mul $ap3, $ap1, $ap3
	f16v2tof32 $ap1, $a1
	f32v2mul $ap1, $ap3, $ap1
	f16v2tof32 $ap0, $a0
	f32v2add $ap0, $ap1, $ap0
	f32v2tof16 $a0, $ap0
	st32 $a0, $m5, $m15, $m3
	ld32 $m3, $m13, $m15, 6
	shr $m7, $m3, 1
	cmpult $m3, $m10, $m7
	brnz $m3, .LBB0_13
# %bb.14:                               # %for.cond.cleanup44.loopexit.i
                                        #   in Loop: Header=BB0_2 Depth=1
	ld32 $m9, $m13, $m15, 5
	bri .LBB0_15
.LBB0_16:                               # %_ZN14LayerNormApply7computeEj.exit
	exitz $m15
.Lfunc_end0:
	.size	__runCodelet_LayerNormApply, .Lfunc_end0-__runCodelet_LayerNormApply
	.section	.stack_sizes,"o",@progbits,.text.__runCodelet_LayerNormApply
	.long	.Lfunc_begin0
	.byte	32
	.section	.text.__runCodelet_LayerNormApply,"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
