//
// Generated by NVIDIA NVVM Compiler
// Compiler built on Wed Jul 10 12:41:20 2013 (1373485280)
// Cuda compilation tools, release 5.5, V5.5.0
//

.version 3.2
.target sm_30
.address_size 64

	.file	1 "c:/pl320/releases/2014.09/shared/adobe/MediaCore/GPUFoundation/Src/ImageProcessing/PixelFormatConvert_Bayer.cu", 1418108382, 21657
	.file	2 "c:\\pl320\\releases\\2014.09\\shared\\adobe\\mediacore\\external\\3rdparty\\nvidia\\cuda\\win\\include\\device_functions.h", 1418108340, 191626
.const .align 4 .b8 kRGB32f_To_601YPbPr[36] = {135, 22, 153, 62, 162, 69, 22, 63, 213, 120, 233, 61, 33, 201, 44, 190, 111, 155, 169, 190, 0, 0, 0, 63, 0, 0, 0, 63, 70, 94, 214, 190, 232, 134, 166, 189};
.const .align 4 .b8 k601YPbPr_To_RGB32f[36] = {0, 0, 128, 63, 0, 0, 0, 0, 188, 116, 179, 63, 0, 0, 128, 63, 152, 50, 176, 190, 158, 209, 54, 191, 0, 0, 128, 63, 229, 208, 226, 63, 0, 0, 0, 0};
.const .align 4 .b8 kRGB32f_To_601YCbCr[36] = {70, 246, 130, 66, 145, 141, 0, 67, 94, 186, 199, 65, 33, 48, 23, 194, 240, 103, 148, 194, 0, 0, 224, 66, 0, 0, 224, 66, 111, 146, 187, 194, 70, 182, 145, 193};
.const .align 4 .b8 k601YCbCr_To_RGB32f[36] = {37, 160, 149, 59, 0, 0, 0, 0, 182, 23, 205, 59, 37, 160, 149, 59, 40, 15, 201, 186, 156, 239, 80, 187, 37, 160, 149, 59, 236, 155, 1, 60, 0, 0, 0, 0};
.const .align 4 .b8 kRGB8u_To_601YCbCr[36] = {219, 121, 131, 62, 152, 14, 1, 63, 18, 131, 200, 61, 174, 199, 23, 190, 238, 252, 148, 190, 197, 224, 224, 62, 197, 224, 224, 62, 217, 78, 188, 190, 174, 71, 146, 189};
.const .align 4 .b8 k601YCbCr_To_RGB8u[36] = {127, 10, 149, 63, 0, 0, 0, 0, 160, 74, 204, 63, 127, 10, 149, 63, 254, 148, 200, 190, 184, 30, 80, 191, 127, 10, 149, 63, 78, 26, 1, 64, 0, 0, 0, 0};
.const .align 4 .b8 kRGB8u_To_601YCbCrFullRange[36] = {135, 22, 153, 62, 162, 69, 22, 63, 213, 120, 233, 61, 166, 27, 44, 190, 39, 241, 168, 190, 250, 254, 254, 62, 250, 254, 254, 62, 43, 135, 213, 190, 59, 223, 165, 189};
.const .align 4 .b8 k601YCbCrFullRange_To_RGB8u[36] = {0, 0, 128, 63, 0, 0, 0, 0, 72, 193, 178, 63, 0, 0, 128, 63, 143, 130, 175, 190, 225, 26, 54, 191, 0, 0, 128, 63, 20, 238, 225, 63, 0, 0, 0, 0};
.const .align 4 .b8 kRGB32f_To_601YCbCrFullRange[36] = {113, 125, 152, 66, 92, 175, 21, 67, 92, 143, 232, 65, 158, 111, 43, 194, 49, 72, 168, 194, 0, 0, 254, 66, 0, 0, 254, 66, 170, 177, 212, 194, 88, 57, 165, 193};
.const .align 4 .b8 k601YCbCrFullRange_To_RGB32f[36] = {129, 128, 128, 59, 0, 0, 0, 0, 188, 116, 179, 59, 129, 128, 128, 59, 194, 50, 176, 186, 179, 209, 54, 187, 129, 128, 128, 59, 229, 208, 226, 59, 0, 0, 0, 0};
.const .align 4 .b8 kRGB32f_To_709YPbPr[36] = {208, 179, 89, 62, 89, 23, 55, 63, 152, 221, 147, 61, 186, 164, 234, 189, 210, 86, 197, 190, 0, 0, 0, 63, 0, 0, 0, 63, 190, 134, 232, 190, 16, 202, 59, 189};
.const .align 4 .b8 k709YPbPr_To_RGB32f[36] = {0, 0, 128, 63, 0, 0, 0, 0, 12, 147, 201, 63, 0, 0, 128, 63, 221, 209, 63, 190, 243, 173, 239, 190, 0, 0, 128, 63, 77, 132, 237, 63, 0, 0, 0, 0};
.const .align 4 .b8 kRGB32f_To_709YCbCr[36] = {106, 60, 58, 66, 6, 161, 28, 67, 244, 253, 124, 65, 223, 79, 205, 193, 8, 172, 172, 194, 0, 0, 224, 66, 0, 0, 224, 66, 195, 117, 203, 194, 236, 81, 36, 193};
.const .align 4 .b8 k709YCbCr_To_RGB32f[36] = {37, 160, 149, 59, 0, 0, 0, 0, 239, 94, 230, 59, 37, 160, 149, 59, 33, 57, 91, 186, 178, 245, 8, 187, 37, 160, 149, 59, 82, 185, 7, 60, 0, 0, 0, 0};
.const .align 4 .b8 k709YCbCrFullRange_To_RGB32f[36] = {131, 128, 128, 59, 0, 0, 0, 0, 28, 147, 201, 59, 131, 128, 128, 59, 61, 210, 63, 186, 248, 173, 239, 186, 131, 128, 128, 59, 82, 132, 237, 59, 0, 0, 0, 0};
.const .align 4 .b8 kRGB8u_To_709YCbCr[36] = {207, 247, 58, 62, 53, 62, 29, 63, 231, 251, 125, 61, 147, 24, 206, 61, 23, 89, 173, 190, 197, 224, 224, 62, 197, 224, 224, 62, 12, 66, 204, 190, 195, 245, 36, 189};
.const .align 4 .b8 k709YCbCr_To_RGB8u[36] = {127, 10, 149, 63, 0, 0, 0, 0, 147, 120, 229, 63, 127, 10, 149, 63, 53, 94, 90, 190, 205, 108, 8, 191, 127, 10, 149, 63, 154, 49, 7, 64, 0, 0, 0, 0};
.const .align 4 .b8 k709YCbCr_To_601YCbCr[36] = {0, 0, 128, 63, 23, 100, 203, 61, 1, 77, 68, 62, 0, 0, 0, 0, 18, 103, 125, 63, 10, 158, 226, 189, 0, 0, 0, 0, 61, 98, 148, 189, 249, 191, 123, 63};
.const .align 4 .b8 k601YCbCr_To_709YCbCr[36] = {0, 0, 128, 63, 122, 165, 236, 189, 179, 237, 84, 190, 0, 0, 0, 0, 204, 98, 130, 63, 216, 188, 234, 61, 0, 0, 0, 0, 74, 179, 153, 61, 234, 61, 131, 63};
.const .align 4 .b8 kYCbCrOffset[12] = {0, 0, 128, 65, 0, 0, 0, 67, 0, 0, 0, 67};
.const .align 4 .b8 kYCbCrFullRangeOffset[12] = {0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 67};
.const .align 4 .u32 kRandMax = 32767;
// PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix has been demoted
// PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix has been demoted
// PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix has been demoted
// PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix has been demoted
.global .align 1 .b8 $str[11] = {95, 95, 67, 85, 68, 65, 95, 70, 84, 90, 0};

.visible .func  (.param .align 16 .b8 func_retval0[16]) _Z7Recolor8PixelRGB6float4Pfi(
	.param .align 16 .b8 _Z7Recolor8PixelRGB6float4Pfi_param_0[16],
	.param .align 16 .b8 _Z7Recolor8PixelRGB6float4Pfi_param_1[16],
	.param .b64 _Z7Recolor8PixelRGB6float4Pfi_param_2,
	.param .b32 _Z7Recolor8PixelRGB6float4Pfi_param_3
)
{
	.reg .pred 	%p<5>;
	.reg .s32 	%r<2>;
	.reg .f32 	%f<85>;
	.reg .s64 	%rd<2>;


	ld.param.f32 	%f1, [_Z7Recolor8PixelRGB6float4Pfi_param_0+12];
	ld.param.f32 	%f29, [_Z7Recolor8PixelRGB6float4Pfi_param_0];
	ld.param.f32 	%f30, [_Z7Recolor8PixelRGB6float4Pfi_param_0+4];
	ld.param.f32 	%f31, [_Z7Recolor8PixelRGB6float4Pfi_param_0+8];
	ld.param.f32 	%f32, [_Z7Recolor8PixelRGB6float4Pfi_param_1+8];
	ld.param.f32 	%f33, [_Z7Recolor8PixelRGB6float4Pfi_param_1+4];
	ld.param.f32 	%f34, [_Z7Recolor8PixelRGB6float4Pfi_param_1];
	ld.param.u64 	%rd1, [_Z7Recolor8PixelRGB6float4Pfi_param_2];
	ld.param.u32 	%r1, [_Z7Recolor8PixelRGB6float4Pfi_param_3];
	.loc 2 2765 10
	min.ftz.f32 	%f2, %f31, %f34;
	min.ftz.f32 	%f3, %f30, %f33;
	min.ftz.f32 	%f4, %f29, %f32;
	.loc 1 91 1
	ld.f32 	%f35, [%rd1+24];
	ld.f32 	%f36, [%rd1+28];
	mul.ftz.f32 	%f37, %f3, %f36;
	fma.rn.ftz.f32 	%f38, %f2, %f35, %f37;
	ld.f32 	%f39, [%rd1+32];
	fma.rn.ftz.f32 	%f5, %f4, %f39, %f38;
	.loc 1 91 1
	setp.eq.s32	%p1, %r1, 0;
	@%p1 bra 	BB0_11;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p2, %f5, 0f00000000;
	@%p2 bra 	BB0_3;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f40, %f5;
	mul.ftz.f32 	%f41, %f40, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f78, %f41;
	bra.uni 	BB0_4;

BB0_3:
	.loc 1 91 153
	neg.ftz.f32 	%f42, %f5;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f43, %f42;
	mul.ftz.f32 	%f44, %f43, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f45, %f44;
	.loc 1 91 190
	neg.ftz.f32 	%f78, %f45;

BB0_4:
	ld.f32 	%f46, [%rd1+12];
	ld.f32 	%f47, [%rd1+16];
	mul.ftz.f32 	%f48, %f3, %f47;
	fma.rn.ftz.f32 	%f49, %f2, %f46, %f48;
	ld.f32 	%f50, [%rd1+20];
	fma.rn.ftz.f32 	%f9, %f4, %f50, %f49;
	setp.ltu.ftz.f32	%p3, %f9, 0f00000000;
	@%p3 bra 	BB0_6;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f51, %f9;
	mul.ftz.f32 	%f52, %f51, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f79, %f52;
	bra.uni 	BB0_7;

BB0_6:
	neg.ftz.f32 	%f53, %f9;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f54, %f53;
	mul.ftz.f32 	%f55, %f54, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f56, %f55;
	neg.ftz.f32 	%f79, %f56;

BB0_7:
	ld.f32 	%f57, [%rd1];
	ld.f32 	%f58, [%rd1+4];
	mul.ftz.f32 	%f59, %f3, %f58;
	fma.rn.ftz.f32 	%f60, %f2, %f57, %f59;
	ld.f32 	%f61, [%rd1+8];
	fma.rn.ftz.f32 	%f13, %f4, %f61, %f60;
	setp.ltu.ftz.f32	%p4, %f13, 0f00000000;
	@%p4 bra 	BB0_9;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f62, %f13;
	mul.ftz.f32 	%f63, %f62, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f80, %f63;
	bra.uni 	BB0_10;

BB0_9:
	neg.ftz.f32 	%f64, %f13;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f65, %f64;
	mul.ftz.f32 	%f66, %f65, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f67, %f66;
	neg.ftz.f32 	%f80, %f67;

BB0_10:
	mov.f32 	%f84, %f1;
	mov.f32 	%f83, %f80;
	mov.f32 	%f82, %f79;
	mov.f32 	%f81, %f78;
	bra.uni 	BB0_12;

BB0_11:
	.loc 1 91 1
	ld.f32 	%f68, [%rd1+12];
	ld.f32 	%f69, [%rd1+16];
	mul.ftz.f32 	%f70, %f3, %f69;
	fma.rn.ftz.f32 	%f71, %f2, %f68, %f70;
	ld.f32 	%f72, [%rd1+20];
	fma.rn.ftz.f32 	%f82, %f4, %f72, %f71;
	ld.f32 	%f73, [%rd1];
	ld.f32 	%f74, [%rd1+4];
	mul.ftz.f32 	%f75, %f3, %f74;
	fma.rn.ftz.f32 	%f76, %f2, %f73, %f75;
	ld.f32 	%f77, [%rd1+8];
	fma.rn.ftz.f32 	%f83, %f4, %f77, %f76;
	mov.f32 	%f84, %f1;
	mov.f32 	%f81, %f5;

BB0_12:
	st.param.f32	[func_retval0+0], %f81;
	st.param.f32	[func_retval0+4], %f82;
	st.param.f32	[func_retval0+8], %f83;
	st.param.f32	[func_retval0+12], %f84;
	ret;
}

.visible .func _Z16SharedLoadMatrixPfPKfb(
	.param .b64 _Z16SharedLoadMatrixPfPKfb_param_0,
	.param .b64 _Z16SharedLoadMatrixPfPKfb_param_1,
	.param .b32 _Z16SharedLoadMatrixPfPKfb_param_2
)
{
	.reg .pred 	%p<5>;
	.reg .s16 	%rs<3>;
	.reg .s32 	%r<4>;
	.reg .f32 	%f<4>;
	.reg .s64 	%rd<15>;


	ld.param.u64 	%rd1, [_Z16SharedLoadMatrixPfPKfb_param_0];
	ld.param.u64 	%rd2, [_Z16SharedLoadMatrixPfPKfb_param_1];
	.loc 1 91 1
	mov.u32 	%r2, %tid.y;
	setp.eq.s32	%p1, %r2, 0;
	mov.u32 	%r1, %tid.x;
	setp.lt.s32	%p2, %r1, 3;
	and.pred  	%p3, %p1, %p2;
	ld.param.s8 	%rs1, [_Z16SharedLoadMatrixPfPKfb_param_2];
	.loc 1 91 1
	@!%p3 bra 	BB1_2;
	bra.uni 	BB1_1;

BB1_1:
	.loc 1 91 1
	mul.lo.s32 	%r3, %r1, 3;
	cvt.s64.s32	%rd3, %r3;
	and.b16  	%rs2, %rs1, 255;
	setp.eq.s16	%p4, %rs2, 0;
	selp.b64	%rd4, 0, 2, %p4;
	add.s64 	%rd5, %rd3, %rd4;
	shl.b64 	%rd6, %rd5, 2;
	add.s64 	%rd7, %rd2, %rd6;
	mul.wide.s32 	%rd8, %r3, 4;
	add.s64 	%rd9, %rd1, %rd8;
	.loc 1 91 1
	ld.f32 	%f1, [%rd7];
	st.f32 	[%rd9], %f1;
	add.s64 	%rd10, %rd2, %rd8;
	.loc 1 91 1
	ld.f32 	%f2, [%rd10+4];
	st.f32 	[%rd9+4], %f2;
	selp.b64	%rd11, 2, 0, %p4;
	add.s64 	%rd12, %rd3, %rd11;
	shl.b64 	%rd13, %rd12, 2;
	add.s64 	%rd14, %rd2, %rd13;
	ld.f32 	%f3, [%rd14];
	st.f32 	[%rd9+8], %f3;

BB1_2:
	.loc 1 91 1
	bar.sync 	0;
	.loc 1 91 2
	ret;
}

.visible .entry PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel(
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_0,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_1,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_2,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_3,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_4,
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_5,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_6,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_7,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_8,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_9,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_10,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_11,
	.param .align 16 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_12[16],
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_13,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_14
)
{
	.reg .pred 	%p<36>;
	.reg .s16 	%rs<17>;
	.reg .s32 	%r<141>;
	.reg .f32 	%f<323>;
	.reg .s64 	%rd<79>;
	// demoted variable
	.shared .align 4 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix[36];

	ld.param.u64 	%rd3, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_0];
	ld.param.u32 	%r9, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_1];
	ld.param.u32 	%r10, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_2];
	ld.param.u32 	%r11, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_3];
	ld.param.u64 	%rd4, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_5];
	ld.param.u32 	%r12, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_6];
	ld.param.u32 	%r13, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_7];
	ld.param.u32 	%r14, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_8];
	ld.param.u32 	%r15, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_9];
	ld.param.u32 	%r16, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_10];
	ld.param.u32 	%r17, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_11];
	ld.param.f32 	%f160, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_12+8];
	ld.param.f32 	%f159, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_12+4];
	ld.param.f32 	%f158, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_12];
	ld.param.u32 	%r18, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_13];
	ld.param.u32 	%r19, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel_param_14];
	cvta.to.global.u64 	%rd1, %rd3;
	.loc 1 185 1
	cvt.s64.s32	%rd2, %r18;
	.loc 1 91 1
	mov.u32 	%r1, %tid.y;
	setp.eq.s32	%p1, %r1, 0;
	mov.u32 	%r2, %tid.x;
	setp.lt.s32	%p2, %r2, 3;
	and.pred  	%p3, %p1, %p2;
	@!%p3 bra 	BB2_2;
	bra.uni 	BB2_1;

BB2_1:
	setp.ne.s32	%p4, %r17, 0;
	.loc 1 91 1
	mul.lo.s32 	%r20, %r2, 3;
	cvt.s64.s32	%rd5, %r20;
	add.s32 	%r21, %r20, %r18;
	.loc 1 91 1
	add.s64 	%rd6, %rd5, %rd2;
	selp.b64	%rd7, 2, 0, %p4;
	add.s64 	%rd8, %rd6, %rd7;
	shl.b64 	%rd9, %rd8, 2;
	add.s64 	%rd10, %rd1, %rd9;
	mul.wide.s32 	%rd11, %r20, 4;
	mov.u64 	%rd12, PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix;
	add.s64 	%rd13, %rd12, %rd11;
	.loc 1 91 1
	ld.global.f32 	%f162, [%rd10];
	st.shared.f32 	[%rd13], %f162;
	mul.wide.s32 	%rd14, %r21, 4;
	add.s64 	%rd15, %rd1, %rd14;
	.loc 1 91 1
	ld.global.f32 	%f163, [%rd15+4];
	st.shared.f32 	[%rd13+4], %f163;
	selp.b64	%rd16, 0, 2, %p4;
	add.s64 	%rd17, %rd6, %rd16;
	shl.b64 	%rd18, %rd17, 2;
	add.s64 	%rd19, %rd1, %rd18;
	ld.global.f32 	%f164, [%rd19];
	st.shared.f32 	[%rd13+8], %f164;

BB2_2:
	.loc 1 91 1
	bar.sync 	0;
	.loc 1 185 1
	mov.u32 	%r22, %ntid.x;
	mov.u32 	%r23, %ctaid.x;
	mad.lo.s32 	%r24, %r22, %r23, %r2;
	shl.b32 	%r3, %r24, 1;
	mov.u32 	%r25, %ntid.y;
	mov.u32 	%r26, %ctaid.y;
	mad.lo.s32 	%r27, %r25, %r26, %r1;
	shl.b32 	%r4, %r27, 1;
	.loc 1 185 1
	setp.lt.s32	%p5, %r3, %r15;
	setp.lt.s32	%p6, %r4, %r16;
	and.pred  	%p7, %p5, %p6;
	.loc 1 185 1
	@!%p7 bra 	BB2_63;
	bra.uni 	BB2_3;

