838 lines
27 KiB
C
838 lines
27 KiB
C
const char * pppm_d =
|
|
" .version 2.3\n"
|
|
" .target sm_20\n"
|
|
" .address_size 64\n"
|
|
" .global .texref pos_tex;\n"
|
|
" .global .texref q_tex;\n"
|
|
" .entry particle_map (\n"
|
|
" .param .u64 __cudaparm_particle_map_x_,\n"
|
|
" .param .u64 __cudaparm_particle_map_q_,\n"
|
|
" .param .f64 __cudaparm_particle_map_delvolinv,\n"
|
|
" .param .s32 __cudaparm_particle_map_nlocal,\n"
|
|
" .param .u64 __cudaparm_particle_map_counts,\n"
|
|
" .param .u64 __cudaparm_particle_map_ans,\n"
|
|
" .param .f64 __cudaparm_particle_map_b_lo_x,\n"
|
|
" .param .f64 __cudaparm_particle_map_b_lo_y,\n"
|
|
" .param .f64 __cudaparm_particle_map_b_lo_z,\n"
|
|
" .param .f64 __cudaparm_particle_map_delxinv,\n"
|
|
" .param .f64 __cudaparm_particle_map_delyinv,\n"
|
|
" .param .f64 __cudaparm_particle_map_delzinv,\n"
|
|
" .param .s32 __cudaparm_particle_map_nlocal_x,\n"
|
|
" .param .s32 __cudaparm_particle_map_nlocal_y,\n"
|
|
" .param .s32 __cudaparm_particle_map_nlocal_z,\n"
|
|
" .param .s32 __cudaparm_particle_map_atom_stride,\n"
|
|
" .param .s32 __cudaparm_particle_map_max_atoms,\n"
|
|
" .param .u64 __cudaparm_particle_map_error)\n"
|
|
" {\n"
|
|
" .reg .u32 %r<50>;\n"
|
|
" .reg .u64 %rd<12>;\n"
|
|
" .reg .f32 %f<14>;\n"
|
|
" .reg .f64 %fd<36>;\n"
|
|
" .reg .pred %p<11>;\n"
|
|
" .loc 17 50 0\n"
|
|
"$LDWbegin_particle_map:\n"
|
|
" cvt.s32.u32 %r1, %ntid.x;\n"
|
|
" cvt.s32.u32 %r2, %ctaid.x;\n"
|
|
" mul24.lo.s32 %r3, %r2, %r1;\n"
|
|
" cvt.s32.u32 %r4, %nctaid.x;\n"
|
|
" mul24.lo.s32 %r5, %r4, %r1;\n"
|
|
" mov.u32 %r6, %tid.x;\n"
|
|
" add.u32 %r7, %r3, %r6;\n"
|
|
" sub.s32 %r8, %r5, 1;\n"
|
|
" mul.lo.s32 %r9, %r7, 64;\n"
|
|
" div.s32 %r10, %r9, %r5;\n"
|
|
" mul.lo.s32 %r11, %r8, %r10;\n"
|
|
" sub.s32 %r12, %r9, %r11;\n"
|
|
" ld.param.s32 %r13, [__cudaparm_particle_map_nlocal];\n"
|
|
" setp.le.s32 %p1, %r13, %r12;\n"
|
|
" @%p1 bra $Lt_0_7426;\n"
|
|
" .loc 17 62 0\n"
|
|
" mov.u32 %r14, %r12;\n"
|
|
" mov.s32 %r15, 0;\n"
|
|
" mov.u32 %r16, %r15;\n"
|
|
" mov.s32 %r17, 0;\n"
|
|
" mov.u32 %r18, %r17;\n"
|
|
" mov.s32 %r19, 0;\n"
|
|
" mov.u32 %r20, %r19;\n"
|
|
" tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[pos_tex,{%r14,%r16,%r18,%r20}];\n"
|
|
" mov.f32 %f5, %f1;\n"
|
|
" mov.f32 %f6, %f2;\n"
|
|
" mov.f32 %f7, %f3;\n"
|
|
" .loc 17 64 0\n"
|
|
" mov.u32 %r21, %r12;\n"
|
|
" mov.s32 %r22, 0;\n"
|
|
" mov.u32 %r23, %r22;\n"
|
|
" mov.s32 %r24, 0;\n"
|
|
" mov.u32 %r25, %r24;\n"
|
|
" mov.s32 %r26, 0;\n"
|
|
" mov.u32 %r27, %r26;\n"
|
|
" tex.1d.v4.f32.s32 {%f8,%f9,%f10,%f11},[q_tex,{%r21,%r23,%r25,%r27}];\n"
|
|
" mov.f32 %f12, %f8;\n"
|
|
" cvt.ftz.f64.f32 %fd1, %f12;\n"
|
|
" ld.param.f64 %fd2, [__cudaparm_particle_map_delvolinv];\n"
|
|
" mul.f64 %fd3, %fd1, %fd2;\n"
|
|
" mov.f64 %fd4, 0d0000000000000000; \n"
|
|
" setp.neu.f64 %p2, %fd3, %fd4;\n"
|
|
" @!%p2 bra $Lt_0_7426;\n"
|
|
" .loc 17 67 0\n"
|
|
" ld.param.f64 %fd5, [__cudaparm_particle_map_delxinv];\n"
|
|
" cvt.ftz.f64.f32 %fd6, %f5;\n"
|
|
" ld.param.f64 %fd7, [__cudaparm_particle_map_b_lo_x];\n"
|
|
" sub.f64 %fd8, %fd6, %fd7;\n"
|
|
" mul.f64 %fd9, %fd5, %fd8;\n"
|
|
" mov.f64 %fd10, 0d0000000000000000; \n"
|
|
" setp.lt.f64 %p3, %fd9, %fd10;\n"
|
|
" @%p3 bra $Lt_0_8706;\n"
|
|
" ld.param.f64 %fd11, [__cudaparm_particle_map_delyinv];\n"
|
|
" cvt.ftz.f64.f32 %fd12, %f6;\n"
|
|
" ld.param.f64 %fd13, [__cudaparm_particle_map_b_lo_y];\n"
|
|
" sub.f64 %fd14, %fd12, %fd13;\n"
|
|
" mul.f64 %fd15, %fd11, %fd14;\n"
|
|
" mov.f64 %fd16, 0d0000000000000000; \n"
|
|
" setp.lt.f64 %p4, %fd15, %fd16;\n"
|
|
" @%p4 bra $Lt_0_8706;\n"
|
|
" ld.param.f64 %fd17, [__cudaparm_particle_map_delzinv];\n"
|
|
" cvt.ftz.f64.f32 %fd18, %f7;\n"
|
|
" ld.param.f64 %fd19, [__cudaparm_particle_map_b_lo_z];\n"
|
|
" sub.f64 %fd20, %fd18, %fd19;\n"
|
|
" mul.f64 %fd21, %fd17, %fd20;\n"
|
|
" mov.f64 %fd22, 0d0000000000000000; \n"
|
|
" setp.lt.f64 %p5, %fd21, %fd22;\n"
|
|
" @%p5 bra $Lt_0_8706;\n"
|
|
" cvt.rzi.s32.f64 %r28, %fd9;\n"
|
|
" ld.param.s32 %r29, [__cudaparm_particle_map_nlocal_x];\n"
|
|
" setp.ge.s32 %p6, %r28, %r29;\n"
|
|
" @%p6 bra $Lt_0_8706;\n"
|
|
" cvt.rzi.s32.f64 %r30, %fd15;\n"
|
|
" ld.param.s32 %r31, [__cudaparm_particle_map_nlocal_y];\n"
|
|
" setp.ge.s32 %p7, %r30, %r31;\n"
|
|
" @%p7 bra $Lt_0_8706;\n"
|
|
" cvt.rzi.s32.f64 %r32, %fd21;\n"
|
|
" ld.param.s32 %r33, [__cudaparm_particle_map_nlocal_z];\n"
|
|
" setp.gt.s32 %p8, %r33, %r32;\n"
|
|
" @%p8 bra $L_0_4866;\n"
|
|
"$Lt_0_8706:\n"
|
|
"$L_0_5122:\n"
|
|
" .loc 17 76 0\n"
|
|
" mov.s32 %r34, 1;\n"
|
|
" ld.param.u64 %rd1, [__cudaparm_particle_map_error];\n"
|
|
" st.global.s32 [%rd1+0], %r34;\n"
|
|
" bra.uni $Lt_0_7426;\n"
|
|
"$L_0_4866:\n"
|
|
" .loc 17 83 0\n"
|
|
" mul.lo.s32 %r35, %r32, %r31;\n"
|
|
" add.s32 %r36, %r30, %r35;\n"
|
|
" mul.lo.s32 %r37, %r36, %r29;\n"
|
|
" add.s32 %r38, %r28, %r37;\n"
|
|
" ld.param.u64 %rd2, [__cudaparm_particle_map_counts];\n"
|
|
" cvt.s64.s32 %rd3, %r38;\n"
|
|
" mul.wide.s32 %rd4, %r38, 4;\n"
|
|
" add.u64 %rd5, %rd2, %rd4;\n"
|
|
" mov.s32 %r39, 1;\n"
|
|
" atom.global.add.s32 %r40, [%rd5], %r39;\n"
|
|
" mov.s32 %r41, %r40;\n"
|
|
" ld.param.s32 %r42, [__cudaparm_particle_map_max_atoms];\n"
|
|
" setp.gt.s32 %p9, %r42, %r41;\n"
|
|
" @%p9 bra $Lt_0_7682;\n"
|
|
" .loc 17 85 0\n"
|
|
" mov.s32 %r43, 2;\n"
|
|
" ld.param.u64 %rd6, [__cudaparm_particle_map_error];\n"
|
|
" st.global.s32 [%rd6+0], %r43;\n"
|
|
" .loc 16 118 0\n"
|
|
" mov.s32 %r44, -1;\n"
|
|
" atom.global.add.s32 %r45, [%rd5], %r44;\n"
|
|
" bra.uni $Lt_0_7426;\n"
|
|
"$Lt_0_7682:\n"
|
|
" .loc 17 88 0\n"
|
|
" ld.param.u64 %rd7, [__cudaparm_particle_map_ans];\n"
|
|
" ld.param.s32 %r46, [__cudaparm_particle_map_atom_stride];\n"
|
|
" mul.lo.s32 %r47, %r46, %r41;\n"
|
|
" add.s32 %r48, %r38, %r47;\n"
|
|
" cvt.s64.s32 %rd8, %r48;\n"
|
|
" mul.wide.s32 %rd9, %r48, 32;\n"
|
|
" add.u64 %rd10, %rd7, %rd9;\n"
|
|
" cvt.rn.f64.s32 %fd23, %r28;\n"
|
|
" mov.f64 %fd24, 0d3fe0000000000000; \n"
|
|
" add.f64 %fd25, %fd23, %fd24;\n"
|
|
" sub.f64 %fd26, %fd25, %fd9;\n"
|
|
" cvt.rn.f64.s32 %fd27, %r30;\n"
|
|
" mov.f64 %fd28, 0d3fe0000000000000; \n"
|
|
" add.f64 %fd29, %fd27, %fd28;\n"
|
|
" sub.f64 %fd30, %fd29, %fd15;\n"
|
|
" st.global.v2.f64 [%rd10+0], {%fd26,%fd30};\n"
|
|
" cvt.rn.f64.s32 %fd31, %r32;\n"
|
|
" mov.f64 %fd32, 0d3fe0000000000000; \n"
|
|
" add.f64 %fd33, %fd31, %fd32;\n"
|
|
" sub.f64 %fd34, %fd33, %fd21;\n"
|
|
" st.global.v2.f64 [%rd10+16], {%fd34,%fd3};\n"
|
|
"$Lt_0_7426:\n"
|
|
"$L_0_4610:\n"
|
|
"$Lt_0_6914:\n"
|
|
"$Lt_0_6402:\n"
|
|
" .loc 17 92 0\n"
|
|
" exit;\n"
|
|
"$LDWend_particle_map:\n"
|
|
" }\n"
|
|
" .entry make_rho (\n"
|
|
" .param .u64 __cudaparm_make_rho_counts,\n"
|
|
" .param .u64 __cudaparm_make_rho_atoms,\n"
|
|
" .param .u64 __cudaparm_make_rho_brick,\n"
|
|
" .param .u64 __cudaparm_make_rho__rho_coeff,\n"
|
|
" .param .s32 __cudaparm_make_rho_atom_stride,\n"
|
|
" .param .s32 __cudaparm_make_rho_npts_x,\n"
|
|
" .param .s32 __cudaparm_make_rho_npts_y,\n"
|
|
" .param .s32 __cudaparm_make_rho_npts_z,\n"
|
|
" .param .s32 __cudaparm_make_rho_nlocal_x,\n"
|
|
" .param .s32 __cudaparm_make_rho_nlocal_y,\n"
|
|
" .param .s32 __cudaparm_make_rho_nlocal_z,\n"
|
|
" .param .s32 __cudaparm_make_rho_order_m_1,\n"
|
|
" .param .s32 __cudaparm_make_rho_order,\n"
|
|
" .param .s32 __cudaparm_make_rho_order2)\n"
|
|
" {\n"
|
|
" .reg .u32 %r<119>;\n"
|
|
" .reg .u64 %rd<57>;\n"
|
|
" .reg .f64 %fd<26>;\n"
|
|
" .reg .pred %p<27>;\n"
|
|
" .shared .align 8 .b8 __cuda___cuda_local_var_32578_34_non_const_rho_coeff200[512];\n"
|
|
" .shared .align 8 .b8 __cuda___cuda_local_var_32579_34_non_const_front712[640];\n"
|
|
" .shared .align 8 .b8 __cuda___cuda_local_var_32580_34_non_const_ans1352[4096];\n"
|
|
" .loc 17 101 0\n"
|
|
"$LDWbegin_make_rho:\n"
|
|
" ld.param.s32 %r1, [__cudaparm_make_rho_order2];\n"
|
|
" ld.param.s32 %r2, [__cudaparm_make_rho_order];\n"
|
|
" add.s32 %r3, %r1, %r2;\n"
|
|
" cvt.s32.u32 %r4, %tid.x;\n"
|
|
" setp.le.s32 %p1, %r3, %r4;\n"
|
|
" @%p1 bra $Lt_1_16898;\n"
|
|
" .loc 17 108 0\n"
|
|
" mov.u64 %rd1, __cuda___cuda_local_var_32578_34_non_const_rho_coeff200;\n"
|
|
" cvt.s64.s32 %rd2, %r4;\n"
|
|
" mul.wide.s32 %rd3, %r4, 8;\n"
|
|
" ld.param.u64 %rd4, [__cudaparm_make_rho__rho_coeff];\n"
|
|
" add.u64 %rd5, %rd4, %rd3;\n"
|
|
" ld.global.f64 %fd1, [%rd5+0];\n"
|
|
" add.u64 %rd6, %rd3, %rd1;\n"
|
|
" st.shared.f64 [%rd6+0], %fd1;\n"
|
|
"$Lt_1_16898:\n"
|
|
" mov.u64 %rd1, __cuda___cuda_local_var_32578_34_non_const_rho_coeff200;\n"
|
|
" shr.s32 %r5, %r4, 31;\n"
|
|
" mov.s32 %r6, 31;\n"
|
|
" and.b32 %r7, %r5, %r6;\n"
|
|
" add.s32 %r8, %r7, %r4;\n"
|
|
" shr.s32 %r9, %r8, 5;\n"
|
|
" mul.lo.s32 %r10, %r9, 32;\n"
|
|
" sub.s32 %r11, %r4, %r10;\n"
|
|
" setp.lt.s32 %p2, %r11, %r2;\n"
|
|
" @!%p2 bra $Lt_1_17410;\n"
|
|
" .loc 17 114 0\n"
|
|
" mov.u64 %rd7, __cuda___cuda_local_var_32579_34_non_const_front712;\n"
|
|
" mov.f64 %fd2, 0d0000000000000000; \n"
|
|
" cvt.s64.s32 %rd8, %r11;\n"
|
|
" shr.s32 %r12, %r4, 31;\n"
|
|
" mov.s32 %r13, 31;\n"
|
|
" and.b32 %r14, %r12, %r13;\n"
|
|
" add.s32 %r15, %r14, %r4;\n"
|
|
" shr.s32 %r16, %r15, 5;\n"
|
|
" cvt.s64.s32 %rd9, %r16;\n"
|
|
" mul.wide.s32 %rd10, %r16, 40;\n"
|
|
" add.u64 %rd11, %rd8, %rd10;\n"
|
|
" mul.lo.u64 %rd12, %rd11, 8;\n"
|
|
" add.u64 %rd13, %rd7, %rd12;\n"
|
|
" st.shared.f64 [%rd13+256], %fd2;\n"
|
|
"$Lt_1_17410:\n"
|
|
" mov.u64 %rd7, __cuda___cuda_local_var_32579_34_non_const_front712;\n"
|
|
" .loc 17 116 0\n"
|
|
" bar.sync 0;\n"
|
|
" ld.param.s32 %r17, [__cudaparm_make_rho_npts_x];\n"
|
|
" shr.s32 %r18, %r17, 31;\n"
|
|
" mov.s32 %r19, 31;\n"
|
|
" and.b32 %r20, %r18, %r19;\n"
|
|
" add.s32 %r21, %r20, %r17;\n"
|
|
" shr.s32 %r22, %r21, 5;\n"
|
|
" add.s32 %r23, %r22, 1;\n"
|
|
" mov.u32 %r24, 0;\n"
|
|
" setp.le.s32 %p3, %r23, %r24;\n"
|
|
" @%p3 bra $Lt_1_17922;\n"
|
|
" shr.s32 %r25, %r4, 31;\n"
|
|
" mov.s32 %r26, 31;\n"
|
|
" and.b32 %r27, %r25, %r26;\n"
|
|
" add.s32 %r28, %r27, %r4;\n"
|
|
" shr.s32 %r29, %r28, 5;\n"
|
|
" add.s32 %r30, %r11, 32;\n"
|
|
" ld.param.s32 %r31, [__cudaparm_make_rho_nlocal_y];\n"
|
|
" ld.param.s32 %r32, [__cudaparm_make_rho_nlocal_x];\n"
|
|
" mul.lo.s32 %r33, %r31, %r32;\n"
|
|
" mov.u32 %r34, %ctaid.x;\n"
|
|
" mul.lo.u32 %r35, %r34, 2;\n"
|
|
" add.u32 %r36, %r29, %r35;\n"
|
|
" ld.param.s32 %r37, [__cudaparm_make_rho_npts_y];\n"
|
|
" div.s32 %r38, %r36, %r37;\n"
|
|
" ld.param.s32 %r39, [__cudaparm_make_rho_order_m_1];\n"
|
|
" setp.lt.s32 %p4, %r38, %r39;\n"
|
|
" sub.s32 %r40, %r39, %r38;\n"
|
|
" mov.s32 %r41, 0;\n"
|
|
" selp.s32 %r42, %r40, %r41, %p4;\n"
|
|
" ld.param.s32 %r43, [__cudaparm_make_rho_nlocal_z];\n"
|
|
" setp.ge.s32 %p5, %r38, %r43;\n"
|
|
" sub.s32 %r44, %r43, %r38;\n"
|
|
" add.s32 %r45, %r44, %r2;\n"
|
|
" sub.s32 %r46, %r45, 1;\n"
|
|
" selp.s32 %r47, %r46, %r2, %p5;\n"
|
|
" rem.s32 %r48, %r36, %r37;\n"
|
|
" setp.lt.s32 %p6, %r48, %r39;\n"
|
|
" sub.s32 %r49, %r39, %r48;\n"
|
|
" mov.s32 %r50, 0;\n"
|
|
" selp.s32 %r51, %r49, %r50, %p6;\n"
|
|
" setp.ge.s32 %p7, %r48, %r31;\n"
|
|
" sub.s32 %r52, %r31, %r48;\n"
|
|
" add.s32 %r53, %r52, %r2;\n"
|
|
" sub.s32 %r54, %r53, 1;\n"
|
|
" selp.s32 %r55, %r54, %r2, %p7;\n"
|
|
" mov.s32 %r56, %r23;\n"
|
|
" mov.s32 %r57, 0;\n"
|
|
" setp.gt.s32 %p8, %r2, %r57;\n"
|
|
" mov.s32 %r58, 0;\n"
|
|
" cvt.s64.s32 %rd14, %r11;\n"
|
|
" cvt.s64.s32 %rd15, %r29;\n"
|
|
" mul.lo.s32 %r59, %r23, 32;\n"
|
|
" mul.wide.s32 %rd16, %r29, 40;\n"
|
|
" add.u64 %rd17, %rd14, %rd16;\n"
|
|
" ld.param.s32 %r60, [__cudaparm_make_rho_npts_z];\n"
|
|
" setp.gt.s32 %p9, %r60, %r38;\n"
|
|
" mul.lo.u64 %rd18, %rd17, 8;\n"
|
|
" selp.s32 %r61, 1, 0, %p9;\n"
|
|
" add.u64 %rd19, %rd18, %rd7;\n"
|
|
" mov.u64 %rd20, __cuda___cuda_local_var_32580_34_non_const_ans1352;\n"
|
|
" mov.s32 %r62, %r56;\n"
|
|
"$Lt_1_18434:\n"
|
|
" @!%p8 bra $Lt_1_18690;\n"
|
|
" mov.s32 %r63, %r2;\n"
|
|
" cvt.s64.s32 %rd21, %r4;\n"
|
|
" mul.wide.s32 %rd22, %r4, 8;\n"
|
|
" add.u64 %rd23, %rd20, %rd22;\n"
|
|
" mov.s32 %r64, 0;\n"
|
|
" mov.s32 %r65, %r63;\n"
|
|
"$Lt_1_19202:\n"
|
|
" .loc 17 140 0\n"
|
|
" mov.f64 %fd3, 0d0000000000000000; \n"
|
|
" st.shared.f64 [%rd23+0], %fd3;\n"
|
|
" add.s32 %r64, %r64, 1;\n"
|
|
" add.u64 %rd23, %rd23, 512;\n"
|
|
" setp.ne.s32 %p10, %r64, %r2;\n"
|
|
" @%p10 bra $Lt_1_19202;\n"
|
|
"$Lt_1_18690:\n"
|
|
" add.s32 %r66, %r11, %r58;\n"
|
|
" set.lt.u32.s32 %r67, %r66, %r32;\n"
|
|
" neg.s32 %r68, %r67;\n"
|
|
" and.b32 %r69, %r61, %r68;\n"
|
|
" mov.u32 %r70, 0;\n"
|
|
" setp.eq.s32 %p11, %r69, %r70;\n"
|
|
" @%p11 bra $Lt_1_20226;\n"
|
|
" .loc 17 143 0\n"
|
|
" mov.s32 %r71, %r42;\n"
|
|
" setp.ge.s32 %p12, %r42, %r47;\n"
|
|
" @%p12 bra $Lt_1_20226;\n"
|
|
" sub.s32 %r72, %r47, %r42;\n"
|
|
" setp.lt.s32 %p13, %r51, %r55;\n"
|
|
" mov.s32 %r73, %r72;\n"
|
|
"$Lt_1_20738:\n"
|
|
" .loc 17 145 0\n"
|
|
" mov.s32 %r74, %r51;\n"
|
|
" @!%p13 bra $Lt_1_20994;\n"
|
|
" sub.s32 %r75, %r55, %r51;\n"
|
|
" sub.s32 %r76, %r71, %r42;\n"
|
|
" add.s32 %r77, %r38, %r42;\n"
|
|
" add.s32 %r78, %r48, %r51;\n"
|
|
" sub.s32 %r79, %r77, %r39;\n"
|
|
" sub.s32 %r80, %r78, %r39;\n"
|
|
" add.s32 %r81, %r76, %r79;\n"
|
|
" mul.lo.s32 %r82, %r33, %r81;\n"
|
|
" ld.param.s32 %r83, [__cudaparm_make_rho_atom_stride];\n"
|
|
" ld.param.u64 %rd24, [__cudaparm_make_rho_counts];\n"
|
|
" mov.s32 %r84, %r75;\n"
|
|
"$Lt_1_21506:\n"
|
|
" .loc 17 147 0\n"
|
|
" sub.s32 %r85, %r74, %r51;\n"
|
|
" add.s32 %r86, %r85, %r80;\n"
|
|
" mul.lo.s32 %r87, %r86, %r32;\n"
|
|
" add.s32 %r88, %r82, %r87;\n"
|
|
" add.s32 %r89, %r66, %r88;\n"
|
|
" cvt.s64.s32 %rd25, %r89;\n"
|
|
" mul.wide.s32 %rd26, %r89, 4;\n"
|
|
" add.u64 %rd27, %rd24, %rd26;\n"
|
|
" ld.global.s32 %r90, [%rd27+0];\n"
|
|
" mul.lo.s32 %r91, %r90, %r83;\n"
|
|
" .loc 17 148 0\n"
|
|
" mov.s32 %r92, %r89;\n"
|
|
" setp.ge.s32 %p14, %r89, %r91;\n"
|
|
" @%p14 bra $Lt_1_21762;\n"
|
|
" sub.s32 %r93, %r3, 1;\n"
|
|
" cvt.s64.s32 %rd28, %r83;\n"
|
|
" mul.wide.s32 %rd29, %r83, 32;\n"
|
|
" mov.s32 %r94, -1;\n"
|
|
" setp.gt.s32 %p15, %r93, %r94;\n"
|
|
" ld.param.u64 %rd30, [__cudaparm_make_rho_atoms];\n"
|
|
" mul.lo.u64 %rd31, %rd25, 32;\n"
|
|
" add.u64 %rd32, %rd30, %rd31;\n"
|
|
"$Lt_1_22274:\n"
|
|
" .loc 17 149 0\n"
|
|
" ld.global.f64 %fd4, [%rd32+0];\n"
|
|
" @!%p15 bra $Lt_1_29954;\n"
|
|
" sub.s32 %r95, %r93, %r74;\n"
|
|
" mov.s32 %r96, -1;\n"
|
|
" sub.s32 %r97, %r96, %r74;\n"
|
|
" cvt.s64.s32 %rd33, %r2;\n"
|
|
" mul.wide.s32 %rd34, %r2, 8;\n"
|
|
" ld.global.f64 %fd5, [%rd32+8];\n"
|
|
" ld.global.f64 %fd6, [%rd32+16];\n"
|
|
" cvt.s64.s32 %rd35, %r95;\n"
|
|
" mul.wide.s32 %rd36, %r95, 8;\n"
|
|
" add.u64 %rd37, %rd1, %rd36;\n"
|
|
" sub.s32 %r98, %r93, %r71;\n"
|
|
" cvt.s64.s32 %rd38, %r98;\n"
|
|
" mul.wide.s32 %rd39, %r98, 8;\n"
|
|
" add.u64 %rd40, %rd1, %rd39;\n"
|
|
" mov.f64 %fd7, 0d0000000000000000; \n"
|
|
" mov.f64 %fd8, 0d0000000000000000; \n"
|
|
"$Lt_1_23042:\n"
|
|
" .loc 17 154 0\n"
|
|
" ld.shared.f64 %fd9, [%rd37+0];\n"
|
|
" mad.rn.f64 %fd8, %fd8, %fd5, %fd9;\n"
|
|
" .loc 17 155 0\n"
|
|
" ld.shared.f64 %fd10, [%rd40+0];\n"
|
|
" mad.rn.f64 %fd7, %fd7, %fd6, %fd10;\n"
|
|
" sub.u64 %rd40, %rd40, %rd34;\n"
|
|
" sub.s32 %r95, %r95, %r2;\n"
|
|
" sub.u64 %rd37, %rd37, %rd34;\n"
|
|
" setp.gt.s32 %p16, %r95, %r97;\n"
|
|
" @%p16 bra $Lt_1_23042;\n"
|
|
" bra.uni $Lt_1_22530;\n"
|
|
"$Lt_1_29954:\n"
|
|
" mov.f64 %fd7, 0d0000000000000000; \n"
|
|
" mov.f64 %fd8, 0d0000000000000000; \n"
|
|
"$Lt_1_22530:\n"
|
|
" .loc 17 157 0\n"
|
|
" ld.global.f64 %fd11, [%rd32+24];\n"
|
|
" mul.f64 %fd12, %fd7, %fd8;\n"
|
|
" mul.f64 %fd13, %fd11, %fd12;\n"
|
|
" @!%p8 bra $Lt_1_23554;\n"
|
|
" mov.s32 %r99, %r2;\n"
|
|
" cvt.s64.s32 %rd41, %r4;\n"
|
|
" mul.wide.s32 %rd42, %r4, 8;\n"
|
|
" add.u64 %rd43, %rd20, %rd42;\n"
|
|
" mov.s32 %r100, 0;\n"
|
|
" mov.s32 %r101, %r99;\n"
|
|
"$Lt_1_24066:\n"
|
|
" .loc 17 161 0\n"
|
|
" add.s32 %r102, %r100, %r1;\n"
|
|
" mov.s32 %r103, %r102;\n"
|
|
" setp.lt.s32 %p17, %r102, %r100;\n"
|
|
" @%p17 bra $Lt_1_30466;\n"
|
|
" cvt.s64.s32 %rd44, %r2;\n"
|
|
" mul.wide.s32 %rd34, %r2, 8;\n"
|
|
" cvt.s64.s32 %rd45, %r102;\n"
|
|
" mul.wide.s32 %rd46, %r102, 8;\n"
|
|
" add.u64 %rd47, %rd1, %rd46;\n"
|
|
" mov.f64 %fd14, 0d0000000000000000; \n"
|
|
"$Lt_1_24834:\n"
|
|
" .loc 17 162 0\n"
|
|
" ld.shared.f64 %fd15, [%rd47+0];\n"
|
|
" mad.rn.f64 %fd14, %fd4, %fd14, %fd15;\n"
|
|
" sub.s32 %r103, %r103, %r2;\n"
|
|
" sub.u64 %rd47, %rd47, %rd34;\n"
|
|
" setp.ge.s32 %p18, %r103, %r100;\n"
|
|
" @%p18 bra $Lt_1_24834;\n"
|
|
" bra.uni $Lt_1_24322;\n"
|
|
"$Lt_1_30466:\n"
|
|
" mov.f64 %fd14, 0d0000000000000000; \n"
|
|
"$Lt_1_24322:\n"
|
|
" .loc 17 163 0\n"
|
|
" ld.shared.f64 %fd16, [%rd43+0];\n"
|
|
" mad.rn.f64 %fd17, %fd14, %fd13, %fd16;\n"
|
|
" st.shared.f64 [%rd43+0], %fd17;\n"
|
|
" add.s32 %r100, %r100, 1;\n"
|
|
" add.u64 %rd43, %rd43, 512;\n"
|
|
" setp.ne.s32 %p19, %r100, %r2;\n"
|
|
" @%p19 bra $Lt_1_24066;\n"
|
|
"$Lt_1_23554:\n"
|
|
" add.s32 %r92, %r92, %r83;\n"
|
|
" add.u64 %rd32, %rd29, %rd32;\n"
|
|
" setp.gt.s32 %p20, %r91, %r92;\n"
|
|
" @%p20 bra $Lt_1_22274;\n"
|
|
"$Lt_1_21762:\n"
|
|
" add.s32 %r74, %r74, 1;\n"
|
|
" setp.ne.s32 %p21, %r55, %r74;\n"
|
|
" @%p21 bra $Lt_1_21506;\n"
|
|
"$Lt_1_20994:\n"
|
|
" add.s32 %r71, %r71, 1;\n"
|
|
" setp.ne.s32 %p22, %r47, %r71;\n"
|
|
" @%p22 bra $Lt_1_20738;\n"
|
|
"$Lt_1_20226:\n"
|
|
"$Lt_1_19714:\n"
|
|
" .loc 17 172 0\n"
|
|
" bar.sync 0;\n"
|
|
" @!%p2 bra $Lt_1_26626;\n"
|
|
" .loc 17 174 0\n"
|
|
" ld.shared.f64 %fd18, [%rd19+256];\n"
|
|
" st.shared.f64 [%rd19+0], %fd18;\n"
|
|
" .loc 17 175 0\n"
|
|
" mov.f64 %fd19, 0d0000000000000000; \n"
|
|
" st.shared.f64 [%rd19+256], %fd19;\n"
|
|
" bra.uni $Lt_1_26370;\n"
|
|
"$Lt_1_26626:\n"
|
|
" .loc 17 177 0\n"
|
|
" mov.f64 %fd20, 0d0000000000000000; \n"
|
|
" st.shared.f64 [%rd19+0], %fd20;\n"
|
|
"$Lt_1_26370:\n"
|
|
" @!%p8 bra $Lt_1_26882;\n"
|
|
" mov.s32 %r104, %r2;\n"
|
|
" cvt.s64.s32 %rd48, %r4;\n"
|
|
" mov.s32 %r105, %r11;\n"
|
|
" add.s32 %r106, %r11, %r2;\n"
|
|
" mul.wide.s32 %rd49, %r4, 8;\n"
|
|
" add.u64 %rd50, %rd20, %rd49;\n"
|
|
" mov.s64 %rd51, %rd19;\n"
|
|
" mov.s32 %r107, %r104;\n"
|
|
"$Lt_1_27394:\n"
|
|
" .loc 17 180 0\n"
|
|
" ld.shared.f64 %fd21, [%rd50+0];\n"
|
|
" ld.shared.f64 %fd22, [%rd51+0];\n"
|
|
" add.f64 %fd23, %fd21, %fd22;\n"
|
|
" st.shared.f64 [%rd51+0], %fd23;\n"
|
|
" .loc 17 181 0\n"
|
|
" bar.sync 0;\n"
|
|
" add.s32 %r105, %r105, 1;\n"
|
|
" add.u64 %rd51, %rd51, 8;\n"
|
|
" add.u64 %rd50, %rd50, 512;\n"
|
|
" setp.ne.s32 %p23, %r105, %r106;\n"
|
|
" @%p23 bra $Lt_1_27394;\n"
|
|
"$Lt_1_26882:\n"
|
|
" set.lt.u32.s32 %r108, %r66, %r17;\n"
|
|
" neg.s32 %r109, %r108;\n"
|
|
" and.b32 %r110, %r61, %r109;\n"
|
|
" mov.u32 %r111, 0;\n"
|
|
" setp.eq.s32 %p24, %r110, %r111;\n"
|
|
" @%p24 bra $Lt_1_27906;\n"
|
|
" .loc 17 185 0\n"
|
|
" ld.shared.f64 %fd24, [%rd19+0];\n"
|
|
" ld.param.u64 %rd52, [__cudaparm_make_rho_brick];\n"
|
|
" add.s32 %r112, %r11, %r58;\n"
|
|
" mul.lo.s32 %r113, %r37, %r17;\n"
|
|
" mul.lo.s32 %r114, %r38, %r113;\n"
|
|
" mul.lo.s32 %r115, %r48, %r17;\n"
|
|
" add.s32 %r116, %r114, %r115;\n"
|
|
" add.s32 %r117, %r112, %r116;\n"
|
|
" cvt.s64.s32 %rd53, %r117;\n"
|
|
" mul.wide.s32 %rd54, %r117, 8;\n"
|
|
" add.u64 %rd55, %rd52, %rd54;\n"
|
|
" st.global.f64 [%rd55+0], %fd24;\n"
|
|
"$Lt_1_27906:\n"
|
|
" add.s32 %r58, %r58, 32;\n"
|
|
" setp.ne.s32 %p25, %r58, %r59;\n"
|
|
" @%p25 bra $Lt_1_18434;\n"
|
|
"$Lt_1_17922:\n"
|
|
" .loc 17 189 0\n"
|
|
" exit;\n"
|
|
"$LDWend_make_rho:\n"
|
|
" }\n"
|
|
" .entry interp (\n"
|
|
" .param .u64 __cudaparm_interp_x_,\n"
|
|
" .param .u64 __cudaparm_interp_q_,\n"
|
|
" .param .s32 __cudaparm_interp_nlocal,\n"
|
|
" .param .u64 __cudaparm_interp_brick,\n"
|
|
" .param .u64 __cudaparm_interp__rho_coeff,\n"
|
|
" .param .s32 __cudaparm_interp_npts_x,\n"
|
|
" .param .s32 __cudaparm_interp_npts_yx,\n"
|
|
" .param .f64 __cudaparm_interp_b_lo_x,\n"
|
|
" .param .f64 __cudaparm_interp_b_lo_y,\n"
|
|
" .param .f64 __cudaparm_interp_b_lo_z,\n"
|
|
" .param .f64 __cudaparm_interp_delxinv,\n"
|
|
" .param .f64 __cudaparm_interp_delyinv,\n"
|
|
" .param .f64 __cudaparm_interp_delzinv,\n"
|
|
" .param .s32 __cudaparm_interp_order,\n"
|
|
" .param .s32 __cudaparm_interp_order2,\n"
|
|
" .param .f64 __cudaparm_interp_qqrd2e_scale,\n"
|
|
" .param .u64 __cudaparm_interp_ans)\n"
|
|
" {\n"
|
|
" .reg .u32 %r<56>;\n"
|
|
" .reg .u64 %rd<37>;\n"
|
|
" .reg .f32 %f<19>;\n"
|
|
" .reg .f64 %fd<63>;\n"
|
|
" .reg .pred %p<14>;\n"
|
|
" .shared .align 8 .b8 __cuda___cuda_local_var_32676_34_non_const_rho_coeff5568[512];\n"
|
|
" .shared .align 8 .b8 __cuda___cuda_local_var_32677_34_non_const_rho1d_06080[4096];\n"
|
|
" .shared .align 8 .b8 __cuda___cuda_local_var_32678_34_non_const_rho1d_110176[4096];\n"
|
|
" .loc 17 199 0\n"
|
|
"$LDWbegin_interp:\n"
|
|
" ld.param.s32 %r1, [__cudaparm_interp_order2];\n"
|
|
" ld.param.s32 %r2, [__cudaparm_interp_order];\n"
|
|
" add.s32 %r3, %r1, %r2;\n"
|
|
" cvt.s32.u32 %r4, %tid.x;\n"
|
|
" setp.le.s32 %p1, %r3, %r4;\n"
|
|
" @%p1 bra $Lt_2_8706;\n"
|
|
" .loc 17 206 0\n"
|
|
" mov.u64 %rd1, __cuda___cuda_local_var_32676_34_non_const_rho_coeff5568;\n"
|
|
" cvt.s64.s32 %rd2, %r4;\n"
|
|
" mul.wide.s32 %rd3, %r4, 8;\n"
|
|
" ld.param.u64 %rd4, [__cudaparm_interp__rho_coeff];\n"
|
|
" add.u64 %rd5, %rd4, %rd3;\n"
|
|
" ld.global.f64 %fd1, [%rd5+0];\n"
|
|
" add.u64 %rd6, %rd3, %rd1;\n"
|
|
" st.shared.f64 [%rd6+0], %fd1;\n"
|
|
"$Lt_2_8706:\n"
|
|
" mov.u64 %rd1, __cuda___cuda_local_var_32676_34_non_const_rho_coeff5568;\n"
|
|
" .loc 17 207 0\n"
|
|
" bar.sync 0;\n"
|
|
" mov.u32 %r5, %ctaid.x;\n"
|
|
" mov.u32 %r6, %ntid.x;\n"
|
|
" mul.lo.u32 %r7, %r5, %r6;\n"
|
|
" add.u32 %r8, %r4, %r7;\n"
|
|
" ld.param.s32 %r9, [__cudaparm_interp_nlocal];\n"
|
|
" setp.le.s32 %p2, %r9, %r8;\n"
|
|
" @%p2 bra $Lt_2_9218;\n"
|
|
" .loc 17 215 0\n"
|
|
" mov.u32 %r10, %r8;\n"
|
|
" mov.s32 %r11, 0;\n"
|
|
" mov.u32 %r12, %r11;\n"
|
|
" mov.s32 %r13, 0;\n"
|
|
" mov.u32 %r14, %r13;\n"
|
|
" mov.s32 %r15, 0;\n"
|
|
" mov.u32 %r16, %r15;\n"
|
|
" tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[pos_tex,{%r10,%r12,%r14,%r16}];\n"
|
|
" mov.f32 %f5, %f1;\n"
|
|
" mov.f32 %f6, %f2;\n"
|
|
" mov.f32 %f7, %f3;\n"
|
|
" .loc 17 216 0\n"
|
|
" mov.u32 %r17, %r8;\n"
|
|
" mov.s32 %r18, 0;\n"
|
|
" mov.u32 %r19, %r18;\n"
|
|
" mov.s32 %r20, 0;\n"
|
|
" mov.u32 %r21, %r20;\n"
|
|
" mov.s32 %r22, 0;\n"
|
|
" mov.u32 %r23, %r22;\n"
|
|
" tex.1d.v4.f32.s32 {%f8,%f9,%f10,%f11},[q_tex,{%r17,%r19,%r21,%r23}];\n"
|
|
" mov.f32 %f12, %f8;\n"
|
|
" cvt.ftz.f64.f32 %fd2, %f12;\n"
|
|
" ld.param.f64 %fd3, [__cudaparm_interp_qqrd2e_scale];\n"
|
|
" mul.f64 %fd4, %fd2, %fd3;\n"
|
|
" mov.f64 %fd5, 0d0000000000000000; \n"
|
|
" setp.neu.f64 %p3, %fd4, %fd5;\n"
|
|
" @!%p3 bra $Lt_2_9986;\n"
|
|
" mov.s32 %r24, 0;\n"
|
|
" setp.gt.s32 %p4, %r2, %r24;\n"
|
|
" ld.param.f64 %fd6, [__cudaparm_interp_delxinv];\n"
|
|
" cvt.ftz.f64.f32 %fd7, %f5;\n"
|
|
" ld.param.f64 %fd8, [__cudaparm_interp_b_lo_x];\n"
|
|
" sub.f64 %fd9, %fd7, %fd8;\n"
|
|
" mul.f64 %fd10, %fd6, %fd9;\n"
|
|
" @!%p4 bra $Lt_2_16386;\n"
|
|
" mov.u64 %rd7, __cuda___cuda_local_var_32677_34_non_const_rho1d_06080;\n"
|
|
" mov.u64 %rd8, __cuda___cuda_local_var_32678_34_non_const_rho1d_110176;\n"
|
|
" cvt.rzi.s32.f64 %r25, %fd10;\n"
|
|
" cvt.rn.f64.s32 %fd11, %r25;\n"
|
|
" mov.f64 %fd12, 0d3fe0000000000000; \n"
|
|
" add.f64 %fd13, %fd11, %fd12;\n"
|
|
" sub.f64 %fd14, %fd13, %fd10;\n"
|
|
" ld.param.f64 %fd15, [__cudaparm_interp_delyinv];\n"
|
|
" cvt.ftz.f64.f32 %fd16, %f6;\n"
|
|
" ld.param.f64 %fd17, [__cudaparm_interp_b_lo_y];\n"
|
|
" sub.f64 %fd18, %fd16, %fd17;\n"
|
|
" mul.f64 %fd19, %fd15, %fd18;\n"
|
|
" cvt.rzi.s32.f64 %r26, %fd19;\n"
|
|
" cvt.rn.f64.s32 %fd20, %r26;\n"
|
|
" mov.f64 %fd21, 0d3fe0000000000000; \n"
|
|
" add.f64 %fd22, %fd20, %fd21;\n"
|
|
" sub.f64 %fd23, %fd22, %fd19;\n"
|
|
" mov.s32 %r27, %r2;\n"
|
|
" cvt.s64.s32 %rd9, %r4;\n"
|
|
" mov.s32 %r28, %r1;\n"
|
|
" mul.wide.s32 %rd3, %r4, 8;\n"
|
|
" add.u64 %rd10, %rd3, %rd7;\n"
|
|
" add.u64 %rd11, %rd3, %rd8;\n"
|
|
" mov.s32 %r29, 0;\n"
|
|
" mov.s32 %r30, %r27;\n"
|
|
"$Lt_2_10754:\n"
|
|
" .loc 17 235 0\n"
|
|
" mov.f64 %fd24, 0d0000000000000000; \n"
|
|
" mov.f64 %fd25, 0d0000000000000000; \n"
|
|
" st.shared.f64 [%rd10+0], %fd25;\n"
|
|
" .loc 17 236 0\n"
|
|
" mov.f64 %fd26, 0d0000000000000000; \n"
|
|
" mov.f64 %fd27, 0d0000000000000000; \n"
|
|
" st.shared.f64 [%rd11+0], %fd27;\n"
|
|
" .loc 17 237 0\n"
|
|
" mov.s32 %r31, %r28;\n"
|
|
" setp.lt.s32 %p5, %r28, %r29;\n"
|
|
" @%p5 bra $Lt_2_11010;\n"
|
|
" cvt.s64.s32 %rd12, %r2;\n"
|
|
" mul.wide.s32 %rd13, %r2, 8;\n"
|
|
" cvt.s64.s32 %rd14, %r28;\n"
|
|
" mul.wide.s32 %rd15, %r28, 8;\n"
|
|
" add.u64 %rd16, %rd1, %rd15;\n"
|
|
"$Lt_2_11522:\n"
|
|
" .loc 17 238 0\n"
|
|
" ld.shared.f64 %fd28, [%rd16+0];\n"
|
|
" mad.rn.f64 %fd24, %fd24, %fd14, %fd28;\n"
|
|
" st.shared.f64 [%rd10+0], %fd24;\n"
|
|
" .loc 17 239 0\n"
|
|
" mad.rn.f64 %fd26, %fd26, %fd23, %fd28;\n"
|
|
" st.shared.f64 [%rd11+0], %fd26;\n"
|
|
" sub.s32 %r31, %r31, %r2;\n"
|
|
" sub.u64 %rd16, %rd16, %rd13;\n"
|
|
" setp.ge.s32 %p6, %r31, %r29;\n"
|
|
" @%p6 bra $Lt_2_11522;\n"
|
|
"$Lt_2_11010:\n"
|
|
" add.s32 %r29, %r29, 1;\n"
|
|
" add.s32 %r28, %r28, 1;\n"
|
|
" add.u64 %rd11, %rd11, 512;\n"
|
|
" add.u64 %rd10, %rd10, 512;\n"
|
|
" setp.ne.s32 %p7, %r28, %r3;\n"
|
|
" @%p7 bra $Lt_2_10754;\n"
|
|
" bra.uni $Lt_2_10242;\n"
|
|
"$Lt_2_16386:\n"
|
|
" cvt.rzi.s32.f64 %r25, %fd10;\n"
|
|
" mov.u64 %rd8, __cuda___cuda_local_var_32678_34_non_const_rho1d_110176;\n"
|
|
" mov.u64 %rd7, __cuda___cuda_local_var_32677_34_non_const_rho1d_06080;\n"
|
|
"$Lt_2_10242:\n"
|
|
" .loc 17 243 0\n"
|
|
" ld.param.f64 %fd29, [__cudaparm_interp_delzinv];\n"
|
|
" cvt.ftz.f64.f32 %fd30, %f7;\n"
|
|
" ld.param.f64 %fd31, [__cudaparm_interp_b_lo_z];\n"
|
|
" sub.f64 %fd32, %fd30, %fd31;\n"
|
|
" mul.f64 %fd33, %fd29, %fd32;\n"
|
|
" cvt.rzi.s32.f64 %r32, %fd33;\n"
|
|
" ld.param.s32 %r33, [__cudaparm_interp_npts_yx];\n"
|
|
" mul.lo.s32 %r34, %r32, %r33;\n"
|
|
" add.s32 %r35, %r25, %r34;\n"
|
|
" @!%p4 bra $Lt_2_16898;\n"
|
|
" cvt.rn.f64.s32 %fd34, %r32;\n"
|
|
" mov.f64 %fd35, 0d3fe0000000000000; \n"
|
|
" add.f64 %fd36, %fd34, %fd35;\n"
|
|
" sub.f64 %fd37, %fd36, %fd33;\n"
|
|
" mov.s32 %r36, %r2;\n"
|
|
" cvt.ftz.f64.f32 %fd38, %f6;\n"
|
|
" cvt.s64.s32 %rd17, %r4;\n"
|
|
" ld.param.f64 %fd39, [__cudaparm_interp_delyinv];\n"
|
|
" ld.param.f64 %fd40, [__cudaparm_interp_b_lo_y];\n"
|
|
" sub.f64 %fd41, %fd38, %fd40;\n"
|
|
" mul.f64 %fd42, %fd39, %fd41;\n"
|
|
" cvt.rzi.s32.f64 %r37, %fd42;\n"
|
|
" mul.wide.s32 %rd3, %r4, 8;\n"
|
|
" ld.param.s32 %r38, [__cudaparm_interp_npts_x];\n"
|
|
" mul.lo.s32 %r39, %r37, %r38;\n"
|
|
" add.u64 %rd18, %rd3, %rd7;\n"
|
|
" add.u64 %rd19, %rd3, %rd8;\n"
|
|
" cvt.s64.s32 %rd20, %r38;\n"
|
|
" mul.wide.s32 %rd21, %r38, 32;\n"
|
|
" add.s32 %r40, %r39, %r35;\n"
|
|
" mov.s32 %r41, %r40;\n"
|
|
" ld.param.u64 %rd22, [__cudaparm_interp_brick];\n"
|
|
" mov.s32 %r42, 0;\n"
|
|
" mov.f32 %f13, 0f00000000; \n"
|
|
" mov.f32 %f14, 0f00000000; \n"
|
|
" mov.f32 %f15, 0f00000000; \n"
|
|
" mov.s32 %r43, %r36;\n"
|
|
"$Lt_2_12802:\n"
|
|
" .loc 17 246 0\n"
|
|
" add.s32 %r44, %r42, %r1;\n"
|
|
" mov.s32 %r45, %r44;\n"
|
|
" setp.lt.s32 %p8, %r44, %r42;\n"
|
|
" @%p8 bra $Lt_2_17154;\n"
|
|
" cvt.s64.s32 %rd23, %r2;\n"
|
|
" mul.wide.s32 %rd13, %r2, 8;\n"
|
|
" cvt.s64.s32 %rd24, %r44;\n"
|
|
" mul.wide.s32 %rd25, %r44, 8;\n"
|
|
" add.u64 %rd26, %rd1, %rd25;\n"
|
|
" mov.f64 %fd43, 0d0000000000000000; \n"
|
|
"$Lt_2_13570:\n"
|
|
" .loc 17 247 0\n"
|
|
" ld.shared.f64 %fd44, [%rd26+0];\n"
|
|
" mad.rn.f64 %fd43, %fd37, %fd43, %fd44;\n"
|
|
" sub.s32 %r45, %r45, %r2;\n"
|
|
" sub.u64 %rd26, %rd26, %rd13;\n"
|
|
" setp.ge.s32 %p9, %r45, %r42;\n"
|
|
" @%p9 bra $Lt_2_13570;\n"
|
|
" bra.uni $Lt_2_13058;\n"
|
|
"$Lt_2_17154:\n"
|
|
" mov.f64 %fd43, 0d0000000000000000; \n"
|
|
"$Lt_2_13058:\n"
|
|
" .loc 17 249 0\n"
|
|
" mov.s32 %r46, %r41;\n"
|
|
" mov.s32 %r47, %r2;\n"
|
|
" mov.s32 %r48, %r46;\n"
|
|
" mul.f64 %fd45, %fd4, %fd43;\n"
|
|
" mov.s64 %rd27, %rd19;\n"
|
|
" cvt.s64.s32 %rd28, %r46;\n"
|
|
" mul.wide.s32 %rd29, %r46, 32;\n"
|
|
" mov.s32 %r49, 0;\n"
|
|
" mov.s32 %r50, %r47;\n"
|
|
"$Lt_2_14594:\n"
|
|
" mov.s32 %r51, %r2;\n"
|
|
" mov.s32 %r52, %r48;\n"
|
|
" add.s32 %r53, %r48, %r2;\n"
|
|
" mov.s64 %rd30, %rd18;\n"
|
|
" ld.shared.f64 %fd46, [%rd27+0];\n"
|
|
" add.u64 %rd31, %rd29, %rd22;\n"
|
|
" mul.f64 %fd47, %fd45, %fd46;\n"
|
|
" mov.s32 %r54, %r51;\n"
|
|
"$Lt_2_15362:\n"
|
|
" .loc 17 253 0\n"
|
|
" ld.shared.f64 %fd48, [%rd30+0];\n"
|
|
" mul.f64 %fd49, %fd48, %fd47;\n"
|
|
" .loc 17 255 0\n"
|
|
" cvt.ftz.f64.f32 %fd50, %f15;\n"
|
|
" ld.global.v2.f64 {%fd51,%fd52}, [%rd31+0];\n"
|
|
" mul.f64 %fd53, %fd49, %fd51;\n"
|
|
" sub.f64 %fd54, %fd50, %fd53;\n"
|
|
" cvt.rn.ftz.f32.f64 %f15, %fd54;\n"
|
|
" .loc 17 256 0\n"
|
|
" cvt.ftz.f64.f32 %fd55, %f14;\n"
|
|
" mul.f64 %fd56, %fd49, %fd52;\n"
|
|
" sub.f64 %fd57, %fd55, %fd56;\n"
|
|
" cvt.rn.ftz.f32.f64 %f14, %fd57;\n"
|
|
" .loc 17 257 0\n"
|
|
" cvt.ftz.f64.f32 %fd58, %f13;\n"
|
|
" ld.global.f64 %fd59, [%rd31+16];\n"
|
|
" mul.f64 %fd60, %fd49, %fd59;\n"
|
|
" sub.f64 %fd61, %fd58, %fd60;\n"
|
|
" cvt.rn.ftz.f32.f64 %f13, %fd61;\n"
|
|
" add.s32 %r52, %r52, 1;\n"
|
|
" add.u64 %rd31, %rd31, 32;\n"
|
|
" add.u64 %rd30, %rd30, 512;\n"
|
|
" setp.ne.s32 %p10, %r52, %r53;\n"
|
|
" @%p10 bra $Lt_2_15362;\n"
|
|
" add.s32 %r49, %r49, 1;\n"
|
|
" add.s32 %r48, %r48, %r38;\n"
|
|
" add.u64 %rd29, %rd29, %rd21;\n"
|
|
" add.u64 %rd27, %rd27, 512;\n"
|
|
" setp.ne.s32 %p11, %r49, %r2;\n"
|
|
" @%p11 bra $Lt_2_14594;\n"
|
|
" add.s32 %r42, %r42, 1;\n"
|
|
" add.s32 %r41, %r46, %r33;\n"
|
|
" setp.ne.s32 %p12, %r42, %r2;\n"
|
|
" @%p12 bra $Lt_2_12802;\n"
|
|
" bra.uni $Lt_2_9730;\n"
|
|
"$Lt_2_16898:\n"
|
|
" mov.f32 %f13, 0f00000000; \n"
|
|
" mov.f32 %f14, 0f00000000; \n"
|
|
" mov.f32 %f15, 0f00000000; \n"
|
|
" bra.uni $Lt_2_9730;\n"
|
|
"$Lt_2_9986:\n"
|
|
" mov.f32 %f13, 0f00000000; \n"
|
|
" mov.f32 %f14, 0f00000000; \n"
|
|
" mov.f32 %f15, 0f00000000; \n"
|
|
"$Lt_2_9730:\n"
|
|
" .loc 17 264 0\n"
|
|
" ld.param.u64 %rd32, [__cudaparm_interp_ans];\n"
|
|
" cvt.s64.s32 %rd33, %r8;\n"
|
|
" mul.wide.s32 %rd34, %r8, 16;\n"
|
|
" add.u64 %rd35, %rd32, %rd34;\n"
|
|
" mov.f32 %f16, %f17;\n"
|
|
" st.global.v4.f32 [%rd35+0], {%f15,%f14,%f13,%f16};\n"
|
|
"$Lt_2_9218:\n"
|
|
" .loc 17 266 0\n"
|
|
" exit;\n"
|
|
"$LDWend_interp:\n"
|
|
" }\n"
|
|
;
|