8]; .visible .func (.param .align 4 .b8 func_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<71>; .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]; ld.const.f32 %f18, [params+4]; mov.b32 {%rs1, %rs3}, %r4; // begin inline asm { cvt.f32.f16 %f1, %rs1;} // end inline asm mul.ftz.f32 %f19, %f1, %f18; mul.ftz.f32 %f20, %f19, 0f3FB8AA3B; ex2.approx.ftz.f32 %f21, %f20; add.ftz.f32 %f22, %f21, 0f3F800000; lg2.approx.ftz.f32 %f23, %f22; mul.ftz.f32 %f24, %f23, 0f3F317218; mul.ftz.f32 %f2, %f17, %f24; // begin inline asm { cvt.f32.f16 %f3, %rs3;} // end inline asm mul.ftz.f32 %f25, %f3, %f18; mul.ftz.f32 %f26, %f25, 0f3FB8AA3B; ex2.approx.ftz.f32 %f27, %f26; add.ftz.f32 %f28, %f27, 0f3F800000; lg2.approx.ftz.f32 %f29, %f28; mul.ftz.f32 %f30, %f29, 0f3F317218; mul.ftz.f32 %f4, %f17, %f30; // 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 %f31, %f5, %f18; mul.ftz.f32 %f32, %f31, 0f3FB8AA3B; ex2.approx.ftz.f32 %f33, %f32; add.ftz.f32 %f34, %f33, 0f3F800000; lg2.approx.ftz.f32 %f35, %f34; mul.ftz.f32 %f36, %f35, 0f3F317218; mul.ftz.f32 %f6, %f17, %f36; // begin inline asm { cvt.f32.f16 %f7, %rs7;} // end inline asm mul.ftz.f32 %f37, %f7, %f18; mul.ftz.f32 %f38, %f37, 0f3FB8AA3B; ex2.approx.ftz.f32 %f39, %f38; add.ftz.f32 %f40, %f39, 0f3F800000; lg2.approx.ftz.f32 %f41, %f40; mul.ftz.f32 %f42, %f41, 0f3F317218; mul.ftz.f32 %f8, %f17, %f42; // 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 %f43, %f9, %f18; mul.ftz.f32 %f44, %f43, 0f3FB8AA3B; ex2.approx.ftz.f32 %f45, %f44; add.ftz.f32 %f46, %f45, 0f3F800000; lg2.approx.ftz.f32 %f47, %f46; mul.ftz.f32 %f48, %f47, 0f3F317218; mul.ftz.f32 %f10, %f17, %f48; // begin inline asm { cvt.f32.f16 %f11, %rs11;} // end inline asm mul.ftz.f32 %f49, %f11, %f18; mul.ftz.f32 %f50, %f49, 0f3FB8AA3B; ex2.approx.ftz.f32 %f51, %f50; add.ftz.f32 %f52, %f51, 0f3F800000; lg2.approx.ftz.f32 %f53, %f52; mul.ftz.f32 %f54, %f53, 0f3F317218; mul.ftz.f32 %f12, %f17, %f54; // 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 %f55, %f13, %f18; mul.ftz.f32 %f56, %f55, 0f3FB8AA3B; ex2.approx.ftz.f32 %f57, %f56; add.ftz.f32 %f58, %f57, 0f3F800000; lg2.approx.ftz.f32 %f59, %f58; mul.ftz.f32 %f60, %f59, 0f3F317218; mul.ftz.f32 %f14, %f17, %f60; // begin inline asm { cvt.f32.f16 %f15, %rs15;} // end inline asm mul.ftz.f32 %f61, %f15, %f18; mul.ftz.f32 %f62, %f61, 0f3FB8AA3B; ex2.approx.ftz.f32 %f63, %f62; add.ftz.f32 %f64, %f63, 0f3F800000; lg2.approx.ftz.f32 %f65, %f64; mul.ftz.f32 %f66, %f65, 0f3F317218; mul.ftz.f32 %f16, %f17, %f66; // 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 %f67, %r8; mov.b32 %f68, %r7; mov.b32 %f69, %r6; mov.b32 %f70, %r5; st.param.f32 [func_retval0+0], %f70; st.param.f32 [func_retval0+4], %f69; st.param.f32 [func_retval0+8], %f68; st.param.f32 [func_retval0+12], %f67; ret; }