BB2_3:
	.loc 1 185 1
	cvt.s64.s32	%rd20, %r9;
	.loc 1 185 1
	add.s32 	%r28, %r16, -1;
	mul.lo.s32 	%r29, %r28, %r10;
	cvt.s64.s32	%rd21, %r29;
	neg.s32 	%r30, %r10;
	.loc 1 185 1
	setp.eq.s32	%p8, %r11, 0;
	selp.b32	%r31, %r10, %r30, %p8;
	selp.b64	%rd22, 0, %rd21, %p8;
	add.s64 	%rd23, %rd22, %rd20;
	.loc 1 185 1
	mad.lo.s32 	%r32, %r4, %r31, %r3;
	cvt.s64.s32	%rd24, %r32;
	add.s64 	%rd25, %rd24, %rd23;
	shl.b64 	%rd26, %rd25, 2;
	add.s64 	%rd27, %rd1, %rd26;
	ld.global.f32 	%f165, [%rd27];
	mul.ftz.f32 	%f166, %f165, 0f00000000;
	.loc 2 2765 10
	min.ftz.f32 	%f1, %f166, %f158;
	min.ftz.f32 	%f2, %f166, %f159;
	min.ftz.f32 	%f3, %f165, %f160;
	.loc 1 91 1
	ld.shared.f32 	%f4, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+24];
	ld.shared.f32 	%f5, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+28];
	mul.ftz.f32 	%f167, %f2, %f5;
	fma.rn.ftz.f32 	%f168, %f1, %f4, %f167;
	ld.shared.f32 	%f6, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+32];
	fma.rn.ftz.f32 	%f7, %f3, %f6, %f168;
	.loc 1 91 1
	setp.eq.s32	%p9, %r19, 0;
	.loc 1 91 1
	mov.f32 	%f301, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB2_14;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p10, %f7, 0f00000000;
	@%p10 bra 	BB2_6;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f169, %f7;
	mul.ftz.f32 	%f170, %f169, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f289, %f170;
	bra.uni 	BB2_7;

BB2_6:
	.loc 1 91 153
	neg.ftz.f32 	%f171, %f7;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f172, %f171;
	mul.ftz.f32 	%f173, %f172, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f174, %f173;
	.loc 1 91 190
	neg.ftz.f32 	%f289, %f174;

BB2_7:
	ld.shared.f32 	%f297, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+12];
	ld.shared.f32 	%f296, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+16];
	mul.ftz.f32 	%f175, %f2, %f296;
	fma.rn.ftz.f32 	%f176, %f1, %f297, %f175;
	ld.shared.f32 	%f295, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+20];
	fma.rn.ftz.f32 	%f14, %f3, %f295, %f176;
	setp.ltu.ftz.f32	%p11, %f14, 0f00000000;
	@%p11 bra 	BB2_9;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f177, %f14;
	mul.ftz.f32 	%f178, %f177, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f290, %f178;
	bra.uni 	BB2_10;

BB2_9:
	neg.ftz.f32 	%f179, %f14;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f180, %f179;
	mul.ftz.f32 	%f181, %f180, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f182, %f181;
	neg.ftz.f32 	%f290, %f182;

BB2_10:
	ld.shared.f32 	%f294, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix];
	ld.shared.f32 	%f293, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+4];
	mul.ftz.f32 	%f183, %f2, %f293;
	fma.rn.ftz.f32 	%f184, %f1, %f294, %f183;
	ld.shared.f32 	%f292, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+8];
	fma.rn.ftz.f32 	%f21, %f3, %f292, %f184;
	setp.ltu.ftz.f32	%p12, %f21, 0f00000000;
	@%p12 bra 	BB2_12;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f185, %f21;
	mul.ftz.f32 	%f186, %f185, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f291, %f186;
	bra.uni 	BB2_13;

BB2_12:
	neg.ftz.f32 	%f187, %f21;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f188, %f187;
	mul.ftz.f32 	%f189, %f188, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f190, %f189;
	neg.ftz.f32 	%f291, %f190;

BB2_13:
	mov.f32 	%f300, %f291;
	mov.f32 	%f299, %f290;
	mov.f32 	%f298, %f289;
	bra.uni 	BB2_15;

BB2_14:
	.loc 1 91 1
	ld.shared.f32 	%f297, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+12];
	ld.shared.f32 	%f296, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+16];
	mul.ftz.f32 	%f191, %f2, %f296;
	fma.rn.ftz.f32 	%f192, %f1, %f297, %f191;
	ld.shared.f32 	%f295, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+20];
	fma.rn.ftz.f32 	%f299, %f3, %f295, %f192;
	ld.shared.f32 	%f294, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix];
	ld.shared.f32 	%f293, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+4];
	mul.ftz.f32 	%f193, %f2, %f293;
	fma.rn.ftz.f32 	%f194, %f1, %f294, %f193;
	ld.shared.f32 	%f292, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Bayered_Kernel$__cuda_local_var_171015_417_non_const_matrix+8];
	fma.rn.ftz.f32 	%f300, %f3, %f292, %f194;
	mov.f32 	%f298, %f7;

BB2_15:
	.loc 1 185 1
	sub.s32 	%r39, %r28, %r4;
	setp.eq.s32	%p13, %r13, 0;
	selp.b32	%r40, %r4, %r39, %p13;
	.loc 1 185 1
	mad.lo.s32 	%r5, %r40, %r12, %r3;
	.loc 1 185 1
	setp.eq.s32	%p14, %r14, 0;
	@%p14 bra 	BB2_17;

	cvta.to.global.u64 	%rd28, %rd4;
	mul.wide.s32 	%rd29, %r5, 16;
	add.s64 	%rd30, %rd28, %rd29;
	.loc 1 185 1
	st.global.v4.f32 	[%rd30], {%f298, %f299, %f300, %f301};
	bra.uni 	BB2_18;

BB2_17:
	cvta.to.global.u64 	%rd31, %rd4;
	mul.wide.s32 	%rd32, %r5, 8;
	add.s64 	%rd33, %rd31, %rd32;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f298;
	mov.b16 	%rs1, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f299;
	mov.b16 	%rs2, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f300;
	mov.b16 	%rs3, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f301;
	mov.b16 	%rs4, %temp;
}
	.loc 1 185 231
	st.global.v4.u16 	[%rd33], {%rs1, %rs2, %rs3, %rs4};

BB2_18:
	.loc 1 185 1
	mul.lo.s32 	%r57, %r27, %r31;
	shl.b32 	%r58, %r57, 1;
	add.s32 	%r59, %r3, %r58;
	.loc 1 185 1
	add.s32 	%r60, %r59, 1;
	cvt.s64.s32	%rd34, %r60;
	add.s64 	%rd39, %rd34, %rd23;
	shl.b64 	%rd41, %rd39, 2;
	add.s64 	%rd42, %rd1, %rd41;
	ld.global.f32 	%f195, [%rd42];
	mul.ftz.f32 	%f196, %f195, 0f00000000;
	.loc 2 2765 10
	min.ftz.f32 	%f57, %f196, %f158;
	min.ftz.f32 	%f58, %f195, %f159;
	min.ftz.f32 	%f59, %f196, %f160;
	.loc 1 91 1
	mul.ftz.f32 	%f197, %f58, %f5;
	fma.rn.ftz.f32 	%f198, %f57, %f4, %f197;
	fma.rn.ftz.f32 	%f60, %f59, %f6, %f198;
	mov.f32 	%f308, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB2_29;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p17, %f60, 0f00000000;
	@%p17 bra 	BB2_21;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f199, %f60;
	mul.ftz.f32 	%f200, %f199, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f302, %f200;
	bra.uni 	BB2_22;

BB2_21:
	.loc 1 91 153
	neg.ftz.f32 	%f201, %f60;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f202, %f201;
	mul.ftz.f32 	%f203, %f202, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f204, %f203;
	.loc 1 91 190
	neg.ftz.f32 	%f302, %f204;

BB2_22:
	mul.ftz.f32 	%f205, %f58, %f296;
	fma.rn.ftz.f32 	%f206, %f57, %f297, %f205;
	fma.rn.ftz.f32 	%f64, %f59, %f295, %f206;
	setp.ltu.ftz.f32	%p18, %f64, 0f00000000;
	@%p18 bra 	BB2_24;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f207, %f64;
	mul.ftz.f32 	%f208, %f207, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f303, %f208;
	bra.uni 	BB2_25;

BB2_24:
	neg.ftz.f32 	%f209, %f64;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f210, %f209;
	mul.ftz.f32 	%f211, %f210, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f212, %f211;
	neg.ftz.f32 	%f303, %f212;

BB2_25:
	mul.ftz.f32 	%f213, %f58, %f293;
	fma.rn.ftz.f32 	%f214, %f57, %f294, %f213;
	fma.rn.ftz.f32 	%f68, %f59, %f292, %f214;
	setp.ltu.ftz.f32	%p19, %f68, 0f00000000;
	@%p19 bra 	BB2_27;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f215, %f68;
	mul.ftz.f32 	%f216, %f215, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f304, %f216;
	bra.uni 	BB2_28;

BB2_27:
	neg.ftz.f32 	%f217, %f68;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f218, %f217;
	mul.ftz.f32 	%f219, %f218, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f220, %f219;
	neg.ftz.f32 	%f304, %f220;

BB2_28:
	mov.f32 	%f307, %f304;
	mov.f32 	%f306, %f303;
	mov.f32 	%f305, %f302;
	bra.uni 	BB2_30;

BB2_29:
	.loc 1 91 1
	mul.ftz.f32 	%f221, %f58, %f296;
	fma.rn.ftz.f32 	%f222, %f57, %f297, %f221;
	fma.rn.ftz.f32 	%f306, %f59, %f295, %f222;
	mul.ftz.f32 	%f223, %f58, %f293;
	fma.rn.ftz.f32 	%f224, %f57, %f294, %f223;
	fma.rn.ftz.f32 	%f307, %f59, %f292, %f224;
	mov.f32 	%f305, %f60;

BB2_30:
	.loc 1 185 1
	add.s32 	%r6, %r5, 1;
	.loc 1 185 1
	@%p14 bra 	BB2_32;

	cvta.to.global.u64 	%rd43, %rd4;
	mul.wide.s32 	%rd44, %r6, 16;
	add.s64 	%rd45, %rd43, %rd44;
	.loc 1 185 1
	st.global.v4.f32 	[%rd45], {%f305, %f306, %f307, %f308};
	bra.uni 	BB2_33;

BB2_32:
	cvta.to.global.u64 	%rd46, %rd4;
	mul.wide.s32 	%rd47, %r6, 8;
	add.s64 	%rd48, %rd46, %rd47;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f305;
	mov.b16 	%rs5, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f306;
	mov.b16 	%rs6, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f307;
	mov.b16 	%rs7, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f308;
	mov.b16 	%rs8, %temp;
}
	.loc 1 185 231
	st.global.v4.u16 	[%rd48], {%rs5, %rs6, %rs7, %rs8};

BB2_33:
	.loc 1 185 1
	add.s32 	%r82, %r4, 1;
	.loc 1 185 1
	mad.lo.s32 	%r90, %r82, %r31, %r3;
	cvt.s64.s32	%rd49, %r90;
	add.s64 	%rd54, %rd49, %rd23;
	shl.b64 	%rd56, %rd54, 2;
	add.s64 	%rd57, %rd1, %rd56;
	ld.global.f32 	%f225, [%rd57];
	mul.ftz.f32 	%f226, %f225, 0f00000000;
	.loc 2 2765 10
	min.ftz.f32 	%f92, %f226, %f158;
	min.ftz.f32 	%f93, %f225, %f159;
	min.ftz.f32 	%f94, %f226, %f160;
	.loc 1 91 1
	mul.ftz.f32 	%f227, %f93, %f5;
	fma.rn.ftz.f32 	%f228, %f92, %f4, %f227;
	fma.rn.ftz.f32 	%f95, %f94, %f6, %f228;
	mov.f32 	%f315, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB2_44;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p24, %f95, 0f00000000;
	@%p24 bra 	BB2_36;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f229, %f95;
	mul.ftz.f32 	%f230, %f229, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f309, %f230;
	bra.uni 	BB2_37;

BB2_36:
	.loc 1 91 153
	neg.ftz.f32 	%f231, %f95;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f232, %f231;
	mul.ftz.f32 	%f233, %f232, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f234, %f233;
	.loc 1 91 190
	neg.ftz.f32 	%f309, %f234;

BB2_37:
	mul.ftz.f32 	%f235, %f93, %f296;
	fma.rn.ftz.f32 	%f236, %f92, %f297, %f235;
	fma.rn.ftz.f32 	%f99, %f94, %f295, %f236;
	setp.ltu.ftz.f32	%p25, %f99, 0f00000000;
	@%p25 bra 	BB2_39;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f237, %f99;
	mul.ftz.f32 	%f238, %f237, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f310, %f238;
	bra.uni 	BB2_40;

BB2_39:
	neg.ftz.f32 	%f239, %f99;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f240, %f239;
	mul.ftz.f32 	%f241, %f240, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f242, %f241;
	neg.ftz.f32 	%f310, %f242;

BB2_40:
	mul.ftz.f32 	%f243, %f93, %f293;
	fma.rn.ftz.f32 	%f244, %f92, %f294, %f243;
	fma.rn.ftz.f32 	%f103, %f94, %f292, %f244;
	setp.ltu.ftz.f32	%p26, %f103, 0f00000000;
	@%p26 bra 	BB2_42;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f245, %f103;
	mul.ftz.f32 	%f246, %f245, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f311, %f246;
	bra.uni 	BB2_43;

BB2_42:
	neg.ftz.f32 	%f247, %f103;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f248, %f247;
	mul.ftz.f32 	%f249, %f248, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f250, %f249;
	neg.ftz.f32 	%f311, %f250;

BB2_43:
	mov.f32 	%f314, %f311;
	mov.f32 	%f313, %f310;
	mov.f32 	%f312, %f309;
	bra.uni 	BB2_45;

BB2_44:
	.loc 1 91 1
	mul.ftz.f32 	%f251, %f93, %f296;
	fma.rn.ftz.f32 	%f252, %f92, %f297, %f251;
	fma.rn.ftz.f32 	%f313, %f94, %f295, %f252;
	mul.ftz.f32 	%f253, %f93, %f293;
	fma.rn.ftz.f32 	%f254, %f92, %f294, %f253;
	fma.rn.ftz.f32 	%f314, %f94, %f292, %f254;
	mov.f32 	%f312, %f95;

BB2_45:
	.loc 1 185 1
	selp.b32	%r101, 1, -1, %p13;
	add.s32 	%r102, %r40, %r101;
	.loc 1 185 1
	mad.lo.s32 	%r7, %r102, %r12, %r3;
	.loc 1 185 1
	@%p14 bra 	BB2_47;

	cvta.to.global.u64 	%rd58, %rd4;
	mul.wide.s32 	%rd59, %r7, 16;
	add.s64 	%rd60, %rd58, %rd59;
	.loc 1 185 1
	st.global.v4.f32 	[%rd60], {%f312, %f313, %f314, %f315};
	bra.uni 	BB2_48;

BB2_47:
	cvta.to.global.u64 	%rd61, %rd4;
	mul.wide.s32 	%rd62, %r7, 8;
	add.s64 	%rd63, %rd61, %rd62;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f312;
	mov.b16 	%rs9, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f313;
	mov.b16 	%rs10, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f314;
	mov.b16 	%rs11, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f315;
	mov.b16 	%rs12, %temp;
}
	.loc 1 185 234
	st.global.v4.u16 	[%rd63], {%rs9, %rs10, %rs11, %rs12};

BB2_48:
	.loc 1 185 1
	add.s32 	%r122, %r90, 1;
	cvt.s64.s32	%rd64, %r122;
	add.s64 	%rd69, %rd64, %rd23;
	shl.b64 	%rd71, %rd69, 2;
	add.s64 	%rd72, %rd1, %rd71;
	ld.global.f32 	%f255, [%rd72];
	mul.ftz.f32 	%f256, %f255, 0f00000000;
	.loc 2 2765 10
	min.ftz.f32 	%f123, %f255, %f158;
	min.ftz.f32 	%f124, %f256, %f159;
	min.ftz.f32 	%f125, %f256, %f160;
	.loc 1 91 1
	mul.ftz.f32 	%f257, %f124, %f5;
	fma.rn.ftz.f32 	%f258, %f123, %f4, %f257;
	fma.rn.ftz.f32 	%f126, %f125, %f6, %f258;
	mov.f32 	%f322, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB2_59;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p31, %f126, 0f00000000;
	@%p31 bra 	BB2_51;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f259, %f126;
	mul.ftz.f32 	%f260, %f259, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f316, %f260;
	bra.uni 	BB2_52;

BB2_51:
	.loc 1 91 153
	neg.ftz.f32 	%f261, %f126;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f262, %f261;
	mul.ftz.f32 	%f263, %f262, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f264, %f263;
	.loc 1 91 190
	neg.ftz.f32 	%f316, %f264;

BB2_52:
	mul.ftz.f32 	%f265, %f124, %f296;
	fma.rn.ftz.f32 	%f266, %f123, %f297, %f265;
	fma.rn.ftz.f32 	%f130, %f125, %f295, %f266;
	setp.ltu.ftz.f32	%p32, %f130, 0f00000000;
	@%p32 bra 	BB2_54;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f267, %f130;
	mul.ftz.f32 	%f268, %f267, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f317, %f268;
	bra.uni 	BB2_55;

BB2_54:
	neg.ftz.f32 	%f269, %f130;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f270, %f269;
	mul.ftz.f32 	%f271, %f270, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f272, %f271;
	neg.ftz.f32 	%f317, %f272;

BB2_55:
	mul.ftz.f32 	%f273, %f124, %f293;
	fma.rn.ftz.f32 	%f274, %f123, %f294, %f273;
	fma.rn.ftz.f32 	%f134, %f125, %f292, %f274;
	setp.ltu.ftz.f32	%p33, %f134, 0f00000000;
	@%p33 bra 	BB2_57;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f275, %f134;
	mul.ftz.f32 	%f276, %f275, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f318, %f276;
	bra.uni 	BB2_58;

BB2_57:
	neg.ftz.f32 	%f277, %f134;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f278, %f277;
	mul.ftz.f32 	%f279, %f278, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f280, %f279;
	neg.ftz.f32 	%f318, %f280;

BB2_58:
	mov.f32 	%f321, %f318;
	mov.f32 	%f320, %f317;
	mov.f32 	%f319, %f316;
	bra.uni 	BB2_60;

BB2_59:
	.loc 1 91 1
	mul.ftz.f32 	%f281, %f124, %f296;
	fma.rn.ftz.f32 	%f282, %f123, %f297, %f281;
	fma.rn.ftz.f32 	%f320, %f125, %f295, %f282;
	mul.ftz.f32 	%f283, %f124, %f293;
	fma.rn.ftz.f32 	%f284, %f123, %f294, %f283;
	fma.rn.ftz.f32 	%f321, %f125, %f292, %f284;
	mov.f32 	%f319, %f126;

BB2_60:
	.loc 1 185 1
	add.s32 	%r8, %r7, 1;
	.loc 1 185 1
	@%p14 bra 	BB2_62;

	cvta.to.global.u64 	%rd73, %rd4;
	mul.wide.s32 	%rd74, %r8, 16;
	add.s64 	%rd75, %rd73, %rd74;
	.loc 1 185 1
	st.global.v4.f32 	[%rd75], {%f319, %f320, %f321, %f322};
	bra.uni 	BB2_63;

BB2_62:
	cvta.to.global.u64 	%rd76, %rd4;
	mul.wide.s32 	%rd77, %r8, 8;
	add.s64 	%rd78, %rd76, %rd77;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f319;
	mov.b16 	%rs13, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f320;
	mov.b16 	%rs14, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f321;
	mov.b16 	%rs15, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f322;
	mov.b16 	%rs16, %temp;
}
	.loc 1 185 241
	st.global.v4.u16 	[%rd78], {%rs13, %rs14, %rs15, %rs16};

BB2_63:
	.loc 1 185 2
	ret;
}

