_retval0[16]) activation_4( .param .align 4 .b8 activation_4_param_0[16] ) { .pragma "abi_param_reg all"; .reg .b16 %rs<17>; .reg .f32 %f<70>; .reg .b32 %r<9>; ld.param.u32 %r1, [activation_4_param_0+12]; ld.param.u32 %r2, [activation_4_param_0+8]; ld.param.u32 %r3, [activation_4_param_0+4]; ld.param.u32 %r4, [activation_4_param_0]; ld.const.f32 %f17, [params]; mov.b32 {%rs1, %rs3}, %r4; // begin inline asm { cvt.f32.f16 %f1, %rs1;} // end inline asm mul.ftz.f32 %f18, %f1, %f17; mul.ftz.f32 %f19, %f18, 0f3FB8AA3B; ex2.approx.ftz.f32 %f20, %f19; add.ftz.f32 %f21, %f20, 0f3F800000; lg2.approx.ftz.f32 %f22, %f21; mul.ftz.f32 %f23, %f22, 0f3F317218; div.approx.ftz.f32 %f2, %f23, %f17; // begin inline asm { cvt.f32.f16 %f3, %rs3;} // end inline asm mul.ftz.f32 %f24, %f3, %f17; mul.ftz.f32 %f25, %f24, 0f3FB8AA3B; ex2.approx.ftz.f32 %f26, %f25; add.ftz.f32 %f27, %f26, 0f3F800000; lg2.approx.ftz.f32 %f28, %f27; mul.ftz.f32 %f29, %f28, 0f3F317218; div.approx.ftz.f32 %f4, %f29, %f17; // begin inline asm { cvt.rn.f16.f32 %rs4, %f4;} // end inline asm // begin inline asm { cvt.rn.f16.f32 %rs2, %f2;} // end inline asm mov.b32 %r5, {%rs2, %rs4}; mov.b32 {%rs5, %rs7}, %r3; // begin inline asm { cvt.f32.f16 %f5, %rs5;} // end inline asm mul.ftz.f32 %f30, %f5, %f17; mul.ftz.f32 %f31, %f30, 0f3FB8AA3B; ex2.approx.ftz.f32 %f32, %f31; add.ftz.f32 %f33, %f32, 0f3F800000; lg2.approx.ftz.f32 %f34, %f33; mul.ftz.f32 %f35, %f34, 0f3F317218; div.approx.ftz.f32 %f6, %f35, %f17; // begin inline asm { cvt.f32.f16 %f7, %rs7;} // end inline asm mul.ftz.f32 %f36, %f7, %f17; mul.ftz.f32 %f37, %f36, 0f3FB8AA3B; ex2.approx.ftz.f32 %f38, %f37; add.ftz.f32 %f39, %f38, 0f3F800000; lg2.approx.ftz.f32 %f40, %f39; mul.ftz.f32 %f41, %f40, 0f3F317218; div.approx.ftz.f32 %f8, %f41, %f17; // begin inline asm { cvt.rn.f16.f32 %rs8, %f8;} // end inline asm // begin inline asm { cvt.rn.f16.f32 %rs6, %f6;} // end inline asm mov.b32 %r6, {%rs6, %rs8}; mov.b32 {%rs9, %rs11}, %r2; // begin inline asm { cvt.f32.f16 %f9, %rs9;} // end inline asm mul.ftz.f32 %f42, %f9, %f17; mul.ftz.f32 %f43, %f42, 0f3FB8AA3B; ex2.approx.ftz.f32 %f44, %f43; add.ftz.f32 %f45, %f44, 0f3F800000; lg2.approx.ftz.f32 %f46, %f45; mul.ftz.f32 %f47, %f46, 0f3F317218; div.approx.ftz.f32 %f10, %f47, %f17; // begin inline asm { cvt.f32.f16 %f11, %rs11;} // end inline asm mul.ftz.f32 %f48, %f11, %f17; mul.ftz.f32 %f49, %f48, 0f3FB8AA3B; ex2.approx.ftz.f32 %f50, %f49; add.ftz.f32 %f51, %f50, 0f3F800000; lg2.approx.ftz.f32 %f52, %f51; mul.ftz.f32 %f53, %f52, 0f3F317218; div.approx.ftz.f32 %f12, %f53, %f17; // begin inline asm { cvt.rn.f16.f32 %rs12, %f12;} // end inline asm // begin inline asm { cvt.rn.f16.f32 %rs10, %f10;} // end inline asm mov.b32 %r7, {%rs10, %rs12}; mov.b32 {%rs13, %rs15}, %r1; // begin inline asm { cvt.f32.f16 %f13, %rs13;} // end inline asm mul.ftz.f32 %f54, %f13, %f17; mul.ftz.f32 %f55, %f54, 0f3FB8AA3B; ex2.approx.ftz.f32 %f56, %f55; add.ftz.f32 %f57, %f56, 0f3F800000; lg2.approx.ftz.f32 %f58, %f57; mul.ftz.f32 %f59, %f58, 0f3F317218; div.approx.ftz.f32 %f14, %f59, %f17; // begin inline asm { cvt.f32.f16 %f15, %rs15;} // end inline asm mul.ftz.f32 %f60, %f15, %f17; mul.ftz.f32 %f61, %f60, 0f3FB8AA3B; ex2.approx.ftz.f32 %f62, %f61; add.ftz.f32 %f63, %f62, 0f3F800000; lg2.approx.ftz.f32 %f64, %f63; mul.ftz.f32 %f65, %f64, 0f3F317218; div.approx.ftz.f32 %f16, %f65, %f17; // begin inline asm { cvt.rn.f16.f32 %rs16, %f16;} // end inline asm // begin inline asm { cvt.rn.f16.f32 %rs14, %f14;} // end inline asm mov.b32 %r8, {%rs14, %rs16}; mov.b32 %f66, %r8; mov.b32 %f67, %r7; mov.b32 %f68, %r6; mov.b32 %f69, %r5; st.param.f32 [func_retval0+0], %f69; st.param.f32 [func_retval0+4], %f68; st.param.f32 [func_retval0+8], %f67; st.param.f32 [func_retval0+12], %f66; ret; }