Files
lammps/lib/gpu/cmmc_long_gpu_ptx.h

1218 lines
39 KiB
C

const char * cmmc_long_gpu_kernel =
" .version 2.3\n"
" .target sm_20\n"
" .address_size 64\n"
" .global .texref pos_tex;\n"
" .global .texref q_tex;\n"
" .entry kernel_pair (\n"
" .param .u64 __cudaparm_kernel_pair_x_,\n"
" .param .u64 __cudaparm_kernel_pair_lj1,\n"
" .param .u64 __cudaparm_kernel_pair_lj3,\n"
" .param .s32 __cudaparm_kernel_pair_lj_types,\n"
" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n"
" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n"
" .param .u64 __cudaparm_kernel_pair_dev_packed,\n"
" .param .u64 __cudaparm_kernel_pair_ans,\n"
" .param .u64 __cudaparm_kernel_pair_engv,\n"
" .param .s32 __cudaparm_kernel_pair_eflag,\n"
" .param .s32 __cudaparm_kernel_pair_vflag,\n"
" .param .s32 __cudaparm_kernel_pair_inum,\n"
" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n"
" .param .u64 __cudaparm_kernel_pair_q_,\n"
" .param .f32 __cudaparm_kernel_pair_cut_coulsq,\n"
" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n"
" .param .f32 __cudaparm_kernel_pair_g_ewald,\n"
" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n"
" {\n"
" .reg .u32 %r<86>;\n"
" .reg .u64 %rd<65>;\n"
" .reg .f32 %f<175>;\n"
" .reg .pred %p<23>;\n"
" .shared .align 16 .b8 __cuda___cuda_local_var_32498_33_non_const_sp_lj112[32];\n"
" .shared .align 4 .b8 __cuda___cuda_local_var_32619_35_non_const_red_acc144[3072];\n"
" .loc 16 108 0\n"
"$LDWbegin_kernel_pair:\n"
" .loc 16 115 0\n"
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
" ldu.global.f32 %f1, [%rd1+0];\n"
" .loc 16 116 0\n"
" ld.global.f32 %f2, [%rd1+4];\n"
" .loc 16 117 0\n"
" ld.global.f32 %f3, [%rd1+8];\n"
" .loc 16 118 0\n"
" ld.global.f32 %f4, [%rd1+12];\n"
" st.shared.v4.f32 [__cuda___cuda_local_var_32498_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4};\n"
" .loc 16 119 0\n"
" ld.global.f32 %f5, [%rd1+16];\n"
" .loc 16 120 0\n"
" ld.global.f32 %f6, [%rd1+20];\n"
" .loc 16 121 0\n"
" ld.global.f32 %f7, [%rd1+24];\n"
" .loc 16 122 0\n"
" ld.global.f32 %f8, [%rd1+28];\n"
" st.shared.v4.f32 [__cuda___cuda_local_var_32498_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8};\n"
" .loc 16 132 0\n"
" mov.f32 %f9, 0f00000000; \n"
" mov.f32 %f10, %f9;\n"
" mov.f32 %f11, 0f00000000; \n"
" mov.f32 %f12, %f11;\n"
" mov.f32 %f13, 0f00000000; \n"
" mov.f32 %f14, %f13;\n"
" mov.f32 %f15, 0f00000000; \n"
" mov.f32 %f16, %f15;\n"
" mov.f32 %f17, 0f00000000; \n"
" mov.f32 %f18, %f17;\n"
" mov.f32 %f19, 0f00000000; \n"
" mov.f32 %f20, %f19;\n"
" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n"
" cvt.s32.u32 %r2, %tid.x;\n"
" div.s32 %r3, %r2, %r1;\n"
" cvt.s32.u32 %r4, %ntid.x;\n"
" div.s32 %r5, %r4, %r1;\n"
" rem.s32 %r6, %r2, %r1;\n"
" cvt.s32.u32 %r7, %ctaid.x;\n"
" mul.lo.s32 %r8, %r7, %r5;\n"
" add.s32 %r9, %r3, %r8;\n"
" ld.param.s32 %r10, [__cudaparm_kernel_pair_inum];\n"
" setp.lt.s32 %p1, %r9, %r10;\n"
" @!%p1 bra $Lt_0_23810;\n"
" .loc 16 136 0\n"
" cvt.s64.s32 %rd2, %r9;\n"
" mul.wide.s32 %rd3, %r9, 4;\n"
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
" add.u64 %rd5, %rd3, %rd4;\n"
" ld.global.s32 %r11, [%rd5+0];\n"
" .loc 16 138 0\n"
" ld.param.s32 %r12, [__cudaparm_kernel_pair_nbor_pitch];\n"
" cvt.s64.s32 %rd6, %r12;\n"
" mul.wide.s32 %rd7, %r12, 4;\n"
" add.u64 %rd8, %rd7, %rd5;\n"
" ld.global.s32 %r13, [%rd8+0];\n"
" add.u64 %rd9, %rd7, %rd8;\n"
" ld.param.u64 %rd10, [__cudaparm_kernel_pair_dev_packed];\n"
" setp.ne.u64 %p2, %rd10, %rd4;\n"
" @%p2 bra $Lt_0_24322;\n"
" .loc 16 144 0\n"
" cvt.s32.s64 %r14, %rd6;\n"
" mul.lo.s32 %r15, %r14, %r13;\n"
" cvt.s64.s32 %rd11, %r15;\n"
" mul.wide.s32 %rd12, %r15, 4;\n"
" add.u64 %rd13, %rd9, %rd12;\n"
" .loc 16 145 0\n"
" mul.lo.s32 %r16, %r6, %r14;\n"
" cvt.s64.s32 %rd14, %r16;\n"
" mul.wide.s32 %rd15, %r16, 4;\n"
" add.u64 %rd16, %rd9, %rd15;\n"
" .loc 16 146 0\n"
" mul.lo.s32 %r17, %r14, %r1;\n"
" bra.uni $Lt_0_24066;\n"
"$Lt_0_24322:\n"
" .loc 16 148 0\n"
" ld.global.s32 %r18, [%rd9+0];\n"
" cvt.s64.s32 %rd17, %r18;\n"
" mul.wide.s32 %rd18, %r18, 4;\n"
" add.u64 %rd19, %rd10, %rd18;\n"
" .loc 16 149 0\n"
" cvt.s64.s32 %rd20, %r13;\n"
" mul.wide.s32 %rd21, %r13, 4;\n"
" add.u64 %rd13, %rd19, %rd21;\n"
" .loc 16 150 0\n"
" mov.s32 %r17, %r1;\n"
" .loc 16 151 0\n"
" cvt.s64.s32 %rd22, %r6;\n"
" mul.wide.s32 %rd23, %r6, 4;\n"
" add.u64 %rd16, %rd19, %rd23;\n"
"$Lt_0_24066:\n"
" .loc 16 154 0\n"
" mov.u32 %r19, %r11;\n"
" mov.s32 %r20, 0;\n"
" mov.u32 %r21, %r20;\n"
" mov.s32 %r22, 0;\n"
" mov.u32 %r23, %r22;\n"
" mov.s32 %r24, 0;\n"
" mov.u32 %r25, %r24;\n"
" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r19,%r21,%r23,%r25}];\n"
" mov.f32 %f25, %f21;\n"
" mov.f32 %f26, %f22;\n"
" mov.f32 %f27, %f23;\n"
" mov.f32 %f28, %f24;\n"
" .loc 16 155 0\n"
" mov.u32 %r26, %r11;\n"
" mov.s32 %r27, 0;\n"
" mov.u32 %r28, %r27;\n"
" mov.s32 %r29, 0;\n"
" mov.u32 %r30, %r29;\n"
" mov.s32 %r31, 0;\n"
" mov.u32 %r32, %r31;\n"
" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r26,%r28,%r30,%r32}];\n"
" mov.f32 %f33, %f29;\n"
" setp.ge.u64 %p3, %rd16, %rd13;\n"
" @%p3 bra $Lt_0_35330;\n"
" cvt.rzi.ftz.s32.f32 %r33, %f28;\n"
" cvt.s64.s32 %rd24, %r17;\n"
" ld.param.s32 %r34, [__cudaparm_kernel_pair_lj_types];\n"
" mul.lo.s32 %r35, %r34, %r33;\n"
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_lj1];\n"
" mov.f32 %f34, 0f00000000; \n"
" mov.f32 %f35, 0f00000000; \n"
" mov.f32 %f36, 0f00000000; \n"
" mov.f32 %f37, 0f00000000; \n"
" mov.f32 %f38, 0f00000000; \n"
" mov.u64 %rd26, __cuda___cuda_local_var_32498_33_non_const_sp_lj112;\n"
"$Lt_0_25090:\n"
" .loc 16 159 0\n"
" ld.global.s32 %r36, [%rd16+0];\n"
" .loc 16 162 0\n"
" shr.s32 %r37, %r36, 30;\n"
" and.b32 %r38, %r37, 3;\n"
" cvt.s64.s32 %rd27, %r38;\n"
" mul.wide.s32 %rd28, %r38, 4;\n"
" add.u64 %rd29, %rd26, %rd28;\n"
" ld.shared.f32 %f39, [%rd29+0];\n"
" .loc 16 163 0\n"
" mov.f32 %f40, 0f3f800000; \n"
" ld.shared.f32 %f41, [%rd29+16];\n"
" sub.ftz.f32 %f42, %f40, %f41;\n"
" .loc 16 166 0\n"
" and.b32 %r39, %r36, 1073741823;\n"
" mov.u32 %r40, %r39;\n"
" mov.s32 %r41, 0;\n"
" mov.u32 %r42, %r41;\n"
" mov.s32 %r43, 0;\n"
" mov.u32 %r44, %r43;\n"
" mov.s32 %r45, 0;\n"
" mov.u32 %r46, %r45;\n"
" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r40,%r42,%r44,%r46}];\n"
" mov.f32 %f47, %f43;\n"
" mov.f32 %f48, %f44;\n"
" mov.f32 %f49, %f45;\n"
" mov.f32 %f50, %f46;\n"
" cvt.rzi.ftz.s32.f32 %r47, %f50;\n"
" sub.ftz.f32 %f51, %f26, %f48;\n"
" sub.ftz.f32 %f52, %f25, %f47;\n"
" sub.ftz.f32 %f53, %f27, %f49;\n"
" mul.ftz.f32 %f54, %f51, %f51;\n"
" fma.rn.ftz.f32 %f55, %f52, %f52, %f54;\n"
" fma.rn.ftz.f32 %f56, %f53, %f53, %f55;\n"
" add.s32 %r48, %r47, %r35;\n"
" cvt.s64.s32 %rd30, %r48;\n"
" mul.wide.s32 %rd31, %r48, 16;\n"
" add.u64 %rd32, %rd31, %rd25;\n"
" ld.global.f32 %f57, [%rd32+0];\n"
" setp.gt.ftz.f32 %p4, %f57, %f56;\n"
" @!%p4 bra $Lt_0_28930;\n"
" rcp.approx.ftz.f32 %f58, %f56;\n"
" ld.global.f32 %f59, [%rd32+4];\n"
" setp.lt.ftz.f32 %p5, %f56, %f59;\n"
" @!%p5 bra $Lt_0_26114;\n"
" ld.param.u64 %rd33, [__cudaparm_kernel_pair_lj3];\n"
" add.u64 %rd34, %rd33, %rd31;\n"
" ld.global.f32 %f60, [%rd34+0];\n"
" mov.f32 %f61, 0f40000000; \n"
" setp.eq.ftz.f32 %p6, %f60, %f61;\n"
" @!%p6 bra $Lt_0_26626;\n"
" .loc 16 182 0\n"
" mul.ftz.f32 %f62, %f58, %f58;\n"
" mov.f32 %f63, %f62;\n"
" mov.f32 %f64, %f63;\n"
" .loc 16 183 0\n"
" mul.ftz.f32 %f65, %f62, %f62;\n"
" mov.f32 %f66, %f65;\n"
" bra.uni $Lt_0_26882;\n"
"$Lt_0_26626:\n"
" mov.f32 %f67, 0f3f800000; \n"
" setp.eq.ftz.f32 %p7, %f60, %f67;\n"
" @!%p7 bra $Lt_0_27138;\n"
" .loc 16 185 0\n"
" sqrt.approx.ftz.f32 %f68, %f58;\n"
" mul.ftz.f32 %f69, %f58, %f68;\n"
" mov.f32 %f65, %f69;\n"
" mov.f32 %f66, %f65;\n"
" .loc 16 186 0\n"
" mul.ftz.f32 %f63, %f69, %f69;\n"
" mov.f32 %f64, %f63;\n"
" bra.uni $Lt_0_26882;\n"
"$Lt_0_27138:\n"
" .loc 16 188 0\n"
" mul.ftz.f32 %f70, %f58, %f58;\n"
" mul.ftz.f32 %f71, %f58, %f70;\n"
" mov.f32 %f63, %f71;\n"
" mov.f32 %f64, %f63;\n"
" .loc 16 189 0\n"
" mov.f32 %f65, %f71;\n"
" mov.f32 %f66, %f65;\n"
"$Lt_0_26882:\n"
"$Lt_0_26370:\n"
" .loc 16 191 0\n"
" mul.ftz.f32 %f72, %f39, %f63;\n"
" ld.global.v2.f32 {%f73,%f74}, [%rd32+8];\n"
" mul.ftz.f32 %f75, %f73, %f65;\n"
" sub.ftz.f32 %f76, %f75, %f74;\n"
" mul.ftz.f32 %f77, %f72, %f76;\n"
" bra.uni $Lt_0_25858;\n"
"$Lt_0_26114:\n"
" .loc 16 193 0\n"
" mov.f32 %f77, 0f00000000; \n"
"$Lt_0_25858:\n"
" ld.param.f32 %f78, [__cudaparm_kernel_pair_cut_coulsq];\n"
" setp.gt.ftz.f32 %p8, %f78, %f56;\n"
" @!%p8 bra $Lt_0_27650;\n"
" .loc 16 200 0\n"
" sqrt.approx.ftz.f32 %f79, %f56;\n"
" ld.param.f32 %f80, [__cudaparm_kernel_pair_g_ewald];\n"
" mul.ftz.f32 %f81, %f80, %f79;\n"
" mul.ftz.f32 %f82, %f81, %f81;\n"
" mov.f32 %f83, 0f3f800000; \n"
" mov.f32 %f84, 0f3ea7ba05; \n"
" fma.rn.ftz.f32 %f85, %f84, %f81, %f83;\n"
" neg.ftz.f32 %f86, %f82;\n"
" rcp.approx.ftz.f32 %f87, %f85;\n"
" mov.f32 %f88, 0f3fb8aa3b; \n"
" mul.ftz.f32 %f89, %f86, %f88;\n"
" ex2.approx.ftz.f32 %f90, %f89;\n"
" mov.f32 %f91, 0f3e827906; \n"
" mov.f32 %f92, 0fbe91a98e; \n"
" mov.f32 %f93, 0f3fb5f0e3; \n"
" mov.f32 %f94, 0fbfba00e3; \n"
" mov.f32 %f95, 0f3f87dc22; \n"
" fma.rn.ftz.f32 %f96, %f95, %f87, %f94;\n"
" fma.rn.ftz.f32 %f97, %f87, %f96, %f93;\n"
" fma.rn.ftz.f32 %f98, %f87, %f97, %f92;\n"
" fma.rn.ftz.f32 %f99, %f87, %f98, %f91;\n"
" mul.ftz.f32 %f100, %f87, %f99;\n"
" mul.ftz.f32 %f101, %f90, %f100;\n"
" mov.f32 %f102, %f101;\n"
" .loc 16 201 0\n"
" mov.u32 %r49, %r39;\n"
" mov.s32 %r50, 0;\n"
" mov.u32 %r51, %r50;\n"
" mov.s32 %r52, 0;\n"
" mov.u32 %r53, %r52;\n"
" mov.s32 %r54, 0;\n"
" mov.u32 %r55, %r54;\n"
" tex.1d.v4.f32.s32 {%f103,%f104,%f105,%f106},[q_tex,{%r49,%r51,%r53,%r55}];\n"
" mov.f32 %f107, %f103;\n"
" ld.param.f32 %f108, [__cudaparm_kernel_pair_qqrd2e];\n"
" mul.ftz.f32 %f109, %f108, %f33;\n"
" mul.ftz.f32 %f110, %f109, %f107;\n"
" div.approx.ftz.f32 %f111, %f110, %f79;\n"
" mov.f32 %f112, %f111;\n"
" .loc 16 202 0\n"
" mov.f32 %f113, 0f3f906ebb; \n"
" mul.ftz.f32 %f114, %f81, %f113;\n"
" fma.rn.ftz.f32 %f115, %f90, %f114, %f101;\n"
" sub.ftz.f32 %f116, %f115, %f42;\n"
" mul.ftz.f32 %f117, %f111, %f116;\n"
" bra.uni $Lt_0_27394;\n"
"$Lt_0_27650:\n"
" .loc 16 204 0\n"
" mov.f32 %f117, 0f00000000; \n"
"$Lt_0_27394:\n"
" .loc 16 208 0\n"
" add.ftz.f32 %f118, %f117, %f77;\n"
" mul.ftz.f32 %f119, %f118, %f58;\n"
" fma.rn.ftz.f32 %f36, %f52, %f119, %f36;\n"
" .loc 16 209 0\n"
" fma.rn.ftz.f32 %f35, %f51, %f119, %f35;\n"
" .loc 16 210 0\n"
" fma.rn.ftz.f32 %f34, %f53, %f119, %f34;\n"
" ld.param.s32 %r56, [__cudaparm_kernel_pair_eflag];\n"
" mov.u32 %r57, 0;\n"
" setp.le.s32 %p9, %r56, %r57;\n"
" @%p9 bra $Lt_0_28418;\n"
" .loc 16 213 0\n"
" mov.f32 %f120, %f112;\n"
" mov.f32 %f121, %f102;\n"
" sub.ftz.f32 %f122, %f121, %f42;\n"
" fma.rn.ftz.f32 %f123, %f120, %f122, %f37;\n"
" selp.f32 %f37, %f123, %f37, %p8;\n"
" @!%p5 bra $Lt_0_28418;\n"
" .loc 16 216 0\n"
" ld.param.u64 %rd35, [__cudaparm_kernel_pair_lj3];\n"
" add.u64 %rd36, %rd35, %rd31;\n"
" ld.global.v4.f32 {_,%f124,%f125,%f126}, [%rd36+0];\n"
" mov.f32 %f127, %f64;\n"
" mul.ftz.f32 %f128, %f127, %f39;\n"
" mov.f32 %f129, %f66;\n"
" mul.ftz.f32 %f130, %f124, %f129;\n"
" sub.ftz.f32 %f131, %f130, %f125;\n"
" mul.ftz.f32 %f132, %f128, %f131;\n"
" sub.ftz.f32 %f133, %f132, %f126;\n"
" add.ftz.f32 %f38, %f38, %f133;\n"
"$Lt_0_28418:\n"
"$Lt_0_27906:\n"
" ld.param.s32 %r58, [__cudaparm_kernel_pair_vflag];\n"
" mov.u32 %r59, 0;\n"
" setp.le.s32 %p10, %r58, %r59;\n"
" @%p10 bra $Lt_0_28930;\n"
" .loc 16 221 0\n"
" mov.f32 %f134, %f10;\n"
" mul.ftz.f32 %f135, %f52, %f52;\n"
" fma.rn.ftz.f32 %f136, %f119, %f135, %f134;\n"
" mov.f32 %f10, %f136;\n"
" .loc 16 222 0\n"
" mov.f32 %f137, %f12;\n"
" fma.rn.ftz.f32 %f138, %f119, %f54, %f137;\n"
" mov.f32 %f12, %f138;\n"
" .loc 16 223 0\n"
" mov.f32 %f139, %f14;\n"
" mul.ftz.f32 %f140, %f53, %f53;\n"
" fma.rn.ftz.f32 %f141, %f119, %f140, %f139;\n"
" mov.f32 %f14, %f141;\n"
" .loc 16 224 0\n"
" mov.f32 %f142, %f16;\n"
" mul.ftz.f32 %f143, %f51, %f52;\n"
" fma.rn.ftz.f32 %f144, %f119, %f143, %f142;\n"
" mov.f32 %f16, %f144;\n"
" .loc 16 225 0\n"
" mov.f32 %f145, %f18;\n"
" mul.ftz.f32 %f146, %f52, %f53;\n"
" fma.rn.ftz.f32 %f147, %f119, %f146, %f145;\n"
" mov.f32 %f18, %f147;\n"
" .loc 16 226 0\n"
" mul.ftz.f32 %f148, %f51, %f53;\n"
" fma.rn.ftz.f32 %f19, %f119, %f148, %f19;\n"
" mov.f32 %f20, %f19;\n"
"$Lt_0_28930:\n"
"$Lt_0_25346:\n"
" .loc 16 158 0\n"
" mul.lo.u64 %rd37, %rd24, 4;\n"
" add.u64 %rd16, %rd16, %rd37;\n"
" setp.lt.u64 %p11, %rd16, %rd13;\n"
" @%p11 bra $Lt_0_25090;\n"
" bra.uni $Lt_0_23554;\n"
"$Lt_0_35330:\n"
" mov.f32 %f34, 0f00000000; \n"
" mov.f32 %f35, 0f00000000; \n"
" mov.f32 %f36, 0f00000000; \n"
" mov.f32 %f37, 0f00000000; \n"
" mov.f32 %f38, 0f00000000; \n"
" bra.uni $Lt_0_23554;\n"
"$Lt_0_23810:\n"
" mov.f32 %f34, 0f00000000; \n"
" mov.f32 %f35, 0f00000000; \n"
" mov.f32 %f36, 0f00000000; \n"
" mov.f32 %f37, 0f00000000; \n"
" mov.f32 %f38, 0f00000000; \n"
"$Lt_0_23554:\n"
" mov.u32 %r60, 1;\n"
" setp.le.s32 %p12, %r1, %r60;\n"
" @%p12 bra $Lt_0_31746;\n"
" .loc 16 237 0\n"
" mov.u64 %rd38, __cuda___cuda_local_var_32619_35_non_const_red_acc144;\n"
" cvt.s64.s32 %rd39, %r2;\n"
" mul.wide.s32 %rd40, %r2, 4;\n"
" add.u64 %rd41, %rd38, %rd40;\n"
" mov.f32 %f149, %f36;\n"
" st.shared.f32 [%rd41+0], %f149;\n"
" .loc 16 238 0\n"
" mov.f32 %f150, %f35;\n"
" st.shared.f32 [%rd41+512], %f150;\n"
" .loc 16 239 0\n"
" mov.f32 %f151, %f34;\n"
" st.shared.f32 [%rd41+1024], %f151;\n"
" .loc 16 240 0\n"
" mov.f32 %f152, %f38;\n"
" st.shared.f32 [%rd41+1536], %f152;\n"
" .loc 16 241 0\n"
" mov.f32 %f153, %f37;\n"
" st.shared.f32 [%rd41+2048], %f153;\n"
" .loc 16 243 0\n"
" shr.s32 %r61, %r1, 31;\n"
" mov.s32 %r62, 1;\n"
" and.b32 %r63, %r61, %r62;\n"
" add.s32 %r64, %r63, %r1;\n"
" shr.s32 %r65, %r64, 1;\n"
" mov.s32 %r66, %r65;\n"
" mov.u32 %r67, 0;\n"
" setp.ne.u32 %p13, %r65, %r67;\n"
" @!%p13 bra $Lt_0_30210;\n"
"$Lt_0_30722:\n"
" setp.ge.u32 %p14, %r6, %r66;\n"
" @%p14 bra $Lt_0_30978;\n"
" .loc 16 246 0\n"
" add.u32 %r68, %r2, %r66;\n"
" cvt.u64.u32 %rd42, %r68;\n"
" mul.wide.u32 %rd43, %r68, 4;\n"
" add.u64 %rd44, %rd38, %rd43;\n"
" ld.shared.f32 %f154, [%rd44+0];\n"
" add.ftz.f32 %f149, %f154, %f149;\n"
" st.shared.f32 [%rd41+0], %f149;\n"
" ld.shared.f32 %f155, [%rd44+512];\n"
" add.ftz.f32 %f150, %f155, %f150;\n"
" st.shared.f32 [%rd41+512], %f150;\n"
" ld.shared.f32 %f156, [%rd44+1024];\n"
" add.ftz.f32 %f151, %f156, %f151;\n"
" st.shared.f32 [%rd41+1024], %f151;\n"
" ld.shared.f32 %f157, [%rd44+1536];\n"
" add.ftz.f32 %f152, %f157, %f152;\n"
" st.shared.f32 [%rd41+1536], %f152;\n"
" ld.shared.f32 %f158, [%rd44+2048];\n"
" add.ftz.f32 %f153, %f158, %f153;\n"
" st.shared.f32 [%rd41+2048], %f153;\n"
"$Lt_0_30978:\n"
" .loc 16 243 0\n"
" shr.u32 %r66, %r66, 1;\n"
" mov.u32 %r69, 0;\n"
" setp.ne.u32 %p15, %r66, %r69;\n"
" @%p15 bra $Lt_0_30722;\n"
"$Lt_0_30210:\n"
" .loc 16 250 0\n"
" mov.f32 %f36, %f149;\n"
" .loc 16 251 0\n"
" mov.f32 %f35, %f150;\n"
" .loc 16 252 0\n"
" mov.f32 %f34, %f151;\n"
" .loc 16 253 0\n"
" mov.f32 %f38, %f152;\n"
" .loc 16 254 0\n"
" mov.f32 %f37, %f153;\n"
" ld.param.s32 %r70, [__cudaparm_kernel_pair_vflag];\n"
" mov.u32 %r71, 0;\n"
" setp.le.s32 %p16, %r70, %r71;\n"
" @%p16 bra $Lt_0_31746;\n"
" .loc 16 258 0\n"
" mov.f32 %f149, %f10;\n"
" st.shared.f32 [%rd41+0], %f149;\n"
" mov.f32 %f150, %f12;\n"
" st.shared.f32 [%rd41+512], %f150;\n"
" mov.f32 %f151, %f14;\n"
" st.shared.f32 [%rd41+1024], %f151;\n"
" mov.f32 %f152, %f16;\n"
" st.shared.f32 [%rd41+1536], %f152;\n"
" mov.f32 %f153, %f18;\n"
" st.shared.f32 [%rd41+2048], %f153;\n"
" mov.f32 %f159, %f20;\n"
" st.shared.f32 [%rd41+2560], %f159;\n"
" .loc 16 260 0\n"
" mov.s32 %r72, %r65;\n"
" @!%p13 bra $Lt_0_32258;\n"
"$Lt_0_32770:\n"
" setp.ge.u32 %p17, %r6, %r72;\n"
" @%p17 bra $Lt_0_33026;\n"
" .loc 16 263 0\n"
" add.u32 %r73, %r2, %r72;\n"
" cvt.u64.u32 %rd45, %r73;\n"
" mul.wide.u32 %rd46, %r73, 4;\n"
" add.u64 %rd47, %rd38, %rd46;\n"
" ld.shared.f32 %f160, [%rd47+0];\n"
" add.ftz.f32 %f149, %f160, %f149;\n"
" st.shared.f32 [%rd41+0], %f149;\n"
" ld.shared.f32 %f161, [%rd47+512];\n"
" add.ftz.f32 %f150, %f161, %f150;\n"
" st.shared.f32 [%rd41+512], %f150;\n"
" ld.shared.f32 %f162, [%rd47+1024];\n"
" add.ftz.f32 %f151, %f162, %f151;\n"
" st.shared.f32 [%rd41+1024], %f151;\n"
" ld.shared.f32 %f163, [%rd47+1536];\n"
" add.ftz.f32 %f152, %f163, %f152;\n"
" st.shared.f32 [%rd41+1536], %f152;\n"
" ld.shared.f32 %f164, [%rd47+2048];\n"
" add.ftz.f32 %f153, %f164, %f153;\n"
" st.shared.f32 [%rd41+2048], %f153;\n"
" ld.shared.f32 %f165, [%rd47+2560];\n"
" add.ftz.f32 %f159, %f165, %f159;\n"
" st.shared.f32 [%rd41+2560], %f159;\n"
"$Lt_0_33026:\n"
" .loc 16 260 0\n"
" shr.u32 %r72, %r72, 1;\n"
" mov.u32 %r74, 0;\n"
" setp.ne.u32 %p18, %r72, %r74;\n"
" @%p18 bra $Lt_0_32770;\n"
"$Lt_0_32258:\n"
" .loc 16 268 0\n"
" mov.f32 %f10, %f149;\n"
" mov.f32 %f12, %f150;\n"
" mov.f32 %f14, %f151;\n"
" mov.f32 %f16, %f152;\n"
" mov.f32 %f18, %f153;\n"
" mov.f32 %f20, %f159;\n"
"$Lt_0_31746:\n"
"$Lt_0_29698:\n"
" selp.s32 %r75, 1, 0, %p1;\n"
" mov.s32 %r76, 0;\n"
" set.eq.u32.s32 %r77, %r6, %r76;\n"
" neg.s32 %r78, %r77;\n"
" and.b32 %r79, %r75, %r78;\n"
" mov.u32 %r80, 0;\n"
" setp.eq.s32 %p19, %r79, %r80;\n"
" @%p19 bra $Lt_0_33794;\n"
" .loc 16 274 0\n"
" cvt.s64.s32 %rd48, %r9;\n"
" ld.param.u64 %rd49, [__cudaparm_kernel_pair_engv];\n"
" mul.wide.s32 %rd50, %r9, 4;\n"
" add.u64 %rd51, %rd49, %rd50;\n"
" ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag];\n"
" mov.u32 %r82, 0;\n"
" setp.le.s32 %p20, %r81, %r82;\n"
" @%p20 bra $Lt_0_34306;\n"
" .loc 16 276 0\n"
" st.global.f32 [%rd51+0], %f38;\n"
" .loc 16 277 0\n"
" cvt.s64.s32 %rd52, %r10;\n"
" mul.wide.s32 %rd53, %r10, 4;\n"
" add.u64 %rd54, %rd53, %rd51;\n"
" .loc 16 278 0\n"
" st.global.f32 [%rd54+0], %f37;\n"
" .loc 16 279 0\n"
" add.u64 %rd51, %rd53, %rd54;\n"
"$Lt_0_34306:\n"
" ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag];\n"
" mov.u32 %r84, 0;\n"
" setp.le.s32 %p21, %r83, %r84;\n"
" @%p21 bra $Lt_0_34818;\n"
" .loc 16 283 0\n"
" mov.f32 %f166, %f10;\n"
" st.global.f32 [%rd51+0], %f166;\n"
" .loc 16 284 0\n"
" cvt.s64.s32 %rd55, %r10;\n"
" mul.wide.s32 %rd56, %r10, 4;\n"
" add.u64 %rd57, %rd56, %rd51;\n"
" .loc 16 283 0\n"
" mov.f32 %f167, %f12;\n"
" st.global.f32 [%rd57+0], %f167;\n"
" .loc 16 284 0\n"
" add.u64 %rd58, %rd56, %rd57;\n"
" .loc 16 283 0\n"
" mov.f32 %f168, %f14;\n"
" st.global.f32 [%rd58+0], %f168;\n"
" .loc 16 284 0\n"
" add.u64 %rd59, %rd56, %rd58;\n"
" .loc 16 283 0\n"
" mov.f32 %f169, %f16;\n"
" st.global.f32 [%rd59+0], %f169;\n"
" .loc 16 284 0\n"
" add.u64 %rd51, %rd56, %rd59;\n"
" .loc 16 283 0\n"
" mov.f32 %f170, %f18;\n"
" st.global.f32 [%rd51+0], %f170;\n"
" mov.f32 %f171, %f20;\n"
" add.u64 %rd60, %rd56, %rd51;\n"
" st.global.f32 [%rd60+0], %f171;\n"
"$Lt_0_34818:\n"
" .loc 16 287 0\n"
" ld.param.u64 %rd61, [__cudaparm_kernel_pair_ans];\n"
" mul.lo.u64 %rd62, %rd48, 16;\n"
" add.u64 %rd63, %rd61, %rd62;\n"
" mov.f32 %f172, %f173;\n"
" st.global.v4.f32 [%rd63+0], {%f36,%f35,%f34,%f172};\n"
"$Lt_0_33794:\n"
" .loc 16 289 0\n"
" exit;\n"
"$LDWend_kernel_pair:\n"
" }\n"
" .entry kernel_pair_fast (\n"
" .param .u64 __cudaparm_kernel_pair_fast_x_,\n"
" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n"
" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n"
" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n"
" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n"
" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n"
" .param .u64 __cudaparm_kernel_pair_fast_ans,\n"
" .param .u64 __cudaparm_kernel_pair_fast_engv,\n"
" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n"
" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n"
" .param .s32 __cudaparm_kernel_pair_fast_inum,\n"
" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n"
" .param .u64 __cudaparm_kernel_pair_fast_q_,\n"
" .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq,\n"
" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n"
" .param .f32 __cudaparm_kernel_pair_fast_g_ewald,\n"
" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n"
" {\n"
" .reg .u32 %r<86>;\n"
" .reg .u64 %rd<76>;\n"
" .reg .f32 %f<178>;\n"
" .reg .pred %p<25>;\n"
" .shared .align 4 .b8 __cuda___cuda_local_var_32691_33_non_const_sp_lj3320[32];\n"
" .shared .align 16 .b8 __cuda___cuda_local_var_32689_34_non_const_lj13360[1936];\n"
" .shared .align 16 .b8 __cuda___cuda_local_var_32690_34_non_const_lj35296[1936];\n"
" .shared .align 4 .b8 __cuda___cuda_local_var_32812_35_non_const_red_acc7232[3072];\n"
" .loc 16 299 0\n"
"$LDWbegin_kernel_pair_fast:\n"
" cvt.s32.u32 %r1, %tid.x;\n"
" mov.u32 %r2, 7;\n"
" setp.gt.s32 %p1, %r1, %r2;\n"
" @%p1 bra $Lt_1_25090;\n"
" .loc 16 309 0\n"
" mov.u64 %rd1, __cuda___cuda_local_var_32691_33_non_const_sp_lj3320;\n"
" cvt.s64.s32 %rd2, %r1;\n"
" mul.wide.s32 %rd3, %r1, 4;\n"
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n"
" add.u64 %rd5, %rd4, %rd3;\n"
" ld.global.f32 %f1, [%rd5+0];\n"
" add.u64 %rd6, %rd3, %rd1;\n"
" st.shared.f32 [%rd6+0], %f1;\n"
"$Lt_1_25090:\n"
" mov.u64 %rd1, __cuda___cuda_local_var_32691_33_non_const_sp_lj3320;\n"
" mov.u32 %r3, 120;\n"
" setp.gt.s32 %p2, %r1, %r3;\n"
" @%p2 bra $Lt_1_25602;\n"
" .loc 16 311 0\n"
" mov.u64 %rd7, __cuda___cuda_local_var_32689_34_non_const_lj13360;\n"
" mov.u64 %rd8, __cuda___cuda_local_var_32690_34_non_const_lj35296;\n"
" cvt.s64.s32 %rd9, %r1;\n"
" mul.wide.s32 %rd10, %r1, 16;\n"
" ld.param.u64 %rd11, [__cudaparm_kernel_pair_fast_lj1_in];\n"
" add.u64 %rd12, %rd11, %rd10;\n"
" add.u64 %rd13, %rd10, %rd7;\n"
" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd12+0];\n"
" st.shared.v4.f32 [%rd13+0], {%f2,%f3,%f4,%f5};\n"
" .loc 16 312 0\n"
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in];\n"
" add.u64 %rd15, %rd14, %rd10;\n"
" add.u64 %rd16, %rd10, %rd8;\n"
" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0];\n"
" st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n"
"$Lt_1_25602:\n"
" mov.u64 %rd7, __cuda___cuda_local_var_32689_34_non_const_lj13360;\n"
" mov.u64 %rd8, __cuda___cuda_local_var_32690_34_non_const_lj35296;\n"
" .loc 16 323 0\n"
" mov.f32 %f10, 0f00000000; \n"
" mov.f32 %f11, %f10;\n"
" mov.f32 %f12, 0f00000000; \n"
" mov.f32 %f13, %f12;\n"
" mov.f32 %f14, 0f00000000; \n"
" mov.f32 %f15, %f14;\n"
" mov.f32 %f16, 0f00000000; \n"
" mov.f32 %f17, %f16;\n"
" mov.f32 %f18, 0f00000000; \n"
" mov.f32 %f19, %f18;\n"
" mov.f32 %f20, 0f00000000; \n"
" mov.f32 %f21, %f20;\n"
" .loc 16 325 0\n"
" bar.sync 0;\n"
" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_t_per_atom];\n"
" div.s32 %r5, %r1, %r4;\n"
" cvt.s32.u32 %r6, %ntid.x;\n"
" div.s32 %r7, %r6, %r4;\n"
" rem.s32 %r8, %r1, %r4;\n"
" cvt.s32.u32 %r9, %ctaid.x;\n"
" mul.lo.s32 %r10, %r9, %r7;\n"
" add.s32 %r11, %r5, %r10;\n"
" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_inum];\n"
" setp.lt.s32 %p3, %r11, %r12;\n"
" @!%p3 bra $Lt_1_26370;\n"
" .loc 16 329 0\n"
" cvt.s64.s32 %rd17, %r11;\n"
" mul.wide.s32 %rd18, %r11, 4;\n"
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
" add.u64 %rd20, %rd18, %rd19;\n"
" ld.global.s32 %r13, [%rd20+0];\n"
" .loc 16 331 0\n"
" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
" cvt.s64.s32 %rd21, %r14;\n"
" mul.wide.s32 %rd22, %r14, 4;\n"
" add.u64 %rd23, %rd22, %rd20;\n"
" ld.global.s32 %r15, [%rd23+0];\n"
" add.u64 %rd24, %rd22, %rd23;\n"
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_fast_dev_packed];\n"
" setp.ne.u64 %p4, %rd25, %rd19;\n"
" @%p4 bra $Lt_1_26882;\n"
" .loc 16 337 0\n"
" cvt.s32.s64 %r16, %rd21;\n"
" mul.lo.s32 %r17, %r16, %r15;\n"
" cvt.s64.s32 %rd26, %r17;\n"
" mul.wide.s32 %rd27, %r17, 4;\n"
" add.u64 %rd28, %rd24, %rd27;\n"
" .loc 16 338 0\n"
" mul.lo.s32 %r18, %r8, %r16;\n"
" cvt.s64.s32 %rd29, %r18;\n"
" mul.wide.s32 %rd30, %r18, 4;\n"
" add.u64 %rd31, %rd24, %rd30;\n"
" .loc 16 339 0\n"
" mul.lo.s32 %r19, %r16, %r4;\n"
" bra.uni $Lt_1_26626;\n"
"$Lt_1_26882:\n"
" .loc 16 341 0\n"
" ld.global.s32 %r20, [%rd24+0];\n"
" cvt.s64.s32 %rd32, %r20;\n"
" mul.wide.s32 %rd33, %r20, 4;\n"
" add.u64 %rd34, %rd25, %rd33;\n"
" .loc 16 342 0\n"
" cvt.s64.s32 %rd35, %r15;\n"
" mul.wide.s32 %rd36, %r15, 4;\n"
" add.u64 %rd28, %rd34, %rd36;\n"
" .loc 16 343 0\n"
" mov.s32 %r19, %r4;\n"
" .loc 16 344 0\n"
" cvt.s64.s32 %rd37, %r8;\n"
" mul.wide.s32 %rd38, %r8, 4;\n"
" add.u64 %rd31, %rd34, %rd38;\n"
"$Lt_1_26626:\n"
" .loc 16 347 0\n"
" mov.u32 %r21, %r13;\n"
" mov.s32 %r22, 0;\n"
" mov.u32 %r23, %r22;\n"
" mov.s32 %r24, 0;\n"
" mov.u32 %r25, %r24;\n"
" mov.s32 %r26, 0;\n"
" mov.u32 %r27, %r26;\n"
" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r21,%r23,%r25,%r27}];\n"
" mov.f32 %f26, %f22;\n"
" mov.f32 %f27, %f23;\n"
" mov.f32 %f28, %f24;\n"
" mov.f32 %f29, %f25;\n"
" .loc 16 348 0\n"
" mov.u32 %r28, %r13;\n"
" mov.s32 %r29, 0;\n"
" mov.u32 %r30, %r29;\n"
" mov.s32 %r31, 0;\n"
" mov.u32 %r32, %r31;\n"
" mov.s32 %r33, 0;\n"
" mov.u32 %r34, %r33;\n"
" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r28,%r30,%r32,%r34}];\n"
" mov.f32 %f34, %f30;\n"
" setp.ge.u64 %p5, %rd31, %rd28;\n"
" @%p5 bra $Lt_1_37890;\n"
" cvt.rzi.ftz.s32.f32 %r35, %f29;\n"
" cvt.s64.s32 %rd39, %r19;\n"
" mul.lo.s32 %r36, %r35, 11;\n"
" cvt.rn.f32.s32 %f35, %r36;\n"
" mov.f32 %f36, 0f00000000; \n"
" mov.f32 %f37, 0f00000000; \n"
" mov.f32 %f38, 0f00000000; \n"
" mov.f32 %f39, 0f00000000; \n"
" mov.f32 %f40, 0f00000000; \n"
"$Lt_1_27650:\n"
" .loc 16 353 0\n"
" ld.global.s32 %r37, [%rd31+0];\n"
" .loc 16 356 0\n"
" shr.s32 %r38, %r37, 30;\n"
" and.b32 %r39, %r38, 3;\n"
" cvt.s64.s32 %rd40, %r39;\n"
" mul.wide.s32 %rd41, %r39, 4;\n"
" add.u64 %rd42, %rd1, %rd41;\n"
" ld.shared.f32 %f41, [%rd42+0];\n"
" .loc 16 357 0\n"
" mov.f32 %f42, 0f3f800000; \n"
" ld.shared.f32 %f43, [%rd42+16];\n"
" sub.ftz.f32 %f44, %f42, %f43;\n"
" .loc 16 360 0\n"
" and.b32 %r40, %r37, 1073741823;\n"
" mov.u32 %r41, %r40;\n"
" mov.s32 %r42, 0;\n"
" mov.u32 %r43, %r42;\n"
" mov.s32 %r44, 0;\n"
" mov.u32 %r45, %r44;\n"
" mov.s32 %r46, 0;\n"
" mov.u32 %r47, %r46;\n"
" tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r41,%r43,%r45,%r47}];\n"
" mov.f32 %f49, %f45;\n"
" mov.f32 %f50, %f46;\n"
" mov.f32 %f51, %f47;\n"
" mov.f32 %f52, %f48;\n"
" sub.ftz.f32 %f53, %f27, %f50;\n"
" sub.ftz.f32 %f54, %f26, %f49;\n"
" sub.ftz.f32 %f55, %f28, %f51;\n"
" mul.ftz.f32 %f56, %f53, %f53;\n"
" fma.rn.ftz.f32 %f57, %f54, %f54, %f56;\n"
" fma.rn.ftz.f32 %f58, %f55, %f55, %f57;\n"
" add.ftz.f32 %f59, %f35, %f52;\n"
" cvt.rzi.ftz.s32.f32 %r48, %f59;\n"
" cvt.s64.s32 %rd43, %r48;\n"
" mul.wide.s32 %rd44, %r48, 16;\n"
" add.u64 %rd45, %rd44, %rd7;\n"
" ld.shared.f32 %f60, [%rd45+0];\n"
" setp.gt.ftz.f32 %p6, %f60, %f58;\n"
" @!%p6 bra $Lt_1_31490;\n"
" rcp.approx.ftz.f32 %f61, %f58;\n"
" ld.shared.f32 %f62, [%rd45+4];\n"
" setp.lt.ftz.f32 %p7, %f58, %f62;\n"
" @!%p7 bra $Lt_1_28674;\n"
" add.u64 %rd46, %rd44, %rd8;\n"
" ld.shared.f32 %f63, [%rd46+0];\n"
" mov.f32 %f64, 0f40000000; \n"
" setp.eq.ftz.f32 %p8, %f63, %f64;\n"
" @!%p8 bra $Lt_1_29186;\n"
" .loc 16 375 0\n"
" mul.ftz.f32 %f65, %f61, %f61;\n"
" mov.f32 %f66, %f65;\n"
" mov.f32 %f67, %f66;\n"
" .loc 16 376 0\n"
" mul.ftz.f32 %f68, %f65, %f65;\n"
" mov.f32 %f69, %f68;\n"
" bra.uni $Lt_1_29442;\n"
"$Lt_1_29186:\n"
" mov.f32 %f70, 0f3f800000; \n"
" setp.eq.ftz.f32 %p9, %f63, %f70;\n"
" @!%p9 bra $Lt_1_29698;\n"
" .loc 16 378 0\n"
" sqrt.approx.ftz.f32 %f71, %f61;\n"
" mul.ftz.f32 %f72, %f61, %f71;\n"
" mov.f32 %f68, %f72;\n"
" mov.f32 %f69, %f68;\n"
" .loc 16 379 0\n"
" mul.ftz.f32 %f66, %f72, %f72;\n"
" mov.f32 %f67, %f66;\n"
" bra.uni $Lt_1_29442;\n"
"$Lt_1_29698:\n"
" .loc 16 381 0\n"
" mul.ftz.f32 %f73, %f61, %f61;\n"
" mul.ftz.f32 %f74, %f61, %f73;\n"
" mov.f32 %f66, %f74;\n"
" mov.f32 %f67, %f66;\n"
" .loc 16 382 0\n"
" mov.f32 %f68, %f74;\n"
" mov.f32 %f69, %f68;\n"
"$Lt_1_29442:\n"
"$Lt_1_28930:\n"
" .loc 16 384 0\n"
" mul.ftz.f32 %f75, %f41, %f66;\n"
" ld.shared.v2.f32 {%f76,%f77}, [%rd45+8];\n"
" mul.ftz.f32 %f78, %f76, %f68;\n"
" sub.ftz.f32 %f79, %f78, %f77;\n"
" mul.ftz.f32 %f80, %f75, %f79;\n"
" bra.uni $Lt_1_28418;\n"
"$Lt_1_28674:\n"
" .loc 16 386 0\n"
" mov.f32 %f80, 0f00000000; \n"
"$Lt_1_28418:\n"
" ld.param.f32 %f81, [__cudaparm_kernel_pair_fast_cut_coulsq];\n"
" setp.gt.ftz.f32 %p10, %f81, %f58;\n"
" @!%p10 bra $Lt_1_30210;\n"
" .loc 16 393 0\n"
" sqrt.approx.ftz.f32 %f82, %f58;\n"
" ld.param.f32 %f83, [__cudaparm_kernel_pair_fast_g_ewald];\n"
" mul.ftz.f32 %f84, %f83, %f82;\n"
" mul.ftz.f32 %f85, %f84, %f84;\n"
" mov.f32 %f86, 0f3f800000; \n"
" mov.f32 %f87, 0f3ea7ba05; \n"
" fma.rn.ftz.f32 %f88, %f87, %f84, %f86;\n"
" neg.ftz.f32 %f89, %f85;\n"
" rcp.approx.ftz.f32 %f90, %f88;\n"
" mov.f32 %f91, 0f3fb8aa3b; \n"
" mul.ftz.f32 %f92, %f89, %f91;\n"
" ex2.approx.ftz.f32 %f93, %f92;\n"
" mov.f32 %f94, 0f3e827906; \n"
" mov.f32 %f95, 0fbe91a98e; \n"
" mov.f32 %f96, 0f3fb5f0e3; \n"
" mov.f32 %f97, 0fbfba00e3; \n"
" mov.f32 %f98, 0f3f87dc22; \n"
" fma.rn.ftz.f32 %f99, %f98, %f90, %f97;\n"
" fma.rn.ftz.f32 %f100, %f90, %f99, %f96;\n"
" fma.rn.ftz.f32 %f101, %f90, %f100, %f95;\n"
" fma.rn.ftz.f32 %f102, %f90, %f101, %f94;\n"
" mul.ftz.f32 %f103, %f90, %f102;\n"
" mul.ftz.f32 %f104, %f93, %f103;\n"
" mov.f32 %f105, %f104;\n"
" .loc 16 394 0\n"
" mov.u32 %r49, %r40;\n"
" mov.s32 %r50, 0;\n"
" mov.u32 %r51, %r50;\n"
" mov.s32 %r52, 0;\n"
" mov.u32 %r53, %r52;\n"
" mov.s32 %r54, 0;\n"
" mov.u32 %r55, %r54;\n"
" tex.1d.v4.f32.s32 {%f106,%f107,%f108,%f109},[q_tex,{%r49,%r51,%r53,%r55}];\n"
" mov.f32 %f110, %f106;\n"
" ld.param.f32 %f111, [__cudaparm_kernel_pair_fast_qqrd2e];\n"
" mul.ftz.f32 %f112, %f111, %f34;\n"
" mul.ftz.f32 %f113, %f112, %f110;\n"
" div.approx.ftz.f32 %f114, %f113, %f82;\n"
" mov.f32 %f115, %f114;\n"
" .loc 16 395 0\n"
" mov.f32 %f116, 0f3f906ebb; \n"
" mul.ftz.f32 %f117, %f84, %f116;\n"
" fma.rn.ftz.f32 %f118, %f93, %f117, %f104;\n"
" sub.ftz.f32 %f119, %f118, %f44;\n"
" mul.ftz.f32 %f120, %f114, %f119;\n"
" bra.uni $Lt_1_29954;\n"
"$Lt_1_30210:\n"
" .loc 16 397 0\n"
" mov.f32 %f120, 0f00000000; \n"
"$Lt_1_29954:\n"
" .loc 16 401 0\n"
" add.ftz.f32 %f121, %f120, %f80;\n"
" mul.ftz.f32 %f122, %f121, %f61;\n"
" fma.rn.ftz.f32 %f38, %f54, %f122, %f38;\n"
" .loc 16 402 0\n"
" fma.rn.ftz.f32 %f37, %f53, %f122, %f37;\n"
" .loc 16 403 0\n"
" fma.rn.ftz.f32 %f36, %f55, %f122, %f36;\n"
" ld.param.s32 %r56, [__cudaparm_kernel_pair_fast_eflag];\n"
" mov.u32 %r57, 0;\n"
" setp.le.s32 %p11, %r56, %r57;\n"
" @%p11 bra $Lt_1_30978;\n"
" .loc 16 406 0\n"
" mov.f32 %f123, %f115;\n"
" mov.f32 %f124, %f105;\n"
" sub.ftz.f32 %f125, %f124, %f44;\n"
" fma.rn.ftz.f32 %f126, %f123, %f125, %f39;\n"
" selp.f32 %f39, %f126, %f39, %p10;\n"
" @!%p7 bra $Lt_1_30978;\n"
" .loc 16 409 0\n"
" add.u64 %rd47, %rd44, %rd8;\n"
" ld.shared.v4.f32 {_,%f127,%f128,%f129}, [%rd47+0];\n"
" mov.f32 %f130, %f67;\n"
" mul.ftz.f32 %f131, %f130, %f41;\n"
" mov.f32 %f132, %f69;\n"
" mul.ftz.f32 %f133, %f127, %f132;\n"
" sub.ftz.f32 %f134, %f133, %f128;\n"
" mul.ftz.f32 %f135, %f131, %f134;\n"
" sub.ftz.f32 %f136, %f135, %f129;\n"
" add.ftz.f32 %f40, %f40, %f136;\n"
"$Lt_1_30978:\n"
"$Lt_1_30466:\n"
" ld.param.s32 %r58, [__cudaparm_kernel_pair_fast_vflag];\n"
" mov.u32 %r59, 0;\n"
" setp.le.s32 %p12, %r58, %r59;\n"
" @%p12 bra $Lt_1_31490;\n"
" .loc 16 414 0\n"
" mov.f32 %f137, %f11;\n"
" mul.ftz.f32 %f138, %f54, %f54;\n"
" fma.rn.ftz.f32 %f139, %f122, %f138, %f137;\n"
" mov.f32 %f11, %f139;\n"
" .loc 16 415 0\n"
" mov.f32 %f140, %f13;\n"
" fma.rn.ftz.f32 %f141, %f122, %f56, %f140;\n"
" mov.f32 %f13, %f141;\n"
" .loc 16 416 0\n"
" mov.f32 %f142, %f15;\n"
" mul.ftz.f32 %f143, %f55, %f55;\n"
" fma.rn.ftz.f32 %f144, %f122, %f143, %f142;\n"
" mov.f32 %f15, %f144;\n"
" .loc 16 417 0\n"
" mov.f32 %f145, %f17;\n"
" mul.ftz.f32 %f146, %f53, %f54;\n"
" fma.rn.ftz.f32 %f147, %f122, %f146, %f145;\n"
" mov.f32 %f17, %f147;\n"
" .loc 16 418 0\n"
" mov.f32 %f148, %f19;\n"
" mul.ftz.f32 %f149, %f54, %f55;\n"
" fma.rn.ftz.f32 %f150, %f122, %f149, %f148;\n"
" mov.f32 %f19, %f150;\n"
" .loc 16 419 0\n"
" mul.ftz.f32 %f151, %f53, %f55;\n"
" fma.rn.ftz.f32 %f20, %f122, %f151, %f20;\n"
" mov.f32 %f21, %f20;\n"
"$Lt_1_31490:\n"
"$Lt_1_27906:\n"
" .loc 16 352 0\n"
" mul.lo.u64 %rd48, %rd39, 4;\n"
" add.u64 %rd31, %rd31, %rd48;\n"
" setp.lt.u64 %p13, %rd31, %rd28;\n"
" @%p13 bra $Lt_1_27650;\n"
" bra.uni $Lt_1_26114;\n"
"$Lt_1_37890:\n"
" mov.f32 %f36, 0f00000000; \n"
" mov.f32 %f37, 0f00000000; \n"
" mov.f32 %f38, 0f00000000; \n"
" mov.f32 %f39, 0f00000000; \n"
" mov.f32 %f40, 0f00000000; \n"
" bra.uni $Lt_1_26114;\n"
"$Lt_1_26370:\n"
" mov.f32 %f36, 0f00000000; \n"
" mov.f32 %f37, 0f00000000; \n"
" mov.f32 %f38, 0f00000000; \n"
" mov.f32 %f39, 0f00000000; \n"
" mov.f32 %f40, 0f00000000; \n"
"$Lt_1_26114:\n"
" mov.u32 %r60, 1;\n"
" setp.le.s32 %p14, %r4, %r60;\n"
" @%p14 bra $Lt_1_34306;\n"
" .loc 16 430 0\n"
" mov.u64 %rd49, __cuda___cuda_local_var_32812_35_non_const_red_acc7232;\n"
" cvt.s64.s32 %rd50, %r1;\n"
" mul.wide.s32 %rd51, %r1, 4;\n"
" add.u64 %rd52, %rd49, %rd51;\n"
" mov.f32 %f152, %f38;\n"
" st.shared.f32 [%rd52+0], %f152;\n"
" .loc 16 431 0\n"
" mov.f32 %f153, %f37;\n"
" st.shared.f32 [%rd52+512], %f153;\n"
" .loc 16 432 0\n"
" mov.f32 %f154, %f36;\n"
" st.shared.f32 [%rd52+1024], %f154;\n"
" .loc 16 433 0\n"
" mov.f32 %f155, %f40;\n"
" st.shared.f32 [%rd52+1536], %f155;\n"
" .loc 16 434 0\n"
" mov.f32 %f156, %f39;\n"
" st.shared.f32 [%rd52+2048], %f156;\n"
" .loc 16 436 0\n"
" shr.s32 %r61, %r4, 31;\n"
" mov.s32 %r62, 1;\n"
" and.b32 %r63, %r61, %r62;\n"
" add.s32 %r64, %r63, %r4;\n"
" shr.s32 %r65, %r64, 1;\n"
" mov.s32 %r66, %r65;\n"
" mov.u32 %r67, 0;\n"
" setp.ne.u32 %p15, %r65, %r67;\n"
" @!%p15 bra $Lt_1_32770;\n"
"$Lt_1_33282:\n"
" setp.ge.u32 %p16, %r8, %r66;\n"
" @%p16 bra $Lt_1_33538;\n"
" .loc 16 439 0\n"
" add.u32 %r68, %r1, %r66;\n"
" cvt.u64.u32 %rd53, %r68;\n"
" mul.wide.u32 %rd54, %r68, 4;\n"
" add.u64 %rd55, %rd49, %rd54;\n"
" ld.shared.f32 %f157, [%rd55+0];\n"
" add.ftz.f32 %f152, %f157, %f152;\n"
" st.shared.f32 [%rd52+0], %f152;\n"
" ld.shared.f32 %f158, [%rd55+512];\n"
" add.ftz.f32 %f153, %f158, %f153;\n"
" st.shared.f32 [%rd52+512], %f153;\n"
" ld.shared.f32 %f159, [%rd55+1024];\n"
" add.ftz.f32 %f154, %f159, %f154;\n"
" st.shared.f32 [%rd52+1024], %f154;\n"
" ld.shared.f32 %f160, [%rd55+1536];\n"
" add.ftz.f32 %f155, %f160, %f155;\n"
" st.shared.f32 [%rd52+1536], %f155;\n"
" ld.shared.f32 %f161, [%rd55+2048];\n"
" add.ftz.f32 %f156, %f161, %f156;\n"
" st.shared.f32 [%rd52+2048], %f156;\n"
"$Lt_1_33538:\n"
" .loc 16 436 0\n"
" shr.u32 %r66, %r66, 1;\n"
" mov.u32 %r69, 0;\n"
" setp.ne.u32 %p17, %r66, %r69;\n"
" @%p17 bra $Lt_1_33282;\n"
"$Lt_1_32770:\n"
" .loc 16 443 0\n"
" mov.f32 %f38, %f152;\n"
" .loc 16 444 0\n"
" mov.f32 %f37, %f153;\n"
" .loc 16 445 0\n"
" mov.f32 %f36, %f154;\n"
" .loc 16 446 0\n"
" mov.f32 %f40, %f155;\n"
" .loc 16 447 0\n"
" mov.f32 %f39, %f156;\n"
" ld.param.s32 %r70, [__cudaparm_kernel_pair_fast_vflag];\n"
" mov.u32 %r71, 0;\n"
" setp.le.s32 %p18, %r70, %r71;\n"
" @%p18 bra $Lt_1_34306;\n"
" .loc 16 451 0\n"
" mov.f32 %f152, %f11;\n"
" st.shared.f32 [%rd52+0], %f152;\n"
" mov.f32 %f153, %f13;\n"
" st.shared.f32 [%rd52+512], %f153;\n"
" mov.f32 %f154, %f15;\n"
" st.shared.f32 [%rd52+1024], %f154;\n"
" mov.f32 %f155, %f17;\n"
" st.shared.f32 [%rd52+1536], %f155;\n"
" mov.f32 %f156, %f19;\n"
" st.shared.f32 [%rd52+2048], %f156;\n"
" mov.f32 %f162, %f21;\n"
" st.shared.f32 [%rd52+2560], %f162;\n"
" .loc 16 453 0\n"
" mov.s32 %r72, %r65;\n"
" @!%p15 bra $Lt_1_34818;\n"
"$Lt_1_35330:\n"
" setp.ge.u32 %p19, %r8, %r72;\n"
" @%p19 bra $Lt_1_35586;\n"
" .loc 16 456 0\n"
" add.u32 %r73, %r1, %r72;\n"
" cvt.u64.u32 %rd56, %r73;\n"
" mul.wide.u32 %rd57, %r73, 4;\n"
" add.u64 %rd58, %rd49, %rd57;\n"
" ld.shared.f32 %f163, [%rd58+0];\n"
" add.ftz.f32 %f152, %f163, %f152;\n"
" st.shared.f32 [%rd52+0], %f152;\n"
" ld.shared.f32 %f164, [%rd58+512];\n"
" add.ftz.f32 %f153, %f164, %f153;\n"
" st.shared.f32 [%rd52+512], %f153;\n"
" ld.shared.f32 %f165, [%rd58+1024];\n"
" add.ftz.f32 %f154, %f165, %f154;\n"
" st.shared.f32 [%rd52+1024], %f154;\n"
" ld.shared.f32 %f166, [%rd58+1536];\n"
" add.ftz.f32 %f155, %f166, %f155;\n"
" st.shared.f32 [%rd52+1536], %f155;\n"
" ld.shared.f32 %f167, [%rd58+2048];\n"
" add.ftz.f32 %f156, %f167, %f156;\n"
" st.shared.f32 [%rd52+2048], %f156;\n"
" ld.shared.f32 %f168, [%rd58+2560];\n"
" add.ftz.f32 %f162, %f168, %f162;\n"
" st.shared.f32 [%rd52+2560], %f162;\n"
"$Lt_1_35586:\n"
" .loc 16 453 0\n"
" shr.u32 %r72, %r72, 1;\n"
" mov.u32 %r74, 0;\n"
" setp.ne.u32 %p20, %r72, %r74;\n"
" @%p20 bra $Lt_1_35330;\n"
"$Lt_1_34818:\n"
" .loc 16 461 0\n"
" mov.f32 %f11, %f152;\n"
" mov.f32 %f13, %f153;\n"
" mov.f32 %f15, %f154;\n"
" mov.f32 %f17, %f155;\n"
" mov.f32 %f19, %f156;\n"
" mov.f32 %f21, %f162;\n"
"$Lt_1_34306:\n"
"$Lt_1_32258:\n"
" selp.s32 %r75, 1, 0, %p3;\n"
" mov.s32 %r76, 0;\n"
" set.eq.u32.s32 %r77, %r8, %r76;\n"
" neg.s32 %r78, %r77;\n"
" and.b32 %r79, %r75, %r78;\n"
" mov.u32 %r80, 0;\n"
" setp.eq.s32 %p21, %r79, %r80;\n"
" @%p21 bra $Lt_1_36354;\n"
" .loc 16 467 0\n"
" cvt.s64.s32 %rd59, %r11;\n"
" ld.param.u64 %rd60, [__cudaparm_kernel_pair_fast_engv];\n"
" mul.wide.s32 %rd61, %r11, 4;\n"
" add.u64 %rd62, %rd60, %rd61;\n"
" ld.param.s32 %r81, [__cudaparm_kernel_pair_fast_eflag];\n"
" mov.u32 %r82, 0;\n"
" setp.le.s32 %p22, %r81, %r82;\n"
" @%p22 bra $Lt_1_36866;\n"
" .loc 16 469 0\n"
" st.global.f32 [%rd62+0], %f40;\n"
" .loc 16 470 0\n"
" cvt.s64.s32 %rd63, %r12;\n"
" mul.wide.s32 %rd64, %r12, 4;\n"
" add.u64 %rd65, %rd64, %rd62;\n"
" .loc 16 471 0\n"
" st.global.f32 [%rd65+0], %f39;\n"
" .loc 16 472 0\n"
" add.u64 %rd62, %rd64, %rd65;\n"
"$Lt_1_36866:\n"
" ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_vflag];\n"
" mov.u32 %r84, 0;\n"
" setp.le.s32 %p23, %r83, %r84;\n"
" @%p23 bra $Lt_1_37378;\n"
" .loc 16 476 0\n"
" mov.f32 %f169, %f11;\n"
" st.global.f32 [%rd62+0], %f169;\n"
" .loc 16 477 0\n"
" cvt.s64.s32 %rd66, %r12;\n"
" mul.wide.s32 %rd67, %r12, 4;\n"
" add.u64 %rd68, %rd67, %rd62;\n"
" .loc 16 476 0\n"
" mov.f32 %f170, %f13;\n"
" st.global.f32 [%rd68+0], %f170;\n"
" .loc 16 477 0\n"
" add.u64 %rd69, %rd67, %rd68;\n"
" .loc 16 476 0\n"
" mov.f32 %f171, %f15;\n"
" st.global.f32 [%rd69+0], %f171;\n"
" .loc 16 477 0\n"
" add.u64 %rd70, %rd67, %rd69;\n"
" .loc 16 476 0\n"
" mov.f32 %f172, %f17;\n"
" st.global.f32 [%rd70+0], %f172;\n"
" .loc 16 477 0\n"
" add.u64 %rd62, %rd67, %rd70;\n"
" .loc 16 476 0\n"
" mov.f32 %f173, %f19;\n"
" st.global.f32 [%rd62+0], %f173;\n"
" mov.f32 %f174, %f21;\n"
" add.u64 %rd71, %rd67, %rd62;\n"
" st.global.f32 [%rd71+0], %f174;\n"
"$Lt_1_37378:\n"
" .loc 16 480 0\n"
" ld.param.u64 %rd72, [__cudaparm_kernel_pair_fast_ans];\n"
" mul.lo.u64 %rd73, %rd59, 16;\n"
" add.u64 %rd74, %rd72, %rd73;\n"
" mov.f32 %f175, %f176;\n"
" st.global.v4.f32 [%rd74+0], {%f38,%f37,%f36,%f175};\n"
"$Lt_1_36354:\n"
" .loc 16 482 0\n"
" exit;\n"
"$LDWend_kernel_pair_fast:\n"
" }\n"
;