.visible .entry PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel(
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_0,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_1,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_2,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_3,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_4,
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_5,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_6,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_7,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_8,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_9,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_10,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_11,
	.param .align 16 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_12[16],
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_13,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_14
)
{
	.reg .pred 	%p<33>;
	.reg .s16 	%rs<17>;
	.reg .s32 	%r<98>;
	.reg .f32 	%f<305>;
	.reg .s64 	%rd<56>;
	// demoted variable
	.shared .align 4 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix[36];

	ld.param.u64 	%rd4, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_0];
	ld.param.u32 	%r10, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_1];
	ld.param.u32 	%r11, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_2];
	ld.param.u32 	%r12, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_3];
	ld.param.u64 	%rd3, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_5];
	ld.param.u32 	%r13, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_6];
	ld.param.u32 	%r14, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_7];
	ld.param.u32 	%r15, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_8];
	ld.param.u32 	%r16, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_9];
	ld.param.u32 	%r17, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_10];
	ld.param.u32 	%r18, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_11];
	ld.param.f32 	%f151, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_12+8];
	ld.param.f32 	%f150, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_12+4];
	ld.param.f32 	%f149, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_12];
	ld.param.u32 	%r19, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_13];
	ld.param.u32 	%r20, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel_param_14];
	cvta.to.global.u64 	%rd1, %rd4;
	.loc 1 235 1
	cvt.s64.s32	%rd2, %r19;
	.loc 1 91 1
	mov.u32 	%r1, %tid.y;
	setp.eq.s32	%p1, %r1, 0;
	mov.u32 	%r2, %tid.x;
	setp.lt.s32	%p2, %r2, 3;
	and.pred  	%p3, %p1, %p2;
	@!%p3 bra 	BB3_2;
	bra.uni 	BB3_1;

BB3_1:
	setp.ne.s32	%p4, %r18, 0;
	.loc 1 91 1
	mul.lo.s32 	%r21, %r2, 3;
	cvt.s64.s32	%rd5, %r21;
	add.s32 	%r22, %r21, %r19;
	.loc 1 91 1
	add.s64 	%rd6, %rd5, %rd2;
	selp.b64	%rd7, 2, 0, %p4;
	add.s64 	%rd8, %rd6, %rd7;
	shl.b64 	%rd9, %rd8, 2;
	add.s64 	%rd10, %rd1, %rd9;
	mul.wide.s32 	%rd11, %r21, 4;
	mov.u64 	%rd12, PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix;
	add.s64 	%rd13, %rd12, %rd11;
	.loc 1 91 1
	ld.global.f32 	%f153, [%rd10];
	st.shared.f32 	[%rd13], %f153;
	mul.wide.s32 	%rd14, %r22, 4;
	add.s64 	%rd15, %rd1, %rd14;
	.loc 1 91 1
	ld.global.f32 	%f154, [%rd15+4];
	st.shared.f32 	[%rd13+4], %f154;
	selp.b64	%rd16, 0, 2, %p4;
	add.s64 	%rd17, %rd6, %rd16;
	shl.b64 	%rd18, %rd17, 2;
	add.s64 	%rd19, %rd1, %rd18;
	ld.global.f32 	%f155, [%rd19];
	st.shared.f32 	[%rd13+8], %f155;

BB3_2:
	.loc 1 91 1
	bar.sync 	0;
	.loc 1 235 1
	mov.u32 	%r23, %ntid.x;
	mov.u32 	%r24, %ctaid.x;
	mad.lo.s32 	%r25, %r23, %r24, %r2;
	shl.b32 	%r3, %r25, 1;
	mov.u32 	%r26, %ntid.y;
	mov.u32 	%r27, %ctaid.y;
	mad.lo.s32 	%r28, %r26, %r27, %r1;
	shl.b32 	%r4, %r28, 1;
	.loc 1 235 1
	setp.lt.s32	%p5, %r3, %r16;
	setp.lt.s32	%p6, %r4, %r17;
	and.pred  	%p7, %p5, %p6;
	.loc 1 235 1
	@!%p7 bra 	BB3_63;
	bra.uni 	BB3_3;

BB3_3:
	.loc 1 235 1
	cvt.s64.s32	%rd20, %r10;
	.loc 1 235 1
	add.s32 	%r29, %r17, -1;
	mul.lo.s32 	%r30, %r29, %r11;
	cvt.s64.s32	%rd21, %r30;
	neg.s32 	%r31, %r11;
	.loc 1 235 1
	setp.eq.s32	%p8, %r12, 0;
	selp.b32	%r32, %r11, %r31, %p8;
	selp.b64	%rd22, 0, %rd21, %p8;
	add.s64 	%rd23, %rd22, %rd20;
	.loc 1 235 1
	mad.lo.s32 	%r33, %r4, %r32, %r3;
	cvt.s64.s32	%rd24, %r33;
	add.s64 	%rd25, %rd24, %rd23;
	shl.b64 	%rd26, %rd25, 2;
	add.s64 	%rd27, %rd1, %rd26;
	add.s32 	%r34, %r4, 1;
	mad.lo.s32 	%r35, %r34, %r32, %r3;
	cvt.s64.s32	%rd28, %r35;
	add.s64 	%rd29, %rd28, %rd23;
	shl.b64 	%rd30, %rd29, 2;
	add.s64 	%rd31, %rd1, %rd30;
	ld.global.f32 	%f1, [%rd31];
	ld.global.f32 	%f156, [%rd27];
	.loc 2 2765 10
	min.ftz.f32 	%f2, %f156, %f149;
	.loc 1 235 1
	ld.global.f32 	%f157, [%rd27+4];
	.loc 2 2765 10
	min.ftz.f32 	%f3, %f157, %f150;
	.loc 1 235 1
	ld.global.f32 	%f158, [%rd31+4];
	.loc 2 2765 10
	min.ftz.f32 	%f4, %f158, %f151;
	.loc 1 91 1
	ld.shared.f32 	%f159, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+24];
	mul.ftz.f32 	%f5, %f2, %f159;
	ld.shared.f32 	%f6, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+28];
	fma.rn.ftz.f32 	%f160, %f3, %f6, %f5;
	ld.shared.f32 	%f161, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+32];
	mul.ftz.f32 	%f7, %f4, %f161;
	add.ftz.f32 	%f8, %f160, %f7;
	.loc 1 91 1
	setp.eq.s32	%p9, %r20, 0;
	.loc 1 91 1
	mov.f32 	%f283, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB3_14;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p10, %f8, 0f00000000;
	@%p10 bra 	BB3_6;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f162, %f8;
	mul.ftz.f32 	%f163, %f162, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f271, %f163;
	bra.uni 	BB3_7;

BB3_6:
	.loc 1 91 153
	neg.ftz.f32 	%f164, %f8;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f165, %f164;
	mul.ftz.f32 	%f166, %f165, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f167, %f166;
	.loc 1 91 190
	neg.ftz.f32 	%f271, %f167;

BB3_7:
	ld.shared.f32 	%f279, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+12];
	ld.shared.f32 	%f278, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+16];
	mul.ftz.f32 	%f168, %f3, %f278;
	fma.rn.ftz.f32 	%f169, %f2, %f279, %f168;
	ld.shared.f32 	%f277, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+20];
	fma.rn.ftz.f32 	%f15, %f4, %f277, %f169;
	setp.ltu.ftz.f32	%p11, %f15, 0f00000000;
	@%p11 bra 	BB3_9;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f170, %f15;
	mul.ftz.f32 	%f171, %f170, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f272, %f171;
	bra.uni 	BB3_10;

BB3_9:
	neg.ftz.f32 	%f172, %f15;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f173, %f172;
	mul.ftz.f32 	%f174, %f173, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f175, %f174;
	neg.ftz.f32 	%f272, %f175;

BB3_10:
	ld.shared.f32 	%f276, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix];
	ld.shared.f32 	%f275, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+4];
	mul.ftz.f32 	%f176, %f3, %f275;
	fma.rn.ftz.f32 	%f177, %f2, %f276, %f176;
	ld.shared.f32 	%f274, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+8];
	fma.rn.ftz.f32 	%f22, %f4, %f274, %f177;
	setp.ltu.ftz.f32	%p12, %f22, 0f00000000;
	@%p12 bra 	BB3_12;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f178, %f22;
	mul.ftz.f32 	%f179, %f178, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f273, %f179;
	bra.uni 	BB3_13;

BB3_12:
	neg.ftz.f32 	%f180, %f22;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f181, %f180;
	mul.ftz.f32 	%f182, %f181, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f183, %f182;
	neg.ftz.f32 	%f273, %f183;

BB3_13:
	mov.f32 	%f282, %f273;
	mov.f32 	%f281, %f272;
	mov.f32 	%f280, %f271;
	bra.uni 	BB3_15;

BB3_14:
	.loc 1 91 1
	ld.shared.f32 	%f279, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+12];
	ld.shared.f32 	%f278, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+16];
	mul.ftz.f32 	%f184, %f3, %f278;
	fma.rn.ftz.f32 	%f185, %f2, %f279, %f184;
	ld.shared.f32 	%f277, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+20];
	fma.rn.ftz.f32 	%f281, %f4, %f277, %f185;
	ld.shared.f32 	%f276, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix];
	ld.shared.f32 	%f275, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+4];
	mul.ftz.f32 	%f186, %f3, %f275;
	fma.rn.ftz.f32 	%f187, %f2, %f276, %f186;
	ld.shared.f32 	%f274, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Nearest_Kernel$__cuda_local_var_171022_417_non_const_matrix+8];
	fma.rn.ftz.f32 	%f282, %f4, %f274, %f187;
	mov.f32 	%f280, %f8;

BB3_15:
	.loc 1 235 1
	sub.s32 	%r42, %r29, %r4;
	setp.eq.s32	%p13, %r14, 0;
	selp.b32	%r43, %r4, %r42, %p13;
	.loc 1 235 1
	mad.lo.s32 	%r5, %r43, %r13, %r3;
	.loc 1 235 1
	setp.eq.s32	%p14, %r15, 0;
	@%p14 bra 	BB3_17;

	cvta.to.global.u64 	%rd32, %rd3;
	mul.wide.s32 	%rd33, %r5, 16;
	add.s64 	%rd34, %rd32, %rd33;
	.loc 1 235 1
	st.global.v4.f32 	[%rd34], {%f280, %f281, %f282, %f283};
	bra.uni 	BB3_18;

BB3_17:
	cvta.to.global.u64 	%rd35, %rd3;
	mul.wide.s32 	%rd36, %r5, 8;
	add.s64 	%rd37, %rd35, %rd36;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f280;
	mov.b16 	%rs1, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f281;
	mov.b16 	%rs2, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f282;
	mov.b16 	%rs3, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f283;
	mov.b16 	%rs4, %temp;
}
	.loc 1 235 241
	st.global.v4.u16 	[%rd37], {%rs1, %rs2, %rs3, %rs4};

BB3_18:
	.loc 1 91 1
	mov.f32 	%f290, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB3_29;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p17, %f8, 0f00000000;
	@%p17 bra 	BB3_21;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f188, %f8;
	mul.ftz.f32 	%f189, %f188, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f284, %f189;
	bra.uni 	BB3_22;

BB3_21:
	.loc 1 91 153
	neg.ftz.f32 	%f190, %f8;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f191, %f190;
	mul.ftz.f32 	%f192, %f191, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f193, %f192;
	.loc 1 91 190
	neg.ftz.f32 	%f284, %f193;

BB3_22:
	mul.ftz.f32 	%f194, %f3, %f278;
	fma.rn.ftz.f32 	%f195, %f2, %f279, %f194;
	fma.rn.ftz.f32 	%f57, %f4, %f277, %f195;
	setp.ltu.ftz.f32	%p18, %f57, 0f00000000;
	@%p18 bra 	BB3_24;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f196, %f57;
	mul.ftz.f32 	%f197, %f196, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f285, %f197;
	bra.uni 	BB3_25;

BB3_24:
	neg.ftz.f32 	%f198, %f57;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f199, %f198;
	mul.ftz.f32 	%f200, %f199, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f201, %f200;
	neg.ftz.f32 	%f285, %f201;

BB3_25:
	mul.ftz.f32 	%f202, %f3, %f275;
	fma.rn.ftz.f32 	%f203, %f2, %f276, %f202;
	fma.rn.ftz.f32 	%f61, %f4, %f274, %f203;
	setp.ltu.ftz.f32	%p19, %f61, 0f00000000;
	@%p19 bra 	BB3_27;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f204, %f61;
	mul.ftz.f32 	%f205, %f204, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f286, %f205;
	bra.uni 	BB3_28;

BB3_27:
	neg.ftz.f32 	%f206, %f61;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f207, %f206;
	mul.ftz.f32 	%f208, %f207, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f209, %f208;
	neg.ftz.f32 	%f286, %f209;

BB3_28:
	mov.f32 	%f289, %f286;
	mov.f32 	%f288, %f285;
	mov.f32 	%f287, %f284;
	bra.uni 	BB3_30;

BB3_29:
	.loc 1 91 1
	mul.ftz.f32 	%f210, %f3, %f278;
	fma.rn.ftz.f32 	%f211, %f2, %f279, %f210;
	fma.rn.ftz.f32 	%f288, %f4, %f277, %f211;
	mul.ftz.f32 	%f212, %f3, %f275;
	fma.rn.ftz.f32 	%f213, %f2, %f276, %f212;
	fma.rn.ftz.f32 	%f289, %f4, %f274, %f213;
	mov.f32 	%f287, %f8;

BB3_30:
	.loc 1 235 1
	add.s32 	%r6, %r5, 1;
	.loc 1 235 1
	@%p14 bra 	BB3_32;

	cvta.to.global.u64 	%rd38, %rd3;
	mul.wide.s32 	%rd39, %r6, 16;
	add.s64 	%rd40, %rd38, %rd39;
	.loc 1 235 1
	st.global.v4.f32 	[%rd40], {%f287, %f288, %f289, %f290};
	bra.uni 	BB3_33;

BB3_32:
	cvta.to.global.u64 	%rd41, %rd3;
	mul.wide.s32 	%rd42, %r6, 8;
	add.s64 	%rd43, %rd41, %rd42;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f287;
	mov.b16 	%rs5, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f288;
	mov.b16 	%rs6, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f289;
	mov.b16 	%rs7, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f290;
	mov.b16 	%rs8, %temp;
}
	.loc 1 235 241
	st.global.v4.u16 	[%rd43], {%rs5, %rs6, %rs7, %rs8};

BB3_33:
	.loc 2 2765 10
	min.ftz.f32 	%f85, %f1, %f150;
	.loc 1 91 1
	fma.rn.ftz.f32 	%f214, %f85, %f6, %f5;
	add.ftz.f32 	%f86, %f214, %f7;
	mov.f32 	%f297, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB3_44;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p23, %f86, 0f00000000;
	@%p23 bra 	BB3_36;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f215, %f86;
	mul.ftz.f32 	%f216, %f215, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f291, %f216;
	bra.uni 	BB3_37;

BB3_36:
	.loc 1 91 153
	neg.ftz.f32 	%f217, %f86;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f218, %f217;
	mul.ftz.f32 	%f219, %f218, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f220, %f219;
	.loc 1 91 190
	neg.ftz.f32 	%f291, %f220;

BB3_37:
	mul.ftz.f32 	%f221, %f85, %f278;
	fma.rn.ftz.f32 	%f222, %f2, %f279, %f221;
	fma.rn.ftz.f32 	%f90, %f4, %f277, %f222;
	setp.ltu.ftz.f32	%p24, %f90, 0f00000000;
	@%p24 bra 	BB3_39;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f223, %f90;
	mul.ftz.f32 	%f224, %f223, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f292, %f224;
	bra.uni 	BB3_40;

BB3_39:
	neg.ftz.f32 	%f225, %f90;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f226, %f225;
	mul.ftz.f32 	%f227, %f226, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f228, %f227;
	neg.ftz.f32 	%f292, %f228;

BB3_40:
	mul.ftz.f32 	%f229, %f85, %f275;
	fma.rn.ftz.f32 	%f230, %f2, %f276, %f229;
	fma.rn.ftz.f32 	%f94, %f4, %f274, %f230;
	setp.ltu.ftz.f32	%p25, %f94, 0f00000000;
	@%p25 bra 	BB3_42;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f231, %f94;
	mul.ftz.f32 	%f232, %f231, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f293, %f232;
	bra.uni 	BB3_43;

BB3_42:
	neg.ftz.f32 	%f233, %f94;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f234, %f233;
	mul.ftz.f32 	%f235, %f234, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f236, %f235;
	neg.ftz.f32 	%f293, %f236;

BB3_43:
	mov.f32 	%f296, %f293;
	mov.f32 	%f295, %f292;
	mov.f32 	%f294, %f291;
	bra.uni 	BB3_45;

BB3_44:
	.loc 1 91 1
	mul.ftz.f32 	%f237, %f85, %f278;
	fma.rn.ftz.f32 	%f238, %f2, %f279, %f237;
	fma.rn.ftz.f32 	%f295, %f4, %f277, %f238;
	mul.ftz.f32 	%f239, %f85, %f275;
	fma.rn.ftz.f32 	%f240, %f2, %f276, %f239;
	fma.rn.ftz.f32 	%f296, %f4, %f274, %f240;
	mov.f32 	%f294, %f86;

BB3_45:
	.loc 1 235 1
	selp.b32	%r85, 1, -1, %p13;
	add.s32 	%r86, %r43, %r85;
	.loc 1 235 1
	mul.lo.s32 	%r7, %r86, %r13;
	add.s32 	%r8, %r7, %r3;
	.loc 1 235 1
	@%p14 bra 	BB3_47;

	cvta.to.global.u64 	%rd44, %rd3;
	mul.wide.s32 	%rd45, %r8, 16;
	add.s64 	%rd46, %rd44, %rd45;
	.loc 1 235 1
	st.global.v4.f32 	[%rd46], {%f294, %f295, %f296, %f297};
	bra.uni 	BB3_48;

BB3_47:
	cvta.to.global.u64 	%rd47, %rd3;
	mul.wide.s32 	%rd48, %r8, 8;
	add.s64 	%rd49, %rd47, %rd48;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f294;
	mov.b16 	%rs9, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f295;
	mov.b16 	%rs10, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f296;
	mov.b16 	%rs11, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f297;
	mov.b16 	%rs12, %temp;
}
	.loc 1 235 241
	st.global.v4.u16 	[%rd49], {%rs9, %rs10, %rs11, %rs12};

BB3_48:
	.loc 1 91 1
	mov.f32 	%f304, 0f3F800000;
	.loc 1 91 1
	@%p9 bra 	BB3_59;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p29, %f86, 0f00000000;
	@%p29 bra 	BB3_51;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f241, %f86;
	mul.ftz.f32 	%f242, %f241, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f298, %f242;
	bra.uni 	BB3_52;

BB3_51:
	.loc 1 91 153
	neg.ftz.f32 	%f243, %f86;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f244, %f243;
	mul.ftz.f32 	%f245, %f244, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f246, %f245;
	.loc 1 91 190
	neg.ftz.f32 	%f298, %f246;

BB3_52:
	mul.ftz.f32 	%f247, %f85, %f278;
	fma.rn.ftz.f32 	%f248, %f2, %f279, %f247;
	fma.rn.ftz.f32 	%f121, %f4, %f277, %f248;
	setp.ltu.ftz.f32	%p30, %f121, 0f00000000;
	@%p30 bra 	BB3_54;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f249, %f121;
	mul.ftz.f32 	%f250, %f249, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f299, %f250;
	bra.uni 	BB3_55;

BB3_54:
	neg.ftz.f32 	%f251, %f121;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f252, %f251;
	mul.ftz.f32 	%f253, %f252, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f254, %f253;
	neg.ftz.f32 	%f299, %f254;

BB3_55:
	mul.ftz.f32 	%f255, %f85, %f275;
	fma.rn.ftz.f32 	%f256, %f2, %f276, %f255;
	fma.rn.ftz.f32 	%f125, %f4, %f274, %f256;
	setp.ltu.ftz.f32	%p31, %f125, 0f00000000;
	@%p31 bra 	BB3_57;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f257, %f125;
	mul.ftz.f32 	%f258, %f257, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f300, %f258;
	bra.uni 	BB3_58;

BB3_57:
	neg.ftz.f32 	%f259, %f125;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f260, %f259;
	mul.ftz.f32 	%f261, %f260, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f262, %f261;
	neg.ftz.f32 	%f300, %f262;

