forked from lijiext/lammps
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@6070 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
bf6bb59386
commit
c91cf5f623
|
@ -1,627 +0,0 @@
|
|||
const char * cmm_cut_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_nbor_pitch)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<33>;\n"
|
||||
" .reg .u64 %rd<36>;\n"
|
||||
" .reg .f32 %f<95>;\n"
|
||||
" .reg .pred %p<10>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj84[16];\n"
|
||||
" .loc 14 87 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 91 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+0], %f1;\n"
|
||||
" .loc 14 92 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+4], %f2;\n"
|
||||
" .loc 14 93 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+8], %f3;\n"
|
||||
" .loc 14 94 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+12], %f4;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_9474;\n"
|
||||
" .loc 14 105 0\n"
|
||||
" mov.f32 %f5, 0f00000000; \n"
|
||||
" mov.f32 %f6, %f5;\n"
|
||||
" mov.f32 %f7, 0f00000000; \n"
|
||||
" mov.f32 %f8, %f7;\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"
|
||||
" .loc 14 108 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 110 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 111 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 114 0\n"
|
||||
" mov.f32 %f21, %f17;\n"
|
||||
" mov.f32 %f22, %f18;\n"
|
||||
" mov.f32 %f23, %f19;\n"
|
||||
" mov.f32 %f24, %f20;\n"
|
||||
" mul24.lo.s32 %r14, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r14;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r15, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r16, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\n"
|
||||
" mov.f32 %f25, 0f00000000; \n"
|
||||
" mov.f32 %f26, 0f00000000; \n"
|
||||
" mov.f32 %f27, 0f00000000; \n"
|
||||
" mov.f32 %f28, 0f00000000; \n"
|
||||
" @%p2 bra $Lt_0_14594;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" setp.gt.s32 %p3, %r16, %r17;\n"
|
||||
" mov.s32 %r18, 0;\n"
|
||||
" setp.gt.s32 %p4, %r15, %r18;\n"
|
||||
" cvt.rzi.s32.f32 %r19, %f24;\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r21, %r20, %r19;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" mov.u64 %rd15, __cuda_sp_lj84;\n"
|
||||
"$Lt_0_10498:\n"
|
||||
" .loc 14 120 0\n"
|
||||
" ld.global.s32 %r22, [%rd10+0];\n"
|
||||
" .loc 14 121 0\n"
|
||||
" shr.s32 %r23, %r22, 30;\n"
|
||||
" cvt.s64.s32 %rd16, %r23;\n"
|
||||
" and.b64 %rd17, %rd16, 3;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd15, %rd18;\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" and.b32 %r24, %r22, 1073741823;\n"
|
||||
" mov.s32 %r25, 0;\n"
|
||||
" mov.s32 %r26, 0;\n"
|
||||
" mov.s32 %r27, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r24,%r25,%r26,%r27}];\n"
|
||||
" .loc 14 124 0\n"
|
||||
" mov.f32 %f34, %f30;\n"
|
||||
" mov.f32 %f35, %f31;\n"
|
||||
" mov.f32 %f36, %f32;\n"
|
||||
" mov.f32 %f37, %f33;\n"
|
||||
" cvt.rzi.s32.f32 %r28, %f37;\n"
|
||||
" sub.f32 %f38, %f22, %f35;\n"
|
||||
" sub.f32 %f39, %f21, %f34;\n"
|
||||
" sub.f32 %f40, %f23, %f36;\n"
|
||||
" mul.f32 %f41, %f38, %f38;\n"
|
||||
" mad.f32 %f42, %f39, %f39, %f41;\n"
|
||||
" mad.f32 %f43, %f40, %f40, %f42;\n"
|
||||
" add.s32 %r29, %r28, %r21;\n"
|
||||
" cvt.u64.s32 %rd20, %r29;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 16;\n"
|
||||
" add.u64 %rd22, %rd21, %rd14;\n"
|
||||
" ld.global.f32 %f44, [%rd22+0];\n"
|
||||
" setp.gt.f32 %p5, %f44, %f43;\n"
|
||||
" @!%p5 bra $Lt_0_12802;\n"
|
||||
" rcp.approx.f32 %f45, %f43;\n"
|
||||
" ld.global.f32 %f46, [%rd22+4];\n"
|
||||
" mov.f32 %f47, 0f40000000; \n"
|
||||
" setp.eq.f32 %p6, %f46, %f47;\n"
|
||||
" @!%p6 bra $Lt_0_11522;\n"
|
||||
" .loc 14 139 0\n"
|
||||
" mul.f32 %f48, %f45, %f45;\n"
|
||||
" mov.f32 %f49, %f48;\n"
|
||||
" .loc 14 140 0\n"
|
||||
" mul.f32 %f50, %f48, %f48;\n"
|
||||
" bra.uni $Lt_0_11778;\n"
|
||||
"$Lt_0_11522:\n"
|
||||
" mov.f32 %f51, 0f3f800000; \n"
|
||||
" setp.eq.f32 %p7, %f46, %f51;\n"
|
||||
" @!%p7 bra $Lt_0_12034;\n"
|
||||
" .loc 14 142 0\n"
|
||||
" sqrt.approx.f32 %f52, %f45;\n"
|
||||
" mul.f32 %f53, %f45, %f52;\n"
|
||||
" mov.f32 %f50, %f53;\n"
|
||||
" .loc 14 143 0\n"
|
||||
" mul.f32 %f49, %f53, %f53;\n"
|
||||
" bra.uni $Lt_0_11778;\n"
|
||||
"$Lt_0_12034:\n"
|
||||
" .loc 14 145 0\n"
|
||||
" mul.f32 %f54, %f45, %f45;\n"
|
||||
" mul.f32 %f55, %f45, %f54;\n"
|
||||
" mov.f32 %f49, %f55;\n"
|
||||
" .loc 14 146 0\n"
|
||||
" mov.f32 %f50, %f55;\n"
|
||||
"$Lt_0_11778:\n"
|
||||
"$Lt_0_11266:\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" .loc 14 148 0\n"
|
||||
" mul.f32 %f56, %f45, %f29;\n"
|
||||
" mul.f32 %f57, %f49, %f56;\n"
|
||||
" ld.global.v2.f32 {%f58,%f59}, [%rd22+8];\n"
|
||||
" mul.f32 %f60, %f58, %f50;\n"
|
||||
" sub.f32 %f61, %f60, %f59;\n"
|
||||
" mul.f32 %f62, %f57, %f61;\n"
|
||||
" .loc 14 150 0\n"
|
||||
" mad.f32 %f27, %f39, %f62, %f27;\n"
|
||||
" .loc 14 151 0\n"
|
||||
" mad.f32 %f26, %f38, %f62, %f26;\n"
|
||||
" .loc 14 152 0\n"
|
||||
" mad.f32 %f25, %f40, %f62, %f25;\n"
|
||||
" @!%p3 bra $Lt_0_12290;\n"
|
||||
" .loc 14 154 0\n"
|
||||
" ld.param.u64 %rd23, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd24, %rd23, %rd21;\n"
|
||||
" ld.global.v4.f32 {%f63,%f64,%f65,_}, [%rd24+0];\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" .loc 14 154 0\n"
|
||||
" mul.f32 %f66, %f29, %f49;\n"
|
||||
" mul.f32 %f67, %f63, %f50;\n"
|
||||
" sub.f32 %f68, %f67, %f64;\n"
|
||||
" mul.f32 %f69, %f66, %f68;\n"
|
||||
" sub.f32 %f70, %f69, %f65;\n"
|
||||
" add.f32 %f28, %f28, %f70;\n"
|
||||
"$Lt_0_12290:\n"
|
||||
" @!%p4 bra $Lt_0_12802;\n"
|
||||
" .loc 14 157 0\n"
|
||||
" mov.f32 %f71, %f6;\n"
|
||||
" mul.f32 %f72, %f39, %f39;\n"
|
||||
" mad.f32 %f73, %f62, %f72, %f71;\n"
|
||||
" mov.f32 %f6, %f73;\n"
|
||||
" .loc 14 158 0\n"
|
||||
" mov.f32 %f74, %f8;\n"
|
||||
" mad.f32 %f75, %f62, %f41, %f74;\n"
|
||||
" mov.f32 %f8, %f75;\n"
|
||||
" .loc 14 159 0\n"
|
||||
" mov.f32 %f76, %f10;\n"
|
||||
" mul.f32 %f77, %f40, %f40;\n"
|
||||
" mad.f32 %f78, %f62, %f77, %f76;\n"
|
||||
" mov.f32 %f10, %f78;\n"
|
||||
" .loc 14 160 0\n"
|
||||
" mov.f32 %f79, %f12;\n"
|
||||
" mul.f32 %f80, %f38, %f39;\n"
|
||||
" mad.f32 %f81, %f62, %f80, %f79;\n"
|
||||
" mov.f32 %f12, %f81;\n"
|
||||
" .loc 14 161 0\n"
|
||||
" mov.f32 %f82, %f14;\n"
|
||||
" mul.f32 %f83, %f39, %f40;\n"
|
||||
" mad.f32 %f84, %f62, %f83, %f82;\n"
|
||||
" mov.f32 %f14, %f84;\n"
|
||||
" .loc 14 162 0\n"
|
||||
" mul.f32 %f85, %f38, %f40;\n"
|
||||
" mad.f32 %f15, %f62, %f85, %f15;\n"
|
||||
" mov.f32 %f86, %f15;\n"
|
||||
"$Lt_0_12802:\n"
|
||||
"$Lt_0_10754:\n"
|
||||
" .loc 14 118 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p8, %rd13, %rd10;\n"
|
||||
" @%p8 bra $Lt_0_10498;\n"
|
||||
" bra.uni $Lt_0_9986;\n"
|
||||
"$Lt_0_14594:\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" setp.gt.s32 %p3, %r16, %r30;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" setp.gt.s32 %p4, %r15, %r31;\n"
|
||||
"$Lt_0_9986:\n"
|
||||
" .loc 14 169 0\n"
|
||||
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd26, %rd25, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_13570;\n"
|
||||
" .loc 14 171 0\n"
|
||||
" st.global.f32 [%rd26+0], %f28;\n"
|
||||
" .loc 14 172 0\n"
|
||||
" cvt.u64.s32 %rd27, %r6;\n"
|
||||
" mul.lo.u64 %rd28, %rd27, 4;\n"
|
||||
" add.u64 %rd26, %rd26, %rd28;\n"
|
||||
"$Lt_0_13570:\n"
|
||||
" @!%p4 bra $Lt_0_14082;\n"
|
||||
" .loc 14 176 0\n"
|
||||
" mov.f32 %f87, %f6;\n"
|
||||
" st.global.f32 [%rd26+0], %f87;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" cvt.u64.s32 %rd29, %r6;\n"
|
||||
" mul.lo.u64 %rd30, %rd29, 4;\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 176 0\n"
|
||||
" mov.f32 %f88, %f8;\n"
|
||||
" st.global.f32 [%rd26+0], %f88;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 176 0\n"
|
||||
" mov.f32 %f89, %f10;\n"
|
||||
" st.global.f32 [%rd26+0], %f89;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 176 0\n"
|
||||
" mov.f32 %f90, %f12;\n"
|
||||
" st.global.f32 [%rd26+0], %f90;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 176 0\n"
|
||||
" mov.f32 %f91, %f14;\n"
|
||||
" st.global.f32 [%rd26+0], %f91;\n"
|
||||
" add.u64 %rd31, %rd30, %rd26;\n"
|
||||
" st.global.f32 [%rd31+0], %f15;\n"
|
||||
"$Lt_0_14082:\n"
|
||||
" .loc 14 180 0\n"
|
||||
" ld.param.u64 %rd32, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd33, %rd2, 16;\n"
|
||||
" add.u64 %rd34, %rd32, %rd33;\n"
|
||||
" mov.f32 %f92, %f93;\n"
|
||||
" st.global.v4.f32 [%rd34+0], {%f27,%f26,%f25,%f92};\n"
|
||||
"$Lt_0_9474:\n"
|
||||
" .loc 14 182 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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<36>;\n"
|
||||
" .reg .u64 %rd<48>;\n"
|
||||
" .reg .f32 %f<102>;\n"
|
||||
" .reg .pred %p<13>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj180[16];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj1208[1024];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj31232[1024];\n"
|
||||
" .loc 14 189 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" mov.u32 %r2, 3;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_11778;\n"
|
||||
" .loc 14 196 0\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj180;\n"
|
||||
" cvt.u64.s32 %rd2, %r1;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 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_11778:\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj180;\n"
|
||||
" mov.u32 %r3, 63;\n"
|
||||
" setp.gt.s32 %p2, %r1, %r3;\n"
|
||||
" @%p2 bra $Lt_1_12290;\n"
|
||||
" .loc 14 198 0\n"
|
||||
" mov.u64 %rd7, __cuda_lj1208;\n"
|
||||
" cvt.u64.s32 %rd8, %r1;\n"
|
||||
" mul.lo.u64 %rd9, %rd8, 16;\n"
|
||||
" ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in];\n"
|
||||
" add.u64 %rd11, %rd10, %rd9;\n"
|
||||
" add.u64 %rd12, %rd9, %rd7;\n"
|
||||
" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0];\n"
|
||||
" st.shared.f32 [%rd12+0], %f2;\n"
|
||||
" st.shared.f32 [%rd12+4], %f3;\n"
|
||||
" st.shared.f32 [%rd12+8], %f4;\n"
|
||||
" st.shared.f32 [%rd12+12], %f5;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" mov.u32 %r5, 0;\n"
|
||||
" setp.le.s32 %p3, %r4, %r5;\n"
|
||||
" @%p3 bra $Lt_1_12802;\n"
|
||||
" .loc 14 200 0\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in];\n"
|
||||
" add.u64 %rd15, %rd14, %rd9;\n"
|
||||
" add.u64 %rd16, %rd9, %rd13;\n"
|
||||
" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0];\n"
|
||||
" st.shared.f32 [%rd16+0], %f6;\n"
|
||||
" st.shared.f32 [%rd16+4], %f7;\n"
|
||||
" st.shared.f32 [%rd16+8], %f8;\n"
|
||||
" st.shared.f32 [%rd16+12], %f9;\n"
|
||||
"$Lt_1_12802:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
"$Lt_1_12290:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
" mov.u64 %rd7, __cuda_lj1208;\n"
|
||||
" .loc 14 203 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r6, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r7, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r8, %r6, %r7;\n"
|
||||
" add.s32 %r9, %r8, %r1;\n"
|
||||
" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p4, %r9, %r10;\n"
|
||||
" @%p4 bra $Lt_1_13314;\n"
|
||||
" .loc 14 214 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 14 217 0\n"
|
||||
" cvt.u64.s32 %rd17, %r9;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd20, %rd19, %rd18;\n"
|
||||
" ld.global.s32 %r11, [%rd20+0];\n"
|
||||
" .loc 14 219 0\n"
|
||||
" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd21, %r12;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd20, %rd22;\n"
|
||||
" ld.global.s32 %r13, [%rd23+0];\n"
|
||||
" .loc 14 220 0\n"
|
||||
" add.u64 %rd24, %rd23, %rd22;\n"
|
||||
" mov.s64 %rd25, %rd24;\n"
|
||||
" mov.s32 %r14, %r11;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 223 0\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.f32 %f29, %f25;\n"
|
||||
" mul24.lo.s32 %r18, %r13, %r12;\n"
|
||||
" cvt.s64.s32 %rd26, %r18;\n"
|
||||
" mul.lo.u64 %rd27, %rd26, 4;\n"
|
||||
" add.u64 %rd28, %rd24, %rd27;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p5, %rd24, %rd28;\n"
|
||||
" mov.f32 %f30, 0f00000000; \n"
|
||||
" mov.f32 %f31, 0f00000000; \n"
|
||||
" mov.f32 %f32, 0f00000000; \n"
|
||||
" mov.f32 %f33, 0f00000000; \n"
|
||||
" @%p5 bra $Lt_1_18434;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p6, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p7, %r19, %r22;\n"
|
||||
" cvt.rzi.s32.f32 %r23, %f29;\n"
|
||||
" mov.s32 %r24, 8;\n"
|
||||
" mul24.lo.s32 %r25, %r24, %r23;\n"
|
||||
" cvt.rn.f32.s32 %f34, %r25;\n"
|
||||
"$Lt_1_14338:\n"
|
||||
" .loc 14 230 0\n"
|
||||
" ld.global.s32 %r26, [%rd25+0];\n"
|
||||
" .loc 14 231 0\n"
|
||||
" shr.s32 %r27, %r26, 30;\n"
|
||||
" cvt.s64.s32 %rd29, %r27;\n"
|
||||
" and.b64 %rd30, %rd29, 3;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd32, %rd1, %rd31;\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" and.b32 %r28, %r26, 1073741823;\n"
|
||||
" mov.s32 %r29, 0;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r28,%r29,%r30,%r31}];\n"
|
||||
" .loc 14 234 0\n"
|
||||
" mov.f32 %f40, %f36;\n"
|
||||
" mov.f32 %f41, %f37;\n"
|
||||
" mov.f32 %f42, %f38;\n"
|
||||
" mov.f32 %f43, %f39;\n"
|
||||
" sub.f32 %f44, %f27, %f41;\n"
|
||||
" sub.f32 %f45, %f26, %f40;\n"
|
||||
" sub.f32 %f46, %f28, %f42;\n"
|
||||
" mul.f32 %f47, %f44, %f44;\n"
|
||||
" mad.f32 %f48, %f45, %f45, %f47;\n"
|
||||
" mad.f32 %f49, %f46, %f46, %f48;\n"
|
||||
" add.f32 %f50, %f34, %f43;\n"
|
||||
" cvt.rzi.s32.f32 %r32, %f50;\n"
|
||||
" cvt.u64.s32 %rd33, %r32;\n"
|
||||
" mul.lo.u64 %rd34, %rd33, 16;\n"
|
||||
" add.u64 %rd35, %rd34, %rd7;\n"
|
||||
" ld.shared.f32 %f51, [%rd35+0];\n"
|
||||
" setp.gt.f32 %p8, %f51, %f49;\n"
|
||||
" @!%p8 bra $Lt_1_16642;\n"
|
||||
" rcp.approx.f32 %f52, %f49;\n"
|
||||
" ld.shared.f32 %f53, [%rd35+4];\n"
|
||||
" mov.f32 %f54, 0f40000000; \n"
|
||||
" setp.eq.f32 %p9, %f53, %f54;\n"
|
||||
" @!%p9 bra $Lt_1_15362;\n"
|
||||
" .loc 14 248 0\n"
|
||||
" mul.f32 %f55, %f52, %f52;\n"
|
||||
" mov.f32 %f56, %f55;\n"
|
||||
" .loc 14 249 0\n"
|
||||
" mul.f32 %f57, %f55, %f55;\n"
|
||||
" bra.uni $Lt_1_15618;\n"
|
||||
"$Lt_1_15362:\n"
|
||||
" mov.f32 %f58, 0f3f800000; \n"
|
||||
" .loc 14 234 0\n"
|
||||
" ld.shared.f32 %f53, [%rd35+4];\n"
|
||||
" .loc 14 249 0\n"
|
||||
" setp.eq.f32 %p10, %f53, %f58;\n"
|
||||
" @!%p10 bra $Lt_1_15874;\n"
|
||||
" .loc 14 251 0\n"
|
||||
" sqrt.approx.f32 %f59, %f52;\n"
|
||||
" mul.f32 %f60, %f52, %f59;\n"
|
||||
" mov.f32 %f57, %f60;\n"
|
||||
" .loc 14 252 0\n"
|
||||
" mul.f32 %f56, %f60, %f60;\n"
|
||||
" bra.uni $Lt_1_15618;\n"
|
||||
"$Lt_1_15874:\n"
|
||||
" .loc 14 254 0\n"
|
||||
" mul.f32 %f61, %f52, %f52;\n"
|
||||
" mul.f32 %f62, %f52, %f61;\n"
|
||||
" mov.f32 %f56, %f62;\n"
|
||||
" .loc 14 255 0\n"
|
||||
" mov.f32 %f57, %f62;\n"
|
||||
"$Lt_1_15618:\n"
|
||||
"$Lt_1_15106:\n"
|
||||
" .loc 14 231 0\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" .loc 14 257 0\n"
|
||||
" mul.f32 %f63, %f52, %f35;\n"
|
||||
" mul.f32 %f64, %f56, %f63;\n"
|
||||
" ld.shared.f32 %f65, [%rd35+12];\n"
|
||||
" ld.shared.f32 %f66, [%rd35+8];\n"
|
||||
" mul.f32 %f67, %f66, %f57;\n"
|
||||
" sub.f32 %f68, %f67, %f65;\n"
|
||||
" mul.f32 %f69, %f64, %f68;\n"
|
||||
" .loc 14 259 0\n"
|
||||
" mad.f32 %f32, %f45, %f69, %f32;\n"
|
||||
" .loc 14 260 0\n"
|
||||
" mad.f32 %f31, %f44, %f69, %f31;\n"
|
||||
" .loc 14 261 0\n"
|
||||
" mad.f32 %f30, %f46, %f69, %f30;\n"
|
||||
" @!%p6 bra $Lt_1_16130;\n"
|
||||
" .loc 14 263 0\n"
|
||||
" add.u64 %rd36, %rd34, %rd13;\n"
|
||||
" ld.shared.f32 %f70, [%rd36+8];\n"
|
||||
" .loc 14 231 0\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" .loc 14 263 0\n"
|
||||
" mul.f32 %f71, %f35, %f56;\n"
|
||||
" ld.shared.f32 %f72, [%rd36+4];\n"
|
||||
" ld.shared.f32 %f73, [%rd36+0];\n"
|
||||
" mul.f32 %f74, %f73, %f57;\n"
|
||||
" sub.f32 %f75, %f74, %f72;\n"
|
||||
" mul.f32 %f76, %f71, %f75;\n"
|
||||
" sub.f32 %f77, %f76, %f70;\n"
|
||||
" add.f32 %f33, %f33, %f77;\n"
|
||||
"$Lt_1_16130:\n"
|
||||
" @!%p7 bra $Lt_1_16642;\n"
|
||||
" .loc 14 266 0\n"
|
||||
" mov.f32 %f78, %f11;\n"
|
||||
" mul.f32 %f79, %f45, %f45;\n"
|
||||
" mad.f32 %f80, %f69, %f79, %f78;\n"
|
||||
" mov.f32 %f11, %f80;\n"
|
||||
" .loc 14 267 0\n"
|
||||
" mov.f32 %f81, %f13;\n"
|
||||
" mad.f32 %f82, %f69, %f47, %f81;\n"
|
||||
" mov.f32 %f13, %f82;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f83, %f15;\n"
|
||||
" mul.f32 %f84, %f46, %f46;\n"
|
||||
" mad.f32 %f85, %f69, %f84, %f83;\n"
|
||||
" mov.f32 %f15, %f85;\n"
|
||||
" .loc 14 269 0\n"
|
||||
" mov.f32 %f86, %f17;\n"
|
||||
" mul.f32 %f87, %f44, %f45;\n"
|
||||
" mad.f32 %f88, %f69, %f87, %f86;\n"
|
||||
" mov.f32 %f17, %f88;\n"
|
||||
" .loc 14 270 0\n"
|
||||
" mov.f32 %f89, %f19;\n"
|
||||
" mul.f32 %f90, %f45, %f46;\n"
|
||||
" mad.f32 %f91, %f69, %f90, %f89;\n"
|
||||
" mov.f32 %f19, %f91;\n"
|
||||
" .loc 14 271 0\n"
|
||||
" mul.f32 %f92, %f44, %f46;\n"
|
||||
" mad.f32 %f20, %f69, %f92, %f20;\n"
|
||||
" mov.f32 %f93, %f20;\n"
|
||||
"$Lt_1_16642:\n"
|
||||
"$Lt_1_14594:\n"
|
||||
" .loc 14 228 0\n"
|
||||
" add.u64 %rd25, %rd22, %rd25;\n"
|
||||
" setp.gt.u64 %p11, %rd28, %rd25;\n"
|
||||
" @%p11 bra $Lt_1_14338;\n"
|
||||
" bra.uni $Lt_1_13826;\n"
|
||||
"$Lt_1_18434:\n"
|
||||
" mov.s32 %r33, 0;\n"
|
||||
" setp.gt.s32 %p6, %r20, %r33;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" setp.gt.s32 %p7, %r19, %r34;\n"
|
||||
"$Lt_1_13826:\n"
|
||||
" .loc 14 278 0\n"
|
||||
" ld.param.u64 %rd37, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd38, %rd37, %rd18;\n"
|
||||
" @!%p6 bra $Lt_1_17410;\n"
|
||||
" .loc 14 280 0\n"
|
||||
" st.global.f32 [%rd38+0], %f33;\n"
|
||||
" .loc 14 281 0\n"
|
||||
" cvt.u64.s32 %rd39, %r10;\n"
|
||||
" mul.lo.u64 %rd40, %rd39, 4;\n"
|
||||
" add.u64 %rd38, %rd38, %rd40;\n"
|
||||
"$Lt_1_17410:\n"
|
||||
" @!%p7 bra $Lt_1_17922;\n"
|
||||
" .loc 14 285 0\n"
|
||||
" mov.f32 %f94, %f11;\n"
|
||||
" st.global.f32 [%rd38+0], %f94;\n"
|
||||
" .loc 14 286 0\n"
|
||||
" cvt.u64.s32 %rd41, %r10;\n"
|
||||
" mul.lo.u64 %rd42, %rd41, 4;\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 285 0\n"
|
||||
" mov.f32 %f95, %f13;\n"
|
||||
" st.global.f32 [%rd38+0], %f95;\n"
|
||||
" .loc 14 286 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 285 0\n"
|
||||
" mov.f32 %f96, %f15;\n"
|
||||
" st.global.f32 [%rd38+0], %f96;\n"
|
||||
" .loc 14 286 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 285 0\n"
|
||||
" mov.f32 %f97, %f17;\n"
|
||||
" st.global.f32 [%rd38+0], %f97;\n"
|
||||
" .loc 14 286 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 285 0\n"
|
||||
" mov.f32 %f98, %f19;\n"
|
||||
" st.global.f32 [%rd38+0], %f98;\n"
|
||||
" add.u64 %rd43, %rd42, %rd38;\n"
|
||||
" st.global.f32 [%rd43+0], %f20;\n"
|
||||
"$Lt_1_17922:\n"
|
||||
" .loc 14 289 0\n"
|
||||
" ld.param.u64 %rd44, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd45, %rd17, 16;\n"
|
||||
" add.u64 %rd46, %rd44, %rd45;\n"
|
||||
" mov.f32 %f99, %f100;\n"
|
||||
" st.global.v4.f32 [%rd46+0], {%f32,%f31,%f30,%f99};\n"
|
||||
"$Lt_1_13314:\n"
|
||||
" .loc 14 291 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,829 +0,0 @@
|
|||
const char * cmmc_long_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_tex;\n"
|
||||
" .tex .u64 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_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_nall,\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"
|
||||
" {\n"
|
||||
" .reg .u32 %r<42>;\n"
|
||||
" .reg .u64 %rd<38>;\n"
|
||||
" .reg .f32 %f<156>;\n"
|
||||
" .reg .pred %p<12>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj108[32];\n"
|
||||
" .loc 14 107 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 111 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+0], %f1;\n"
|
||||
" .loc 14 112 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+4], %f2;\n"
|
||||
" .loc 14 113 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+8], %f3;\n"
|
||||
" .loc 14 114 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+12], %f4;\n"
|
||||
" .loc 14 115 0\n"
|
||||
" ld.global.f32 %f5, [%rd1+16];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+16], %f5;\n"
|
||||
" .loc 14 116 0\n"
|
||||
" ld.global.f32 %f6, [%rd1+20];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+20], %f6;\n"
|
||||
" .loc 14 117 0\n"
|
||||
" ld.global.f32 %f7, [%rd1+24];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+24], %f7;\n"
|
||||
" .loc 14 118 0\n"
|
||||
" ld.global.f32 %f8, [%rd1+28];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+28], %f8;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_11778;\n"
|
||||
" .loc 14 129 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"
|
||||
" .loc 14 132 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 134 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 135 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 138 0\n"
|
||||
" mov.f32 %f25, %f21;\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.s32 %r14, %r7;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 139 0\n"
|
||||
" mov.f32 %f33, %f29;\n"
|
||||
" mul24.lo.s32 %r18, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r18;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\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"
|
||||
" @%p2 bra $Lt_0_18434;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r22;\n"
|
||||
" cvt.rzi.s32.f32 %r23, %f28;\n"
|
||||
" ld.param.s32 %r24, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r25, %r24, %r23;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" mov.u64 %rd15, __cuda_sp_lj108;\n"
|
||||
"$Lt_0_12802:\n"
|
||||
" .loc 14 143 0\n"
|
||||
" ld.global.s32 %r26, [%rd10+0];\n"
|
||||
" .loc 14 146 0\n"
|
||||
" shr.s32 %r27, %r26, 30;\n"
|
||||
" cvt.s64.s32 %rd16, %r27;\n"
|
||||
" and.b64 %rd17, %rd16, 3;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd15, %rd18;\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 147 0\n"
|
||||
" mov.f32 %f40, 0f3f800000; \n"
|
||||
" ld.shared.f32 %f41, [%rd19+16];\n"
|
||||
" sub.f32 %f42, %f40, %f41;\n"
|
||||
" and.b32 %r28, %r26, 1073741823;\n"
|
||||
" mov.s32 %r29, %r28;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" mov.s32 %r32, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r29,%r30,%r31,%r32}];\n"
|
||||
" .loc 14 150 0\n"
|
||||
" mov.f32 %f47, %f43;\n"
|
||||
" mov.f32 %f48, %f44;\n"
|
||||
" mov.f32 %f49, %f45;\n"
|
||||
" mov.f32 %f50, %f46;\n"
|
||||
" cvt.rzi.s32.f32 %r33, %f50;\n"
|
||||
" sub.f32 %f51, %f26, %f48;\n"
|
||||
" sub.f32 %f52, %f25, %f47;\n"
|
||||
" sub.f32 %f53, %f27, %f49;\n"
|
||||
" mul.f32 %f54, %f51, %f51;\n"
|
||||
" mad.f32 %f55, %f52, %f52, %f54;\n"
|
||||
" mad.f32 %f56, %f53, %f53, %f55;\n"
|
||||
" add.s32 %r34, %r33, %r25;\n"
|
||||
" cvt.u64.s32 %rd20, %r34;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 16;\n"
|
||||
" add.u64 %rd22, %rd21, %rd14;\n"
|
||||
" ld.global.f32 %f57, [%rd22+0];\n"
|
||||
" setp.gt.f32 %p5, %f57, %f56;\n"
|
||||
" @!%p5 bra $Lt_0_16642;\n"
|
||||
" rcp.approx.f32 %f58, %f56;\n"
|
||||
" ld.global.f32 %f59, [%rd22+4];\n"
|
||||
" setp.lt.f32 %p6, %f56, %f59;\n"
|
||||
" @!%p6 bra $Lt_0_13826;\n"
|
||||
" ld.param.u64 %rd23, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd24, %rd23, %rd21;\n"
|
||||
" ld.global.f32 %f60, [%rd24+0];\n"
|
||||
" mov.f32 %f61, 0f40000000; \n"
|
||||
" setp.eq.f32 %p7, %f60, %f61;\n"
|
||||
" @!%p7 bra $Lt_0_14338;\n"
|
||||
" .loc 14 166 0\n"
|
||||
" mul.f32 %f62, %f58, %f58;\n"
|
||||
" mov.f32 %f63, %f62;\n"
|
||||
" mov.f32 %f64, %f63;\n"
|
||||
" .loc 14 167 0\n"
|
||||
" mul.f32 %f65, %f62, %f62;\n"
|
||||
" mov.f32 %f66, %f65;\n"
|
||||
" bra.uni $Lt_0_14594;\n"
|
||||
"$Lt_0_14338:\n"
|
||||
" mov.f32 %f67, 0f3f800000; \n"
|
||||
" setp.eq.f32 %p8, %f60, %f67;\n"
|
||||
" @!%p8 bra $Lt_0_14850;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" sqrt.approx.f32 %f68, %f58;\n"
|
||||
" mul.f32 %f69, %f58, %f68;\n"
|
||||
" mov.f32 %f65, %f69;\n"
|
||||
" mov.f32 %f66, %f65;\n"
|
||||
" .loc 14 170 0\n"
|
||||
" mul.f32 %f63, %f69, %f69;\n"
|
||||
" mov.f32 %f64, %f63;\n"
|
||||
" bra.uni $Lt_0_14594;\n"
|
||||
"$Lt_0_14850:\n"
|
||||
" .loc 14 172 0\n"
|
||||
" mul.f32 %f70, %f58, %f58;\n"
|
||||
" mul.f32 %f71, %f58, %f70;\n"
|
||||
" mov.f32 %f63, %f71;\n"
|
||||
" mov.f32 %f64, %f63;\n"
|
||||
" .loc 14 173 0\n"
|
||||
" mov.f32 %f65, %f71;\n"
|
||||
" mov.f32 %f66, %f65;\n"
|
||||
"$Lt_0_14594:\n"
|
||||
"$Lt_0_14082:\n"
|
||||
" .loc 14 146 0\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 175 0\n"
|
||||
" mul.f32 %f72, %f39, %f63;\n"
|
||||
" ld.global.v2.f32 {%f73,%f74}, [%rd22+8];\n"
|
||||
" mul.f32 %f75, %f73, %f65;\n"
|
||||
" sub.f32 %f76, %f75, %f74;\n"
|
||||
" mul.f32 %f77, %f72, %f76;\n"
|
||||
" bra.uni $Lt_0_13570;\n"
|
||||
"$Lt_0_13826:\n"
|
||||
" .loc 14 177 0\n"
|
||||
" mov.f32 %f77, 0f00000000; \n"
|
||||
"$Lt_0_13570:\n"
|
||||
" ld.param.f32 %f78, [__cudaparm_kernel_pair_cut_coulsq];\n"
|
||||
" setp.gt.f32 %p9, %f78, %f56;\n"
|
||||
" @!%p9 bra $Lt_0_15362;\n"
|
||||
" .loc 14 184 0\n"
|
||||
" sqrt.approx.f32 %f79, %f56;\n"
|
||||
" ld.param.f32 %f80, [__cudaparm_kernel_pair_g_ewald];\n"
|
||||
" mul.f32 %f81, %f80, %f79;\n"
|
||||
" mul.f32 %f82, %f81, %f81;\n"
|
||||
" mov.f32 %f83, 0f3f800000; \n"
|
||||
" mov.f32 %f84, 0f3ea7ba05; \n"
|
||||
" mad.f32 %f85, %f84, %f81, %f83;\n"
|
||||
" neg.f32 %f86, %f82;\n"
|
||||
" rcp.approx.f32 %f87, %f85;\n"
|
||||
" mov.f32 %f88, 0f3fb8aa3b; \n"
|
||||
" mul.f32 %f89, %f86, %f88;\n"
|
||||
" ex2.approx.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"
|
||||
" mad.f32 %f96, %f95, %f87, %f94;\n"
|
||||
" mad.f32 %f97, %f87, %f96, %f93;\n"
|
||||
" mad.f32 %f98, %f87, %f97, %f92;\n"
|
||||
" mad.f32 %f99, %f87, %f98, %f91;\n"
|
||||
" mul.f32 %f100, %f87, %f99;\n"
|
||||
" mul.f32 %f101, %f90, %f100;\n"
|
||||
" mov.f32 %f102, %f101;\n"
|
||||
" mov.s32 %r35, %r28;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" mov.s32 %r37, 0;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f103,%f104,%f105,%f106},[q_tex,{%r35,%r36,%r37,%r38}];\n"
|
||||
" .loc 14 185 0\n"
|
||||
" mov.f32 %f107, %f103;\n"
|
||||
" ld.param.f32 %f108, [__cudaparm_kernel_pair_qqrd2e];\n"
|
||||
" mul.f32 %f109, %f108, %f33;\n"
|
||||
" mul.f32 %f110, %f109, %f107;\n"
|
||||
" div.approx.f32 %f111, %f110, %f79;\n"
|
||||
" mov.f32 %f112, %f111;\n"
|
||||
" .loc 14 186 0\n"
|
||||
" mov.f32 %f113, 0f3f906ebb; \n"
|
||||
" mul.f32 %f114, %f81, %f113;\n"
|
||||
" mad.f32 %f115, %f90, %f114, %f101;\n"
|
||||
" sub.f32 %f116, %f115, %f42;\n"
|
||||
" mul.f32 %f117, %f111, %f116;\n"
|
||||
" bra.uni $Lt_0_15106;\n"
|
||||
"$Lt_0_15362:\n"
|
||||
" .loc 14 189 0\n"
|
||||
" mov.f32 %f112, 0f00000000; \n"
|
||||
" mov.f32 %f117, 0f00000000; \n"
|
||||
"$Lt_0_15106:\n"
|
||||
" .loc 14 194 0\n"
|
||||
" add.f32 %f118, %f117, %f77;\n"
|
||||
" mul.f32 %f119, %f118, %f58;\n"
|
||||
" mad.f32 %f36, %f52, %f119, %f36;\n"
|
||||
" .loc 14 195 0\n"
|
||||
" mad.f32 %f35, %f51, %f119, %f35;\n"
|
||||
" .loc 14 196 0\n"
|
||||
" mad.f32 %f34, %f53, %f119, %f34;\n"
|
||||
" @!%p3 bra $Lt_0_16130;\n"
|
||||
" .loc 14 199 0\n"
|
||||
" mov.f32 %f120, %f102;\n"
|
||||
" sub.f32 %f121, %f120, %f42;\n"
|
||||
" mad.f32 %f37, %f112, %f121, %f37;\n"
|
||||
" @!%p6 bra $Lt_0_16130;\n"
|
||||
" .loc 14 201 0\n"
|
||||
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd26, %rd25, %rd21;\n"
|
||||
" ld.global.v4.f32 {_,%f122,%f123,%f124}, [%rd26+0];\n"
|
||||
" mov.f32 %f125, %f64;\n"
|
||||
" .loc 14 146 0\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 201 0\n"
|
||||
" mul.f32 %f126, %f125, %f39;\n"
|
||||
" mov.f32 %f127, %f66;\n"
|
||||
" mul.f32 %f128, %f122, %f127;\n"
|
||||
" sub.f32 %f129, %f128, %f123;\n"
|
||||
" mul.f32 %f130, %f126, %f129;\n"
|
||||
" sub.f32 %f131, %f130, %f124;\n"
|
||||
" add.f32 %f38, %f38, %f131;\n"
|
||||
"$Lt_0_16130:\n"
|
||||
"$Lt_0_15618:\n"
|
||||
" @!%p4 bra $Lt_0_16642;\n"
|
||||
" .loc 14 206 0\n"
|
||||
" mov.f32 %f132, %f10;\n"
|
||||
" mul.f32 %f133, %f52, %f52;\n"
|
||||
" mad.f32 %f134, %f119, %f133, %f132;\n"
|
||||
" mov.f32 %f10, %f134;\n"
|
||||
" .loc 14 207 0\n"
|
||||
" mov.f32 %f135, %f12;\n"
|
||||
" mad.f32 %f136, %f119, %f54, %f135;\n"
|
||||
" mov.f32 %f12, %f136;\n"
|
||||
" .loc 14 208 0\n"
|
||||
" mov.f32 %f137, %f14;\n"
|
||||
" mul.f32 %f138, %f53, %f53;\n"
|
||||
" mad.f32 %f139, %f119, %f138, %f137;\n"
|
||||
" mov.f32 %f14, %f139;\n"
|
||||
" .loc 14 209 0\n"
|
||||
" mov.f32 %f140, %f16;\n"
|
||||
" mul.f32 %f141, %f51, %f52;\n"
|
||||
" mad.f32 %f142, %f119, %f141, %f140;\n"
|
||||
" mov.f32 %f16, %f142;\n"
|
||||
" .loc 14 210 0\n"
|
||||
" mov.f32 %f143, %f18;\n"
|
||||
" mul.f32 %f144, %f52, %f53;\n"
|
||||
" mad.f32 %f145, %f119, %f144, %f143;\n"
|
||||
" mov.f32 %f18, %f145;\n"
|
||||
" .loc 14 211 0\n"
|
||||
" mul.f32 %f146, %f51, %f53;\n"
|
||||
" mad.f32 %f19, %f119, %f146, %f19;\n"
|
||||
" mov.f32 %f147, %f19;\n"
|
||||
"$Lt_0_16642:\n"
|
||||
"$Lt_0_13058:\n"
|
||||
" .loc 14 142 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p10, %rd13, %rd10;\n"
|
||||
" @%p10 bra $Lt_0_12802;\n"
|
||||
" bra.uni $Lt_0_12290;\n"
|
||||
"$Lt_0_18434:\n"
|
||||
" mov.s32 %r39, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r39;\n"
|
||||
" mov.s32 %r40, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r40;\n"
|
||||
"$Lt_0_12290:\n"
|
||||
" .loc 14 218 0\n"
|
||||
" ld.param.u64 %rd27, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd28, %rd27, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_17410;\n"
|
||||
" .loc 14 220 0\n"
|
||||
" st.global.f32 [%rd28+0], %f38;\n"
|
||||
" .loc 14 221 0\n"
|
||||
" cvt.u64.s32 %rd29, %r6;\n"
|
||||
" mul.lo.u64 %rd30, %rd29, 4;\n"
|
||||
" add.u64 %rd28, %rd30, %rd28;\n"
|
||||
" .loc 14 222 0\n"
|
||||
" st.global.f32 [%rd28+0], %f37;\n"
|
||||
" .loc 14 223 0\n"
|
||||
" add.u64 %rd28, %rd30, %rd28;\n"
|
||||
"$Lt_0_17410:\n"
|
||||
" @!%p4 bra $Lt_0_17922;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f148, %f10;\n"
|
||||
" st.global.f32 [%rd28+0], %f148;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" cvt.u64.s32 %rd31, %r6;\n"
|
||||
" mul.lo.u64 %rd32, %rd31, 4;\n"
|
||||
" add.u64 %rd28, %rd32, %rd28;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f149, %f12;\n"
|
||||
" st.global.f32 [%rd28+0], %f149;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" add.u64 %rd28, %rd32, %rd28;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f150, %f14;\n"
|
||||
" st.global.f32 [%rd28+0], %f150;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" add.u64 %rd28, %rd32, %rd28;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f151, %f16;\n"
|
||||
" st.global.f32 [%rd28+0], %f151;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" add.u64 %rd28, %rd32, %rd28;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f152, %f18;\n"
|
||||
" st.global.f32 [%rd28+0], %f152;\n"
|
||||
" add.u64 %rd33, %rd32, %rd28;\n"
|
||||
" st.global.f32 [%rd33+0], %f19;\n"
|
||||
"$Lt_0_17922:\n"
|
||||
" .loc 14 231 0\n"
|
||||
" ld.param.u64 %rd34, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd35, %rd2, 16;\n"
|
||||
" add.u64 %rd36, %rd34, %rd35;\n"
|
||||
" mov.f32 %f153, %f154;\n"
|
||||
" st.global.v4.f32 [%rd36+0], {%f36,%f35,%f34,%f153};\n"
|
||||
"$Lt_0_11778:\n"
|
||||
" .loc 14 233 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_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_nall,\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"
|
||||
" {\n"
|
||||
" .reg .u32 %r<43>;\n"
|
||||
" .reg .u64 %rd<49>;\n"
|
||||
" .reg .f32 %f<159>;\n"
|
||||
" .reg .pred %p<14>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj244[32];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj3288[1024];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj11312[1024];\n"
|
||||
" .loc 14 242 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" mov.u32 %r2, 7;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_13314;\n"
|
||||
" .loc 14 249 0\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj244;\n"
|
||||
" cvt.u64.s32 %rd2, %r1;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 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_13314:\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj244;\n"
|
||||
" mov.u32 %r3, 63;\n"
|
||||
" setp.gt.s32 %p2, %r1, %r3;\n"
|
||||
" @%p2 bra $Lt_1_13826;\n"
|
||||
" .loc 14 251 0\n"
|
||||
" mov.u64 %rd7, __cuda_lj3288;\n"
|
||||
" mov.u64 %rd8, __cuda_lj11312;\n"
|
||||
" cvt.u64.s32 %rd9, %r1;\n"
|
||||
" mul.lo.u64 %rd10, %rd9, 16;\n"
|
||||
" ld.param.u64 %rd11, [__cudaparm_kernel_pair_fast_lj1_in];\n"
|
||||
" add.u64 %rd12, %rd11, %rd10;\n"
|
||||
" add.u64 %rd13, %rd10, %rd8;\n"
|
||||
" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd12+0];\n"
|
||||
" st.shared.f32 [%rd13+0], %f2;\n"
|
||||
" st.shared.f32 [%rd13+4], %f3;\n"
|
||||
" st.shared.f32 [%rd13+8], %f4;\n"
|
||||
" st.shared.f32 [%rd13+12], %f5;\n"
|
||||
" .loc 14 252 0\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in];\n"
|
||||
" add.u64 %rd15, %rd14, %rd10;\n"
|
||||
" add.u64 %rd16, %rd10, %rd7;\n"
|
||||
" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0];\n"
|
||||
" st.shared.f32 [%rd16+0], %f6;\n"
|
||||
" st.shared.f32 [%rd16+4], %f7;\n"
|
||||
" st.shared.f32 [%rd16+8], %f8;\n"
|
||||
" st.shared.f32 [%rd16+12], %f9;\n"
|
||||
"$Lt_1_13826:\n"
|
||||
" mov.u64 %rd7, __cuda_lj3288;\n"
|
||||
" mov.u64 %rd8, __cuda_lj11312;\n"
|
||||
" .loc 14 255 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r4, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r5, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r6, %r4, %r5;\n"
|
||||
" add.s32 %r7, %r6, %r1;\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p3, %r7, %r8;\n"
|
||||
" @%p3 bra $Lt_1_14338;\n"
|
||||
" .loc 14 267 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 14 270 0\n"
|
||||
" cvt.u64.s32 %rd17, %r7;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd20, %rd19, %rd18;\n"
|
||||
" ld.global.s32 %r9, [%rd20+0];\n"
|
||||
" .loc 14 272 0\n"
|
||||
" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd21, %r10;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd20, %rd22;\n"
|
||||
" ld.global.s32 %r11, [%rd23+0];\n"
|
||||
" .loc 14 273 0\n"
|
||||
" add.u64 %rd24, %rd23, %rd22;\n"
|
||||
" mov.s64 %rd25, %rd24;\n"
|
||||
" mov.s32 %r12, %r9;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" mov.s32 %r14, 0;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r12,%r13,%r14,%r15}];\n"
|
||||
" .loc 14 276 0\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.f32 %f29, %f25;\n"
|
||||
" mov.s32 %r16, %r9;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" mov.s32 %r18, 0;\n"
|
||||
" mov.s32 %r19, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r16,%r17,%r18,%r19}];\n"
|
||||
" .loc 14 277 0\n"
|
||||
" mov.f32 %f34, %f30;\n"
|
||||
" mul24.lo.s32 %r20, %r11, %r10;\n"
|
||||
" cvt.s64.s32 %rd26, %r20;\n"
|
||||
" mul.lo.u64 %rd27, %rd26, 4;\n"
|
||||
" add.u64 %rd28, %rd24, %rd27;\n"
|
||||
" ld.param.s32 %r21, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r22, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p4, %rd24, %rd28;\n"
|
||||
" mov.f32 %f35, 0f00000000; \n"
|
||||
" mov.f32 %f36, 0f00000000; \n"
|
||||
" mov.f32 %f37, 0f00000000; \n"
|
||||
" mov.f32 %f38, 0f00000000; \n"
|
||||
" mov.f32 %f39, 0f00000000; \n"
|
||||
" @%p4 bra $Lt_1_20994;\n"
|
||||
" mov.s32 %r23, 0;\n"
|
||||
" setp.gt.s32 %p5, %r22, %r23;\n"
|
||||
" mov.s32 %r24, 0;\n"
|
||||
" setp.gt.s32 %p6, %r21, %r24;\n"
|
||||
" cvt.rzi.s32.f32 %r25, %f29;\n"
|
||||
" mov.s32 %r26, 8;\n"
|
||||
" mul24.lo.s32 %r27, %r26, %r25;\n"
|
||||
" cvt.rn.f32.s32 %f40, %r27;\n"
|
||||
"$Lt_1_15362:\n"
|
||||
" .loc 14 282 0\n"
|
||||
" ld.global.s32 %r28, [%rd25+0];\n"
|
||||
" .loc 14 285 0\n"
|
||||
" shr.s32 %r29, %r28, 30;\n"
|
||||
" cvt.s64.s32 %rd29, %r29;\n"
|
||||
" and.b64 %rd30, %rd29, 3;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd32, %rd1, %rd31;\n"
|
||||
" ld.shared.f32 %f41, [%rd32+0];\n"
|
||||
" .loc 14 286 0\n"
|
||||
" mov.f32 %f42, 0f3f800000; \n"
|
||||
" ld.shared.f32 %f43, [%rd32+16];\n"
|
||||
" sub.f32 %f44, %f42, %f43;\n"
|
||||
" and.b32 %r30, %r28, 1073741823;\n"
|
||||
" mov.s32 %r31, %r30;\n"
|
||||
" mov.s32 %r32, 0;\n"
|
||||
" mov.s32 %r33, 0;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r31,%r32,%r33,%r34}];\n"
|
||||
" .loc 14 289 0\n"
|
||||
" mov.f32 %f49, %f45;\n"
|
||||
" mov.f32 %f50, %f46;\n"
|
||||
" mov.f32 %f51, %f47;\n"
|
||||
" mov.f32 %f52, %f48;\n"
|
||||
" sub.f32 %f53, %f27, %f50;\n"
|
||||
" sub.f32 %f54, %f26, %f49;\n"
|
||||
" sub.f32 %f55, %f28, %f51;\n"
|
||||
" mul.f32 %f56, %f53, %f53;\n"
|
||||
" mad.f32 %f57, %f54, %f54, %f56;\n"
|
||||
" mad.f32 %f58, %f55, %f55, %f57;\n"
|
||||
" add.f32 %f59, %f40, %f52;\n"
|
||||
" cvt.rzi.s32.f32 %r35, %f59;\n"
|
||||
" cvt.u64.s32 %rd33, %r35;\n"
|
||||
" mul.lo.u64 %rd34, %rd33, 16;\n"
|
||||
" add.u64 %rd35, %rd34, %rd8;\n"
|
||||
" ld.shared.f32 %f60, [%rd35+0];\n"
|
||||
" setp.gt.f32 %p7, %f60, %f58;\n"
|
||||
" @!%p7 bra $Lt_1_19202;\n"
|
||||
" rcp.approx.f32 %f61, %f58;\n"
|
||||
" ld.shared.f32 %f62, [%rd35+4];\n"
|
||||
" setp.lt.f32 %p8, %f58, %f62;\n"
|
||||
" @!%p8 bra $Lt_1_16386;\n"
|
||||
" add.u64 %rd36, %rd34, %rd7;\n"
|
||||
" ld.shared.f32 %f63, [%rd36+0];\n"
|
||||
" mov.f32 %f64, 0f40000000; \n"
|
||||
" setp.eq.f32 %p9, %f63, %f64;\n"
|
||||
" @!%p9 bra $Lt_1_16898;\n"
|
||||
" .loc 14 304 0\n"
|
||||
" mul.f32 %f65, %f61, %f61;\n"
|
||||
" mov.f32 %f66, %f65;\n"
|
||||
" mov.f32 %f67, %f66;\n"
|
||||
" .loc 14 305 0\n"
|
||||
" mul.f32 %f68, %f65, %f65;\n"
|
||||
" mov.f32 %f69, %f68;\n"
|
||||
" bra.uni $Lt_1_17154;\n"
|
||||
"$Lt_1_16898:\n"
|
||||
" mov.f32 %f70, 0f3f800000; \n"
|
||||
" .loc 14 289 0\n"
|
||||
" ld.shared.f32 %f63, [%rd36+0];\n"
|
||||
" .loc 14 305 0\n"
|
||||
" setp.eq.f32 %p10, %f63, %f70;\n"
|
||||
" @!%p10 bra $Lt_1_17410;\n"
|
||||
" .loc 14 307 0\n"
|
||||
" sqrt.approx.f32 %f71, %f61;\n"
|
||||
" mul.f32 %f72, %f61, %f71;\n"
|
||||
" mov.f32 %f68, %f72;\n"
|
||||
" mov.f32 %f69, %f68;\n"
|
||||
" .loc 14 308 0\n"
|
||||
" mul.f32 %f66, %f72, %f72;\n"
|
||||
" mov.f32 %f67, %f66;\n"
|
||||
" bra.uni $Lt_1_17154;\n"
|
||||
"$Lt_1_17410:\n"
|
||||
" .loc 14 310 0\n"
|
||||
" mul.f32 %f73, %f61, %f61;\n"
|
||||
" mul.f32 %f74, %f61, %f73;\n"
|
||||
" mov.f32 %f66, %f74;\n"
|
||||
" mov.f32 %f67, %f66;\n"
|
||||
" .loc 14 311 0\n"
|
||||
" mov.f32 %f68, %f74;\n"
|
||||
" mov.f32 %f69, %f68;\n"
|
||||
"$Lt_1_17154:\n"
|
||||
"$Lt_1_16642:\n"
|
||||
" .loc 14 285 0\n"
|
||||
" ld.shared.f32 %f41, [%rd32+0];\n"
|
||||
" .loc 14 313 0\n"
|
||||
" mul.f32 %f75, %f41, %f66;\n"
|
||||
" ld.shared.f32 %f76, [%rd35+12];\n"
|
||||
" ld.shared.f32 %f77, [%rd35+8];\n"
|
||||
" mul.f32 %f78, %f77, %f68;\n"
|
||||
" sub.f32 %f79, %f78, %f76;\n"
|
||||
" mul.f32 %f80, %f75, %f79;\n"
|
||||
" bra.uni $Lt_1_16130;\n"
|
||||
"$Lt_1_16386:\n"
|
||||
" .loc 14 315 0\n"
|
||||
" mov.f32 %f80, 0f00000000; \n"
|
||||
"$Lt_1_16130:\n"
|
||||
" ld.param.f32 %f81, [__cudaparm_kernel_pair_fast_cut_coulsq];\n"
|
||||
" setp.gt.f32 %p11, %f81, %f58;\n"
|
||||
" @!%p11 bra $Lt_1_17922;\n"
|
||||
" .loc 14 322 0\n"
|
||||
" sqrt.approx.f32 %f82, %f58;\n"
|
||||
" ld.param.f32 %f83, [__cudaparm_kernel_pair_fast_g_ewald];\n"
|
||||
" mul.f32 %f84, %f83, %f82;\n"
|
||||
" mul.f32 %f85, %f84, %f84;\n"
|
||||
" mov.f32 %f86, 0f3f800000; \n"
|
||||
" mov.f32 %f87, 0f3ea7ba05; \n"
|
||||
" mad.f32 %f88, %f87, %f84, %f86;\n"
|
||||
" neg.f32 %f89, %f85;\n"
|
||||
" rcp.approx.f32 %f90, %f88;\n"
|
||||
" mov.f32 %f91, 0f3fb8aa3b; \n"
|
||||
" mul.f32 %f92, %f89, %f91;\n"
|
||||
" ex2.approx.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"
|
||||
" mad.f32 %f99, %f98, %f90, %f97;\n"
|
||||
" mad.f32 %f100, %f90, %f99, %f96;\n"
|
||||
" mad.f32 %f101, %f90, %f100, %f95;\n"
|
||||
" mad.f32 %f102, %f90, %f101, %f94;\n"
|
||||
" mul.f32 %f103, %f90, %f102;\n"
|
||||
" mul.f32 %f104, %f93, %f103;\n"
|
||||
" mov.f32 %f105, %f104;\n"
|
||||
" mov.s32 %r36, %r30;\n"
|
||||
" mov.s32 %r37, 0;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" mov.s32 %r39, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f106,%f107,%f108,%f109},[q_tex,{%r36,%r37,%r38,%r39}];\n"
|
||||
" .loc 14 323 0\n"
|
||||
" mov.f32 %f110, %f106;\n"
|
||||
" ld.param.f32 %f111, [__cudaparm_kernel_pair_fast_qqrd2e];\n"
|
||||
" mul.f32 %f112, %f111, %f34;\n"
|
||||
" mul.f32 %f113, %f112, %f110;\n"
|
||||
" div.approx.f32 %f114, %f113, %f82;\n"
|
||||
" mov.f32 %f115, %f114;\n"
|
||||
" .loc 14 324 0\n"
|
||||
" mov.f32 %f116, 0f3f906ebb; \n"
|
||||
" mul.f32 %f117, %f84, %f116;\n"
|
||||
" mad.f32 %f118, %f93, %f117, %f104;\n"
|
||||
" sub.f32 %f119, %f118, %f44;\n"
|
||||
" mul.f32 %f120, %f114, %f119;\n"
|
||||
" bra.uni $Lt_1_17666;\n"
|
||||
"$Lt_1_17922:\n"
|
||||
" .loc 14 327 0\n"
|
||||
" mov.f32 %f115, 0f00000000; \n"
|
||||
" mov.f32 %f120, 0f00000000; \n"
|
||||
"$Lt_1_17666:\n"
|
||||
" .loc 14 332 0\n"
|
||||
" add.f32 %f121, %f120, %f80;\n"
|
||||
" mul.f32 %f122, %f121, %f61;\n"
|
||||
" mad.f32 %f37, %f54, %f122, %f37;\n"
|
||||
" .loc 14 333 0\n"
|
||||
" mad.f32 %f36, %f53, %f122, %f36;\n"
|
||||
" .loc 14 334 0\n"
|
||||
" mad.f32 %f35, %f55, %f122, %f35;\n"
|
||||
" @!%p5 bra $Lt_1_18690;\n"
|
||||
" .loc 14 337 0\n"
|
||||
" mov.f32 %f123, %f105;\n"
|
||||
" sub.f32 %f124, %f123, %f44;\n"
|
||||
" mad.f32 %f38, %f115, %f124, %f38;\n"
|
||||
" @!%p8 bra $Lt_1_18690;\n"
|
||||
" .loc 14 339 0\n"
|
||||
" add.u64 %rd37, %rd34, %rd7;\n"
|
||||
" ld.shared.f32 %f125, [%rd37+12];\n"
|
||||
" mov.f32 %f126, %f67;\n"
|
||||
" .loc 14 285 0\n"
|
||||
" ld.shared.f32 %f41, [%rd32+0];\n"
|
||||
" .loc 14 339 0\n"
|
||||
" mul.f32 %f127, %f126, %f41;\n"
|
||||
" ld.shared.f32 %f128, [%rd37+8];\n"
|
||||
" ld.shared.f32 %f129, [%rd37+4];\n"
|
||||
" mov.f32 %f130, %f69;\n"
|
||||
" mul.f32 %f131, %f129, %f130;\n"
|
||||
" sub.f32 %f132, %f131, %f128;\n"
|
||||
" mul.f32 %f133, %f127, %f132;\n"
|
||||
" sub.f32 %f134, %f133, %f125;\n"
|
||||
" add.f32 %f39, %f39, %f134;\n"
|
||||
"$Lt_1_18690:\n"
|
||||
"$Lt_1_18178:\n"
|
||||
" @!%p6 bra $Lt_1_19202;\n"
|
||||
" .loc 14 344 0\n"
|
||||
" mov.f32 %f135, %f11;\n"
|
||||
" mul.f32 %f136, %f54, %f54;\n"
|
||||
" mad.f32 %f137, %f122, %f136, %f135;\n"
|
||||
" mov.f32 %f11, %f137;\n"
|
||||
" .loc 14 345 0\n"
|
||||
" mov.f32 %f138, %f13;\n"
|
||||
" mad.f32 %f139, %f122, %f56, %f138;\n"
|
||||
" mov.f32 %f13, %f139;\n"
|
||||
" .loc 14 346 0\n"
|
||||
" mov.f32 %f140, %f15;\n"
|
||||
" mul.f32 %f141, %f55, %f55;\n"
|
||||
" mad.f32 %f142, %f122, %f141, %f140;\n"
|
||||
" mov.f32 %f15, %f142;\n"
|
||||
" .loc 14 347 0\n"
|
||||
" mov.f32 %f143, %f17;\n"
|
||||
" mul.f32 %f144, %f53, %f54;\n"
|
||||
" mad.f32 %f145, %f122, %f144, %f143;\n"
|
||||
" mov.f32 %f17, %f145;\n"
|
||||
" .loc 14 348 0\n"
|
||||
" mov.f32 %f146, %f19;\n"
|
||||
" mul.f32 %f147, %f54, %f55;\n"
|
||||
" mad.f32 %f148, %f122, %f147, %f146;\n"
|
||||
" mov.f32 %f19, %f148;\n"
|
||||
" .loc 14 349 0\n"
|
||||
" mul.f32 %f149, %f53, %f55;\n"
|
||||
" mad.f32 %f20, %f122, %f149, %f20;\n"
|
||||
" mov.f32 %f150, %f20;\n"
|
||||
"$Lt_1_19202:\n"
|
||||
"$Lt_1_15618:\n"
|
||||
" .loc 14 281 0\n"
|
||||
" add.u64 %rd25, %rd22, %rd25;\n"
|
||||
" setp.gt.u64 %p12, %rd28, %rd25;\n"
|
||||
" @%p12 bra $Lt_1_15362;\n"
|
||||
" bra.uni $Lt_1_14850;\n"
|
||||
"$Lt_1_20994:\n"
|
||||
" mov.s32 %r40, 0;\n"
|
||||
" setp.gt.s32 %p5, %r22, %r40;\n"
|
||||
" mov.s32 %r41, 0;\n"
|
||||
" setp.gt.s32 %p6, %r21, %r41;\n"
|
||||
"$Lt_1_14850:\n"
|
||||
" .loc 14 356 0\n"
|
||||
" ld.param.u64 %rd38, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd39, %rd38, %rd18;\n"
|
||||
" @!%p5 bra $Lt_1_19970;\n"
|
||||
" .loc 14 358 0\n"
|
||||
" st.global.f32 [%rd39+0], %f39;\n"
|
||||
" .loc 14 359 0\n"
|
||||
" cvt.u64.s32 %rd40, %r8;\n"
|
||||
" mul.lo.u64 %rd41, %rd40, 4;\n"
|
||||
" add.u64 %rd39, %rd41, %rd39;\n"
|
||||
" .loc 14 360 0\n"
|
||||
" st.global.f32 [%rd39+0], %f38;\n"
|
||||
" .loc 14 361 0\n"
|
||||
" add.u64 %rd39, %rd41, %rd39;\n"
|
||||
"$Lt_1_19970:\n"
|
||||
" @!%p6 bra $Lt_1_20482;\n"
|
||||
" .loc 14 365 0\n"
|
||||
" mov.f32 %f151, %f11;\n"
|
||||
" st.global.f32 [%rd39+0], %f151;\n"
|
||||
" .loc 14 366 0\n"
|
||||
" cvt.u64.s32 %rd42, %r8;\n"
|
||||
" mul.lo.u64 %rd43, %rd42, 4;\n"
|
||||
" add.u64 %rd39, %rd43, %rd39;\n"
|
||||
" .loc 14 365 0\n"
|
||||
" mov.f32 %f152, %f13;\n"
|
||||
" st.global.f32 [%rd39+0], %f152;\n"
|
||||
" .loc 14 366 0\n"
|
||||
" add.u64 %rd39, %rd43, %rd39;\n"
|
||||
" .loc 14 365 0\n"
|
||||
" mov.f32 %f153, %f15;\n"
|
||||
" st.global.f32 [%rd39+0], %f153;\n"
|
||||
" .loc 14 366 0\n"
|
||||
" add.u64 %rd39, %rd43, %rd39;\n"
|
||||
" .loc 14 365 0\n"
|
||||
" mov.f32 %f154, %f17;\n"
|
||||
" st.global.f32 [%rd39+0], %f154;\n"
|
||||
" .loc 14 366 0\n"
|
||||
" add.u64 %rd39, %rd43, %rd39;\n"
|
||||
" .loc 14 365 0\n"
|
||||
" mov.f32 %f155, %f19;\n"
|
||||
" st.global.f32 [%rd39+0], %f155;\n"
|
||||
" add.u64 %rd44, %rd43, %rd39;\n"
|
||||
" st.global.f32 [%rd44+0], %f20;\n"
|
||||
"$Lt_1_20482:\n"
|
||||
" .loc 14 369 0\n"
|
||||
" ld.param.u64 %rd45, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd46, %rd17, 16;\n"
|
||||
" add.u64 %rd47, %rd45, %rd46;\n"
|
||||
" mov.f32 %f156, %f157;\n"
|
||||
" st.global.v4.f32 [%rd47+0], {%f37,%f36,%f35,%f156};\n"
|
||||
"$Lt_1_14338:\n"
|
||||
" .loc 14 371 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,828 +0,0 @@
|
|||
const char * crml_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_tex;\n"
|
||||
" .tex .u64 q_tex;\n"
|
||||
" .entry kernel_pair (\n"
|
||||
" .param .u64 __cudaparm_kernel_pair_x_,\n"
|
||||
" .param .u64 __cudaparm_kernel_pair_lj1,\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_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_nall,\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 .f32 __cudaparm_kernel_pair_denom_lj,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_cut_bothsq,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_cut_ljsq,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_cut_lj_innersq)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<47>;\n"
|
||||
" .reg .u64 %rd<37>;\n"
|
||||
" .reg .f32 %f<170>;\n"
|
||||
" .reg .pred %p<12>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj116[32];\n"
|
||||
" .loc 14 109 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 114 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+0], %f1;\n"
|
||||
" .loc 14 115 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+4], %f2;\n"
|
||||
" .loc 14 116 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+8], %f3;\n"
|
||||
" .loc 14 117 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+12], %f4;\n"
|
||||
" .loc 14 118 0\n"
|
||||
" ld.global.f32 %f5, [%rd1+16];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+16], %f5;\n"
|
||||
" .loc 14 119 0\n"
|
||||
" ld.global.f32 %f6, [%rd1+20];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+20], %f6;\n"
|
||||
" .loc 14 120 0\n"
|
||||
" ld.global.f32 %f7, [%rd1+24];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+24], %f7;\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.global.f32 %f8, [%rd1+28];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj116+28], %f8;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_11778;\n"
|
||||
" .loc 14 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"
|
||||
" .loc 14 135 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 137 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 138 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 141 0\n"
|
||||
" mov.f32 %f25, %f21;\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.s32 %r14, %r7;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 142 0\n"
|
||||
" mov.f32 %f33, %f29;\n"
|
||||
" mul24.lo.s32 %r18, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r18;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\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"
|
||||
" @%p2 bra $Lt_0_17922;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r22;\n"
|
||||
" ld.param.f32 %f39, [__cudaparm_kernel_pair_cut_bothsq];\n"
|
||||
" mov.u64 %rd14, __cuda_sp_lj116;\n"
|
||||
"$Lt_0_12802:\n"
|
||||
" .loc 14 146 0\n"
|
||||
" ld.global.s32 %r23, [%rd10+0];\n"
|
||||
" .loc 14 149 0\n"
|
||||
" shr.s32 %r24, %r23, 30;\n"
|
||||
" cvt.s64.s32 %rd15, %r24;\n"
|
||||
" and.b64 %rd16, %rd15, 3;\n"
|
||||
" mul.lo.u64 %rd17, %rd16, 4;\n"
|
||||
" add.u64 %rd18, %rd14, %rd17;\n"
|
||||
" ld.shared.f32 %f40, [%rd18+0];\n"
|
||||
" .loc 14 150 0\n"
|
||||
" mov.f32 %f41, 0f3f800000; \n"
|
||||
" ld.shared.f32 %f42, [%rd18+16];\n"
|
||||
" sub.f32 %f43, %f41, %f42;\n"
|
||||
" and.b32 %r25, %r23, 1073741823;\n"
|
||||
" mov.s32 %r26, %r25;\n"
|
||||
" mov.s32 %r27, 0;\n"
|
||||
" mov.s32 %r28, 0;\n"
|
||||
" mov.s32 %r29, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f44,%f45,%f46,%f47},[pos_tex,{%r26,%r27,%r28,%r29}];\n"
|
||||
" .loc 14 153 0\n"
|
||||
" mov.f32 %f48, %f44;\n"
|
||||
" mov.f32 %f49, %f45;\n"
|
||||
" mov.f32 %f50, %f46;\n"
|
||||
" mov.f32 %f51, %f47;\n"
|
||||
" sub.f32 %f52, %f26, %f49;\n"
|
||||
" sub.f32 %f53, %f25, %f48;\n"
|
||||
" sub.f32 %f54, %f27, %f50;\n"
|
||||
" mul.f32 %f55, %f52, %f52;\n"
|
||||
" mad.f32 %f56, %f53, %f53, %f55;\n"
|
||||
" mad.f32 %f57, %f54, %f54, %f56;\n"
|
||||
" setp.lt.f32 %p5, %f57, %f39;\n"
|
||||
" @!%p5 bra $Lt_0_16130;\n"
|
||||
" ld.param.f32 %f58, [__cudaparm_kernel_pair_cut_ljsq];\n"
|
||||
" setp.lt.f32 %p6, %f57, %f58;\n"
|
||||
" rcp.approx.f32 %f59, %f57;\n"
|
||||
" @!%p6 bra $Lt_0_13826;\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mul.f32 %f60, %f59, %f59;\n"
|
||||
" mul.f32 %f61, %f59, %f60;\n"
|
||||
" mov.f32 %f62, %f61;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" cvt.rzi.s32.f32 %r30, %f51;\n"
|
||||
" cvt.rzi.s32.f32 %r31, %f28;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r33, %r32, %r31;\n"
|
||||
" add.s32 %r34, %r30, %r33;\n"
|
||||
" cvt.u64.s32 %rd20, %r34;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 16;\n"
|
||||
" add.u64 %rd22, %rd19, %rd21;\n"
|
||||
" .loc 14 149 0\n"
|
||||
" ld.shared.f32 %f40, [%rd18+0];\n"
|
||||
" .loc 14 169 0\n"
|
||||
" mul.f32 %f63, %f61, %f40;\n"
|
||||
" ld.global.v2.f32 {%f64,%f65}, [%rd22+0];\n"
|
||||
" mul.f32 %f66, %f64, %f61;\n"
|
||||
" sub.f32 %f67, %f66, %f65;\n"
|
||||
" mul.f32 %f68, %f63, %f67;\n"
|
||||
" ld.param.f32 %f69, [__cudaparm_kernel_pair_cut_lj_innersq];\n"
|
||||
" setp.gt.f32 %p7, %f57, %f69;\n"
|
||||
" @!%p7 bra $Lt_0_13570;\n"
|
||||
" .loc 14 175 0\n"
|
||||
" add.f32 %f70, %f57, %f57;\n"
|
||||
" sub.f32 %f71, %f58, %f57;\n"
|
||||
" add.f32 %f72, %f70, %f58;\n"
|
||||
" mul.f32 %f73, %f71, %f71;\n"
|
||||
" mov.f32 %f74, 0f40400000; \n"
|
||||
" mul.f32 %f75, %f74, %f69;\n"
|
||||
" sub.f32 %f76, %f72, %f75;\n"
|
||||
" ld.param.f32 %f77, [__cudaparm_kernel_pair_denom_lj];\n"
|
||||
" div.approx.f32 %f78, %f76, %f77;\n"
|
||||
" mul.f32 %f79, %f73, %f78;\n"
|
||||
" mov.f32 %f80, %f79;\n"
|
||||
" .loc 14 178 0\n"
|
||||
" mov.f32 %f81, 0f41400000; \n"
|
||||
" mul.f32 %f82, %f57, %f81;\n"
|
||||
" mul.f32 %f83, %f71, %f82;\n"
|
||||
" sub.f32 %f84, %f57, %f69;\n"
|
||||
" mul.f32 %f85, %f83, %f84;\n"
|
||||
" div.approx.f32 %f86, %f85, %f77;\n"
|
||||
" ld.global.v2.f32 {%f87,%f88}, [%rd22+8];\n"
|
||||
" mul.f32 %f89, %f87, %f61;\n"
|
||||
" sub.f32 %f90, %f89, %f88;\n"
|
||||
" mul.f32 %f91, %f61, %f90;\n"
|
||||
" mul.f32 %f92, %f86, %f91;\n"
|
||||
" mad.f32 %f68, %f68, %f79, %f92;\n"
|
||||
" bra.uni $Lt_0_13570;\n"
|
||||
"$Lt_0_13826:\n"
|
||||
" .loc 14 181 0\n"
|
||||
" mov.f32 %f68, 0f00000000; \n"
|
||||
"$Lt_0_13570:\n"
|
||||
" ld.param.f32 %f93, [__cudaparm_kernel_pair_cut_coulsq];\n"
|
||||
" setp.gt.f32 %p8, %f93, %f57;\n"
|
||||
" @!%p8 bra $Lt_0_14850;\n"
|
||||
" .loc 14 188 0\n"
|
||||
" sqrt.approx.f32 %f94, %f57;\n"
|
||||
" ld.param.f32 %f95, [__cudaparm_kernel_pair_g_ewald];\n"
|
||||
" mul.f32 %f96, %f95, %f94;\n"
|
||||
" mul.f32 %f97, %f96, %f96;\n"
|
||||
" mov.f32 %f98, 0f3f800000; \n"
|
||||
" mov.f32 %f99, 0f3ea7ba05; \n"
|
||||
" mad.f32 %f100, %f99, %f96, %f98;\n"
|
||||
" neg.f32 %f101, %f97;\n"
|
||||
" rcp.approx.f32 %f102, %f100;\n"
|
||||
" mov.f32 %f103, 0f3fb8aa3b; \n"
|
||||
" mul.f32 %f104, %f101, %f103;\n"
|
||||
" ex2.approx.f32 %f105, %f104;\n"
|
||||
" mov.f32 %f106, 0f3e827906; \n"
|
||||
" mov.f32 %f107, 0fbe91a98e; \n"
|
||||
" mov.f32 %f108, 0f3fb5f0e3; \n"
|
||||
" mov.f32 %f109, 0fbfba00e3; \n"
|
||||
" mov.f32 %f110, 0f3f87dc22; \n"
|
||||
" mad.f32 %f111, %f110, %f102, %f109;\n"
|
||||
" mad.f32 %f112, %f102, %f111, %f108;\n"
|
||||
" mad.f32 %f113, %f102, %f112, %f107;\n"
|
||||
" mad.f32 %f114, %f102, %f113, %f106;\n"
|
||||
" mul.f32 %f115, %f102, %f114;\n"
|
||||
" mul.f32 %f116, %f105, %f115;\n"
|
||||
" mov.f32 %f117, %f116;\n"
|
||||
" mov.s32 %r35, %r25;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" mov.s32 %r37, 0;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f118,%f119,%f120,%f121},[q_tex,{%r35,%r36,%r37,%r38}];\n"
|
||||
" .loc 14 189 0\n"
|
||||
" mov.f32 %f122, %f118;\n"
|
||||
" ld.param.f32 %f123, [__cudaparm_kernel_pair_qqrd2e];\n"
|
||||
" mul.f32 %f124, %f123, %f33;\n"
|
||||
" mul.f32 %f125, %f124, %f122;\n"
|
||||
" div.approx.f32 %f126, %f125, %f94;\n"
|
||||
" mov.f32 %f127, %f126;\n"
|
||||
" .loc 14 190 0\n"
|
||||
" mov.f32 %f128, 0f3f906ebb; \n"
|
||||
" mul.f32 %f129, %f96, %f128;\n"
|
||||
" mad.f32 %f130, %f105, %f129, %f116;\n"
|
||||
" sub.f32 %f131, %f130, %f43;\n"
|
||||
" mul.f32 %f132, %f126, %f131;\n"
|
||||
" bra.uni $Lt_0_14594;\n"
|
||||
"$Lt_0_14850:\n"
|
||||
" .loc 14 193 0\n"
|
||||
" mov.f32 %f127, 0f00000000; \n"
|
||||
" mov.f32 %f132, 0f00000000; \n"
|
||||
"$Lt_0_14594:\n"
|
||||
" .loc 14 198 0\n"
|
||||
" add.f32 %f133, %f132, %f68;\n"
|
||||
" mul.f32 %f134, %f133, %f59;\n"
|
||||
" mad.f32 %f36, %f53, %f134, %f36;\n"
|
||||
" .loc 14 199 0\n"
|
||||
" mad.f32 %f35, %f52, %f134, %f35;\n"
|
||||
" .loc 14 200 0\n"
|
||||
" mad.f32 %f34, %f54, %f134, %f34;\n"
|
||||
" @!%p3 bra $Lt_0_15618;\n"
|
||||
" .loc 14 203 0\n"
|
||||
" mov.f32 %f135, %f117;\n"
|
||||
" sub.f32 %f136, %f135, %f43;\n"
|
||||
" mad.f32 %f37, %f127, %f136, %f37;\n"
|
||||
" @!%p6 bra $Lt_0_15618;\n"
|
||||
" .loc 14 205 0\n"
|
||||
" cvt.rzi.s32.f32 %r39, %f51;\n"
|
||||
" cvt.rzi.s32.f32 %r40, %f28;\n"
|
||||
" ld.param.u64 %rd23, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" ld.param.s32 %r41, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r42, %r41, %r40;\n"
|
||||
" add.s32 %r43, %r39, %r42;\n"
|
||||
" cvt.u64.s32 %rd24, %r43;\n"
|
||||
" mul.lo.u64 %rd25, %rd24, 16;\n"
|
||||
" add.u64 %rd22, %rd23, %rd25;\n"
|
||||
" mov.f32 %f137, %f62;\n"
|
||||
" ld.global.v2.f32 {%f138,%f139}, [%rd22+8];\n"
|
||||
" mul.f32 %f140, %f138, %f137;\n"
|
||||
" sub.f32 %f141, %f140, %f139;\n"
|
||||
" mul.f32 %f142, %f137, %f141;\n"
|
||||
" mov.f32 %f143, %f80;\n"
|
||||
" mul.f32 %f144, %f143, %f142;\n"
|
||||
" ld.param.f32 %f145, [__cudaparm_kernel_pair_cut_lj_innersq];\n"
|
||||
" setp.lt.f32 %p9, %f145, %f57;\n"
|
||||
" selp.f32 %f142, %f144, %f142, %p9;\n"
|
||||
" .loc 14 149 0\n"
|
||||
" ld.shared.f32 %f40, [%rd18+0];\n"
|
||||
" .loc 14 208 0\n"
|
||||
" mad.f32 %f38, %f40, %f142, %f38;\n"
|
||||
"$Lt_0_15618:\n"
|
||||
"$Lt_0_15106:\n"
|
||||
" @!%p4 bra $Lt_0_16130;\n"
|
||||
" .loc 14 212 0\n"
|
||||
" mov.f32 %f146, %f10;\n"
|
||||
" mul.f32 %f147, %f53, %f53;\n"
|
||||
" mad.f32 %f148, %f134, %f147, %f146;\n"
|
||||
" mov.f32 %f10, %f148;\n"
|
||||
" .loc 14 213 0\n"
|
||||
" mov.f32 %f149, %f12;\n"
|
||||
" mad.f32 %f150, %f134, %f55, %f149;\n"
|
||||
" mov.f32 %f12, %f150;\n"
|
||||
" .loc 14 214 0\n"
|
||||
" mov.f32 %f151, %f14;\n"
|
||||
" mul.f32 %f152, %f54, %f54;\n"
|
||||
" mad.f32 %f153, %f134, %f152, %f151;\n"
|
||||
" mov.f32 %f14, %f153;\n"
|
||||
" .loc 14 215 0\n"
|
||||
" mov.f32 %f154, %f16;\n"
|
||||
" mul.f32 %f155, %f52, %f53;\n"
|
||||
" mad.f32 %f156, %f134, %f155, %f154;\n"
|
||||
" mov.f32 %f16, %f156;\n"
|
||||
" .loc 14 216 0\n"
|
||||
" mov.f32 %f157, %f18;\n"
|
||||
" mul.f32 %f158, %f53, %f54;\n"
|
||||
" mad.f32 %f159, %f134, %f158, %f157;\n"
|
||||
" mov.f32 %f18, %f159;\n"
|
||||
" .loc 14 217 0\n"
|
||||
" mul.f32 %f160, %f52, %f54;\n"
|
||||
" mad.f32 %f19, %f134, %f160, %f19;\n"
|
||||
" mov.f32 %f161, %f19;\n"
|
||||
"$Lt_0_16130:\n"
|
||||
"$Lt_0_13058:\n"
|
||||
" .loc 14 145 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p10, %rd13, %rd10;\n"
|
||||
" @%p10 bra $Lt_0_12802;\n"
|
||||
" bra.uni $Lt_0_12290;\n"
|
||||
"$Lt_0_17922:\n"
|
||||
" mov.s32 %r44, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r44;\n"
|
||||
" mov.s32 %r45, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r45;\n"
|
||||
"$Lt_0_12290:\n"
|
||||
" .loc 14 224 0\n"
|
||||
" ld.param.u64 %rd26, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd27, %rd26, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_16898;\n"
|
||||
" .loc 14 226 0\n"
|
||||
" st.global.f32 [%rd27+0], %f38;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" cvt.u64.s32 %rd28, %r6;\n"
|
||||
" mul.lo.u64 %rd29, %rd28, 4;\n"
|
||||
" add.u64 %rd27, %rd29, %rd27;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" st.global.f32 [%rd27+0], %f37;\n"
|
||||
" .loc 14 229 0\n"
|
||||
" add.u64 %rd27, %rd29, %rd27;\n"
|
||||
"$Lt_0_16898:\n"
|
||||
" @!%p4 bra $Lt_0_17410;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" mov.f32 %f162, %f10;\n"
|
||||
" st.global.f32 [%rd27+0], %f162;\n"
|
||||
" .loc 14 234 0\n"
|
||||
" cvt.u64.s32 %rd30, %r6;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd27, %rd31, %rd27;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" mov.f32 %f163, %f12;\n"
|
||||
" st.global.f32 [%rd27+0], %f163;\n"
|
||||
" .loc 14 234 0\n"
|
||||
" add.u64 %rd27, %rd31, %rd27;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" mov.f32 %f164, %f14;\n"
|
||||
" st.global.f32 [%rd27+0], %f164;\n"
|
||||
" .loc 14 234 0\n"
|
||||
" add.u64 %rd27, %rd31, %rd27;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" mov.f32 %f165, %f16;\n"
|
||||
" st.global.f32 [%rd27+0], %f165;\n"
|
||||
" .loc 14 234 0\n"
|
||||
" add.u64 %rd27, %rd31, %rd27;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" mov.f32 %f166, %f18;\n"
|
||||
" st.global.f32 [%rd27+0], %f166;\n"
|
||||
" add.u64 %rd32, %rd31, %rd27;\n"
|
||||
" st.global.f32 [%rd32+0], %f19;\n"
|
||||
"$Lt_0_17410:\n"
|
||||
" .loc 14 237 0\n"
|
||||
" ld.param.u64 %rd33, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd34, %rd2, 16;\n"
|
||||
" add.u64 %rd35, %rd33, %rd34;\n"
|
||||
" mov.f32 %f167, %f168;\n"
|
||||
" st.global.v4.f32 [%rd35+0], {%f36,%f35,%f34,%f167};\n"
|
||||
"$Lt_0_11778:\n"
|
||||
" .loc 14 239 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_ljd_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_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_nall,\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 .f32 __cudaparm_kernel_pair_fast_denom_lj,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_fast_cut_bothsq,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_fast_cut_ljsq,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_fast_cut_lj_innersq)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<40>;\n"
|
||||
" .reg .u64 %rd<45>;\n"
|
||||
" .reg .f32 %f<177>;\n"
|
||||
" .reg .pred %p<13>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj260[32];\n"
|
||||
" .shared .align 8 .b8 __cuda_ljd296[1024];\n"
|
||||
" .loc 14 250 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" cvt.u64.s32 %rd1, %r1;\n"
|
||||
" mov.u32 %r2, 7;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_12546;\n"
|
||||
" .loc 14 256 0\n"
|
||||
" mov.u64 %rd2, __cuda_sp_lj260;\n"
|
||||
" mul.lo.u64 %rd3, %rd1, 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, %rd2;\n"
|
||||
" st.shared.f32 [%rd6+0], %f1;\n"
|
||||
"$Lt_1_12546:\n"
|
||||
" mov.u64 %rd7, __cuda_ljd296;\n"
|
||||
" mov.u64 %rd2, __cuda_sp_lj260;\n"
|
||||
" .loc 14 257 0\n"
|
||||
" mul.lo.u64 %rd8, %rd1, 8;\n"
|
||||
" ld.param.u64 %rd9, [__cudaparm_kernel_pair_fast_ljd_in];\n"
|
||||
" add.u64 %rd10, %rd9, %rd8;\n"
|
||||
" add.u64 %rd11, %rd8, %rd7;\n"
|
||||
" ld.global.v2.f32 {%f2,%f3}, [%rd10+0];\n"
|
||||
" st.shared.f32 [%rd11+0], %f2;\n"
|
||||
" st.shared.f32 [%rd11+4], %f3;\n"
|
||||
" ld.global.v2.f32 {%f4,%f5}, [%rd10+512];\n"
|
||||
" .loc 14 258 0\n"
|
||||
" st.shared.f32 [%rd11+512], %f4;\n"
|
||||
" st.shared.f32 [%rd11+516], %f5;\n"
|
||||
" .loc 14 261 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r3, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r4, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r5, %r3, %r4;\n"
|
||||
" add.s32 %r6, %r5, %r1;\n"
|
||||
" ld.param.s32 %r7, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p2, %r6, %r7;\n"
|
||||
" @%p2 bra $Lt_1_13058;\n"
|
||||
" .loc 14 273 0\n"
|
||||
" mov.f32 %f6, 0f00000000; \n"
|
||||
" mov.f32 %f7, %f6;\n"
|
||||
" mov.f32 %f8, 0f00000000; \n"
|
||||
" mov.f32 %f9, %f8;\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"
|
||||
" .loc 14 276 0\n"
|
||||
" cvt.u64.s32 %rd12, %r6;\n"
|
||||
" mul.lo.u64 %rd13, %rd12, 4;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd15, %rd14, %rd13;\n"
|
||||
" ld.global.s32 %r8, [%rd15+0];\n"
|
||||
" .loc 14 278 0\n"
|
||||
" ld.param.s32 %r9, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd16, %r9;\n"
|
||||
" mul.lo.u64 %rd17, %rd16, 4;\n"
|
||||
" add.u64 %rd18, %rd15, %rd17;\n"
|
||||
" ld.global.s32 %r10, [%rd18+0];\n"
|
||||
" .loc 14 279 0\n"
|
||||
" add.u64 %rd19, %rd18, %rd17;\n"
|
||||
" mov.s64 %rd20, %rd19;\n"
|
||||
" mov.s32 %r11, %r8;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" mov.s32 %r14, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f18,%f19,%f20,%f21},[pos_tex,{%r11,%r12,%r13,%r14}];\n"
|
||||
" .loc 14 282 0\n"
|
||||
" mov.f32 %f22, %f18;\n"
|
||||
" mov.f32 %f23, %f19;\n"
|
||||
" mov.f32 %f24, %f20;\n"
|
||||
" mov.f32 %f25, %f21;\n"
|
||||
" mov.s32 %r15, %r8;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" mov.s32 %r18, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f26,%f27,%f28,%f29},[q_tex,{%r15,%r16,%r17,%r18}];\n"
|
||||
" .loc 14 283 0\n"
|
||||
" mov.f32 %f30, %f26;\n"
|
||||
" mul24.lo.s32 %r19, %r10, %r9;\n"
|
||||
" cvt.s64.s32 %rd21, %r19;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd19, %rd22;\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r21, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p3, %rd19, %rd23;\n"
|
||||
" mov.f32 %f31, 0f00000000; \n"
|
||||
" mov.f32 %f32, 0f00000000; \n"
|
||||
" mov.f32 %f33, 0f00000000; \n"
|
||||
" mov.f32 %f34, 0f00000000; \n"
|
||||
" mov.f32 %f35, 0f00000000; \n"
|
||||
" @%p3 bra $Lt_1_19202;\n"
|
||||
" cvt.rzi.s32.f32 %r22, %f25;\n"
|
||||
" mov.s32 %r23, 0;\n"
|
||||
" setp.gt.s32 %p4, %r21, %r23;\n"
|
||||
" mov.s32 %r24, 0;\n"
|
||||
" setp.gt.s32 %p5, %r20, %r24;\n"
|
||||
" ld.param.f32 %f36, [__cudaparm_kernel_pair_fast_cut_bothsq];\n"
|
||||
"$Lt_1_14082:\n"
|
||||
" .loc 14 287 0\n"
|
||||
" ld.global.s32 %r25, [%rd20+0];\n"
|
||||
" .loc 14 290 0\n"
|
||||
" shr.s32 %r26, %r25, 30;\n"
|
||||
" cvt.s64.s32 %rd24, %r26;\n"
|
||||
" and.b64 %rd25, %rd24, 3;\n"
|
||||
" mul.lo.u64 %rd26, %rd25, 4;\n"
|
||||
" add.u64 %rd27, %rd2, %rd26;\n"
|
||||
" ld.shared.f32 %f37, [%rd27+0];\n"
|
||||
" .loc 14 291 0\n"
|
||||
" mov.f32 %f38, 0f3f800000; \n"
|
||||
" ld.shared.f32 %f39, [%rd27+16];\n"
|
||||
" sub.f32 %f40, %f38, %f39;\n"
|
||||
" and.b32 %r27, %r25, 1073741823;\n"
|
||||
" mov.s32 %r28, %r27;\n"
|
||||
" mov.s32 %r29, 0;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f41,%f42,%f43,%f44},[pos_tex,{%r28,%r29,%r30,%r31}];\n"
|
||||
" .loc 14 294 0\n"
|
||||
" mov.f32 %f45, %f41;\n"
|
||||
" mov.f32 %f46, %f42;\n"
|
||||
" mov.f32 %f47, %f43;\n"
|
||||
" mov.f32 %f48, %f44;\n"
|
||||
" sub.f32 %f49, %f23, %f46;\n"
|
||||
" sub.f32 %f50, %f22, %f45;\n"
|
||||
" sub.f32 %f51, %f24, %f47;\n"
|
||||
" mul.f32 %f52, %f49, %f49;\n"
|
||||
" mad.f32 %f53, %f50, %f50, %f52;\n"
|
||||
" mad.f32 %f54, %f51, %f51, %f53;\n"
|
||||
" setp.lt.f32 %p6, %f54, %f36;\n"
|
||||
" @!%p6 bra $Lt_1_17410;\n"
|
||||
" ld.param.f32 %f55, [__cudaparm_kernel_pair_fast_cut_ljsq];\n"
|
||||
" setp.lt.f32 %p7, %f54, %f55;\n"
|
||||
" rcp.approx.f32 %f56, %f54;\n"
|
||||
" @!%p7 bra $Lt_1_15106;\n"
|
||||
" .loc 14 309 0\n"
|
||||
" cvt.rzi.s32.f32 %r32, %f48;\n"
|
||||
" cvt.u64.s32 %rd28, %r22;\n"
|
||||
" mul.lo.u64 %rd29, %rd28, 8;\n"
|
||||
" add.u64 %rd30, %rd7, %rd29;\n"
|
||||
" cvt.u64.s32 %rd31, %r32;\n"
|
||||
" mul.lo.u64 %rd32, %rd31, 8;\n"
|
||||
" add.u64 %rd33, %rd7, %rd32;\n"
|
||||
" ld.shared.f32 %f57, [%rd30+0];\n"
|
||||
" ld.shared.f32 %f58, [%rd33+0];\n"
|
||||
" mul.f32 %f59, %f57, %f58;\n"
|
||||
" .loc 14 310 0\n"
|
||||
" ld.shared.f32 %f60, [%rd30+4];\n"
|
||||
" ld.shared.f32 %f61, [%rd33+4];\n"
|
||||
" add.f32 %f62, %f60, %f61;\n"
|
||||
" mov.f32 %f63, 0f3f000000; \n"
|
||||
" mul.f32 %f64, %f62, %f63;\n"
|
||||
" .loc 14 314 0\n"
|
||||
" mul.f32 %f65, %f64, %f64;\n"
|
||||
" sqrt.approx.f32 %f66, %f59;\n"
|
||||
" mov.f32 %f67, 0f40800000; \n"
|
||||
" mul.f32 %f68, %f66, %f67;\n"
|
||||
" mul.f32 %f69, %f65, %f56;\n"
|
||||
" mul.f32 %f70, %f69, %f69;\n"
|
||||
" mul.f32 %f71, %f69, %f70;\n"
|
||||
" mul.f32 %f72, %f68, %f71;\n"
|
||||
" mov.f32 %f73, %f72;\n"
|
||||
" .loc 14 315 0\n"
|
||||
" mul.f32 %f74, %f71, %f72;\n"
|
||||
" mov.f32 %f75, %f74;\n"
|
||||
" .loc 14 316 0\n"
|
||||
" mov.f32 %f76, 0f40c00000; \n"
|
||||
" mul.f32 %f77, %f72, %f76;\n"
|
||||
" mov.f32 %f78, 0f41400000; \n"
|
||||
" mul.f32 %f79, %f78, %f74;\n"
|
||||
" sub.f32 %f80, %f79, %f77;\n"
|
||||
" .loc 14 290 0\n"
|
||||
" ld.shared.f32 %f37, [%rd27+0];\n"
|
||||
" .loc 14 316 0\n"
|
||||
" mul.f32 %f81, %f37, %f80;\n"
|
||||
" ld.param.f32 %f82, [__cudaparm_kernel_pair_fast_cut_lj_innersq];\n"
|
||||
" setp.gt.f32 %p8, %f54, %f82;\n"
|
||||
" @!%p8 bra $Lt_1_14850;\n"
|
||||
" .loc 14 322 0\n"
|
||||
" add.f32 %f83, %f54, %f54;\n"
|
||||
" sub.f32 %f84, %f55, %f54;\n"
|
||||
" add.f32 %f85, %f83, %f55;\n"
|
||||
" mul.f32 %f86, %f84, %f84;\n"
|
||||
" mov.f32 %f87, 0f40400000; \n"
|
||||
" mul.f32 %f88, %f87, %f82;\n"
|
||||
" sub.f32 %f89, %f85, %f88;\n"
|
||||
" ld.param.f32 %f90, [__cudaparm_kernel_pair_fast_denom_lj];\n"
|
||||
" div.approx.f32 %f91, %f89, %f90;\n"
|
||||
" mul.f32 %f92, %f86, %f91;\n"
|
||||
" mov.f32 %f93, %f92;\n"
|
||||
" .loc 14 325 0\n"
|
||||
" mov.f32 %f94, 0f41400000; \n"
|
||||
" mul.f32 %f95, %f54, %f94;\n"
|
||||
" mul.f32 %f96, %f84, %f95;\n"
|
||||
" sub.f32 %f97, %f54, %f82;\n"
|
||||
" mul.f32 %f98, %f96, %f97;\n"
|
||||
" div.approx.f32 %f99, %f98, %f90;\n"
|
||||
" sub.f32 %f100, %f74, %f72;\n"
|
||||
" mul.f32 %f101, %f99, %f100;\n"
|
||||
" mad.f32 %f81, %f81, %f92, %f101;\n"
|
||||
" bra.uni $Lt_1_14850;\n"
|
||||
"$Lt_1_15106:\n"
|
||||
" .loc 14 328 0\n"
|
||||
" mov.f32 %f81, 0f00000000; \n"
|
||||
"$Lt_1_14850:\n"
|
||||
" ld.param.f32 %f102, [__cudaparm_kernel_pair_fast_cut_coulsq];\n"
|
||||
" setp.gt.f32 %p9, %f102, %f54;\n"
|
||||
" @!%p9 bra $Lt_1_16130;\n"
|
||||
" .loc 14 335 0\n"
|
||||
" sqrt.approx.f32 %f103, %f54;\n"
|
||||
" ld.param.f32 %f104, [__cudaparm_kernel_pair_fast_g_ewald];\n"
|
||||
" mul.f32 %f105, %f104, %f103;\n"
|
||||
" mul.f32 %f106, %f105, %f105;\n"
|
||||
" mov.f32 %f107, 0f3f800000; \n"
|
||||
" mov.f32 %f108, 0f3ea7ba05; \n"
|
||||
" mad.f32 %f109, %f108, %f105, %f107;\n"
|
||||
" neg.f32 %f110, %f106;\n"
|
||||
" rcp.approx.f32 %f111, %f109;\n"
|
||||
" mov.f32 %f112, 0f3fb8aa3b; \n"
|
||||
" mul.f32 %f113, %f110, %f112;\n"
|
||||
" ex2.approx.f32 %f114, %f113;\n"
|
||||
" mov.f32 %f115, 0f3e827906; \n"
|
||||
" mov.f32 %f116, 0fbe91a98e; \n"
|
||||
" mov.f32 %f117, 0f3fb5f0e3; \n"
|
||||
" mov.f32 %f118, 0fbfba00e3; \n"
|
||||
" mov.f32 %f119, 0f3f87dc22; \n"
|
||||
" mad.f32 %f120, %f119, %f111, %f118;\n"
|
||||
" mad.f32 %f121, %f111, %f120, %f117;\n"
|
||||
" mad.f32 %f122, %f111, %f121, %f116;\n"
|
||||
" mad.f32 %f123, %f111, %f122, %f115;\n"
|
||||
" mul.f32 %f124, %f111, %f123;\n"
|
||||
" mul.f32 %f125, %f114, %f124;\n"
|
||||
" mov.f32 %f126, %f125;\n"
|
||||
" mov.s32 %r33, %r27;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" mov.s32 %r35, 0;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f127,%f128,%f129,%f130},[q_tex,{%r33,%r34,%r35,%r36}];\n"
|
||||
" .loc 14 336 0\n"
|
||||
" mov.f32 %f131, %f127;\n"
|
||||
" ld.param.f32 %f132, [__cudaparm_kernel_pair_fast_qqrd2e];\n"
|
||||
" mul.f32 %f133, %f132, %f30;\n"
|
||||
" mul.f32 %f134, %f133, %f131;\n"
|
||||
" div.approx.f32 %f135, %f134, %f103;\n"
|
||||
" mov.f32 %f136, %f135;\n"
|
||||
" .loc 14 337 0\n"
|
||||
" mov.f32 %f137, 0f3f906ebb; \n"
|
||||
" mul.f32 %f138, %f105, %f137;\n"
|
||||
" mad.f32 %f139, %f114, %f138, %f125;\n"
|
||||
" sub.f32 %f140, %f139, %f40;\n"
|
||||
" mul.f32 %f141, %f135, %f140;\n"
|
||||
" bra.uni $Lt_1_15874;\n"
|
||||
"$Lt_1_16130:\n"
|
||||
" .loc 14 340 0\n"
|
||||
" mov.f32 %f136, 0f00000000; \n"
|
||||
" mov.f32 %f141, 0f00000000; \n"
|
||||
"$Lt_1_15874:\n"
|
||||
" .loc 14 345 0\n"
|
||||
" add.f32 %f142, %f141, %f81;\n"
|
||||
" mul.f32 %f143, %f142, %f56;\n"
|
||||
" mad.f32 %f33, %f50, %f143, %f33;\n"
|
||||
" .loc 14 346 0\n"
|
||||
" mad.f32 %f32, %f49, %f143, %f32;\n"
|
||||
" .loc 14 347 0\n"
|
||||
" mad.f32 %f31, %f51, %f143, %f31;\n"
|
||||
" @!%p4 bra $Lt_1_16898;\n"
|
||||
" .loc 14 350 0\n"
|
||||
" mov.f32 %f144, %f126;\n"
|
||||
" sub.f32 %f145, %f144, %f40;\n"
|
||||
" mad.f32 %f34, %f136, %f145, %f34;\n"
|
||||
" @!%p7 bra $Lt_1_16898;\n"
|
||||
" .loc 14 355 0\n"
|
||||
" mov.f32 %f146, %f75;\n"
|
||||
" mov.f32 %f147, %f73;\n"
|
||||
" sub.f32 %f148, %f146, %f147;\n"
|
||||
" mov.f32 %f149, %f93;\n"
|
||||
" mul.f32 %f150, %f149, %f148;\n"
|
||||
" ld.param.f32 %f151, [__cudaparm_kernel_pair_fast_cut_lj_innersq];\n"
|
||||
" setp.lt.f32 %p10, %f151, %f54;\n"
|
||||
" selp.f32 %f152, %f150, %f148, %p10;\n"
|
||||
" .loc 14 290 0\n"
|
||||
" ld.shared.f32 %f37, [%rd27+0];\n"
|
||||
" .loc 14 355 0\n"
|
||||
" mad.f32 %f35, %f37, %f152, %f35;\n"
|
||||
"$Lt_1_16898:\n"
|
||||
"$Lt_1_16386:\n"
|
||||
" @!%p5 bra $Lt_1_17410;\n"
|
||||
" .loc 14 359 0\n"
|
||||
" mov.f32 %f153, %f7;\n"
|
||||
" mul.f32 %f154, %f50, %f50;\n"
|
||||
" mad.f32 %f155, %f143, %f154, %f153;\n"
|
||||
" mov.f32 %f7, %f155;\n"
|
||||
" .loc 14 360 0\n"
|
||||
" mov.f32 %f156, %f9;\n"
|
||||
" mad.f32 %f157, %f143, %f52, %f156;\n"
|
||||
" mov.f32 %f9, %f157;\n"
|
||||
" .loc 14 361 0\n"
|
||||
" mov.f32 %f158, %f11;\n"
|
||||
" mul.f32 %f159, %f51, %f51;\n"
|
||||
" mad.f32 %f160, %f143, %f159, %f158;\n"
|
||||
" mov.f32 %f11, %f160;\n"
|
||||
" .loc 14 362 0\n"
|
||||
" mov.f32 %f161, %f13;\n"
|
||||
" mul.f32 %f162, %f49, %f50;\n"
|
||||
" mad.f32 %f163, %f143, %f162, %f161;\n"
|
||||
" mov.f32 %f13, %f163;\n"
|
||||
" .loc 14 363 0\n"
|
||||
" mov.f32 %f164, %f15;\n"
|
||||
" mul.f32 %f165, %f50, %f51;\n"
|
||||
" mad.f32 %f166, %f143, %f165, %f164;\n"
|
||||
" mov.f32 %f15, %f166;\n"
|
||||
" .loc 14 364 0\n"
|
||||
" mul.f32 %f167, %f49, %f51;\n"
|
||||
" mad.f32 %f16, %f143, %f167, %f16;\n"
|
||||
" mov.f32 %f168, %f16;\n"
|
||||
"$Lt_1_17410:\n"
|
||||
"$Lt_1_14338:\n"
|
||||
" .loc 14 286 0\n"
|
||||
" add.u64 %rd20, %rd17, %rd20;\n"
|
||||
" setp.gt.u64 %p11, %rd23, %rd20;\n"
|
||||
" @%p11 bra $Lt_1_14082;\n"
|
||||
" bra.uni $Lt_1_13570;\n"
|
||||
"$Lt_1_19202:\n"
|
||||
" mov.s32 %r37, 0;\n"
|
||||
" setp.gt.s32 %p4, %r21, %r37;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" setp.gt.s32 %p5, %r20, %r38;\n"
|
||||
"$Lt_1_13570:\n"
|
||||
" .loc 14 371 0\n"
|
||||
" ld.param.u64 %rd34, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd35, %rd34, %rd13;\n"
|
||||
" @!%p4 bra $Lt_1_18178;\n"
|
||||
" .loc 14 373 0\n"
|
||||
" st.global.f32 [%rd35+0], %f35;\n"
|
||||
" .loc 14 374 0\n"
|
||||
" cvt.u64.s32 %rd36, %r7;\n"
|
||||
" mul.lo.u64 %rd37, %rd36, 4;\n"
|
||||
" add.u64 %rd35, %rd37, %rd35;\n"
|
||||
" .loc 14 375 0\n"
|
||||
" st.global.f32 [%rd35+0], %f34;\n"
|
||||
" .loc 14 376 0\n"
|
||||
" add.u64 %rd35, %rd37, %rd35;\n"
|
||||
"$Lt_1_18178:\n"
|
||||
" @!%p5 bra $Lt_1_18690;\n"
|
||||
" .loc 14 380 0\n"
|
||||
" mov.f32 %f169, %f7;\n"
|
||||
" st.global.f32 [%rd35+0], %f169;\n"
|
||||
" .loc 14 381 0\n"
|
||||
" cvt.u64.s32 %rd38, %r7;\n"
|
||||
" mul.lo.u64 %rd39, %rd38, 4;\n"
|
||||
" add.u64 %rd35, %rd39, %rd35;\n"
|
||||
" .loc 14 380 0\n"
|
||||
" mov.f32 %f170, %f9;\n"
|
||||
" st.global.f32 [%rd35+0], %f170;\n"
|
||||
" .loc 14 381 0\n"
|
||||
" add.u64 %rd35, %rd39, %rd35;\n"
|
||||
" .loc 14 380 0\n"
|
||||
" mov.f32 %f171, %f11;\n"
|
||||
" st.global.f32 [%rd35+0], %f171;\n"
|
||||
" .loc 14 381 0\n"
|
||||
" add.u64 %rd35, %rd39, %rd35;\n"
|
||||
" .loc 14 380 0\n"
|
||||
" mov.f32 %f172, %f13;\n"
|
||||
" st.global.f32 [%rd35+0], %f172;\n"
|
||||
" .loc 14 381 0\n"
|
||||
" add.u64 %rd35, %rd39, %rd35;\n"
|
||||
" .loc 14 380 0\n"
|
||||
" mov.f32 %f173, %f15;\n"
|
||||
" st.global.f32 [%rd35+0], %f173;\n"
|
||||
" add.u64 %rd40, %rd39, %rd35;\n"
|
||||
" st.global.f32 [%rd40+0], %f16;\n"
|
||||
"$Lt_1_18690:\n"
|
||||
" .loc 14 384 0\n"
|
||||
" ld.param.u64 %rd41, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd42, %rd12, 16;\n"
|
||||
" add.u64 %rd43, %rd41, %rd42;\n"
|
||||
" mov.f32 %f174, %f175;\n"
|
||||
" st.global.v4.f32 [%rd43+0], {%f33,%f32,%f31,%f174};\n"
|
||||
"$Lt_1_13058:\n"
|
||||
" .loc 14 386 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
3136
lib/gpu/gb_gpu_ptx.h
3136
lib/gpu/gb_gpu_ptx.h
File diff suppressed because it is too large
Load Diff
|
@ -1,567 +0,0 @@
|
|||
const char * lj96_cut_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_nbor_pitch)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<33>;\n"
|
||||
" .reg .u64 %rd<36>;\n"
|
||||
" .reg .f32 %f<87>;\n"
|
||||
" .reg .pred %p<8>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj84[16];\n"
|
||||
" .loc 14 87 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 91 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+0], %f1;\n"
|
||||
" .loc 14 92 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+4], %f2;\n"
|
||||
" .loc 14 93 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+8], %f3;\n"
|
||||
" .loc 14 94 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+12], %f4;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_7938;\n"
|
||||
" .loc 14 105 0\n"
|
||||
" mov.f32 %f5, 0f00000000; \n"
|
||||
" mov.f32 %f6, %f5;\n"
|
||||
" mov.f32 %f7, 0f00000000; \n"
|
||||
" mov.f32 %f8, %f7;\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"
|
||||
" .loc 14 108 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 110 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 111 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 114 0\n"
|
||||
" mov.f32 %f21, %f17;\n"
|
||||
" mov.f32 %f22, %f18;\n"
|
||||
" mov.f32 %f23, %f19;\n"
|
||||
" mov.f32 %f24, %f20;\n"
|
||||
" mul24.lo.s32 %r14, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r14;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r15, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r16, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\n"
|
||||
" mov.f32 %f25, 0f00000000; \n"
|
||||
" mov.f32 %f26, 0f00000000; \n"
|
||||
" mov.f32 %f27, 0f00000000; \n"
|
||||
" mov.f32 %f28, 0f00000000; \n"
|
||||
" @%p2 bra $Lt_0_12034;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" setp.gt.s32 %p3, %r16, %r17;\n"
|
||||
" mov.s32 %r18, 0;\n"
|
||||
" setp.gt.s32 %p4, %r15, %r18;\n"
|
||||
" cvt.rzi.s32.f32 %r19, %f24;\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r21, %r20, %r19;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" mov.u64 %rd15, __cuda_sp_lj84;\n"
|
||||
"$Lt_0_8962:\n"
|
||||
" .loc 14 120 0\n"
|
||||
" ld.global.s32 %r22, [%rd10+0];\n"
|
||||
" .loc 14 121 0\n"
|
||||
" shr.s32 %r23, %r22, 30;\n"
|
||||
" cvt.s64.s32 %rd16, %r23;\n"
|
||||
" and.b64 %rd17, %rd16, 3;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd15, %rd18;\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" and.b32 %r24, %r22, 1073741823;\n"
|
||||
" mov.s32 %r25, 0;\n"
|
||||
" mov.s32 %r26, 0;\n"
|
||||
" mov.s32 %r27, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r24,%r25,%r26,%r27}];\n"
|
||||
" .loc 14 124 0\n"
|
||||
" mov.f32 %f34, %f30;\n"
|
||||
" mov.f32 %f35, %f31;\n"
|
||||
" mov.f32 %f36, %f32;\n"
|
||||
" mov.f32 %f37, %f33;\n"
|
||||
" cvt.rzi.s32.f32 %r28, %f37;\n"
|
||||
" sub.f32 %f38, %f22, %f35;\n"
|
||||
" sub.f32 %f39, %f21, %f34;\n"
|
||||
" sub.f32 %f40, %f23, %f36;\n"
|
||||
" mul.f32 %f41, %f38, %f38;\n"
|
||||
" mad.f32 %f42, %f39, %f39, %f41;\n"
|
||||
" mad.f32 %f43, %f40, %f40, %f42;\n"
|
||||
" add.s32 %r29, %r28, %r21;\n"
|
||||
" cvt.u64.s32 %rd20, %r29;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 16;\n"
|
||||
" add.u64 %rd22, %rd21, %rd14;\n"
|
||||
" ld.global.f32 %f44, [%rd22+8];\n"
|
||||
" setp.gt.f32 %p5, %f44, %f43;\n"
|
||||
" @!%p5 bra $Lt_0_10242;\n"
|
||||
" .loc 14 139 0\n"
|
||||
" rcp.approx.f32 %f45, %f43;\n"
|
||||
" mul.f32 %f46, %f45, %f45;\n"
|
||||
" mul.f32 %f47, %f45, %f46;\n"
|
||||
" sqrt.approx.f32 %f48, %f47;\n"
|
||||
" mul.f32 %f49, %f45, %f47;\n"
|
||||
" ld.global.v2.f32 {%f50,%f51}, [%rd22+0];\n"
|
||||
" mul.f32 %f52, %f50, %f48;\n"
|
||||
" sub.f32 %f53, %f52, %f51;\n"
|
||||
" mul.f32 %f54, %f49, %f53;\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" .loc 14 139 0\n"
|
||||
" mul.f32 %f55, %f29, %f54;\n"
|
||||
" .loc 14 141 0\n"
|
||||
" mad.f32 %f27, %f39, %f55, %f27;\n"
|
||||
" .loc 14 142 0\n"
|
||||
" mad.f32 %f26, %f38, %f55, %f26;\n"
|
||||
" .loc 14 143 0\n"
|
||||
" mad.f32 %f25, %f40, %f55, %f25;\n"
|
||||
" @!%p3 bra $Lt_0_9730;\n"
|
||||
" .loc 14 147 0\n"
|
||||
" ld.param.u64 %rd23, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd24, %rd23, %rd21;\n"
|
||||
" ld.global.v4.f32 {%f56,%f57,%f58,_}, [%rd24+0];\n"
|
||||
" mul.f32 %f59, %f56, %f48;\n"
|
||||
" sub.f32 %f60, %f59, %f57;\n"
|
||||
" mul.f32 %f61, %f47, %f60;\n"
|
||||
" sub.f32 %f62, %f61, %f58;\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" .loc 14 147 0\n"
|
||||
" mad.f32 %f28, %f29, %f62, %f28;\n"
|
||||
"$Lt_0_9730:\n"
|
||||
" @!%p4 bra $Lt_0_10242;\n"
|
||||
" .loc 14 150 0\n"
|
||||
" mov.f32 %f63, %f6;\n"
|
||||
" mul.f32 %f64, %f39, %f39;\n"
|
||||
" mad.f32 %f65, %f55, %f64, %f63;\n"
|
||||
" mov.f32 %f6, %f65;\n"
|
||||
" .loc 14 151 0\n"
|
||||
" mov.f32 %f66, %f8;\n"
|
||||
" mad.f32 %f67, %f55, %f41, %f66;\n"
|
||||
" mov.f32 %f8, %f67;\n"
|
||||
" .loc 14 152 0\n"
|
||||
" mov.f32 %f68, %f10;\n"
|
||||
" mul.f32 %f69, %f40, %f40;\n"
|
||||
" mad.f32 %f70, %f55, %f69, %f68;\n"
|
||||
" mov.f32 %f10, %f70;\n"
|
||||
" .loc 14 153 0\n"
|
||||
" mov.f32 %f71, %f12;\n"
|
||||
" mul.f32 %f72, %f38, %f39;\n"
|
||||
" mad.f32 %f73, %f55, %f72, %f71;\n"
|
||||
" mov.f32 %f12, %f73;\n"
|
||||
" .loc 14 154 0\n"
|
||||
" mov.f32 %f74, %f14;\n"
|
||||
" mul.f32 %f75, %f39, %f40;\n"
|
||||
" mad.f32 %f76, %f55, %f75, %f74;\n"
|
||||
" mov.f32 %f14, %f76;\n"
|
||||
" .loc 14 155 0\n"
|
||||
" mul.f32 %f77, %f38, %f40;\n"
|
||||
" mad.f32 %f15, %f55, %f77, %f15;\n"
|
||||
" mov.f32 %f78, %f15;\n"
|
||||
"$Lt_0_10242:\n"
|
||||
"$Lt_0_9218:\n"
|
||||
" .loc 14 118 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p6, %rd13, %rd10;\n"
|
||||
" @%p6 bra $Lt_0_8962;\n"
|
||||
" bra.uni $Lt_0_8450;\n"
|
||||
"$Lt_0_12034:\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" setp.gt.s32 %p3, %r16, %r30;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" setp.gt.s32 %p4, %r15, %r31;\n"
|
||||
"$Lt_0_8450:\n"
|
||||
" .loc 14 162 0\n"
|
||||
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd26, %rd25, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_11010;\n"
|
||||
" .loc 14 164 0\n"
|
||||
" st.global.f32 [%rd26+0], %f28;\n"
|
||||
" .loc 14 165 0\n"
|
||||
" cvt.u64.s32 %rd27, %r6;\n"
|
||||
" mul.lo.u64 %rd28, %rd27, 4;\n"
|
||||
" add.u64 %rd26, %rd26, %rd28;\n"
|
||||
"$Lt_0_11010:\n"
|
||||
" @!%p4 bra $Lt_0_11522;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" mov.f32 %f79, %f6;\n"
|
||||
" st.global.f32 [%rd26+0], %f79;\n"
|
||||
" .loc 14 170 0\n"
|
||||
" cvt.u64.s32 %rd29, %r6;\n"
|
||||
" mul.lo.u64 %rd30, %rd29, 4;\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" mov.f32 %f80, %f8;\n"
|
||||
" st.global.f32 [%rd26+0], %f80;\n"
|
||||
" .loc 14 170 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" mov.f32 %f81, %f10;\n"
|
||||
" st.global.f32 [%rd26+0], %f81;\n"
|
||||
" .loc 14 170 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" mov.f32 %f82, %f12;\n"
|
||||
" st.global.f32 [%rd26+0], %f82;\n"
|
||||
" .loc 14 170 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" mov.f32 %f83, %f14;\n"
|
||||
" st.global.f32 [%rd26+0], %f83;\n"
|
||||
" add.u64 %rd31, %rd30, %rd26;\n"
|
||||
" st.global.f32 [%rd31+0], %f15;\n"
|
||||
"$Lt_0_11522:\n"
|
||||
" .loc 14 173 0\n"
|
||||
" ld.param.u64 %rd32, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd33, %rd2, 16;\n"
|
||||
" add.u64 %rd34, %rd32, %rd33;\n"
|
||||
" mov.f32 %f84, %f85;\n"
|
||||
" st.global.v4.f32 [%rd34+0], {%f27,%f26,%f25,%f84};\n"
|
||||
"$Lt_0_7938:\n"
|
||||
" .loc 14 175 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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<36>;\n"
|
||||
" .reg .u64 %rd<48>;\n"
|
||||
" .reg .f32 %f<93>;\n"
|
||||
" .reg .pred %p<11>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj180[16];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj1208[1024];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj31232[1024];\n"
|
||||
" .loc 14 182 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" mov.u32 %r2, 3;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_10242;\n"
|
||||
" .loc 14 189 0\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj180;\n"
|
||||
" cvt.u64.s32 %rd2, %r1;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 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_10242:\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj180;\n"
|
||||
" mov.u32 %r3, 63;\n"
|
||||
" setp.gt.s32 %p2, %r1, %r3;\n"
|
||||
" @%p2 bra $Lt_1_10754;\n"
|
||||
" .loc 14 191 0\n"
|
||||
" mov.u64 %rd7, __cuda_lj1208;\n"
|
||||
" cvt.u64.s32 %rd8, %r1;\n"
|
||||
" mul.lo.u64 %rd9, %rd8, 16;\n"
|
||||
" ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in];\n"
|
||||
" add.u64 %rd11, %rd10, %rd9;\n"
|
||||
" add.u64 %rd12, %rd9, %rd7;\n"
|
||||
" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0];\n"
|
||||
" st.shared.f32 [%rd12+0], %f2;\n"
|
||||
" st.shared.f32 [%rd12+4], %f3;\n"
|
||||
" st.shared.f32 [%rd12+8], %f4;\n"
|
||||
" st.shared.f32 [%rd12+12], %f5;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" mov.u32 %r5, 0;\n"
|
||||
" setp.le.s32 %p3, %r4, %r5;\n"
|
||||
" @%p3 bra $Lt_1_11266;\n"
|
||||
" .loc 14 193 0\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in];\n"
|
||||
" add.u64 %rd15, %rd14, %rd9;\n"
|
||||
" add.u64 %rd16, %rd9, %rd13;\n"
|
||||
" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0];\n"
|
||||
" st.shared.f32 [%rd16+0], %f6;\n"
|
||||
" st.shared.f32 [%rd16+4], %f7;\n"
|
||||
" st.shared.f32 [%rd16+8], %f8;\n"
|
||||
" st.shared.f32 [%rd16+12], %f9;\n"
|
||||
"$Lt_1_11266:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
"$Lt_1_10754:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
" mov.u64 %rd7, __cuda_lj1208;\n"
|
||||
" .loc 14 196 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r6, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r7, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r8, %r6, %r7;\n"
|
||||
" add.s32 %r9, %r8, %r1;\n"
|
||||
" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p4, %r9, %r10;\n"
|
||||
" @%p4 bra $Lt_1_11778;\n"
|
||||
" .loc 14 207 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 14 210 0\n"
|
||||
" cvt.u64.s32 %rd17, %r9;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd20, %rd19, %rd18;\n"
|
||||
" ld.global.s32 %r11, [%rd20+0];\n"
|
||||
" .loc 14 212 0\n"
|
||||
" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd21, %r12;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd20, %rd22;\n"
|
||||
" ld.global.s32 %r13, [%rd23+0];\n"
|
||||
" .loc 14 213 0\n"
|
||||
" add.u64 %rd24, %rd23, %rd22;\n"
|
||||
" mov.s64 %rd25, %rd24;\n"
|
||||
" mov.s32 %r14, %r11;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 216 0\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.f32 %f29, %f25;\n"
|
||||
" mul24.lo.s32 %r18, %r13, %r12;\n"
|
||||
" cvt.s64.s32 %rd26, %r18;\n"
|
||||
" mul.lo.u64 %rd27, %rd26, 4;\n"
|
||||
" add.u64 %rd28, %rd24, %rd27;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p5, %rd24, %rd28;\n"
|
||||
" mov.f32 %f30, 0f00000000; \n"
|
||||
" mov.f32 %f31, 0f00000000; \n"
|
||||
" mov.f32 %f32, 0f00000000; \n"
|
||||
" mov.f32 %f33, 0f00000000; \n"
|
||||
" @%p5 bra $Lt_1_15874;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p6, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p7, %r19, %r22;\n"
|
||||
" cvt.rzi.s32.f32 %r23, %f29;\n"
|
||||
" mov.s32 %r24, 8;\n"
|
||||
" mul24.lo.s32 %r25, %r24, %r23;\n"
|
||||
" cvt.rn.f32.s32 %f34, %r25;\n"
|
||||
"$Lt_1_12802:\n"
|
||||
" .loc 14 223 0\n"
|
||||
" ld.global.s32 %r26, [%rd25+0];\n"
|
||||
" .loc 14 224 0\n"
|
||||
" shr.s32 %r27, %r26, 30;\n"
|
||||
" cvt.s64.s32 %rd29, %r27;\n"
|
||||
" and.b64 %rd30, %rd29, 3;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd32, %rd1, %rd31;\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" and.b32 %r28, %r26, 1073741823;\n"
|
||||
" mov.s32 %r29, 0;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r28,%r29,%r30,%r31}];\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f40, %f36;\n"
|
||||
" mov.f32 %f41, %f37;\n"
|
||||
" mov.f32 %f42, %f38;\n"
|
||||
" mov.f32 %f43, %f39;\n"
|
||||
" sub.f32 %f44, %f27, %f41;\n"
|
||||
" sub.f32 %f45, %f26, %f40;\n"
|
||||
" sub.f32 %f46, %f28, %f42;\n"
|
||||
" mul.f32 %f47, %f44, %f44;\n"
|
||||
" mad.f32 %f48, %f45, %f45, %f47;\n"
|
||||
" mad.f32 %f49, %f46, %f46, %f48;\n"
|
||||
" add.f32 %f50, %f34, %f43;\n"
|
||||
" cvt.rzi.s32.f32 %r32, %f50;\n"
|
||||
" cvt.u64.s32 %rd33, %r32;\n"
|
||||
" mul.lo.u64 %rd34, %rd33, 16;\n"
|
||||
" add.u64 %rd35, %rd34, %rd7;\n"
|
||||
" ld.shared.f32 %f51, [%rd35+8];\n"
|
||||
" setp.gt.f32 %p8, %f51, %f49;\n"
|
||||
" @!%p8 bra $Lt_1_14082;\n"
|
||||
" .loc 14 240 0\n"
|
||||
" rcp.approx.f32 %f52, %f49;\n"
|
||||
" mul.f32 %f53, %f52, %f52;\n"
|
||||
" mul.f32 %f54, %f52, %f53;\n"
|
||||
" sqrt.approx.f32 %f55, %f54;\n"
|
||||
" mul.f32 %f56, %f52, %f54;\n"
|
||||
" ld.shared.f32 %f57, [%rd35+4];\n"
|
||||
" ld.shared.f32 %f58, [%rd35+0];\n"
|
||||
" mul.f32 %f59, %f58, %f55;\n"
|
||||
" sub.f32 %f60, %f59, %f57;\n"
|
||||
" mul.f32 %f61, %f56, %f60;\n"
|
||||
" .loc 14 242 0\n"
|
||||
" mad.f32 %f32, %f45, %f61, %f32;\n"
|
||||
" .loc 14 243 0\n"
|
||||
" mad.f32 %f31, %f44, %f61, %f31;\n"
|
||||
" .loc 14 244 0\n"
|
||||
" mad.f32 %f30, %f46, %f61, %f30;\n"
|
||||
" @!%p6 bra $Lt_1_13570;\n"
|
||||
" .loc 14 247 0\n"
|
||||
" add.u64 %rd36, %rd34, %rd13;\n"
|
||||
" ld.shared.f32 %f62, [%rd36+4];\n"
|
||||
" ld.shared.f32 %f63, [%rd36+0];\n"
|
||||
" mul.f32 %f64, %f63, %f55;\n"
|
||||
" sub.f32 %f65, %f64, %f62;\n"
|
||||
" mul.f32 %f66, %f54, %f65;\n"
|
||||
" .loc 14 248 0\n"
|
||||
" ld.shared.f32 %f67, [%rd36+8];\n"
|
||||
" sub.f32 %f68, %f66, %f67;\n"
|
||||
" .loc 14 224 0\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" .loc 14 248 0\n"
|
||||
" mad.f32 %f33, %f35, %f68, %f33;\n"
|
||||
"$Lt_1_13570:\n"
|
||||
" @!%p7 bra $Lt_1_14082;\n"
|
||||
" .loc 14 251 0\n"
|
||||
" mov.f32 %f69, %f11;\n"
|
||||
" mul.f32 %f70, %f45, %f45;\n"
|
||||
" mad.f32 %f71, %f61, %f70, %f69;\n"
|
||||
" mov.f32 %f11, %f71;\n"
|
||||
" .loc 14 252 0\n"
|
||||
" mov.f32 %f72, %f13;\n"
|
||||
" mad.f32 %f73, %f61, %f47, %f72;\n"
|
||||
" mov.f32 %f13, %f73;\n"
|
||||
" .loc 14 253 0\n"
|
||||
" mov.f32 %f74, %f15;\n"
|
||||
" mul.f32 %f75, %f46, %f46;\n"
|
||||
" mad.f32 %f76, %f61, %f75, %f74;\n"
|
||||
" mov.f32 %f15, %f76;\n"
|
||||
" .loc 14 254 0\n"
|
||||
" mov.f32 %f77, %f17;\n"
|
||||
" mul.f32 %f78, %f44, %f45;\n"
|
||||
" mad.f32 %f79, %f61, %f78, %f77;\n"
|
||||
" mov.f32 %f17, %f79;\n"
|
||||
" .loc 14 255 0\n"
|
||||
" mov.f32 %f80, %f19;\n"
|
||||
" mul.f32 %f81, %f45, %f46;\n"
|
||||
" mad.f32 %f82, %f61, %f81, %f80;\n"
|
||||
" mov.f32 %f19, %f82;\n"
|
||||
" .loc 14 256 0\n"
|
||||
" mul.f32 %f83, %f44, %f46;\n"
|
||||
" mad.f32 %f20, %f61, %f83, %f20;\n"
|
||||
" mov.f32 %f84, %f20;\n"
|
||||
"$Lt_1_14082:\n"
|
||||
"$Lt_1_13058:\n"
|
||||
" .loc 14 221 0\n"
|
||||
" add.u64 %rd25, %rd22, %rd25;\n"
|
||||
" setp.gt.u64 %p9, %rd28, %rd25;\n"
|
||||
" @%p9 bra $Lt_1_12802;\n"
|
||||
" bra.uni $Lt_1_12290;\n"
|
||||
"$Lt_1_15874:\n"
|
||||
" mov.s32 %r33, 0;\n"
|
||||
" setp.gt.s32 %p6, %r20, %r33;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" setp.gt.s32 %p7, %r19, %r34;\n"
|
||||
"$Lt_1_12290:\n"
|
||||
" .loc 14 263 0\n"
|
||||
" ld.param.u64 %rd37, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd38, %rd37, %rd18;\n"
|
||||
" @!%p6 bra $Lt_1_14850;\n"
|
||||
" .loc 14 265 0\n"
|
||||
" st.global.f32 [%rd38+0], %f33;\n"
|
||||
" .loc 14 266 0\n"
|
||||
" cvt.u64.s32 %rd39, %r10;\n"
|
||||
" mul.lo.u64 %rd40, %rd39, 4;\n"
|
||||
" add.u64 %rd38, %rd38, %rd40;\n"
|
||||
"$Lt_1_14850:\n"
|
||||
" @!%p7 bra $Lt_1_15362;\n"
|
||||
" .loc 14 270 0\n"
|
||||
" mov.f32 %f85, %f11;\n"
|
||||
" st.global.f32 [%rd38+0], %f85;\n"
|
||||
" .loc 14 271 0\n"
|
||||
" cvt.u64.s32 %rd41, %r10;\n"
|
||||
" mul.lo.u64 %rd42, %rd41, 4;\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 270 0\n"
|
||||
" mov.f32 %f86, %f13;\n"
|
||||
" st.global.f32 [%rd38+0], %f86;\n"
|
||||
" .loc 14 271 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 270 0\n"
|
||||
" mov.f32 %f87, %f15;\n"
|
||||
" st.global.f32 [%rd38+0], %f87;\n"
|
||||
" .loc 14 271 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 270 0\n"
|
||||
" mov.f32 %f88, %f17;\n"
|
||||
" st.global.f32 [%rd38+0], %f88;\n"
|
||||
" .loc 14 271 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 270 0\n"
|
||||
" mov.f32 %f89, %f19;\n"
|
||||
" st.global.f32 [%rd38+0], %f89;\n"
|
||||
" add.u64 %rd43, %rd42, %rd38;\n"
|
||||
" st.global.f32 [%rd43+0], %f20;\n"
|
||||
"$Lt_1_15362:\n"
|
||||
" .loc 14 274 0\n"
|
||||
" ld.param.u64 %rd44, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd45, %rd17, 16;\n"
|
||||
" add.u64 %rd46, %rd44, %rd45;\n"
|
||||
" mov.f32 %f90, %f91;\n"
|
||||
" st.global.v4.f32 [%rd46+0], {%f32,%f31,%f30,%f90};\n"
|
||||
"$Lt_1_11778:\n"
|
||||
" .loc 14 276 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,569 +0,0 @@
|
|||
const char * lj_cut_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_nbor_pitch)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<33>;\n"
|
||||
" .reg .u64 %rd<36>;\n"
|
||||
" .reg .f32 %f<86>;\n"
|
||||
" .reg .pred %p<8>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj84[16];\n"
|
||||
" .loc 14 87 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 91 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+0], %f1;\n"
|
||||
" .loc 14 92 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+4], %f2;\n"
|
||||
" .loc 14 93 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+8], %f3;\n"
|
||||
" .loc 14 94 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj84+12], %f4;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_7938;\n"
|
||||
" .loc 14 105 0\n"
|
||||
" mov.f32 %f5, 0f00000000; \n"
|
||||
" mov.f32 %f6, %f5;\n"
|
||||
" mov.f32 %f7, 0f00000000; \n"
|
||||
" mov.f32 %f8, %f7;\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"
|
||||
" .loc 14 108 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 110 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 111 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 114 0\n"
|
||||
" mov.f32 %f21, %f17;\n"
|
||||
" mov.f32 %f22, %f18;\n"
|
||||
" mov.f32 %f23, %f19;\n"
|
||||
" mov.f32 %f24, %f20;\n"
|
||||
" mul24.lo.s32 %r14, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r14;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r15, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r16, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\n"
|
||||
" mov.f32 %f25, 0f00000000; \n"
|
||||
" mov.f32 %f26, 0f00000000; \n"
|
||||
" mov.f32 %f27, 0f00000000; \n"
|
||||
" mov.f32 %f28, 0f00000000; \n"
|
||||
" @%p2 bra $Lt_0_12034;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" setp.gt.s32 %p3, %r16, %r17;\n"
|
||||
" mov.s32 %r18, 0;\n"
|
||||
" setp.gt.s32 %p4, %r15, %r18;\n"
|
||||
" cvt.rzi.s32.f32 %r19, %f24;\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r21, %r20, %r19;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" mov.u64 %rd15, __cuda_sp_lj84;\n"
|
||||
"$Lt_0_8962:\n"
|
||||
" .loc 14 120 0\n"
|
||||
" ld.global.s32 %r22, [%rd10+0];\n"
|
||||
" .loc 14 121 0\n"
|
||||
" shr.s32 %r23, %r22, 30;\n"
|
||||
" cvt.s64.s32 %rd16, %r23;\n"
|
||||
" and.b64 %rd17, %rd16, 3;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd15, %rd18;\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" and.b32 %r24, %r22, 1073741823;\n"
|
||||
" mov.s32 %r25, 0;\n"
|
||||
" mov.s32 %r26, 0;\n"
|
||||
" mov.s32 %r27, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r24,%r25,%r26,%r27}];\n"
|
||||
" .loc 14 124 0\n"
|
||||
" mov.f32 %f34, %f30;\n"
|
||||
" mov.f32 %f35, %f31;\n"
|
||||
" mov.f32 %f36, %f32;\n"
|
||||
" mov.f32 %f37, %f33;\n"
|
||||
" cvt.rzi.s32.f32 %r28, %f37;\n"
|
||||
" sub.f32 %f38, %f22, %f35;\n"
|
||||
" sub.f32 %f39, %f21, %f34;\n"
|
||||
" sub.f32 %f40, %f23, %f36;\n"
|
||||
" mul.f32 %f41, %f38, %f38;\n"
|
||||
" mad.f32 %f42, %f39, %f39, %f41;\n"
|
||||
" mad.f32 %f43, %f40, %f40, %f42;\n"
|
||||
" add.s32 %r29, %r28, %r21;\n"
|
||||
" cvt.u64.s32 %rd20, %r29;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 16;\n"
|
||||
" add.u64 %rd22, %rd21, %rd14;\n"
|
||||
" ld.global.f32 %f44, [%rd22+8];\n"
|
||||
" setp.gt.f32 %p5, %f44, %f43;\n"
|
||||
" @!%p5 bra $Lt_0_10242;\n"
|
||||
" .loc 14 138 0\n"
|
||||
" rcp.approx.f32 %f45, %f43;\n"
|
||||
" mul.f32 %f46, %f45, %f45;\n"
|
||||
" mul.f32 %f47, %f45, %f46;\n"
|
||||
" mul.f32 %f48, %f45, %f47;\n"
|
||||
" ld.global.v2.f32 {%f49,%f50}, [%rd22+0];\n"
|
||||
" mul.f32 %f51, %f49, %f47;\n"
|
||||
" sub.f32 %f52, %f51, %f50;\n"
|
||||
" mul.f32 %f53, %f48, %f52;\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" .loc 14 138 0\n"
|
||||
" mul.f32 %f54, %f29, %f53;\n"
|
||||
" .loc 14 140 0\n"
|
||||
" mad.f32 %f27, %f39, %f54, %f27;\n"
|
||||
" .loc 14 141 0\n"
|
||||
" mad.f32 %f26, %f38, %f54, %f26;\n"
|
||||
" .loc 14 142 0\n"
|
||||
" mad.f32 %f25, %f40, %f54, %f25;\n"
|
||||
" @!%p3 bra $Lt_0_9730;\n"
|
||||
" .loc 14 146 0\n"
|
||||
" ld.param.u64 %rd23, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd24, %rd23, %rd21;\n"
|
||||
" ld.global.v4.f32 {%f55,%f56,%f57,_}, [%rd24+0];\n"
|
||||
" mul.f32 %f58, %f55, %f47;\n"
|
||||
" sub.f32 %f59, %f58, %f56;\n"
|
||||
" mul.f32 %f60, %f47, %f59;\n"
|
||||
" sub.f32 %f61, %f60, %f57;\n"
|
||||
" .loc 14 121 0\n"
|
||||
" ld.shared.f32 %f29, [%rd19+0];\n"
|
||||
" .loc 14 146 0\n"
|
||||
" mad.f32 %f28, %f29, %f61, %f28;\n"
|
||||
"$Lt_0_9730:\n"
|
||||
" @!%p4 bra $Lt_0_10242;\n"
|
||||
" .loc 14 149 0\n"
|
||||
" mov.f32 %f62, %f6;\n"
|
||||
" mul.f32 %f63, %f39, %f39;\n"
|
||||
" mad.f32 %f64, %f54, %f63, %f62;\n"
|
||||
" mov.f32 %f6, %f64;\n"
|
||||
" .loc 14 150 0\n"
|
||||
" mov.f32 %f65, %f8;\n"
|
||||
" mad.f32 %f66, %f54, %f41, %f65;\n"
|
||||
" mov.f32 %f8, %f66;\n"
|
||||
" .loc 14 151 0\n"
|
||||
" mov.f32 %f67, %f10;\n"
|
||||
" mul.f32 %f68, %f40, %f40;\n"
|
||||
" mad.f32 %f69, %f54, %f68, %f67;\n"
|
||||
" mov.f32 %f10, %f69;\n"
|
||||
" .loc 14 152 0\n"
|
||||
" mov.f32 %f70, %f12;\n"
|
||||
" mul.f32 %f71, %f38, %f39;\n"
|
||||
" mad.f32 %f72, %f54, %f71, %f70;\n"
|
||||
" mov.f32 %f12, %f72;\n"
|
||||
" .loc 14 153 0\n"
|
||||
" mov.f32 %f73, %f14;\n"
|
||||
" mul.f32 %f74, %f39, %f40;\n"
|
||||
" mad.f32 %f75, %f54, %f74, %f73;\n"
|
||||
" mov.f32 %f14, %f75;\n"
|
||||
" .loc 14 154 0\n"
|
||||
" mul.f32 %f76, %f38, %f40;\n"
|
||||
" mad.f32 %f15, %f54, %f76, %f15;\n"
|
||||
" mov.f32 %f77, %f15;\n"
|
||||
"$Lt_0_10242:\n"
|
||||
"$Lt_0_9218:\n"
|
||||
" .loc 14 118 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p6, %rd13, %rd10;\n"
|
||||
" @%p6 bra $Lt_0_8962;\n"
|
||||
" bra.uni $Lt_0_8450;\n"
|
||||
"$Lt_0_12034:\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" setp.gt.s32 %p3, %r16, %r30;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" setp.gt.s32 %p4, %r15, %r31;\n"
|
||||
"$Lt_0_8450:\n"
|
||||
" .loc 14 161 0\n"
|
||||
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd26, %rd25, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_11010;\n"
|
||||
" .loc 14 163 0\n"
|
||||
" st.global.f32 [%rd26+0], %f28;\n"
|
||||
" .loc 14 164 0\n"
|
||||
" cvt.u64.s32 %rd27, %r6;\n"
|
||||
" mul.lo.u64 %rd28, %rd27, 4;\n"
|
||||
" add.u64 %rd26, %rd26, %rd28;\n"
|
||||
"$Lt_0_11010:\n"
|
||||
" @!%p4 bra $Lt_0_11522;\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mov.f32 %f78, %f6;\n"
|
||||
" st.global.f32 [%rd26+0], %f78;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" cvt.u64.s32 %rd29, %r6;\n"
|
||||
" mul.lo.u64 %rd30, %rd29, 4;\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mov.f32 %f79, %f8;\n"
|
||||
" st.global.f32 [%rd26+0], %f79;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mov.f32 %f80, %f10;\n"
|
||||
" st.global.f32 [%rd26+0], %f80;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mov.f32 %f81, %f12;\n"
|
||||
" st.global.f32 [%rd26+0], %f81;\n"
|
||||
" .loc 14 169 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mov.f32 %f82, %f14;\n"
|
||||
" st.global.f32 [%rd26+0], %f82;\n"
|
||||
" add.u64 %rd31, %rd30, %rd26;\n"
|
||||
" st.global.f32 [%rd31+0], %f15;\n"
|
||||
"$Lt_0_11522:\n"
|
||||
" .loc 14 172 0\n"
|
||||
" ld.param.u64 %rd32, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd33, %rd2, 16;\n"
|
||||
" add.u64 %rd34, %rd32, %rd33;\n"
|
||||
" mov.f32 %f83, %f84;\n"
|
||||
" st.global.v4.f32 [%rd34+0], {%f27,%f26,%f25,%f83};\n"
|
||||
"$Lt_0_7938:\n"
|
||||
" .loc 14 174 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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<36>;\n"
|
||||
" .reg .u64 %rd<48>;\n"
|
||||
" .reg .f32 %f<93>;\n"
|
||||
" .reg .pred %p<11>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj180[16];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj1208[1024];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj31232[1024];\n"
|
||||
" .loc 14 181 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" mov.u32 %r2, 3;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_10242;\n"
|
||||
" .loc 14 188 0\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj180;\n"
|
||||
" cvt.u64.s32 %rd2, %r1;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 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_10242:\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj180;\n"
|
||||
" mov.u32 %r3, 63;\n"
|
||||
" setp.gt.s32 %p2, %r1, %r3;\n"
|
||||
" @%p2 bra $Lt_1_10754;\n"
|
||||
" .loc 14 190 0\n"
|
||||
" mov.u64 %rd7, __cuda_lj1208;\n"
|
||||
" cvt.u64.s32 %rd8, %r1;\n"
|
||||
" mul.lo.u64 %rd9, %rd8, 16;\n"
|
||||
" ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in];\n"
|
||||
" add.u64 %rd11, %rd10, %rd9;\n"
|
||||
" add.u64 %rd12, %rd9, %rd7;\n"
|
||||
" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0];\n"
|
||||
" st.shared.f32 [%rd12+0], %f2;\n"
|
||||
" st.shared.f32 [%rd12+4], %f3;\n"
|
||||
" st.shared.f32 [%rd12+8], %f4;\n"
|
||||
" st.shared.f32 [%rd12+12], %f5;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" mov.u32 %r5, 0;\n"
|
||||
" setp.le.s32 %p3, %r4, %r5;\n"
|
||||
" @%p3 bra $Lt_1_11266;\n"
|
||||
" .loc 14 192 0\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in];\n"
|
||||
" add.u64 %rd15, %rd14, %rd9;\n"
|
||||
" add.u64 %rd16, %rd9, %rd13;\n"
|
||||
" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0];\n"
|
||||
" st.shared.f32 [%rd16+0], %f6;\n"
|
||||
" st.shared.f32 [%rd16+4], %f7;\n"
|
||||
" st.shared.f32 [%rd16+8], %f8;\n"
|
||||
" st.shared.f32 [%rd16+12], %f9;\n"
|
||||
"$Lt_1_11266:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
"$Lt_1_10754:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31232;\n"
|
||||
" mov.u64 %rd7, __cuda_lj1208;\n"
|
||||
" .loc 14 195 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r6, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r7, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r8, %r6, %r7;\n"
|
||||
" add.s32 %r9, %r8, %r1;\n"
|
||||
" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p4, %r9, %r10;\n"
|
||||
" @%p4 bra $Lt_1_11778;\n"
|
||||
" .loc 14 206 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 14 209 0\n"
|
||||
" cvt.u64.s32 %rd17, %r9;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd20, %rd19, %rd18;\n"
|
||||
" ld.global.s32 %r11, [%rd20+0];\n"
|
||||
" .loc 14 211 0\n"
|
||||
" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd21, %r12;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd20, %rd22;\n"
|
||||
" ld.global.s32 %r13, [%rd23+0];\n"
|
||||
" .loc 14 212 0\n"
|
||||
" add.u64 %rd24, %rd23, %rd22;\n"
|
||||
" mov.s64 %rd25, %rd24;\n"
|
||||
" mov.s32 %r14, %r11;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 215 0\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.f32 %f29, %f25;\n"
|
||||
" mul24.lo.s32 %r18, %r13, %r12;\n"
|
||||
" cvt.s64.s32 %rd26, %r18;\n"
|
||||
" mul.lo.u64 %rd27, %rd26, 4;\n"
|
||||
" add.u64 %rd28, %rd24, %rd27;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p5, %rd24, %rd28;\n"
|
||||
" mov.f32 %f30, 0f00000000; \n"
|
||||
" mov.f32 %f31, 0f00000000; \n"
|
||||
" mov.f32 %f32, 0f00000000; \n"
|
||||
" mov.f32 %f33, 0f00000000; \n"
|
||||
" @%p5 bra $Lt_1_15874;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p6, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p7, %r19, %r22;\n"
|
||||
" cvt.rzi.s32.f32 %r23, %f29;\n"
|
||||
" mov.s32 %r24, 8;\n"
|
||||
" mul24.lo.s32 %r25, %r24, %r23;\n"
|
||||
" cvt.rn.f32.s32 %f34, %r25;\n"
|
||||
"$Lt_1_12802:\n"
|
||||
" .loc 14 222 0\n"
|
||||
" ld.global.s32 %r26, [%rd25+0];\n"
|
||||
" .loc 14 223 0\n"
|
||||
" shr.s32 %r27, %r26, 30;\n"
|
||||
" cvt.s64.s32 %rd29, %r27;\n"
|
||||
" and.b64 %rd30, %rd29, 3;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd32, %rd1, %rd31;\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" and.b32 %r28, %r26, 1073741823;\n"
|
||||
" mov.s32 %r29, 0;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r28,%r29,%r30,%r31}];\n"
|
||||
" .loc 14 226 0\n"
|
||||
" mov.f32 %f40, %f36;\n"
|
||||
" mov.f32 %f41, %f37;\n"
|
||||
" mov.f32 %f42, %f38;\n"
|
||||
" mov.f32 %f43, %f39;\n"
|
||||
" sub.f32 %f44, %f27, %f41;\n"
|
||||
" sub.f32 %f45, %f26, %f40;\n"
|
||||
" sub.f32 %f46, %f28, %f42;\n"
|
||||
" mul.f32 %f47, %f44, %f44;\n"
|
||||
" mad.f32 %f48, %f45, %f45, %f47;\n"
|
||||
" mad.f32 %f49, %f46, %f46, %f48;\n"
|
||||
" add.f32 %f50, %f34, %f43;\n"
|
||||
" cvt.rzi.s32.f32 %r32, %f50;\n"
|
||||
" cvt.u64.s32 %rd33, %r32;\n"
|
||||
" mul.lo.u64 %rd34, %rd33, 16;\n"
|
||||
" add.u64 %rd35, %rd34, %rd7;\n"
|
||||
" ld.shared.f32 %f51, [%rd35+8];\n"
|
||||
" setp.gt.f32 %p8, %f51, %f49;\n"
|
||||
" @!%p8 bra $Lt_1_14082;\n"
|
||||
" .loc 14 238 0\n"
|
||||
" rcp.approx.f32 %f52, %f49;\n"
|
||||
" mul.f32 %f53, %f52, %f52;\n"
|
||||
" mul.f32 %f54, %f52, %f53;\n"
|
||||
" .loc 14 223 0\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" .loc 14 238 0\n"
|
||||
" mul.f32 %f55, %f52, %f35;\n"
|
||||
" mul.f32 %f56, %f54, %f55;\n"
|
||||
" ld.shared.f32 %f57, [%rd35+4];\n"
|
||||
" ld.shared.f32 %f58, [%rd35+0];\n"
|
||||
" mul.f32 %f59, %f58, %f54;\n"
|
||||
" sub.f32 %f60, %f59, %f57;\n"
|
||||
" mul.f32 %f61, %f56, %f60;\n"
|
||||
" .loc 14 240 0\n"
|
||||
" mad.f32 %f32, %f45, %f61, %f32;\n"
|
||||
" .loc 14 241 0\n"
|
||||
" mad.f32 %f31, %f44, %f61, %f31;\n"
|
||||
" .loc 14 242 0\n"
|
||||
" mad.f32 %f30, %f46, %f61, %f30;\n"
|
||||
" @!%p6 bra $Lt_1_13570;\n"
|
||||
" .loc 14 245 0\n"
|
||||
" add.u64 %rd36, %rd34, %rd13;\n"
|
||||
" ld.shared.f32 %f62, [%rd36+4];\n"
|
||||
" ld.shared.f32 %f63, [%rd36+0];\n"
|
||||
" mul.f32 %f64, %f63, %f54;\n"
|
||||
" sub.f32 %f65, %f64, %f62;\n"
|
||||
" mul.f32 %f66, %f54, %f65;\n"
|
||||
" .loc 14 246 0\n"
|
||||
" ld.shared.f32 %f67, [%rd36+8];\n"
|
||||
" sub.f32 %f68, %f66, %f67;\n"
|
||||
" .loc 14 223 0\n"
|
||||
" ld.shared.f32 %f35, [%rd32+0];\n"
|
||||
" .loc 14 246 0\n"
|
||||
" mad.f32 %f33, %f35, %f68, %f33;\n"
|
||||
"$Lt_1_13570:\n"
|
||||
" @!%p7 bra $Lt_1_14082;\n"
|
||||
" .loc 14 249 0\n"
|
||||
" mov.f32 %f69, %f11;\n"
|
||||
" mul.f32 %f70, %f45, %f45;\n"
|
||||
" mad.f32 %f71, %f61, %f70, %f69;\n"
|
||||
" mov.f32 %f11, %f71;\n"
|
||||
" .loc 14 250 0\n"
|
||||
" mov.f32 %f72, %f13;\n"
|
||||
" mad.f32 %f73, %f61, %f47, %f72;\n"
|
||||
" mov.f32 %f13, %f73;\n"
|
||||
" .loc 14 251 0\n"
|
||||
" mov.f32 %f74, %f15;\n"
|
||||
" mul.f32 %f75, %f46, %f46;\n"
|
||||
" mad.f32 %f76, %f61, %f75, %f74;\n"
|
||||
" mov.f32 %f15, %f76;\n"
|
||||
" .loc 14 252 0\n"
|
||||
" mov.f32 %f77, %f17;\n"
|
||||
" mul.f32 %f78, %f44, %f45;\n"
|
||||
" mad.f32 %f79, %f61, %f78, %f77;\n"
|
||||
" mov.f32 %f17, %f79;\n"
|
||||
" .loc 14 253 0\n"
|
||||
" mov.f32 %f80, %f19;\n"
|
||||
" mul.f32 %f81, %f45, %f46;\n"
|
||||
" mad.f32 %f82, %f61, %f81, %f80;\n"
|
||||
" mov.f32 %f19, %f82;\n"
|
||||
" .loc 14 254 0\n"
|
||||
" mul.f32 %f83, %f44, %f46;\n"
|
||||
" mad.f32 %f20, %f61, %f83, %f20;\n"
|
||||
" mov.f32 %f84, %f20;\n"
|
||||
"$Lt_1_14082:\n"
|
||||
"$Lt_1_13058:\n"
|
||||
" .loc 14 220 0\n"
|
||||
" add.u64 %rd25, %rd22, %rd25;\n"
|
||||
" setp.gt.u64 %p9, %rd28, %rd25;\n"
|
||||
" @%p9 bra $Lt_1_12802;\n"
|
||||
" bra.uni $Lt_1_12290;\n"
|
||||
"$Lt_1_15874:\n"
|
||||
" mov.s32 %r33, 0;\n"
|
||||
" setp.gt.s32 %p6, %r20, %r33;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" setp.gt.s32 %p7, %r19, %r34;\n"
|
||||
"$Lt_1_12290:\n"
|
||||
" .loc 14 261 0\n"
|
||||
" ld.param.u64 %rd37, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd38, %rd37, %rd18;\n"
|
||||
" @!%p6 bra $Lt_1_14850;\n"
|
||||
" .loc 14 263 0\n"
|
||||
" st.global.f32 [%rd38+0], %f33;\n"
|
||||
" .loc 14 264 0\n"
|
||||
" cvt.u64.s32 %rd39, %r10;\n"
|
||||
" mul.lo.u64 %rd40, %rd39, 4;\n"
|
||||
" add.u64 %rd38, %rd38, %rd40;\n"
|
||||
"$Lt_1_14850:\n"
|
||||
" @!%p7 bra $Lt_1_15362;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f85, %f11;\n"
|
||||
" st.global.f32 [%rd38+0], %f85;\n"
|
||||
" .loc 14 269 0\n"
|
||||
" cvt.u64.s32 %rd41, %r10;\n"
|
||||
" mul.lo.u64 %rd42, %rd41, 4;\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f86, %f13;\n"
|
||||
" st.global.f32 [%rd38+0], %f86;\n"
|
||||
" .loc 14 269 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f87, %f15;\n"
|
||||
" st.global.f32 [%rd38+0], %f87;\n"
|
||||
" .loc 14 269 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f88, %f17;\n"
|
||||
" st.global.f32 [%rd38+0], %f88;\n"
|
||||
" .loc 14 269 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f89, %f19;\n"
|
||||
" st.global.f32 [%rd38+0], %f89;\n"
|
||||
" add.u64 %rd43, %rd42, %rd38;\n"
|
||||
" st.global.f32 [%rd43+0], %f20;\n"
|
||||
"$Lt_1_15362:\n"
|
||||
" .loc 14 272 0\n"
|
||||
" ld.param.u64 %rd44, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd45, %rd17, 16;\n"
|
||||
" add.u64 %rd46, %rd44, %rd45;\n"
|
||||
" mov.f32 %f90, %f91;\n"
|
||||
" st.global.v4.f32 [%rd46+0], {%f32,%f31,%f30,%f90};\n"
|
||||
"$Lt_1_11778:\n"
|
||||
" .loc 14 274 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,711 +0,0 @@
|
|||
const char * ljc_cut_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_tex;\n"
|
||||
" .tex .u64 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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n"
|
||||
" .param .u64 __cudaparm_kernel_pair_q_,\n"
|
||||
" .param .u64 __cudaparm_kernel_pair_cutsq,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_qqrd2e)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<42>;\n"
|
||||
" .reg .u64 %rd<39>;\n"
|
||||
" .reg .f32 %f<113>;\n"
|
||||
" .reg .pred %p<10>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj108[32];\n"
|
||||
" .loc 14 99 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 103 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+0], %f1;\n"
|
||||
" .loc 14 104 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+4], %f2;\n"
|
||||
" .loc 14 105 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+8], %f3;\n"
|
||||
" .loc 14 106 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+12], %f4;\n"
|
||||
" .loc 14 107 0\n"
|
||||
" ld.global.f32 %f5, [%rd1+16];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+16], %f5;\n"
|
||||
" .loc 14 108 0\n"
|
||||
" ld.global.f32 %f6, [%rd1+20];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+20], %f6;\n"
|
||||
" .loc 14 109 0\n"
|
||||
" ld.global.f32 %f7, [%rd1+24];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+24], %f7;\n"
|
||||
" .loc 14 110 0\n"
|
||||
" ld.global.f32 %f8, [%rd1+28];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+28], %f8;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_10242;\n"
|
||||
" .loc 14 121 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"
|
||||
" .loc 14 124 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 126 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 127 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 130 0\n"
|
||||
" mov.f32 %f25, %f21;\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.s32 %r14, %r7;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 131 0\n"
|
||||
" mov.f32 %f33, %f29;\n"
|
||||
" mul24.lo.s32 %r18, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r18;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\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"
|
||||
" @%p2 bra $Lt_0_15874;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r22;\n"
|
||||
" cvt.rzi.s32.f32 %r23, %f28;\n"
|
||||
" ld.param.s32 %r24, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r25, %r24, %r23;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_cutsq];\n"
|
||||
" mov.u64 %rd15, __cuda_sp_lj108;\n"
|
||||
"$Lt_0_11266:\n"
|
||||
" .loc 14 135 0\n"
|
||||
" ld.global.s32 %r26, [%rd10+0];\n"
|
||||
" .loc 14 138 0\n"
|
||||
" shr.s32 %r27, %r26, 30;\n"
|
||||
" cvt.s64.s32 %rd16, %r27;\n"
|
||||
" and.b64 %rd17, %rd16, 3;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd15, %rd18;\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 139 0\n"
|
||||
" ld.shared.f32 %f40, [%rd19+16];\n"
|
||||
" and.b32 %r28, %r26, 1073741823;\n"
|
||||
" mov.s32 %r29, %r28;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" mov.s32 %r32, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f41,%f42,%f43,%f44},[pos_tex,{%r29,%r30,%r31,%r32}];\n"
|
||||
" .loc 14 142 0\n"
|
||||
" mov.f32 %f45, %f41;\n"
|
||||
" mov.f32 %f46, %f42;\n"
|
||||
" mov.f32 %f47, %f43;\n"
|
||||
" mov.f32 %f48, %f44;\n"
|
||||
" cvt.rzi.s32.f32 %r33, %f48;\n"
|
||||
" sub.f32 %f49, %f26, %f46;\n"
|
||||
" sub.f32 %f50, %f25, %f45;\n"
|
||||
" sub.f32 %f51, %f27, %f47;\n"
|
||||
" mul.f32 %f52, %f49, %f49;\n"
|
||||
" mad.f32 %f53, %f50, %f50, %f52;\n"
|
||||
" add.s32 %r34, %r33, %r25;\n"
|
||||
" cvt.u64.s32 %rd20, %r34;\n"
|
||||
" mad.f32 %f54, %f51, %f51, %f53;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 4;\n"
|
||||
" add.u64 %rd22, %rd14, %rd21;\n"
|
||||
" ld.global.f32 %f55, [%rd22+0];\n"
|
||||
" setp.gt.f32 %p5, %f55, %f54;\n"
|
||||
" @!%p5 bra $Lt_0_14082;\n"
|
||||
" mul.lo.u64 %rd23, %rd20, 16;\n"
|
||||
" rcp.approx.f32 %f56, %f54;\n"
|
||||
" ld.param.u64 %rd24, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" add.u64 %rd25, %rd24, %rd23;\n"
|
||||
" ld.global.f32 %f57, [%rd25+8];\n"
|
||||
" setp.lt.f32 %p6, %f54, %f57;\n"
|
||||
" @!%p6 bra $Lt_0_12290;\n"
|
||||
" .loc 14 157 0\n"
|
||||
" mul.f32 %f58, %f56, %f56;\n"
|
||||
" mul.f32 %f59, %f56, %f58;\n"
|
||||
" mov.f32 %f60, %f59;\n"
|
||||
" .loc 14 138 0\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 158 0\n"
|
||||
" mul.f32 %f61, %f59, %f39;\n"
|
||||
" ld.global.v2.f32 {%f62,%f63}, [%rd25+0];\n"
|
||||
" mul.f32 %f64, %f62, %f59;\n"
|
||||
" sub.f32 %f65, %f64, %f63;\n"
|
||||
" mul.f32 %f66, %f61, %f65;\n"
|
||||
" bra.uni $Lt_0_12034;\n"
|
||||
"$Lt_0_12290:\n"
|
||||
" .loc 14 160 0\n"
|
||||
" mov.f32 %f66, 0f00000000; \n"
|
||||
"$Lt_0_12034:\n"
|
||||
" ld.global.f32 %f67, [%rd25+12];\n"
|
||||
" setp.gt.f32 %p7, %f67, %f54;\n"
|
||||
" @!%p7 bra $Lt_0_12802;\n"
|
||||
" mov.s32 %r35, %r28;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" mov.s32 %r37, 0;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f68,%f69,%f70,%f71},[q_tex,{%r35,%r36,%r37,%r38}];\n"
|
||||
" .loc 14 163 0\n"
|
||||
" mov.f32 %f72, %f68;\n"
|
||||
" ld.param.f32 %f73, [__cudaparm_kernel_pair_qqrd2e];\n"
|
||||
" mul.f32 %f74, %f73, %f33;\n"
|
||||
" mul.f32 %f75, %f72, %f74;\n"
|
||||
" sqrt.approx.f32 %f76, %f56;\n"
|
||||
" mul.f32 %f77, %f75, %f76;\n"
|
||||
" .loc 14 139 0\n"
|
||||
" ld.shared.f32 %f40, [%rd19+16];\n"
|
||||
" .loc 14 163 0\n"
|
||||
" mul.f32 %f78, %f40, %f77;\n"
|
||||
" bra.uni $Lt_0_12546;\n"
|
||||
"$Lt_0_12802:\n"
|
||||
" .loc 14 165 0\n"
|
||||
" mov.f32 %f78, 0f00000000; \n"
|
||||
"$Lt_0_12546:\n"
|
||||
" .loc 14 169 0\n"
|
||||
" add.f32 %f79, %f78, %f66;\n"
|
||||
" mul.f32 %f80, %f79, %f56;\n"
|
||||
" mad.f32 %f36, %f50, %f80, %f36;\n"
|
||||
" .loc 14 170 0\n"
|
||||
" mad.f32 %f35, %f49, %f80, %f35;\n"
|
||||
" .loc 14 171 0\n"
|
||||
" mad.f32 %f34, %f51, %f80, %f34;\n"
|
||||
" @!%p3 bra $Lt_0_13570;\n"
|
||||
" .loc 14 174 0\n"
|
||||
" add.f32 %f37, %f78, %f37;\n"
|
||||
" @!%p6 bra $Lt_0_13570;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" ld.param.u64 %rd26, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd27, %rd26, %rd23;\n"
|
||||
" mov.f32 %f81, %f60;\n"
|
||||
" ld.global.v4.f32 {%f82,%f83,%f84,_}, [%rd27+0];\n"
|
||||
" mul.f32 %f85, %f82, %f81;\n"
|
||||
" sub.f32 %f86, %f85, %f83;\n"
|
||||
" mul.f32 %f87, %f81, %f86;\n"
|
||||
" sub.f32 %f88, %f87, %f84;\n"
|
||||
" .loc 14 138 0\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 177 0\n"
|
||||
" mad.f32 %f38, %f39, %f88, %f38;\n"
|
||||
"$Lt_0_13570:\n"
|
||||
"$Lt_0_13058:\n"
|
||||
" @!%p4 bra $Lt_0_14082;\n"
|
||||
" .loc 14 181 0\n"
|
||||
" mov.f32 %f89, %f10;\n"
|
||||
" mul.f32 %f90, %f50, %f50;\n"
|
||||
" mad.f32 %f91, %f80, %f90, %f89;\n"
|
||||
" mov.f32 %f10, %f91;\n"
|
||||
" .loc 14 182 0\n"
|
||||
" mov.f32 %f92, %f12;\n"
|
||||
" mad.f32 %f93, %f80, %f52, %f92;\n"
|
||||
" mov.f32 %f12, %f93;\n"
|
||||
" .loc 14 183 0\n"
|
||||
" mov.f32 %f94, %f14;\n"
|
||||
" mul.f32 %f95, %f51, %f51;\n"
|
||||
" mad.f32 %f96, %f80, %f95, %f94;\n"
|
||||
" mov.f32 %f14, %f96;\n"
|
||||
" .loc 14 184 0\n"
|
||||
" mov.f32 %f97, %f16;\n"
|
||||
" mul.f32 %f98, %f49, %f50;\n"
|
||||
" mad.f32 %f99, %f80, %f98, %f97;\n"
|
||||
" mov.f32 %f16, %f99;\n"
|
||||
" .loc 14 185 0\n"
|
||||
" mov.f32 %f100, %f18;\n"
|
||||
" mul.f32 %f101, %f50, %f51;\n"
|
||||
" mad.f32 %f102, %f80, %f101, %f100;\n"
|
||||
" mov.f32 %f18, %f102;\n"
|
||||
" .loc 14 186 0\n"
|
||||
" mul.f32 %f103, %f49, %f51;\n"
|
||||
" mad.f32 %f19, %f80, %f103, %f19;\n"
|
||||
" mov.f32 %f104, %f19;\n"
|
||||
"$Lt_0_14082:\n"
|
||||
"$Lt_0_11522:\n"
|
||||
" .loc 14 134 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p8, %rd13, %rd10;\n"
|
||||
" @%p8 bra $Lt_0_11266;\n"
|
||||
" bra.uni $Lt_0_10754;\n"
|
||||
"$Lt_0_15874:\n"
|
||||
" mov.s32 %r39, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r39;\n"
|
||||
" mov.s32 %r40, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r40;\n"
|
||||
"$Lt_0_10754:\n"
|
||||
" .loc 14 193 0\n"
|
||||
" ld.param.u64 %rd28, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd29, %rd28, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_14850;\n"
|
||||
" .loc 14 195 0\n"
|
||||
" st.global.f32 [%rd29+0], %f38;\n"
|
||||
" .loc 14 196 0\n"
|
||||
" cvt.u64.s32 %rd30, %r6;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd29, %rd31, %rd29;\n"
|
||||
" .loc 14 197 0\n"
|
||||
" st.global.f32 [%rd29+0], %f37;\n"
|
||||
" .loc 14 198 0\n"
|
||||
" add.u64 %rd29, %rd31, %rd29;\n"
|
||||
"$Lt_0_14850:\n"
|
||||
" @!%p4 bra $Lt_0_15362;\n"
|
||||
" .loc 14 202 0\n"
|
||||
" mov.f32 %f105, %f10;\n"
|
||||
" st.global.f32 [%rd29+0], %f105;\n"
|
||||
" .loc 14 203 0\n"
|
||||
" cvt.u64.s32 %rd32, %r6;\n"
|
||||
" mul.lo.u64 %rd33, %rd32, 4;\n"
|
||||
" add.u64 %rd29, %rd33, %rd29;\n"
|
||||
" .loc 14 202 0\n"
|
||||
" mov.f32 %f106, %f12;\n"
|
||||
" st.global.f32 [%rd29+0], %f106;\n"
|
||||
" .loc 14 203 0\n"
|
||||
" add.u64 %rd29, %rd33, %rd29;\n"
|
||||
" .loc 14 202 0\n"
|
||||
" mov.f32 %f107, %f14;\n"
|
||||
" st.global.f32 [%rd29+0], %f107;\n"
|
||||
" .loc 14 203 0\n"
|
||||
" add.u64 %rd29, %rd33, %rd29;\n"
|
||||
" .loc 14 202 0\n"
|
||||
" mov.f32 %f108, %f16;\n"
|
||||
" st.global.f32 [%rd29+0], %f108;\n"
|
||||
" .loc 14 203 0\n"
|
||||
" add.u64 %rd29, %rd33, %rd29;\n"
|
||||
" .loc 14 202 0\n"
|
||||
" mov.f32 %f109, %f18;\n"
|
||||
" st.global.f32 [%rd29+0], %f109;\n"
|
||||
" add.u64 %rd34, %rd33, %rd29;\n"
|
||||
" st.global.f32 [%rd34+0], %f19;\n"
|
||||
"$Lt_0_15362:\n"
|
||||
" .loc 14 206 0\n"
|
||||
" ld.param.u64 %rd35, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd36, %rd2, 16;\n"
|
||||
" add.u64 %rd37, %rd35, %rd36;\n"
|
||||
" mov.f32 %f110, %f111;\n"
|
||||
" st.global.v4.f32 [%rd37+0], {%f36,%f35,%f34,%f110};\n"
|
||||
"$Lt_0_10242:\n"
|
||||
" .loc 14 208 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_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_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n"
|
||||
" .param .u64 __cudaparm_kernel_pair_fast_q_,\n"
|
||||
" .param .u64 __cudaparm_kernel_pair_fast__cutsq,\n"
|
||||
" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<45>;\n"
|
||||
" .reg .u64 %rd<55>;\n"
|
||||
" .reg .f32 %f<117>;\n"
|
||||
" .reg .pred %p<13>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj244[32];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj1288[1024];\n"
|
||||
" .shared .align 4 .b8 __cuda_cutsq1312[256];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj31568[1024];\n"
|
||||
" .loc 14 217 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" mov.u32 %r2, 7;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_12546;\n"
|
||||
" .loc 14 225 0\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj244;\n"
|
||||
" cvt.u64.s32 %rd2, %r1;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 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_12546:\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj244;\n"
|
||||
" mov.u32 %r3, 63;\n"
|
||||
" setp.gt.s32 %p2, %r1, %r3;\n"
|
||||
" @%p2 bra $Lt_1_13058;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.u64 %rd7, __cuda_lj1288;\n"
|
||||
" mov.u64 %rd8, __cuda_cutsq1312;\n"
|
||||
" cvt.u64.s32 %rd9, %r1;\n"
|
||||
" mul.lo.u64 %rd10, %rd9, 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.f32 [%rd13+0], %f2;\n"
|
||||
" st.shared.f32 [%rd13+4], %f3;\n"
|
||||
" st.shared.f32 [%rd13+8], %f4;\n"
|
||||
" st.shared.f32 [%rd13+12], %f5;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" mul.lo.u64 %rd14, %rd9, 4;\n"
|
||||
" ld.param.u64 %rd15, [__cudaparm_kernel_pair_fast__cutsq];\n"
|
||||
" add.u64 %rd16, %rd15, %rd14;\n"
|
||||
" ld.global.f32 %f6, [%rd16+0];\n"
|
||||
" add.u64 %rd17, %rd14, %rd8;\n"
|
||||
" st.shared.f32 [%rd17+0], %f6;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" mov.u32 %r5, 0;\n"
|
||||
" setp.le.s32 %p3, %r4, %r5;\n"
|
||||
" @%p3 bra $Lt_1_13570;\n"
|
||||
" .loc 14 230 0\n"
|
||||
" mov.u64 %rd18, __cuda_lj31568;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_lj3_in];\n"
|
||||
" add.u64 %rd20, %rd19, %rd10;\n"
|
||||
" add.u64 %rd21, %rd10, %rd18;\n"
|
||||
" ld.global.v4.f32 {%f7,%f8,%f9,%f10}, [%rd20+0];\n"
|
||||
" st.shared.f32 [%rd21+0], %f7;\n"
|
||||
" st.shared.f32 [%rd21+4], %f8;\n"
|
||||
" st.shared.f32 [%rd21+8], %f9;\n"
|
||||
" st.shared.f32 [%rd21+12], %f10;\n"
|
||||
"$Lt_1_13570:\n"
|
||||
" mov.u64 %rd18, __cuda_lj31568;\n"
|
||||
"$Lt_1_13058:\n"
|
||||
" mov.u64 %rd7, __cuda_lj1288;\n"
|
||||
" mov.u64 %rd8, __cuda_cutsq1312;\n"
|
||||
" mov.u64 %rd18, __cuda_lj31568;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r6, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r7, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r8, %r6, %r7;\n"
|
||||
" add.s32 %r9, %r8, %r1;\n"
|
||||
" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p4, %r9, %r10;\n"
|
||||
" @%p4 bra $Lt_1_14082;\n"
|
||||
" .loc 14 245 0\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"
|
||||
" mov.f32 %f21, 0f00000000; \n"
|
||||
" mov.f32 %f22, %f21;\n"
|
||||
" .loc 14 248 0\n"
|
||||
" cvt.u64.s32 %rd22, %r9;\n"
|
||||
" mul.lo.u64 %rd23, %rd22, 4;\n"
|
||||
" ld.param.u64 %rd24, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd25, %rd24, %rd23;\n"
|
||||
" ld.global.s32 %r11, [%rd25+0];\n"
|
||||
" .loc 14 250 0\n"
|
||||
" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd26, %r12;\n"
|
||||
" mul.lo.u64 %rd27, %rd26, 4;\n"
|
||||
" add.u64 %rd28, %rd25, %rd27;\n"
|
||||
" ld.global.s32 %r13, [%rd28+0];\n"
|
||||
" .loc 14 251 0\n"
|
||||
" add.u64 %rd29, %rd28, %rd27;\n"
|
||||
" mov.s64 %rd30, %rd29;\n"
|
||||
" mov.s32 %r14, %r11;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f23,%f24,%f25,%f26},[pos_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 254 0\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.f32 %f29, %f25;\n"
|
||||
" mov.f32 %f30, %f26;\n"
|
||||
" mov.s32 %r18, %r11;\n"
|
||||
" mov.s32 %r19, 0;\n"
|
||||
" mov.s32 %r20, 0;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f31,%f32,%f33,%f34},[q_tex,{%r18,%r19,%r20,%r21}];\n"
|
||||
" .loc 14 255 0\n"
|
||||
" mov.f32 %f35, %f31;\n"
|
||||
" mul24.lo.s32 %r22, %r13, %r12;\n"
|
||||
" cvt.s64.s32 %rd31, %r22;\n"
|
||||
" mul.lo.u64 %rd32, %rd31, 4;\n"
|
||||
" add.u64 %rd33, %rd29, %rd32;\n"
|
||||
" ld.param.s32 %r23, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r24, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p5, %rd29, %rd33;\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"
|
||||
" @%p5 bra $Lt_1_19714;\n"
|
||||
" mov.s32 %r25, 0;\n"
|
||||
" setp.gt.s32 %p6, %r24, %r25;\n"
|
||||
" mov.s32 %r26, 0;\n"
|
||||
" setp.gt.s32 %p7, %r23, %r26;\n"
|
||||
" cvt.rzi.s32.f32 %r27, %f30;\n"
|
||||
" mov.s32 %r28, 8;\n"
|
||||
" mul24.lo.s32 %r29, %r28, %r27;\n"
|
||||
" cvt.rn.f32.s32 %f41, %r29;\n"
|
||||
"$Lt_1_15106:\n"
|
||||
" .loc 14 260 0\n"
|
||||
" ld.global.s32 %r30, [%rd30+0];\n"
|
||||
" .loc 14 263 0\n"
|
||||
" shr.s32 %r31, %r30, 30;\n"
|
||||
" cvt.s64.s32 %rd34, %r31;\n"
|
||||
" and.b64 %rd35, %rd34, 3;\n"
|
||||
" mul.lo.u64 %rd36, %rd35, 4;\n"
|
||||
" add.u64 %rd37, %rd1, %rd36;\n"
|
||||
" ld.shared.f32 %f42, [%rd37+0];\n"
|
||||
" .loc 14 264 0\n"
|
||||
" ld.shared.f32 %f43, [%rd37+16];\n"
|
||||
" and.b32 %r32, %r30, 1073741823;\n"
|
||||
" mov.s32 %r33, %r32;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" mov.s32 %r35, 0;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f44,%f45,%f46,%f47},[pos_tex,{%r33,%r34,%r35,%r36}];\n"
|
||||
" .loc 14 267 0\n"
|
||||
" mov.f32 %f48, %f44;\n"
|
||||
" mov.f32 %f49, %f45;\n"
|
||||
" mov.f32 %f50, %f46;\n"
|
||||
" mov.f32 %f51, %f47;\n"
|
||||
" sub.f32 %f52, %f28, %f49;\n"
|
||||
" sub.f32 %f53, %f27, %f48;\n"
|
||||
" sub.f32 %f54, %f29, %f50;\n"
|
||||
" mul.f32 %f55, %f52, %f52;\n"
|
||||
" mad.f32 %f56, %f53, %f53, %f55;\n"
|
||||
" mad.f32 %f57, %f54, %f54, %f56;\n"
|
||||
" add.f32 %f58, %f41, %f51;\n"
|
||||
" cvt.rzi.s32.f32 %r37, %f58;\n"
|
||||
" cvt.u64.s32 %rd38, %r37;\n"
|
||||
" mul.lo.u64 %rd39, %rd38, 4;\n"
|
||||
" add.u64 %rd40, %rd8, %rd39;\n"
|
||||
" ld.shared.f32 %f59, [%rd40+0];\n"
|
||||
" setp.gt.f32 %p8, %f59, %f57;\n"
|
||||
" @!%p8 bra $Lt_1_17922;\n"
|
||||
" rcp.approx.f32 %f60, %f57;\n"
|
||||
" mul.lo.u64 %rd41, %rd38, 16;\n"
|
||||
" add.u64 %rd42, %rd41, %rd7;\n"
|
||||
" ld.shared.f32 %f61, [%rd42+8];\n"
|
||||
" setp.lt.f32 %p9, %f57, %f61;\n"
|
||||
" @!%p9 bra $Lt_1_16130;\n"
|
||||
" .loc 14 281 0\n"
|
||||
" mul.f32 %f62, %f60, %f60;\n"
|
||||
" mul.f32 %f63, %f60, %f62;\n"
|
||||
" mov.f32 %f64, %f63;\n"
|
||||
" .loc 14 263 0\n"
|
||||
" ld.shared.f32 %f42, [%rd37+0];\n"
|
||||
" .loc 14 282 0\n"
|
||||
" mul.f32 %f65, %f63, %f42;\n"
|
||||
" ld.shared.f32 %f66, [%rd42+4];\n"
|
||||
" ld.shared.f32 %f67, [%rd42+0];\n"
|
||||
" mul.f32 %f68, %f67, %f63;\n"
|
||||
" sub.f32 %f69, %f68, %f66;\n"
|
||||
" mul.f32 %f70, %f65, %f69;\n"
|
||||
" bra.uni $Lt_1_15874;\n"
|
||||
"$Lt_1_16130:\n"
|
||||
" .loc 14 284 0\n"
|
||||
" mov.f32 %f70, 0f00000000; \n"
|
||||
"$Lt_1_15874:\n"
|
||||
" ld.shared.f32 %f71, [%rd42+12];\n"
|
||||
" setp.gt.f32 %p10, %f71, %f57;\n"
|
||||
" @!%p10 bra $Lt_1_16642;\n"
|
||||
" mov.s32 %r38, %r32;\n"
|
||||
" mov.s32 %r39, 0;\n"
|
||||
" mov.s32 %r40, 0;\n"
|
||||
" mov.s32 %r41, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f72,%f73,%f74,%f75},[q_tex,{%r38,%r39,%r40,%r41}];\n"
|
||||
" .loc 14 287 0\n"
|
||||
" mov.f32 %f76, %f72;\n"
|
||||
" ld.param.f32 %f77, [__cudaparm_kernel_pair_fast_qqrd2e];\n"
|
||||
" mul.f32 %f78, %f77, %f35;\n"
|
||||
" mul.f32 %f79, %f76, %f78;\n"
|
||||
" sqrt.approx.f32 %f80, %f60;\n"
|
||||
" mul.f32 %f81, %f79, %f80;\n"
|
||||
" .loc 14 264 0\n"
|
||||
" ld.shared.f32 %f43, [%rd37+16];\n"
|
||||
" .loc 14 287 0\n"
|
||||
" mul.f32 %f82, %f43, %f81;\n"
|
||||
" bra.uni $Lt_1_16386;\n"
|
||||
"$Lt_1_16642:\n"
|
||||
" .loc 14 289 0\n"
|
||||
" mov.f32 %f82, 0f00000000; \n"
|
||||
"$Lt_1_16386:\n"
|
||||
" .loc 14 293 0\n"
|
||||
" add.f32 %f83, %f82, %f70;\n"
|
||||
" mul.f32 %f84, %f83, %f60;\n"
|
||||
" mad.f32 %f38, %f53, %f84, %f38;\n"
|
||||
" .loc 14 294 0\n"
|
||||
" mad.f32 %f37, %f52, %f84, %f37;\n"
|
||||
" .loc 14 295 0\n"
|
||||
" mad.f32 %f36, %f54, %f84, %f36;\n"
|
||||
" @!%p6 bra $Lt_1_17410;\n"
|
||||
" .loc 14 298 0\n"
|
||||
" add.f32 %f39, %f82, %f39;\n"
|
||||
" @!%p9 bra $Lt_1_17410;\n"
|
||||
" .loc 14 300 0\n"
|
||||
" add.u64 %rd43, %rd41, %rd18;\n"
|
||||
" mov.f32 %f85, %f64;\n"
|
||||
" ld.shared.f32 %f86, [%rd43+4];\n"
|
||||
" ld.shared.f32 %f87, [%rd43+0];\n"
|
||||
" mul.f32 %f88, %f87, %f85;\n"
|
||||
" sub.f32 %f89, %f88, %f86;\n"
|
||||
" mul.f32 %f90, %f85, %f89;\n"
|
||||
" .loc 14 301 0\n"
|
||||
" ld.shared.f32 %f91, [%rd43+8];\n"
|
||||
" sub.f32 %f92, %f90, %f91;\n"
|
||||
" .loc 14 263 0\n"
|
||||
" ld.shared.f32 %f42, [%rd37+0];\n"
|
||||
" .loc 14 301 0\n"
|
||||
" mad.f32 %f40, %f42, %f92, %f40;\n"
|
||||
"$Lt_1_17410:\n"
|
||||
"$Lt_1_16898:\n"
|
||||
" @!%p7 bra $Lt_1_17922;\n"
|
||||
" .loc 14 305 0\n"
|
||||
" mov.f32 %f93, %f12;\n"
|
||||
" mul.f32 %f94, %f53, %f53;\n"
|
||||
" mad.f32 %f95, %f84, %f94, %f93;\n"
|
||||
" mov.f32 %f12, %f95;\n"
|
||||
" .loc 14 306 0\n"
|
||||
" mov.f32 %f96, %f14;\n"
|
||||
" mad.f32 %f97, %f84, %f55, %f96;\n"
|
||||
" mov.f32 %f14, %f97;\n"
|
||||
" .loc 14 307 0\n"
|
||||
" mov.f32 %f98, %f16;\n"
|
||||
" mul.f32 %f99, %f54, %f54;\n"
|
||||
" mad.f32 %f100, %f84, %f99, %f98;\n"
|
||||
" mov.f32 %f16, %f100;\n"
|
||||
" .loc 14 308 0\n"
|
||||
" mov.f32 %f101, %f18;\n"
|
||||
" mul.f32 %f102, %f52, %f53;\n"
|
||||
" mad.f32 %f103, %f84, %f102, %f101;\n"
|
||||
" mov.f32 %f18, %f103;\n"
|
||||
" .loc 14 309 0\n"
|
||||
" mov.f32 %f104, %f20;\n"
|
||||
" mul.f32 %f105, %f53, %f54;\n"
|
||||
" mad.f32 %f106, %f84, %f105, %f104;\n"
|
||||
" mov.f32 %f20, %f106;\n"
|
||||
" .loc 14 310 0\n"
|
||||
" mul.f32 %f107, %f52, %f54;\n"
|
||||
" mad.f32 %f21, %f84, %f107, %f21;\n"
|
||||
" mov.f32 %f108, %f21;\n"
|
||||
"$Lt_1_17922:\n"
|
||||
"$Lt_1_15362:\n"
|
||||
" .loc 14 259 0\n"
|
||||
" add.u64 %rd30, %rd27, %rd30;\n"
|
||||
" setp.gt.u64 %p11, %rd33, %rd30;\n"
|
||||
" @%p11 bra $Lt_1_15106;\n"
|
||||
" bra.uni $Lt_1_14594;\n"
|
||||
"$Lt_1_19714:\n"
|
||||
" mov.s32 %r42, 0;\n"
|
||||
" setp.gt.s32 %p6, %r24, %r42;\n"
|
||||
" mov.s32 %r43, 0;\n"
|
||||
" setp.gt.s32 %p7, %r23, %r43;\n"
|
||||
"$Lt_1_14594:\n"
|
||||
" .loc 14 317 0\n"
|
||||
" ld.param.u64 %rd44, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd45, %rd44, %rd23;\n"
|
||||
" @!%p6 bra $Lt_1_18690;\n"
|
||||
" .loc 14 319 0\n"
|
||||
" st.global.f32 [%rd45+0], %f40;\n"
|
||||
" .loc 14 320 0\n"
|
||||
" cvt.u64.s32 %rd46, %r10;\n"
|
||||
" mul.lo.u64 %rd47, %rd46, 4;\n"
|
||||
" add.u64 %rd45, %rd47, %rd45;\n"
|
||||
" .loc 14 321 0\n"
|
||||
" st.global.f32 [%rd45+0], %f39;\n"
|
||||
" .loc 14 322 0\n"
|
||||
" add.u64 %rd45, %rd47, %rd45;\n"
|
||||
"$Lt_1_18690:\n"
|
||||
" @!%p7 bra $Lt_1_19202;\n"
|
||||
" .loc 14 326 0\n"
|
||||
" mov.f32 %f109, %f12;\n"
|
||||
" st.global.f32 [%rd45+0], %f109;\n"
|
||||
" .loc 14 327 0\n"
|
||||
" cvt.u64.s32 %rd48, %r10;\n"
|
||||
" mul.lo.u64 %rd49, %rd48, 4;\n"
|
||||
" add.u64 %rd45, %rd49, %rd45;\n"
|
||||
" .loc 14 326 0\n"
|
||||
" mov.f32 %f110, %f14;\n"
|
||||
" st.global.f32 [%rd45+0], %f110;\n"
|
||||
" .loc 14 327 0\n"
|
||||
" add.u64 %rd45, %rd49, %rd45;\n"
|
||||
" .loc 14 326 0\n"
|
||||
" mov.f32 %f111, %f16;\n"
|
||||
" st.global.f32 [%rd45+0], %f111;\n"
|
||||
" .loc 14 327 0\n"
|
||||
" add.u64 %rd45, %rd49, %rd45;\n"
|
||||
" .loc 14 326 0\n"
|
||||
" mov.f32 %f112, %f18;\n"
|
||||
" st.global.f32 [%rd45+0], %f112;\n"
|
||||
" .loc 14 327 0\n"
|
||||
" add.u64 %rd45, %rd49, %rd45;\n"
|
||||
" .loc 14 326 0\n"
|
||||
" mov.f32 %f113, %f20;\n"
|
||||
" st.global.f32 [%rd45+0], %f113;\n"
|
||||
" add.u64 %rd50, %rd49, %rd45;\n"
|
||||
" st.global.f32 [%rd50+0], %f21;\n"
|
||||
"$Lt_1_19202:\n"
|
||||
" .loc 14 330 0\n"
|
||||
" ld.param.u64 %rd51, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd52, %rd22, 16;\n"
|
||||
" add.u64 %rd53, %rd51, %rd52;\n"
|
||||
" mov.f32 %f114, %f115;\n"
|
||||
" st.global.v4.f32 [%rd53+0], {%f38,%f37,%f36,%f114};\n"
|
||||
"$Lt_1_14082:\n"
|
||||
" .loc 14 332 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,762 +0,0 @@
|
|||
const char * ljcl_cut_gpu_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 pos_tex;\n"
|
||||
" .tex .u64 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_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_nall,\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"
|
||||
" {\n"
|
||||
" .reg .u32 %r<42>;\n"
|
||||
" .reg .u64 %rd<36>;\n"
|
||||
" .reg .f32 %f<145>;\n"
|
||||
" .reg .pred %p<10>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj108[32];\n"
|
||||
" .loc 14 107 0\n"
|
||||
"$LBB1_kernel_pair:\n"
|
||||
" .loc 14 111 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n"
|
||||
" ld.global.f32 %f1, [%rd1+0];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+0], %f1;\n"
|
||||
" .loc 14 112 0\n"
|
||||
" ld.global.f32 %f2, [%rd1+4];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+4], %f2;\n"
|
||||
" .loc 14 113 0\n"
|
||||
" ld.global.f32 %f3, [%rd1+8];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+8], %f3;\n"
|
||||
" .loc 14 114 0\n"
|
||||
" ld.global.f32 %f4, [%rd1+12];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+12], %f4;\n"
|
||||
" .loc 14 115 0\n"
|
||||
" ld.global.f32 %f5, [%rd1+16];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+16], %f5;\n"
|
||||
" .loc 14 116 0\n"
|
||||
" ld.global.f32 %f6, [%rd1+20];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+20], %f6;\n"
|
||||
" .loc 14 117 0\n"
|
||||
" ld.global.f32 %f7, [%rd1+24];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+24], %f7;\n"
|
||||
" .loc 14 118 0\n"
|
||||
" ld.global.f32 %f8, [%rd1+28];\n"
|
||||
" st.shared.f32 [__cuda_sp_lj108+28], %f8;\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_pair_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_10242;\n"
|
||||
" .loc 14 129 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"
|
||||
" .loc 14 132 0\n"
|
||||
" cvt.u64.s32 %rd2, %r5;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n"
|
||||
" add.u64 %rd5, %rd4, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd5+0];\n"
|
||||
" .loc 14 134 0\n"
|
||||
" ld.param.s32 %r8, [__cudaparm_kernel_pair_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 4;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.s32 %r9, [%rd8+0];\n"
|
||||
" .loc 14 135 0\n"
|
||||
" add.u64 %rd9, %rd8, %rd7;\n"
|
||||
" mov.s64 %rd10, %rd9;\n"
|
||||
" mov.s32 %r10, %r7;\n"
|
||||
" mov.s32 %r11, 0;\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" mov.s32 %r13, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r10,%r11,%r12,%r13}];\n"
|
||||
" .loc 14 138 0\n"
|
||||
" mov.f32 %f25, %f21;\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.s32 %r14, %r7;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 139 0\n"
|
||||
" mov.f32 %f33, %f29;\n"
|
||||
" mul24.lo.s32 %r18, %r9, %r8;\n"
|
||||
" cvt.s64.s32 %rd11, %r18;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd9, %rd12;\n"
|
||||
" ld.param.s32 %r19, [__cudaparm_kernel_pair_vflag];\n"
|
||||
" ld.param.s32 %r20, [__cudaparm_kernel_pair_eflag];\n"
|
||||
" setp.ge.u64 %p2, %rd9, %rd13;\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"
|
||||
" @%p2 bra $Lt_0_15874;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r21;\n"
|
||||
" mov.s32 %r22, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r22;\n"
|
||||
" cvt.rzi.s32.f32 %r23, %f28;\n"
|
||||
" ld.param.s32 %r24, [__cudaparm_kernel_pair_lj_types];\n"
|
||||
" mul.lo.s32 %r25, %r24, %r23;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_lj1];\n"
|
||||
" mov.u64 %rd15, __cuda_sp_lj108;\n"
|
||||
"$Lt_0_11266:\n"
|
||||
" .loc 14 143 0\n"
|
||||
" ld.global.s32 %r26, [%rd10+0];\n"
|
||||
" .loc 14 146 0\n"
|
||||
" shr.s32 %r27, %r26, 30;\n"
|
||||
" cvt.s64.s32 %rd16, %r27;\n"
|
||||
" and.b64 %rd17, %rd16, 3;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd15, %rd18;\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 147 0\n"
|
||||
" mov.f32 %f40, 0f3f800000; \n"
|
||||
" ld.shared.f32 %f41, [%rd19+16];\n"
|
||||
" sub.f32 %f42, %f40, %f41;\n"
|
||||
" and.b32 %r28, %r26, 1073741823;\n"
|
||||
" mov.s32 %r29, %r28;\n"
|
||||
" mov.s32 %r30, 0;\n"
|
||||
" mov.s32 %r31, 0;\n"
|
||||
" mov.s32 %r32, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r29,%r30,%r31,%r32}];\n"
|
||||
" .loc 14 150 0\n"
|
||||
" mov.f32 %f47, %f43;\n"
|
||||
" mov.f32 %f48, %f44;\n"
|
||||
" mov.f32 %f49, %f45;\n"
|
||||
" mov.f32 %f50, %f46;\n"
|
||||
" cvt.rzi.s32.f32 %r33, %f50;\n"
|
||||
" sub.f32 %f51, %f26, %f48;\n"
|
||||
" sub.f32 %f52, %f25, %f47;\n"
|
||||
" sub.f32 %f53, %f27, %f49;\n"
|
||||
" mul.f32 %f54, %f51, %f51;\n"
|
||||
" mad.f32 %f55, %f52, %f52, %f54;\n"
|
||||
" mad.f32 %f56, %f53, %f53, %f55;\n"
|
||||
" add.s32 %r34, %r33, %r25;\n"
|
||||
" cvt.u64.s32 %rd20, %r34;\n"
|
||||
" mul.lo.u64 %rd21, %rd20, 16;\n"
|
||||
" add.u64 %rd22, %rd21, %rd14;\n"
|
||||
" ld.global.f32 %f57, [%rd22+8];\n"
|
||||
" setp.gt.f32 %p5, %f57, %f56;\n"
|
||||
" @!%p5 bra $Lt_0_14082;\n"
|
||||
" rcp.approx.f32 %f58, %f56;\n"
|
||||
" ld.global.f32 %f59, [%rd22+12];\n"
|
||||
" setp.lt.f32 %p6, %f56, %f59;\n"
|
||||
" @!%p6 bra $Lt_0_12290;\n"
|
||||
" .loc 14 165 0\n"
|
||||
" mul.f32 %f60, %f58, %f58;\n"
|
||||
" mul.f32 %f61, %f58, %f60;\n"
|
||||
" mov.f32 %f62, %f61;\n"
|
||||
" .loc 14 146 0\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 166 0\n"
|
||||
" mul.f32 %f63, %f61, %f39;\n"
|
||||
" ld.global.v2.f32 {%f64,%f65}, [%rd22+0];\n"
|
||||
" mul.f32 %f66, %f64, %f61;\n"
|
||||
" sub.f32 %f67, %f66, %f65;\n"
|
||||
" mul.f32 %f68, %f63, %f67;\n"
|
||||
" bra.uni $Lt_0_12034;\n"
|
||||
"$Lt_0_12290:\n"
|
||||
" .loc 14 168 0\n"
|
||||
" mov.f32 %f68, 0f00000000; \n"
|
||||
"$Lt_0_12034:\n"
|
||||
" ld.param.f32 %f69, [__cudaparm_kernel_pair_cut_coulsq];\n"
|
||||
" setp.gt.f32 %p7, %f69, %f56;\n"
|
||||
" @!%p7 bra $Lt_0_12802;\n"
|
||||
" .loc 14 175 0\n"
|
||||
" sqrt.approx.f32 %f70, %f56;\n"
|
||||
" ld.param.f32 %f71, [__cudaparm_kernel_pair_g_ewald];\n"
|
||||
" mul.f32 %f72, %f71, %f70;\n"
|
||||
" mul.f32 %f73, %f72, %f72;\n"
|
||||
" mov.f32 %f74, 0f3f800000; \n"
|
||||
" mov.f32 %f75, 0f3ea7ba05; \n"
|
||||
" mad.f32 %f76, %f75, %f72, %f74;\n"
|
||||
" neg.f32 %f77, %f73;\n"
|
||||
" rcp.approx.f32 %f78, %f76;\n"
|
||||
" mov.f32 %f79, 0f3fb8aa3b; \n"
|
||||
" mul.f32 %f80, %f77, %f79;\n"
|
||||
" ex2.approx.f32 %f81, %f80;\n"
|
||||
" mov.f32 %f82, 0f3e827906; \n"
|
||||
" mov.f32 %f83, 0fbe91a98e; \n"
|
||||
" mov.f32 %f84, 0f3fb5f0e3; \n"
|
||||
" mov.f32 %f85, 0fbfba00e3; \n"
|
||||
" mov.f32 %f86, 0f3f87dc22; \n"
|
||||
" mad.f32 %f87, %f86, %f78, %f85;\n"
|
||||
" mad.f32 %f88, %f78, %f87, %f84;\n"
|
||||
" mad.f32 %f89, %f78, %f88, %f83;\n"
|
||||
" mad.f32 %f90, %f78, %f89, %f82;\n"
|
||||
" mul.f32 %f91, %f78, %f90;\n"
|
||||
" mul.f32 %f92, %f81, %f91;\n"
|
||||
" mov.f32 %f93, %f92;\n"
|
||||
" mov.s32 %r35, %r28;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" mov.s32 %r37, 0;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f94,%f95,%f96,%f97},[q_tex,{%r35,%r36,%r37,%r38}];\n"
|
||||
" .loc 14 176 0\n"
|
||||
" mov.f32 %f98, %f94;\n"
|
||||
" ld.param.f32 %f99, [__cudaparm_kernel_pair_qqrd2e];\n"
|
||||
" mul.f32 %f100, %f99, %f33;\n"
|
||||
" mul.f32 %f101, %f100, %f98;\n"
|
||||
" div.approx.f32 %f102, %f101, %f70;\n"
|
||||
" mov.f32 %f103, %f102;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" mov.f32 %f104, 0f3f906ebb; \n"
|
||||
" mul.f32 %f105, %f72, %f104;\n"
|
||||
" mad.f32 %f106, %f81, %f105, %f92;\n"
|
||||
" sub.f32 %f107, %f106, %f42;\n"
|
||||
" mul.f32 %f108, %f102, %f107;\n"
|
||||
" bra.uni $Lt_0_12546;\n"
|
||||
"$Lt_0_12802:\n"
|
||||
" .loc 14 180 0\n"
|
||||
" mov.f32 %f103, 0f00000000; \n"
|
||||
" mov.f32 %f108, 0f00000000; \n"
|
||||
"$Lt_0_12546:\n"
|
||||
" .loc 14 185 0\n"
|
||||
" add.f32 %f109, %f108, %f68;\n"
|
||||
" mul.f32 %f110, %f109, %f58;\n"
|
||||
" mad.f32 %f36, %f52, %f110, %f36;\n"
|
||||
" .loc 14 186 0\n"
|
||||
" mad.f32 %f35, %f51, %f110, %f35;\n"
|
||||
" .loc 14 187 0\n"
|
||||
" mad.f32 %f34, %f53, %f110, %f34;\n"
|
||||
" @!%p3 bra $Lt_0_13570;\n"
|
||||
" .loc 14 190 0\n"
|
||||
" mov.f32 %f111, %f93;\n"
|
||||
" sub.f32 %f112, %f111, %f42;\n"
|
||||
" mad.f32 %f37, %f103, %f112, %f37;\n"
|
||||
" @!%p6 bra $Lt_0_13570;\n"
|
||||
" .loc 14 193 0\n"
|
||||
" ld.param.u64 %rd23, [__cudaparm_kernel_pair_lj3];\n"
|
||||
" add.u64 %rd24, %rd23, %rd21;\n"
|
||||
" mov.f32 %f113, %f62;\n"
|
||||
" ld.global.v4.f32 {%f114,%f115,%f116,_}, [%rd24+0];\n"
|
||||
" mul.f32 %f117, %f114, %f113;\n"
|
||||
" sub.f32 %f118, %f117, %f115;\n"
|
||||
" mul.f32 %f119, %f113, %f118;\n"
|
||||
" sub.f32 %f120, %f119, %f116;\n"
|
||||
" .loc 14 146 0\n"
|
||||
" ld.shared.f32 %f39, [%rd19+0];\n"
|
||||
" .loc 14 193 0\n"
|
||||
" mad.f32 %f38, %f39, %f120, %f38;\n"
|
||||
"$Lt_0_13570:\n"
|
||||
"$Lt_0_13058:\n"
|
||||
" @!%p4 bra $Lt_0_14082;\n"
|
||||
" .loc 14 197 0\n"
|
||||
" mov.f32 %f121, %f10;\n"
|
||||
" mul.f32 %f122, %f52, %f52;\n"
|
||||
" mad.f32 %f123, %f110, %f122, %f121;\n"
|
||||
" mov.f32 %f10, %f123;\n"
|
||||
" .loc 14 198 0\n"
|
||||
" mov.f32 %f124, %f12;\n"
|
||||
" mad.f32 %f125, %f110, %f54, %f124;\n"
|
||||
" mov.f32 %f12, %f125;\n"
|
||||
" .loc 14 199 0\n"
|
||||
" mov.f32 %f126, %f14;\n"
|
||||
" mul.f32 %f127, %f53, %f53;\n"
|
||||
" mad.f32 %f128, %f110, %f127, %f126;\n"
|
||||
" mov.f32 %f14, %f128;\n"
|
||||
" .loc 14 200 0\n"
|
||||
" mov.f32 %f129, %f16;\n"
|
||||
" mul.f32 %f130, %f51, %f52;\n"
|
||||
" mad.f32 %f131, %f110, %f130, %f129;\n"
|
||||
" mov.f32 %f16, %f131;\n"
|
||||
" .loc 14 201 0\n"
|
||||
" mov.f32 %f132, %f18;\n"
|
||||
" mul.f32 %f133, %f52, %f53;\n"
|
||||
" mad.f32 %f134, %f110, %f133, %f132;\n"
|
||||
" mov.f32 %f18, %f134;\n"
|
||||
" .loc 14 202 0\n"
|
||||
" mul.f32 %f135, %f51, %f53;\n"
|
||||
" mad.f32 %f19, %f110, %f135, %f19;\n"
|
||||
" mov.f32 %f136, %f19;\n"
|
||||
"$Lt_0_14082:\n"
|
||||
"$Lt_0_11522:\n"
|
||||
" .loc 14 142 0\n"
|
||||
" add.u64 %rd10, %rd7, %rd10;\n"
|
||||
" setp.gt.u64 %p8, %rd13, %rd10;\n"
|
||||
" @%p8 bra $Lt_0_11266;\n"
|
||||
" bra.uni $Lt_0_10754;\n"
|
||||
"$Lt_0_15874:\n"
|
||||
" mov.s32 %r39, 0;\n"
|
||||
" setp.gt.s32 %p3, %r20, %r39;\n"
|
||||
" mov.s32 %r40, 0;\n"
|
||||
" setp.gt.s32 %p4, %r19, %r40;\n"
|
||||
"$Lt_0_10754:\n"
|
||||
" .loc 14 209 0\n"
|
||||
" ld.param.u64 %rd25, [__cudaparm_kernel_pair_engv];\n"
|
||||
" add.u64 %rd26, %rd25, %rd3;\n"
|
||||
" @!%p3 bra $Lt_0_14850;\n"
|
||||
" .loc 14 211 0\n"
|
||||
" st.global.f32 [%rd26+0], %f38;\n"
|
||||
" .loc 14 212 0\n"
|
||||
" cvt.u64.s32 %rd27, %r6;\n"
|
||||
" mul.lo.u64 %rd28, %rd27, 4;\n"
|
||||
" add.u64 %rd26, %rd28, %rd26;\n"
|
||||
" .loc 14 213 0\n"
|
||||
" st.global.f32 [%rd26+0], %f37;\n"
|
||||
" .loc 14 214 0\n"
|
||||
" add.u64 %rd26, %rd28, %rd26;\n"
|
||||
"$Lt_0_14850:\n"
|
||||
" @!%p4 bra $Lt_0_15362;\n"
|
||||
" .loc 14 218 0\n"
|
||||
" mov.f32 %f137, %f10;\n"
|
||||
" st.global.f32 [%rd26+0], %f137;\n"
|
||||
" .loc 14 219 0\n"
|
||||
" cvt.u64.s32 %rd29, %r6;\n"
|
||||
" mul.lo.u64 %rd30, %rd29, 4;\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 218 0\n"
|
||||
" mov.f32 %f138, %f12;\n"
|
||||
" st.global.f32 [%rd26+0], %f138;\n"
|
||||
" .loc 14 219 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 218 0\n"
|
||||
" mov.f32 %f139, %f14;\n"
|
||||
" st.global.f32 [%rd26+0], %f139;\n"
|
||||
" .loc 14 219 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 218 0\n"
|
||||
" mov.f32 %f140, %f16;\n"
|
||||
" st.global.f32 [%rd26+0], %f140;\n"
|
||||
" .loc 14 219 0\n"
|
||||
" add.u64 %rd26, %rd30, %rd26;\n"
|
||||
" .loc 14 218 0\n"
|
||||
" mov.f32 %f141, %f18;\n"
|
||||
" st.global.f32 [%rd26+0], %f141;\n"
|
||||
" add.u64 %rd31, %rd30, %rd26;\n"
|
||||
" st.global.f32 [%rd31+0], %f19;\n"
|
||||
"$Lt_0_15362:\n"
|
||||
" .loc 14 222 0\n"
|
||||
" ld.param.u64 %rd32, [__cudaparm_kernel_pair_ans];\n"
|
||||
" mul.lo.u64 %rd33, %rd2, 16;\n"
|
||||
" add.u64 %rd34, %rd32, %rd33;\n"
|
||||
" mov.f32 %f142, %f143;\n"
|
||||
" st.global.v4.f32 [%rd34+0], {%f36,%f35,%f34,%f142};\n"
|
||||
"$Lt_0_10242:\n"
|
||||
" .loc 14 224 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_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_nall,\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"
|
||||
" {\n"
|
||||
" .reg .u32 %r<45>;\n"
|
||||
" .reg .u64 %rd<48>;\n"
|
||||
" .reg .f32 %f<148>;\n"
|
||||
" .reg .pred %p<13>;\n"
|
||||
" .shared .align 4 .b8 __cuda_sp_lj244[32];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj1288[1024];\n"
|
||||
" .shared .align 16 .b8 __cuda_lj31312[1024];\n"
|
||||
" .loc 14 233 0\n"
|
||||
"$LBB1_kernel_pair_fast:\n"
|
||||
" cvt.s32.u16 %r1, %tid.x;\n"
|
||||
" mov.u32 %r2, 7;\n"
|
||||
" setp.gt.s32 %p1, %r1, %r2;\n"
|
||||
" @%p1 bra $Lt_1_12546;\n"
|
||||
" .loc 14 240 0\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj244;\n"
|
||||
" cvt.u64.s32 %rd2, %r1;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 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_12546:\n"
|
||||
" mov.u64 %rd1, __cuda_sp_lj244;\n"
|
||||
" mov.u32 %r3, 63;\n"
|
||||
" setp.gt.s32 %p2, %r1, %r3;\n"
|
||||
" @%p2 bra $Lt_1_13058;\n"
|
||||
" .loc 14 242 0\n"
|
||||
" mov.u64 %rd7, __cuda_lj1288;\n"
|
||||
" cvt.u64.s32 %rd8, %r1;\n"
|
||||
" mul.lo.u64 %rd9, %rd8, 16;\n"
|
||||
" ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in];\n"
|
||||
" add.u64 %rd11, %rd10, %rd9;\n"
|
||||
" add.u64 %rd12, %rd9, %rd7;\n"
|
||||
" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0];\n"
|
||||
" st.shared.f32 [%rd12+0], %f2;\n"
|
||||
" st.shared.f32 [%rd12+4], %f3;\n"
|
||||
" st.shared.f32 [%rd12+8], %f4;\n"
|
||||
" st.shared.f32 [%rd12+12], %f5;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" mov.u32 %r5, 0;\n"
|
||||
" setp.le.s32 %p3, %r4, %r5;\n"
|
||||
" @%p3 bra $Lt_1_13570;\n"
|
||||
" .loc 14 244 0\n"
|
||||
" mov.u64 %rd13, __cuda_lj31312;\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in];\n"
|
||||
" add.u64 %rd15, %rd14, %rd9;\n"
|
||||
" add.u64 %rd16, %rd9, %rd13;\n"
|
||||
" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0];\n"
|
||||
" st.shared.f32 [%rd16+0], %f6;\n"
|
||||
" st.shared.f32 [%rd16+4], %f7;\n"
|
||||
" st.shared.f32 [%rd16+8], %f8;\n"
|
||||
" st.shared.f32 [%rd16+12], %f9;\n"
|
||||
"$Lt_1_13570:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31312;\n"
|
||||
"$Lt_1_13058:\n"
|
||||
" mov.u64 %rd13, __cuda_lj31312;\n"
|
||||
" mov.u64 %rd7, __cuda_lj1288;\n"
|
||||
" .loc 14 247 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" cvt.s32.u16 %r6, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r7, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r8, %r6, %r7;\n"
|
||||
" add.s32 %r9, %r8, %r1;\n"
|
||||
" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum];\n"
|
||||
" setp.ge.s32 %p4, %r9, %r10;\n"
|
||||
" @%p4 bra $Lt_1_14082;\n"
|
||||
" .loc 14 259 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 14 262 0\n"
|
||||
" cvt.u64.s32 %rd17, %r9;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n"
|
||||
" add.u64 %rd20, %rd19, %rd18;\n"
|
||||
" ld.global.s32 %r11, [%rd20+0];\n"
|
||||
" .loc 14 264 0\n"
|
||||
" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch];\n"
|
||||
" cvt.u64.s32 %rd21, %r12;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd20, %rd22;\n"
|
||||
" ld.global.s32 %r13, [%rd23+0];\n"
|
||||
" .loc 14 265 0\n"
|
||||
" add.u64 %rd24, %rd23, %rd22;\n"
|
||||
" mov.s64 %rd25, %rd24;\n"
|
||||
" mov.s32 %r14, %r11;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" mov.s32 %r16, 0;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r14,%r15,%r16,%r17}];\n"
|
||||
" .loc 14 268 0\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" mov.f32 %f27, %f23;\n"
|
||||
" mov.f32 %f28, %f24;\n"
|
||||
" mov.f32 %f29, %f25;\n"
|
||||
" mov.s32 %r18, %r11;\n"
|
||||
" mov.s32 %r19, 0;\n"
|
||||
" mov.s32 %r20, 0;\n"
|
||||
" mov.s32 %r21, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r18,%r19,%r20,%r21}];\n"
|
||||
" .loc 14 269 0\n"
|
||||
" mov.f32 %f34, %f30;\n"
|
||||
" mul24.lo.s32 %r22, %r13, %r12;\n"
|
||||
" cvt.s64.s32 %rd26, %r22;\n"
|
||||
" mul.lo.u64 %rd27, %rd26, 4;\n"
|
||||
" add.u64 %rd28, %rd24, %rd27;\n"
|
||||
" ld.param.s32 %r23, [__cudaparm_kernel_pair_fast_vflag];\n"
|
||||
" ld.param.s32 %r24, [__cudaparm_kernel_pair_fast_eflag];\n"
|
||||
" setp.ge.u64 %p5, %rd24, %rd28;\n"
|
||||
" mov.f32 %f35, 0f00000000; \n"
|
||||
" mov.f32 %f36, 0f00000000; \n"
|
||||
" mov.f32 %f37, 0f00000000; \n"
|
||||
" mov.f32 %f38, 0f00000000; \n"
|
||||
" mov.f32 %f39, 0f00000000; \n"
|
||||
" @%p5 bra $Lt_1_19714;\n"
|
||||
" mov.s32 %r25, 0;\n"
|
||||
" setp.gt.s32 %p6, %r24, %r25;\n"
|
||||
" mov.s32 %r26, 0;\n"
|
||||
" setp.gt.s32 %p7, %r23, %r26;\n"
|
||||
" cvt.rzi.s32.f32 %r27, %f29;\n"
|
||||
" mov.s32 %r28, 8;\n"
|
||||
" mul24.lo.s32 %r29, %r28, %r27;\n"
|
||||
" cvt.rn.f32.s32 %f40, %r29;\n"
|
||||
"$Lt_1_15106:\n"
|
||||
" .loc 14 274 0\n"
|
||||
" ld.global.s32 %r30, [%rd25+0];\n"
|
||||
" .loc 14 277 0\n"
|
||||
" shr.s32 %r31, %r30, 30;\n"
|
||||
" cvt.s64.s32 %rd29, %r31;\n"
|
||||
" and.b64 %rd30, %rd29, 3;\n"
|
||||
" mul.lo.u64 %rd31, %rd30, 4;\n"
|
||||
" add.u64 %rd32, %rd1, %rd31;\n"
|
||||
" ld.shared.f32 %f41, [%rd32+0];\n"
|
||||
" .loc 14 278 0\n"
|
||||
" mov.f32 %f42, 0f3f800000; \n"
|
||||
" ld.shared.f32 %f43, [%rd32+16];\n"
|
||||
" sub.f32 %f44, %f42, %f43;\n"
|
||||
" and.b32 %r32, %r30, 1073741823;\n"
|
||||
" mov.s32 %r33, %r32;\n"
|
||||
" mov.s32 %r34, 0;\n"
|
||||
" mov.s32 %r35, 0;\n"
|
||||
" mov.s32 %r36, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r33,%r34,%r35,%r36}];\n"
|
||||
" .loc 14 281 0\n"
|
||||
" mov.f32 %f49, %f45;\n"
|
||||
" mov.f32 %f50, %f46;\n"
|
||||
" mov.f32 %f51, %f47;\n"
|
||||
" mov.f32 %f52, %f48;\n"
|
||||
" sub.f32 %f53, %f27, %f50;\n"
|
||||
" sub.f32 %f54, %f26, %f49;\n"
|
||||
" sub.f32 %f55, %f28, %f51;\n"
|
||||
" mul.f32 %f56, %f53, %f53;\n"
|
||||
" mad.f32 %f57, %f54, %f54, %f56;\n"
|
||||
" mad.f32 %f58, %f55, %f55, %f57;\n"
|
||||
" add.f32 %f59, %f40, %f52;\n"
|
||||
" cvt.rzi.s32.f32 %r37, %f59;\n"
|
||||
" cvt.u64.s32 %rd33, %r37;\n"
|
||||
" mul.lo.u64 %rd34, %rd33, 16;\n"
|
||||
" add.u64 %rd35, %rd34, %rd7;\n"
|
||||
" ld.shared.f32 %f60, [%rd35+8];\n"
|
||||
" setp.gt.f32 %p8, %f60, %f58;\n"
|
||||
" @!%p8 bra $Lt_1_17922;\n"
|
||||
" rcp.approx.f32 %f61, %f58;\n"
|
||||
" ld.shared.f32 %f62, [%rd35+12];\n"
|
||||
" setp.lt.f32 %p9, %f58, %f62;\n"
|
||||
" @!%p9 bra $Lt_1_16130;\n"
|
||||
" .loc 14 295 0\n"
|
||||
" mul.f32 %f63, %f61, %f61;\n"
|
||||
" mul.f32 %f64, %f61, %f63;\n"
|
||||
" mov.f32 %f65, %f64;\n"
|
||||
" .loc 14 277 0\n"
|
||||
" ld.shared.f32 %f41, [%rd32+0];\n"
|
||||
" .loc 14 296 0\n"
|
||||
" mul.f32 %f66, %f64, %f41;\n"
|
||||
" ld.shared.f32 %f67, [%rd35+4];\n"
|
||||
" ld.shared.f32 %f68, [%rd35+0];\n"
|
||||
" mul.f32 %f69, %f68, %f64;\n"
|
||||
" sub.f32 %f70, %f69, %f67;\n"
|
||||
" mul.f32 %f71, %f66, %f70;\n"
|
||||
" bra.uni $Lt_1_15874;\n"
|
||||
"$Lt_1_16130:\n"
|
||||
" .loc 14 298 0\n"
|
||||
" mov.f32 %f71, 0f00000000; \n"
|
||||
"$Lt_1_15874:\n"
|
||||
" ld.param.f32 %f72, [__cudaparm_kernel_pair_fast_cut_coulsq];\n"
|
||||
" setp.gt.f32 %p10, %f72, %f58;\n"
|
||||
" @!%p10 bra $Lt_1_16642;\n"
|
||||
" .loc 14 305 0\n"
|
||||
" sqrt.approx.f32 %f73, %f58;\n"
|
||||
" ld.param.f32 %f74, [__cudaparm_kernel_pair_fast_g_ewald];\n"
|
||||
" mul.f32 %f75, %f74, %f73;\n"
|
||||
" mul.f32 %f76, %f75, %f75;\n"
|
||||
" mov.f32 %f77, 0f3f800000; \n"
|
||||
" mov.f32 %f78, 0f3ea7ba05; \n"
|
||||
" mad.f32 %f79, %f78, %f75, %f77;\n"
|
||||
" neg.f32 %f80, %f76;\n"
|
||||
" rcp.approx.f32 %f81, %f79;\n"
|
||||
" mov.f32 %f82, 0f3fb8aa3b; \n"
|
||||
" mul.f32 %f83, %f80, %f82;\n"
|
||||
" ex2.approx.f32 %f84, %f83;\n"
|
||||
" mov.f32 %f85, 0f3e827906; \n"
|
||||
" mov.f32 %f86, 0fbe91a98e; \n"
|
||||
" mov.f32 %f87, 0f3fb5f0e3; \n"
|
||||
" mov.f32 %f88, 0fbfba00e3; \n"
|
||||
" mov.f32 %f89, 0f3f87dc22; \n"
|
||||
" mad.f32 %f90, %f89, %f81, %f88;\n"
|
||||
" mad.f32 %f91, %f81, %f90, %f87;\n"
|
||||
" mad.f32 %f92, %f81, %f91, %f86;\n"
|
||||
" mad.f32 %f93, %f81, %f92, %f85;\n"
|
||||
" mul.f32 %f94, %f81, %f93;\n"
|
||||
" mul.f32 %f95, %f84, %f94;\n"
|
||||
" mov.f32 %f96, %f95;\n"
|
||||
" mov.s32 %r38, %r32;\n"
|
||||
" mov.s32 %r39, 0;\n"
|
||||
" mov.s32 %r40, 0;\n"
|
||||
" mov.s32 %r41, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f97,%f98,%f99,%f100},[q_tex,{%r38,%r39,%r40,%r41}];\n"
|
||||
" .loc 14 306 0\n"
|
||||
" mov.f32 %f101, %f97;\n"
|
||||
" ld.param.f32 %f102, [__cudaparm_kernel_pair_fast_qqrd2e];\n"
|
||||
" mul.f32 %f103, %f102, %f34;\n"
|
||||
" mul.f32 %f104, %f103, %f101;\n"
|
||||
" div.approx.f32 %f105, %f104, %f73;\n"
|
||||
" mov.f32 %f106, %f105;\n"
|
||||
" .loc 14 307 0\n"
|
||||
" mov.f32 %f107, 0f3f906ebb; \n"
|
||||
" mul.f32 %f108, %f75, %f107;\n"
|
||||
" mad.f32 %f109, %f84, %f108, %f95;\n"
|
||||
" sub.f32 %f110, %f109, %f44;\n"
|
||||
" mul.f32 %f111, %f105, %f110;\n"
|
||||
" bra.uni $Lt_1_16386;\n"
|
||||
"$Lt_1_16642:\n"
|
||||
" .loc 14 310 0\n"
|
||||
" mov.f32 %f106, 0f00000000; \n"
|
||||
" mov.f32 %f111, 0f00000000; \n"
|
||||
"$Lt_1_16386:\n"
|
||||
" .loc 14 315 0\n"
|
||||
" add.f32 %f112, %f111, %f71;\n"
|
||||
" mul.f32 %f113, %f112, %f61;\n"
|
||||
" mad.f32 %f37, %f54, %f113, %f37;\n"
|
||||
" .loc 14 316 0\n"
|
||||
" mad.f32 %f36, %f53, %f113, %f36;\n"
|
||||
" .loc 14 317 0\n"
|
||||
" mad.f32 %f35, %f55, %f113, %f35;\n"
|
||||
" @!%p6 bra $Lt_1_17410;\n"
|
||||
" .loc 14 320 0\n"
|
||||
" mov.f32 %f114, %f96;\n"
|
||||
" sub.f32 %f115, %f114, %f44;\n"
|
||||
" mad.f32 %f38, %f106, %f115, %f38;\n"
|
||||
" @!%p9 bra $Lt_1_17410;\n"
|
||||
" .loc 14 322 0\n"
|
||||
" add.u64 %rd36, %rd34, %rd13;\n"
|
||||
" mov.f32 %f116, %f65;\n"
|
||||
" ld.shared.f32 %f117, [%rd36+4];\n"
|
||||
" ld.shared.f32 %f118, [%rd36+0];\n"
|
||||
" mul.f32 %f119, %f118, %f116;\n"
|
||||
" sub.f32 %f120, %f119, %f117;\n"
|
||||
" mul.f32 %f121, %f116, %f120;\n"
|
||||
" .loc 14 323 0\n"
|
||||
" ld.shared.f32 %f122, [%rd36+8];\n"
|
||||
" sub.f32 %f123, %f121, %f122;\n"
|
||||
" .loc 14 277 0\n"
|
||||
" ld.shared.f32 %f41, [%rd32+0];\n"
|
||||
" .loc 14 323 0\n"
|
||||
" mad.f32 %f39, %f41, %f123, %f39;\n"
|
||||
"$Lt_1_17410:\n"
|
||||
"$Lt_1_16898:\n"
|
||||
" @!%p7 bra $Lt_1_17922;\n"
|
||||
" .loc 14 327 0\n"
|
||||
" mov.f32 %f124, %f11;\n"
|
||||
" mul.f32 %f125, %f54, %f54;\n"
|
||||
" mad.f32 %f126, %f113, %f125, %f124;\n"
|
||||
" mov.f32 %f11, %f126;\n"
|
||||
" .loc 14 328 0\n"
|
||||
" mov.f32 %f127, %f13;\n"
|
||||
" mad.f32 %f128, %f113, %f56, %f127;\n"
|
||||
" mov.f32 %f13, %f128;\n"
|
||||
" .loc 14 329 0\n"
|
||||
" mov.f32 %f129, %f15;\n"
|
||||
" mul.f32 %f130, %f55, %f55;\n"
|
||||
" mad.f32 %f131, %f113, %f130, %f129;\n"
|
||||
" mov.f32 %f15, %f131;\n"
|
||||
" .loc 14 330 0\n"
|
||||
" mov.f32 %f132, %f17;\n"
|
||||
" mul.f32 %f133, %f53, %f54;\n"
|
||||
" mad.f32 %f134, %f113, %f133, %f132;\n"
|
||||
" mov.f32 %f17, %f134;\n"
|
||||
" .loc 14 331 0\n"
|
||||
" mov.f32 %f135, %f19;\n"
|
||||
" mul.f32 %f136, %f54, %f55;\n"
|
||||
" mad.f32 %f137, %f113, %f136, %f135;\n"
|
||||
" mov.f32 %f19, %f137;\n"
|
||||
" .loc 14 332 0\n"
|
||||
" mul.f32 %f138, %f53, %f55;\n"
|
||||
" mad.f32 %f20, %f113, %f138, %f20;\n"
|
||||
" mov.f32 %f139, %f20;\n"
|
||||
"$Lt_1_17922:\n"
|
||||
"$Lt_1_15362:\n"
|
||||
" .loc 14 273 0\n"
|
||||
" add.u64 %rd25, %rd22, %rd25;\n"
|
||||
" setp.gt.u64 %p11, %rd28, %rd25;\n"
|
||||
" @%p11 bra $Lt_1_15106;\n"
|
||||
" bra.uni $Lt_1_14594;\n"
|
||||
"$Lt_1_19714:\n"
|
||||
" mov.s32 %r42, 0;\n"
|
||||
" setp.gt.s32 %p6, %r24, %r42;\n"
|
||||
" mov.s32 %r43, 0;\n"
|
||||
" setp.gt.s32 %p7, %r23, %r43;\n"
|
||||
"$Lt_1_14594:\n"
|
||||
" .loc 14 339 0\n"
|
||||
" ld.param.u64 %rd37, [__cudaparm_kernel_pair_fast_engv];\n"
|
||||
" add.u64 %rd38, %rd37, %rd18;\n"
|
||||
" @!%p6 bra $Lt_1_18690;\n"
|
||||
" .loc 14 341 0\n"
|
||||
" st.global.f32 [%rd38+0], %f39;\n"
|
||||
" .loc 14 342 0\n"
|
||||
" cvt.u64.s32 %rd39, %r10;\n"
|
||||
" mul.lo.u64 %rd40, %rd39, 4;\n"
|
||||
" add.u64 %rd38, %rd40, %rd38;\n"
|
||||
" .loc 14 343 0\n"
|
||||
" st.global.f32 [%rd38+0], %f38;\n"
|
||||
" .loc 14 344 0\n"
|
||||
" add.u64 %rd38, %rd40, %rd38;\n"
|
||||
"$Lt_1_18690:\n"
|
||||
" @!%p7 bra $Lt_1_19202;\n"
|
||||
" .loc 14 348 0\n"
|
||||
" mov.f32 %f140, %f11;\n"
|
||||
" st.global.f32 [%rd38+0], %f140;\n"
|
||||
" .loc 14 349 0\n"
|
||||
" cvt.u64.s32 %rd41, %r10;\n"
|
||||
" mul.lo.u64 %rd42, %rd41, 4;\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 348 0\n"
|
||||
" mov.f32 %f141, %f13;\n"
|
||||
" st.global.f32 [%rd38+0], %f141;\n"
|
||||
" .loc 14 349 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 348 0\n"
|
||||
" mov.f32 %f142, %f15;\n"
|
||||
" st.global.f32 [%rd38+0], %f142;\n"
|
||||
" .loc 14 349 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 348 0\n"
|
||||
" mov.f32 %f143, %f17;\n"
|
||||
" st.global.f32 [%rd38+0], %f143;\n"
|
||||
" .loc 14 349 0\n"
|
||||
" add.u64 %rd38, %rd42, %rd38;\n"
|
||||
" .loc 14 348 0\n"
|
||||
" mov.f32 %f144, %f19;\n"
|
||||
" st.global.f32 [%rd38+0], %f144;\n"
|
||||
" add.u64 %rd43, %rd42, %rd38;\n"
|
||||
" st.global.f32 [%rd43+0], %f20;\n"
|
||||
"$Lt_1_19202:\n"
|
||||
" .loc 14 352 0\n"
|
||||
" ld.param.u64 %rd44, [__cudaparm_kernel_pair_fast_ans];\n"
|
||||
" mul.lo.u64 %rd45, %rd17, 16;\n"
|
||||
" add.u64 %rd46, %rd44, %rd45;\n"
|
||||
" mov.f32 %f145, %f146;\n"
|
||||
" st.global.v4.f32 [%rd46+0], {%f37,%f36,%f35,%f145};\n"
|
||||
"$Lt_1_14082:\n"
|
||||
" .loc 14 354 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_pair_fast:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,55 +0,0 @@
|
|||
const char * pair_gpu_atom_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .entry kernel_cast_x (\n"
|
||||
" .param .u64 __cudaparm_kernel_cast_x_x_type,\n"
|
||||
" .param .u64 __cudaparm_kernel_cast_x_x,\n"
|
||||
" .param .u64 __cudaparm_kernel_cast_x_type,\n"
|
||||
" .param .s32 __cudaparm_kernel_cast_x_nall)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<10>;\n"
|
||||
" .reg .u64 %rd<13>;\n"
|
||||
" .reg .f32 %f<6>;\n"
|
||||
" .reg .f64 %fd<5>;\n"
|
||||
" .reg .pred %p<3>;\n"
|
||||
" .loc 14 34 0\n"
|
||||
"$LBB1_kernel_cast_x:\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_cast_x_nall];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_1026;\n"
|
||||
" .loc 14 39 0\n"
|
||||
" cvt.u64.s32 %rd1, %r5;\n"
|
||||
" ld.param.u64 %rd2, [__cudaparm_kernel_cast_x_type];\n"
|
||||
" mul.lo.u64 %rd3, %rd1, 4;\n"
|
||||
" add.u64 %rd4, %rd2, %rd3;\n"
|
||||
" ld.global.s32 %r7, [%rd4+0];\n"
|
||||
" cvt.rn.f32.s32 %f1, %r7;\n"
|
||||
" .loc 14 42 0\n"
|
||||
" ld.param.u64 %rd5, [__cudaparm_kernel_cast_x_x];\n"
|
||||
" mul.lo.s32 %r8, %r5, 3;\n"
|
||||
" cvt.u64.s32 %rd6, %r8;\n"
|
||||
" mul.lo.u64 %rd7, %rd6, 8;\n"
|
||||
" add.u64 %rd8, %rd5, %rd7;\n"
|
||||
" ld.global.f64 %fd1, [%rd8+8];\n"
|
||||
" cvt.rn.f32.f64 %f2, %fd1;\n"
|
||||
" .loc 14 43 0\n"
|
||||
" ld.global.f64 %fd2, [%rd8+16];\n"
|
||||
" cvt.rn.f32.f64 %f3, %fd2;\n"
|
||||
" .loc 14 44 0\n"
|
||||
" ld.param.u64 %rd9, [__cudaparm_kernel_cast_x_x_type];\n"
|
||||
" mul.lo.u64 %rd10, %rd1, 16;\n"
|
||||
" add.u64 %rd11, %rd9, %rd10;\n"
|
||||
" ld.global.f64 %fd3, [%rd8+0];\n"
|
||||
" cvt.rn.f32.f64 %f4, %fd3;\n"
|
||||
" st.global.v4.f32 [%rd11+0], {%f4,%f2,%f3,%f1};\n"
|
||||
"$Lt_0_1026:\n"
|
||||
" .loc 14 46 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_cast_x:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,765 +0,0 @@
|
|||
const char * pair_gpu_build_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .tex .u64 neigh_tex;\n"
|
||||
" .entry transpose (\n"
|
||||
" .param .u64 __cudaparm_transpose_out,\n"
|
||||
" .param .u64 __cudaparm_transpose_in,\n"
|
||||
" .param .s32 __cudaparm_transpose_columns_in,\n"
|
||||
" .param .s32 __cudaparm_transpose_rows_in)\n"
|
||||
" {\n"
|
||||
" .reg .u16 %rh<4>;\n"
|
||||
" .reg .u32 %r<30>;\n"
|
||||
" .reg .u64 %rd<23>;\n"
|
||||
" .reg .f32 %f<4>;\n"
|
||||
" .reg .pred %p<4>;\n"
|
||||
" .shared .align 4 .b8 __cuda_block24[288];\n"
|
||||
" .loc 14 62 0\n"
|
||||
"$LBB1_transpose:\n"
|
||||
" mov.u16 %rh1, %ctaid.x;\n"
|
||||
" mul.wide.u16 %r1, %rh1, 8;\n"
|
||||
" mov.u16 %rh2, %ctaid.y;\n"
|
||||
" mul.wide.u16 %r2, %rh2, 8;\n"
|
||||
" cvt.u32.u16 %r3, %tid.x;\n"
|
||||
" add.u32 %r4, %r1, %r3;\n"
|
||||
" cvt.u32.u16 %r5, %tid.y;\n"
|
||||
" add.u32 %r6, %r2, %r5;\n"
|
||||
" ld.param.u32 %r7, [__cudaparm_transpose_rows_in];\n"
|
||||
" ld.param.u32 %r8, [__cudaparm_transpose_columns_in];\n"
|
||||
" set.lt.u32.u32 %r9, %r4, %r8;\n"
|
||||
" neg.s32 %r10, %r9;\n"
|
||||
" set.lt.u32.u32 %r11, %r6, %r7;\n"
|
||||
" neg.s32 %r12, %r11;\n"
|
||||
" and.b32 %r13, %r10, %r12;\n"
|
||||
" mov.u32 %r14, 0;\n"
|
||||
" setp.eq.s32 %p1, %r13, %r14;\n"
|
||||
" @%p1 bra $Lt_0_2306;\n"
|
||||
" .loc 14 74 0\n"
|
||||
" mov.u64 %rd1, __cuda_block24;\n"
|
||||
" ld.param.u64 %rd2, [__cudaparm_transpose_in];\n"
|
||||
" mul.lo.u32 %r15, %r6, %r8;\n"
|
||||
" add.u32 %r16, %r4, %r15;\n"
|
||||
" cvt.u64.u32 %rd3, %r16;\n"
|
||||
" mul.lo.u64 %rd4, %rd3, 4;\n"
|
||||
" add.u64 %rd5, %rd2, %rd4;\n"
|
||||
" ld.global.s32 %r17, [%rd5+0];\n"
|
||||
" cvt.rn.f32.s32 %f1, %r17;\n"
|
||||
" cvt.u64.u32 %rd6, %r3;\n"
|
||||
" cvt.u64.u32 %rd7, %r5;\n"
|
||||
" mul.lo.u64 %rd8, %rd7, 9;\n"
|
||||
" add.u64 %rd9, %rd6, %rd8;\n"
|
||||
" mul.lo.u64 %rd10, %rd9, 4;\n"
|
||||
" add.u64 %rd11, %rd1, %rd10;\n"
|
||||
" st.shared.f32 [%rd11+0], %f1;\n"
|
||||
"$Lt_0_2306:\n"
|
||||
" mov.u64 %rd1, __cuda_block24;\n"
|
||||
" .loc 14 76 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" add.u32 %r18, %r1, %r5;\n"
|
||||
" add.u32 %r19, %r2, %r3;\n"
|
||||
" set.lt.u32.u32 %r20, %r18, %r8;\n"
|
||||
" neg.s32 %r21, %r20;\n"
|
||||
" set.lt.u32.u32 %r22, %r19, %r7;\n"
|
||||
" neg.s32 %r23, %r22;\n"
|
||||
" and.b32 %r24, %r21, %r23;\n"
|
||||
" mov.u32 %r25, 0;\n"
|
||||
" setp.eq.s32 %p2, %r24, %r25;\n"
|
||||
" @%p2 bra $Lt_0_2818;\n"
|
||||
" .loc 14 81 0\n"
|
||||
" cvt.u64.u32 %rd12, %r5;\n"
|
||||
" cvt.u64.u32 %rd13, %r3;\n"
|
||||
" mul.lo.u64 %rd14, %rd13, 9;\n"
|
||||
" add.u64 %rd15, %rd12, %rd14;\n"
|
||||
" mul.lo.u64 %rd16, %rd15, 4;\n"
|
||||
" add.u64 %rd17, %rd1, %rd16;\n"
|
||||
" ld.shared.f32 %f2, [%rd17+0];\n"
|
||||
" cvt.rzi.s32.f32 %r26, %f2;\n"
|
||||
" ld.param.u64 %rd18, [__cudaparm_transpose_out];\n"
|
||||
" mul.lo.u32 %r27, %r18, %r7;\n"
|
||||
" add.u32 %r28, %r19, %r27;\n"
|
||||
" cvt.u64.u32 %rd19, %r28;\n"
|
||||
" mul.lo.u64 %rd20, %rd19, 4;\n"
|
||||
" add.u64 %rd21, %rd18, %rd20;\n"
|
||||
" st.global.s32 [%rd21+0], %r26;\n"
|
||||
"$Lt_0_2818:\n"
|
||||
" .loc 14 82 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_transpose:\n"
|
||||
" }\n"
|
||||
" .entry calc_cell_id (\n"
|
||||
" .param .u64 __cudaparm_calc_cell_id_pos,\n"
|
||||
" .param .u64 __cudaparm_calc_cell_id_cell_id,\n"
|
||||
" .param .u64 __cudaparm_calc_cell_id_particle_id,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_boxlo0,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_boxlo1,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_boxlo2,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_boxhi0,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_boxhi1,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_boxhi2,\n"
|
||||
" .param .f32 __cudaparm_calc_cell_id_cell_size,\n"
|
||||
" .param .s32 __cudaparm_calc_cell_id_ncellx,\n"
|
||||
" .param .s32 __cudaparm_calc_cell_id_ncelly,\n"
|
||||
" .param .s32 __cudaparm_calc_cell_id_nall)\n"
|
||||
" {\n"
|
||||
" .reg .u16 %rh<4>;\n"
|
||||
" .reg .u32 %r<20>;\n"
|
||||
" .reg .u64 %rd<8>;\n"
|
||||
" .reg .f32 %f<35>;\n"
|
||||
" .reg .f64 %fd<11>;\n"
|
||||
" .reg .pred %p<3>;\n"
|
||||
" .loc 14 88 0\n"
|
||||
"$LBB1_calc_cell_id:\n"
|
||||
" cvt.u32.u16 %r1, %tid.x;\n"
|
||||
" mov.u16 %rh1, %ctaid.x;\n"
|
||||
" mov.u16 %rh2, %ntid.x;\n"
|
||||
" mul.wide.u16 %r2, %rh1, %rh2;\n"
|
||||
" add.u32 %r3, %r1, %r2;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_calc_cell_id_nall];\n"
|
||||
" setp.le.s32 %p1, %r4, %r3;\n"
|
||||
" @%p1 bra $Lt_1_1026;\n"
|
||||
" mov.s32 %r5, %r3;\n"
|
||||
" mov.s32 %r6, 0;\n"
|
||||
" mov.s32 %r7, 0;\n"
|
||||
" mov.s32 %r8, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[neigh_tex,{%r5,%r6,%r7,%r8}];\n"
|
||||
" .loc 14 92 0\n"
|
||||
" mov.f32 %f5, %f1;\n"
|
||||
" mov.f32 %f6, %f2;\n"
|
||||
" mov.f32 %f7, %f3;\n"
|
||||
" .loc 14 105 0\n"
|
||||
" ld.param.f32 %f8, [__cudaparm_calc_cell_id_cell_size];\n"
|
||||
" neg.f32 %f9, %f8;\n"
|
||||
" ld.param.f32 %f10, [__cudaparm_calc_cell_id_boxlo0];\n"
|
||||
" ld.param.f32 %f11, [__cudaparm_calc_cell_id_boxlo2];\n"
|
||||
" ld.param.f32 %f12, [__cudaparm_calc_cell_id_boxlo1];\n"
|
||||
" ld.param.u32 %r9, [__cudaparm_calc_cell_id_ncellx];\n"
|
||||
" ld.param.u32 %r10, [__cudaparm_calc_cell_id_ncelly];\n"
|
||||
" ld.param.f32 %f13, [__cudaparm_calc_cell_id_boxhi2];\n"
|
||||
" sub.f32 %f14, %f13, %f11;\n"
|
||||
" add.f32 %f15, %f8, %f14;\n"
|
||||
" sub.f32 %f16, %f7, %f11;\n"
|
||||
" max.f32 %f17, %f9, %f16;\n"
|
||||
" min.f32 %f18, %f15, %f17;\n"
|
||||
" div.approx.f32 %f19, %f18, %f8;\n"
|
||||
" cvt.f64.f32 %fd1, %f19;\n"
|
||||
" mov.f64 %fd2, 0d3ff0000000000000; \n"
|
||||
" add.f64 %fd3, %fd1, %fd2;\n"
|
||||
" cvt.rzi.u32.f64 %r11, %fd3;\n"
|
||||
" mul.lo.u32 %r12, %r9, %r11;\n"
|
||||
" mul.lo.u32 %r13, %r10, %r12;\n"
|
||||
" ld.param.f32 %f20, [__cudaparm_calc_cell_id_boxhi1];\n"
|
||||
" sub.f32 %f21, %f20, %f12;\n"
|
||||
" add.f32 %f22, %f8, %f21;\n"
|
||||
" sub.f32 %f23, %f6, %f12;\n"
|
||||
" max.f32 %f24, %f9, %f23;\n"
|
||||
" min.f32 %f25, %f22, %f24;\n"
|
||||
" div.approx.f32 %f26, %f25, %f8;\n"
|
||||
" cvt.f64.f32 %fd4, %f26;\n"
|
||||
" mov.f64 %fd5, 0d3ff0000000000000; \n"
|
||||
" add.f64 %fd6, %fd4, %fd5;\n"
|
||||
" cvt.rzi.u32.f64 %r14, %fd6;\n"
|
||||
" mul.lo.u32 %r15, %r9, %r14;\n"
|
||||
" add.u32 %r16, %r13, %r15;\n"
|
||||
" ld.param.f32 %f27, [__cudaparm_calc_cell_id_boxhi0];\n"
|
||||
" sub.f32 %f28, %f27, %f10;\n"
|
||||
" add.f32 %f29, %f8, %f28;\n"
|
||||
" sub.f32 %f30, %f5, %f10;\n"
|
||||
" max.f32 %f31, %f9, %f30;\n"
|
||||
" min.f32 %f32, %f29, %f31;\n"
|
||||
" div.approx.f32 %f33, %f32, %f8;\n"
|
||||
" cvt.f64.f32 %fd7, %f33;\n"
|
||||
" mov.f64 %fd8, 0d3ff0000000000000; \n"
|
||||
" add.f64 %fd9, %fd7, %fd8;\n"
|
||||
" cvt.rzi.u32.f64 %r17, %fd9;\n"
|
||||
" add.u32 %r18, %r16, %r17;\n"
|
||||
" .loc 14 109 0\n"
|
||||
" cvt.u64.s32 %rd1, %r3;\n"
|
||||
" mul.lo.u64 %rd2, %rd1, 4;\n"
|
||||
" ld.param.u64 %rd3, [__cudaparm_calc_cell_id_cell_id];\n"
|
||||
" add.u64 %rd4, %rd3, %rd2;\n"
|
||||
" st.global.u32 [%rd4+0], %r18;\n"
|
||||
" .loc 14 110 0\n"
|
||||
" ld.param.u64 %rd5, [__cudaparm_calc_cell_id_particle_id];\n"
|
||||
" add.u64 %rd6, %rd5, %rd2;\n"
|
||||
" st.global.s32 [%rd6+0], %r3;\n"
|
||||
"$Lt_1_1026:\n"
|
||||
" .loc 14 112 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_calc_cell_id:\n"
|
||||
" }\n"
|
||||
" .entry kernel_calc_cell_counts (\n"
|
||||
" .param .u64 __cudaparm_kernel_calc_cell_counts_cell_id,\n"
|
||||
" .param .u64 __cudaparm_kernel_calc_cell_counts_cell_counts,\n"
|
||||
" .param .s32 __cudaparm_kernel_calc_cell_counts_nall,\n"
|
||||
" .param .s32 __cudaparm_kernel_calc_cell_counts_ncell)\n"
|
||||
" {\n"
|
||||
" .reg .u16 %rh<4>;\n"
|
||||
" .reg .u32 %r<31>;\n"
|
||||
" .reg .u64 %rd<15>;\n"
|
||||
" .reg .pred %p<13>;\n"
|
||||
" .loc 14 115 0\n"
|
||||
"$LBB1_kernel_calc_cell_counts:\n"
|
||||
" mov.u16 %rh1, %ctaid.x;\n"
|
||||
" mov.u16 %rh2, %ntid.x;\n"
|
||||
" mul.wide.u16 %r1, %rh1, %rh2;\n"
|
||||
" cvt.u32.u16 %r2, %tid.x;\n"
|
||||
" add.u32 %r3, %r2, %r1;\n"
|
||||
" ld.param.s32 %r4, [__cudaparm_kernel_calc_cell_counts_nall];\n"
|
||||
" setp.gt.s32 %p1, %r4, %r3;\n"
|
||||
" @!%p1 bra $Lt_2_7426;\n"
|
||||
" .loc 14 118 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_calc_cell_counts_cell_id];\n"
|
||||
" cvt.u64.s32 %rd2, %r3;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" add.u64 %rd4, %rd1, %rd3;\n"
|
||||
" ld.global.s32 %r5, [%rd4+0];\n"
|
||||
" mov.u32 %r6, 0;\n"
|
||||
" setp.ne.s32 %p2, %r3, %r6;\n"
|
||||
" @%p2 bra $Lt_2_7938;\n"
|
||||
" add.s32 %r7, %r5, 1;\n"
|
||||
" mov.u32 %r8, 0;\n"
|
||||
" setp.le.s32 %p3, %r7, %r8;\n"
|
||||
" @%p3 bra $Lt_2_8450;\n"
|
||||
" mov.s32 %r9, %r7;\n"
|
||||
" ld.param.u64 %rd5, [__cudaparm_kernel_calc_cell_counts_cell_counts];\n"
|
||||
" mov.s32 %r10, 0;\n"
|
||||
" mov.s32 %r11, %r9;\n"
|
||||
"$Lt_2_8962:\n"
|
||||
" .loc 14 123 0\n"
|
||||
" mov.s32 %r12, 0;\n"
|
||||
" st.global.s32 [%rd5+0], %r12;\n"
|
||||
" add.s32 %r10, %r10, 1;\n"
|
||||
" add.u64 %rd5, %rd5, 4;\n"
|
||||
" setp.ne.s32 %p4, %r7, %r10;\n"
|
||||
" @%p4 bra $Lt_2_8962;\n"
|
||||
"$Lt_2_8450:\n"
|
||||
"$Lt_2_7938:\n"
|
||||
" sub.s32 %r13, %r4, 1;\n"
|
||||
" setp.ne.s32 %p5, %r3, %r13;\n"
|
||||
" @%p5 bra $Lt_2_9474;\n"
|
||||
" .loc 14 126 0\n"
|
||||
" add.s32 %r7, %r5, 1;\n"
|
||||
" mov.s32 %r14, %r7;\n"
|
||||
" ld.param.s32 %r15, [__cudaparm_kernel_calc_cell_counts_ncell];\n"
|
||||
" setp.gt.s32 %p6, %r7, %r15;\n"
|
||||
" @%p6 bra $Lt_2_9986;\n"
|
||||
" sub.s32 %r16, %r15, %r5;\n"
|
||||
" add.s32 %r17, %r15, 1;\n"
|
||||
" ld.param.u64 %rd6, [__cudaparm_kernel_calc_cell_counts_cell_counts];\n"
|
||||
" cvt.u64.s32 %rd7, %r7;\n"
|
||||
" mul.lo.u64 %rd8, %rd7, 4;\n"
|
||||
" add.u64 %rd9, %rd6, %rd8;\n"
|
||||
" mov.s32 %r18, %r16;\n"
|
||||
"$Lt_2_10498:\n"
|
||||
" .loc 14 127 0\n"
|
||||
" st.global.s32 [%rd9+0], %r4;\n"
|
||||
" add.s32 %r14, %r14, 1;\n"
|
||||
" add.u64 %rd9, %rd9, 4;\n"
|
||||
" setp.ne.s32 %p7, %r17, %r14;\n"
|
||||
" @%p7 bra $Lt_2_10498;\n"
|
||||
"$Lt_2_9986:\n"
|
||||
"$Lt_2_9474:\n"
|
||||
" selp.s32 %r19, 1, 0, %p1;\n"
|
||||
" mov.s32 %r20, 0;\n"
|
||||
" set.gt.u32.s32 %r21, %r3, %r20;\n"
|
||||
" neg.s32 %r22, %r21;\n"
|
||||
" and.b32 %r23, %r19, %r22;\n"
|
||||
" mov.u32 %r24, 0;\n"
|
||||
" setp.eq.s32 %p8, %r23, %r24;\n"
|
||||
" @%p8 bra $Lt_2_11010;\n"
|
||||
" .loc 14 131 0\n"
|
||||
" ld.global.s32 %r25, [%rd4+-4];\n"
|
||||
" setp.eq.s32 %p9, %r5, %r25;\n"
|
||||
" @%p9 bra $Lt_2_11522;\n"
|
||||
" .loc 14 133 0\n"
|
||||
" add.s32 %r26, %r25, 1;\n"
|
||||
" mov.s32 %r27, %r26;\n"
|
||||
" setp.gt.s32 %p10, %r26, %r5;\n"
|
||||
" @%p10 bra $Lt_2_12034;\n"
|
||||
" sub.s32 %r28, %r5, %r25;\n"
|
||||
" add.s32 %r7, %r5, 1;\n"
|
||||
" ld.param.u64 %rd10, [__cudaparm_kernel_calc_cell_counts_cell_counts];\n"
|
||||
" cvt.u64.s32 %rd11, %r26;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd10, %rd12;\n"
|
||||
" mov.s32 %r29, %r28;\n"
|
||||
"$Lt_2_12546:\n"
|
||||
" .loc 14 134 0\n"
|
||||
" st.global.s32 [%rd13+0], %r3;\n"
|
||||
" add.s32 %r27, %r27, 1;\n"
|
||||
" add.u64 %rd13, %rd13, 4;\n"
|
||||
" setp.ne.s32 %p11, %r7, %r27;\n"
|
||||
" @%p11 bra $Lt_2_12546;\n"
|
||||
"$Lt_2_12034:\n"
|
||||
"$Lt_2_11522:\n"
|
||||
"$Lt_2_11010:\n"
|
||||
"$Lt_2_7426:\n"
|
||||
" .loc 14 138 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_calc_cell_counts:\n"
|
||||
" }\n"
|
||||
" .entry calc_neigh_list_cell (\n"
|
||||
" .param .u64 __cudaparm_calc_neigh_list_cell_pos,\n"
|
||||
" .param .u64 __cudaparm_calc_neigh_list_cell_cell_particle_id,\n"
|
||||
" .param .u64 __cudaparm_calc_neigh_list_cell_cell_counts,\n"
|
||||
" .param .u64 __cudaparm_calc_neigh_list_cell_nbor_list,\n"
|
||||
" .param .u64 __cudaparm_calc_neigh_list_cell_host_nbor_list,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_neigh_bin_size,\n"
|
||||
" .param .f32 __cudaparm_calc_neigh_list_cell_cell_size,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_ncellx,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_ncelly,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_ncellz,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_inum,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_nt,\n"
|
||||
" .param .s32 __cudaparm_calc_neigh_list_cell_nall)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<105>;\n"
|
||||
" .reg .u64 %rd<43>;\n"
|
||||
" .reg .f32 %f<43>;\n"
|
||||
" .reg .f64 %fd<4>;\n"
|
||||
" .reg .pred %p<24>;\n"
|
||||
" .shared .align 16 .b8 __cuda_pos_sh480[1024];\n"
|
||||
" .shared .align 4 .b8 __cuda_cell_list_sh1504[256];\n"
|
||||
" .loc 14 148 0\n"
|
||||
"$LBB1_calc_neigh_list_cell:\n"
|
||||
" .loc 14 160 0\n"
|
||||
" ld.param.u32 %r1, [__cudaparm_calc_neigh_list_cell_ncelly];\n"
|
||||
" cvt.u32.u16 %r2, %ctaid.y;\n"
|
||||
" rem.u32 %r3, %r2, %r1;\n"
|
||||
" div.u32 %r4, %r2, %r1;\n"
|
||||
" ld.param.s32 %r5, [__cudaparm_calc_neigh_list_cell_ncellx];\n"
|
||||
" mul.lo.s32 %r6, %r5, %r3;\n"
|
||||
" mul.lo.s32 %r7, %r5, %r4;\n"
|
||||
" mul.lo.s32 %r8, %r7, %r1;\n"
|
||||
" cvt.s32.u16 %r9, %ctaid.x;\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_calc_neigh_list_cell_cell_counts];\n"
|
||||
" add.s32 %r10, %r6, %r8;\n"
|
||||
" add.s32 %r11, %r9, %r10;\n"
|
||||
" cvt.u64.s32 %rd2, %r11;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" add.u64 %rd4, %rd1, %rd3;\n"
|
||||
" ld.global.s32 %r12, [%rd4+0];\n"
|
||||
" .loc 14 161 0\n"
|
||||
" ld.global.s32 %r13, [%rd4+4];\n"
|
||||
" .loc 14 169 0\n"
|
||||
" sub.s32 %r14, %r13, %r12;\n"
|
||||
" cvt.u32.u16 %r15, %ntid.x;\n"
|
||||
" cvt.rn.f32.u32 %f1, %r15;\n"
|
||||
" cvt.rn.f32.s32 %f2, %r14;\n"
|
||||
" div.approx.f32 %f3, %f2, %f1;\n"
|
||||
" cvt.rpi.f32.f32 %f4, %f3;\n"
|
||||
" mov.f32 %f5, 0f00000000; \n"
|
||||
" setp.gt.f32 %p1, %f4, %f5;\n"
|
||||
" @!%p1 bra $Lt_3_14594;\n"
|
||||
" sub.s32 %r16, %r3, 1;\n"
|
||||
" mov.s32 %r17, 0;\n"
|
||||
" max.s32 %r18, %r16, %r17;\n"
|
||||
" sub.s32 %r19, %r1, 1;\n"
|
||||
" add.s32 %r20, %r3, 1;\n"
|
||||
" min.s32 %r21, %r19, %r20;\n"
|
||||
" ld.param.s32 %r22, [__cudaparm_calc_neigh_list_cell_ncellz];\n"
|
||||
" sub.s32 %r23, %r22, 1;\n"
|
||||
" add.s32 %r24, %r4, 1;\n"
|
||||
" min.s32 %r25, %r23, %r24;\n"
|
||||
" sub.s32 %r26, %r9, 1;\n"
|
||||
" mov.s32 %r27, 0;\n"
|
||||
" max.s32 %r28, %r26, %r27;\n"
|
||||
" add.s32 %r29, %r9, 1;\n"
|
||||
" sub.s32 %r30, %r5, 1;\n"
|
||||
" min.s32 %r31, %r29, %r30;\n"
|
||||
" cvt.s32.u16 %r32, %tid.x;\n"
|
||||
" add.s32 %r33, %r12, %r32;\n"
|
||||
" mov.u32 %r34, 0;\n"
|
||||
" ld.param.s32 %r35, [__cudaparm_calc_neigh_list_cell_inum];\n"
|
||||
" cvt.u64.s32 %rd5, %r35;\n"
|
||||
" sub.s32 %r36, %r4, 1;\n"
|
||||
" mov.s32 %r37, %r33;\n"
|
||||
" mov.s32 %r38, 0;\n"
|
||||
" max.s32 %r39, %r36, %r38;\n"
|
||||
" setp.ge.s32 %p2, %r25, %r39;\n"
|
||||
" ld.param.s32 %r40, [__cudaparm_calc_neigh_list_cell_nt];\n"
|
||||
" ld.param.s32 %r41, [__cudaparm_calc_neigh_list_cell_nall];\n"
|
||||
" mov.s32 %r42, 0;\n"
|
||||
" mov.u64 %rd6, __cuda_pos_sh480;\n"
|
||||
" mov.u64 %rd7, __cuda_cell_list_sh1504;\n"
|
||||
"$Lt_3_15106:\n"
|
||||
" .loc 14 171 0\n"
|
||||
" mov.s32 %r43, %r41;\n"
|
||||
" setp.ge.s32 %p3, %r37, %r13;\n"
|
||||
" @%p3 bra $Lt_3_15362;\n"
|
||||
" .loc 14 177 0\n"
|
||||
" ld.param.u64 %rd8, [__cudaparm_calc_neigh_list_cell_cell_particle_id];\n"
|
||||
" add.u32 %r44, %r33, %r34;\n"
|
||||
" cvt.u64.s32 %rd9, %r44;\n"
|
||||
" mul.lo.u64 %rd10, %rd9, 4;\n"
|
||||
" add.u64 %rd11, %rd8, %rd10;\n"
|
||||
" ld.global.s32 %r43, [%rd11+0];\n"
|
||||
"$Lt_3_15362:\n"
|
||||
" setp.lt.s32 %p4, %r43, %r40;\n"
|
||||
" @!%p4 bra $Lt_3_15874;\n"
|
||||
" mov.s32 %r45, %r43;\n"
|
||||
" mov.s32 %r46, 0;\n"
|
||||
" mov.s32 %r47, 0;\n"
|
||||
" mov.s32 %r48, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f6,%f7,%f8,%f9},[neigh_tex,{%r45,%r46,%r47,%r48}];\n"
|
||||
" .loc 14 180 0\n"
|
||||
" mov.f32 %f10, %f6;\n"
|
||||
" mov.f32 %f11, %f7;\n"
|
||||
" mov.f32 %f12, %f8;\n"
|
||||
" mov.f32 %f13, %f10;\n"
|
||||
" mov.f32 %f14, %f11;\n"
|
||||
" mov.f32 %f15, %f12;\n"
|
||||
"$Lt_3_15874:\n"
|
||||
" cvt.u64.s32 %rd12, %r43;\n"
|
||||
" mul.lo.u64 %rd13, %rd12, 4;\n"
|
||||
" setp.ge.s32 %p5, %r43, %r35;\n"
|
||||
" @%p5 bra $Lt_3_16642;\n"
|
||||
" .loc 14 183 0\n"
|
||||
" mov.s32 %r49, %r35;\n"
|
||||
" .loc 14 184 0\n"
|
||||
" ld.param.u64 %rd14, [__cudaparm_calc_neigh_list_cell_nbor_list];\n"
|
||||
" add.u64 %rd15, %rd12, %rd5;\n"
|
||||
" mul.lo.u64 %rd16, %rd15, 4;\n"
|
||||
" add.u64 %rd17, %rd14, %rd16;\n"
|
||||
" .loc 14 186 0\n"
|
||||
" add.u64 %rd18, %rd13, %rd14;\n"
|
||||
" st.global.s32 [%rd18+0], %r43;\n"
|
||||
" bra.uni $Lt_3_16386;\n"
|
||||
"$Lt_3_16642:\n"
|
||||
" .loc 14 188 0\n"
|
||||
" sub.s32 %r49, %r40, %r35;\n"
|
||||
" .loc 14 189 0\n"
|
||||
" ld.param.u64 %rd19, [__cudaparm_calc_neigh_list_cell_host_nbor_list];\n"
|
||||
" add.u64 %rd20, %rd19, %rd13;\n"
|
||||
" mul.lo.u64 %rd21, %rd5, 4;\n"
|
||||
" sub.u64 %rd17, %rd20, %rd21;\n"
|
||||
"$Lt_3_16386:\n"
|
||||
" cvt.u64.s32 %rd22, %r49;\n"
|
||||
" mul.lo.u64 %rd23, %rd22, 4;\n"
|
||||
" add.u64 %rd24, %rd17, %rd23;\n"
|
||||
" .loc 14 195 0\n"
|
||||
" mov.s32 %r50, %r39;\n"
|
||||
" mov.s32 %r51, 0;\n"
|
||||
" @!%p2 bra $Lt_3_25090;\n"
|
||||
" sub.s32 %r52, %r25, %r39;\n"
|
||||
" add.s32 %r53, %r52, 1;\n"
|
||||
" setp.le.s32 %p6, %r18, %r21;\n"
|
||||
" add.s32 %r54, %r25, 1;\n"
|
||||
" mov.s32 %r55, %r53;\n"
|
||||
"$Lt_3_17410:\n"
|
||||
" .loc 14 196 0\n"
|
||||
" mov.s32 %r56, %r18;\n"
|
||||
" @!%p6 bra $Lt_3_17666;\n"
|
||||
" sub.s32 %r57, %r21, %r18;\n"
|
||||
" add.s32 %r58, %r57, 1;\n"
|
||||
" setp.ge.s32 %p7, %r31, %r28;\n"
|
||||
" add.s32 %r59, %r21, 1;\n"
|
||||
" mov.s32 %r60, %r58;\n"
|
||||
"$Lt_3_18178:\n"
|
||||
" @!%p7 bra $Lt_3_18434;\n"
|
||||
" sub.s32 %r61, %r31, %r28;\n"
|
||||
" add.s32 %r62, %r61, 1;\n"
|
||||
" mul.lo.s32 %r63, %r56, %r5;\n"
|
||||
" mul.lo.s32 %r64, %r50, %r5;\n"
|
||||
" mul.lo.s32 %r65, %r64, %r1;\n"
|
||||
" add.s32 %r66, %r31, 1;\n"
|
||||
" add.s32 %r67, %r63, %r65;\n"
|
||||
" add.s32 %r68, %r67, %r28;\n"
|
||||
" add.s32 %r69, %r66, %r67;\n"
|
||||
" cvt.u64.s32 %rd25, %r68;\n"
|
||||
" mul.lo.u64 %rd26, %rd25, 4;\n"
|
||||
" add.u64 %rd27, %rd1, %rd26;\n"
|
||||
" mov.s32 %r70, %r62;\n"
|
||||
"$Lt_3_18946:\n"
|
||||
" .loc 14 201 0\n"
|
||||
" ld.global.s32 %r71, [%rd27+0];\n"
|
||||
" .loc 14 202 0\n"
|
||||
" ld.global.s32 %r72, [%rd27+4];\n"
|
||||
" .loc 14 206 0\n"
|
||||
" sub.s32 %r73, %r72, %r71;\n"
|
||||
" cvt.rn.f32.s32 %f16, %r73;\n"
|
||||
" mov.f32 %f17, 0f42800000; \n"
|
||||
" div.approx.f32 %f18, %f16, %f17;\n"
|
||||
" cvt.rpi.f32.f32 %f19, %f18;\n"
|
||||
" cvt.rzi.s32.f32 %r74, %f19;\n"
|
||||
" mov.u32 %r75, 0;\n"
|
||||
" setp.le.s32 %p8, %r74, %r75;\n"
|
||||
" @%p8 bra $Lt_3_19202;\n"
|
||||
" mov.s32 %r76, %r74;\n"
|
||||
" mov.s32 %r77, 0;\n"
|
||||
" setp.lt.s32 %p9, %r43, %r40;\n"
|
||||
" mul.lo.s32 %r78, %r74, 64;\n"
|
||||
" mov.s32 %r79, %r76;\n"
|
||||
"$Lt_3_19714:\n"
|
||||
" .loc 14 209 0\n"
|
||||
" sub.s32 %r80, %r73, %r77;\n"
|
||||
" mov.s32 %r81, 64;\n"
|
||||
" min.s32 %r82, %r80, %r81;\n"
|
||||
" setp.le.s32 %p10, %r82, %r32;\n"
|
||||
" @%p10 bra $Lt_3_19970;\n"
|
||||
" .loc 14 212 0\n"
|
||||
" ld.param.u64 %rd28, [__cudaparm_calc_neigh_list_cell_cell_particle_id];\n"
|
||||
" add.s32 %r83, %r77, %r32;\n"
|
||||
" add.s32 %r84, %r71, %r83;\n"
|
||||
" cvt.s64.s32 %rd29, %r84;\n"
|
||||
" mul.lo.u64 %rd30, %rd29, 4;\n"
|
||||
" add.u64 %rd31, %rd28, %rd30;\n"
|
||||
" ld.global.s32 %r85, [%rd31+0];\n"
|
||||
" .loc 14 213 0\n"
|
||||
" cvt.u64.s32 %rd32, %r32;\n"
|
||||
" mul.lo.u64 %rd33, %rd32, 4;\n"
|
||||
" add.u64 %rd34, %rd7, %rd33;\n"
|
||||
" st.shared.s32 [%rd34+0], %r85;\n"
|
||||
" mov.s32 %r86, %r85;\n"
|
||||
" mov.s32 %r87, 0;\n"
|
||||
" mov.s32 %r88, 0;\n"
|
||||
" mov.s32 %r89, 0;\n"
|
||||
" tex.1d.v4.f32.s32 {%f20,%f21,%f22,%f23},[neigh_tex,{%r86,%r87,%r88,%r89}];\n"
|
||||
" .loc 14 214 0\n"
|
||||
" mov.f32 %f24, %f20;\n"
|
||||
" mov.f32 %f25, %f21;\n"
|
||||
" mov.f32 %f26, %f22;\n"
|
||||
" .loc 14 215 0\n"
|
||||
" mul.lo.u64 %rd35, %rd32, 16;\n"
|
||||
" add.u64 %rd36, %rd6, %rd35;\n"
|
||||
" st.shared.f32 [%rd36+0], %f24;\n"
|
||||
" .loc 14 216 0\n"
|
||||
" st.shared.f32 [%rd36+4], %f25;\n"
|
||||
" .loc 14 217 0\n"
|
||||
" st.shared.f32 [%rd36+8], %f26;\n"
|
||||
"$Lt_3_19970:\n"
|
||||
" .loc 14 219 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" @!%p9 bra $Lt_3_20994;\n"
|
||||
" mov.u32 %r90, 0;\n"
|
||||
" setp.le.s32 %p11, %r82, %r90;\n"
|
||||
" @%p11 bra $Lt_3_20994;\n"
|
||||
" mov.s32 %r91, %r82;\n"
|
||||
" mov.u64 %rd37, 0;\n"
|
||||
" setp.lt.s32 %p12, %r43, %r35;\n"
|
||||
" selp.s32 %r92, 1, 0, %p12;\n"
|
||||
" mov.s64 %rd38, %rd7;\n"
|
||||
" mov.s32 %r93, 0;\n"
|
||||
" mov.s32 %r94, %r91;\n"
|
||||
"$Lt_3_21506:\n"
|
||||
" .loc 14 224 0\n"
|
||||
" ld.shared.s32 %r95, [%rd38+0];\n"
|
||||
" set.lt.u32.s32 %r96, %r43, %r95;\n"
|
||||
" neg.s32 %r97, %r96;\n"
|
||||
" set.lt.u32.s32 %r98, %r95, %r35;\n"
|
||||
" neg.s32 %r99, %r98;\n"
|
||||
" or.b32 %r100, %r92, %r99;\n"
|
||||
" or.b32 %r101, %r97, %r100;\n"
|
||||
" mov.u32 %r102, 0;\n"
|
||||
" setp.eq.s32 %p13, %r101, %r102;\n"
|
||||
" @%p13 bra $Lt_3_26370;\n"
|
||||
" .loc 14 226 0\n"
|
||||
" mul.lo.u64 %rd39, %rd37, 16;\n"
|
||||
" add.u64 %rd40, %rd6, %rd39;\n"
|
||||
" mov.f32 %f27, %f13;\n"
|
||||
" ld.shared.f32 %f28, [%rd40+0];\n"
|
||||
" sub.f32 %f29, %f27, %f28;\n"
|
||||
" .loc 14 227 0\n"
|
||||
" mov.f32 %f30, %f14;\n"
|
||||
" ld.shared.f32 %f31, [%rd40+4];\n"
|
||||
" sub.f32 %f32, %f30, %f31;\n"
|
||||
" .loc 14 228 0\n"
|
||||
" mov.f32 %f33, %f15;\n"
|
||||
" ld.shared.f32 %f34, [%rd40+8];\n"
|
||||
" sub.f32 %f35, %f33, %f34;\n"
|
||||
" .loc 14 226 0\n"
|
||||
" mul.f32 %f36, %f32, %f32;\n"
|
||||
" mad.f32 %f37, %f29, %f29, %f36;\n"
|
||||
" mad.f32 %f38, %f35, %f35, %f37;\n"
|
||||
" ld.param.f32 %f39, [__cudaparm_calc_neigh_list_cell_cell_size];\n"
|
||||
" mul.f32 %f40, %f39, %f39;\n"
|
||||
" setp.lt.f32 %p14, %f38, %f40;\n"
|
||||
" @!%p14 bra $Lt_3_26370;\n"
|
||||
" cvt.f64.f32 %fd1, %f38;\n"
|
||||
" mov.f64 %fd2, 0d3ee4f8b588e368f1; \n"
|
||||
" setp.gt.f64 %p15, %fd1, %fd2;\n"
|
||||
" @!%p15 bra $Lt_3_26370;\n"
|
||||
" ld.param.s32 %r103, [__cudaparm_calc_neigh_list_cell_neigh_bin_size];\n"
|
||||
" setp.le.s32 %p16, %r103, %r51;\n"
|
||||
" @%p16 bra $Lt_3_22274;\n"
|
||||
" .loc 14 233 0\n"
|
||||
" st.global.s32 [%rd24+0], %r95;\n"
|
||||
" .loc 14 234 0\n"
|
||||
" mul.lo.u64 %rd41, %rd22, 4;\n"
|
||||
" add.u64 %rd24, %rd24, %rd41;\n"
|
||||
"$Lt_3_22274:\n"
|
||||
" .loc 14 236 0\n"
|
||||
" add.s32 %r51, %r51, 1;\n"
|
||||
"$Lt_3_26370:\n"
|
||||
"$L_3_14082:\n"
|
||||
"$Lt_3_21762:\n"
|
||||
" add.s32 %r93, %r93, 1;\n"
|
||||
" add.u64 %rd37, %rd37, 1;\n"
|
||||
" add.u64 %rd38, %rd38, 4;\n"
|
||||
" setp.ne.s32 %p17, %r82, %r93;\n"
|
||||
" @%p17 bra $Lt_3_21506;\n"
|
||||
"$Lt_3_20994:\n"
|
||||
"$Lt_3_20482:\n"
|
||||
" .loc 14 241 0\n"
|
||||
" bar.sync 0;\n"
|
||||
" add.s32 %r77, %r77, 64;\n"
|
||||
" setp.ne.s32 %p18, %r77, %r78;\n"
|
||||
" @%p18 bra $Lt_3_19714;\n"
|
||||
"$Lt_3_19202:\n"
|
||||
" add.s32 %r68, %r68, 1;\n"
|
||||
" add.u64 %rd27, %rd27, 4;\n"
|
||||
" setp.ne.s32 %p19, %r68, %r69;\n"
|
||||
" @%p19 bra $Lt_3_18946;\n"
|
||||
"$Lt_3_18434:\n"
|
||||
" add.s32 %r56, %r56, 1;\n"
|
||||
" setp.ne.s32 %p20, %r59, %r56;\n"
|
||||
" @%p20 bra $Lt_3_18178;\n"
|
||||
"$Lt_3_17666:\n"
|
||||
" add.s32 %r50, %r50, 1;\n"
|
||||
" setp.ne.s32 %p21, %r54, %r50;\n"
|
||||
" @%p21 bra $Lt_3_17410;\n"
|
||||
" bra.uni $Lt_3_16898;\n"
|
||||
"$Lt_3_25090:\n"
|
||||
"$Lt_3_16898:\n"
|
||||
" @!%p4 bra $Lt_3_24066;\n"
|
||||
" .loc 14 247 0\n"
|
||||
" st.global.s32 [%rd17+0], %r51;\n"
|
||||
"$Lt_3_24066:\n"
|
||||
" .loc 14 169 0\n"
|
||||
" add.s32 %r42, %r42, 1;\n"
|
||||
" add.u32 %r34, %r34, %r15;\n"
|
||||
" add.s32 %r37, %r37, %r15;\n"
|
||||
" cvt.rn.f32.s32 %f41, %r42;\n"
|
||||
" setp.lt.f32 %p22, %f41, %f4;\n"
|
||||
" @%p22 bra $Lt_3_15106;\n"
|
||||
"$Lt_3_14594:\n"
|
||||
" .loc 14 249 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_calc_neigh_list_cell:\n"
|
||||
" }\n"
|
||||
" .entry kernel_special (\n"
|
||||
" .param .u64 __cudaparm_kernel_special_dev_nbor,\n"
|
||||
" .param .u64 __cudaparm_kernel_special_host_nbor_list,\n"
|
||||
" .param .u64 __cudaparm_kernel_special_tag,\n"
|
||||
" .param .u64 __cudaparm_kernel_special_nspecial,\n"
|
||||
" .param .u64 __cudaparm_kernel_special_special,\n"
|
||||
" .param .s32 __cudaparm_kernel_special_inum,\n"
|
||||
" .param .s32 __cudaparm_kernel_special_nt,\n"
|
||||
" .param .s32 __cudaparm_kernel_special_nall)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<31>;\n"
|
||||
" .reg .u64 %rd<31>;\n"
|
||||
" .reg .pred %p<11>;\n"
|
||||
" .loc 14 254 0\n"
|
||||
"$LBB1_kernel_special:\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_special_nt];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_4_6146;\n"
|
||||
" .loc 14 262 0\n"
|
||||
" ld.param.u64 %rd1, [__cudaparm_kernel_special_nspecial];\n"
|
||||
" mul.lo.s32 %r7, %r5, 3;\n"
|
||||
" cvt.s64.s32 %rd2, %r7;\n"
|
||||
" mul.lo.u64 %rd3, %rd2, 4;\n"
|
||||
" add.u64 %rd4, %rd1, %rd3;\n"
|
||||
" ld.global.s32 %r8, [%rd4+0];\n"
|
||||
" .loc 14 263 0\n"
|
||||
" ld.global.s32 %r9, [%rd4+4];\n"
|
||||
" .loc 14 264 0\n"
|
||||
" ld.global.s32 %r10, [%rd4+8];\n"
|
||||
" ld.param.s32 %r11, [__cudaparm_kernel_special_inum];\n"
|
||||
" cvt.u64.s32 %rd5, %r11;\n"
|
||||
" cvt.u64.s32 %rd6, %r5;\n"
|
||||
" setp.le.s32 %p2, %r11, %r5;\n"
|
||||
" @%p2 bra $Lt_4_6914;\n"
|
||||
" .loc 14 267 0\n"
|
||||
" mov.s32 %r12, %r11;\n"
|
||||
" .loc 14 268 0\n"
|
||||
" ld.param.u64 %rd7, [__cudaparm_kernel_special_dev_nbor];\n"
|
||||
" add.u64 %rd8, %rd5, %rd6;\n"
|
||||
" mul.lo.u64 %rd9, %rd8, 4;\n"
|
||||
" add.u64 %rd10, %rd7, %rd9;\n"
|
||||
" bra.uni $Lt_4_6658;\n"
|
||||
"$Lt_4_6914:\n"
|
||||
" .loc 14 270 0\n"
|
||||
" sub.s32 %r12, %r6, %r11;\n"
|
||||
" .loc 14 271 0\n"
|
||||
" ld.param.u64 %rd11, [__cudaparm_kernel_special_host_nbor_list];\n"
|
||||
" mul.lo.u64 %rd12, %rd6, 4;\n"
|
||||
" add.u64 %rd13, %rd11, %rd12;\n"
|
||||
" mul.lo.u64 %rd14, %rd5, 4;\n"
|
||||
" sub.u64 %rd10, %rd13, %rd14;\n"
|
||||
"$Lt_4_6658:\n"
|
||||
" .loc 14 273 0\n"
|
||||
" ld.global.s32 %r13, [%rd10+0];\n"
|
||||
" .loc 14 274 0\n"
|
||||
" cvt.u64.s32 %rd15, %r12;\n"
|
||||
" mul.lo.u64 %rd16, %rd15, 4;\n"
|
||||
" add.u64 %rd10, %rd10, %rd16;\n"
|
||||
" .loc 14 275 0\n"
|
||||
" mul.lo.s32 %r14, %r12, %r13;\n"
|
||||
" cvt.s64.s32 %rd17, %r14;\n"
|
||||
" mul.lo.u64 %rd18, %rd17, 4;\n"
|
||||
" add.u64 %rd19, %rd10, %rd18;\n"
|
||||
" setp.le.u64 %p3, %rd19, %rd10;\n"
|
||||
" @%p3 bra $Lt_4_7170;\n"
|
||||
" mov.s32 %r15, 0;\n"
|
||||
" setp.gt.s32 %p4, %r10, %r15;\n"
|
||||
" ld.param.u64 %rd20, [__cudaparm_kernel_special_tag];\n"
|
||||
"$Lt_4_7682:\n"
|
||||
" .loc 14 278 0\n"
|
||||
" ld.global.s32 %r16, [%rd10+0];\n"
|
||||
" .loc 14 279 0\n"
|
||||
" cvt.u64.s32 %rd21, %r16;\n"
|
||||
" mul.lo.u64 %rd22, %rd21, 4;\n"
|
||||
" add.u64 %rd23, %rd20, %rd22;\n"
|
||||
" ld.global.s32 %r17, [%rd23+0];\n"
|
||||
" @!%p4 bra $Lt_4_7938;\n"
|
||||
" mov.s32 %r18, %r10;\n"
|
||||
" mul.lo.u64 %rd24, %rd6, 4;\n"
|
||||
" cvt.s64.s32 %rd25, %r6;\n"
|
||||
" mul.lo.u64 %rd26, %rd25, 4;\n"
|
||||
" ld.param.u64 %rd27, [__cudaparm_kernel_special_special];\n"
|
||||
" add.u64 %rd28, %rd27, %rd24;\n"
|
||||
" mov.s32 %r19, 0;\n"
|
||||
" mov.s32 %r20, %r18;\n"
|
||||
"$Lt_4_8450:\n"
|
||||
" ld.global.s32 %r21, [%rd28+0];\n"
|
||||
" setp.ne.s32 %p5, %r21, %r17;\n"
|
||||
" @%p5 bra $Lt_4_8706;\n"
|
||||
" .loc 14 289 0\n"
|
||||
" setp.le.s32 %p6, %r8, %r19;\n"
|
||||
" mov.s32 %r22, 3;\n"
|
||||
" mov.s32 %r23, 2;\n"
|
||||
" selp.s32 %r24, %r22, %r23, %p6;\n"
|
||||
" mov.s32 %r25, 2;\n"
|
||||
" mov.s32 %r26, 1;\n"
|
||||
" selp.s32 %r27, %r25, %r26, %p6;\n"
|
||||
" setp.le.s32 %p7, %r9, %r19;\n"
|
||||
" selp.s32 %r28, %r24, %r27, %p7;\n"
|
||||
" shl.b32 %r29, %r28, 30;\n"
|
||||
" xor.b32 %r16, %r16, %r29;\n"
|
||||
" .loc 14 290 0\n"
|
||||
" st.global.s32 [%rd10+0], %r16;\n"
|
||||
"$Lt_4_8706:\n"
|
||||
" add.s32 %r19, %r19, 1;\n"
|
||||
" add.u64 %rd28, %rd26, %rd28;\n"
|
||||
" setp.ne.s32 %p8, %r10, %r19;\n"
|
||||
" @%p8 bra $Lt_4_8450;\n"
|
||||
"$Lt_4_7938:\n"
|
||||
" .loc 14 277 0\n"
|
||||
" mul.lo.u64 %rd29, %rd15, 4;\n"
|
||||
" add.u64 %rd10, %rd10, %rd29;\n"
|
||||
" setp.gt.u64 %p9, %rd19, %rd10;\n"
|
||||
" @%p9 bra $Lt_4_7682;\n"
|
||||
"$Lt_4_7170:\n"
|
||||
"$Lt_4_6146:\n"
|
||||
" .loc 14 296 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_special:\n"
|
||||
" }\n"
|
||||
;
|
|
@ -1,71 +0,0 @@
|
|||
const char * pair_gpu_nbor_kernel =
|
||||
" .version 1.4\n"
|
||||
" .target sm_13\n"
|
||||
" .entry kernel_unpack (\n"
|
||||
" .param .u64 __cudaparm_kernel_unpack_dev_nbor,\n"
|
||||
" .param .u64 __cudaparm_kernel_unpack_dev_ij,\n"
|
||||
" .param .s32 __cudaparm_kernel_unpack_inum)\n"
|
||||
" {\n"
|
||||
" .reg .u32 %r<11>;\n"
|
||||
" .reg .u64 %rd<27>;\n"
|
||||
" .reg .pred %p<5>;\n"
|
||||
" .loc 14 29 0\n"
|
||||
"$LBB1_kernel_unpack:\n"
|
||||
" cvt.s32.u16 %r1, %ctaid.x;\n"
|
||||
" cvt.s32.u16 %r2, %ntid.x;\n"
|
||||
" mul24.lo.s32 %r3, %r1, %r2;\n"
|
||||
" cvt.u32.u16 %r4, %tid.x;\n"
|
||||
" add.u32 %r5, %r3, %r4;\n"
|
||||
" ld.param.s32 %r6, [__cudaparm_kernel_unpack_inum];\n"
|
||||
" setp.le.s32 %p1, %r6, %r5;\n"
|
||||
" @%p1 bra $Lt_0_2050;\n"
|
||||
" .loc 14 35 0\n"
|
||||
" cvt.u64.s32 %rd1, %r6;\n"
|
||||
" ld.param.u64 %rd2, [__cudaparm_kernel_unpack_dev_nbor];\n"
|
||||
" cvt.u64.s32 %rd3, %r5;\n"
|
||||
" add.u64 %rd4, %rd3, %rd1;\n"
|
||||
" mul.lo.u64 %rd5, %rd4, 4;\n"
|
||||
" add.u64 %rd6, %rd2, %rd5;\n"
|
||||
" ld.global.s32 %r7, [%rd6+0];\n"
|
||||
" .loc 14 36 0\n"
|
||||
" mul.lo.u64 %rd7, %rd1, 4;\n"
|
||||
" add.u64 %rd8, %rd6, %rd7;\n"
|
||||
" mov.s64 %rd9, %rd8;\n"
|
||||
" .loc 14 37 0\n"
|
||||
" ld.param.u64 %rd10, [__cudaparm_kernel_unpack_dev_ij];\n"
|
||||
" ld.global.s32 %r8, [%rd8+0];\n"
|
||||
" cvt.u64.s32 %rd11, %r8;\n"
|
||||
" mul.lo.u64 %rd12, %rd11, 4;\n"
|
||||
" add.u64 %rd13, %rd10, %rd12;\n"
|
||||
" .loc 14 38 0\n"
|
||||
" cvt.u64.s32 %rd14, %r7;\n"
|
||||
" mul.lo.u64 %rd15, %rd14, 4;\n"
|
||||
" add.u64 %rd16, %rd15, %rd13;\n"
|
||||
" setp.le.u64 %p2, %rd16, %rd13;\n"
|
||||
" @%p2 bra $Lt_0_2562;\n"
|
||||
" add.u64 %rd17, %rd15, 3;\n"
|
||||
" shr.s64 %rd18, %rd17, 63;\n"
|
||||
" mov.s64 %rd19, 3;\n"
|
||||
" and.b64 %rd20, %rd18, %rd19;\n"
|
||||
" add.s64 %rd21, %rd20, %rd17;\n"
|
||||
" shr.s64 %rd22, %rd21, 2;\n"
|
||||
" mov.s64 %rd23, 1;\n"
|
||||
" max.s64 %rd24, %rd22, %rd23;\n"
|
||||
" mov.s64 %rd25, %rd24;\n"
|
||||
"$Lt_0_3074:\n"
|
||||
" .loc 14 41 0\n"
|
||||
" ld.global.s32 %r9, [%rd13+0];\n"
|
||||
" st.global.s32 [%rd9+0], %r9;\n"
|
||||
" .loc 14 42 0\n"
|
||||
" add.u64 %rd9, %rd7, %rd9;\n"
|
||||
" .loc 14 40 0\n"
|
||||
" add.u64 %rd13, %rd13, 4;\n"
|
||||
" setp.gt.u64 %p3, %rd16, %rd13;\n"
|
||||
" @%p3 bra $Lt_0_3074;\n"
|
||||
"$Lt_0_2562:\n"
|
||||
"$Lt_0_2050:\n"
|
||||
" .loc 14 45 0\n"
|
||||
" exit;\n"
|
||||
"$LDWend_kernel_unpack:\n"
|
||||
" }\n"
|
||||
;
|
Loading…
Reference in New Issue