Files
FORT-BO/Assets/Editor/x64/Bakery/lmTexAreaLightProbeSHL2Translucent.ptx
T
2026-08-06 18:56:32 +03:00

3354 lines
91 KiB
Plaintext

//
// Generated by NVIDIA NVVM Compiler
//
// Compiler Build ID: CL-23083092
// Cuda compilation tools, release 9.1, V9.1.85
// Based on LLVM 3.4svn
//
.version 6.1
.target sm_30
.address_size 64
// .globl _Z6oxMainv
.global .align 8 .b8 pixelID[8];
.global .align 8 .b8 resolution[8];
.global .align 4 .b8 normal[12];
.global .align 4 .b8 camPos[12];
.global .align 4 .b8 root[4];
.global .align 4 .u32 imageEnabled;
.global .texref lightmap;
.global .align 16 .b8 tileInfo[16];
.global .align 4 .u32 additive;
.global .align 1 .b8 image[1];
.global .align 1 .b8 image_HDR[1];
.global .align 1 .b8 image_HDR2[1];
.global .align 1 .b8 image_Mask[1];
.global .align 1 .b8 image_RNM0[1];
.global .align 1 .b8 image_RNM1[1];
.global .align 1 .b8 image_RNM2[1];
.global .align 1 .b8 image_RNM3[1];
.global .align 1 .b8 image_RNM4[1];
.global .align 1 .b8 image_RNM5[1];
.global .align 1 .b8 image_RNM6[1];
.global .align 1 .b8 image_RNM7[1];
.global .align 1 .b8 image_RNM8[1];
.global .align 1 .b8 uvpos[1];
.global .align 1 .b8 uvnormal[1];
.global .align 1 .b8 lightMeshBuffer[1];
.global .align 4 .u32 lightMeshBufferSize;
.global .align 4 .f32 lightInvCutoff;
.global .align 4 .f32 lightPointSize;
.global .align 4 .b8 lightColor[12];
.global .align 1 .b8 rnd_seeds[1];
.global .align 1 .b8 rnd_seeds2[1];
.global .align 4 .u32 samples;
.global .align 4 .b8 _ZN21rti_internal_typeinfo7pixelIDE[8] = {82, 97, 121, 0, 8, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo10resolutionE[8] = {82, 97, 121, 0, 8, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo6normalE[8] = {82, 97, 121, 0, 12, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo6camPosE[8] = {82, 97, 121, 0, 12, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo4rootE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo12imageEnabledE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo8tileInfoE[8] = {82, 97, 121, 0, 16, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo8additiveE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo19lightMeshBufferSizeE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo14lightInvCutoffE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo14lightPointSizeE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo10lightColorE[8] = {82, 97, 121, 0, 12, 0, 0, 0};
.global .align 4 .b8 _ZN21rti_internal_typeinfo7samplesE[8] = {82, 97, 121, 0, 4, 0, 0, 0};
.global .align 8 .u64 _ZN21rti_internal_register20reg_bitness_detectorE;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail0E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail1E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail2E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail3E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail4E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail5E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail6E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail7E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail8E;
.global .align 8 .u64 _ZN21rti_internal_register24reg_exception_64_detail9E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail0E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail1E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail2E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail3E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail4E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail5E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail6E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail7E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail8E;
.global .align 4 .u32 _ZN21rti_internal_register21reg_exception_detail9E;
.global .align 4 .u32 _ZN21rti_internal_register14reg_rayIndex_xE;
.global .align 4 .u32 _ZN21rti_internal_register14reg_rayIndex_yE;
.global .align 4 .u32 _ZN21rti_internal_register14reg_rayIndex_zE;
.global .align 8 .b8 _ZN21rti_internal_typename7pixelIDE[6] = {117, 105, 110, 116, 50, 0};
.global .align 8 .b8 _ZN21rti_internal_typename10resolutionE[6] = {117, 105, 110, 116, 50, 0};
.global .align 8 .b8 _ZN21rti_internal_typename6normalE[7] = {102, 108, 111, 97, 116, 51, 0};
.global .align 8 .b8 _ZN21rti_internal_typename6camPosE[7] = {102, 108, 111, 97, 116, 51, 0};
.global .align 16 .b8 _ZN21rti_internal_typename4rootE[9] = {114, 116, 79, 98, 106, 101, 99, 116, 0};
.global .align 4 .b8 _ZN21rti_internal_typename12imageEnabledE[4] = {105, 110, 116, 0};
.global .align 8 .b8 _ZN21rti_internal_typename8tileInfoE[6] = {117, 105, 110, 116, 52, 0};
.global .align 4 .b8 _ZN21rti_internal_typename8additiveE[4] = {105, 110, 116, 0};
.global .align 16 .b8 _ZN21rti_internal_typename19lightMeshBufferSizeE[13] = {117, 110, 115, 105, 103, 110, 101, 100, 32, 105, 110, 116, 0};
.global .align 8 .b8 _ZN21rti_internal_typename14lightInvCutoffE[6] = {102, 108, 111, 97, 116, 0};
.global .align 8 .b8 _ZN21rti_internal_typename14lightPointSizeE[6] = {102, 108, 111, 97, 116, 0};
.global .align 8 .b8 _ZN21rti_internal_typename10lightColorE[7] = {102, 108, 111, 97, 116, 51, 0};
.global .align 4 .b8 _ZN21rti_internal_typename7samplesE[4] = {105, 110, 116, 0};
.global .align 4 .u32 _ZN21rti_internal_typeenum7pixelIDE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum10resolutionE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum6normalE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum6camPosE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum4rootE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum12imageEnabledE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum8tileInfoE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum8additiveE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum19lightMeshBufferSizeE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum14lightInvCutoffE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum14lightPointSizeE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum10lightColorE = 4919;
.global .align 4 .u32 _ZN21rti_internal_typeenum7samplesE = 4919;
.global .align 16 .b8 _ZN21rti_internal_semantic7pixelIDE[14] = {114, 116, 76, 97, 117, 110, 99, 104, 73, 110, 100, 101, 120, 0};
.global .align 16 .b8 _ZN21rti_internal_semantic10resolutionE[12] = {114, 116, 76, 97, 117, 110, 99, 104, 68, 105, 109, 0};
.global .align 16 .b8 _ZN21rti_internal_semantic6normalE[17] = {97, 116, 116, 114, 105, 98, 117, 116, 101, 32, 110, 111, 114, 109, 97, 108, 0};
.global .align 1 .b8 _ZN21rti_internal_semantic6camPosE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic4rootE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic12imageEnabledE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic8tileInfoE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic8additiveE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic19lightMeshBufferSizeE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic14lightInvCutoffE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic14lightPointSizeE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic10lightColorE[1];
.global .align 1 .b8 _ZN21rti_internal_semantic7samplesE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation7pixelIDE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation10resolutionE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation6normalE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation6camPosE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation4rootE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation12imageEnabledE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation8tileInfoE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation8additiveE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation19lightMeshBufferSizeE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation14lightInvCutoffE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation14lightPointSizeE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation10lightColorE[1];
.global .align 1 .b8 _ZN23rti_internal_annotation7samplesE[1];
.const .align 4 .b8 __cudart_i2opi_f[24] = {65, 144, 67, 60, 153, 149, 98, 219, 192, 221, 52, 245, 209, 87, 39, 252, 41, 21, 68, 78, 110, 131, 249, 162};
.visible .entry _Z6oxMainv(
)
{
.local .align 16 .b8 __local_depot0[64];
.reg .b64 %SP;
.reg .b64 %SPL;
.reg .pred %p<159>;
.reg .b16 %rs<299>;
.reg .f32 %f<1729>;
.reg .b32 %r<488>;
.reg .b64 %rd<529>;
mov.u64 %rd528, __local_depot0;
cvta.local.u64 %SP, %rd528;
ld.global.u32 %r1, [lightMeshBufferSize];
abs.s32 %r2, %r1;
ld.global.u32 %r3, [samples];
shl.b32 %r4, %r3, 1;
ld.global.v2.u32 {%r103, %r104}, [pixelID];
cvt.u64.u32 %rd24, %r103;
cvt.u64.u32 %rd25, %r104;
mov.u64 %rd28, uvnormal;
cvta.global.u64 %rd23, %rd28;
mov.u32 %r101, 2;
mov.u32 %r102, 4;
mov.u64 %rd27, 0;
// inline asm
call (%rd22), _rt_buffer_get_64, (%rd23, %r101, %r102, %rd24, %rd25, %rd27, %rd27);
// inline asm
ld.u32 %r5, [%rd22];
shr.u32 %r107, %r5, 16;
cvt.u16.u32 %rs1, %r107;
and.b16 %rs12, %rs1, 255;
cvt.u16.u32 %rs13, %r5;
or.b16 %rs14, %rs13, %rs12;
setp.eq.s16 %p7, %rs14, 0;
mov.f32 %f1485, 0f00000000;
mov.f32 %f1486, %f1485;
mov.f32 %f1487, %f1485;
@%p7 bra BB0_2;
ld.u8 %rs15, [%rd22+1];
and.b16 %rs17, %rs13, 255;
cvt.rn.f32.u16 %f530, %rs17;
div.rn.f32 %f531, %f530, 0f437F0000;
fma.rn.f32 %f532, %f531, 0f40000000, 0fBF800000;
cvt.rn.f32.u16 %f533, %rs15;
div.rn.f32 %f534, %f533, 0f437F0000;
fma.rn.f32 %f535, %f534, 0f40000000, 0fBF800000;
cvt.rn.f32.u16 %f536, %rs12;
div.rn.f32 %f537, %f536, 0f437F0000;
fma.rn.f32 %f538, %f537, 0f40000000, 0fBF800000;
mul.f32 %f539, %f535, %f535;
fma.rn.f32 %f540, %f532, %f532, %f539;
fma.rn.f32 %f541, %f538, %f538, %f540;
sqrt.rn.f32 %f542, %f541;
rcp.rn.f32 %f543, %f542;
mul.f32 %f1485, %f532, %f543;
mul.f32 %f1486, %f535, %f543;
mul.f32 %f1487, %f538, %f543;
BB0_2:
ld.global.v2.u32 {%r108, %r109}, [pixelID];
ld.global.v2.u32 {%r111, %r112}, [tileInfo];
add.s32 %r6, %r108, %r111;
add.s32 %r7, %r109, %r112;
setp.eq.f32 %p8, %f1486, 0f00000000;
setp.eq.f32 %p9, %f1485, 0f00000000;
and.pred %p10, %p9, %p8;
setp.eq.f32 %p11, %f1487, 0f00000000;
and.pred %p12, %p10, %p11;
@%p12 bra BB0_155;
bra.uni BB0_3;
BB0_155:
ld.global.u32 %r487, [imageEnabled];
and.b32 %r375, %r487, 1;
setp.eq.b32 %p145, %r375, 1;
@!%p145 bra BB0_157;
bra.uni BB0_156;
BB0_156:
cvt.u64.u32 %rd306, %r6;
cvt.u64.u32 %rd307, %r7;
mov.u64 %rd310, image;
cvta.global.u64 %rd305, %rd310;
mov.u64 %rd309, 0;
// inline asm
call (%rd304), _rt_buffer_get_64, (%rd305, %r101, %r102, %rd306, %rd307, %rd309, %rd309);
// inline asm
mov.u16 %rs166, 0;
st.v4.u8 [%rd304], {%rs166, %rs166, %rs166, %rs166};
ld.global.u32 %r487, [imageEnabled];
BB0_157:
and.b32 %r378, %r487, 8;
setp.eq.s32 %p146, %r378, 0;
@%p146 bra BB0_159;
cvt.u64.u32 %rd314, %r7;
cvt.u64.u32 %rd313, %r6;
mov.u64 %rd317, image_Mask;
cvta.global.u64 %rd312, %rd317;
mov.u64 %rd316, 0;
// inline asm
call (%rd311), _rt_buffer_get_64, (%rd312, %r101, %r101, %rd313, %rd314, %rd316, %rd316);
// inline asm
mov.f32 %f1407, 0f00000000;
cvt.rzi.u32.f32 %r381, %f1407;
cvt.u16.u32 %rs167, %r381;
mov.u16 %rs168, 0;
st.v2.u8 [%rd311], {%rs167, %rs168};
ld.global.u32 %r487, [imageEnabled];
BB0_159:
cvt.u64.u32 %rd20, %r6;
cvt.u64.u32 %rd21, %r7;
and.b32 %r382, %r487, 4;
setp.eq.s32 %p147, %r382, 0;
@%p147 bra BB0_163;
ld.global.u32 %r383, [additive];
setp.eq.s32 %p148, %r383, 0;
@%p148 bra BB0_162;
mov.u64 %rd330, image_HDR;
cvta.global.u64 %rd319, %rd330;
mov.u32 %r387, 8;
mov.u64 %rd329, 0;
// inline asm
call (%rd318), _rt_buffer_get_64, (%rd319, %r101, %r387, %rd20, %rd21, %rd329, %rd329);
// inline asm
ld.v4.u16 {%rs175, %rs176, %rs177, %rs178}, [%rd318];
// inline asm
{ cvt.f32.f16 %f1408, %rs175;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1409, %rs176;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1410, %rs177;}
// inline asm
// inline asm
call (%rd324), _rt_buffer_get_64, (%rd319, %r101, %r387, %rd20, %rd21, %rd329, %rd329);
// inline asm
add.f32 %f1411, %f1408, 0f00000000;
add.f32 %f1412, %f1409, 0f00000000;
add.f32 %f1413, %f1410, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs174, %f1413;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs173, %f1412;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs172, %f1411;}
// inline asm
mov.u16 %rs179, 0;
st.v4.u16 [%rd324], {%rs172, %rs173, %rs174, %rs179};
bra.uni BB0_163;
BB0_3:
ld.global.v2.u32 {%r121, %r122}, [pixelID];
cvt.u64.u32 %rd31, %r121;
cvt.u64.u32 %rd32, %r122;
mov.u64 %rd41, uvpos;
cvta.global.u64 %rd30, %rd41;
mov.u32 %r117, 12;
// inline asm
call (%rd29), _rt_buffer_get_64, (%rd30, %r101, %r117, %rd31, %rd32, %rd27, %rd27);
// inline asm
ld.f32 %f9, [%rd29+8];
ld.f32 %f8, [%rd29+4];
ld.f32 %f7, [%rd29];
mul.f32 %f575, %f7, 0f3456BF95;
mul.f32 %f576, %f8, 0f3456BF95;
mul.f32 %f577, %f9, 0f3456BF95;
abs.f32 %f578, %f1485;
div.rn.f32 %f579, %f575, %f578;
abs.f32 %f580, %f1486;
div.rn.f32 %f581, %f576, %f580;
abs.f32 %f582, %f1487;
div.rn.f32 %f583, %f577, %f582;
abs.f32 %f584, %f579;
abs.f32 %f585, %f581;
abs.f32 %f586, %f583;
mov.f32 %f587, 0f38D1B717;
max.f32 %f588, %f584, %f587;
max.f32 %f589, %f585, %f587;
max.f32 %f590, %f586, %f587;
fma.rn.f32 %f10, %f1485, %f588, %f7;
fma.rn.f32 %f11, %f1486, %f589, %f8;
fma.rn.f32 %f12, %f1487, %f590, %f9;
ld.global.v2.u32 {%r125, %r126}, [pixelID];
cvt.u64.u32 %rd37, %r125;
cvt.u64.u32 %rd38, %r126;
mov.u64 %rd42, rnd_seeds;
cvta.global.u64 %rd36, %rd42;
// inline asm
call (%rd35), _rt_buffer_get_64, (%rd36, %r101, %r102, %rd37, %rd38, %rd27, %rd27);
// inline asm
ld.u32 %r463, [%rd35];
mov.pred %p13, 0;
mov.f32 %f17, 0f00000000;
mov.u32 %r459, 0;
setp.lt.s32 %p14, %r2, 1;
@%p14 bra BB0_4;
ld.global.f32 %f13, [lightPointSize];
mul.f32 %f14, %f10, 0f3456BF95;
mul.f32 %f15, %f11, 0f3456BF95;
mul.f32 %f16, %f12, 0f3456BF95;
mov.f32 %f17, 0f00000000;
mov.u32 %r459, 0;
abs.f32 %f745, %f15;
abs.f32 %f746, %f14;
max.f32 %f747, %f746, %f745;
abs.f32 %f748, %f16;
max.f32 %f749, %f747, %f748;
mov.f32 %f18, %f17;
mov.f32 %f19, %f17;
mov.f32 %f20, %f17;
mov.f32 %f21, %f17;
mov.f32 %f22, %f17;
mov.f32 %f23, %f17;
mov.f32 %f24, %f17;
mov.f32 %f25, %f17;
mov.f32 %f26, %f17;
mov.f32 %f27, %f17;
mov.f32 %f28, %f17;
mov.f32 %f29, %f17;
mov.f32 %f30, %f17;
mov.f32 %f31, %f17;
mov.f32 %f32, %f17;
mov.f32 %f33, %f17;
mov.f32 %f34, %f17;
mov.f32 %f35, %f17;
mov.f32 %f36, %f17;
mov.f32 %f37, %f17;
mov.f32 %f38, %f17;
mov.f32 %f39, %f17;
mov.f32 %f40, %f17;
mov.f32 %f41, %f17;
mov.f32 %f42, %f17;
mov.f32 %f43, %f17;
mov.f32 %f44, %f17;
mov.f32 %f45, %f17;
mov.f32 %f46, %f17;
mov.f32 %f47, %f17;
BB0_6:
mul.lo.s32 %r10, %r459, 3;
cvt.s64.s32 %rd45, %r10;
mov.u64 %rd55, lightMeshBuffer;
cvta.global.u64 %rd44, %rd55;
mov.u32 %r130, 1;
mov.u64 %rd54, 0;
// inline asm
call (%rd43), _rt_buffer_get_64, (%rd44, %r130, %r117, %rd45, %rd54, %rd54, %rd54);
// inline asm
ld.f32 %f622, [%rd43];
sub.f32 %f623, %f622, %f7;
ld.f32 %f624, [%rd43+4];
sub.f32 %f625, %f624, %f8;
ld.f32 %f626, [%rd43+8];
sub.f32 %f627, %f626, %f9;
mul.f32 %f628, %f625, %f625;
fma.rn.f32 %f629, %f623, %f623, %f628;
fma.rn.f32 %f630, %f627, %f627, %f629;
sqrt.rn.f32 %f48, %f630;
rcp.rn.f32 %f631, %f48;
mul.f32 %f49, %f623, %f631;
mul.f32 %f50, %f625, %f631;
mul.f32 %f51, %f627, %f631;
mul.f32 %f632, %f48, %f48;
div.rn.f32 %f52, %f13, %f632;
ld.global.v2.u32 {%r134, %r135}, [pixelID];
cvt.u64.u32 %rd56, %r135;
cvt.u64.u32 %rd57, %r134;
and.b64 %rd51, %rd57, 255;
and.b64 %rd52, %rd56, 255;
mov.u64 %rd58, rnd_seeds2;
cvta.global.u64 %rd50, %rd58;
mov.u32 %r133, 3;
// inline asm
call (%rd49), _rt_buffer_get_64, (%rd50, %r101, %r133, %rd51, %rd52, %rd54, %rd54);
// inline asm
setp.eq.s32 %p15, %r3, 0;
@%p15 bra BB0_8;
ld.u8 %rs19, [%rd49];
cvt.rn.f32.u16 %f633, %rs19;
div.rn.f32 %f634, %f633, 0fC37F0000;
fma.rn.f32 %f635, %f634, 0f3F333333, 0f3F800000;
setp.gt.f32 %p17, %f52, %f635;
mov.pred %p158, -1;
@%p17 bra BB0_23;
BB0_8:
ld.global.f32 %f638, [lightInvCutoff];
mul.f32 %f53, %f48, %f638;
mov.f32 %f642, 0f40800000;
abs.f32 %f55, %f53;
setp.lt.f32 %p18, %f55, 0f00800000;
mul.f32 %f644, %f55, 0f4B800000;
selp.f32 %f645, 0fC3170000, 0fC2FE0000, %p18;
selp.f32 %f646, %f644, %f55, %p18;
mov.b32 %r138, %f646;
and.b32 %r139, %r138, 8388607;
or.b32 %r140, %r139, 1065353216;
mov.b32 %f647, %r140;
shr.u32 %r141, %r138, 23;
cvt.rn.f32.u32 %f648, %r141;
add.f32 %f649, %f645, %f648;
setp.gt.f32 %p19, %f647, 0f3FB504F3;
mul.f32 %f650, %f647, 0f3F000000;
add.f32 %f651, %f649, 0f3F800000;
selp.f32 %f652, %f650, %f647, %p19;
selp.f32 %f653, %f651, %f649, %p19;
add.f32 %f654, %f652, 0fBF800000;
add.f32 %f637, %f652, 0f3F800000;
// inline asm
rcp.approx.ftz.f32 %f636,%f637;
// inline asm
add.f32 %f655, %f654, %f654;
mul.f32 %f656, %f636, %f655;
mul.f32 %f657, %f656, %f656;
mov.f32 %f658, 0f3C4CAF63;
mov.f32 %f659, 0f3B18F0FE;
fma.rn.f32 %f660, %f659, %f657, %f658;
mov.f32 %f661, 0f3DAAAABD;
fma.rn.f32 %f662, %f660, %f657, %f661;
mul.rn.f32 %f663, %f662, %f657;
mul.rn.f32 %f664, %f663, %f656;
sub.f32 %f665, %f654, %f656;
neg.f32 %f666, %f656;
add.f32 %f667, %f665, %f665;
fma.rn.f32 %f668, %f666, %f654, %f667;
mul.rn.f32 %f669, %f636, %f668;
add.f32 %f670, %f664, %f656;
sub.f32 %f671, %f656, %f670;
add.f32 %f672, %f664, %f671;
add.f32 %f673, %f669, %f672;
add.f32 %f674, %f670, %f673;
sub.f32 %f675, %f670, %f674;
add.f32 %f676, %f673, %f675;
mov.f32 %f677, 0f3F317200;
mul.rn.f32 %f678, %f653, %f677;
mov.f32 %f679, 0f35BFBE8E;
mul.rn.f32 %f680, %f653, %f679;
add.f32 %f681, %f678, %f674;
sub.f32 %f682, %f678, %f681;
add.f32 %f683, %f674, %f682;
add.f32 %f684, %f676, %f683;
add.f32 %f685, %f680, %f684;
add.f32 %f686, %f681, %f685;
sub.f32 %f687, %f681, %f686;
add.f32 %f688, %f685, %f687;
mul.rn.f32 %f689, %f642, %f686;
neg.f32 %f690, %f689;
fma.rn.f32 %f691, %f642, %f686, %f690;
fma.rn.f32 %f692, %f642, %f688, %f691;
mov.f32 %f693, 0f00000000;
fma.rn.f32 %f694, %f693, %f686, %f692;
add.rn.f32 %f695, %f689, %f694;
neg.f32 %f696, %f695;
add.rn.f32 %f697, %f689, %f696;
add.rn.f32 %f698, %f697, %f694;
mov.b32 %r142, %f695;
setp.eq.s32 %p20, %r142, 1118925336;
add.s32 %r143, %r142, -1;
mov.b32 %f699, %r143;
add.f32 %f700, %f698, 0f37000000;
selp.f32 %f701, %f699, %f695, %p20;
selp.f32 %f56, %f700, %f698, %p20;
mul.f32 %f702, %f701, 0f3FB8AA3B;
cvt.rzi.f32.f32 %f703, %f702;
mov.f32 %f704, 0fBF317200;
fma.rn.f32 %f705, %f703, %f704, %f701;
mov.f32 %f706, 0fB5BFBE8E;
fma.rn.f32 %f707, %f703, %f706, %f705;
mul.f32 %f708, %f707, 0f3FB8AA3B;
ex2.approx.ftz.f32 %f709, %f708;
add.f32 %f710, %f703, 0f00000000;
ex2.approx.f32 %f711, %f710;
mul.f32 %f712, %f709, %f711;
setp.lt.f32 %p21, %f701, 0fC2D20000;
selp.f32 %f713, 0f00000000, %f712, %p21;
setp.gt.f32 %p22, %f701, 0f42D20000;
selp.f32 %f1519, 0f7F800000, %f713, %p22;
setp.eq.f32 %p23, %f1519, 0f7F800000;
@%p23 bra BB0_10;
fma.rn.f32 %f1519, %f1519, %f56, %f1519;
BB0_10:
mov.f32 %f1483, 0f40000000;
cvt.rzi.f32.f32 %f1482, %f1483;
add.f32 %f1481, %f1482, %f1482;
mov.f32 %f1480, 0f40800000;
sub.f32 %f1479, %f1480, %f1481;
abs.f32 %f1478, %f1479;
setp.lt.f32 %p24, %f53, 0f00000000;
setp.eq.f32 %p25, %f1478, 0f3F800000;
and.pred %p1, %p24, %p25;
mov.b32 %r144, %f1519;
xor.b32 %r145, %r144, -2147483648;
mov.b32 %f714, %r145;
selp.f32 %f1521, %f714, %f1519, %p1;
setp.eq.f32 %p26, %f53, 0f00000000;
@%p26 bra BB0_13;
bra.uni BB0_11;
BB0_13:
add.f32 %f717, %f53, %f53;
selp.f32 %f1521, %f717, 0f00000000, %p25;
bra.uni BB0_14;
BB0_11:
setp.geu.f32 %p27, %f53, 0f00000000;
@%p27 bra BB0_14;
mov.f32 %f1484, 0f40800000;
cvt.rzi.f32.f32 %f716, %f1484;
setp.neu.f32 %p28, %f716, 0f40800000;
selp.f32 %f1521, 0f7FFFFFFF, %f1521, %p28;
BB0_14:
add.f32 %f718, %f55, 0f40800000;
mov.b32 %r146, %f718;
setp.lt.s32 %p30, %r146, 2139095040;
@%p30 bra BB0_19;
setp.gtu.f32 %p31, %f55, 0f7F800000;
@%p31 bra BB0_18;
bra.uni BB0_16;
BB0_18:
add.f32 %f1521, %f53, 0f40800000;
bra.uni BB0_19;
BB0_16:
setp.neu.f32 %p32, %f55, 0f7F800000;
@%p32 bra BB0_19;
selp.f32 %f1521, 0fFF800000, 0f7F800000, %p1;
BB0_19:
mov.u64 %rd520, 0;
mov.u32 %r454, 1;
mov.u64 %rd519, lightMeshBuffer;
cvta.global.u64 %rd518, %rd519;
mul.lo.s32 %r453, %r459, 3;
mov.f32 %f719, 0f3F800000;
sub.f32 %f720, %f719, %f1521;
setp.eq.f32 %p33, %f53, 0f3F800000;
selp.f32 %f721, 0f00000000, %f720, %p33;
cvt.sat.f32.f32 %f722, %f721;
mul.f32 %f723, %f52, %f722;
add.s32 %r149, %r453, 1;
cvt.s64.s32 %rd61, %r149;
// inline asm
call (%rd59), _rt_buffer_get_64, (%rd518, %r454, %r117, %rd61, %rd520, %rd520, %rd520);
// inline asm
ld.f32 %f724, [%rd59];
mul.f32 %f725, %f49, %f724;
ld.f32 %f726, [%rd59+4];
mul.f32 %f727, %f50, %f726;
neg.f32 %f728, %f727;
sub.f32 %f729, %f728, %f725;
ld.f32 %f730, [%rd59+8];
mul.f32 %f731, %f51, %f730;
sub.f32 %f732, %f729, %f731;
cvt.sat.f32.f32 %f733, %f732;
mul.f32 %f67, %f723, %f733;
mul.f32 %f734, %f1486, %f50;
fma.rn.f32 %f735, %f1485, %f49, %f734;
fma.rn.f32 %f68, %f1487, %f51, %f735;
setp.leu.f32 %p34, %f67, 0f3727C5AC;
@%p34 bra BB0_21;
mov.u64 %rd523, 0;
mov.u32 %r457, 1;
mov.u64 %rd522, lightMeshBuffer;
cvta.global.u64 %rd521, %rd522;
mul.lo.s32 %r456, %r459, 3;
cvt.sat.f32.f32 %f744, %f68;
add.u64 %rd66, %SP, 16;
cvta.to.local.u64 %rd73, %rd66;
max.f32 %f742, %f749, %f587;
sub.f32 %f743, %f48, %f742;
mov.u32 %r155, 1065353216;
st.local.u32 [%rd73+8], %r155;
st.local.u32 [%rd73+4], %r155;
st.local.u32 [%rd73], %r155;
ld.global.u32 %r150, [root];
// inline asm
call _rt_trace_64, (%r150, %f10, %f11, %f12, %f49, %f50, %f51, %r457, %f742, %f743, %rd66, %r117);
// inline asm
add.s32 %r156, %r456, 2;
cvt.s64.s32 %rd69, %r156;
// inline asm
call (%rd67), _rt_buffer_get_64, (%rd521, %r457, %r117, %rd69, %rd523, %rd523, %rd523);
// inline asm
ld.local.f32 %f751, [%rd73];
ld.f32 %f752, [%rd67];
mul.f32 %f753, %f752, %f751;
ld.local.f32 %f754, [%rd73+4];
ld.f32 %f755, [%rd67+4];
mul.f32 %f756, %f755, %f754;
ld.local.f32 %f757, [%rd73+8];
ld.f32 %f758, [%rd67+8];
mul.f32 %f759, %f758, %f757;
mul.f32 %f760, %f67, 0f3EA2F983;
mul.f32 %f761, %f760, %f753;
mul.f32 %f762, %f760, %f756;
mul.f32 %f763, %f760, %f759;
fma.rn.f32 %f20, %f744, %f761, %f20;
fma.rn.f32 %f19, %f744, %f762, %f19;
fma.rn.f32 %f18, %f744, %f763, %f18;
add.f32 %f23, %f23, %f761;
add.f32 %f22, %f22, %f762;
add.f32 %f21, %f21, %f763;
fma.rn.f32 %f26, %f50, %f761, %f26;
fma.rn.f32 %f25, %f50, %f762, %f25;
fma.rn.f32 %f24, %f50, %f763, %f24;
fma.rn.f32 %f29, %f51, %f761, %f29;
fma.rn.f32 %f28, %f51, %f762, %f28;
fma.rn.f32 %f27, %f51, %f763, %f27;
fma.rn.f32 %f32, %f49, %f761, %f32;
fma.rn.f32 %f31, %f49, %f762, %f31;
fma.rn.f32 %f30, %f49, %f763, %f30;
mul.f32 %f764, %f49, %f50;
fma.rn.f32 %f35, %f764, %f761, %f35;
fma.rn.f32 %f34, %f764, %f762, %f34;
fma.rn.f32 %f33, %f764, %f763, %f33;
mul.f32 %f765, %f50, %f51;
fma.rn.f32 %f38, %f765, %f761, %f38;
fma.rn.f32 %f37, %f765, %f762, %f37;
fma.rn.f32 %f36, %f765, %f763, %f36;
fma.rn.f32 %f766, %f51, %f51, 0fBEAAAAAB;
fma.rn.f32 %f41, %f766, %f761, %f41;
fma.rn.f32 %f40, %f766, %f762, %f40;
fma.rn.f32 %f39, %f766, %f763, %f39;
mul.f32 %f767, %f49, %f51;
fma.rn.f32 %f44, %f767, %f761, %f44;
fma.rn.f32 %f43, %f767, %f762, %f43;
fma.rn.f32 %f42, %f767, %f763, %f42;
mul.f32 %f768, %f50, %f50;
mul.f32 %f769, %f49, %f49;
sub.f32 %f770, %f769, %f768;
fma.rn.f32 %f47, %f770, %f761, %f47;
fma.rn.f32 %f46, %f770, %f762, %f46;
fma.rn.f32 %f45, %f770, %f763, %f45;
add.f32 %f17, %f17, %f751;
BB0_21:
add.s32 %r459, %r459, 1;
setp.lt.s32 %p36, %r459, %r2;
@%p36 bra BB0_6;
bra.uni BB0_22;
BB0_4:
mov.f32 %f18, %f17;
mov.f32 %f19, %f17;
mov.f32 %f20, %f17;
mov.f32 %f21, %f17;
mov.f32 %f22, %f17;
mov.f32 %f23, %f17;
mov.f32 %f24, %f17;
mov.f32 %f25, %f17;
mov.f32 %f26, %f17;
mov.f32 %f27, %f17;
mov.f32 %f28, %f17;
mov.f32 %f29, %f17;
mov.f32 %f30, %f17;
mov.f32 %f31, %f17;
mov.f32 %f32, %f17;
mov.f32 %f33, %f17;
mov.f32 %f34, %f17;
mov.f32 %f35, %f17;
mov.f32 %f36, %f17;
mov.f32 %f37, %f17;
mov.f32 %f38, %f17;
mov.f32 %f39, %f17;
mov.f32 %f40, %f17;
mov.f32 %f41, %f17;
mov.f32 %f42, %f17;
mov.f32 %f43, %f17;
mov.f32 %f44, %f17;
mov.f32 %f45, %f17;
mov.f32 %f46, %f17;
mov.f32 %f47, %f17;
BB0_22:
mov.pred %p158, %p13;
BB0_23:
cvt.rn.f32.s32 %f771, %r459;
mov.f32 %f772, 0f3F800000;
max.f32 %f773, %f771, %f772;
rcp.rn.f32 %f774, %f773;
mul.f32 %f1713, %f20, %f774;
mul.f32 %f1714, %f19, %f774;
mul.f32 %f1715, %f18, %f774;
div.rn.f32 %f1716, %f17, %f773;
mul.f32 %f1710, %f23, %f774;
mul.f32 %f1711, %f22, %f774;
mul.f32 %f1712, %f21, %f774;
mul.f32 %f1707, %f26, %f774;
mul.f32 %f1708, %f25, %f774;
mul.f32 %f1709, %f24, %f774;
mul.f32 %f1704, %f29, %f774;
mul.f32 %f1705, %f28, %f774;
mul.f32 %f1706, %f27, %f774;
mul.f32 %f1701, %f32, %f774;
mul.f32 %f1702, %f31, %f774;
mul.f32 %f1703, %f30, %f774;
mul.f32 %f1698, %f35, %f774;
mul.f32 %f1699, %f34, %f774;
mul.f32 %f1700, %f33, %f774;
mul.f32 %f1695, %f38, %f774;
mul.f32 %f1696, %f37, %f774;
mul.f32 %f1697, %f36, %f774;
mul.f32 %f1692, %f41, %f774;
mul.f32 %f1693, %f40, %f774;
mul.f32 %f1694, %f39, %f774;
mul.f32 %f1689, %f44, %f774;
mul.f32 %f1690, %f43, %f774;
mul.f32 %f1691, %f42, %f774;
mul.f32 %f1686, %f47, %f774;
mul.f32 %f1687, %f46, %f774;
mul.f32 %f1688, %f45, %f774;
@!%p158 bra BB0_76;
bra.uni BB0_24;
BB0_24:
mov.f32 %f804, 0f00000000;
setp.lt.s32 %p37, %r3, 1;
mov.f32 %f1614, %f804;
mov.f32 %f1615, %f804;
mov.f32 %f1616, %f804;
mov.f32 %f1617, %f804;
mov.f32 %f1618, %f804;
mov.f32 %f1619, %f804;
mov.f32 %f1620, %f804;
mov.f32 %f1621, %f804;
mov.f32 %f1622, %f804;
mov.f32 %f1623, %f804;
mov.f32 %f1624, %f804;
mov.f32 %f1625, %f804;
mov.f32 %f1626, %f804;
mov.f32 %f1627, %f804;
mov.f32 %f1628, %f804;
mov.f32 %f1629, %f804;
mov.f32 %f1630, %f804;
mov.f32 %f1631, %f804;
mov.f32 %f1632, %f804;
mov.f32 %f1633, %f804;
mov.f32 %f1634, %f804;
mov.f32 %f1635, %f804;
mov.f32 %f1636, %f804;
mov.f32 %f1637, %f804;
mov.f32 %f1638, %f804;
mov.f32 %f1639, %f804;
mov.f32 %f1640, %f804;
mov.f32 %f1641, %f804;
mov.f32 %f1642, %f804;
mov.f32 %f1643, %f804;
@%p37 bra BB0_75;
cvt.rn.f32.s32 %f835, %r4;
rcp.rn.f32 %f193, %f835;
add.u64 %rd75, %SP, 28;
cvta.to.local.u64 %rd3, %rd75;
mul.f32 %f194, %f10, 0f3456BF95;
mul.f32 %f195, %f11, 0f3456BF95;
mul.f32 %f196, %f12, 0f3456BF95;
add.u64 %rd76, %SP, 0;
cvta.to.local.u64 %rd4, %rd76;
mov.f32 %f1614, 0f00000000;
mov.u32 %r157, 0;
abs.f32 %f836, %f195;
abs.f32 %f837, %f194;
max.f32 %f838, %f837, %f836;
abs.f32 %f839, %f196;
max.f32 %f840, %f838, %f839;
mov.u32 %r460, %r157;
mov.f32 %f1615, %f1614;
mov.f32 %f1616, %f1614;
mov.f32 %f1617, %f1614;
mov.f32 %f1618, %f1614;
mov.f32 %f1619, %f1614;
mov.f32 %f1620, %f1614;
mov.f32 %f1621, %f1614;
mov.f32 %f1622, %f1614;
mov.f32 %f1623, %f1614;
mov.f32 %f1624, %f1614;
mov.f32 %f1625, %f1614;
mov.f32 %f1626, %f1614;
mov.f32 %f1627, %f1614;
mov.f32 %f1628, %f1614;
mov.f32 %f1629, %f1614;
mov.f32 %f1630, %f1614;
mov.f32 %f1631, %f1614;
mov.f32 %f1632, %f1614;
mov.f32 %f1633, %f1614;
mov.f32 %f1634, %f1614;
mov.f32 %f1635, %f1614;
mov.f32 %f1636, %f1614;
mov.f32 %f1637, %f1614;
mov.f32 %f1638, %f1614;
mov.f32 %f1639, %f1614;
mov.f32 %f1640, %f1614;
mov.f32 %f1641, %f1614;
mov.f32 %f1642, %f1614;
mov.f32 %f1643, %f1614;
BB0_26:
cvt.rn.f32.s32 %f227, %r460;
max.f32 %f228, %f840, %f587;
mov.u32 %r462, %r157;
BB0_27:
mad.lo.s32 %r159, %r463, 1664525, 1013904223;
and.b32 %r160, %r159, 16777215;
cvt.rn.f32.u32 %f842, %r160;
fma.rn.f32 %f843, %f842, 0f33800000, %f227;
mul.f32 %f844, %f193, %f843;
mad.lo.s32 %r463, %r159, 1664525, 1013904223;
and.b32 %r161, %r463, 16777215;
cvt.rn.f32.u32 %f845, %r161;
cvt.rn.f32.s32 %f846, %r462;
fma.rn.f32 %f847, %f845, 0f33800000, %f846;
mul.f32 %f848, %f193, %f847;
fma.rn.f32 %f259, %f844, 0fC0000000, 0f3F800000;
mul.f32 %f260, %f259, %f259;
sub.f32 %f850, %f772, %f260;
mov.f32 %f851, 0f00000000;
max.f32 %f852, %f851, %f850;
sqrt.rn.f32 %f261, %f852;
mul.f32 %f1650, %f848, 0f40C90FDB;
abs.f32 %f263, %f1650;
setp.neu.f32 %p38, %f263, 0f7F800000;
mov.f32 %f1644, %f1650;
@%p38 bra BB0_29;
mul.rn.f32 %f1644, %f1650, %f851;
BB0_29:
mul.f32 %f854, %f1644, 0f3F22F983;
cvt.rni.s32.f32 %r473, %f854;
cvt.rn.f32.s32 %f855, %r473;
neg.f32 %f856, %f855;
mov.f32 %f857, 0f3FC90FDA;
fma.rn.f32 %f858, %f856, %f857, %f1644;
mov.f32 %f859, 0f33A22168;
fma.rn.f32 %f860, %f856, %f859, %f858;
mov.f32 %f861, 0f27C234C5;
fma.rn.f32 %f1645, %f856, %f861, %f860;
abs.f32 %f862, %f1644;
setp.leu.f32 %p39, %f862, 0f47CE4780;
@%p39 bra BB0_40;
mov.b32 %r19, %f1644;
shr.u32 %r20, %r19, 23;
shl.b32 %r164, %r19, 8;
or.b32 %r21, %r164, -2147483648;
mov.u32 %r464, 0;
mov.u64 %rd525, 0;
mov.u64 %rd524, %rd3;
mov.u32 %r465, %r464;
BB0_31:
.pragma "nounroll";
shl.b64 %rd78, %rd525, 2;
mov.u64 %rd79, __cudart_i2opi_f;
add.s64 %rd80, %rd79, %rd78;
ld.const.u32 %r167, [%rd80];
// inline asm
{
mad.lo.cc.u32 %r165, %r167, %r21, %r465;
madc.hi.u32 %r465, %r167, %r21, 0;
}
// inline asm
st.local.u32 [%rd524], %r165;
add.s32 %r464, %r464, 1;
cvt.s64.s32 %rd525, %r464;
mul.wide.s32 %rd81, %r464, 4;
add.s64 %rd524, %rd3, %rd81;
setp.ne.s32 %p40, %r464, 6;
@%p40 bra BB0_31;
and.b32 %r170, %r20, 255;
add.s32 %r171, %r170, -128;
shr.u32 %r172, %r171, 5;
and.b32 %r26, %r19, -2147483648;
st.local.u32 [%rd3+24], %r465;
mov.u32 %r173, 6;
sub.s32 %r174, %r173, %r172;
mul.wide.s32 %rd82, %r174, 4;
add.s64 %rd10, %rd3, %rd82;
ld.local.u32 %r466, [%rd10];
ld.local.u32 %r467, [%rd10+-4];
and.b32 %r29, %r20, 31;
setp.eq.s32 %p41, %r29, 0;
@%p41 bra BB0_34;
mov.u32 %r175, 32;
sub.s32 %r176, %r175, %r29;
shr.u32 %r177, %r467, %r176;
shl.b32 %r178, %r466, %r29;
add.s32 %r466, %r177, %r178;
ld.local.u32 %r179, [%rd10+-8];
shr.u32 %r180, %r179, %r176;
shl.b32 %r181, %r467, %r29;
add.s32 %r467, %r180, %r181;
BB0_34:
shr.u32 %r182, %r467, 30;
shl.b32 %r183, %r466, 2;
add.s32 %r468, %r182, %r183;
shl.b32 %r35, %r467, 2;
shr.u32 %r184, %r468, 31;
shr.u32 %r185, %r466, 30;
add.s32 %r36, %r184, %r185;
setp.eq.s32 %p42, %r184, 0;
@%p42 bra BB0_35;
bra.uni BB0_36;
BB0_35:
mov.u32 %r469, %r26;
mov.u32 %r470, %r35;
bra.uni BB0_37;
BB0_36:
not.b32 %r186, %r468;
neg.s32 %r470, %r35;
setp.eq.s32 %p43, %r35, 0;
selp.u32 %r187, 1, 0, %p43;
add.s32 %r468, %r187, %r186;
xor.b32 %r469, %r26, -2147483648;
BB0_37:
clz.b32 %r472, %r468;
setp.eq.s32 %p44, %r472, 0;
shl.b32 %r188, %r468, %r472;
mov.u32 %r189, 32;
sub.s32 %r190, %r189, %r472;
shr.u32 %r191, %r470, %r190;
add.s32 %r192, %r191, %r188;
selp.b32 %r44, %r468, %r192, %p44;
mov.u32 %r193, -921707870;
mul.hi.u32 %r471, %r44, %r193;
setp.eq.s32 %p45, %r26, 0;
neg.s32 %r194, %r36;
selp.b32 %r473, %r36, %r194, %p45;
setp.lt.s32 %p46, %r471, 1;
@%p46 bra BB0_39;
mul.lo.s32 %r195, %r44, -921707870;
shr.u32 %r196, %r195, 31;
shl.b32 %r197, %r471, 1;
add.s32 %r471, %r196, %r197;
add.s32 %r472, %r472, 1;
BB0_39:
mov.u32 %r198, 126;
sub.s32 %r199, %r198, %r472;
shl.b32 %r200, %r199, 23;
add.s32 %r201, %r471, 1;
shr.u32 %r202, %r201, 7;
add.s32 %r203, %r202, 1;
shr.u32 %r204, %r203, 1;
add.s32 %r205, %r204, %r200;
or.b32 %r206, %r205, %r469;
mov.b32 %f1645, %r206;
BB0_40:
mul.rn.f32 %f269, %f1645, %f1645;
add.s32 %r52, %r473, 1;
and.b32 %r53, %r52, 1;
setp.eq.s32 %p47, %r53, 0;
@%p47 bra BB0_42;
bra.uni BB0_41;
BB0_42:
mov.f32 %f865, 0f3C08839E;
mov.f32 %f866, 0fB94CA1F9;
fma.rn.f32 %f1646, %f866, %f269, %f865;
bra.uni BB0_43;
BB0_41:
mov.f32 %f863, 0fBAB6061A;
mov.f32 %f864, 0f37CCF5CE;
fma.rn.f32 %f1646, %f864, %f269, %f863;
BB0_43:
@%p47 bra BB0_45;
bra.uni BB0_44;
BB0_45:
mov.f32 %f870, 0fBE2AAAA3;
fma.rn.f32 %f871, %f1646, %f269, %f870;
fma.rn.f32 %f1647, %f871, %f269, %f851;
bra.uni BB0_46;
BB0_44:
mov.f32 %f867, 0f3D2AAAA5;
fma.rn.f32 %f868, %f1646, %f269, %f867;
mov.f32 %f869, 0fBF000000;
fma.rn.f32 %f1647, %f868, %f269, %f869;
BB0_46:
fma.rn.f32 %f1648, %f1647, %f1645, %f1645;
@%p47 bra BB0_48;
fma.rn.f32 %f1648, %f1647, %f269, %f772;
BB0_48:
and.b32 %r207, %r52, 2;
setp.eq.s32 %p50, %r207, 0;
@%p50 bra BB0_50;
mov.f32 %f875, 0fBF800000;
fma.rn.f32 %f1648, %f1648, %f875, %f851;
BB0_50:
@%p38 bra BB0_52;
mul.rn.f32 %f1650, %f1650, %f851;
BB0_52:
mul.f32 %f877, %f1650, 0f3F22F983;
cvt.rni.s32.f32 %r483, %f877;
cvt.rn.f32.s32 %f878, %r483;
neg.f32 %f879, %f878;
fma.rn.f32 %f881, %f879, %f857, %f1650;
fma.rn.f32 %f883, %f879, %f859, %f881;
fma.rn.f32 %f1651, %f879, %f861, %f883;
abs.f32 %f885, %f1650;
setp.leu.f32 %p52, %f885, 0f47CE4780;
@%p52 bra BB0_63;
mov.b32 %r55, %f1650;
shr.u32 %r56, %r55, 23;
shl.b32 %r210, %r55, 8;
or.b32 %r57, %r210, -2147483648;
mov.u32 %r474, 0;
mov.u64 %rd526, %rd3;
mov.u64 %rd527, %rd27;
mov.u32 %r475, %r474;
BB0_54:
.pragma "nounroll";
shl.b64 %rd84, %rd527, 2;
mov.u64 %rd85, __cudart_i2opi_f;
add.s64 %rd86, %rd85, %rd84;
ld.const.u32 %r213, [%rd86];
// inline asm
{
mad.lo.cc.u32 %r211, %r213, %r57, %r475;
madc.hi.u32 %r475, %r213, %r57, 0;
}
// inline asm
st.local.u32 [%rd526], %r211;
add.s32 %r474, %r474, 1;
cvt.s64.s32 %rd527, %r474;
mul.wide.s32 %rd87, %r474, 4;
add.s64 %rd526, %rd3, %rd87;
setp.ne.s32 %p53, %r474, 6;
@%p53 bra BB0_54;
and.b32 %r216, %r56, 255;
add.s32 %r217, %r216, -128;
shr.u32 %r218, %r217, 5;
and.b32 %r62, %r55, -2147483648;
st.local.u32 [%rd3+24], %r475;
mov.u32 %r219, 6;
sub.s32 %r220, %r219, %r218;
mul.wide.s32 %rd88, %r220, 4;
add.s64 %rd16, %rd3, %rd88;
ld.local.u32 %r476, [%rd16];
ld.local.u32 %r477, [%rd16+-4];
and.b32 %r65, %r56, 31;
setp.eq.s32 %p54, %r65, 0;
@%p54 bra BB0_57;
mov.u32 %r221, 32;
sub.s32 %r222, %r221, %r65;
shr.u32 %r223, %r477, %r222;
shl.b32 %r224, %r476, %r65;
add.s32 %r476, %r223, %r224;
ld.local.u32 %r225, [%rd16+-8];
shr.u32 %r226, %r225, %r222;
shl.b32 %r227, %r477, %r65;
add.s32 %r477, %r226, %r227;
BB0_57:
shr.u32 %r228, %r477, 30;
shl.b32 %r229, %r476, 2;
add.s32 %r478, %r228, %r229;
shl.b32 %r71, %r477, 2;
shr.u32 %r230, %r478, 31;
shr.u32 %r231, %r476, 30;
add.s32 %r72, %r230, %r231;
setp.eq.s32 %p55, %r230, 0;
@%p55 bra BB0_58;
bra.uni BB0_59;
BB0_58:
mov.u32 %r479, %r62;
mov.u32 %r480, %r71;
bra.uni BB0_60;
BB0_59:
not.b32 %r232, %r478;
neg.s32 %r480, %r71;
setp.eq.s32 %p56, %r71, 0;
selp.u32 %r233, 1, 0, %p56;
add.s32 %r478, %r233, %r232;
xor.b32 %r479, %r62, -2147483648;
BB0_60:
clz.b32 %r482, %r478;
setp.eq.s32 %p57, %r482, 0;
shl.b32 %r234, %r478, %r482;
mov.u32 %r235, 32;
sub.s32 %r236, %r235, %r482;
shr.u32 %r237, %r480, %r236;
add.s32 %r238, %r237, %r234;
selp.b32 %r80, %r478, %r238, %p57;
mov.u32 %r239, -921707870;
mul.hi.u32 %r481, %r80, %r239;
setp.eq.s32 %p58, %r62, 0;
neg.s32 %r240, %r72;
selp.b32 %r483, %r72, %r240, %p58;
setp.lt.s32 %p59, %r481, 1;
@%p59 bra BB0_62;
mul.lo.s32 %r241, %r80, -921707870;
shr.u32 %r242, %r241, 31;
shl.b32 %r243, %r481, 1;
add.s32 %r481, %r242, %r243;
add.s32 %r482, %r482, 1;
BB0_62:
mov.u32 %r244, 126;
sub.s32 %r245, %r244, %r482;
shl.b32 %r246, %r245, 23;
add.s32 %r247, %r481, 1;
shr.u32 %r248, %r247, 7;
add.s32 %r249, %r248, 1;
shr.u32 %r250, %r249, 1;
add.s32 %r251, %r250, %r246;
or.b32 %r252, %r251, %r479;
mov.b32 %f1651, %r252;
BB0_63:
mul.rn.f32 %f286, %f1651, %f1651;
and.b32 %r88, %r483, 1;
setp.eq.s32 %p60, %r88, 0;
@%p60 bra BB0_65;
bra.uni BB0_64;
BB0_65:
mov.f32 %f888, 0f3C08839E;
mov.f32 %f889, 0fB94CA1F9;
fma.rn.f32 %f1652, %f889, %f286, %f888;
bra.uni BB0_66;
BB0_64:
mov.f32 %f886, 0fBAB6061A;
mov.f32 %f887, 0f37CCF5CE;
fma.rn.f32 %f1652, %f887, %f286, %f886;
BB0_66:
@%p60 bra BB0_68;
bra.uni BB0_67;
BB0_68:
mov.f32 %f893, 0fBE2AAAA3;
fma.rn.f32 %f894, %f1652, %f286, %f893;
fma.rn.f32 %f1653, %f894, %f286, %f851;
bra.uni BB0_69;
BB0_67:
mov.f32 %f890, 0f3D2AAAA5;
fma.rn.f32 %f891, %f1652, %f286, %f890;
mov.f32 %f892, 0fBF000000;
fma.rn.f32 %f1653, %f891, %f286, %f892;
BB0_69:
fma.rn.f32 %f1654, %f1653, %f1651, %f1651;
@%p60 bra BB0_71;
fma.rn.f32 %f1654, %f1653, %f286, %f772;
BB0_71:
and.b32 %r253, %r483, 2;
setp.eq.s32 %p63, %r253, 0;
@%p63 bra BB0_73;
mov.f32 %f898, 0fBF800000;
fma.rn.f32 %f1654, %f1654, %f898, %f851;
BB0_73:
mul.f32 %f902, %f261, %f1648;
mov.f32 %f907, 0f7F7FFFFF;
st.local.v4.f32 [%rd4], {%f772, %f772, %f772, %f907};
ld.global.u32 %r254, [root];
mul.f32 %f903, %f261, %f1654;
mov.u32 %r255, 0;
mov.f32 %f906, 0f6C4ECB8F;
mov.u32 %r256, 16;
// inline asm
call _rt_trace_64, (%r254, %f10, %f11, %f12, %f902, %f903, %f259, %r255, %f228, %f906, %rd76, %r256);
// inline asm
ld.local.v4.f32 {%f909, %f910, %f911, %f912}, [%rd4];
max.f32 %f915, %f909, %f851;
max.f32 %f917, %f910, %f851;
max.f32 %f919, %f911, %f851;
setp.ltu.f32 %p64, %f912, 0f00000000;
selp.f32 %f921, %f919, 0f00000000, %p64;
selp.f32 %f922, %f917, 0f00000000, %p64;
selp.f32 %f923, %f915, 0f00000000, %p64;
add.f32 %f1619, %f1619, %f923;
add.f32 %f1618, %f1618, %f922;
add.f32 %f1617, %f1617, %f921;
fma.rn.f32 %f1622, %f903, %f923, %f1622;
fma.rn.f32 %f1621, %f903, %f922, %f1621;
fma.rn.f32 %f1620, %f903, %f921, %f1620;
fma.rn.f32 %f1625, %f259, %f923, %f1625;
fma.rn.f32 %f1624, %f259, %f922, %f1624;
fma.rn.f32 %f1623, %f259, %f921, %f1623;
fma.rn.f32 %f1628, %f902, %f923, %f1628;
fma.rn.f32 %f1627, %f902, %f922, %f1627;
fma.rn.f32 %f1626, %f902, %f921, %f1626;
mul.f32 %f924, %f902, %f903;
fma.rn.f32 %f1631, %f924, %f923, %f1631;
fma.rn.f32 %f1630, %f924, %f922, %f1630;
fma.rn.f32 %f1629, %f924, %f921, %f1629;
mul.f32 %f925, %f259, %f903;
fma.rn.f32 %f1634, %f925, %f923, %f1634;
fma.rn.f32 %f1633, %f925, %f922, %f1633;
fma.rn.f32 %f1632, %f925, %f921, %f1632;
add.f32 %f926, %f260, 0fBEAAAAAB;
fma.rn.f32 %f1637, %f926, %f923, %f1637;
fma.rn.f32 %f1636, %f926, %f922, %f1636;
fma.rn.f32 %f1635, %f926, %f921, %f1635;
mul.f32 %f927, %f259, %f902;
fma.rn.f32 %f1640, %f927, %f923, %f1640;
fma.rn.f32 %f1639, %f927, %f922, %f1639;
fma.rn.f32 %f1638, %f927, %f921, %f1638;
mul.f32 %f928, %f903, %f903;
mul.f32 %f929, %f902, %f902;
sub.f32 %f930, %f929, %f928;
fma.rn.f32 %f1643, %f930, %f923, %f1643;
fma.rn.f32 %f1642, %f930, %f922, %f1642;
fma.rn.f32 %f1641, %f930, %f921, %f1641;
mul.f32 %f931, %f1486, %f903;
fma.rn.f32 %f932, %f1485, %f902, %f931;
fma.rn.f32 %f933, %f1487, %f259, %f932;
cvt.sat.f32.f32 %f934, %f933;
fma.rn.f32 %f1616, %f934, %f923, %f1616;
fma.rn.f32 %f1615, %f934, %f922, %f1615;
fma.rn.f32 %f1614, %f934, %f921, %f1614;
add.s32 %r462, %r462, 1;
setp.lt.s32 %p65, %r462, %r4;
@%p65 bra BB0_27;
add.s32 %r460, %r460, 1;
setp.lt.s32 %p66, %r460, %r4;
@%p66 bra BB0_26;
BB0_75:
mul.lo.s32 %r257, %r4, %r4;
cvt.rn.f32.s32 %f935, %r257;
rcp.rn.f32 %f936, %f935;
mul.f32 %f937, %f1616, %f936;
mul.f32 %f938, %f1615, %f936;
mul.f32 %f939, %f1614, %f936;
div.rn.f32 %f1716, %f804, %f935;
mul.f32 %f1710, %f1619, %f936;
mul.f32 %f1711, %f1618, %f936;
mul.f32 %f1712, %f1617, %f936;
mul.f32 %f1707, %f1622, %f936;
mul.f32 %f1708, %f1621, %f936;
mul.f32 %f1709, %f1620, %f936;
mul.f32 %f1704, %f1625, %f936;
mul.f32 %f1705, %f1624, %f936;
mul.f32 %f1706, %f1623, %f936;
mul.f32 %f1701, %f1628, %f936;
mul.f32 %f1702, %f1627, %f936;
mul.f32 %f1703, %f1626, %f936;
mul.f32 %f1698, %f1631, %f936;
mul.f32 %f1699, %f1630, %f936;
mul.f32 %f1700, %f1629, %f936;
mul.f32 %f1695, %f1634, %f936;
mul.f32 %f1696, %f1633, %f936;
mul.f32 %f1697, %f1632, %f936;
mul.f32 %f1692, %f1637, %f936;
mul.f32 %f1693, %f1636, %f936;
mul.f32 %f1694, %f1635, %f936;
mul.f32 %f1689, %f1640, %f936;
mul.f32 %f1690, %f1639, %f936;
mul.f32 %f1691, %f1638, %f936;
mul.f32 %f1686, %f1643, %f936;
mul.f32 %f1687, %f1642, %f936;
mul.f32 %f1688, %f1641, %f936;
fma.rn.f32 %f1713, %f1616, %f936, %f937;
fma.rn.f32 %f1714, %f1615, %f936, %f938;
fma.rn.f32 %f1715, %f1614, %f936, %f939;
BB0_76:
setp.gt.s32 %p67, %r1, -1;
selp.f32 %f420, %f1716, %f1713, %p67;
ld.global.u32 %r485, [imageEnabled];
and.b32 %r258, %r485, 8;
setp.eq.s32 %p68, %r258, 0;
@%p68 bra BB0_89;
cvt.u64.u32 %rd92, %r6;
cvt.u64.u32 %rd93, %r7;
mov.u64 %rd96, image_Mask;
cvta.global.u64 %rd91, %rd96;
// inline asm
call (%rd90), _rt_buffer_get_64, (%rd91, %r101, %r101, %rd92, %rd93, %rd27, %rd27);
// inline asm
mov.f32 %f943, 0f3E68BA2E;
cvt.rzi.f32.f32 %f944, %f943;
fma.rn.f32 %f945, %f944, 0fC0000000, 0f3EE8BA2E;
abs.f32 %f421, %f945;
abs.f32 %f422, %f420;
setp.lt.f32 %p69, %f422, 0f00800000;
mul.f32 %f946, %f422, 0f4B800000;
selp.f32 %f947, 0fC3170000, 0fC2FE0000, %p69;
selp.f32 %f948, %f946, %f422, %p69;
mov.b32 %r261, %f948;
and.b32 %r262, %r261, 8388607;
or.b32 %r263, %r262, 1065353216;
mov.b32 %f949, %r263;
shr.u32 %r264, %r261, 23;
cvt.rn.f32.u32 %f950, %r264;
add.f32 %f951, %f947, %f950;
setp.gt.f32 %p70, %f949, 0f3FB504F3;
mul.f32 %f952, %f949, 0f3F000000;
add.f32 %f953, %f951, 0f3F800000;
selp.f32 %f954, %f952, %f949, %p70;
selp.f32 %f955, %f953, %f951, %p70;
add.f32 %f956, %f954, 0fBF800000;
add.f32 %f942, %f954, 0f3F800000;
// inline asm
rcp.approx.ftz.f32 %f941,%f942;
// inline asm
add.f32 %f957, %f956, %f956;
mul.f32 %f958, %f941, %f957;
mul.f32 %f959, %f958, %f958;
mov.f32 %f960, 0f3C4CAF63;
mov.f32 %f961, 0f3B18F0FE;
fma.rn.f32 %f962, %f961, %f959, %f960;
mov.f32 %f963, 0f3DAAAABD;
fma.rn.f32 %f964, %f962, %f959, %f963;
mul.rn.f32 %f965, %f964, %f959;
mul.rn.f32 %f966, %f965, %f958;
sub.f32 %f967, %f956, %f958;
neg.f32 %f968, %f958;
add.f32 %f969, %f967, %f967;
fma.rn.f32 %f970, %f968, %f956, %f969;
mul.rn.f32 %f971, %f941, %f970;
add.f32 %f972, %f966, %f958;
sub.f32 %f973, %f958, %f972;
add.f32 %f974, %f966, %f973;
add.f32 %f975, %f971, %f974;
add.f32 %f976, %f972, %f975;
sub.f32 %f977, %f972, %f976;
add.f32 %f978, %f975, %f977;
mov.f32 %f979, 0f3F317200;
mul.rn.f32 %f980, %f955, %f979;
mov.f32 %f981, 0f35BFBE8E;
mul.rn.f32 %f982, %f955, %f981;
add.f32 %f983, %f980, %f976;
sub.f32 %f984, %f980, %f983;
add.f32 %f985, %f976, %f984;
add.f32 %f986, %f978, %f985;
add.f32 %f987, %f982, %f986;
add.f32 %f988, %f983, %f987;
sub.f32 %f989, %f983, %f988;
add.f32 %f990, %f987, %f989;
mov.f32 %f991, 0f3EE8BA2E;
mul.rn.f32 %f992, %f991, %f988;
neg.f32 %f993, %f992;
fma.rn.f32 %f994, %f991, %f988, %f993;
fma.rn.f32 %f995, %f991, %f990, %f994;
mov.f32 %f996, 0f00000000;
fma.rn.f32 %f997, %f996, %f988, %f995;
add.rn.f32 %f998, %f992, %f997;
neg.f32 %f999, %f998;
add.rn.f32 %f1000, %f992, %f999;
add.rn.f32 %f1001, %f1000, %f997;
mov.b32 %r265, %f998;
setp.eq.s32 %p71, %r265, 1118925336;
add.s32 %r266, %r265, -1;
mov.b32 %f1002, %r266;
add.f32 %f1003, %f1001, 0f37000000;
selp.f32 %f1004, %f1002, %f998, %p71;
selp.f32 %f423, %f1003, %f1001, %p71;
mul.f32 %f1005, %f1004, 0f3FB8AA3B;
cvt.rzi.f32.f32 %f1006, %f1005;
mov.f32 %f1007, 0fBF317200;
fma.rn.f32 %f1008, %f1006, %f1007, %f1004;
mov.f32 %f1009, 0fB5BFBE8E;
fma.rn.f32 %f1010, %f1006, %f1009, %f1008;
mul.f32 %f1011, %f1010, 0f3FB8AA3B;
ex2.approx.ftz.f32 %f1012, %f1011;
add.f32 %f1013, %f1006, 0f00000000;
ex2.approx.f32 %f1014, %f1013;
mul.f32 %f1015, %f1012, %f1014;
setp.lt.f32 %p72, %f1004, 0fC2D20000;
selp.f32 %f1016, 0f00000000, %f1015, %p72;
setp.gt.f32 %p73, %f1004, 0f42D20000;
selp.f32 %f1717, 0f7F800000, %f1016, %p73;
setp.eq.f32 %p74, %f1717, 0f7F800000;
@%p74 bra BB0_79;
fma.rn.f32 %f1717, %f1717, %f423, %f1717;
BB0_79:
setp.lt.f32 %p75, %f420, 0f00000000;
setp.eq.f32 %p76, %f421, 0f3F800000;
and.pred %p3, %p75, %p76;
mov.b32 %r267, %f1717;
xor.b32 %r268, %r267, -2147483648;
mov.b32 %f1017, %r268;
selp.f32 %f1719, %f1017, %f1717, %p3;
setp.eq.f32 %p77, %f420, 0f00000000;
@%p77 bra BB0_82;
bra.uni BB0_80;
BB0_82:
add.f32 %f1020, %f420, %f420;
selp.f32 %f1719, %f1020, 0f00000000, %p76;
bra.uni BB0_83;
BB0_162:
mov.u64 %rd337, image_HDR;
cvta.global.u64 %rd332, %rd337;
mov.u32 %r389, 8;
mov.u64 %rd336, 0;
// inline asm
call (%rd331), _rt_buffer_get_64, (%rd332, %r101, %r389, %rd20, %rd21, %rd336, %rd336);
// inline asm
mov.f32 %f1414, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs180, %f1414;}
// inline asm
mov.u16 %rs181, 0;
st.v4.u16 [%rd331], {%rs180, %rs180, %rs180, %rs181};
BB0_163:
ld.global.u32 %r390, [additive];
setp.eq.s32 %p149, %r390, 0;
@%p149 bra BB0_165;
mov.u64 %rd350, image_RNM0;
cvta.global.u64 %rd339, %rd350;
mov.u32 %r394, 8;
mov.u64 %rd349, 0;
// inline asm
call (%rd338), _rt_buffer_get_64, (%rd339, %r101, %r394, %rd20, %rd21, %rd349, %rd349);
// inline asm
ld.v4.u16 {%rs188, %rs189, %rs190, %rs191}, [%rd338];
// inline asm
{ cvt.f32.f16 %f1415, %rs188;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1416, %rs189;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1417, %rs190;}
// inline asm
// inline asm
call (%rd344), _rt_buffer_get_64, (%rd339, %r101, %r394, %rd20, %rd21, %rd349, %rd349);
// inline asm
add.f32 %f1418, %f1415, 0f00000000;
add.f32 %f1419, %f1416, 0f00000000;
add.f32 %f1420, %f1417, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs187, %f1420;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs186, %f1419;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs185, %f1418;}
// inline asm
mov.u16 %rs192, 0;
st.v4.u16 [%rd344], {%rs185, %rs186, %rs187, %rs192};
bra.uni BB0_166;
BB0_165:
mov.u64 %rd357, image_RNM0;
cvta.global.u64 %rd352, %rd357;
mov.u32 %r396, 8;
mov.u64 %rd356, 0;
// inline asm
call (%rd351), _rt_buffer_get_64, (%rd352, %r101, %r396, %rd20, %rd21, %rd356, %rd356);
// inline asm
mov.f32 %f1421, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs193, %f1421;}
// inline asm
mov.u16 %rs194, 0;
st.v4.u16 [%rd351], {%rs193, %rs193, %rs193, %rs194};
BB0_166:
ld.global.u32 %r397, [additive];
setp.eq.s32 %p150, %r397, 0;
@%p150 bra BB0_168;
mov.u64 %rd370, image_RNM1;
cvta.global.u64 %rd359, %rd370;
mov.u32 %r401, 8;
mov.u64 %rd369, 0;
// inline asm
call (%rd358), _rt_buffer_get_64, (%rd359, %r101, %r401, %rd20, %rd21, %rd369, %rd369);
// inline asm
ld.v4.u16 {%rs201, %rs202, %rs203, %rs204}, [%rd358];
// inline asm
{ cvt.f32.f16 %f1422, %rs201;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1423, %rs202;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1424, %rs203;}
// inline asm
// inline asm
call (%rd364), _rt_buffer_get_64, (%rd359, %r101, %r401, %rd20, %rd21, %rd369, %rd369);
// inline asm
add.f32 %f1425, %f1422, 0f00000000;
add.f32 %f1426, %f1423, 0f00000000;
add.f32 %f1427, %f1424, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs200, %f1427;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs199, %f1426;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs198, %f1425;}
// inline asm
mov.u16 %rs205, 0;
st.v4.u16 [%rd364], {%rs198, %rs199, %rs200, %rs205};
bra.uni BB0_169;
BB0_168:
mov.u64 %rd377, image_RNM1;
cvta.global.u64 %rd372, %rd377;
mov.u32 %r403, 8;
mov.u64 %rd376, 0;
// inline asm
call (%rd371), _rt_buffer_get_64, (%rd372, %r101, %r403, %rd20, %rd21, %rd376, %rd376);
// inline asm
mov.f32 %f1428, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs206, %f1428;}
// inline asm
mov.u16 %rs207, 0;
st.v4.u16 [%rd371], {%rs206, %rs206, %rs206, %rs207};
BB0_169:
ld.global.u32 %r404, [additive];
setp.eq.s32 %p151, %r404, 0;
@%p151 bra BB0_171;
mov.u64 %rd390, image_RNM2;
cvta.global.u64 %rd379, %rd390;
mov.u32 %r408, 8;
mov.u64 %rd389, 0;
// inline asm
call (%rd378), _rt_buffer_get_64, (%rd379, %r101, %r408, %rd20, %rd21, %rd389, %rd389);
// inline asm
ld.v4.u16 {%rs214, %rs215, %rs216, %rs217}, [%rd378];
// inline asm
{ cvt.f32.f16 %f1429, %rs214;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1430, %rs215;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1431, %rs216;}
// inline asm
// inline asm
call (%rd384), _rt_buffer_get_64, (%rd379, %r101, %r408, %rd20, %rd21, %rd389, %rd389);
// inline asm
add.f32 %f1432, %f1429, 0f00000000;
add.f32 %f1433, %f1430, 0f00000000;
add.f32 %f1434, %f1431, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs213, %f1434;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs212, %f1433;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs211, %f1432;}
// inline asm
mov.u16 %rs218, 0;
st.v4.u16 [%rd384], {%rs211, %rs212, %rs213, %rs218};
bra.uni BB0_172;
BB0_171:
mov.u64 %rd397, image_RNM2;
cvta.global.u64 %rd392, %rd397;
mov.u32 %r410, 8;
mov.u64 %rd396, 0;
// inline asm
call (%rd391), _rt_buffer_get_64, (%rd392, %r101, %r410, %rd20, %rd21, %rd396, %rd396);
// inline asm
mov.f32 %f1435, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs219, %f1435;}
// inline asm
mov.u16 %rs220, 0;
st.v4.u16 [%rd391], {%rs219, %rs219, %rs219, %rs220};
BB0_172:
ld.global.u32 %r411, [additive];
setp.eq.s32 %p152, %r411, 0;
@%p152 bra BB0_174;
mov.u64 %rd410, image_RNM3;
cvta.global.u64 %rd399, %rd410;
mov.u32 %r415, 8;
mov.u64 %rd409, 0;
// inline asm
call (%rd398), _rt_buffer_get_64, (%rd399, %r101, %r415, %rd20, %rd21, %rd409, %rd409);
// inline asm
ld.v4.u16 {%rs227, %rs228, %rs229, %rs230}, [%rd398];
// inline asm
{ cvt.f32.f16 %f1436, %rs227;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1437, %rs228;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1438, %rs229;}
// inline asm
// inline asm
call (%rd404), _rt_buffer_get_64, (%rd399, %r101, %r415, %rd20, %rd21, %rd409, %rd409);
// inline asm
add.f32 %f1439, %f1436, 0f00000000;
add.f32 %f1440, %f1437, 0f00000000;
add.f32 %f1441, %f1438, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs226, %f1441;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs225, %f1440;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs224, %f1439;}
// inline asm
mov.u16 %rs231, 0;
st.v4.u16 [%rd404], {%rs224, %rs225, %rs226, %rs231};
bra.uni BB0_175;
BB0_174:
mov.u64 %rd417, image_RNM3;
cvta.global.u64 %rd412, %rd417;
mov.u32 %r417, 8;
mov.u64 %rd416, 0;
// inline asm
call (%rd411), _rt_buffer_get_64, (%rd412, %r101, %r417, %rd20, %rd21, %rd416, %rd416);
// inline asm
mov.f32 %f1442, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs232, %f1442;}
// inline asm
mov.u16 %rs233, 0;
st.v4.u16 [%rd411], {%rs232, %rs232, %rs232, %rs233};
BB0_175:
ld.global.u32 %r418, [additive];
setp.eq.s32 %p153, %r418, 0;
@%p153 bra BB0_177;
mov.u64 %rd430, image_RNM4;
cvta.global.u64 %rd419, %rd430;
mov.u32 %r422, 8;
mov.u64 %rd429, 0;
// inline asm
call (%rd418), _rt_buffer_get_64, (%rd419, %r101, %r422, %rd20, %rd21, %rd429, %rd429);
// inline asm
ld.v4.u16 {%rs240, %rs241, %rs242, %rs243}, [%rd418];
// inline asm
{ cvt.f32.f16 %f1443, %rs240;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1444, %rs241;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1445, %rs242;}
// inline asm
// inline asm
call (%rd424), _rt_buffer_get_64, (%rd419, %r101, %r422, %rd20, %rd21, %rd429, %rd429);
// inline asm
add.f32 %f1446, %f1443, 0f00000000;
add.f32 %f1447, %f1444, 0f00000000;
add.f32 %f1448, %f1445, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs239, %f1448;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs238, %f1447;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs237, %f1446;}
// inline asm
mov.u16 %rs244, 0;
st.v4.u16 [%rd424], {%rs237, %rs238, %rs239, %rs244};
bra.uni BB0_178;
BB0_177:
mov.u64 %rd437, image_RNM4;
cvta.global.u64 %rd432, %rd437;
mov.u32 %r424, 8;
mov.u64 %rd436, 0;
// inline asm
call (%rd431), _rt_buffer_get_64, (%rd432, %r101, %r424, %rd20, %rd21, %rd436, %rd436);
// inline asm
mov.f32 %f1449, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs245, %f1449;}
// inline asm
mov.u16 %rs246, 0;
st.v4.u16 [%rd431], {%rs245, %rs245, %rs245, %rs246};
BB0_178:
ld.global.u32 %r425, [additive];
setp.eq.s32 %p154, %r425, 0;
@%p154 bra BB0_180;
mov.u64 %rd450, image_RNM5;
cvta.global.u64 %rd439, %rd450;
mov.u32 %r429, 8;
mov.u64 %rd449, 0;
// inline asm
call (%rd438), _rt_buffer_get_64, (%rd439, %r101, %r429, %rd20, %rd21, %rd449, %rd449);
// inline asm
ld.v4.u16 {%rs253, %rs254, %rs255, %rs256}, [%rd438];
// inline asm
{ cvt.f32.f16 %f1450, %rs253;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1451, %rs254;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1452, %rs255;}
// inline asm
// inline asm
call (%rd444), _rt_buffer_get_64, (%rd439, %r101, %r429, %rd20, %rd21, %rd449, %rd449);
// inline asm
add.f32 %f1453, %f1450, 0f00000000;
add.f32 %f1454, %f1451, 0f00000000;
add.f32 %f1455, %f1452, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs252, %f1455;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs251, %f1454;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs250, %f1453;}
// inline asm
mov.u16 %rs257, 0;
st.v4.u16 [%rd444], {%rs250, %rs251, %rs252, %rs257};
bra.uni BB0_181;
BB0_180:
mov.u64 %rd457, image_RNM5;
cvta.global.u64 %rd452, %rd457;
mov.u32 %r431, 8;
mov.u64 %rd456, 0;
// inline asm
call (%rd451), _rt_buffer_get_64, (%rd452, %r101, %r431, %rd20, %rd21, %rd456, %rd456);
// inline asm
mov.f32 %f1456, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs258, %f1456;}
// inline asm
mov.u16 %rs259, 0;
st.v4.u16 [%rd451], {%rs258, %rs258, %rs258, %rs259};
BB0_181:
ld.global.u32 %r432, [additive];
setp.eq.s32 %p155, %r432, 0;
@%p155 bra BB0_183;
mov.u64 %rd470, image_RNM6;
cvta.global.u64 %rd459, %rd470;
mov.u32 %r436, 8;
mov.u64 %rd469, 0;
// inline asm
call (%rd458), _rt_buffer_get_64, (%rd459, %r101, %r436, %rd20, %rd21, %rd469, %rd469);
// inline asm
ld.v4.u16 {%rs266, %rs267, %rs268, %rs269}, [%rd458];
// inline asm
{ cvt.f32.f16 %f1457, %rs266;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1458, %rs267;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1459, %rs268;}
// inline asm
// inline asm
call (%rd464), _rt_buffer_get_64, (%rd459, %r101, %r436, %rd20, %rd21, %rd469, %rd469);
// inline asm
add.f32 %f1460, %f1457, 0f00000000;
add.f32 %f1461, %f1458, 0f00000000;
add.f32 %f1462, %f1459, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs265, %f1462;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs264, %f1461;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs263, %f1460;}
// inline asm
mov.u16 %rs270, 0;
st.v4.u16 [%rd464], {%rs263, %rs264, %rs265, %rs270};
bra.uni BB0_184;
BB0_183:
mov.u64 %rd477, image_RNM6;
cvta.global.u64 %rd472, %rd477;
mov.u32 %r438, 8;
mov.u64 %rd476, 0;
// inline asm
call (%rd471), _rt_buffer_get_64, (%rd472, %r101, %r438, %rd20, %rd21, %rd476, %rd476);
// inline asm
mov.f32 %f1463, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs271, %f1463;}
// inline asm
mov.u16 %rs272, 0;
st.v4.u16 [%rd471], {%rs271, %rs271, %rs271, %rs272};
BB0_184:
ld.global.u32 %r439, [additive];
setp.eq.s32 %p156, %r439, 0;
@%p156 bra BB0_186;
mov.u64 %rd490, image_RNM7;
cvta.global.u64 %rd479, %rd490;
mov.u32 %r443, 8;
mov.u64 %rd489, 0;
// inline asm
call (%rd478), _rt_buffer_get_64, (%rd479, %r101, %r443, %rd20, %rd21, %rd489, %rd489);
// inline asm
ld.v4.u16 {%rs279, %rs280, %rs281, %rs282}, [%rd478];
// inline asm
{ cvt.f32.f16 %f1464, %rs279;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1465, %rs280;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1466, %rs281;}
// inline asm
// inline asm
call (%rd484), _rt_buffer_get_64, (%rd479, %r101, %r443, %rd20, %rd21, %rd489, %rd489);
// inline asm
add.f32 %f1467, %f1464, 0f00000000;
add.f32 %f1468, %f1465, 0f00000000;
add.f32 %f1469, %f1466, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs278, %f1469;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs277, %f1468;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs276, %f1467;}
// inline asm
mov.u16 %rs283, 0;
st.v4.u16 [%rd484], {%rs276, %rs277, %rs278, %rs283};
bra.uni BB0_187;
BB0_186:
mov.u64 %rd497, image_RNM7;
cvta.global.u64 %rd492, %rd497;
mov.u32 %r445, 8;
mov.u64 %rd496, 0;
// inline asm
call (%rd491), _rt_buffer_get_64, (%rd492, %r101, %r445, %rd20, %rd21, %rd496, %rd496);
// inline asm
mov.f32 %f1470, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs284, %f1470;}
// inline asm
mov.u16 %rs285, 0;
st.v4.u16 [%rd491], {%rs284, %rs284, %rs284, %rs285};
BB0_187:
ld.global.u32 %r446, [additive];
setp.eq.s32 %p157, %r446, 0;
@%p157 bra BB0_189;
mov.u64 %rd510, image_RNM8;
cvta.global.u64 %rd499, %rd510;
mov.u32 %r450, 8;
mov.u64 %rd509, 0;
// inline asm
call (%rd498), _rt_buffer_get_64, (%rd499, %r101, %r450, %rd20, %rd21, %rd509, %rd509);
// inline asm
ld.v4.u16 {%rs292, %rs293, %rs294, %rs295}, [%rd498];
// inline asm
{ cvt.f32.f16 %f1471, %rs292;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1472, %rs293;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1473, %rs294;}
// inline asm
// inline asm
call (%rd504), _rt_buffer_get_64, (%rd499, %r101, %r450, %rd20, %rd21, %rd509, %rd509);
// inline asm
add.f32 %f1474, %f1471, 0f00000000;
add.f32 %f1475, %f1472, 0f00000000;
add.f32 %f1476, %f1473, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs291, %f1476;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs290, %f1475;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs289, %f1474;}
// inline asm
mov.u16 %rs296, 0;
st.v4.u16 [%rd504], {%rs289, %rs290, %rs291, %rs296};
bra.uni BB0_190;
BB0_189:
mov.u64 %rd517, image_RNM8;
cvta.global.u64 %rd512, %rd517;
mov.u32 %r452, 8;
mov.u64 %rd516, 0;
// inline asm
call (%rd511), _rt_buffer_get_64, (%rd512, %r101, %r452, %rd20, %rd21, %rd516, %rd516);
// inline asm
mov.f32 %f1477, 0f00000000;
// inline asm
{ cvt.rn.f16.f32 %rs297, %f1477;}
// inline asm
mov.u16 %rs298, 0;
st.v4.u16 [%rd511], {%rs297, %rs297, %rs297, %rs298};
bra.uni BB0_190;
BB0_80:
setp.geu.f32 %p78, %f420, 0f00000000;
@%p78 bra BB0_83;
cvt.rzi.f32.f32 %f1019, %f991;
setp.neu.f32 %p79, %f1019, 0f3EE8BA2E;
selp.f32 %f1719, 0f7FFFFFFF, %f1719, %p79;
BB0_83:
add.f32 %f1021, %f422, 0f3EE8BA2E;
mov.b32 %r269, %f1021;
setp.lt.s32 %p81, %r269, 2139095040;
@%p81 bra BB0_88;
setp.gtu.f32 %p82, %f422, 0f7F800000;
@%p82 bra BB0_87;
bra.uni BB0_85;
BB0_87:
add.f32 %f1719, %f420, 0f3EE8BA2E;
bra.uni BB0_88;
BB0_85:
setp.neu.f32 %p83, %f422, 0f7F800000;
@%p83 bra BB0_88;
selp.f32 %f1719, 0fFF800000, 0f7F800000, %p3;
BB0_88:
mul.f32 %f1022, %f1719, 0f437F0000;
setp.eq.f32 %p84, %f420, 0f3F800000;
selp.f32 %f1023, 0f437F0000, %f1022, %p84;
cvt.rzi.u32.f32 %r270, %f1023;
cvt.u16.u32 %rs20, %r270;
mov.u16 %rs21, 255;
st.v2.u8 [%rd90], {%rs20, %rs21};
ld.global.u32 %r485, [imageEnabled];
BB0_89:
ld.global.f32 %f1024, [lightColor];
mul.f32 %f434, %f1713, %f1024;
ld.global.f32 %f1025, [lightColor+4];
mul.f32 %f435, %f1714, %f1025;
ld.global.f32 %f1026, [lightColor+8];
mul.f32 %f436, %f1715, %f1026;
and.b32 %r271, %r485, 1;
setp.eq.b32 %p85, %r271, 1;
@!%p85 bra BB0_124;
bra.uni BB0_90;
BB0_90:
mov.f32 %f1029, 0f3E666666;
cvt.rzi.f32.f32 %f1030, %f1029;
fma.rn.f32 %f1031, %f1030, 0fC0000000, 0f3EE66666;
abs.f32 %f437, %f1031;
abs.f32 %f438, %f434;
setp.lt.f32 %p86, %f438, 0f00800000;
mul.f32 %f1032, %f438, 0f4B800000;
selp.f32 %f1033, 0fC3170000, 0fC2FE0000, %p86;
selp.f32 %f1034, %f1032, %f438, %p86;
mov.b32 %r272, %f1034;
and.b32 %r273, %r272, 8388607;
or.b32 %r274, %r273, 1065353216;
mov.b32 %f1035, %r274;
shr.u32 %r275, %r272, 23;
cvt.rn.f32.u32 %f1036, %r275;
add.f32 %f1037, %f1033, %f1036;
setp.gt.f32 %p87, %f1035, 0f3FB504F3;
mul.f32 %f1038, %f1035, 0f3F000000;
add.f32 %f1039, %f1037, 0f3F800000;
selp.f32 %f1040, %f1038, %f1035, %p87;
selp.f32 %f1041, %f1039, %f1037, %p87;
add.f32 %f1042, %f1040, 0fBF800000;
add.f32 %f1028, %f1040, 0f3F800000;
// inline asm
rcp.approx.ftz.f32 %f1027,%f1028;
// inline asm
add.f32 %f1043, %f1042, %f1042;
mul.f32 %f1044, %f1027, %f1043;
mul.f32 %f1045, %f1044, %f1044;
mov.f32 %f1046, 0f3C4CAF63;
mov.f32 %f1047, 0f3B18F0FE;
fma.rn.f32 %f1048, %f1047, %f1045, %f1046;
mov.f32 %f1049, 0f3DAAAABD;
fma.rn.f32 %f1050, %f1048, %f1045, %f1049;
mul.rn.f32 %f1051, %f1050, %f1045;
mul.rn.f32 %f1052, %f1051, %f1044;
sub.f32 %f1053, %f1042, %f1044;
neg.f32 %f1054, %f1044;
add.f32 %f1055, %f1053, %f1053;
fma.rn.f32 %f1056, %f1054, %f1042, %f1055;
mul.rn.f32 %f1057, %f1027, %f1056;
add.f32 %f1058, %f1052, %f1044;
sub.f32 %f1059, %f1044, %f1058;
add.f32 %f1060, %f1052, %f1059;
add.f32 %f1061, %f1057, %f1060;
add.f32 %f1062, %f1058, %f1061;
sub.f32 %f1063, %f1058, %f1062;
add.f32 %f1064, %f1061, %f1063;
mov.f32 %f1065, 0f3F317200;
mul.rn.f32 %f1066, %f1041, %f1065;
mov.f32 %f1067, 0f35BFBE8E;
mul.rn.f32 %f1068, %f1041, %f1067;
add.f32 %f1069, %f1066, %f1062;
sub.f32 %f1070, %f1066, %f1069;
add.f32 %f1071, %f1062, %f1070;
add.f32 %f1072, %f1064, %f1071;
add.f32 %f1073, %f1068, %f1072;
add.f32 %f1074, %f1069, %f1073;
sub.f32 %f1075, %f1069, %f1074;
add.f32 %f1076, %f1073, %f1075;
mov.f32 %f1077, 0f3EE66666;
mul.rn.f32 %f1078, %f1077, %f1074;
neg.f32 %f1079, %f1078;
fma.rn.f32 %f1080, %f1077, %f1074, %f1079;
fma.rn.f32 %f1081, %f1077, %f1076, %f1080;
mov.f32 %f1082, 0f00000000;
fma.rn.f32 %f1083, %f1082, %f1074, %f1081;
add.rn.f32 %f1084, %f1078, %f1083;
neg.f32 %f1085, %f1084;
add.rn.f32 %f1086, %f1078, %f1085;
add.rn.f32 %f1087, %f1086, %f1083;
mov.b32 %r276, %f1084;
setp.eq.s32 %p88, %r276, 1118925336;
add.s32 %r277, %r276, -1;
mov.b32 %f1088, %r277;
add.f32 %f1089, %f1087, 0f37000000;
selp.f32 %f1090, %f1088, %f1084, %p88;
selp.f32 %f439, %f1089, %f1087, %p88;
mul.f32 %f1091, %f1090, 0f3FB8AA3B;
cvt.rzi.f32.f32 %f1092, %f1091;
mov.f32 %f1093, 0fBF317200;
fma.rn.f32 %f1094, %f1092, %f1093, %f1090;
mov.f32 %f1095, 0fB5BFBE8E;
fma.rn.f32 %f1096, %f1092, %f1095, %f1094;
mul.f32 %f1097, %f1096, 0f3FB8AA3B;
ex2.approx.ftz.f32 %f1098, %f1097;
add.f32 %f1099, %f1092, 0f00000000;
ex2.approx.f32 %f1100, %f1099;
mul.f32 %f1101, %f1098, %f1100;
setp.lt.f32 %p89, %f1090, 0fC2D20000;
selp.f32 %f1102, 0f00000000, %f1101, %p89;
setp.gt.f32 %p90, %f1090, 0f42D20000;
selp.f32 %f1720, 0f7F800000, %f1102, %p90;
setp.eq.f32 %p91, %f1720, 0f7F800000;
@%p91 bra BB0_92;
fma.rn.f32 %f1720, %f1720, %f439, %f1720;
BB0_92:
setp.lt.f32 %p92, %f434, 0f00000000;
setp.eq.f32 %p93, %f437, 0f3F800000;
and.pred %p4, %p92, %p93;
mov.b32 %r278, %f1720;
xor.b32 %r279, %r278, -2147483648;
mov.b32 %f1103, %r279;
selp.f32 %f1722, %f1103, %f1720, %p4;
setp.eq.f32 %p94, %f434, 0f00000000;
@%p94 bra BB0_95;
bra.uni BB0_93;
BB0_95:
add.f32 %f1106, %f434, %f434;
selp.f32 %f1722, %f1106, 0f00000000, %p93;
bra.uni BB0_96;
BB0_93:
setp.geu.f32 %p95, %f434, 0f00000000;
@%p95 bra BB0_96;
cvt.rzi.f32.f32 %f1105, %f1077;
setp.neu.f32 %p96, %f1105, 0f3EE66666;
selp.f32 %f1722, 0f7FFFFFFF, %f1722, %p96;
BB0_96:
add.f32 %f1107, %f438, 0f3EE66666;
mov.b32 %r280, %f1107;
setp.lt.s32 %p98, %r280, 2139095040;
@%p98 bra BB0_101;
setp.gtu.f32 %p99, %f438, 0f7F800000;
@%p99 bra BB0_100;
bra.uni BB0_98;
BB0_100:
add.f32 %f1722, %f434, 0f3EE66666;
bra.uni BB0_101;
BB0_98:
setp.neu.f32 %p100, %f438, 0f7F800000;
@%p100 bra BB0_101;
selp.f32 %f1722, 0fFF800000, 0f7F800000, %p4;
BB0_101:
setp.eq.f32 %p101, %f434, 0f3F800000;
selp.f32 %f450, 0f3F800000, %f1722, %p101;
abs.f32 %f451, %f435;
setp.lt.f32 %p102, %f451, 0f00800000;
mul.f32 %f1110, %f451, 0f4B800000;
selp.f32 %f1111, 0fC3170000, 0fC2FE0000, %p102;
selp.f32 %f1112, %f1110, %f451, %p102;
mov.b32 %r281, %f1112;
and.b32 %r282, %r281, 8388607;
or.b32 %r283, %r282, 1065353216;
mov.b32 %f1113, %r283;
shr.u32 %r284, %r281, 23;
cvt.rn.f32.u32 %f1114, %r284;
add.f32 %f1115, %f1111, %f1114;
setp.gt.f32 %p103, %f1113, 0f3FB504F3;
mul.f32 %f1116, %f1113, 0f3F000000;
add.f32 %f1117, %f1115, 0f3F800000;
selp.f32 %f1118, %f1116, %f1113, %p103;
selp.f32 %f1119, %f1117, %f1115, %p103;
add.f32 %f1120, %f1118, 0fBF800000;
add.f32 %f1109, %f1118, 0f3F800000;
// inline asm
rcp.approx.ftz.f32 %f1108,%f1109;
// inline asm
add.f32 %f1121, %f1120, %f1120;
mul.f32 %f1122, %f1108, %f1121;
mul.f32 %f1123, %f1122, %f1122;
fma.rn.f32 %f1126, %f1047, %f1123, %f1046;
fma.rn.f32 %f1128, %f1126, %f1123, %f1049;
mul.rn.f32 %f1129, %f1128, %f1123;
mul.rn.f32 %f1130, %f1129, %f1122;
sub.f32 %f1131, %f1120, %f1122;
neg.f32 %f1132, %f1122;
add.f32 %f1133, %f1131, %f1131;
fma.rn.f32 %f1134, %f1132, %f1120, %f1133;
mul.rn.f32 %f1135, %f1108, %f1134;
add.f32 %f1136, %f1130, %f1122;
sub.f32 %f1137, %f1122, %f1136;
add.f32 %f1138, %f1130, %f1137;
add.f32 %f1139, %f1135, %f1138;
add.f32 %f1140, %f1136, %f1139;
sub.f32 %f1141, %f1136, %f1140;
add.f32 %f1142, %f1139, %f1141;
mul.rn.f32 %f1144, %f1119, %f1065;
mul.rn.f32 %f1146, %f1119, %f1067;
add.f32 %f1147, %f1144, %f1140;
sub.f32 %f1148, %f1144, %f1147;
add.f32 %f1149, %f1140, %f1148;
add.f32 %f1150, %f1142, %f1149;
add.f32 %f1151, %f1146, %f1150;
add.f32 %f1152, %f1147, %f1151;
sub.f32 %f1153, %f1147, %f1152;
add.f32 %f1154, %f1151, %f1153;
mul.rn.f32 %f1156, %f1077, %f1152;
neg.f32 %f1157, %f1156;
fma.rn.f32 %f1158, %f1077, %f1152, %f1157;
fma.rn.f32 %f1159, %f1077, %f1154, %f1158;
fma.rn.f32 %f1161, %f1082, %f1152, %f1159;
add.rn.f32 %f1162, %f1156, %f1161;
neg.f32 %f1163, %f1162;
add.rn.f32 %f1164, %f1156, %f1163;
add.rn.f32 %f1165, %f1164, %f1161;
mov.b32 %r285, %f1162;
setp.eq.s32 %p104, %r285, 1118925336;
add.s32 %r286, %r285, -1;
mov.b32 %f1166, %r286;
add.f32 %f1167, %f1165, 0f37000000;
selp.f32 %f1168, %f1166, %f1162, %p104;
selp.f32 %f452, %f1167, %f1165, %p104;
mul.f32 %f1169, %f1168, 0f3FB8AA3B;
cvt.rzi.f32.f32 %f1170, %f1169;
fma.rn.f32 %f1172, %f1170, %f1093, %f1168;
fma.rn.f32 %f1174, %f1170, %f1095, %f1172;
mul.f32 %f1175, %f1174, 0f3FB8AA3B;
ex2.approx.ftz.f32 %f1176, %f1175;
add.f32 %f1177, %f1170, 0f00000000;
ex2.approx.f32 %f1178, %f1177;
mul.f32 %f1179, %f1176, %f1178;
setp.lt.f32 %p105, %f1168, 0fC2D20000;
selp.f32 %f1180, 0f00000000, %f1179, %p105;
setp.gt.f32 %p106, %f1168, 0f42D20000;
selp.f32 %f1723, 0f7F800000, %f1180, %p106;
setp.eq.f32 %p107, %f1723, 0f7F800000;
@%p107 bra BB0_103;
fma.rn.f32 %f1723, %f1723, %f452, %f1723;
BB0_103:
setp.lt.f32 %p108, %f435, 0f00000000;
and.pred %p5, %p108, %p93;
mov.b32 %r287, %f1723;
xor.b32 %r288, %r287, -2147483648;
mov.b32 %f1181, %r288;
selp.f32 %f1725, %f1181, %f1723, %p5;
setp.eq.f32 %p110, %f435, 0f00000000;
@%p110 bra BB0_106;
bra.uni BB0_104;
BB0_106:
add.f32 %f1184, %f435, %f435;
selp.f32 %f1725, %f1184, 0f00000000, %p93;
bra.uni BB0_107;
BB0_104:
setp.geu.f32 %p111, %f435, 0f00000000;
@%p111 bra BB0_107;
cvt.rzi.f32.f32 %f1183, %f1077;
setp.neu.f32 %p112, %f1183, 0f3EE66666;
selp.f32 %f1725, 0f7FFFFFFF, %f1725, %p112;
BB0_107:
add.f32 %f1185, %f451, 0f3EE66666;
mov.b32 %r289, %f1185;
setp.lt.s32 %p114, %r289, 2139095040;
@%p114 bra BB0_112;
setp.gtu.f32 %p115, %f451, 0f7F800000;
@%p115 bra BB0_111;
bra.uni BB0_109;
BB0_111:
add.f32 %f1725, %f435, 0f3EE66666;
bra.uni BB0_112;
BB0_109:
setp.neu.f32 %p116, %f451, 0f7F800000;
@%p116 bra BB0_112;
selp.f32 %f1725, 0fFF800000, 0f7F800000, %p5;
BB0_112:
setp.eq.f32 %p117, %f435, 0f3F800000;
selp.f32 %f463, 0f3F800000, %f1725, %p117;
abs.f32 %f464, %f436;
setp.lt.f32 %p118, %f464, 0f00800000;
mul.f32 %f1188, %f464, 0f4B800000;
selp.f32 %f1189, 0fC3170000, 0fC2FE0000, %p118;
selp.f32 %f1190, %f1188, %f464, %p118;
mov.b32 %r290, %f1190;
and.b32 %r291, %r290, 8388607;
or.b32 %r292, %r291, 1065353216;
mov.b32 %f1191, %r292;
shr.u32 %r293, %r290, 23;
cvt.rn.f32.u32 %f1192, %r293;
add.f32 %f1193, %f1189, %f1192;
setp.gt.f32 %p119, %f1191, 0f3FB504F3;
mul.f32 %f1194, %f1191, 0f3F000000;
add.f32 %f1195, %f1193, 0f3F800000;
selp.f32 %f1196, %f1194, %f1191, %p119;
selp.f32 %f1197, %f1195, %f1193, %p119;
add.f32 %f1198, %f1196, 0fBF800000;
add.f32 %f1187, %f1196, 0f3F800000;
// inline asm
rcp.approx.ftz.f32 %f1186,%f1187;
// inline asm
add.f32 %f1199, %f1198, %f1198;
mul.f32 %f1200, %f1186, %f1199;
mul.f32 %f1201, %f1200, %f1200;
fma.rn.f32 %f1204, %f1047, %f1201, %f1046;
fma.rn.f32 %f1206, %f1204, %f1201, %f1049;
mul.rn.f32 %f1207, %f1206, %f1201;
mul.rn.f32 %f1208, %f1207, %f1200;
sub.f32 %f1209, %f1198, %f1200;
neg.f32 %f1210, %f1200;
add.f32 %f1211, %f1209, %f1209;
fma.rn.f32 %f1212, %f1210, %f1198, %f1211;
mul.rn.f32 %f1213, %f1186, %f1212;
add.f32 %f1214, %f1208, %f1200;
sub.f32 %f1215, %f1200, %f1214;
add.f32 %f1216, %f1208, %f1215;
add.f32 %f1217, %f1213, %f1216;
add.f32 %f1218, %f1214, %f1217;
sub.f32 %f1219, %f1214, %f1218;
add.f32 %f1220, %f1217, %f1219;
mul.rn.f32 %f1222, %f1197, %f1065;
mul.rn.f32 %f1224, %f1197, %f1067;
add.f32 %f1225, %f1222, %f1218;
sub.f32 %f1226, %f1222, %f1225;
add.f32 %f1227, %f1218, %f1226;
add.f32 %f1228, %f1220, %f1227;
add.f32 %f1229, %f1224, %f1228;
add.f32 %f1230, %f1225, %f1229;
sub.f32 %f1231, %f1225, %f1230;
add.f32 %f1232, %f1229, %f1231;
mul.rn.f32 %f1234, %f1077, %f1230;
neg.f32 %f1235, %f1234;
fma.rn.f32 %f1236, %f1077, %f1230, %f1235;
fma.rn.f32 %f1237, %f1077, %f1232, %f1236;
fma.rn.f32 %f1239, %f1082, %f1230, %f1237;
add.rn.f32 %f1240, %f1234, %f1239;
neg.f32 %f1241, %f1240;
add.rn.f32 %f1242, %f1234, %f1241;
add.rn.f32 %f1243, %f1242, %f1239;
mov.b32 %r294, %f1240;
setp.eq.s32 %p120, %r294, 1118925336;
add.s32 %r295, %r294, -1;
mov.b32 %f1244, %r295;
add.f32 %f1245, %f1243, 0f37000000;
selp.f32 %f1246, %f1244, %f1240, %p120;
selp.f32 %f465, %f1245, %f1243, %p120;
mul.f32 %f1247, %f1246, 0f3FB8AA3B;
cvt.rzi.f32.f32 %f1248, %f1247;
fma.rn.f32 %f1250, %f1248, %f1093, %f1246;
fma.rn.f32 %f1252, %f1248, %f1095, %f1250;
mul.f32 %f1253, %f1252, 0f3FB8AA3B;
ex2.approx.ftz.f32 %f1254, %f1253;
add.f32 %f1255, %f1248, 0f00000000;
ex2.approx.f32 %f1256, %f1255;
mul.f32 %f1257, %f1254, %f1256;
setp.lt.f32 %p121, %f1246, 0fC2D20000;
selp.f32 %f1258, 0f00000000, %f1257, %p121;
setp.gt.f32 %p122, %f1246, 0f42D20000;
selp.f32 %f1726, 0f7F800000, %f1258, %p122;
setp.eq.f32 %p123, %f1726, 0f7F800000;
@%p123 bra BB0_114;
fma.rn.f32 %f1726, %f1726, %f465, %f1726;
BB0_114:
setp.lt.f32 %p124, %f436, 0f00000000;
and.pred %p6, %p124, %p93;
mov.b32 %r296, %f1726;
xor.b32 %r297, %r296, -2147483648;
mov.b32 %f1259, %r297;
selp.f32 %f1728, %f1259, %f1726, %p6;
setp.eq.f32 %p126, %f436, 0f00000000;
@%p126 bra BB0_117;
bra.uni BB0_115;
BB0_117:
add.f32 %f1262, %f436, %f436;
selp.f32 %f1728, %f1262, 0f00000000, %p93;
bra.uni BB0_118;
BB0_115:
setp.geu.f32 %p127, %f436, 0f00000000;
@%p127 bra BB0_118;
cvt.rzi.f32.f32 %f1261, %f1077;
setp.neu.f32 %p128, %f1261, 0f3EE66666;
selp.f32 %f1728, 0f7FFFFFFF, %f1728, %p128;
BB0_118:
add.f32 %f1263, %f464, 0f3EE66666;
mov.b32 %r298, %f1263;
setp.lt.s32 %p130, %r298, 2139095040;
@%p130 bra BB0_123;
setp.gtu.f32 %p131, %f464, 0f7F800000;
@%p131 bra BB0_122;
bra.uni BB0_120;
BB0_122:
add.f32 %f1728, %f436, 0f3EE66666;
bra.uni BB0_123;
BB0_120:
setp.neu.f32 %p132, %f464, 0f7F800000;
@%p132 bra BB0_123;
selp.f32 %f1728, 0fFF800000, 0f7F800000, %p6;
BB0_123:
mov.u32 %r455, 4;
setp.eq.f32 %p133, %f436, 0f3F800000;
selp.f32 %f1264, 0f3F800000, %f1728, %p133;
cvt.u64.u32 %rd100, %r7;
cvt.u64.u32 %rd99, %r6;
mov.u64 %rd103, image;
cvta.global.u64 %rd98, %rd103;
// inline asm
call (%rd97), _rt_buffer_get_64, (%rd98, %r101, %r455, %rd99, %rd100, %rd27, %rd27);
// inline asm
cvt.sat.f32.f32 %f1265, %f1264;
mul.f32 %f1266, %f1265, 0f437FFD71;
cvt.rzi.u32.f32 %r301, %f1266;
cvt.sat.f32.f32 %f1267, %f463;
mul.f32 %f1268, %f1267, 0f437FFD71;
cvt.rzi.u32.f32 %r302, %f1268;
cvt.sat.f32.f32 %f1269, %f450;
mul.f32 %f1270, %f1269, 0f437FFD71;
cvt.rzi.u32.f32 %r303, %f1270;
cvt.u16.u32 %rs22, %r301;
cvt.u16.u32 %rs23, %r303;
cvt.u16.u32 %rs24, %r302;
mov.u16 %rs25, 255;
st.v4.u8 [%rd97], {%rs22, %rs24, %rs23, %rs25};
ld.global.u32 %r485, [imageEnabled];
BB0_124:
cvt.u64.u32 %rd18, %r6;
cvt.u64.u32 %rd19, %r7;
and.b32 %r304, %r485, 4;
setp.eq.s32 %p134, %r304, 0;
@%p134 bra BB0_128;
ld.global.u32 %r305, [additive];
setp.eq.s32 %p135, %r305, 0;
// inline asm
{ cvt.rn.f16.f32 %rs26, %f772;}
// inline asm
@%p135 bra BB0_127;
mov.u64 %rd116, image_HDR;
cvta.global.u64 %rd105, %rd116;
mov.u32 %r309, 8;
// inline asm
call (%rd104), _rt_buffer_get_64, (%rd105, %r101, %r309, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs33, %rs34, %rs35, %rs36}, [%rd104];
// inline asm
{ cvt.f32.f16 %f1272, %rs33;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1273, %rs34;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1274, %rs35;}
// inline asm
// inline asm
call (%rd110), _rt_buffer_get_64, (%rd105, %r101, %r309, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1275, %f434, %f1272;
add.f32 %f1276, %f435, %f1273;
add.f32 %f1277, %f436, %f1274;
// inline asm
{ cvt.rn.f16.f32 %rs32, %f1277;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs31, %f1276;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs30, %f1275;}
// inline asm
st.v4.u16 [%rd110], {%rs30, %rs31, %rs32, %rs26};
bra.uni BB0_128;
BB0_127:
mov.u64 %rd123, image_HDR;
cvta.global.u64 %rd118, %rd123;
mov.u32 %r311, 8;
// inline asm
call (%rd117), _rt_buffer_get_64, (%rd118, %r101, %r311, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs39, %f436;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs38, %f435;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs37, %f434;}
// inline asm
st.v4.u16 [%rd117], {%rs37, %rs38, %rs39, %rs26};
BB0_128:
selp.f32 %f1282, 0f40800000, 0f3F800000, %p158;
mul.f32 %f1283, %f1282, %f1710;
mul.f32 %f1284, %f1282, %f1711;
mul.f32 %f1285, %f1282, %f1712;
mul.f32 %f1286, %f1282, %f1707;
mul.f32 %f1287, %f1282, %f1708;
mul.f32 %f1288, %f1282, %f1709;
mul.f32 %f1289, %f1282, %f1704;
mul.f32 %f1290, %f1282, %f1705;
mul.f32 %f1291, %f1282, %f1706;
mul.f32 %f1292, %f1282, %f1701;
mul.f32 %f1293, %f1282, %f1702;
mul.f32 %f1294, %f1282, %f1703;
mul.f32 %f1295, %f1282, %f1698;
mul.f32 %f1296, %f1282, %f1699;
mul.f32 %f1297, %f1282, %f1700;
mul.f32 %f1298, %f1282, %f1695;
mul.f32 %f1299, %f1282, %f1696;
mul.f32 %f1300, %f1282, %f1697;
mul.f32 %f1301, %f1282, %f1692;
mul.f32 %f1302, %f1282, %f1693;
mul.f32 %f1303, %f1282, %f1694;
mul.f32 %f1304, %f1282, %f1689;
mul.f32 %f1305, %f1282, %f1690;
mul.f32 %f1306, %f1282, %f1691;
mul.f32 %f1307, %f1282, %f1686;
mul.f32 %f1308, %f1282, %f1687;
mul.f32 %f1309, %f1282, %f1688;
ld.global.f32 %f1310, [lightColor];
mul.f32 %f1311, %f1283, %f1310;
ld.global.f32 %f1312, [lightColor+4];
mul.f32 %f1313, %f1284, %f1312;
ld.global.f32 %f1314, [lightColor+8];
mul.f32 %f1315, %f1285, %f1314;
mul.f32 %f476, %f1286, %f1310;
mul.f32 %f477, %f1287, %f1312;
mul.f32 %f478, %f1288, %f1314;
mul.f32 %f479, %f1289, %f1310;
mul.f32 %f480, %f1290, %f1312;
mul.f32 %f481, %f1291, %f1314;
mul.f32 %f482, %f1292, %f1310;
mul.f32 %f483, %f1293, %f1312;
mul.f32 %f484, %f1294, %f1314;
mul.f32 %f485, %f1295, %f1310;
mul.f32 %f486, %f1296, %f1312;
mul.f32 %f487, %f1297, %f1314;
mul.f32 %f488, %f1298, %f1310;
mul.f32 %f489, %f1299, %f1312;
mul.f32 %f490, %f1300, %f1314;
mul.f32 %f491, %f1301, %f1310;
mul.f32 %f492, %f1302, %f1312;
mul.f32 %f493, %f1303, %f1314;
mul.f32 %f494, %f1304, %f1310;
mul.f32 %f495, %f1305, %f1312;
mul.f32 %f496, %f1306, %f1314;
mul.f32 %f497, %f1307, %f1310;
mul.f32 %f498, %f1308, %f1312;
mul.f32 %f499, %f1309, %f1314;
mul.f32 %f500, %f1311, 0f3F558750;
mul.f32 %f501, %f1313, 0f3F558750;
mul.f32 %f502, %f1315, 0f3F558750;
ld.global.u32 %r312, [additive];
setp.eq.s32 %p136, %r312, 0;
// inline asm
{ cvt.rn.f16.f32 %rs40, %f772;}
// inline asm
@%p136 bra BB0_130;
mov.u64 %rd136, image_RNM0;
cvta.global.u64 %rd125, %rd136;
mov.u32 %r316, 8;
// inline asm
call (%rd124), _rt_buffer_get_64, (%rd125, %r101, %r316, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs47, %rs48, %rs49, %rs50}, [%rd124];
// inline asm
{ cvt.f32.f16 %f1316, %rs47;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1317, %rs48;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1318, %rs49;}
// inline asm
// inline asm
call (%rd130), _rt_buffer_get_64, (%rd125, %r101, %r316, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1319, %f500, %f1316;
add.f32 %f1320, %f501, %f1317;
add.f32 %f1321, %f502, %f1318;
// inline asm
{ cvt.rn.f16.f32 %rs46, %f1321;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs45, %f1320;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs44, %f1319;}
// inline asm
st.v4.u16 [%rd130], {%rs44, %rs45, %rs46, %rs40};
bra.uni BB0_131;
BB0_130:
mov.u64 %rd143, image_RNM0;
cvta.global.u64 %rd138, %rd143;
mov.u32 %r318, 8;
// inline asm
call (%rd137), _rt_buffer_get_64, (%rd138, %r101, %r318, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs53, %f502;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs52, %f501;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs51, %f500;}
// inline asm
st.v4.u16 [%rd137], {%rs51, %rs52, %rs53, %rs40};
BB0_131:
mul.f32 %f503, %f476, 0f3FB8EBD1;
mul.f32 %f504, %f477, 0f3FB8EBD1;
mul.f32 %f505, %f478, 0f3FB8EBD1;
ld.global.u32 %r319, [additive];
setp.eq.s32 %p137, %r319, 0;
// inline asm
{ cvt.rn.f16.f32 %rs54, %f772;}
// inline asm
@%p137 bra BB0_133;
mov.u64 %rd156, image_RNM1;
cvta.global.u64 %rd145, %rd156;
mov.u32 %r323, 8;
// inline asm
call (%rd144), _rt_buffer_get_64, (%rd145, %r101, %r323, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs61, %rs62, %rs63, %rs64}, [%rd144];
// inline asm
{ cvt.f32.f16 %f1326, %rs61;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1327, %rs62;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1328, %rs63;}
// inline asm
// inline asm
call (%rd150), _rt_buffer_get_64, (%rd145, %r101, %r323, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1329, %f503, %f1326;
add.f32 %f1330, %f504, %f1327;
add.f32 %f1331, %f505, %f1328;
// inline asm
{ cvt.rn.f16.f32 %rs60, %f1331;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs59, %f1330;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs58, %f1329;}
// inline asm
st.v4.u16 [%rd150], {%rs58, %rs59, %rs60, %rs54};
bra.uni BB0_134;
BB0_133:
mov.u64 %rd163, image_RNM1;
cvta.global.u64 %rd158, %rd163;
mov.u32 %r325, 8;
// inline asm
call (%rd157), _rt_buffer_get_64, (%rd158, %r101, %r325, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs67, %f505;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs66, %f504;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs65, %f503;}
// inline asm
st.v4.u16 [%rd157], {%rs65, %rs66, %rs67, %rs54};
BB0_134:
mul.f32 %f506, %f479, 0f3FB8EBD1;
mul.f32 %f507, %f480, 0f3FB8EBD1;
mul.f32 %f508, %f481, 0f3FB8EBD1;
ld.global.u32 %r326, [additive];
setp.eq.s32 %p138, %r326, 0;
// inline asm
{ cvt.rn.f16.f32 %rs68, %f772;}
// inline asm
@%p138 bra BB0_136;
mov.u64 %rd176, image_RNM2;
cvta.global.u64 %rd165, %rd176;
mov.u32 %r330, 8;
// inline asm
call (%rd164), _rt_buffer_get_64, (%rd165, %r101, %r330, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs75, %rs76, %rs77, %rs78}, [%rd164];
// inline asm
{ cvt.f32.f16 %f1336, %rs75;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1337, %rs76;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1338, %rs77;}
// inline asm
// inline asm
call (%rd170), _rt_buffer_get_64, (%rd165, %r101, %r330, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1339, %f506, %f1336;
add.f32 %f1340, %f507, %f1337;
add.f32 %f1341, %f508, %f1338;
// inline asm
{ cvt.rn.f16.f32 %rs74, %f1341;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs73, %f1340;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs72, %f1339;}
// inline asm
st.v4.u16 [%rd170], {%rs72, %rs73, %rs74, %rs68};
bra.uni BB0_137;
BB0_136:
mov.u64 %rd183, image_RNM2;
cvta.global.u64 %rd178, %rd183;
mov.u32 %r332, 8;
// inline asm
call (%rd177), _rt_buffer_get_64, (%rd178, %r101, %r332, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs81, %f508;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs80, %f507;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs79, %f506;}
// inline asm
st.v4.u16 [%rd177], {%rs79, %rs80, %rs81, %rs68};
BB0_137:
mul.f32 %f509, %f482, 0f3FB8EBD1;
mul.f32 %f510, %f483, 0f3FB8EBD1;
mul.f32 %f511, %f484, 0f3FB8EBD1;
ld.global.u32 %r333, [additive];
setp.eq.s32 %p139, %r333, 0;
// inline asm
{ cvt.rn.f16.f32 %rs82, %f772;}
// inline asm
@%p139 bra BB0_139;
mov.u64 %rd196, image_RNM3;
cvta.global.u64 %rd185, %rd196;
mov.u32 %r337, 8;
// inline asm
call (%rd184), _rt_buffer_get_64, (%rd185, %r101, %r337, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs89, %rs90, %rs91, %rs92}, [%rd184];
// inline asm
{ cvt.f32.f16 %f1346, %rs89;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1347, %rs90;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1348, %rs91;}
// inline asm
// inline asm
call (%rd190), _rt_buffer_get_64, (%rd185, %r101, %r337, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1349, %f509, %f1346;
add.f32 %f1350, %f510, %f1347;
add.f32 %f1351, %f511, %f1348;
// inline asm
{ cvt.rn.f16.f32 %rs88, %f1351;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs87, %f1350;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs86, %f1349;}
// inline asm
st.v4.u16 [%rd190], {%rs86, %rs87, %rs88, %rs82};
bra.uni BB0_140;
BB0_139:
mov.u64 %rd203, image_RNM3;
cvta.global.u64 %rd198, %rd203;
mov.u32 %r339, 8;
// inline asm
call (%rd197), _rt_buffer_get_64, (%rd198, %r101, %r339, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs95, %f511;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs94, %f510;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs93, %f509;}
// inline asm
st.v4.u16 [%rd197], {%rs93, %rs94, %rs95, %rs82};
BB0_140:
mul.f32 %f512, %f485, 0f404EBF87;
mul.f32 %f513, %f486, 0f404EBF87;
mul.f32 %f514, %f487, 0f404EBF87;
ld.global.u32 %r340, [additive];
setp.eq.s32 %p140, %r340, 0;
// inline asm
{ cvt.rn.f16.f32 %rs96, %f772;}
// inline asm
@%p140 bra BB0_142;
mov.u64 %rd216, image_RNM4;
cvta.global.u64 %rd205, %rd216;
mov.u32 %r344, 8;
// inline asm
call (%rd204), _rt_buffer_get_64, (%rd205, %r101, %r344, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs103, %rs104, %rs105, %rs106}, [%rd204];
// inline asm
{ cvt.f32.f16 %f1356, %rs103;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1357, %rs104;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1358, %rs105;}
// inline asm
// inline asm
call (%rd210), _rt_buffer_get_64, (%rd205, %r101, %r344, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1359, %f512, %f1356;
add.f32 %f1360, %f513, %f1357;
add.f32 %f1361, %f514, %f1358;
// inline asm
{ cvt.rn.f16.f32 %rs102, %f1361;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs101, %f1360;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs100, %f1359;}
// inline asm
st.v4.u16 [%rd210], {%rs100, %rs101, %rs102, %rs96};
bra.uni BB0_143;
BB0_142:
mov.u64 %rd223, image_RNM4;
cvta.global.u64 %rd218, %rd223;
mov.u32 %r346, 8;
// inline asm
call (%rd217), _rt_buffer_get_64, (%rd218, %r101, %r346, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs109, %f514;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs108, %f513;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs107, %f512;}
// inline asm
st.v4.u16 [%rd217], {%rs107, %rs108, %rs109, %rs96};
BB0_143:
mul.f32 %f515, %f488, 0f404EBF87;
mul.f32 %f516, %f489, 0f404EBF87;
mul.f32 %f517, %f490, 0f404EBF87;
ld.global.u32 %r347, [additive];
setp.eq.s32 %p141, %r347, 0;
// inline asm
{ cvt.rn.f16.f32 %rs110, %f772;}
// inline asm
@%p141 bra BB0_145;
mov.u64 %rd236, image_RNM5;
cvta.global.u64 %rd225, %rd236;
mov.u32 %r351, 8;
// inline asm
call (%rd224), _rt_buffer_get_64, (%rd225, %r101, %r351, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs117, %rs118, %rs119, %rs120}, [%rd224];
// inline asm
{ cvt.f32.f16 %f1366, %rs117;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1367, %rs118;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1368, %rs119;}
// inline asm
// inline asm
call (%rd230), _rt_buffer_get_64, (%rd225, %r101, %r351, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1369, %f515, %f1366;
add.f32 %f1370, %f516, %f1367;
add.f32 %f1371, %f517, %f1368;
// inline asm
{ cvt.rn.f16.f32 %rs116, %f1371;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs115, %f1370;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs114, %f1369;}
// inline asm
st.v4.u16 [%rd230], {%rs114, %rs115, %rs116, %rs110};
bra.uni BB0_146;
BB0_145:
mov.u64 %rd243, image_RNM5;
cvta.global.u64 %rd238, %rd243;
mov.u32 %r353, 8;
// inline asm
call (%rd237), _rt_buffer_get_64, (%rd238, %r101, %r353, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs123, %f517;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs122, %f516;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs121, %f515;}
// inline asm
st.v4.u16 [%rd237], {%rs121, %rs122, %rs123, %rs110};
BB0_146:
mul.f32 %f518, %f491, 0f40330C94;
mul.f32 %f519, %f492, 0f40330C94;
mul.f32 %f520, %f493, 0f40330C94;
ld.global.u32 %r354, [additive];
setp.eq.s32 %p142, %r354, 0;
// inline asm
{ cvt.rn.f16.f32 %rs124, %f772;}
// inline asm
@%p142 bra BB0_148;
mov.u64 %rd256, image_RNM6;
cvta.global.u64 %rd245, %rd256;
mov.u32 %r358, 8;
// inline asm
call (%rd244), _rt_buffer_get_64, (%rd245, %r101, %r358, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs131, %rs132, %rs133, %rs134}, [%rd244];
// inline asm
{ cvt.f32.f16 %f1376, %rs131;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1377, %rs132;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1378, %rs133;}
// inline asm
// inline asm
call (%rd250), _rt_buffer_get_64, (%rd245, %r101, %r358, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1379, %f518, %f1376;
add.f32 %f1380, %f519, %f1377;
add.f32 %f1381, %f520, %f1378;
// inline asm
{ cvt.rn.f16.f32 %rs130, %f1381;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs129, %f1380;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs128, %f1379;}
// inline asm
st.v4.u16 [%rd250], {%rs128, %rs129, %rs130, %rs124};
bra.uni BB0_149;
BB0_148:
mov.u64 %rd263, image_RNM6;
cvta.global.u64 %rd258, %rd263;
mov.u32 %r360, 8;
// inline asm
call (%rd257), _rt_buffer_get_64, (%rd258, %r101, %r360, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs137, %f520;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs136, %f519;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs135, %f518;}
// inline asm
st.v4.u16 [%rd257], {%rs135, %rs136, %rs137, %rs124};
BB0_149:
mul.f32 %f521, %f494, 0f404EBF87;
mul.f32 %f522, %f495, 0f404EBF87;
mul.f32 %f523, %f496, 0f404EBF87;
ld.global.u32 %r361, [additive];
setp.eq.s32 %p143, %r361, 0;
// inline asm
{ cvt.rn.f16.f32 %rs138, %f772;}
// inline asm
@%p143 bra BB0_151;
mov.u64 %rd276, image_RNM7;
cvta.global.u64 %rd265, %rd276;
mov.u32 %r365, 8;
// inline asm
call (%rd264), _rt_buffer_get_64, (%rd265, %r101, %r365, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs145, %rs146, %rs147, %rs148}, [%rd264];
// inline asm
{ cvt.f32.f16 %f1386, %rs145;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1387, %rs146;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1388, %rs147;}
// inline asm
// inline asm
call (%rd270), _rt_buffer_get_64, (%rd265, %r101, %r365, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1389, %f521, %f1386;
add.f32 %f1390, %f522, %f1387;
add.f32 %f1391, %f523, %f1388;
// inline asm
{ cvt.rn.f16.f32 %rs144, %f1391;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs143, %f1390;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs142, %f1389;}
// inline asm
st.v4.u16 [%rd270], {%rs142, %rs143, %rs144, %rs138};
bra.uni BB0_152;
BB0_151:
mov.u64 %rd283, image_RNM7;
cvta.global.u64 %rd278, %rd283;
mov.u32 %r367, 8;
// inline asm
call (%rd277), _rt_buffer_get_64, (%rd278, %r101, %r367, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs151, %f523;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs150, %f522;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs149, %f521;}
// inline asm
st.v4.u16 [%rd277], {%rs149, %rs150, %rs151, %rs138};
BB0_152:
mul.f32 %f524, %f497, 0f3FCEBF87;
mul.f32 %f525, %f498, 0f3FCEBF87;
mul.f32 %f526, %f499, 0f3FCEBF87;
ld.global.u32 %r368, [additive];
setp.eq.s32 %p144, %r368, 0;
// inline asm
{ cvt.rn.f16.f32 %rs152, %f772;}
// inline asm
@%p144 bra BB0_154;
mov.u64 %rd296, image_RNM8;
cvta.global.u64 %rd285, %rd296;
mov.u32 %r372, 8;
// inline asm
call (%rd284), _rt_buffer_get_64, (%rd285, %r101, %r372, %rd18, %rd19, %rd27, %rd27);
// inline asm
ld.v4.u16 {%rs159, %rs160, %rs161, %rs162}, [%rd284];
// inline asm
{ cvt.f32.f16 %f1396, %rs159;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1397, %rs160;}
// inline asm
// inline asm
{ cvt.f32.f16 %f1398, %rs161;}
// inline asm
// inline asm
call (%rd290), _rt_buffer_get_64, (%rd285, %r101, %r372, %rd18, %rd19, %rd27, %rd27);
// inline asm
add.f32 %f1399, %f524, %f1396;
add.f32 %f1400, %f525, %f1397;
add.f32 %f1401, %f526, %f1398;
// inline asm
{ cvt.rn.f16.f32 %rs158, %f1401;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs157, %f1400;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs156, %f1399;}
// inline asm
st.v4.u16 [%rd290], {%rs156, %rs157, %rs158, %rs152};
bra.uni BB0_190;
BB0_154:
mov.u64 %rd303, image_RNM8;
cvta.global.u64 %rd298, %rd303;
mov.u32 %r374, 8;
// inline asm
call (%rd297), _rt_buffer_get_64, (%rd298, %r101, %r374, %rd18, %rd19, %rd27, %rd27);
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs165, %f526;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs164, %f525;}
// inline asm
// inline asm
{ cvt.rn.f16.f32 %rs163, %f524;}
// inline asm
st.v4.u16 [%rd297], {%rs163, %rs164, %rs165, %rs152};
BB0_190:
ret;
}