BB3_58:
	mov.f32 	%f303, %f300;
	mov.f32 	%f302, %f299;
	mov.f32 	%f301, %f298;
	bra.uni 	BB3_60;

BB3_59:
	.loc 1 91 1
	mul.ftz.f32 	%f263, %f85, %f278;
	fma.rn.ftz.f32 	%f264, %f2, %f279, %f263;
	fma.rn.ftz.f32 	%f302, %f4, %f277, %f264;
	mul.ftz.f32 	%f265, %f85, %f275;
	fma.rn.ftz.f32 	%f266, %f2, %f276, %f265;
	fma.rn.ftz.f32 	%f303, %f4, %f274, %f266;
	mov.f32 	%f301, %f86;

BB3_60:
	.loc 1 235 1
	add.s32 	%r97, %r3, %r7;
	.loc 1 235 1
	add.s32 	%r9, %r97, 1;
	.loc 1 235 1
	@%p14 bra 	BB3_62;

	cvta.to.global.u64 	%rd50, %rd3;
	mul.wide.s32 	%rd51, %r9, 16;
	add.s64 	%rd52, %rd50, %rd51;
	.loc 1 235 1
	st.global.v4.f32 	[%rd52], {%f301, %f302, %f303, %f304};
	bra.uni 	BB3_63;

BB3_62:
	cvta.to.global.u64 	%rd53, %rd3;
	mul.wide.s32 	%rd54, %r9, 8;
	add.s64 	%rd55, %rd53, %rd54;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f301;
	mov.b16 	%rs13, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f302;
	mov.b16 	%rs14, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f303;
	mov.b16 	%rs15, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f304;
	mov.b16 	%rs16, %temp;
}
	.loc 1 235 241
	st.global.v4.u16 	[%rd55], {%rs13, %rs14, %rs15, %rs16};

BB3_63:
	.loc 1 235 2
	ret;
}

.visible .entry PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel(
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_0,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_1,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_2,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_3,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_4,
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_5,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_6,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_7,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_8,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_9,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_10,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_11,
	.param .align 16 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_12[16],
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_13,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_14
)
{
	.reg .pred 	%p<47>;
	.reg .s16 	%rs<17>;
	.reg .s32 	%r<108>;
	.reg .f32 	%f<378>;
	.reg .s64 	%rd<72>;
	// demoted variable
	.shared .align 4 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix[36];

	ld.param.u64 	%rd9, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_0];
	ld.param.u32 	%r13, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_1];
	ld.param.u32 	%r14, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_2];
	ld.param.u32 	%r15, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_3];
	ld.param.u64 	%rd8, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_5];
	ld.param.u32 	%r16, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_6];
	ld.param.u32 	%r17, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_7];
	ld.param.u32 	%r18, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_8];
	ld.param.u32 	%r19, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_9];
	ld.param.u32 	%r20, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_10];
	ld.param.u32 	%r21, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_11];
	ld.param.f32 	%f185, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_12+8];
	ld.param.f32 	%f184, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_12+4];
	ld.param.f32 	%f183, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_12];
	ld.param.u32 	%r22, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_13];
	ld.param.u32 	%r23, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel_param_14];
	cvta.to.global.u64 	%rd1, %rd9;
	.loc 1 288 1
	cvt.s64.s32	%rd2, %r22;
	.loc 1 91 1
	mov.u32 	%r1, %tid.y;
	setp.eq.s32	%p1, %r1, 0;
	mov.u32 	%r2, %tid.x;
	setp.lt.s32	%p2, %r2, 3;
	and.pred  	%p3, %p1, %p2;
	@!%p3 bra 	BB4_2;
	bra.uni 	BB4_1;

BB4_1:
	setp.ne.s32	%p4, %r21, 0;
	.loc 1 91 1
	mul.lo.s32 	%r24, %r2, 3;
	cvt.s64.s32	%rd10, %r24;
	add.s32 	%r25, %r24, %r22;
	.loc 1 91 1
	add.s64 	%rd11, %rd10, %rd2;
	selp.b64	%rd12, 2, 0, %p4;
	add.s64 	%rd13, %rd11, %rd12;
	shl.b64 	%rd14, %rd13, 2;
	add.s64 	%rd15, %rd1, %rd14;
	mul.wide.s32 	%rd16, %r24, 4;
	mov.u64 	%rd17, PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix;
	add.s64 	%rd18, %rd17, %rd16;
	.loc 1 91 1
	ld.global.f32 	%f187, [%rd15];
	st.shared.f32 	[%rd18], %f187;
	mul.wide.s32 	%rd19, %r25, 4;
	add.s64 	%rd20, %rd1, %rd19;
	.loc 1 91 1
	ld.global.f32 	%f188, [%rd20+4];
	st.shared.f32 	[%rd18+4], %f188;
	selp.b64	%rd21, 0, 2, %p4;
	add.s64 	%rd22, %rd11, %rd21;
	shl.b64 	%rd23, %rd22, 2;
	add.s64 	%rd24, %rd1, %rd23;
	ld.global.f32 	%f189, [%rd24];
	st.shared.f32 	[%rd18+8], %f189;

BB4_2:
	.loc 1 91 1
	bar.sync 	0;
	.loc 1 288 1
	mov.u32 	%r26, %ntid.x;
	mov.u32 	%r27, %ctaid.x;
	mad.lo.s32 	%r28, %r26, %r27, %r2;
	shl.b32 	%r3, %r28, 1;
	mov.u32 	%r29, %ntid.y;
	mov.u32 	%r30, %ctaid.y;
	mad.lo.s32 	%r31, %r29, %r30, %r1;
	shl.b32 	%r4, %r31, 1;
	.loc 1 288 1
	setp.lt.s32	%p5, %r3, %r19;
	setp.lt.s32	%p6, %r4, %r20;
	and.pred  	%p7, %p5, %p6;
	.loc 1 288 1
	@!%p7 bra 	BB4_83;
	bra.uni 	BB4_3;

BB4_3:
	.loc 1 288 1
	cvt.s64.s32	%rd25, %r13;
	.loc 1 288 1
	add.s32 	%r32, %r20, -1;
	mul.lo.s32 	%r33, %r32, %r14;
	cvt.s64.s32	%rd26, %r33;
	neg.s32 	%r34, %r14;
	.loc 1 288 1
	setp.eq.s32	%p8, %r15, 0;
	selp.b32	%r5, %r14, %r34, %p8;
	selp.b64	%rd27, 0, %rd26, %p8;
	add.s64 	%rd3, %rd27, %rd25;
	.loc 1 288 1
	add.s32 	%r6, %r19, -2;
	add.s32 	%r7, %r20, -2;
	mad.lo.s32 	%r35, %r4, %r5, %r3;
	cvt.s64.s32	%rd28, %r35;
	add.s64 	%rd29, %rd28, %rd3;
	shl.b64 	%rd30, %rd29, 2;
	add.s64 	%rd4, %rd1, %rd30;
	ld.global.f32 	%f1, [%rd4];
	ld.global.f32 	%f2, [%rd4+4];
	add.s32 	%r36, %r4, 1;
	mad.lo.s32 	%r37, %r36, %r5, %r3;
	cvt.s64.s32	%rd31, %r37;
	add.s64 	%rd32, %rd31, %rd3;
	shl.b64 	%rd33, %rd32, 2;
	add.s64 	%rd5, %rd1, %rd33;
	ld.global.f32 	%f3, [%rd5];
	ld.global.f32 	%f4, [%rd5+4];
	setp.eq.s32	%p9, %r3, 0;
	mov.f32 	%f335, %f4;
	@%p9 bra 	BB4_5;

	ld.global.f32 	%f5, [%rd5+-4];
	mov.f32 	%f335, %f5;

BB4_5:
	.loc 1 288 1
	mov.f32 	%f6, %f335;
	setp.ge.s32	%p10, %r3, %r6;
	.loc 1 288 1
	mov.f32 	%f330, %f3;
	@%p10 bra 	BB4_7;

	ld.global.f32 	%f7, [%rd5+8];
	mov.f32 	%f330, %f7;

BB4_7:
	.loc 1 288 1
	mov.f32 	%f8, %f330;
	mov.f32 	%f338, %f2;
	@%p9 bra 	BB4_9;

	ld.global.f32 	%f9, [%rd4+-4];
	mov.f32 	%f338, %f9;

BB4_9:
	.loc 1 288 1
	mov.f32 	%f10, %f338;
	mov.f32 	%f343, %f1;
	@%p10 bra 	BB4_11;

	ld.global.f32 	%f11, [%rd4+8];
	mov.f32 	%f343, %f11;

BB4_11:
	.loc 1 288 1
	mov.f32 	%f12, %f343;
	setp.eq.s32	%p14, %r4, 0;
	.loc 1 288 1
	or.pred  	%p15, %p14, %p9;
	add.s32 	%r38, %r4, -1;
	mad.lo.s32 	%r39, %r38, %r5, %r3;
	cvt.s64.s32	%rd34, %r39;
	add.s64 	%rd35, %rd34, %rd3;
	shl.b64 	%rd36, %rd35, 2;
	add.s64 	%rd6, %rd1, %rd36;
	.loc 1 288 1
	mov.f32 	%f334, %f4;
	@%p15 bra 	BB4_13;

	ld.global.f32 	%f334, [%rd6+-4];

BB4_13:
	mov.f32 	%f329, %f3;
	@%p14 bra 	BB4_15;

	ld.global.f32 	%f329, [%rd6];

BB4_15:
	mov.f32 	%f333, %f4;
	@%p14 bra 	BB4_17;

	ld.global.f32 	%f333, [%rd6+4];

BB4_17:
	setp.ge.s32	%p18, %r4, %r7;
	.loc 1 288 1
	mov.f32 	%f342, %f1;
	@%p18 bra 	BB4_19;

	add.s32 	%r42, %r4, 2;
	mad.lo.s32 	%r43, %r42, %r5, %r3;
	cvt.s64.s32	%rd41, %r43;
	add.s64 	%rd42, %rd41, %rd3;
	shl.b64 	%rd43, %rd42, 2;
	add.s64 	%rd44, %rd1, %rd43;
	ld.global.f32 	%f342, [%rd44];

BB4_19:
	add.s32 	%r44, %r4, 2;
	mad.lo.s32 	%r45, %r44, %r5, %r3;
	cvt.s64.s32	%rd45, %r45;
	add.s64 	%rd46, %rd45, %rd3;
	shl.b64 	%rd47, %rd46, 2;
	add.s64 	%rd7, %rd1, %rd47;
	.loc 1 288 1
	mov.f32 	%f337, %f2;
	@%p18 bra 	BB4_21;

	ld.global.f32 	%f337, [%rd7+4];

BB4_21:
	or.pred  	%p22, %p18, %p10;
	mov.f32 	%f341, %f1;
	@%p22 bra 	BB4_23;

	ld.global.f32 	%f341, [%rd7+8];

BB4_23:
	.loc 1 288 1
	add.ftz.f32 	%f190, %f334, %f333;
	add.ftz.f32 	%f191, %f190, %f6;
	add.ftz.f32 	%f192, %f191, %f4;
	mul.ftz.f32 	%f193, %f192, 0f3E800000;
	add.ftz.f32 	%f194, %f10, %f2;
	add.ftz.f32 	%f195, %f194, %f329;
	add.ftz.f32 	%f196, %f195, %f3;
	mul.ftz.f32 	%f197, %f196, 0f3E800000;
	.loc 2 2765 10
	min.ftz.f32 	%f25, %f1, %f183;
	min.ftz.f32 	%f26, %f197, %f184;
	min.ftz.f32 	%f27, %f193, %f185;
	.loc 1 91 1
	ld.shared.f32 	%f28, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+24];
	ld.shared.f32 	%f29, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+28];
	mul.ftz.f32 	%f198, %f26, %f29;
	fma.rn.ftz.f32 	%f199, %f25, %f28, %f198;
	ld.shared.f32 	%f30, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+32];
	fma.rn.ftz.f32 	%f31, %f27, %f30, %f199;
	.loc 1 91 1
	setp.eq.s32	%p23, %r23, 0;
	.loc 1 91 1
	mov.f32 	%f356, 0f3F800000;
	.loc 1 91 1
	@%p23 bra 	BB4_34;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p24, %f31, 0f00000000;
	@%p24 bra 	BB4_26;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f200, %f31;
	mul.ftz.f32 	%f201, %f200, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f344, %f201;
	bra.uni 	BB4_27;

BB4_26:
	.loc 1 91 153
	neg.ftz.f32 	%f202, %f31;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f203, %f202;
	mul.ftz.f32 	%f204, %f203, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f205, %f204;
	.loc 1 91 190
	neg.ftz.f32 	%f344, %f205;

BB4_27:
	ld.shared.f32 	%f352, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+12];
	ld.shared.f32 	%f351, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+16];
	mul.ftz.f32 	%f206, %f26, %f351;
	fma.rn.ftz.f32 	%f207, %f25, %f352, %f206;
	ld.shared.f32 	%f350, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+20];
	fma.rn.ftz.f32 	%f38, %f27, %f350, %f207;
	setp.ltu.ftz.f32	%p25, %f38, 0f00000000;
	@%p25 bra 	BB4_29;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f208, %f38;
	mul.ftz.f32 	%f209, %f208, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f345, %f209;
	bra.uni 	BB4_30;

BB4_29:
	neg.ftz.f32 	%f210, %f38;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f211, %f210;
	mul.ftz.f32 	%f212, %f211, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f213, %f212;
	neg.ftz.f32 	%f345, %f213;

BB4_30:
	ld.shared.f32 	%f349, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix];
	ld.shared.f32 	%f348, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+4];
	mul.ftz.f32 	%f214, %f26, %f348;
	fma.rn.ftz.f32 	%f215, %f25, %f349, %f214;
	ld.shared.f32 	%f347, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+8];
	fma.rn.ftz.f32 	%f45, %f27, %f347, %f215;
	setp.ltu.ftz.f32	%p26, %f45, 0f00000000;
	@%p26 bra 	BB4_32;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f216, %f45;
	mul.ftz.f32 	%f217, %f216, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f346, %f217;
	bra.uni 	BB4_33;

BB4_32:
	neg.ftz.f32 	%f218, %f45;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f219, %f218;
	mul.ftz.f32 	%f220, %f219, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f221, %f220;
	neg.ftz.f32 	%f346, %f221;

BB4_33:
	mov.f32 	%f355, %f346;
	mov.f32 	%f354, %f345;
	mov.f32 	%f353, %f344;
	bra.uni 	BB4_35;

BB4_34:
	.loc 1 91 1
	ld.shared.f32 	%f352, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+12];
	ld.shared.f32 	%f351, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+16];
	mul.ftz.f32 	%f222, %f26, %f351;
	fma.rn.ftz.f32 	%f223, %f25, %f352, %f222;
	ld.shared.f32 	%f350, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+20];
	fma.rn.ftz.f32 	%f354, %f27, %f350, %f223;
	ld.shared.f32 	%f349, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix];
	ld.shared.f32 	%f348, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+4];
	mul.ftz.f32 	%f224, %f26, %f348;
	fma.rn.ftz.f32 	%f225, %f25, %f349, %f224;
	ld.shared.f32 	%f347, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Linear_Kernel$__cuda_local_var_171026_416_non_const_matrix+8];
	fma.rn.ftz.f32 	%f355, %f27, %f347, %f225;
	mov.f32 	%f353, %f31;

BB4_35:
	.loc 1 288 1
	sub.s32 	%r52, %r32, %r4;
	setp.eq.s32	%p27, %r17, 0;
	selp.b32	%r53, %r4, %r52, %p27;
	.loc 1 288 1
	mad.lo.s32 	%r8, %r53, %r16, %r3;
	.loc 1 288 1
	setp.eq.s32	%p28, %r18, 0;
	@%p28 bra 	BB4_37;

	cvta.to.global.u64 	%rd48, %rd8;
	mul.wide.s32 	%rd49, %r8, 16;
	add.s64 	%rd50, %rd48, %rd49;
	.loc 1 288 1
	st.global.v4.f32 	[%rd50], {%f353, %f354, %f355, %f356};
	bra.uni 	BB4_38;

BB4_37:
	cvta.to.global.u64 	%rd51, %rd8;
	mul.wide.s32 	%rd52, %r8, 8;
	add.s64 	%rd53, %rd51, %rd52;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f353;
	mov.b16 	%rs1, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f354;
	mov.b16 	%rs2, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f355;
	mov.b16 	%rs3, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f356;
	mov.b16 	%rs4, %temp;
}
	.loc 1 288 241
	st.global.v4.u16 	[%rd53], {%rs1, %rs2, %rs3, %rs4};

BB4_38:
	.loc 1 288 1
	add.ftz.f32 	%f226, %f333, %f4;
	mul.ftz.f32 	%f227, %f226, 0f3F000000;
	add.ftz.f32 	%f77, %f1, %f12;
	mul.ftz.f32 	%f228, %f77, 0f3F000000;
	.loc 2 2765 10
	min.ftz.f32 	%f78, %f228, %f183;
	min.ftz.f32 	%f79, %f2, %f184;
	min.ftz.f32 	%f80, %f227, %f185;
	.loc 1 91 1
	mul.ftz.f32 	%f229, %f79, %f29;
	fma.rn.ftz.f32 	%f230, %f78, %f28, %f229;
	fma.rn.ftz.f32 	%f81, %f80, %f30, %f230;
	mov.f32 	%f363, 0f3F800000;
	.loc 1 91 1
	@%p23 bra 	BB4_49;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p31, %f81, 0f00000000;
	@%p31 bra 	BB4_41;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f231, %f81;
	mul.ftz.f32 	%f232, %f231, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f357, %f232;
	bra.uni 	BB4_42;

BB4_41:
	.loc 1 91 153
	neg.ftz.f32 	%f233, %f81;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f234, %f233;
	mul.ftz.f32 	%f235, %f234, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f236, %f235;
	.loc 1 91 190
	neg.ftz.f32 	%f357, %f236;

BB4_42:
	mul.ftz.f32 	%f237, %f79, %f351;
	fma.rn.ftz.f32 	%f238, %f78, %f352, %f237;
	fma.rn.ftz.f32 	%f85, %f80, %f350, %f238;
	setp.ltu.ftz.f32	%p32, %f85, 0f00000000;
	@%p32 bra 	BB4_44;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f239, %f85;
	mul.ftz.f32 	%f240, %f239, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f358, %f240;
	bra.uni 	BB4_45;

BB4_44:
	neg.ftz.f32 	%f241, %f85;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f242, %f241;
	mul.ftz.f32 	%f243, %f242, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f244, %f243;
	neg.ftz.f32 	%f358, %f244;

BB4_45:
	mul.ftz.f32 	%f245, %f79, %f348;
	fma.rn.ftz.f32 	%f246, %f78, %f349, %f245;
	fma.rn.ftz.f32 	%f89, %f80, %f347, %f246;
	setp.ltu.ftz.f32	%p33, %f89, 0f00000000;
	@%p33 bra 	BB4_47;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f247, %f89;
	mul.ftz.f32 	%f248, %f247, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f359, %f248;
	bra.uni 	BB4_48;

BB4_47:
	neg.ftz.f32 	%f249, %f89;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f250, %f249;
	mul.ftz.f32 	%f251, %f250, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f252, %f251;
	neg.ftz.f32 	%f359, %f252;

BB4_48:
	mov.f32 	%f362, %f359;
	mov.f32 	%f361, %f358;
	mov.f32 	%f360, %f357;
	bra.uni 	BB4_50;

BB4_49:
	.loc 1 91 1
	mul.ftz.f32 	%f253, %f79, %f351;
	fma.rn.ftz.f32 	%f254, %f78, %f352, %f253;
	fma.rn.ftz.f32 	%f361, %f80, %f350, %f254;
	mul.ftz.f32 	%f255, %f79, %f348;
	fma.rn.ftz.f32 	%f256, %f78, %f349, %f255;
	fma.rn.ftz.f32 	%f362, %f80, %f347, %f256;
	mov.f32 	%f360, %f81;

BB4_50:
	.loc 1 288 1
	add.s32 	%r9, %r8, 1;
	.loc 1 288 1
	@%p28 bra 	BB4_52;

	cvta.to.global.u64 	%rd54, %rd8;
	mul.wide.s32 	%rd55, %r9, 16;
	add.s64 	%rd56, %rd54, %rd55;
	.loc 1 288 1
	st.global.v4.f32 	[%rd56], {%f360, %f361, %f362, %f363};
	bra.uni 	BB4_53;

BB4_52:
	cvta.to.global.u64 	%rd57, %rd8;
	mul.wide.s32 	%rd58, %r9, 8;
	add.s64 	%rd59, %rd57, %rd58;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f360;
	mov.b16 	%rs5, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f361;
	mov.b16 	%rs6, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f362;
	mov.b16 	%rs7, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f363;
	mov.b16 	%rs8, %temp;
}
	.loc 1 288 241
	st.global.v4.u16 	[%rd59], {%rs5, %rs6, %rs7, %rs8};

BB4_53:
	.loc 1 288 1
	add.ftz.f32 	%f257, %f6, %f4;
	mul.ftz.f32 	%f258, %f257, 0f3F000000;
	add.ftz.f32 	%f259, %f1, %f342;
	mul.ftz.f32 	%f260, %f259, 0f3F000000;
	.loc 2 2765 10
	min.ftz.f32 	%f113, %f260, %f183;
	min.ftz.f32 	%f114, %f3, %f184;
	min.ftz.f32 	%f115, %f258, %f185;
	.loc 1 91 1
	mul.ftz.f32 	%f261, %f114, %f29;
	fma.rn.ftz.f32 	%f262, %f113, %f28, %f261;
	fma.rn.ftz.f32 	%f116, %f115, %f30, %f262;
	mov.f32 	%f370, 0f3F800000;
	.loc 1 91 1
	@%p23 bra 	BB4_64;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p37, %f116, 0f00000000;
	@%p37 bra 	BB4_56;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f263, %f116;
	mul.ftz.f32 	%f264, %f263, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f364, %f264;
	bra.uni 	BB4_57;

BB4_56:
	.loc 1 91 153
	neg.ftz.f32 	%f265, %f116;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f266, %f265;
	mul.ftz.f32 	%f267, %f266, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f268, %f267;
	.loc 1 91 190
	neg.ftz.f32 	%f364, %f268;

BB4_57:
	mul.ftz.f32 	%f269, %f114, %f351;
	fma.rn.ftz.f32 	%f270, %f113, %f352, %f269;
	fma.rn.ftz.f32 	%f120, %f115, %f350, %f270;
	setp.ltu.ftz.f32	%p38, %f120, 0f00000000;
	@%p38 bra 	BB4_59;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f271, %f120;
	mul.ftz.f32 	%f272, %f271, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f365, %f272;
	bra.uni 	BB4_60;

BB4_59:
	neg.ftz.f32 	%f273, %f120;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f274, %f273;
	mul.ftz.f32 	%f275, %f274, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f276, %f275;
	neg.ftz.f32 	%f365, %f276;

BB4_60:
	mul.ftz.f32 	%f277, %f114, %f348;
	fma.rn.ftz.f32 	%f278, %f113, %f349, %f277;
	fma.rn.ftz.f32 	%f124, %f115, %f347, %f278;
	setp.ltu.ftz.f32	%p39, %f124, 0f00000000;
	@%p39 bra 	BB4_62;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f279, %f124;
	mul.ftz.f32 	%f280, %f279, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f366, %f280;
	bra.uni 	BB4_63;

BB4_62:
	neg.ftz.f32 	%f281, %f124;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f282, %f281;
	mul.ftz.f32 	%f283, %f282, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f284, %f283;
	neg.ftz.f32 	%f366, %f284;

BB4_63:
	mov.f32 	%f369, %f366;
	mov.f32 	%f368, %f365;
	mov.f32 	%f367, %f364;
	bra.uni 	BB4_65;

BB4_64:
	.loc 1 91 1
	mul.ftz.f32 	%f285, %f114, %f351;
	fma.rn.ftz.f32 	%f286, %f113, %f352, %f285;
	fma.rn.ftz.f32 	%f368, %f115, %f350, %f286;
	mul.ftz.f32 	%f287, %f114, %f348;
	fma.rn.ftz.f32 	%f288, %f113, %f349, %f287;
	fma.rn.ftz.f32 	%f369, %f115, %f347, %f288;
	mov.f32 	%f367, %f116;

BB4_65:
	.loc 1 288 1
	selp.b32	%r95, 1, -1, %p27;
	add.s32 	%r96, %r53, %r95;
	.loc 1 288 1
	mul.lo.s32 	%r10, %r96, %r16;
	add.s32 	%r11, %r10, %r3;
	.loc 1 288 1
	@%p28 bra 	BB4_67;

	cvta.to.global.u64 	%rd60, %rd8;
	mul.wide.s32 	%rd61, %r11, 16;
	add.s64 	%rd62, %rd60, %rd61;
	.loc 1 288 1
	st.global.v4.f32 	[%rd62], {%f367, %f368, %f369, %f370};
	bra.uni 	BB4_68;

BB4_67:
	cvta.to.global.u64 	%rd63, %rd8;
	mul.wide.s32 	%rd64, %r11, 8;
	add.s64 	%rd65, %rd63, %rd64;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f367;
	mov.b16 	%rs9, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f368;
	mov.b16 	%rs10, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f369;
	mov.b16 	%rs11, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f370;
	mov.b16 	%rs12, %temp;
}
	.loc 1 288 241
	st.global.v4.u16 	[%rd65], {%rs9, %rs10, %rs11, %rs12};

BB4_68:
	.loc 1 288 1
	add.ftz.f32 	%f289, %f2, %f3;
	add.ftz.f32 	%f290, %f289, %f8;
	add.ftz.f32 	%f291, %f290, %f337;
	mul.ftz.f32 	%f292, %f291, 0f3E800000;
	add.ftz.f32 	%f293, %f77, %f342;
	add.ftz.f32 	%f294, %f293, %f341;
	mul.ftz.f32 	%f295, %f294, 0f3E800000;
	.loc 2 2765 10
	min.ftz.f32 	%f148, %f295, %f183;
	min.ftz.f32 	%f149, %f292, %f184;
	min.ftz.f32 	%f150, %f4, %f185;
	.loc 1 91 1
	mul.ftz.f32 	%f296, %f149, %f29;
	fma.rn.ftz.f32 	%f297, %f148, %f28, %f296;
	fma.rn.ftz.f32 	%f151, %f150, %f30, %f297;
	mov.f32 	%f377, 0f3F800000;
	.loc 1 91 1
	@%p23 bra 	BB4_79;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p43, %f151, 0f00000000;
	@%p43 bra 	BB4_71;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f298, %f151;
	mul.ftz.f32 	%f299, %f298, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f371, %f299;
	bra.uni 	BB4_72;

BB4_71:
	.loc 1 91 153
	neg.ftz.f32 	%f300, %f151;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f301, %f300;
	mul.ftz.f32 	%f302, %f301, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f303, %f302;
	.loc 1 91 190
	neg.ftz.f32 	%f371, %f303;

BB4_72:
	mul.ftz.f32 	%f304, %f149, %f351;
	fma.rn.ftz.f32 	%f305, %f148, %f352, %f304;
	fma.rn.ftz.f32 	%f155, %f150, %f350, %f305;
	setp.ltu.ftz.f32	%p44, %f155, 0f00000000;
	@%p44 bra 	BB4_74;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f306, %f155;
	mul.ftz.f32 	%f307, %f306, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f372, %f307;
	bra.uni 	BB4_75;

BB4_74:
	neg.ftz.f32 	%f308, %f155;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f309, %f308;
	mul.ftz.f32 	%f310, %f309, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f311, %f310;
	neg.ftz.f32 	%f372, %f311;

BB4_75:
	mul.ftz.f32 	%f312, %f149, %f348;
	fma.rn.ftz.f32 	%f313, %f148, %f349, %f312;
	fma.rn.ftz.f32 	%f159, %f150, %f347, %f313;
	setp.ltu.ftz.f32	%p45, %f159, 0f00000000;
	@%p45 bra 	BB4_77;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f314, %f159;
	mul.ftz.f32 	%f315, %f314, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f373, %f315;
	bra.uni 	BB4_78;

BB4_77:
	neg.ftz.f32 	%f316, %f159;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f317, %f316;
	mul.ftz.f32 	%f318, %f317, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f319, %f318;
	neg.ftz.f32 	%f373, %f319;

BB4_78:
	mov.f32 	%f376, %f373;
	mov.f32 	%f375, %f372;
	mov.f32 	%f374, %f371;
	bra.uni 	BB4_80;

BB4_79:
	.loc 1 91 1
	mul.ftz.f32 	%f320, %f149, %f351;
	fma.rn.ftz.f32 	%f321, %f148, %f352, %f320;
	fma.rn.ftz.f32 	%f375, %f150, %f350, %f321;
	mul.ftz.f32 	%f322, %f149, %f348;
	fma.rn.ftz.f32 	%f323, %f148, %f349, %f322;
	fma.rn.ftz.f32 	%f376, %f150, %f347, %f323;
	mov.f32 	%f374, %f151;

BB4_80:
	.loc 1 288 1
	add.s32 	%r107, %r3, %r10;
	.loc 1 288 1
	add.s32 	%r12, %r107, 1;
	.loc 1 288 1
	@%p28 bra 	BB4_82;

	cvta.to.global.u64 	%rd66, %rd8;
	mul.wide.s32 	%rd67, %r12, 16;
	add.s64 	%rd68, %rd66, %rd67;
	.loc 1 288 1
	st.global.v4.f32 	[%rd68], {%f374, %f375, %f376, %f377};
	bra.uni 	BB4_83;

BB4_82:
	cvta.to.global.u64 	%rd69, %rd8;
	mul.wide.s32 	%rd70, %r12, 8;
	add.s64 	%rd71, %rd69, %rd70;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f374;
	mov.b16 	%rs13, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f375;
	mov.b16 	%rs14, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f376;
	mov.b16 	%rs15, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f377;
	mov.b16 	%rs16, %temp;
}
	.loc 1 288 241
	st.global.v4.u16 	[%rd71], {%rs13, %rs14, %rs15, %rs16};

BB4_83:
	.loc 1 288 2
	ret;
}

.visible .entry PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel(
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_0,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_1,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_2,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_3,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_4,
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_5,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_6,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_7,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_8,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_9,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_10,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_11
)
{
	.reg .pred 	%p<58>;
	.reg .s16 	%rs<17>;
	.reg .s32 	%r<283>;
	.reg .f32 	%f<316>;
	.reg .s64 	%rd<135>;


	ld.param.u64 	%rd7, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_0];
	ld.param.u32 	%r13, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_1];
	ld.param.u32 	%r14, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_2];
	ld.param.u32 	%r15, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_3];
	ld.param.u64 	%rd8, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_5];
	ld.param.u32 	%r16, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_6];
	ld.param.u32 	%r17, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_7];
	ld.param.u32 	%r18, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_8];
	ld.param.u32 	%r19, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Green_Kernel_param_9];
	cvta.to.global.u64 	%rd1, %rd7;
	.loc 1 420 1
	mov.u32 	%r20, %ntid.x;
	mov.u32 	%r21, %ctaid.x;
	mov.u32 	%r22, %tid.x;
	mad.lo.s32 	%r23, %r20, %r21, %r22;
	shl.b32 	%r1, %r23, 1;
	mov.u32 	%r24, %ntid.y;
	mov.u32 	%r25, %ctaid.y;
	mov.u32 	%r26, %tid.y;
	mad.lo.s32 	%r27, %r24, %r25, %r26;
	shl.b32 	%r2, %r27, 1;
	.loc 1 420 1
	setp.lt.s32	%p1, %r1, %r18;
	setp.lt.s32	%p2, %r2, %r19;
	and.pred  	%p3, %p1, %p2;
	.loc 1 420 1
	@!%p3 bra 	BB5_81;
	bra.uni 	BB5_1;

BB5_1:
	.loc 1 420 1
	cvt.s64.s32	%rd9, %r13;
	.loc 1 420 1
	add.s32 	%r28, %r19, -1;
	mul.lo.s32 	%r29, %r28, %r14;
	cvt.s64.s32	%rd10, %r29;
	neg.s32 	%r30, %r14;
	.loc 1 420 1
	setp.eq.s32	%p4, %r15, 0;
	selp.b32	%r3, %r14, %r30, %p4;
	selp.b64	%rd11, 0, %rd10, %p4;
	add.s64 	%rd2, %rd11, %rd9;
	.loc 1 420 1
	add.s32 	%r4, %r18, -3;
	mul.lo.s32 	%r5, %r2, %r3;
	add.s32 	%r31, %r5, %r1;
	cvt.s64.s32	%rd12, %r31;
	add.s64 	%rd13, %rd12, %rd2;
	shl.b64 	%rd14, %rd13, 2;
	add.s64 	%rd3, %rd1, %rd14;
	ld.global.f32 	%f1, [%rd3];
	setp.ltu.ftz.f32	%p5, %f1, 0f00000000;
	@%p5 bra 	BB5_3;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f97, %f1;
	mul.ftz.f32 	%f98, %f97, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f304, %f98;
	bra.uni 	BB5_4;

BB5_3:
	.loc 1 420 231
	neg.ftz.f32 	%f99, %f1;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f100, %f99;
	mul.ftz.f32 	%f101, %f100, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f102, %f101;
	neg.ftz.f32 	%f304, %f102;

BB5_4:
	.loc 1 420 1
	mov.f32 	%f4, %f304;
	add.s32 	%r32, %r1, %r5;
	.loc 1 420 1
	add.s32 	%r33, %r32, 1;
	cvt.s64.s32	%rd15, %r32;
	.loc 1 420 1
	cvt.s64.s32	%rd16, %r33;
	add.s64 	%rd17, %rd15, %rd2;
	.loc 1 420 1
	add.s64 	%rd18, %rd16, %rd2;
	shl.b64 	%rd19, %rd17, 2;
	add.s64 	%rd4, %rd1, %rd19;
	.loc 1 420 1
	shl.b64 	%rd20, %rd18, 2;
	add.s64 	%rd5, %rd1, %rd20;
	ld.global.f32 	%f5, [%rd4+4];
	setp.ltu.ftz.f32	%p6, %f5, 0f00000000;
	@%p6 bra 	BB5_6;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f103, %f5;
	mul.ftz.f32 	%f104, %f103, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f293, %f104;
	bra.uni 	BB5_7;

BB5_6:
	neg.ftz.f32 	%f105, %f5;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f106, %f105;
	mul.ftz.f32 	%f107, %f106, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f108, %f107;
	neg.ftz.f32 	%f293, %f108;

BB5_7:
	.loc 1 420 1
	mov.f32 	%f8, %f293;
	add.s32 	%r34, %r2, 1;
	mul.lo.s32 	%r6, %r34, %r3;
	shl.b32 	%r35, %r3, 2;
	cvt.s64.s32	%rd21, %r35;
	add.s64 	%rd22, %rd3, %rd21;
	.loc 1 420 1
	ld.global.f32 	%f9, [%rd22];
	setp.ltu.ftz.f32	%p7, %f9, 0f00000000;
	@%p7 bra 	BB5_9;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f109, %f9;
	mul.ftz.f32 	%f110, %f109, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f288, %f110;
	bra.uni 	BB5_10;

BB5_9:
	neg.ftz.f32 	%f111, %f9;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f112, %f111;
	mul.ftz.f32 	%f113, %f112, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f114, %f113;
	neg.ftz.f32 	%f288, %f114;

BB5_10:
	.loc 1 420 1
	mov.f32 	%f12, %f288;
	add.s64 	%rd24, %rd5, %rd21;
	.loc 1 420 1
	ld.global.f32 	%f13, [%rd24];
	setp.ltu.ftz.f32	%p8, %f13, 0f00000000;
	@%p8 bra 	BB5_12;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f115, %f13;
	mul.ftz.f32 	%f116, %f115, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f315, %f116;
	bra.uni 	BB5_13;

BB5_12:
	neg.ftz.f32 	%f117, %f13;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f118, %f117;
	mul.ftz.f32 	%f119, %f118, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f120, %f119;
	neg.ftz.f32 	%f315, %f120;

BB5_13:
	.loc 1 420 1
	mov.f32 	%f16, %f315;
	add.s32 	%r37, %r1, %r6;
	cvt.s64.s32	%rd25, %r37;
	add.s64 	%rd30, %rd25, %rd2;
	shl.b64 	%rd32, %rd30, 2;
	add.s64 	%rd6, %rd1, %rd32;
	setp.lt.s32	%p10, %r1, 1;
	.loc 1 420 1
	mov.f32 	%f314, %f16;
	@%p10 bra 	BB5_17;

	ld.global.f32 	%f17, [%rd6+-4];
	setp.ltu.ftz.f32	%p11, %f17, 0f00000000;
	@%p11 bra 	BB5_16;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f121, %f17;
	mul.ftz.f32 	%f122, %f121, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f18, %f122;
	mov.f32 	%f314, %f18;
	bra.uni 	BB5_17;

BB5_16:
	neg.ftz.f32 	%f123, %f17;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f124, %f123;
	mul.ftz.f32 	%f125, %f124, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f126, %f125;
	neg.ftz.f32 	%f19, %f126;
	mov.f32 	%f314, %f19;

BB5_17:
	.loc 1 420 1
	mov.f32 	%f20, %f314;
	add.s32 	%r40, %r18, -2;
	setp.ge.s32	%p12, %r1, %r40;
	.loc 1 420 1
	mov.f32 	%f287, %f12;
	@%p12 bra 	BB5_21;

	ld.global.f32 	%f21, [%rd6+8];
	setp.ltu.ftz.f32	%p13, %f21, 0f00000000;
	@%p13 bra 	BB5_20;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f127, %f21;
	mul.ftz.f32 	%f128, %f127, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f22, %f128;
	mov.f32 	%f287, %f22;
	bra.uni 	BB5_21;

BB5_20:
	neg.ftz.f32 	%f129, %f21;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f130, %f129;
	mul.ftz.f32 	%f131, %f130, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f132, %f131;
	neg.ftz.f32 	%f23, %f132;
	mov.f32 	%f287, %f23;

BB5_21:
	.loc 1 420 1
	mov.f32 	%f24, %f287;
	setp.ge.s32	%p14, %r1, %r4;
	mov.f32 	%f313, %f16;
	@%p14 bra 	BB5_25;

	ld.global.f32 	%f25, [%rd6+12];
	setp.ltu.ftz.f32	%p15, %f25, 0f00000000;
	@%p15 bra 	BB5_24;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f133, %f25;
	mul.ftz.f32 	%f134, %f133, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f313, %f134;
	bra.uni 	BB5_25;

BB5_24:
	neg.ftz.f32 	%f135, %f25;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f136, %f135;
	mul.ftz.f32 	%f137, %f136, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f138, %f137;
	neg.ftz.f32 	%f313, %f138;

BB5_25:
	setp.lt.s32	%p16, %r1, 2;
	.loc 1 420 1
	mov.f32 	%f303, %f4;
	@%p16 bra 	BB5_29;

	ld.global.f32 	%f29, [%rd4+-8];
	setp.ltu.ftz.f32	%p17, %f29, 0f00000000;
	@%p17 bra 	BB5_28;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f139, %f29;
	mul.ftz.f32 	%f140, %f139, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f30, %f140;
	mov.f32 	%f303, %f30;
	bra.uni 	BB5_29;

BB5_28:
	neg.ftz.f32 	%f141, %f29;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f142, %f141;
	mul.ftz.f32 	%f143, %f142, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f144, %f143;
	neg.ftz.f32 	%f31, %f144;
	mov.f32 	%f303, %f31;

BB5_29:
	.loc 1 420 1
	mov.f32 	%f32, %f303;
	mov.f32 	%f292, %f8;
	@%p10 bra 	BB5_33;

	ld.global.f32 	%f33, [%rd4+-4];
	setp.ltu.ftz.f32	%p19, %f33, 0f00000000;
	@%p19 bra 	BB5_32;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f145, %f33;
	mul.ftz.f32 	%f146, %f145, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f34, %f146;
	mov.f32 	%f292, %f34;
	bra.uni 	BB5_33;

BB5_32:
	neg.ftz.f32 	%f147, %f33;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f148, %f147;
	mul.ftz.f32 	%f149, %f148, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f150, %f149;
	neg.ftz.f32 	%f35, %f150;
	mov.f32 	%f292, %f35;

BB5_33:
	.loc 1 420 1
	mov.f32 	%f36, %f292;
	mov.f32 	%f302, %f4;
	@%p12 bra 	BB5_37;

	ld.global.f32 	%f37, [%rd4+8];
	setp.ltu.ftz.f32	%p21, %f37, 0f00000000;
	@%p21 bra 	BB5_36;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f151, %f37;
	mul.ftz.f32 	%f152, %f151, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f302, %f152;
	bra.uni 	BB5_37;

BB5_36:
	neg.ftz.f32 	%f153, %f37;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f154, %f153;
	mul.ftz.f32 	%f155, %f154, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f156, %f155;
	neg.ftz.f32 	%f302, %f156;

BB5_37:
	setp.lt.s32	%p22, %r2, 1;
	.loc 1 420 1
	or.pred  	%p24, %p22, %p10;
	mov.f32 	%f312, %f16;
	@%p24 bra 	BB5_41;

	add.s32 	%r77, %r2, -1;
	mad.lo.s32 	%r85, %r77, %r3, %r1;
	cvt.s64.s32	%rd33, %r85;
	add.s64 	%rd38, %rd33, %rd2;
	shl.b64 	%rd40, %rd38, 2;
	add.s64 	%rd41, %rd1, %rd40;
	.loc 1 420 1
	ld.global.f32 	%f41, [%rd41+-4];
	setp.ltu.ftz.f32	%p26, %f41, 0f00000000;
	@%p26 bra 	BB5_40;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f157, %f41;
	mul.ftz.f32 	%f158, %f157, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f312, %f158;
	bra.uni 	BB5_41;

BB5_40:
	neg.ftz.f32 	%f159, %f41;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f160, %f159;
	mul.ftz.f32 	%f161, %f160, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f162, %f161;
	neg.ftz.f32 	%f312, %f162;

BB5_41:
	.loc 1 420 1
	mov.f32 	%f286, %f12;
	@%p22 bra 	BB5_45;

	add.s32 	%r98, %r2, -1;
	mad.lo.s32 	%r106, %r98, %r3, %r1;
	cvt.s64.s32	%rd42, %r106;
	add.s64 	%rd47, %rd42, %rd2;
	shl.b64 	%rd49, %rd47, 2;
	add.s64 	%rd50, %rd1, %rd49;
	ld.global.f32 	%f45, [%rd50];
	setp.ltu.ftz.f32	%p29, %f45, 0f00000000;
	@%p29 bra 	BB5_44;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f163, %f45;
	mul.ftz.f32 	%f164, %f163, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f286, %f164;
	bra.uni 	BB5_45;

BB5_44:
	neg.ftz.f32 	%f165, %f45;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f166, %f165;
	mul.ftz.f32 	%f167, %f166, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f168, %f167;
	neg.ftz.f32 	%f286, %f168;

BB5_45:
	.loc 1 420 1
	mov.f32 	%f311, %f16;
	@%p22 bra 	BB5_49;

	add.s32 	%r124, %r2, -1;
	mad.lo.s32 	%r127, %r124, %r3, %r1;
	cvt.s64.s32	%rd52, %r127;
	add.s64 	%rd57, %rd52, %rd2;
	shl.b64 	%rd58, %rd57, 2;
	add.s64 	%rd59, %rd1, %rd58;
	.loc 1 420 1
	ld.global.f32 	%f49, [%rd59+4];
	setp.ltu.ftz.f32	%p32, %f49, 0f00000000;
	@%p32 bra 	BB5_48;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f169, %f49;
	mul.ftz.f32 	%f170, %f169, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f311, %f170;
	bra.uni 	BB5_49;

BB5_48:
	neg.ftz.f32 	%f171, %f49;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f172, %f171;
	mul.ftz.f32 	%f173, %f172, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f174, %f173;
	neg.ftz.f32 	%f311, %f174;

BB5_49:
	setp.lt.s32	%p33, %r2, 2;
	.loc 1 420 1
	mov.f32 	%f301, %f4;
	@%p33 bra 	BB5_53;

	add.s32 	%r140, %r2, -2;
	mad.lo.s32 	%r148, %r140, %r3, %r1;
	cvt.s64.s32	%rd60, %r148;
	add.s64 	%rd65, %rd60, %rd2;
	shl.b64 	%rd67, %rd65, 2;
	add.s64 	%rd68, %rd1, %rd67;
	ld.global.f32 	%f53, [%rd68];
	setp.ltu.ftz.f32	%p35, %f53, 0f00000000;
	@%p35 bra 	BB5_52;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f175, %f53;
	mul.ftz.f32 	%f176, %f175, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f301, %f176;
	bra.uni 	BB5_53;

BB5_52:
	neg.ftz.f32 	%f177, %f53;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f178, %f177;
	mul.ftz.f32 	%f179, %f178, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f180, %f179;
	neg.ftz.f32 	%f301, %f180;

BB5_53:
	.loc 1 420 1
	add.s32 	%r156, %r19, -2;
	setp.ge.s32	%p36, %r2, %r156;
	.loc 1 420 1
	mov.f32 	%f300, %f4;
	@%p36 bra 	BB5_57;

	mad.lo.s32 	%r169, %r2, %r3, %r1;
	cvt.s64.s32	%rd70, %r169;
	add.s64 	%rd75, %rd70, %rd2;
	shl.b64 	%rd76, %rd75, 2;
	add.s64 	%rd77, %rd1, %rd76;
	shl.b32 	%r172, %r3, 3;
	cvt.s64.s32	%rd78, %r172;
	add.s64 	%rd79, %rd77, %rd78;
	.loc 1 420 1
	ld.global.f32 	%f57, [%rd79];
	setp.ltu.ftz.f32	%p38, %f57, 0f00000000;
	@%p38 bra 	BB5_56;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f181, %f57;
	mul.ftz.f32 	%f182, %f181, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f300, %f182;
	bra.uni 	BB5_57;

BB5_56:
	neg.ftz.f32 	%f183, %f57;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f184, %f183;
	mul.ftz.f32 	%f185, %f184, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f186, %f185;
	neg.ftz.f32 	%f300, %f186;

BB5_57:
	.loc 1 420 1
	mov.f32 	%f291, %f8;
	@%p36 bra 	BB5_61;

	add.s32 	%r182, %r35, 4;
	.loc 1 420 1
	mul.lo.s32 	%r192, %r27, %r3;
	shl.b32 	%r193, %r192, 1;
	add.s32 	%r194, %r1, %r193;
	add.s32 	%r195, %r194, 1;
	cvt.s64.s32	%rd80, %r195;
	add.s64 	%rd85, %rd80, %rd2;
	shl.b64 	%rd87, %rd85, 2;
	add.s64 	%rd88, %rd1, %rd87;
	cvt.s64.s32	%rd90, %r182;
	add.s64 	%rd91, %rd88, %rd21;
	add.s64 	%rd92, %rd91, %rd90;
	.loc 1 420 1
	ld.global.f32 	%f61, [%rd92+-4];
	setp.ltu.ftz.f32	%p41, %f61, 0f00000000;
	@%p41 bra 	BB5_60;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f187, %f61;
	mul.ftz.f32 	%f188, %f187, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f291, %f188;
	bra.uni 	BB5_61;

BB5_60:
	neg.ftz.f32 	%f189, %f61;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f190, %f189;
	mul.ftz.f32 	%f191, %f190, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f192, %f191;
	neg.ftz.f32 	%f291, %f192;

BB5_61:
	.loc 1 420 1
	or.pred  	%p44, %p36, %p12;
	mov.f32 	%f299, %f4;
	@%p44 bra 	BB5_65;

	add.s32 	%r215, %r2, 2;
	mad.lo.s32 	%r223, %r215, %r3, %r1;
	add.s32 	%r224, %r223, 2;
	cvt.s64.s32	%rd93, %r224;
	add.s64 	%rd98, %rd93, %rd2;
	shl.b64 	%rd100, %rd98, 2;
	add.s64 	%rd101, %rd1, %rd100;
	ld.global.f32 	%f65, [%rd101];
	setp.ltu.ftz.f32	%p46, %f65, 0f00000000;
	@%p46 bra 	BB5_64;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f193, %f65;
	mul.ftz.f32 	%f194, %f193, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f299, %f194;
	bra.uni 	BB5_65;

BB5_64:
	neg.ftz.f32 	%f195, %f65;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f196, %f195;
	mul.ftz.f32 	%f197, %f196, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f198, %f197;
	neg.ftz.f32 	%f299, %f198;

BB5_65:
	.loc 1 420 1
	add.s32 	%r232, %r19, -3;
	setp.ge.s32	%p47, %r2, %r232;
	mov.f32 	%f310, %f16;
	@%p47 bra 	BB5_69;

	add.s32 	%r238, %r2, 3;
	mad.lo.s32 	%r246, %r238, %r3, %r1;
	add.s32 	%r247, %r246, 1;
	cvt.s64.s32	%rd102, %r247;
	add.s64 	%rd107, %rd102, %rd2;
	shl.b64 	%rd109, %rd107, 2;
	add.s64 	%rd110, %rd1, %rd109;
	ld.global.f32 	%f69, [%rd110];
	setp.ltu.ftz.f32	%p49, %f69, 0f00000000;
	@%p49 bra 	BB5_68;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f199, %f69;
	mul.ftz.f32 	%f200, %f199, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f310, %f200;
	bra.uni 	BB5_69;

BB5_68:
	neg.ftz.f32 	%f201, %f69;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f202, %f201;
	mul.ftz.f32 	%f203, %f202, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f204, %f203;
	neg.ftz.f32 	%f310, %f204;

BB5_69:
	.loc 1 420 1
	sub.ftz.f32 	%f205, %f4, %f300;
	sub.ftz.f32 	%f206, %f4, %f301;
	add.ftz.f32 	%f207, %f206, %f205;
	sub.ftz.f32 	%f208, %f4, %f32;
	sub.ftz.f32 	%f209, %f4, %f302;
	add.ftz.f32 	%f210, %f209, %f208;
	add.ftz.f32 	%f211, %f12, %f286;
	add.ftz.f32 	%f212, %f8, %f36;
	mul.ftz.f32 	%f213, %f207, 0f3E800000;
	fma.rn.ftz.f32 	%f214, %f211, 0f3F000000, %f213;
	mul.ftz.f32 	%f215, %f210, 0f3E800000;
	fma.rn.ftz.f32 	%f216, %f212, 0f3F000000, %f215;
	add.ftz.f32 	%f217, %f214, %f216;
	mul.ftz.f32 	%f218, %f217, 0f3F000000;
	add.ftz.f32 	%f219, %f12, %f36;
	add.ftz.f32 	%f220, %f219, %f286;
	add.ftz.f32 	%f221, %f220, %f8;
	add.ftz.f32 	%f222, %f221, %f300;
	add.ftz.f32 	%f223, %f222, %f32;
	add.ftz.f32 	%f224, %f223, %f301;
	add.ftz.f32 	%f225, %f224, %f302;
	mul.ftz.f32 	%f226, %f225, 0f3C4CCCCD;
	sub.ftz.f32 	%f227, %f12, %f286;
	.loc 2 2750 10
	abs.ftz.f32 	%f228, %f227;
	abs.ftz.f32 	%f229, %f207;
	add.ftz.f32 	%f230, %f228, %f229;
	.loc 1 420 1
	sub.ftz.f32 	%f231, %f36, %f8;
	.loc 2 2750 10
	abs.ftz.f32 	%f232, %f231;
	abs.ftz.f32 	%f233, %f210;
	add.ftz.f32 	%f234, %f232, %f233;
	sub.ftz.f32 	%f235, %f230, %f234;
	setp.lt.ftz.f32	%p50, %f235, 0f00000000;
	selp.f32	%f236, %f214, %f216, %p50;
	.loc 2 2750 10
	abs.ftz.f32 	%f237, %f235;
	setp.lt.ftz.f32	%p51, %f237, %f226;
	selp.f32	%f82, %f218, %f236, %p51;
	.loc 1 420 1
	sub.ftz.f32 	%f238, %f16, %f310;
	sub.ftz.f32 	%f239, %f16, %f311;
	add.ftz.f32 	%f240, %f239, %f238;
	sub.ftz.f32 	%f241, %f16, %f20;
	sub.ftz.f32 	%f242, %f16, %f313;
	add.ftz.f32 	%f243, %f242, %f241;
	add.ftz.f32 	%f244, %f291, %f8;
	add.ftz.f32 	%f245, %f24, %f12;
	mul.ftz.f32 	%f246, %f240, 0f3E800000;
	fma.rn.ftz.f32 	%f247, %f244, 0f3F000000, %f246;
	mul.ftz.f32 	%f248, %f243, 0f3E800000;
	fma.rn.ftz.f32 	%f249, %f245, 0f3F000000, %f248;
	add.ftz.f32 	%f250, %f247, %f249;
	mul.ftz.f32 	%f251, %f250, 0f3F000000;
	add.ftz.f32 	%f252, %f291, %f12;
	add.ftz.f32 	%f253, %f252, %f8;
	add.ftz.f32 	%f254, %f253, %f24;
	add.ftz.f32 	%f255, %f254, %f310;
	add.ftz.f32 	%f256, %f255, %f20;
	add.ftz.f32 	%f257, %f256, %f311;
	add.ftz.f32 	%f258, %f257, %f313;
	mul.ftz.f32 	%f259, %f258, 0f3C4CCCCD;
	sub.ftz.f32 	%f260, %f291, %f8;
	.loc 2 2750 10
	abs.ftz.f32 	%f261, %f260;
	abs.ftz.f32 	%f262, %f240;
	add.ftz.f32 	%f263, %f261, %f262;
	.loc 1 420 1
	sub.ftz.f32 	%f264, %f12, %f24;
	.loc 2 2750 10
	abs.ftz.f32 	%f265, %f264;
	abs.ftz.f32 	%f266, %f243;
	add.ftz.f32 	%f267, %f265, %f266;
	sub.ftz.f32 	%f268, %f263, %f267;
	setp.lt.ftz.f32	%p52, %f268, 0f00000000;
	selp.f32	%f269, %f247, %f249, %p52;
	.loc 2 2750 10
	abs.ftz.f32 	%f270, %f268;
	setp.lt.ftz.f32	%p53, %f270, %f259;
	selp.f32	%f74, %f251, %f269, %p53;
	.loc 1 420 1
	add.ftz.f32 	%f271, %f312, %f311;
	add.ftz.f32 	%f272, %f271, %f20;
	add.ftz.f32 	%f273, %f272, %f16;
	mul.ftz.f32 	%f81, %f273, 0f3E800000;
	add.ftz.f32 	%f274, %f311, %f16;
	mul.ftz.f32 	%f76, %f274, 0f3F000000;
	add.ftz.f32 	%f275, %f4, %f302;
	mul.ftz.f32 	%f77, %f275, 0f3F000000;
	add.ftz.f32 	%f276, %f20, %f16;
	mul.ftz.f32 	%f78, %f276, 0f3F000000;
	add.ftz.f32 	%f277, %f4, %f300;
	mul.ftz.f32 	%f79, %f277, 0f3F000000;
	add.ftz.f32 	%f278, %f275, %f300;
	add.ftz.f32 	%f279, %f278, %f299;
	mul.ftz.f32 	%f80, %f279, 0f3E800000;
	mov.f32 	%f84, 0f3F800000;
	.loc 1 420 1
	mul.lo.s32 	%r254, %r27, %r16;
	shl.b32 	%r7, %r254, 1;
	add.s32 	%r8, %r7, %r1;
	.loc 1 420 1
	setp.eq.s32	%p54, %r17, 0;
	@%p54 bra 	BB5_71;

	cvta.to.global.u64 	%rd111, %rd8;
	mul.wide.s32 	%rd112, %r8, 16;
	add.s64 	%rd113, %rd111, %rd112;
	.loc 1 420 1
	st.global.v4.f32 	[%rd113], {%f81, %f82, %f4, %f84};
	bra.uni 	BB5_72;

BB5_71:
	cvta.to.global.u64 	%rd114, %rd8;
	mul.wide.s32 	%rd115, %r8, 8;
	add.s64 	%rd116, %rd114, %rd115;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f81;
	mov.b16 	%rs1, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f82;
	mov.b16 	%rs2, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f4;
	mov.b16 	%rs3, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f84;
	mov.b16 	%rs4, %temp;
}
	.loc 1 420 241
	st.global.v4.u16 	[%rd116], {%rs1, %rs2, %rs3, %rs4};

BB5_72:
	.loc 1 420 1
	add.s32 	%r265, %r1, %r7;
	.loc 1 420 1
	add.s32 	%r9, %r265, 1;
	.loc 1 420 1
	@%p54 bra 	BB5_74;

	cvta.to.global.u64 	%rd117, %rd8;
	mul.wide.s32 	%rd118, %r9, 16;
	add.s64 	%rd119, %rd117, %rd118;
	.loc 1 420 1
	st.global.v4.f32 	[%rd119], {%f76, %f8, %f77, %f84};
	bra.uni 	BB5_75;

BB5_74:
	cvta.to.global.u64 	%rd120, %rd8;
	mul.wide.s32 	%rd121, %r9, 8;
	add.s64 	%rd122, %rd120, %rd121;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f76;
	mov.b16 	%rs5, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f8;
	mov.b16 	%rs6, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f77;
	mov.b16 	%rs7, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f84;
	mov.b16 	%rs8, %temp;
}
	.loc 1 420 241
	st.global.v4.u16 	[%rd122], {%rs5, %rs6, %rs7, %rs8};

BB5_75:
	.loc 1 420 1
	mul.lo.s32 	%r10, %r34, %r16;
	add.s32 	%r11, %r10, %r1;
	.loc 1 420 1
	@%p54 bra 	BB5_77;

	cvta.to.global.u64 	%rd123, %rd8;
	mul.wide.s32 	%rd124, %r11, 16;
	add.s64 	%rd125, %rd123, %rd124;
	.loc 1 420 1
	st.global.v4.f32 	[%rd125], {%f78, %f12, %f79, %f84};
	bra.uni 	BB5_78;

BB5_77:
	cvta.to.global.u64 	%rd126, %rd8;
	mul.wide.s32 	%rd127, %r11, 8;
	add.s64 	%rd128, %rd126, %rd127;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f78;
	mov.b16 	%rs9, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f12;
	mov.b16 	%rs10, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f79;
	mov.b16 	%rs11, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f84;
	mov.b16 	%rs12, %temp;
}
	.loc 1 420 241
	st.global.v4.u16 	[%rd128], {%rs9, %rs10, %rs11, %rs12};

BB5_78:
	.loc 1 420 1
	add.s32 	%r282, %r1, %r10;
	.loc 1 420 1
	add.s32 	%r12, %r282, 1;
	.loc 1 420 1
	@%p54 bra 	BB5_80;

	cvta.to.global.u64 	%rd129, %rd8;
	mul.wide.s32 	%rd130, %r12, 16;
	add.s64 	%rd131, %rd129, %rd130;
	.loc 1 420 1
	st.global.v4.f32 	[%rd131], {%f16, %f74, %f80, %f84};
	bra.uni 	BB5_81;

BB5_80:
	cvta.to.global.u64 	%rd132, %rd8;
	mul.wide.s32 	%rd133, %r12, 8;
	add.s64 	%rd134, %rd132, %rd133;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f16;
	mov.b16 	%rs13, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f74;
	mov.b16 	%rs14, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f80;
	mov.b16 	%rs15, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f84;
	mov.b16 	%rs16, %temp;
}
	.loc 1 420 241
	st.global.v4.u16 	[%rd134], {%rs13, %rs14, %rs15, %rs16};

BB5_81:
	.loc 1 420 2
	ret;
}

.visible .entry PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel(
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_0,
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_1,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_2,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_3,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_4,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_5,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_6,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_7,
	.param .u64 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_8,
	.param .align 16 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_9[16],
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_10,
	.param .u32 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_11
)
{
	.reg .pred 	%p<62>;
	.reg .s16 	%rs<97>;
	.reg .s32 	%r<85>;
	.reg .f32 	%f<658>;
	.reg .s64 	%rd<74>;
	// demoted variable
	.shared .align 4 .b8 PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix[36];

	ld.param.u64 	%rd11, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_0];
	ld.param.u64 	%rd10, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_1];
	ld.param.u32 	%r18, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_2];
	ld.param.u32 	%r19, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_3];
	ld.param.u32 	%r20, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_4];
	ld.param.u32 	%r21, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_5];
	ld.param.u32 	%r22, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_6];
	ld.param.u32 	%r23, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_7];
	ld.param.u64 	%rd12, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_8];
	ld.param.f32 	%f336, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_9+8];
	ld.param.f32 	%f335, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_9+4];
	ld.param.f32 	%f334, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_9];
	ld.param.u32 	%r24, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_10];
	ld.param.u32 	%r25, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel_param_11];
	cvta.to.global.u64 	%rd1, %rd11;
	cvta.to.global.u64 	%rd2, %rd12;
	.loc 1 509 1
	cvt.s64.s32	%rd3, %r24;
	.loc 1 91 1
	mov.u32 	%r1, %tid.y;
	setp.eq.s32	%p1, %r1, 0;
	mov.u32 	%r2, %tid.x;
	setp.lt.s32	%p2, %r2, 3;
	and.pred  	%p3, %p1, %p2;
	@!%p3 bra 	BB6_2;
	bra.uni 	BB6_1;

BB6_1:
	setp.ne.s32	%p4, %r23, 0;
	.loc 1 91 1
	mul.lo.s32 	%r26, %r2, 3;
	cvt.s64.s32	%rd13, %r26;
	add.s32 	%r27, %r26, %r24;
	.loc 1 91 1
	add.s64 	%rd14, %rd13, %rd3;
	selp.b64	%rd15, 2, 0, %p4;
	add.s64 	%rd16, %rd14, %rd15;
	shl.b64 	%rd17, %rd16, 2;
	add.s64 	%rd18, %rd2, %rd17;
	mul.wide.s32 	%rd19, %r26, 4;
	mov.u64 	%rd20, PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix;
	add.s64 	%rd21, %rd20, %rd19;
	.loc 1 91 1
	ld.global.f32 	%f338, [%rd18];
	st.shared.f32 	[%rd21], %f338;
	mul.wide.s32 	%rd22, %r27, 4;
	add.s64 	%rd23, %rd2, %rd22;
	.loc 1 91 1
	ld.global.f32 	%f339, [%rd23+4];
	st.shared.f32 	[%rd21+4], %f339;
	selp.b64	%rd24, 0, 2, %p4;
	add.s64 	%rd25, %rd14, %rd24;
	shl.b64 	%rd26, %rd25, 2;
	add.s64 	%rd27, %rd2, %rd26;
	ld.global.f32 	%f340, [%rd27];
	st.shared.f32 	[%rd21+8], %f340;

BB6_2:
	.loc 1 91 1
	bar.sync 	0;
	.loc 1 509 1
	mov.u32 	%r28, %ntid.x;
	mov.u32 	%r29, %ctaid.x;
	mad.lo.s32 	%r30, %r28, %r29, %r2;
	shl.b32 	%r3, %r30, 1;
	mov.u32 	%r31, %ntid.y;
	mov.u32 	%r32, %ctaid.y;
	mad.lo.s32 	%r33, %r31, %r32, %r1;
	shl.b32 	%r4, %r33, 1;
	.loc 1 509 1
	setp.lt.s32	%p5, %r3, %r21;
	setp.lt.s32	%p6, %r4, %r22;
	and.pred  	%p7, %p5, %p6;
	.loc 1 509 1
	@!%p7 bra 	BB6_141;
	bra.uni 	BB6_3;

BB6_3:
	.loc 1 509 1
	add.s32 	%r5, %r21, -2;
	mul.lo.s32 	%r6, %r4, %r18;
	add.s32 	%r7, %r6, %r3;
	setp.eq.s32	%p8, %r20, 0;
	@%p8 bra 	BB6_5;

	mul.wide.s32 	%rd28, %r7, 16;
	add.s64 	%rd29, %rd1, %rd28;
	ld.global.v4.f32 	{%f341, %f342, %f343, %f344}, [%rd29];
	mov.f32 	%f587, %f344;
	mov.f32 	%f586, %f343;
	mov.f32 	%f585, %f342;
	mov.f32 	%f584, %f341;
	bra.uni 	BB6_6;

BB6_5:
	mul.wide.s32 	%rd30, %r7, 8;
	add.s64 	%rd31, %rd1, %rd30;
	.loc 1 509 1
	ld.global.v4.u16 	{%rs1, %rs2, %rs3, %rs4}, [%rd31];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs1;
	cvt.f32.f16 	%f584, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs2;
	cvt.f32.f16 	%f585, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs3;
	cvt.f32.f16 	%f586, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs4;
	cvt.f32.f16 	%f587, %temp;
	}

BB6_6:
	add.s32 	%r34, %r3, %r6;
	mul.wide.s32 	%rd32, %r34, 16;
	add.s64 	%rd4, %rd1, %rd32;
	mul.wide.s32 	%rd33, %r34, 8;
	add.s64 	%rd5, %rd1, %rd33;
	.loc 1 509 1
	@%p8 bra 	BB6_8;

	ld.global.v4.f32 	{%f345, %f346, %f347, %f348}, [%rd4+16];
	mov.f32 	%f591, %f348;
	mov.f32 	%f590, %f347;
	mov.f32 	%f589, %f346;
	mov.f32 	%f588, %f345;
	bra.uni 	BB6_9;

BB6_8:
	.loc 1 509 1
	ld.global.v4.u16 	{%rs9, %rs10, %rs11, %rs12}, [%rd5+8];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs9;
	cvt.f32.f16 	%f588, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs10;
	cvt.f32.f16 	%f589, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs11;
	cvt.f32.f16 	%f590, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs12;
	cvt.f32.f16 	%f591, %temp;
	}

BB6_9:
	.loc 1 509 1
	add.s32 	%r35, %r4, 1;
	mul.lo.s32 	%r8, %r35, %r18;
	add.s32 	%r9, %r8, %r3;
	@%p8 bra 	BB6_11;

	mul.wide.s32 	%rd34, %r9, 16;
	add.s64 	%rd35, %rd1, %rd34;
	ld.global.v4.f32 	{%f349, %f350, %f351, %f352}, [%rd35];
	mov.f32 	%f595, %f352;
	mov.f32 	%f594, %f351;
	mov.f32 	%f593, %f350;
	mov.f32 	%f592, %f349;
	bra.uni 	BB6_12;

BB6_11:
	mul.wide.s32 	%rd36, %r9, 8;
	add.s64 	%rd37, %rd1, %rd36;
	.loc 1 509 1
	ld.global.v4.u16 	{%rs17, %rs18, %rs19, %rs20}, [%rd37];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs17;
	cvt.f32.f16 	%f592, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs18;
	cvt.f32.f16 	%f593, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs19;
	cvt.f32.f16 	%f594, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs20;
	cvt.f32.f16 	%f595, %temp;
	}

BB6_12:
	add.s32 	%r36, %r3, %r8;
	mul.wide.s32 	%rd38, %r36, 16;
	add.s64 	%rd6, %rd1, %rd38;
	mul.wide.s32 	%rd39, %r36, 8;
	add.s64 	%rd7, %rd1, %rd39;
	mov.f32 	%f601, %f593;
	.loc 1 509 1
	@%p8 bra 	BB6_14;

	ld.global.v4.f32 	{%f353, %f354, %f355, %f356}, [%rd6+16];
	mov.f32 	%f599, %f356;
	mov.f32 	%f598, %f355;
	mov.f32 	%f597, %f354;
	mov.f32 	%f596, %f353;
	bra.uni 	BB6_15;

BB6_14:
	.loc 1 509 1
	ld.global.v4.u16 	{%rs25, %rs26, %rs27, %rs28}, [%rd7+8];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs25;
	cvt.f32.f16 	%f596, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs26;
	cvt.f32.f16 	%f597, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs27;
	cvt.f32.f16 	%f598, %temp;
	}
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs28;
	cvt.f32.f16 	%f599, %temp;
	}

BB6_15:
	setp.ge.s32	%p12, %r3, %r5;
	.loc 1 509 1
	@%p12 bra 	BB6_20;

	@%p8 bra 	BB6_18;

	ld.global.v4.f32 	{%f357, %f358, %f359, %f360}, [%rd4+32];
	mov.f32 	%f53, %f360;
	mov.f32 	%f52, %f359;
	mov.f32 	%f600, %f358;
	mov.f32 	%f50, %f357;
	bra.uni 	BB6_19;

BB6_18:
	.loc 1 509 1
	ld.global.v4.u16 	{%rs33, %rs34, %rs35, %rs36}, [%rd5+16];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs34;
	cvt.f32.f16 	%f600, %temp;
	}

BB6_19:
	mov.f32 	%f601, %f600;

BB6_20:
	.loc 1 509 1
	add.s32 	%r37, %r22, -2;
	setp.ge.s32	%p14, %r4, %r37;
	mov.f32 	%f603, %f589;
	.loc 1 509 1
	@%p14 bra 	BB6_25;

	add.s32 	%r38, %r4, 2;
	mad.lo.s32 	%r10, %r38, %r18, %r3;
	@%p8 bra 	BB6_23;

	mul.wide.s32 	%rd40, %r10, 16;
	add.s64 	%rd41, %rd1, %rd40;
	ld.global.v4.f32 	{%f361, %f362, %f363, %f364}, [%rd41];
	mov.f32 	%f68, %f364;
	mov.f32 	%f67, %f363;
	mov.f32 	%f602, %f362;
	mov.f32 	%f65, %f361;
	bra.uni 	BB6_24;

BB6_23:
	mul.wide.s32 	%rd42, %r10, 8;
	add.s64 	%rd43, %rd1, %rd42;
	.loc 1 509 1
	ld.global.v4.u16 	{%rs41, %rs42, %rs43, %rs44}, [%rd43];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs42;
	cvt.f32.f16 	%f602, %temp;
	}

BB6_24:
	mov.f32 	%f603, %f602;

BB6_25:
	.loc 1 509 1
	or.pred  	%p18, %p12, %p14;
	mov.f32 	%f605, %f597;
	.loc 1 509 1
	@%p18 bra 	BB6_30;

	add.s32 	%r41, %r4, 2;
	mad.lo.s32 	%r42, %r41, %r18, %r3;
	add.s32 	%r11, %r42, 2;
	@%p8 bra 	BB6_28;

	mul.wide.s32 	%rd44, %r11, 16;
	add.s64 	%rd45, %rd1, %rd44;
	ld.global.v4.f32 	{%f365, %f366, %f367, %f368}, [%rd45];
	mov.f32 	%f83, %f368;
	mov.f32 	%f82, %f367;
	mov.f32 	%f604, %f366;
	mov.f32 	%f80, %f365;
	bra.uni 	BB6_29;

BB6_28:
	mul.wide.s32 	%rd46, %r11, 8;
	add.s64 	%rd47, %rd1, %rd46;
	.loc 1 509 1
	ld.global.v4.u16 	{%rs49, %rs50, %rs51, %rs52}, [%rd47];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs50;
	cvt.f32.f16 	%f604, %temp;
	}

BB6_29:
	mov.f32 	%f605, %f604;

BB6_30:
	.loc 1 509 1
	add.ftz.f32 	%f369, %f585, %f601;
	mul.ftz.f32 	%f370, %f369, 0f3F000000;
	sub.ftz.f32 	%f371, %f589, %f370;
	add.ftz.f32 	%f94, %f590, %f371;
	add.ftz.f32 	%f372, %f585, %f603;
	mul.ftz.f32 	%f373, %f372, 0f3F000000;
	sub.ftz.f32 	%f374, %f593, %f373;
	add.ftz.f32 	%f95, %f594, %f374;
	add.ftz.f32 	%f375, %f369, %f603;
	add.ftz.f32 	%f376, %f375, %f605;
	fma.rn.ftz.f32 	%f377, %f376, 0fBE800000, %f597;
	add.ftz.f32 	%f97, %f598, %f377;
	setp.lt.s32	%p20, %r3, 1;
	setp.lt.s32	%p21, %r4, 1;
	.loc 1 509 1
	or.pred  	%p22, %p20, %p21;
	add.s32 	%r43, %r4, -1;
	mad.lo.s32 	%r44, %r43, %r18, %r3;
	mul.wide.s32 	%rd48, %r44, 16;
	add.s64 	%rd8, %rd1, %rd48;
	mul.wide.s32 	%rd49, %r44, 8;
	add.s64 	%rd9, %rd1, %rd49;
	mov.f32 	%f607, %f597;
	.loc 1 509 1
	@%p22 bra 	BB6_35;

	@%p8 bra 	BB6_33;

	ld.global.v4.f32 	{%f378, %f379, %f380, %f381}, [%rd8+-16];
	mov.f32 	%f101, %f381;
	mov.f32 	%f100, %f380;
	mov.f32 	%f606, %f379;
	mov.f32 	%f98, %f378;
	bra.uni 	BB6_34;

BB6_33:
	.loc 1 509 1
	ld.global.v4.u16 	{%rs57, %rs58, %rs59, %rs60}, [%rd9+-8];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs58;
	cvt.f32.f16 	%f606, %temp;
	}

BB6_34:
	mov.f32 	%f607, %f606;

BB6_35:
	mov.f32 	%f609, %f589;
	.loc 1 509 1
	@%p21 bra 	BB6_40;

	@%p8 bra 	BB6_38;

	ld.global.v4.f32 	{%f382, %f383, %f384, %f385}, [%rd8+16];
	mov.f32 	%f116, %f385;
	mov.f32 	%f115, %f384;
	mov.f32 	%f608, %f383;
	mov.f32 	%f113, %f382;
	bra.uni 	BB6_39;

BB6_38:
	.loc 1 509 1
	ld.global.v4.u16 	{%rs65, %rs66, %rs67, %rs68}, [%rd9+8];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs66;
	cvt.f32.f16 	%f608, %temp;
	}

BB6_39:
	mov.f32 	%f609, %f608;

BB6_40:
	mov.f32 	%f611, %f593;
	.loc 1 509 1
	@%p20 bra 	BB6_45;

	@%p8 bra 	BB6_43;

	ld.global.v4.f32 	{%f386, %f387, %f388, %f389}, [%rd6+-16];
	mov.f32 	%f131, %f389;
	mov.f32 	%f130, %f388;
	mov.f32 	%f610, %f387;
	mov.f32 	%f128, %f386;
	bra.uni 	BB6_44;

BB6_43:
	.loc 1 509 1
	ld.global.v4.u16 	{%rs73, %rs74, %rs75, %rs76}, [%rd7+-8];
	.loc 2 3518 10
	{
	.reg .b16 %temp;
	mov.b16 	%temp, %rs74;
	cvt.f32.f16 	%f610, %temp;
	}

BB6_44:
	mov.f32 	%f611, %f610;

BB6_45:
	.loc 1 509 1
	add.ftz.f32 	%f390, %f607, %f609;
	add.ftz.f32 	%f391, %f390, %f611;
	add.ftz.f32 	%f392, %f391, %f597;
	fma.rn.ftz.f32 	%f393, %f392, 0fBE800000, %f585;
	add.ftz.f32 	%f142, %f584, %f393;
	add.ftz.f32 	%f394, %f609, %f597;
	mul.ftz.f32 	%f395, %f394, 0f3F000000;
	sub.ftz.f32 	%f396, %f589, %f395;
	add.ftz.f32 	%f143, %f588, %f396;
	add.ftz.f32 	%f397, %f611, %f597;
	mul.ftz.f32 	%f398, %f397, 0f3F000000;
	sub.ftz.f32 	%f399, %f593, %f398;
	add.ftz.f32 	%f144, %f592, %f399;
	setp.ltu.ftz.f32	%p28, %f586, 0f00000000;
	@%p28 bra 	BB6_47;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f400, %f586;
	mul.ftz.f32 	%f401, %f400, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f612, %f401;
	bra.uni 	BB6_48;

BB6_47:
	.loc 1 509 202
	neg.ftz.f32 	%f402, %f586;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f403, %f402;
	mul.ftz.f32 	%f404, %f403, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f405, %f404;
	.loc 1 509 240
	neg.ftz.f32 	%f612, %f405;

BB6_48:
	setp.ltu.ftz.f32	%p29, %f585, 0f00000000;
	@%p29 bra 	BB6_50;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f406, %f585;
	mul.ftz.f32 	%f407, %f406, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f613, %f407;
	bra.uni 	BB6_51;

BB6_50:
	neg.ftz.f32 	%f408, %f585;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f409, %f408;
	mul.ftz.f32 	%f410, %f409, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f411, %f410;
	neg.ftz.f32 	%f613, %f411;

BB6_51:
	setp.ltu.ftz.f32	%p30, %f142, 0f00000000;
	@%p30 bra 	BB6_53;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f412, %f142;
	mul.ftz.f32 	%f413, %f412, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f614, %f413;
	bra.uni 	BB6_54;

BB6_53:
	neg.ftz.f32 	%f414, %f142;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f415, %f414;
	mul.ftz.f32 	%f416, %f415, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f417, %f416;
	neg.ftz.f32 	%f614, %f417;

BB6_54:
	.loc 2 2765 10
	min.ftz.f32 	%f154, %f612, %f334;
	min.ftz.f32 	%f155, %f613, %f335;
	min.ftz.f32 	%f156, %f614, %f336;
	.loc 1 91 1
	ld.shared.f32 	%f157, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+24];
	ld.shared.f32 	%f158, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+28];
	mul.ftz.f32 	%f418, %f155, %f158;
	fma.rn.ftz.f32 	%f419, %f154, %f157, %f418;
	ld.shared.f32 	%f159, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+32];
	fma.rn.ftz.f32 	%f160, %f156, %f159, %f419;
	.loc 1 91 1
	setp.eq.s32	%p31, %r25, 0;
	@%p31 bra 	BB6_65;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p32, %f160, 0f00000000;
	@%p32 bra 	BB6_57;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f420, %f160;
	mul.ftz.f32 	%f421, %f420, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f615, %f421;
	bra.uni 	BB6_58;

BB6_57:
	.loc 1 91 153
	neg.ftz.f32 	%f422, %f160;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f423, %f422;
	mul.ftz.f32 	%f424, %f423, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f425, %f424;
	.loc 1 91 190
	neg.ftz.f32 	%f615, %f425;

BB6_58:
	ld.shared.f32 	%f623, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+12];
	ld.shared.f32 	%f622, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+16];
	mul.ftz.f32 	%f426, %f155, %f622;
	fma.rn.ftz.f32 	%f427, %f154, %f623, %f426;
	ld.shared.f32 	%f621, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+20];
	fma.rn.ftz.f32 	%f167, %f156, %f621, %f427;
	setp.ltu.ftz.f32	%p33, %f167, 0f00000000;
	@%p33 bra 	BB6_60;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f428, %f167;
	mul.ftz.f32 	%f429, %f428, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f616, %f429;
	bra.uni 	BB6_61;

BB6_60:
	neg.ftz.f32 	%f430, %f167;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f431, %f430;
	mul.ftz.f32 	%f432, %f431, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f433, %f432;
	neg.ftz.f32 	%f616, %f433;

BB6_61:
	ld.shared.f32 	%f620, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix];
	ld.shared.f32 	%f619, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+4];
	mul.ftz.f32 	%f434, %f155, %f619;
	fma.rn.ftz.f32 	%f435, %f154, %f620, %f434;
	ld.shared.f32 	%f618, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+8];
	fma.rn.ftz.f32 	%f174, %f156, %f618, %f435;
	setp.ltu.ftz.f32	%p34, %f174, 0f00000000;
	@%p34 bra 	BB6_63;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f436, %f174;
	mul.ftz.f32 	%f437, %f436, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f617, %f437;
	bra.uni 	BB6_64;

BB6_63:
	neg.ftz.f32 	%f438, %f174;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f439, %f438;
	mul.ftz.f32 	%f440, %f439, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f441, %f440;
	neg.ftz.f32 	%f617, %f441;

BB6_64:
	mov.f32 	%f626, %f617;
	mov.f32 	%f625, %f616;
	mov.f32 	%f624, %f615;
	bra.uni 	BB6_66;

BB6_65:
	.loc 1 91 1
	ld.shared.f32 	%f623, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+12];
	ld.shared.f32 	%f622, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+16];
	mul.ftz.f32 	%f442, %f155, %f622;
	fma.rn.ftz.f32 	%f443, %f154, %f623, %f442;
	ld.shared.f32 	%f621, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+20];
	fma.rn.ftz.f32 	%f625, %f156, %f621, %f443;
	ld.shared.f32 	%f620, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix];
	ld.shared.f32 	%f619, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+4];
	mul.ftz.f32 	%f444, %f155, %f619;
	fma.rn.ftz.f32 	%f445, %f154, %f620, %f444;
	ld.shared.f32 	%f618, [PixelFormatConvert_Bayer_To_BGRA_4444_32f_Lumetri_Chroma_Tweak_Kernel$__cuda_local_var_171050_376_non_const_matrix+8];
	fma.rn.ftz.f32 	%f626, %f156, %f618, %f445;
	mov.f32 	%f624, %f160;

BB6_66:
	mov.f32 	%f627, %f587;
	.loc 1 509 1
	setp.ltu.ftz.f32	%p35, %f94, 0f00000000;
	@%p35 bra 	BB6_68;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f446, %f94;
	mul.ftz.f32 	%f447, %f446, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f628, %f447;
	bra.uni 	BB6_69;

BB6_68:
	.loc 1 509 202
	neg.ftz.f32 	%f448, %f94;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f449, %f448;
	mul.ftz.f32 	%f450, %f449, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f451, %f450;
	.loc 1 509 240
	neg.ftz.f32 	%f628, %f451;

BB6_69:
	setp.ltu.ftz.f32	%p36, %f589, 0f00000000;
	@%p36 bra 	BB6_71;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f452, %f589;
	mul.ftz.f32 	%f453, %f452, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f629, %f453;
	bra.uni 	BB6_72;

BB6_71:
	neg.ftz.f32 	%f454, %f589;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f455, %f454;
	mul.ftz.f32 	%f456, %f455, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f457, %f456;
	neg.ftz.f32 	%f629, %f457;

BB6_72:
	setp.ltu.ftz.f32	%p37, %f143, 0f00000000;
	@%p37 bra 	BB6_74;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f458, %f143;
	mul.ftz.f32 	%f459, %f458, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f630, %f459;
	bra.uni 	BB6_75;

BB6_74:
	neg.ftz.f32 	%f460, %f143;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f461, %f460;
	mul.ftz.f32 	%f462, %f461, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f463, %f462;
	neg.ftz.f32 	%f630, %f463;

BB6_75:
	.loc 2 2765 10
	min.ftz.f32 	%f211, %f628, %f334;
	min.ftz.f32 	%f212, %f629, %f335;
	min.ftz.f32 	%f213, %f630, %f336;
	.loc 1 91 1
	mul.ftz.f32 	%f464, %f212, %f158;
	fma.rn.ftz.f32 	%f465, %f211, %f157, %f464;
	fma.rn.ftz.f32 	%f214, %f213, %f159, %f465;
	.loc 1 91 1
	@%p31 bra 	BB6_86;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p39, %f214, 0f00000000;
	@%p39 bra 	BB6_78;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f466, %f214;
	mul.ftz.f32 	%f467, %f466, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f631, %f467;
	bra.uni 	BB6_79;

BB6_78:
	.loc 1 91 153
	neg.ftz.f32 	%f468, %f214;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f469, %f468;
	mul.ftz.f32 	%f470, %f469, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f471, %f470;
	.loc 1 91 190
	neg.ftz.f32 	%f631, %f471;

BB6_79:
	mul.ftz.f32 	%f472, %f212, %f622;
	fma.rn.ftz.f32 	%f473, %f211, %f623, %f472;
	fma.rn.ftz.f32 	%f218, %f213, %f621, %f473;
	setp.ltu.ftz.f32	%p40, %f218, 0f00000000;
	@%p40 bra 	BB6_81;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f474, %f218;
	mul.ftz.f32 	%f475, %f474, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f632, %f475;
	bra.uni 	BB6_82;

BB6_81:
	neg.ftz.f32 	%f476, %f218;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f477, %f476;
	mul.ftz.f32 	%f478, %f477, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f479, %f478;
	neg.ftz.f32 	%f632, %f479;

BB6_82:
	mul.ftz.f32 	%f480, %f212, %f619;
	fma.rn.ftz.f32 	%f481, %f211, %f620, %f480;
	fma.rn.ftz.f32 	%f222, %f213, %f618, %f481;
	setp.ltu.ftz.f32	%p41, %f222, 0f00000000;
	@%p41 bra 	BB6_84;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f482, %f222;
	mul.ftz.f32 	%f483, %f482, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f633, %f483;
	bra.uni 	BB6_85;

BB6_84:
	neg.ftz.f32 	%f484, %f222;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f485, %f484;
	mul.ftz.f32 	%f486, %f485, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f487, %f486;
	neg.ftz.f32 	%f633, %f487;

BB6_85:
	mov.f32 	%f636, %f633;
	mov.f32 	%f635, %f632;
	mov.f32 	%f634, %f631;
	bra.uni 	BB6_87;

BB6_86:
	.loc 1 91 1
	mul.ftz.f32 	%f488, %f212, %f622;
	fma.rn.ftz.f32 	%f489, %f211, %f623, %f488;
	fma.rn.ftz.f32 	%f635, %f213, %f621, %f489;
	mul.ftz.f32 	%f490, %f212, %f619;
	fma.rn.ftz.f32 	%f491, %f211, %f620, %f490;
	fma.rn.ftz.f32 	%f636, %f213, %f618, %f491;
	mov.f32 	%f634, %f214;

BB6_87:
	mov.f32 	%f637, %f591;
	.loc 1 509 1
	setp.ltu.ftz.f32	%p42, %f95, 0f00000000;
	@%p42 bra 	BB6_89;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f492, %f95;
	mul.ftz.f32 	%f493, %f492, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f638, %f493;
	bra.uni 	BB6_90;

BB6_89:
	.loc 1 509 202
	neg.ftz.f32 	%f494, %f95;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f495, %f494;
	mul.ftz.f32 	%f496, %f495, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f497, %f496;
	.loc 1 509 240
	neg.ftz.f32 	%f638, %f497;

BB6_90:
	setp.ltu.ftz.f32	%p43, %f593, 0f00000000;
	@%p43 bra 	BB6_92;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f498, %f593;
	mul.ftz.f32 	%f499, %f498, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f639, %f499;
	bra.uni 	BB6_93;

BB6_92:
	neg.ftz.f32 	%f500, %f593;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f501, %f500;
	mul.ftz.f32 	%f502, %f501, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f503, %f502;
	neg.ftz.f32 	%f639, %f503;

BB6_93:
	setp.ltu.ftz.f32	%p44, %f144, 0f00000000;
	@%p44 bra 	BB6_95;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f504, %f144;
	mul.ftz.f32 	%f505, %f504, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f640, %f505;
	bra.uni 	BB6_96;

BB6_95:
	neg.ftz.f32 	%f506, %f144;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f507, %f506;
	mul.ftz.f32 	%f508, %f507, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f509, %f508;
	neg.ftz.f32 	%f640, %f509;

BB6_96:
	.loc 2 2765 10
	min.ftz.f32 	%f247, %f638, %f334;
	min.ftz.f32 	%f248, %f639, %f335;
	min.ftz.f32 	%f249, %f640, %f336;
	.loc 1 91 1
	mul.ftz.f32 	%f510, %f248, %f158;
	fma.rn.ftz.f32 	%f511, %f247, %f157, %f510;
	fma.rn.ftz.f32 	%f250, %f249, %f159, %f511;
	.loc 1 91 1
	@%p31 bra 	BB6_107;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p46, %f250, 0f00000000;
	@%p46 bra 	BB6_99;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f512, %f250;
	mul.ftz.f32 	%f513, %f512, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f641, %f513;
	bra.uni 	BB6_100;

BB6_99:
	.loc 1 91 153
	neg.ftz.f32 	%f514, %f250;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f515, %f514;
	mul.ftz.f32 	%f516, %f515, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f517, %f516;
	.loc 1 91 190
	neg.ftz.f32 	%f641, %f517;

BB6_100:
	mul.ftz.f32 	%f518, %f248, %f622;
	fma.rn.ftz.f32 	%f519, %f247, %f623, %f518;
	fma.rn.ftz.f32 	%f254, %f249, %f621, %f519;
	setp.ltu.ftz.f32	%p47, %f254, 0f00000000;
	@%p47 bra 	BB6_102;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f520, %f254;
	mul.ftz.f32 	%f521, %f520, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f642, %f521;
	bra.uni 	BB6_103;

BB6_102:
	neg.ftz.f32 	%f522, %f254;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f523, %f522;
	mul.ftz.f32 	%f524, %f523, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f525, %f524;
	neg.ftz.f32 	%f642, %f525;

BB6_103:
	mul.ftz.f32 	%f526, %f248, %f619;
	fma.rn.ftz.f32 	%f527, %f247, %f620, %f526;
	fma.rn.ftz.f32 	%f258, %f249, %f618, %f527;
	setp.ltu.ftz.f32	%p48, %f258, 0f00000000;
	@%p48 bra 	BB6_105;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f528, %f258;
	mul.ftz.f32 	%f529, %f528, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f643, %f529;
	bra.uni 	BB6_106;

BB6_105:
	neg.ftz.f32 	%f530, %f258;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f531, %f530;
	mul.ftz.f32 	%f532, %f531, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f533, %f532;
	neg.ftz.f32 	%f643, %f533;

BB6_106:
	mov.f32 	%f646, %f643;
	mov.f32 	%f645, %f642;
	mov.f32 	%f644, %f641;
	bra.uni 	BB6_108;

BB6_107:
	.loc 1 91 1
	mul.ftz.f32 	%f534, %f248, %f622;
	fma.rn.ftz.f32 	%f535, %f247, %f623, %f534;
	fma.rn.ftz.f32 	%f645, %f249, %f621, %f535;
	mul.ftz.f32 	%f536, %f248, %f619;
	fma.rn.ftz.f32 	%f537, %f247, %f620, %f536;
	fma.rn.ftz.f32 	%f646, %f249, %f618, %f537;
	mov.f32 	%f644, %f250;

BB6_108:
	mov.f32 	%f647, %f595;
	.loc 1 509 1
	setp.ltu.ftz.f32	%p49, %f97, 0f00000000;
	@%p49 bra 	BB6_110;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f538, %f97;
	mul.ftz.f32 	%f539, %f538, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f648, %f539;
	bra.uni 	BB6_111;

BB6_110:
	.loc 1 509 202
	neg.ftz.f32 	%f540, %f97;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f541, %f540;
	mul.ftz.f32 	%f542, %f541, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f543, %f542;
	.loc 1 509 240
	neg.ftz.f32 	%f648, %f543;

BB6_111:
	setp.ltu.ftz.f32	%p50, %f597, 0f00000000;
	@%p50 bra 	BB6_113;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f544, %f597;
	mul.ftz.f32 	%f545, %f544, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f649, %f545;
	bra.uni 	BB6_114;

BB6_113:
	neg.ftz.f32 	%f546, %f597;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f547, %f546;
	mul.ftz.f32 	%f548, %f547, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f549, %f548;
	neg.ftz.f32 	%f649, %f549;

BB6_114:
	setp.ltu.ftz.f32	%p51, %f596, 0f00000000;
	@%p51 bra 	BB6_116;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f550, %f596;
	mul.ftz.f32 	%f551, %f550, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f650, %f551;
	bra.uni 	BB6_117;

BB6_116:
	neg.ftz.f32 	%f552, %f596;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f553, %f552;
	mul.ftz.f32 	%f554, %f553, 0f400CCCCD;
	ex2.approx.ftz.f32 	%f555, %f554;
	neg.ftz.f32 	%f650, %f555;

BB6_117:
	.loc 2 2765 10
	min.ftz.f32 	%f287, %f648, %f334;
	min.ftz.f32 	%f288, %f649, %f335;
	min.ftz.f32 	%f289, %f650, %f336;
	.loc 1 91 1
	mul.ftz.f32 	%f556, %f288, %f158;
	fma.rn.ftz.f32 	%f557, %f287, %f157, %f556;
	fma.rn.ftz.f32 	%f290, %f289, %f159, %f557;
	.loc 1 91 1
	@%p31 bra 	BB6_128;

	.loc 1 91 1
	setp.ltu.ftz.f32	%p53, %f290, 0f00000000;
	@%p53 bra 	BB6_120;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f558, %f290;
	mul.ftz.f32 	%f559, %f558, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f651, %f559;
	bra.uni 	BB6_121;

BB6_120:
	.loc 1 91 153
	neg.ftz.f32 	%f560, %f290;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f561, %f560;
	mul.ftz.f32 	%f562, %f561, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f563, %f562;
	.loc 1 91 190
	neg.ftz.f32 	%f651, %f563;

BB6_121:
	mul.ftz.f32 	%f564, %f288, %f622;
	fma.rn.ftz.f32 	%f565, %f287, %f623, %f564;
	fma.rn.ftz.f32 	%f294, %f289, %f621, %f565;
	setp.ltu.ftz.f32	%p54, %f294, 0f00000000;
	@%p54 bra 	BB6_123;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f566, %f294;
	mul.ftz.f32 	%f567, %f566, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f652, %f567;
	bra.uni 	BB6_124;

BB6_123:
	neg.ftz.f32 	%f568, %f294;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f569, %f568;
	mul.ftz.f32 	%f570, %f569, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f571, %f570;
	neg.ftz.f32 	%f652, %f571;

BB6_124:
	mul.ftz.f32 	%f572, %f288, %f619;
	fma.rn.ftz.f32 	%f573, %f287, %f620, %f572;
	fma.rn.ftz.f32 	%f298, %f289, %f618, %f573;
	setp.ltu.ftz.f32	%p55, %f298, 0f00000000;
	@%p55 bra 	BB6_126;

	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f574, %f298;
	mul.ftz.f32 	%f575, %f574, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f653, %f575;
	bra.uni 	BB6_127;

BB6_126:
	neg.ftz.f32 	%f576, %f298;
	.loc 2 3600 10
	lg2.approx.ftz.f32 	%f577, %f576;
	mul.ftz.f32 	%f578, %f577, 0f3EE8BA2E;
	ex2.approx.ftz.f32 	%f579, %f578;
	neg.ftz.f32 	%f653, %f579;

BB6_127:
	mov.f32 	%f656, %f653;
	mov.f32 	%f655, %f652;
	mov.f32 	%f654, %f651;
	bra.uni 	BB6_129;

BB6_128:
	.loc 1 91 1
	mul.ftz.f32 	%f580, %f288, %f622;
	fma.rn.ftz.f32 	%f581, %f287, %f623, %f580;
	fma.rn.ftz.f32 	%f655, %f289, %f621, %f581;
	mul.ftz.f32 	%f582, %f288, %f619;
	fma.rn.ftz.f32 	%f583, %f287, %f620, %f582;
	fma.rn.ftz.f32 	%f656, %f289, %f618, %f583;
	mov.f32 	%f654, %f290;

BB6_129:
	mov.f32 	%f657, %f599;
	.loc 1 509 1
	add.s32 	%r50, %r22, -1;
	sub.s32 	%r51, %r50, %r4;
	setp.eq.s32	%p56, %r19, 0;
	selp.b32	%r52, %r4, %r51, %p56;
	.loc 1 509 1
	mul.lo.s32 	%r12, %r52, %r18;
	add.s32 	%r13, %r12, %r3;
	.loc 1 509 1
	@%p8 bra 	BB6_131;

	cvta.to.global.u64 	%rd50, %rd10;
	mul.wide.s32 	%rd51, %r13, 16;
	add.s64 	%rd52, %rd50, %rd51;
	.loc 1 509 1
	st.global.v4.f32 	[%rd52], {%f624, %f625, %f626, %f627};
	bra.uni 	BB6_132;

BB6_131:
	cvta.to.global.u64 	%rd53, %rd10;
	mul.wide.s32 	%rd54, %r13, 8;
	add.s64 	%rd55, %rd53, %rd54;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f624;
	mov.b16 	%rs81, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f625;
	mov.b16 	%rs82, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f626;
	mov.b16 	%rs83, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f627;
	mov.b16 	%rs84, %temp;
}
	.loc 1 509 241
	st.global.v4.u16 	[%rd55], {%rs81, %rs82, %rs83, %rs84};

BB6_132:
	.loc 1 509 1
	add.s32 	%r63, %r3, %r12;
	.loc 1 509 1
	add.s32 	%r14, %r63, 1;
	.loc 1 509 1
	@%p8 bra 	BB6_134;

	cvta.to.global.u64 	%rd56, %rd10;
	mul.wide.s32 	%rd57, %r14, 16;
	add.s64 	%rd58, %rd56, %rd57;
	.loc 1 509 1
	st.global.v4.f32 	[%rd58], {%f634, %f635, %f636, %f637};
	bra.uni 	BB6_135;

BB6_134:
	cvta.to.global.u64 	%rd59, %rd10;
	mul.wide.s32 	%rd60, %r14, 8;
	add.s64 	%rd61, %rd59, %rd60;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f634;
	mov.b16 	%rs85, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f635;
	mov.b16 	%rs86, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f636;
	mov.b16 	%rs87, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f637;
	mov.b16 	%rs88, %temp;
}
	.loc 1 509 241
	st.global.v4.u16 	[%rd61], {%rs85, %rs86, %rs87, %rs88};

BB6_135:
	.loc 1 509 1
	selp.b32	%r72, 1, -1, %p56;
	add.s32 	%r73, %r52, %r72;
	.loc 1 509 1
	mul.lo.s32 	%r15, %r73, %r18;
	add.s32 	%r16, %r15, %r3;
	.loc 1 509 1
	@%p8 bra 	BB6_137;

	cvta.to.global.u64 	%rd62, %rd10;
	mul.wide.s32 	%rd63, %r16, 16;
	add.s64 	%rd64, %rd62, %rd63;
	.loc 1 509 1
	st.global.v4.f32 	[%rd64], {%f644, %f645, %f646, %f647};
	bra.uni 	BB6_138;

BB6_137:
	cvta.to.global.u64 	%rd65, %rd10;
	mul.wide.s32 	%rd66, %r16, 8;
	add.s64 	%rd67, %rd65, %rd66;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f644;
	mov.b16 	%rs89, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f645;
	mov.b16 	%rs90, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f646;
	mov.b16 	%rs91, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f647;
	mov.b16 	%rs92, %temp;
}
	.loc 1 509 241
	st.global.v4.u16 	[%rd67], {%rs89, %rs90, %rs91, %rs92};

BB6_138:
	.loc 1 509 1
	add.s32 	%r84, %r3, %r15;
	.loc 1 509 1
	add.s32 	%r17, %r84, 1;
	.loc 1 509 1
	@%p8 bra 	BB6_140;

	cvta.to.global.u64 	%rd68, %rd10;
	mul.wide.s32 	%rd69, %r17, 16;
	add.s64 	%rd70, %rd68, %rd69;
	.loc 1 509 1
	st.global.v4.f32 	[%rd70], {%f654, %f655, %f656, %f657};
	bra.uni 	BB6_141;

BB6_140:
	cvta.to.global.u64 	%rd71, %rd10;
	mul.wide.s32 	%rd72, %r17, 8;
	add.s64 	%rd73, %rd71, %rd72;
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f654;
	mov.b16 	%rs93, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f655;
	mov.b16 	%rs94, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f656;
	mov.b16 	%rs95, %temp;
}
	.loc 2 3513 10
	{
	.reg .b16 %temp;
	cvt.rn.ftz.f16.f32 	%temp, %f657;
	mov.b16 	%rs96, %temp;
}
	.loc 1 509 241
	st.global.v4.u16 	[%rd73], {%rs93, %rs94, %rs95, %rs96};

BB6_141:
	.loc 1 509 2
	ret;
}


