From 2aaf4f6d7e969a282c985e2da39a3fe9f0782eab Mon Sep 17 00:00:00 2001 From: sjplimp Date: Wed, 25 Jan 2012 21:22:15 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@7581 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- lib/gpu/atom.ptx | 101 - lib/gpu/atom_ptx.h | 56 - lib/gpu/cg_cmm.ptx | 958 -------- lib/gpu/cg_cmm_long.ptx | 1189 ---------- lib/gpu/cg_cmm_long_ptx.h | 1129 ---------- lib/gpu/cg_cmm_ptx.h | 906 -------- lib/gpu/charmm_long.ptx | 1200 ---------- lib/gpu/charmm_long_ptx.h | 1139 ---------- lib/gpu/coul_long.ptx | 1009 --------- lib/gpu/coul_long_ptx.h | 957 -------- lib/gpu/cudpp.o | Bin 1904 -> 0 bytes lib/gpu/cudpp_maximal_launch.o | Bin 2176 -> 0 bytes lib/gpu/cudpp_plan.o | Bin 9800 -> 0 bytes lib/gpu/cudpp_plan_manager.o | Bin 10440 -> 0 bytes lib/gpu/device.ptx | 134 -- lib/gpu/device_ptx.h | 88 - lib/gpu/ellipsoid_nbor.ptx | 329 --- lib/gpu/ellipsoid_nbor_ptx.h | 281 --- lib/gpu/gayberne.ptx | 1590 ------------- lib/gpu/gayberne_lj.ptx | 1915 ---------------- lib/gpu/gayberne_lj_ptx.h | 1860 ---------------- lib/gpu/gayberne_ptx.h | 1540 ------------- lib/gpu/lal_ans.o | Bin 30600 -> 0 bytes lib/gpu/lal_atom.o | Bin 47544 -> 0 bytes lib/gpu/lal_base_atomic.o | Bin 74824 -> 0 bytes lib/gpu/lal_base_charge.o | Bin 80104 -> 0 bytes lib/gpu/lal_base_ellipsoid.o | Bin 100744 -> 0 bytes lib/gpu/lal_cg_cmm.o | Bin 71352 -> 0 bytes lib/gpu/lal_cg_cmm_ext.o | Bin 6184 -> 0 bytes lib/gpu/lal_cg_cmm_long.o | Bin 75992 -> 0 bytes lib/gpu/lal_cg_cmm_long_ext.o | Bin 6576 -> 0 bytes lib/gpu/lal_charmm_long.o | Bin 81224 -> 0 bytes lib/gpu/lal_charmm_long_ext.o | Bin 6728 -> 0 bytes lib/gpu/lal_coul_long.o | Bin 63976 -> 0 bytes lib/gpu/lal_coul_long_ext.o | Bin 6152 -> 0 bytes lib/gpu/lal_device.o | Bin 123936 -> 0 bytes lib/gpu/lal_gayberne.o | Bin 179592 -> 0 bytes lib/gpu/lal_gayberne_ext.o | Bin 6592 -> 0 bytes lib/gpu/lal_lj.o | Bin 69312 -> 0 bytes lib/gpu/lal_lj96.o | Bin 69400 -> 0 bytes lib/gpu/lal_lj96_ext.o | Bin 6144 -> 0 bytes lib/gpu/lal_lj_class2_long.o | Bin 74720 -> 0 bytes lib/gpu/lal_lj_class2_long_ext.o | Bin 6536 -> 0 bytes lib/gpu/lal_lj_coul.o | Bin 74480 -> 0 bytes lib/gpu/lal_lj_coul_ext.o | Bin 6480 -> 0 bytes lib/gpu/lal_lj_coul_long.o | Bin 74472 -> 0 bytes lib/gpu/lal_lj_coul_long_ext.o | Bin 6520 -> 0 bytes lib/gpu/lal_lj_expand.o | Bin 70416 -> 0 bytes lib/gpu/lal_lj_expand_ext.o | Bin 6208 -> 0 bytes lib/gpu/lal_lj_ext.o | Bin 6128 -> 0 bytes lib/gpu/lal_morse.o | Bin 74768 -> 0 bytes lib/gpu/lal_morse_ext.o | Bin 6144 -> 0 bytes lib/gpu/lal_neighbor.o | Bin 58952 -> 0 bytes lib/gpu/lal_neighbor_shared.o | Bin 32816 -> 0 bytes lib/gpu/lal_pppm.o | Bin 167232 -> 0 bytes lib/gpu/lal_pppm_ext.o | Bin 11272 -> 0 bytes lib/gpu/lal_re_squared.o | Bin 254240 -> 0 bytes lib/gpu/lal_re_squared_ext.o | Bin 6456 -> 0 bytes lib/gpu/lj.ptx | 901 -------- lib/gpu/lj96.ptx | 901 -------- lib/gpu/lj96_ptx.h | 849 ------- lib/gpu/lj_class2_long.ptx | 1133 ---------- lib/gpu/lj_class2_long_ptx.h | 1073 --------- lib/gpu/lj_coul.ptx | 1056 --------- lib/gpu/lj_coul_long.ptx | 1123 ---------- lib/gpu/lj_coul_long_ptx.h | 1065 --------- lib/gpu/lj_coul_ptx.h | 1002 --------- lib/gpu/lj_expand.ptx | 912 -------- lib/gpu/lj_expand_ptx.h | 860 -------- lib/gpu/lj_ptx.h | 849 ------- lib/gpu/morse.ptx | 921 -------- lib/gpu/morse_ptx.h | 869 -------- lib/gpu/neighbor_cpu.ptx | 132 -- lib/gpu/neighbor_cpu_ptx.h | 86 - lib/gpu/neighbor_gpu.ptx | 870 -------- lib/gpu/neighbor_gpu_ptx.h | 809 ------- lib/gpu/pppm_d.ptx | 900 -------- lib/gpu/pppm_d_ptx.h | 837 ------- lib/gpu/pppm_f.ptx | 881 -------- lib/gpu/pppm_f_ptx.h | 818 ------- lib/gpu/radixsort_app.cu_o | Bin 3128960 -> 0 bytes lib/gpu/re_squared.ptx | 2357 -------------------- lib/gpu/re_squared_lj.ptx | 3549 ------------------------------ lib/gpu/re_squared_lj_ptx.h | 3489 ----------------------------- lib/gpu/re_squared_ptx.h | 2306 ------------------- lib/gpu/scan_app.cu_o | Bin 18297344 -> 0 bytes 86 files changed, 46929 deletions(-) delete mode 100644 lib/gpu/atom.ptx delete mode 100644 lib/gpu/atom_ptx.h delete mode 100644 lib/gpu/cg_cmm.ptx delete mode 100644 lib/gpu/cg_cmm_long.ptx delete mode 100644 lib/gpu/cg_cmm_long_ptx.h delete mode 100644 lib/gpu/cg_cmm_ptx.h delete mode 100644 lib/gpu/charmm_long.ptx delete mode 100644 lib/gpu/charmm_long_ptx.h delete mode 100644 lib/gpu/coul_long.ptx delete mode 100644 lib/gpu/coul_long_ptx.h delete mode 100644 lib/gpu/cudpp.o delete mode 100644 lib/gpu/cudpp_maximal_launch.o delete mode 100644 lib/gpu/cudpp_plan.o delete mode 100644 lib/gpu/cudpp_plan_manager.o delete mode 100644 lib/gpu/device.ptx delete mode 100644 lib/gpu/device_ptx.h delete mode 100644 lib/gpu/ellipsoid_nbor.ptx delete mode 100644 lib/gpu/ellipsoid_nbor_ptx.h delete mode 100644 lib/gpu/gayberne.ptx delete mode 100644 lib/gpu/gayberne_lj.ptx delete mode 100644 lib/gpu/gayberne_lj_ptx.h delete mode 100644 lib/gpu/gayberne_ptx.h delete mode 100644 lib/gpu/lal_ans.o delete mode 100644 lib/gpu/lal_atom.o delete mode 100644 lib/gpu/lal_base_atomic.o delete mode 100644 lib/gpu/lal_base_charge.o delete mode 100644 lib/gpu/lal_base_ellipsoid.o delete mode 100644 lib/gpu/lal_cg_cmm.o delete mode 100644 lib/gpu/lal_cg_cmm_ext.o delete mode 100644 lib/gpu/lal_cg_cmm_long.o delete mode 100644 lib/gpu/lal_cg_cmm_long_ext.o delete mode 100644 lib/gpu/lal_charmm_long.o delete mode 100644 lib/gpu/lal_charmm_long_ext.o delete mode 100644 lib/gpu/lal_coul_long.o delete mode 100644 lib/gpu/lal_coul_long_ext.o delete mode 100644 lib/gpu/lal_device.o delete mode 100644 lib/gpu/lal_gayberne.o delete mode 100644 lib/gpu/lal_gayberne_ext.o delete mode 100644 lib/gpu/lal_lj.o delete mode 100644 lib/gpu/lal_lj96.o delete mode 100644 lib/gpu/lal_lj96_ext.o delete mode 100644 lib/gpu/lal_lj_class2_long.o delete mode 100644 lib/gpu/lal_lj_class2_long_ext.o delete mode 100644 lib/gpu/lal_lj_coul.o delete mode 100644 lib/gpu/lal_lj_coul_ext.o delete mode 100644 lib/gpu/lal_lj_coul_long.o delete mode 100644 lib/gpu/lal_lj_coul_long_ext.o delete mode 100644 lib/gpu/lal_lj_expand.o delete mode 100644 lib/gpu/lal_lj_expand_ext.o delete mode 100644 lib/gpu/lal_lj_ext.o delete mode 100644 lib/gpu/lal_morse.o delete mode 100644 lib/gpu/lal_morse_ext.o delete mode 100644 lib/gpu/lal_neighbor.o delete mode 100644 lib/gpu/lal_neighbor_shared.o delete mode 100644 lib/gpu/lal_pppm.o delete mode 100644 lib/gpu/lal_pppm_ext.o delete mode 100644 lib/gpu/lal_re_squared.o delete mode 100644 lib/gpu/lal_re_squared_ext.o delete mode 100644 lib/gpu/lj.ptx delete mode 100644 lib/gpu/lj96.ptx delete mode 100644 lib/gpu/lj96_ptx.h delete mode 100644 lib/gpu/lj_class2_long.ptx delete mode 100644 lib/gpu/lj_class2_long_ptx.h delete mode 100644 lib/gpu/lj_coul.ptx delete mode 100644 lib/gpu/lj_coul_long.ptx delete mode 100644 lib/gpu/lj_coul_long_ptx.h delete mode 100644 lib/gpu/lj_coul_ptx.h delete mode 100644 lib/gpu/lj_expand.ptx delete mode 100644 lib/gpu/lj_expand_ptx.h delete mode 100644 lib/gpu/lj_ptx.h delete mode 100644 lib/gpu/morse.ptx delete mode 100644 lib/gpu/morse_ptx.h delete mode 100644 lib/gpu/neighbor_cpu.ptx delete mode 100644 lib/gpu/neighbor_cpu_ptx.h delete mode 100644 lib/gpu/neighbor_gpu.ptx delete mode 100644 lib/gpu/neighbor_gpu_ptx.h delete mode 100644 lib/gpu/pppm_d.ptx delete mode 100644 lib/gpu/pppm_d_ptx.h delete mode 100644 lib/gpu/pppm_f.ptx delete mode 100644 lib/gpu/pppm_f_ptx.h delete mode 100644 lib/gpu/radixsort_app.cu_o delete mode 100644 lib/gpu/re_squared.ptx delete mode 100644 lib/gpu/re_squared_lj.ptx delete mode 100644 lib/gpu/re_squared_lj_ptx.h delete mode 100644 lib/gpu/re_squared_ptx.h delete mode 100644 lib/gpu/scan_app.cu_o diff --git a/lib/gpu/atom.ptx b/lib/gpu/atom.ptx deleted file mode 100644 index 7d73b0501f..0000000000 --- a/lib/gpu/atom.ptx +++ /dev/null @@ -1,101 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_000099dd_00000000-9_lal_atom.cpp3.i (/home/sjplimp/ccBI#.Q6OzuV) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_000099dd_00000000-8_lal_atom.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_atom.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_cast_x ( - .param .u64 __cudaparm_kernel_cast_x_x_type, - .param .u64 __cudaparm_kernel_cast_x_x, - .param .u64 __cudaparm_kernel_cast_x_type, - .param .s32 __cudaparm_kernel_cast_x_nall) - { - .reg .u32 %r<10>; - .reg .u64 %rd<13>; - .reg .f32 %f<6>; - .reg .f64 %fd<5>; - .reg .pred %p<3>; - .loc 16 21 0 -$LDWbegin_kernel_cast_x: - cvt.s32.u32 %r1, %ctaid.x; - cvt.s32.u32 %r2, %ntid.x; - mul24.lo.s32 %r3, %r1, %r2; - mov.u32 %r4, %tid.x; - add.u32 %r5, %r3, %r4; - ld.param.s32 %r6, [__cudaparm_kernel_cast_x_nall]; - setp.le.s32 %p1, %r6, %r5; - @%p1 bra $Lt_0_1026; - .loc 16 26 0 - cvt.s64.s32 %rd1, %r5; - ld.param.u64 %rd2, [__cudaparm_kernel_cast_x_type]; - mul.wide.s32 %rd3, %r5, 4; - add.u64 %rd4, %rd2, %rd3; - ld.global.s32 %r7, [%rd4+0]; - cvt.rn.f32.s32 %f1, %r7; - .loc 16 29 0 - ld.param.u64 %rd5, [__cudaparm_kernel_cast_x_x]; - mul.lo.s32 %r8, %r5, 3; - cvt.s64.s32 %rd6, %r8; - mul.wide.s32 %rd7, %r8, 8; - add.u64 %rd8, %rd5, %rd7; - ld.global.f64 %fd1, [%rd8+8]; - cvt.rn.ftz.f32.f64 %f2, %fd1; - .loc 16 30 0 - ld.global.f64 %fd2, [%rd8+16]; - cvt.rn.ftz.f32.f64 %f3, %fd2; - .loc 16 31 0 - ld.param.u64 %rd9, [__cudaparm_kernel_cast_x_x_type]; - mul.wide.s32 %rd10, %r5, 16; - add.u64 %rd11, %rd9, %rd10; - ld.global.f64 %fd3, [%rd8+0]; - cvt.rn.ftz.f32.f64 %f4, %fd3; - st.global.v4.f32 [%rd11+0], {%f4,%f2,%f3,%f1}; -$Lt_0_1026: - .loc 16 33 0 - exit; -$LDWend_kernel_cast_x: - } // kernel_cast_x - diff --git a/lib/gpu/atom_ptx.h b/lib/gpu/atom_ptx.h deleted file mode 100644 index 1d69622a18..0000000000 --- a/lib/gpu/atom_ptx.h +++ /dev/null @@ -1,56 +0,0 @@ -const char * atom = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\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 16 21 0\n" -"$LDWbegin_kernel_cast_x:\n" -" cvt.s32.u32 %r1, %ctaid.x;\n" -" cvt.s32.u32 %r2, %ntid.x;\n" -" mul24.lo.s32 %r3, %r1, %r2;\n" -" mov.u32 %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 16 26 0\n" -" cvt.s64.s32 %rd1, %r5;\n" -" ld.param.u64 %rd2, [__cudaparm_kernel_cast_x_type];\n" -" mul.wide.s32 %rd3, %r5, 4;\n" -" add.u64 %rd4, %rd2, %rd3;\n" -" ld.global.s32 %r7, [%rd4+0];\n" -" cvt.rn.f32.s32 %f1, %r7;\n" -" .loc 16 29 0\n" -" ld.param.u64 %rd5, [__cudaparm_kernel_cast_x_x];\n" -" mul.lo.s32 %r8, %r5, 3;\n" -" cvt.s64.s32 %rd6, %r8;\n" -" mul.wide.s32 %rd7, %r8, 8;\n" -" add.u64 %rd8, %rd5, %rd7;\n" -" ld.global.f64 %fd1, [%rd8+8];\n" -" cvt.rn.ftz.f32.f64 %f2, %fd1;\n" -" .loc 16 30 0\n" -" ld.global.f64 %fd2, [%rd8+16];\n" -" cvt.rn.ftz.f32.f64 %f3, %fd2;\n" -" .loc 16 31 0\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_cast_x_x_type];\n" -" mul.wide.s32 %rd10, %r5, 16;\n" -" add.u64 %rd11, %rd9, %rd10;\n" -" ld.global.f64 %fd3, [%rd8+0];\n" -" cvt.rn.ftz.f32.f64 %f4, %fd3;\n" -" st.global.v4.f32 [%rd11+0], {%f4,%f2,%f3,%f1};\n" -"$Lt_0_1026:\n" -" .loc 16 33 0\n" -" exit;\n" -"$LDWend_kernel_cast_x:\n" -" }\n" -; diff --git a/lib/gpu/cg_cmm.ptx b/lib/gpu/cg_cmm.ptx deleted file mode 100644 index cffb2c0e97..0000000000 --- a/lib/gpu/cg_cmm.ptx +++ /dev/null @@ -1,958 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009eb0_00000000-9_lal_cg_cmm.cpp3.i (/home/sjplimp/ccBI#.oK8Qzh) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009eb0_00000000-8_lal_cg_cmm.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_cg_cmm.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<72>; - .reg .u64 %rd<63>; - .reg .f32 %f<111>; - .reg .pred %p<21>; - .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32608_55_non_const_red_acc108[3072]; - // __cuda_local_var_32543_10_non_const_f = 48 - // __cuda_local_var_32545_9_non_const_virial = 16 - .loc 16 31 0 -$LDWbegin_kernel_pair: - .loc 16 36 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 37 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 38 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 39 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4}; - .loc 16 46 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_28930; - .loc 16 51 0 - ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - cvt.s64.s32 %rd4, %r8; - mul.wide.s32 %rd5, %r8, 4; - ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd7, %rd5, %rd6; - add.u64 %rd8, %rd3, %rd7; - ld.global.s32 %r11, [%rd8+0]; - sub.s32 %r12, %r1, 1; - and.b32 %r13, %r12, %r2; - cvt.s64.s32 %rd9, %r13; - mul.wide.s32 %rd10, %r13, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd6; - @%p2 bra $Lt_0_20994; - cvt.s32.s64 %r14, %rd2; - mul.lo.s32 %r15, %r14, %r1; - mov.s32 %r16, %r15; - mul.lo.s32 %r17, %r12, %r8; - add.s32 %r18, %r14, %r17; - cvt.s64.s32 %rd12, %r18; - mul.wide.s32 %rd13, %r18, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r19, %r12, %r11; - cvt.s64.s32 %rd15, %r19; - div.s32 %r20, %r11, %r1; - mul.lo.s32 %r21, %r15, %r20; - cvt.s64.s32 %rd16, %r21; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_20738; -$Lt_0_20994: - add.u64 %rd21, %rd3, %rd8; - ld.global.s32 %r22, [%rd21+0]; - cvt.s64.s32 %rd22, %r22; - mul.wide.s32 %rd23, %r22, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r11; - mul.wide.s32 %rd26, %r11, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r16, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_20738: - .loc 16 54 0 - ld.global.s32 %r23, [%rd7+0]; - mov.u32 %r24, %r23; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f21, %f17; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_30466; - cvt.rzi.ftz.s32.f32 %r31, %f24; - cvt.s64.s32 %rd27, %r16; - ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r33, %r32, %r31; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92; -$Lt_0_21762: - // Loop body line 54, nesting depth: 1, estimated iterations: unknown - .loc 16 60 0 - ld.global.s32 %r34, [%rd20+0]; - .loc 16 61 0 - shr.s32 %r35, %r34, 30; - and.b32 %r36, %r35, 3; - cvt.s64.s32 %rd30, %r36; - mul.wide.s32 %rd31, %r36, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f29, [%rd32+0]; - .loc 16 64 0 - and.b32 %r37, %r34, 1073741823; - mov.u32 %r38, %r37; - mov.s32 %r39, 0; - mov.u32 %r40, %r39; - mov.s32 %r41, 0; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}]; - mov.f32 %f34, %f30; - mov.f32 %f35, %f31; - mov.f32 %f36, %f32; - mov.f32 %f37, %f33; - cvt.rzi.ftz.s32.f32 %r45, %f37; - sub.ftz.f32 %f38, %f22, %f35; - sub.ftz.f32 %f39, %f21, %f34; - sub.ftz.f32 %f40, %f23, %f36; - mul.ftz.f32 %f41, %f38, %f38; - fma.rn.ftz.f32 %f42, %f39, %f39, %f41; - fma.rn.ftz.f32 %f43, %f40, %f40, %f42; - add.s32 %r46, %r45, %r33; - cvt.s64.s32 %rd33, %r46; - mul.wide.s32 %rd34, %r46, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f44, [%rd35+0]; - setp.gt.ftz.f32 %p4, %f44, %f43; - @!%p4 bra $Lt_0_24066; - rcp.approx.ftz.f32 %f45, %f43; - ld.global.f32 %f46, [%rd35+4]; - mov.f32 %f47, 0f40000000; // 2 - setp.eq.ftz.f32 %p5, %f46, %f47; - @!%p5 bra $Lt_0_22786; - .loc 16 79 0 - mul.ftz.f32 %f48, %f45, %f45; - mov.f32 %f49, %f48; - .loc 16 80 0 - mul.ftz.f32 %f50, %f48, %f48; - bra.uni $Lt_0_23042; -$Lt_0_22786: - mov.f32 %f51, 0f3f800000; // 1 - setp.eq.ftz.f32 %p6, %f46, %f51; - @!%p6 bra $Lt_0_23298; - .loc 16 82 0 - sqrt.approx.ftz.f32 %f52, %f45; - mul.ftz.f32 %f53, %f45, %f52; - mov.f32 %f50, %f53; - .loc 16 83 0 - mul.ftz.f32 %f49, %f53, %f53; - bra.uni $Lt_0_23042; -$Lt_0_23298: - .loc 16 85 0 - mul.ftz.f32 %f54, %f45, %f45; - mul.ftz.f32 %f55, %f45, %f54; - mov.f32 %f49, %f55; - .loc 16 86 0 - mov.f32 %f50, %f55; -$Lt_0_23042: -$Lt_0_22530: - .loc 16 88 0 - mul.ftz.f32 %f56, %f45, %f29; - mul.ftz.f32 %f57, %f49, %f56; - ld.global.v2.f32 {%f58,%f59}, [%rd35+8]; - mul.ftz.f32 %f60, %f58, %f50; - sub.ftz.f32 %f61, %f60, %f59; - mul.ftz.f32 %f62, %f57, %f61; - .loc 16 90 0 - fma.rn.ftz.f32 %f27, %f39, %f62, %f27; - .loc 16 91 0 - fma.rn.ftz.f32 %f26, %f38, %f62, %f26; - .loc 16 92 0 - fma.rn.ftz.f32 %f25, %f40, %f62, %f25; - ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r48, 0; - setp.le.s32 %p7, %r47, %r48; - @%p7 bra $Lt_0_23554; - .loc 16 94 0 - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - ld.global.v4.f32 {%f63,%f64,%f65,_}, [%rd37+0]; - mul.ftz.f32 %f66, %f29, %f49; - mul.ftz.f32 %f67, %f63, %f50; - sub.ftz.f32 %f68, %f67, %f64; - mul.ftz.f32 %f69, %f66, %f68; - sub.ftz.f32 %f70, %f69, %f65; - add.ftz.f32 %f28, %f28, %f70; -$Lt_0_23554: - ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r50, 0; - setp.le.s32 %p8, %r49, %r50; - @%p8 bra $Lt_0_24066; - .loc 16 97 0 - mov.f32 %f71, %f6; - mul.ftz.f32 %f72, %f39, %f39; - fma.rn.ftz.f32 %f73, %f62, %f72, %f71; - mov.f32 %f6, %f73; - .loc 16 98 0 - mov.f32 %f74, %f8; - fma.rn.ftz.f32 %f75, %f62, %f41, %f74; - mov.f32 %f8, %f75; - .loc 16 99 0 - mov.f32 %f76, %f10; - mul.ftz.f32 %f77, %f40, %f40; - fma.rn.ftz.f32 %f78, %f62, %f77, %f76; - mov.f32 %f10, %f78; - .loc 16 100 0 - mov.f32 %f79, %f12; - mul.ftz.f32 %f80, %f38, %f39; - fma.rn.ftz.f32 %f81, %f62, %f80, %f79; - mov.f32 %f12, %f81; - .loc 16 101 0 - mov.f32 %f82, %f14; - mul.ftz.f32 %f83, %f39, %f40; - fma.rn.ftz.f32 %f84, %f62, %f83, %f82; - mov.f32 %f14, %f84; - .loc 16 102 0 - mul.ftz.f32 %f85, %f38, %f40; - fma.rn.ftz.f32 %f15, %f62, %f85, %f15; - mov.f32 %f16, %f15; -$Lt_0_24066: -$Lt_0_22018: - .loc 16 58 0 - mul.lo.u64 %rd38, %rd27, 4; - add.u64 %rd20, %rd20, %rd38; - setp.lt.u64 %p9, %rd20, %rd19; - @%p9 bra $Lt_0_21762; - bra.uni $Lt_0_21250; -$Lt_0_30466: - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 -$Lt_0_21250: - mov.u32 %r51, 1; - setp.le.s32 %p10, %r1, %r51; - @%p10 bra $Lt_0_26882; - .loc 16 107 0 - mov.u64 %rd39, __cuda___cuda_local_var_32608_55_non_const_red_acc108; - cvt.s64.s32 %rd40, %r2; - mul.wide.s32 %rd41, %r2, 4; - add.u64 %rd42, %rd39, %rd41; - mov.f32 %f86, %f27; - st.shared.f32 [%rd42+0], %f86; - mov.f32 %f87, %f26; - st.shared.f32 [%rd42+512], %f87; - mov.f32 %f88, %f25; - st.shared.f32 [%rd42+1024], %f88; - mov.f32 %f89, %f28; - st.shared.f32 [%rd42+1536], %f89; - shr.s32 %r52, %r1, 31; - mov.s32 %r53, 1; - and.b32 %r54, %r52, %r53; - add.s32 %r55, %r54, %r1; - shr.s32 %r56, %r55, 1; - mov.s32 %r57, %r56; - mov.u32 %r58, 0; - setp.ne.u32 %p11, %r56, %r58; - @!%p11 bra $Lt_0_25346; -$Lt_0_25858: - setp.ge.u32 %p12, %r13, %r57; - @%p12 bra $Lt_0_26114; - add.u32 %r59, %r2, %r57; - cvt.u64.u32 %rd43, %r59; - mul.wide.u32 %rd44, %r59, 4; - add.u64 %rd45, %rd39, %rd44; - ld.shared.f32 %f90, [%rd45+0]; - add.ftz.f32 %f86, %f90, %f86; - st.shared.f32 [%rd42+0], %f86; - ld.shared.f32 %f91, [%rd45+512]; - add.ftz.f32 %f87, %f91, %f87; - st.shared.f32 [%rd42+512], %f87; - ld.shared.f32 %f92, [%rd45+1024]; - add.ftz.f32 %f88, %f92, %f88; - st.shared.f32 [%rd42+1024], %f88; - ld.shared.f32 %f93, [%rd45+1536]; - add.ftz.f32 %f89, %f93, %f89; - st.shared.f32 [%rd42+1536], %f89; -$Lt_0_26114: - shr.u32 %r57, %r57, 1; - mov.u32 %r60, 0; - setp.ne.u32 %p13, %r57, %r60; - @%p13 bra $Lt_0_25858; -$Lt_0_25346: - mov.f32 %f27, %f86; - mov.f32 %f26, %f87; - mov.f32 %f25, %f88; - mov.f32 %f28, %f89; - ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r62, 0; - setp.le.s32 %p14, %r61, %r62; - @%p14 bra $Lt_0_26882; - mov.f32 %f86, %f6; - st.shared.f32 [%rd42+0], %f86; - mov.f32 %f87, %f8; - st.shared.f32 [%rd42+512], %f87; - mov.f32 %f88, %f10; - st.shared.f32 [%rd42+1024], %f88; - mov.f32 %f89, %f12; - st.shared.f32 [%rd42+1536], %f89; - mov.f32 %f94, %f14; - st.shared.f32 [%rd42+2048], %f94; - mov.f32 %f95, %f15; - st.shared.f32 [%rd42+2560], %f95; - mov.s32 %r63, %r56; - @!%p11 bra $Lt_0_27394; -$Lt_0_27906: - setp.ge.u32 %p15, %r13, %r63; - @%p15 bra $Lt_0_28162; - add.u32 %r64, %r2, %r63; - cvt.u64.u32 %rd46, %r64; - mul.wide.u32 %rd47, %r64, 4; - add.u64 %rd48, %rd39, %rd47; - ld.shared.f32 %f96, [%rd48+0]; - add.ftz.f32 %f86, %f96, %f86; - st.shared.f32 [%rd42+0], %f86; - ld.shared.f32 %f97, [%rd48+512]; - add.ftz.f32 %f87, %f97, %f87; - st.shared.f32 [%rd42+512], %f87; - ld.shared.f32 %f98, [%rd48+1024]; - add.ftz.f32 %f88, %f98, %f88; - st.shared.f32 [%rd42+1024], %f88; - ld.shared.f32 %f99, [%rd48+1536]; - add.ftz.f32 %f89, %f99, %f89; - st.shared.f32 [%rd42+1536], %f89; - ld.shared.f32 %f100, [%rd48+2048]; - add.ftz.f32 %f94, %f100, %f94; - st.shared.f32 [%rd42+2048], %f94; - ld.shared.f32 %f101, [%rd48+2560]; - add.ftz.f32 %f95, %f101, %f95; - st.shared.f32 [%rd42+2560], %f95; -$Lt_0_28162: - shr.u32 %r63, %r63, 1; - mov.u32 %r65, 0; - setp.ne.u32 %p16, %r63, %r65; - @%p16 bra $Lt_0_27906; -$Lt_0_27394: - mov.f32 %f6, %f86; - mov.f32 %f8, %f87; - mov.f32 %f10, %f88; - mov.f32 %f12, %f89; - mov.f32 %f14, %f94; - mov.f32 %f16, %f95; -$Lt_0_26882: -$Lt_0_24834: - mov.u32 %r66, 0; - setp.ne.s32 %p17, %r13, %r66; - @%p17 bra $Lt_0_28930; - ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd50, %rd49, %rd5; - ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r68, 0; - setp.le.s32 %p18, %r67, %r68; - @%p18 bra $Lt_0_29442; - st.global.f32 [%rd50+0], %f28; - cvt.s64.s32 %rd51, %r9; - mul.wide.s32 %rd52, %r9, 4; - add.u64 %rd50, %rd50, %rd52; -$Lt_0_29442: - ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r70, 0; - setp.le.s32 %p19, %r69, %r70; - @%p19 bra $Lt_0_29954; - mov.f32 %f102, %f6; - st.global.f32 [%rd50+0], %f102; - cvt.s64.s32 %rd53, %r9; - mul.wide.s32 %rd54, %r9, 4; - add.u64 %rd55, %rd54, %rd50; - mov.f32 %f103, %f8; - st.global.f32 [%rd55+0], %f103; - add.u64 %rd56, %rd54, %rd55; - mov.f32 %f104, %f10; - st.global.f32 [%rd56+0], %f104; - add.u64 %rd57, %rd54, %rd56; - mov.f32 %f105, %f12; - st.global.f32 [%rd57+0], %f105; - add.u64 %rd50, %rd54, %rd57; - mov.f32 %f106, %f14; - st.global.f32 [%rd50+0], %f106; - mov.f32 %f107, %f16; - add.u64 %rd58, %rd54, %rd50; - st.global.f32 [%rd58+0], %f107; -$Lt_0_29954: - ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd60, %rd4, 16; - add.u64 %rd61, %rd59, %rd60; - mov.f32 %f108, %f109; - st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f108}; -$Lt_0_28930: -$Lt_0_20226: - .loc 16 110 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<74>; - .reg .u64 %rd<75>; - .reg .f32 %f<118>; - .reg .pred %p<24>; - .shared .align 4 .b8 __cuda___cuda_local_var_32625_33_non_const_sp_lj3268[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_32623_34_non_const_lj13296[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32624_34_non_const_lj35232[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32702_55_non_const_red_acc7168[3072]; - // __cuda_local_var_32635_10_non_const_f = 48 - // __cuda_local_var_32637_9_non_const_virial = 16 - .loc 16 118 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_22530; - .loc 16 126 0 - mov.u64 %rd1, __cuda___cuda_local_var_32625_33_non_const_sp_lj3268; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_22530: - mov.u64 %rd1, __cuda___cuda_local_var_32625_33_non_const_sp_lj3268; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_23042; - .loc 16 128 0 - mov.u64 %rd7, __cuda___cuda_local_var_32623_34_non_const_lj13296; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_23554; - .loc 16 130 0 - mov.u64 %rd13, __cuda___cuda_local_var_32624_34_non_const_lj35232; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_23554: - mov.u64 %rd13, __cuda___cuda_local_var_32624_34_non_const_lj35232; -$Lt_1_23042: - mov.u64 %rd13, __cuda___cuda_local_var_32624_34_non_const_lj35232; - mov.u64 %rd7, __cuda___cuda_local_var_32623_34_non_const_lj13296; - .loc 16 138 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 140 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_32770; - .loc 16 145 0 - ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd17, %r14; - mul.wide.s32 %rd18, %r14, 4; - cvt.s64.s32 %rd19, %r12; - mul.wide.s32 %rd20, %r12, 4; - ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd22, %rd20, %rd21; - add.u64 %rd23, %rd18, %rd22; - ld.global.s32 %r15, [%rd23+0]; - sub.s32 %r16, %r6, 1; - and.b32 %r17, %r16, %r1; - cvt.s64.s32 %rd24, %r17; - mul.wide.s32 %rd25, %r17, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd26, %rd21; - @%p5 bra $Lt_1_24834; - cvt.s32.s64 %r18, %rd17; - mul.lo.s32 %r19, %r18, %r6; - mov.s32 %r20, %r19; - mul.lo.s32 %r21, %r16, %r12; - add.s32 %r22, %r18, %r21; - cvt.s64.s32 %rd27, %r22; - mul.wide.s32 %rd28, %r22, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r23, %r16, %r15; - cvt.s64.s32 %rd30, %r23; - div.s32 %r24, %r15, %r6; - mul.lo.s32 %r25, %r19, %r24; - cvt.s64.s32 %rd31, %r25; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_24578; -$Lt_1_24834: - add.u64 %rd36, %rd18, %rd23; - ld.global.s32 %r26, [%rd36+0]; - cvt.s64.s32 %rd37, %r26; - mul.wide.s32 %rd38, %r26, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r15; - mul.wide.s32 %rd41, %r15, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r20, %r6; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_24578: - .loc 16 148 0 - ld.global.s32 %r27, [%rd22+0]; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - setp.ge.u64 %p6, %rd35, %rd34; - @%p6 bra $Lt_1_34306; - cvt.rzi.ftz.s32.f32 %r35, %f29; - cvt.s64.s32 %rd42, %r20; - mul.lo.s32 %r36, %r35, 11; - cvt.rn.f32.s32 %f30, %r36; - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_25602: - // Loop body line 148, nesting depth: 1, estimated iterations: unknown - .loc 16 155 0 - ld.global.s32 %r37, [%rd35+0]; - .loc 16 156 0 - shr.s32 %r38, %r37, 30; - and.b32 %r39, %r38, 3; - cvt.s64.s32 %rd43, %r39; - mul.wide.s32 %rd44, %r39, 4; - add.u64 %rd45, %rd1, %rd44; - ld.shared.f32 %f35, [%rd45+0]; - .loc 16 159 0 - and.b32 %r40, %r37, 1073741823; - mov.u32 %r41, %r40; - mov.s32 %r42, 0; - mov.u32 %r43, %r42; - mov.s32 %r44, 0; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r41,%r43,%r45,%r47}]; - mov.f32 %f40, %f36; - mov.f32 %f41, %f37; - mov.f32 %f42, %f38; - mov.f32 %f43, %f39; - sub.ftz.f32 %f44, %f27, %f41; - sub.ftz.f32 %f45, %f26, %f40; - sub.ftz.f32 %f46, %f28, %f42; - mul.ftz.f32 %f47, %f44, %f44; - fma.rn.ftz.f32 %f48, %f45, %f45, %f47; - fma.rn.ftz.f32 %f49, %f46, %f46, %f48; - add.ftz.f32 %f50, %f30, %f43; - cvt.rzi.ftz.s32.f32 %r48, %f50; - cvt.s64.s32 %rd46, %r48; - mul.wide.s32 %rd47, %r48, 16; - add.u64 %rd48, %rd47, %rd7; - ld.shared.f32 %f51, [%rd48+0]; - setp.gt.ftz.f32 %p7, %f51, %f49; - @!%p7 bra $Lt_1_27906; - rcp.approx.ftz.f32 %f52, %f49; - ld.shared.f32 %f53, [%rd48+4]; - mov.f32 %f54, 0f40000000; // 2 - setp.eq.ftz.f32 %p8, %f53, %f54; - @!%p8 bra $Lt_1_26626; - .loc 16 173 0 - mul.ftz.f32 %f55, %f52, %f52; - mov.f32 %f56, %f55; - .loc 16 174 0 - mul.ftz.f32 %f57, %f55, %f55; - bra.uni $Lt_1_26882; -$Lt_1_26626: - mov.f32 %f58, 0f3f800000; // 1 - setp.eq.ftz.f32 %p9, %f53, %f58; - @!%p9 bra $Lt_1_27138; - .loc 16 176 0 - sqrt.approx.ftz.f32 %f59, %f52; - mul.ftz.f32 %f60, %f52, %f59; - mov.f32 %f57, %f60; - .loc 16 177 0 - mul.ftz.f32 %f56, %f60, %f60; - bra.uni $Lt_1_26882; -$Lt_1_27138: - .loc 16 179 0 - mul.ftz.f32 %f61, %f52, %f52; - mul.ftz.f32 %f62, %f52, %f61; - mov.f32 %f56, %f62; - .loc 16 180 0 - mov.f32 %f57, %f62; -$Lt_1_26882: -$Lt_1_26370: - .loc 16 182 0 - mul.ftz.f32 %f63, %f52, %f35; - mul.ftz.f32 %f64, %f56, %f63; - ld.shared.v2.f32 {%f65,%f66}, [%rd48+8]; - mul.ftz.f32 %f67, %f65, %f57; - sub.ftz.f32 %f68, %f67, %f66; - mul.ftz.f32 %f69, %f64, %f68; - .loc 16 184 0 - fma.rn.ftz.f32 %f33, %f45, %f69, %f33; - .loc 16 185 0 - fma.rn.ftz.f32 %f32, %f44, %f69, %f32; - .loc 16 186 0 - fma.rn.ftz.f32 %f31, %f46, %f69, %f31; - ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r50, 0; - setp.le.s32 %p10, %r49, %r50; - @%p10 bra $Lt_1_27394; - .loc 16 188 0 - add.u64 %rd49, %rd47, %rd13; - ld.shared.v4.f32 {%f70,%f71,%f72,_}, [%rd49+0]; - mul.ftz.f32 %f73, %f35, %f56; - mul.ftz.f32 %f74, %f70, %f57; - sub.ftz.f32 %f75, %f74, %f71; - mul.ftz.f32 %f76, %f73, %f75; - sub.ftz.f32 %f77, %f76, %f72; - add.ftz.f32 %f34, %f34, %f77; -$Lt_1_27394: - ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r52, 0; - setp.le.s32 %p11, %r51, %r52; - @%p11 bra $Lt_1_27906; - .loc 16 191 0 - mov.f32 %f78, %f11; - mul.ftz.f32 %f79, %f45, %f45; - fma.rn.ftz.f32 %f80, %f69, %f79, %f78; - mov.f32 %f11, %f80; - .loc 16 192 0 - mov.f32 %f81, %f13; - fma.rn.ftz.f32 %f82, %f69, %f47, %f81; - mov.f32 %f13, %f82; - .loc 16 193 0 - mov.f32 %f83, %f15; - mul.ftz.f32 %f84, %f46, %f46; - fma.rn.ftz.f32 %f85, %f69, %f84, %f83; - mov.f32 %f15, %f85; - .loc 16 194 0 - mov.f32 %f86, %f17; - mul.ftz.f32 %f87, %f44, %f45; - fma.rn.ftz.f32 %f88, %f69, %f87, %f86; - mov.f32 %f17, %f88; - .loc 16 195 0 - mov.f32 %f89, %f19; - mul.ftz.f32 %f90, %f45, %f46; - fma.rn.ftz.f32 %f91, %f69, %f90, %f89; - mov.f32 %f19, %f91; - .loc 16 196 0 - mul.ftz.f32 %f92, %f44, %f46; - fma.rn.ftz.f32 %f20, %f69, %f92, %f20; - mov.f32 %f21, %f20; -$Lt_1_27906: -$Lt_1_25858: - .loc 16 153 0 - mul.lo.u64 %rd50, %rd42, 4; - add.u64 %rd35, %rd35, %rd50; - setp.lt.u64 %p12, %rd35, %rd34; - @%p12 bra $Lt_1_25602; - bra.uni $Lt_1_25090; -$Lt_1_34306: - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_25090: - mov.u32 %r53, 1; - setp.le.s32 %p13, %r6, %r53; - @%p13 bra $Lt_1_30722; - .loc 16 201 0 - mov.u64 %rd51, __cuda___cuda_local_var_32702_55_non_const_red_acc7168; - cvt.s64.s32 %rd52, %r1; - mul.wide.s32 %rd53, %r1, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f93, %f33; - st.shared.f32 [%rd54+0], %f93; - mov.f32 %f94, %f32; - st.shared.f32 [%rd54+512], %f94; - mov.f32 %f95, %f31; - st.shared.f32 [%rd54+1024], %f95; - mov.f32 %f96, %f34; - st.shared.f32 [%rd54+1536], %f96; - shr.s32 %r54, %r6, 31; - mov.s32 %r55, 1; - and.b32 %r56, %r54, %r55; - add.s32 %r57, %r56, %r6; - shr.s32 %r58, %r57, 1; - mov.s32 %r59, %r58; - mov.u32 %r60, 0; - setp.ne.u32 %p14, %r58, %r60; - @!%p14 bra $Lt_1_29186; -$Lt_1_29698: - setp.ge.u32 %p15, %r17, %r59; - @%p15 bra $Lt_1_29954; - add.u32 %r61, %r1, %r59; - cvt.u64.u32 %rd55, %r61; - mul.wide.u32 %rd56, %r61, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f97, [%rd57+0]; - add.ftz.f32 %f93, %f97, %f93; - st.shared.f32 [%rd54+0], %f93; - ld.shared.f32 %f98, [%rd57+512]; - add.ftz.f32 %f94, %f98, %f94; - st.shared.f32 [%rd54+512], %f94; - ld.shared.f32 %f99, [%rd57+1024]; - add.ftz.f32 %f95, %f99, %f95; - st.shared.f32 [%rd54+1024], %f95; - ld.shared.f32 %f100, [%rd57+1536]; - add.ftz.f32 %f96, %f100, %f96; - st.shared.f32 [%rd54+1536], %f96; -$Lt_1_29954: - shr.u32 %r59, %r59, 1; - mov.u32 %r62, 0; - setp.ne.u32 %p16, %r59, %r62; - @%p16 bra $Lt_1_29698; -$Lt_1_29186: - mov.f32 %f33, %f93; - mov.f32 %f32, %f94; - mov.f32 %f31, %f95; - mov.f32 %f34, %f96; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p17, %r63, %r64; - @%p17 bra $Lt_1_30722; - mov.f32 %f93, %f11; - st.shared.f32 [%rd54+0], %f93; - mov.f32 %f94, %f13; - st.shared.f32 [%rd54+512], %f94; - mov.f32 %f95, %f15; - st.shared.f32 [%rd54+1024], %f95; - mov.f32 %f96, %f17; - st.shared.f32 [%rd54+1536], %f96; - mov.f32 %f101, %f19; - st.shared.f32 [%rd54+2048], %f101; - mov.f32 %f102, %f20; - st.shared.f32 [%rd54+2560], %f102; - mov.s32 %r65, %r58; - @!%p14 bra $Lt_1_31234; -$Lt_1_31746: - setp.ge.u32 %p18, %r17, %r65; - @%p18 bra $Lt_1_32002; - add.u32 %r66, %r1, %r65; - cvt.u64.u32 %rd58, %r66; - mul.wide.u32 %rd59, %r66, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f103, [%rd60+0]; - add.ftz.f32 %f93, %f103, %f93; - st.shared.f32 [%rd54+0], %f93; - ld.shared.f32 %f104, [%rd60+512]; - add.ftz.f32 %f94, %f104, %f94; - st.shared.f32 [%rd54+512], %f94; - ld.shared.f32 %f105, [%rd60+1024]; - add.ftz.f32 %f95, %f105, %f95; - st.shared.f32 [%rd54+1024], %f95; - ld.shared.f32 %f106, [%rd60+1536]; - add.ftz.f32 %f96, %f106, %f96; - st.shared.f32 [%rd54+1536], %f96; - ld.shared.f32 %f107, [%rd60+2048]; - add.ftz.f32 %f101, %f107, %f101; - st.shared.f32 [%rd54+2048], %f101; - ld.shared.f32 %f108, [%rd60+2560]; - add.ftz.f32 %f102, %f108, %f102; - st.shared.f32 [%rd54+2560], %f102; -$Lt_1_32002: - shr.u32 %r65, %r65, 1; - mov.u32 %r67, 0; - setp.ne.u32 %p19, %r65, %r67; - @%p19 bra $Lt_1_31746; -$Lt_1_31234: - mov.f32 %f11, %f93; - mov.f32 %f13, %f94; - mov.f32 %f15, %f95; - mov.f32 %f17, %f96; - mov.f32 %f19, %f101; - mov.f32 %f21, %f102; -$Lt_1_30722: -$Lt_1_28674: - mov.u32 %r68, 0; - setp.ne.s32 %p20, %r17, %r68; - @%p20 bra $Lt_1_32770; - ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd62, %rd61, %rd20; - ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r70, 0; - setp.le.s32 %p21, %r69, %r70; - @%p21 bra $Lt_1_33282; - st.global.f32 [%rd62+0], %f34; - cvt.s64.s32 %rd63, %r13; - mul.wide.s32 %rd64, %r13, 4; - add.u64 %rd62, %rd62, %rd64; -$Lt_1_33282: - ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r72, 0; - setp.le.s32 %p22, %r71, %r72; - @%p22 bra $Lt_1_33794; - mov.f32 %f109, %f11; - st.global.f32 [%rd62+0], %f109; - cvt.s64.s32 %rd65, %r13; - mul.wide.s32 %rd66, %r13, 4; - add.u64 %rd67, %rd66, %rd62; - mov.f32 %f110, %f13; - st.global.f32 [%rd67+0], %f110; - add.u64 %rd68, %rd66, %rd67; - mov.f32 %f111, %f15; - st.global.f32 [%rd68+0], %f111; - add.u64 %rd69, %rd66, %rd68; - mov.f32 %f112, %f17; - st.global.f32 [%rd69+0], %f112; - add.u64 %rd62, %rd66, %rd69; - mov.f32 %f113, %f19; - st.global.f32 [%rd62+0], %f113; - mov.f32 %f114, %f21; - add.u64 %rd70, %rd66, %rd62; - st.global.f32 [%rd70+0], %f114; -$Lt_1_33794: - ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd72, %rd19, 16; - add.u64 %rd73, %rd71, %rd72; - mov.f32 %f115, %f116; - st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f115}; -$Lt_1_32770: -$Lt_1_24066: - .loc 16 204 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/cg_cmm_long.ptx b/lib/gpu/cg_cmm_long.ptx deleted file mode 100644 index 00f627aca7..0000000000 --- a/lib/gpu/cg_cmm_long.ptx +++ /dev/null @@ -1,1189 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009ef5_00000000-9_lal_cg_cmm_long.cpp3.i (/home/sjplimp/ccBI#.OMEXPd) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009ef5_00000000-8_lal_cg_cmm_long.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_cg_cmm_long.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_q_, - .param .f32 __cudaparm_kernel_pair_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_qqrd2e, - .param .f32 __cudaparm_kernel_pair_g_ewald, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<86>; - .reg .u64 %rd<66>; - .reg .f32 %f<175>; - .reg .pred %p<23>; - .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32]; - .shared .align 4 .b8 __cuda___cuda_local_var_32642_55_non_const_red_acc144[3072]; - // __cuda_local_var_32553_10_non_const_f = 64 - // __cuda_local_var_32555_9_non_const_virial = 16 - // __cuda_local_var_32588_43_non_const_inv1 = 40 - // __cuda_local_var_32588_49_non_const_inv2 = 44 - // __cuda_local_var_32588_55_non_const_prefactor = 52 - // __cuda_local_var_32588_66_non_const__erfc = 48 - .loc 16 36 0 -$LDWbegin_kernel_pair: - .loc 16 41 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 42 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 43 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 44 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4}; - .loc 16 45 0 - ld.global.f32 %f5, [%rd1+16]; - .loc 16 46 0 - ld.global.f32 %f6, [%rd1+20]; - .loc 16 47 0 - ld.global.f32 %f7, [%rd1+24]; - .loc 16 48 0 - ld.global.f32 %f8, [%rd1+28]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8}; - .loc 16 56 0 - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - mov.f32 %f17, 0f00000000; // 0 - mov.f32 %f18, %f17; - mov.f32 %f19, 0f00000000; // 0 - mov.f32 %f20, %f19; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_33538; - .loc 16 61 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd5, %rd3, %rd4; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - sub.s32 %r13, %r1, 1; - and.b32 %r14, %r13, %r2; - cvt.s64.s32 %rd9, %r14; - mul.wide.s32 %rd10, %r14, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd4; - @%p2 bra $Lt_0_24066; - cvt.s32.s64 %r15, %rd6; - mul.lo.s32 %r16, %r15, %r1; - mov.s32 %r17, %r16; - mul.lo.s32 %r18, %r13, %r8; - add.s32 %r19, %r15, %r18; - cvt.s64.s32 %rd12, %r19; - mul.wide.s32 %rd13, %r19, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r20, %r13, %r12; - cvt.s64.s32 %rd15, %r20; - div.s32 %r21, %r12, %r1; - mul.lo.s32 %r22, %r16, %r21; - cvt.s64.s32 %rd16, %r22; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_23810; -$Lt_0_24066: - add.u64 %rd21, %rd7, %rd8; - ld.global.s32 %r23, [%rd21+0]; - cvt.s64.s32 %rd22, %r23; - mul.wide.s32 %rd23, %r23, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r12; - mul.wide.s32 %rd26, %r12, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r17, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_23810: - .loc 16 64 0 - mov.u32 %r24, %r10; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f25, %f21; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - .loc 16 65 0 - mov.u32 %r31, %r10; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}]; - mov.f32 %f33, %f29; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_35074; - cvt.rzi.ftz.s32.f32 %r38, %f28; - cvt.s64.s32 %rd27, %r17; - ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r40, %r39, %r38; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112; -$Lt_0_24834: - // Loop body line 65, nesting depth: 1, estimated iterations: unknown - .loc 16 69 0 - ld.global.s32 %r41, [%rd20+0]; - .loc 16 72 0 - shr.s32 %r42, %r41, 30; - and.b32 %r43, %r42, 3; - cvt.s64.s32 %rd30, %r43; - mul.wide.s32 %rd31, %r43, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f39, [%rd32+0]; - .loc 16 73 0 - mov.f32 %f40, 0f3f800000; // 1 - ld.shared.f32 %f41, [%rd32+16]; - sub.ftz.f32 %f42, %f40, %f41; - .loc 16 76 0 - and.b32 %r44, %r41, 1073741823; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - mov.s32 %r48, 0; - mov.u32 %r49, %r48; - mov.s32 %r50, 0; - mov.u32 %r51, %r50; - tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r45,%r47,%r49,%r51}]; - mov.f32 %f47, %f43; - mov.f32 %f48, %f44; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - cvt.rzi.ftz.s32.f32 %r52, %f50; - sub.ftz.f32 %f51, %f26, %f48; - sub.ftz.f32 %f52, %f25, %f47; - sub.ftz.f32 %f53, %f27, %f49; - mul.ftz.f32 %f54, %f51, %f51; - fma.rn.ftz.f32 %f55, %f52, %f52, %f54; - fma.rn.ftz.f32 %f56, %f53, %f53, %f55; - add.s32 %r53, %r52, %r40; - cvt.s64.s32 %rd33, %r53; - mul.wide.s32 %rd34, %r53, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f57, [%rd35+0]; - setp.gt.ftz.f32 %p4, %f57, %f56; - @!%p4 bra $Lt_0_28674; - rcp.approx.ftz.f32 %f58, %f56; - ld.global.f32 %f59, [%rd35+4]; - setp.lt.ftz.f32 %p5, %f56, %f59; - @!%p5 bra $Lt_0_25858; - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - ld.global.f32 %f60, [%rd37+0]; - mov.f32 %f61, 0f40000000; // 2 - setp.eq.ftz.f32 %p6, %f60, %f61; - @!%p6 bra $Lt_0_26370; - .loc 16 92 0 - mul.ftz.f32 %f62, %f58, %f58; - mov.f32 %f63, %f62; - mov.f32 %f64, %f63; - .loc 16 93 0 - mul.ftz.f32 %f65, %f62, %f62; - mov.f32 %f66, %f65; - bra.uni $Lt_0_26626; -$Lt_0_26370: - mov.f32 %f67, 0f3f800000; // 1 - setp.eq.ftz.f32 %p7, %f60, %f67; - @!%p7 bra $Lt_0_26882; - .loc 16 95 0 - rsqrt.approx.ftz.f32 %f68, %f56; - mul.ftz.f32 %f69, %f58, %f68; - mov.f32 %f65, %f69; - mov.f32 %f66, %f65; - .loc 16 96 0 - mul.ftz.f32 %f63, %f69, %f69; - mov.f32 %f64, %f63; - bra.uni $Lt_0_26626; -$Lt_0_26882: - .loc 16 98 0 - mul.ftz.f32 %f70, %f58, %f58; - mul.ftz.f32 %f71, %f58, %f70; - mov.f32 %f63, %f71; - mov.f32 %f64, %f63; - .loc 16 99 0 - mov.f32 %f65, %f71; - mov.f32 %f66, %f65; -$Lt_0_26626: -$Lt_0_26114: - .loc 16 101 0 - mul.ftz.f32 %f72, %f39, %f63; - ld.global.v2.f32 {%f73,%f74}, [%rd35+8]; - mul.ftz.f32 %f75, %f73, %f65; - sub.ftz.f32 %f76, %f75, %f74; - mul.ftz.f32 %f77, %f72, %f76; - bra.uni $Lt_0_25602; -$Lt_0_25858: - .loc 16 103 0 - mov.f32 %f77, 0f00000000; // 0 -$Lt_0_25602: - ld.param.f32 %f78, [__cudaparm_kernel_pair_cut_coulsq]; - setp.gt.ftz.f32 %p8, %f78, %f56; - @!%p8 bra $Lt_0_27394; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f79, %f58; - ld.param.f32 %f80, [__cudaparm_kernel_pair_g_ewald]; - mul.ftz.f32 %f81, %f80, %f79; - mul.ftz.f32 %f82, %f81, %f81; - neg.ftz.f32 %f83, %f82; - mov.f32 %f84, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f85, %f83, %f84; - ex2.approx.ftz.f32 %f86, %f85; - .loc 16 110 0 - mov.f32 %f87, 0f3f800000; // 1 - mov.f32 %f88, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f89, %f88, %f81, %f87; - rcp.approx.ftz.f32 %f90, %f89; - mov.f32 %f91, 0f3e827906; // 0.25483 - mov.f32 %f92, 0fbe91a98e; // -0.284497 - mov.f32 %f93, 0f3fb5f0e3; // 1.42141 - mov.f32 %f94, 0fbfba00e3; // -1.45315 - mov.f32 %f95, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f96, %f95, %f90, %f94; - fma.rn.ftz.f32 %f97, %f90, %f96, %f93; - fma.rn.ftz.f32 %f98, %f90, %f97, %f92; - fma.rn.ftz.f32 %f99, %f90, %f98, %f91; - mul.ftz.f32 %f100, %f90, %f99; - mul.ftz.f32 %f101, %f86, %f100; - mov.f32 %f102, %f101; - .loc 16 111 0 - mov.u32 %r54, %r44; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f103,%f104,%f105,%f106},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f107, %f103; - ld.param.f32 %f108, [__cudaparm_kernel_pair_qqrd2e]; - mul.ftz.f32 %f109, %f108, %f33; - mul.ftz.f32 %f110, %f109, %f107; - div.approx.ftz.f32 %f111, %f110, %f79; - mov.f32 %f112, %f111; - .loc 16 112 0 - mov.f32 %f113, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f114, %f81, %f113; - fma.rn.ftz.f32 %f115, %f86, %f114, %f101; - sub.ftz.f32 %f116, %f115, %f42; - mul.ftz.f32 %f117, %f111, %f116; - bra.uni $Lt_0_27138; -$Lt_0_27394: - .loc 16 114 0 - mov.f32 %f117, 0f00000000; // 0 -$Lt_0_27138: - .loc 16 118 0 - add.ftz.f32 %f118, %f117, %f77; - mul.ftz.f32 %f119, %f118, %f58; - fma.rn.ftz.f32 %f36, %f52, %f119, %f36; - .loc 16 119 0 - fma.rn.ftz.f32 %f35, %f51, %f119, %f35; - .loc 16 120 0 - fma.rn.ftz.f32 %f34, %f53, %f119, %f34; - ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p9, %r61, %r62; - @%p9 bra $Lt_0_28162; - .loc 16 123 0 - mov.f32 %f120, %f112; - mov.f32 %f121, %f102; - sub.ftz.f32 %f122, %f121, %f42; - fma.rn.ftz.f32 %f123, %f120, %f122, %f37; - selp.f32 %f37, %f123, %f37, %p8; - @!%p5 bra $Lt_0_28162; - .loc 16 126 0 - ld.param.u64 %rd38, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd39, %rd38, %rd34; - ld.global.v4.f32 {_,%f124,%f125,%f126}, [%rd39+0]; - mov.f32 %f127, %f64; - mul.ftz.f32 %f128, %f127, %f39; - mov.f32 %f129, %f66; - mul.ftz.f32 %f130, %f124, %f129; - sub.ftz.f32 %f131, %f130, %f125; - mul.ftz.f32 %f132, %f128, %f131; - sub.ftz.f32 %f133, %f132, %f126; - add.ftz.f32 %f38, %f38, %f133; -$Lt_0_28162: -$Lt_0_27650: - ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p10, %r63, %r64; - @%p10 bra $Lt_0_28674; - .loc 16 131 0 - mov.f32 %f134, %f10; - mul.ftz.f32 %f135, %f52, %f52; - fma.rn.ftz.f32 %f136, %f119, %f135, %f134; - mov.f32 %f10, %f136; - .loc 16 132 0 - mov.f32 %f137, %f12; - fma.rn.ftz.f32 %f138, %f119, %f54, %f137; - mov.f32 %f12, %f138; - .loc 16 133 0 - mov.f32 %f139, %f14; - mul.ftz.f32 %f140, %f53, %f53; - fma.rn.ftz.f32 %f141, %f119, %f140, %f139; - mov.f32 %f14, %f141; - .loc 16 134 0 - mov.f32 %f142, %f16; - mul.ftz.f32 %f143, %f51, %f52; - fma.rn.ftz.f32 %f144, %f119, %f143, %f142; - mov.f32 %f16, %f144; - .loc 16 135 0 - mov.f32 %f145, %f18; - mul.ftz.f32 %f146, %f52, %f53; - fma.rn.ftz.f32 %f147, %f119, %f146, %f145; - mov.f32 %f18, %f147; - .loc 16 136 0 - mul.ftz.f32 %f148, %f51, %f53; - fma.rn.ftz.f32 %f19, %f119, %f148, %f19; - mov.f32 %f20, %f19; -$Lt_0_28674: -$Lt_0_25090: - .loc 16 68 0 - mul.lo.u64 %rd40, %rd27, 4; - add.u64 %rd20, %rd20, %rd40; - setp.lt.u64 %p11, %rd20, %rd19; - @%p11 bra $Lt_0_24834; - bra.uni $Lt_0_24322; -$Lt_0_35074: - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 -$Lt_0_24322: - mov.u32 %r65, 1; - setp.le.s32 %p12, %r1, %r65; - @%p12 bra $Lt_0_31490; - .loc 16 141 0 - mov.u64 %rd41, __cuda___cuda_local_var_32642_55_non_const_red_acc144; - cvt.s64.s32 %rd42, %r2; - mul.wide.s32 %rd43, %r2, 4; - add.u64 %rd44, %rd41, %rd43; - mov.f32 %f149, %f36; - st.shared.f32 [%rd44+0], %f149; - mov.f32 %f150, %f35; - st.shared.f32 [%rd44+512], %f150; - mov.f32 %f151, %f34; - st.shared.f32 [%rd44+1024], %f151; - mov.f32 %f152, %f38; - st.shared.f32 [%rd44+1536], %f152; - mov.f32 %f153, %f37; - st.shared.f32 [%rd44+2048], %f153; - shr.s32 %r66, %r1, 31; - mov.s32 %r67, 1; - and.b32 %r68, %r66, %r67; - add.s32 %r69, %r68, %r1; - shr.s32 %r70, %r69, 1; - mov.s32 %r71, %r70; - mov.u32 %r72, 0; - setp.ne.u32 %p13, %r70, %r72; - @!%p13 bra $Lt_0_29954; -$Lt_0_30466: - setp.ge.u32 %p14, %r14, %r71; - @%p14 bra $Lt_0_30722; - add.u32 %r73, %r2, %r71; - cvt.u64.u32 %rd45, %r73; - mul.wide.u32 %rd46, %r73, 4; - add.u64 %rd47, %rd41, %rd46; - ld.shared.f32 %f154, [%rd47+0]; - add.ftz.f32 %f149, %f154, %f149; - st.shared.f32 [%rd44+0], %f149; - ld.shared.f32 %f155, [%rd47+512]; - add.ftz.f32 %f150, %f155, %f150; - st.shared.f32 [%rd44+512], %f150; - ld.shared.f32 %f156, [%rd47+1024]; - add.ftz.f32 %f151, %f156, %f151; - st.shared.f32 [%rd44+1024], %f151; - ld.shared.f32 %f157, [%rd47+1536]; - add.ftz.f32 %f152, %f157, %f152; - st.shared.f32 [%rd44+1536], %f152; - ld.shared.f32 %f158, [%rd47+2048]; - add.ftz.f32 %f153, %f158, %f153; - st.shared.f32 [%rd44+2048], %f153; -$Lt_0_30722: - shr.u32 %r71, %r71, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p15, %r71, %r74; - @%p15 bra $Lt_0_30466; -$Lt_0_29954: - mov.f32 %f36, %f149; - mov.f32 %f35, %f150; - mov.f32 %f34, %f151; - mov.f32 %f38, %f152; - mov.f32 %f37, %f153; - ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r76, 0; - setp.le.s32 %p16, %r75, %r76; - @%p16 bra $Lt_0_31490; - mov.f32 %f149, %f10; - st.shared.f32 [%rd44+0], %f149; - mov.f32 %f150, %f12; - st.shared.f32 [%rd44+512], %f150; - mov.f32 %f151, %f14; - st.shared.f32 [%rd44+1024], %f151; - mov.f32 %f152, %f16; - st.shared.f32 [%rd44+1536], %f152; - mov.f32 %f153, %f18; - st.shared.f32 [%rd44+2048], %f153; - mov.f32 %f159, %f19; - st.shared.f32 [%rd44+2560], %f159; - mov.s32 %r77, %r70; - @!%p13 bra $Lt_0_32002; -$Lt_0_32514: - setp.ge.u32 %p17, %r14, %r77; - @%p17 bra $Lt_0_32770; - add.u32 %r78, %r2, %r77; - cvt.u64.u32 %rd48, %r78; - mul.wide.u32 %rd49, %r78, 4; - add.u64 %rd50, %rd41, %rd49; - ld.shared.f32 %f160, [%rd50+0]; - add.ftz.f32 %f149, %f160, %f149; - st.shared.f32 [%rd44+0], %f149; - ld.shared.f32 %f161, [%rd50+512]; - add.ftz.f32 %f150, %f161, %f150; - st.shared.f32 [%rd44+512], %f150; - ld.shared.f32 %f162, [%rd50+1024]; - add.ftz.f32 %f151, %f162, %f151; - st.shared.f32 [%rd44+1024], %f151; - ld.shared.f32 %f163, [%rd50+1536]; - add.ftz.f32 %f152, %f163, %f152; - st.shared.f32 [%rd44+1536], %f152; - ld.shared.f32 %f164, [%rd50+2048]; - add.ftz.f32 %f153, %f164, %f153; - st.shared.f32 [%rd44+2048], %f153; - ld.shared.f32 %f165, [%rd50+2560]; - add.ftz.f32 %f159, %f165, %f159; - st.shared.f32 [%rd44+2560], %f159; -$Lt_0_32770: - shr.u32 %r77, %r77, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p18, %r77, %r79; - @%p18 bra $Lt_0_32514; -$Lt_0_32002: - mov.f32 %f10, %f149; - mov.f32 %f12, %f150; - mov.f32 %f14, %f151; - mov.f32 %f16, %f152; - mov.f32 %f18, %f153; - mov.f32 %f20, %f159; -$Lt_0_31490: -$Lt_0_29442: - mov.u32 %r80, 0; - setp.ne.s32 %p19, %r14, %r80; - @%p19 bra $Lt_0_33538; - ld.param.u64 %rd51, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd52, %rd51, %rd3; - ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r82, 0; - setp.le.s32 %p20, %r81, %r82; - @%p20 bra $Lt_0_34050; - st.global.f32 [%rd52+0], %f38; - cvt.s64.s32 %rd53, %r9; - mul.wide.s32 %rd54, %r9, 4; - add.u64 %rd55, %rd54, %rd52; - st.global.f32 [%rd55+0], %f37; - add.u64 %rd52, %rd54, %rd55; -$Lt_0_34050: - ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r84, 0; - setp.le.s32 %p21, %r83, %r84; - @%p21 bra $Lt_0_34562; - mov.f32 %f166, %f10; - st.global.f32 [%rd52+0], %f166; - cvt.s64.s32 %rd56, %r9; - mul.wide.s32 %rd57, %r9, 4; - add.u64 %rd58, %rd57, %rd52; - mov.f32 %f167, %f12; - st.global.f32 [%rd58+0], %f167; - add.u64 %rd59, %rd57, %rd58; - mov.f32 %f168, %f14; - st.global.f32 [%rd59+0], %f168; - add.u64 %rd60, %rd57, %rd59; - mov.f32 %f169, %f16; - st.global.f32 [%rd60+0], %f169; - add.u64 %rd52, %rd57, %rd60; - mov.f32 %f170, %f18; - st.global.f32 [%rd52+0], %f170; - mov.f32 %f171, %f20; - add.u64 %rd61, %rd57, %rd52; - st.global.f32 [%rd61+0], %f171; -$Lt_0_34562: - ld.param.u64 %rd62, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd63, %rd2, 16; - add.u64 %rd64, %rd62, %rd63; - mov.f32 %f172, %f173; - st.global.v4.f32 [%rd64+0], {%f36,%f35,%f34,%f172}; -$Lt_0_33538: -$Lt_0_23298: - .loc 16 144 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_fast_q_, - .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_fast_qqrd2e, - .param .f32 __cudaparm_kernel_pair_fast_g_ewald, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<86>; - .reg .u64 %rd<77>; - .reg .f32 %f<178>; - .reg .pred %p<25>; - .shared .align 4 .b8 __cuda___cuda_local_var_32661_33_non_const_sp_lj3320[32]; - .shared .align 16 .b8 __cuda___cuda_local_var_32660_34_non_const_lj33360[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32659_34_non_const_lj15296[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32762_55_non_const_red_acc7232[3072]; - // __cuda_local_var_32671_10_non_const_f = 64 - // __cuda_local_var_32673_9_non_const_virial = 16 - // __cuda_local_var_32708_43_non_const_inv1 = 40 - // __cuda_local_var_32708_49_non_const_inv2 = 44 - // __cuda_local_var_32708_55_non_const_prefactor = 52 - // __cuda_local_var_32708_66_non_const__erfc = 48 - .loc 16 154 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 7; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_24834; - .loc 16 162 0 - mov.u64 %rd1, __cuda___cuda_local_var_32661_33_non_const_sp_lj3320; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_24834: - mov.u64 %rd1, __cuda___cuda_local_var_32661_33_non_const_sp_lj3320; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_25346; - .loc 16 164 0 - mov.u64 %rd7, __cuda___cuda_local_var_32660_34_non_const_lj33360; - mov.u64 %rd8, __cuda___cuda_local_var_32659_34_non_const_lj15296; - cvt.s64.s32 %rd9, %r1; - mul.wide.s32 %rd10, %r1, 16; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd12, %rd11, %rd10; - add.u64 %rd13, %rd10, %rd8; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd12+0]; - st.shared.v4.f32 [%rd13+0], {%f2,%f3,%f4,%f5}; - .loc 16 165 0 - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd10; - add.u64 %rd16, %rd10, %rd7; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_25346: - mov.u64 %rd7, __cuda___cuda_local_var_32660_34_non_const_lj33360; - mov.u64 %rd8, __cuda___cuda_local_var_32659_34_non_const_lj15296; - .loc 16 174 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 176 0 - bar.sync 0; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r5, %r1, %r4; - cvt.s32.u32 %r6, %ntid.x; - div.s32 %r7, %r6, %r4; - cvt.s32.u32 %r8, %ctaid.x; - mul.lo.s32 %r9, %r8, %r7; - add.s32 %r10, %r5, %r9; - ld.param.s32 %r11, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p3, %r10, %r11; - @%p3 bra $Lt_1_36098; - .loc 16 181 0 - cvt.s64.s32 %rd17, %r10; - mul.wide.s32 %rd18, %r10, 4; - ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd20, %rd18, %rd19; - ld.global.s32 %r12, [%rd20+0]; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd21, %r13; - mul.wide.s32 %rd22, %r13, 4; - add.u64 %rd23, %rd22, %rd20; - ld.global.s32 %r14, [%rd23+0]; - sub.s32 %r15, %r4, 1; - and.b32 %r16, %r15, %r1; - cvt.s64.s32 %rd24, %r16; - mul.wide.s32 %rd25, %r16, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p4, %rd26, %rd19; - @%p4 bra $Lt_1_26626; - cvt.s32.s64 %r17, %rd21; - mul.lo.s32 %r18, %r17, %r4; - mov.s32 %r19, %r18; - mul.lo.s32 %r20, %r15, %r10; - add.s32 %r21, %r17, %r20; - cvt.s64.s32 %rd27, %r21; - mul.wide.s32 %rd28, %r21, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r22, %r15, %r14; - cvt.s64.s32 %rd30, %r22; - div.s32 %r23, %r14, %r4; - mul.lo.s32 %r24, %r18, %r23; - cvt.s64.s32 %rd31, %r24; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_26370; -$Lt_1_26626: - add.u64 %rd36, %rd22, %rd23; - ld.global.s32 %r25, [%rd36+0]; - cvt.s64.s32 %rd37, %r25; - mul.wide.s32 %rd38, %r25, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r14; - mul.wide.s32 %rd41, %r14, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r19, %r4; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_26370: - .loc 16 184 0 - mov.u32 %r26, %r12; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r26,%r28,%r30,%r32}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - .loc 16 185 0 - mov.u32 %r33, %r12; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - mov.s32 %r38, 0; - mov.u32 %r39, %r38; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r33,%r35,%r37,%r39}]; - mov.f32 %f34, %f30; - setp.ge.u64 %p5, %rd35, %rd34; - @%p5 bra $Lt_1_37634; - cvt.rzi.ftz.s32.f32 %r40, %f29; - cvt.s64.s32 %rd42, %r19; - mul.lo.s32 %r41, %r40, 11; - cvt.rn.f32.s32 %f35, %r41; - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 -$Lt_1_27394: - // Loop body line 185, nesting depth: 1, estimated iterations: unknown - .loc 16 190 0 - ld.global.s32 %r42, [%rd35+0]; - .loc 16 193 0 - shr.s32 %r43, %r42, 30; - and.b32 %r44, %r43, 3; - cvt.s64.s32 %rd43, %r44; - mul.wide.s32 %rd44, %r44, 4; - add.u64 %rd45, %rd1, %rd44; - ld.shared.f32 %f41, [%rd45+0]; - .loc 16 194 0 - mov.f32 %f42, 0f3f800000; // 1 - ld.shared.f32 %f43, [%rd45+16]; - sub.ftz.f32 %f44, %f42, %f43; - .loc 16 197 0 - and.b32 %r45, %r42, 1073741823; - mov.u32 %r46, %r45; - mov.s32 %r47, 0; - mov.u32 %r48, %r47; - mov.s32 %r49, 0; - mov.u32 %r50, %r49; - mov.s32 %r51, 0; - mov.u32 %r52, %r51; - tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r46,%r48,%r50,%r52}]; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - mov.f32 %f51, %f47; - mov.f32 %f52, %f48; - sub.ftz.f32 %f53, %f27, %f50; - sub.ftz.f32 %f54, %f26, %f49; - sub.ftz.f32 %f55, %f28, %f51; - mul.ftz.f32 %f56, %f53, %f53; - fma.rn.ftz.f32 %f57, %f54, %f54, %f56; - fma.rn.ftz.f32 %f58, %f55, %f55, %f57; - add.ftz.f32 %f59, %f35, %f52; - cvt.rzi.ftz.s32.f32 %r53, %f59; - cvt.s64.s32 %rd46, %r53; - mul.wide.s32 %rd47, %r53, 16; - add.u64 %rd48, %rd47, %rd8; - ld.shared.f32 %f60, [%rd48+0]; - setp.gt.ftz.f32 %p6, %f60, %f58; - @!%p6 bra $Lt_1_31234; - rcp.approx.ftz.f32 %f61, %f58; - ld.shared.f32 %f62, [%rd48+4]; - setp.lt.ftz.f32 %p7, %f58, %f62; - @!%p7 bra $Lt_1_28418; - add.u64 %rd49, %rd47, %rd7; - ld.shared.f32 %f63, [%rd49+0]; - mov.f32 %f64, 0f40000000; // 2 - setp.eq.ftz.f32 %p8, %f63, %f64; - @!%p8 bra $Lt_1_28930; - .loc 16 212 0 - mul.ftz.f32 %f65, %f61, %f61; - mov.f32 %f66, %f65; - mov.f32 %f67, %f66; - .loc 16 213 0 - mul.ftz.f32 %f68, %f65, %f65; - mov.f32 %f69, %f68; - bra.uni $Lt_1_29186; -$Lt_1_28930: - mov.f32 %f70, 0f3f800000; // 1 - setp.eq.ftz.f32 %p9, %f63, %f70; - @!%p9 bra $Lt_1_29442; - .loc 16 215 0 - rsqrt.approx.ftz.f32 %f71, %f58; - mul.ftz.f32 %f72, %f61, %f71; - mov.f32 %f68, %f72; - mov.f32 %f69, %f68; - .loc 16 216 0 - mul.ftz.f32 %f66, %f72, %f72; - mov.f32 %f67, %f66; - bra.uni $Lt_1_29186; -$Lt_1_29442: - .loc 16 218 0 - mul.ftz.f32 %f73, %f61, %f61; - mul.ftz.f32 %f74, %f61, %f73; - mov.f32 %f66, %f74; - mov.f32 %f67, %f66; - .loc 16 219 0 - mov.f32 %f68, %f74; - mov.f32 %f69, %f68; -$Lt_1_29186: -$Lt_1_28674: - .loc 16 221 0 - mul.ftz.f32 %f75, %f41, %f66; - ld.shared.v2.f32 {%f76,%f77}, [%rd48+8]; - mul.ftz.f32 %f78, %f76, %f68; - sub.ftz.f32 %f79, %f78, %f77; - mul.ftz.f32 %f80, %f75, %f79; - bra.uni $Lt_1_28162; -$Lt_1_28418: - .loc 16 223 0 - mov.f32 %f80, 0f00000000; // 0 -$Lt_1_28162: - ld.param.f32 %f81, [__cudaparm_kernel_pair_fast_cut_coulsq]; - setp.gt.ftz.f32 %p10, %f81, %f58; - @!%p10 bra $Lt_1_29954; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f82, %f61; - ld.param.f32 %f83, [__cudaparm_kernel_pair_fast_g_ewald]; - mul.ftz.f32 %f84, %f83, %f82; - mul.ftz.f32 %f85, %f84, %f84; - neg.ftz.f32 %f86, %f85; - mov.f32 %f87, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f88, %f86, %f87; - ex2.approx.ftz.f32 %f89, %f88; - .loc 16 230 0 - mov.f32 %f90, 0f3f800000; // 1 - mov.f32 %f91, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f92, %f91, %f84, %f90; - rcp.approx.ftz.f32 %f93, %f92; - mov.f32 %f94, 0f3e827906; // 0.25483 - mov.f32 %f95, 0fbe91a98e; // -0.284497 - mov.f32 %f96, 0f3fb5f0e3; // 1.42141 - mov.f32 %f97, 0fbfba00e3; // -1.45315 - mov.f32 %f98, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f99, %f98, %f93, %f97; - fma.rn.ftz.f32 %f100, %f93, %f99, %f96; - fma.rn.ftz.f32 %f101, %f93, %f100, %f95; - fma.rn.ftz.f32 %f102, %f93, %f101, %f94; - mul.ftz.f32 %f103, %f93, %f102; - mul.ftz.f32 %f104, %f89, %f103; - mov.f32 %f105, %f104; - .loc 16 231 0 - mov.u32 %r54, %r45; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f106,%f107,%f108,%f109},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f110, %f106; - ld.param.f32 %f111, [__cudaparm_kernel_pair_fast_qqrd2e]; - mul.ftz.f32 %f112, %f111, %f34; - mul.ftz.f32 %f113, %f112, %f110; - div.approx.ftz.f32 %f114, %f113, %f82; - mov.f32 %f115, %f114; - .loc 16 232 0 - mov.f32 %f116, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f117, %f84, %f116; - fma.rn.ftz.f32 %f118, %f89, %f117, %f104; - sub.ftz.f32 %f119, %f118, %f44; - mul.ftz.f32 %f120, %f114, %f119; - bra.uni $Lt_1_29698; -$Lt_1_29954: - .loc 16 234 0 - mov.f32 %f120, 0f00000000; // 0 -$Lt_1_29698: - .loc 16 238 0 - add.ftz.f32 %f121, %f120, %f80; - mul.ftz.f32 %f122, %f121, %f61; - fma.rn.ftz.f32 %f38, %f54, %f122, %f38; - .loc 16 239 0 - fma.rn.ftz.f32 %f37, %f53, %f122, %f37; - .loc 16 240 0 - fma.rn.ftz.f32 %f36, %f55, %f122, %f36; - ld.param.s32 %r61, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p11, %r61, %r62; - @%p11 bra $Lt_1_30722; - .loc 16 243 0 - mov.f32 %f123, %f115; - mov.f32 %f124, %f105; - sub.ftz.f32 %f125, %f124, %f44; - fma.rn.ftz.f32 %f126, %f123, %f125, %f39; - selp.f32 %f39, %f126, %f39, %p10; - @!%p7 bra $Lt_1_30722; - .loc 16 246 0 - add.u64 %rd50, %rd47, %rd7; - ld.shared.v4.f32 {_,%f127,%f128,%f129}, [%rd50+0]; - mov.f32 %f130, %f67; - mul.ftz.f32 %f131, %f130, %f41; - mov.f32 %f132, %f69; - mul.ftz.f32 %f133, %f127, %f132; - sub.ftz.f32 %f134, %f133, %f128; - mul.ftz.f32 %f135, %f131, %f134; - sub.ftz.f32 %f136, %f135, %f129; - add.ftz.f32 %f40, %f40, %f136; -$Lt_1_30722: -$Lt_1_30210: - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p12, %r63, %r64; - @%p12 bra $Lt_1_31234; - .loc 16 251 0 - mov.f32 %f137, %f11; - mul.ftz.f32 %f138, %f54, %f54; - fma.rn.ftz.f32 %f139, %f122, %f138, %f137; - mov.f32 %f11, %f139; - .loc 16 252 0 - mov.f32 %f140, %f13; - fma.rn.ftz.f32 %f141, %f122, %f56, %f140; - mov.f32 %f13, %f141; - .loc 16 253 0 - mov.f32 %f142, %f15; - mul.ftz.f32 %f143, %f55, %f55; - fma.rn.ftz.f32 %f144, %f122, %f143, %f142; - mov.f32 %f15, %f144; - .loc 16 254 0 - mov.f32 %f145, %f17; - mul.ftz.f32 %f146, %f53, %f54; - fma.rn.ftz.f32 %f147, %f122, %f146, %f145; - mov.f32 %f17, %f147; - .loc 16 255 0 - mov.f32 %f148, %f19; - mul.ftz.f32 %f149, %f54, %f55; - fma.rn.ftz.f32 %f150, %f122, %f149, %f148; - mov.f32 %f19, %f150; - .loc 16 256 0 - mul.ftz.f32 %f151, %f53, %f55; - fma.rn.ftz.f32 %f20, %f122, %f151, %f20; - mov.f32 %f21, %f20; -$Lt_1_31234: -$Lt_1_27650: - .loc 16 189 0 - mul.lo.u64 %rd51, %rd42, 4; - add.u64 %rd35, %rd35, %rd51; - setp.lt.u64 %p13, %rd35, %rd34; - @%p13 bra $Lt_1_27394; - bra.uni $Lt_1_26882; -$Lt_1_37634: - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 -$Lt_1_26882: - mov.u32 %r65, 1; - setp.le.s32 %p14, %r4, %r65; - @%p14 bra $Lt_1_34050; - .loc 16 261 0 - mov.u64 %rd52, __cuda___cuda_local_var_32762_55_non_const_red_acc7232; - cvt.s64.s32 %rd53, %r1; - mul.wide.s32 %rd54, %r1, 4; - add.u64 %rd55, %rd52, %rd54; - mov.f32 %f152, %f38; - st.shared.f32 [%rd55+0], %f152; - mov.f32 %f153, %f37; - st.shared.f32 [%rd55+512], %f153; - mov.f32 %f154, %f36; - st.shared.f32 [%rd55+1024], %f154; - mov.f32 %f155, %f40; - st.shared.f32 [%rd55+1536], %f155; - mov.f32 %f156, %f39; - st.shared.f32 [%rd55+2048], %f156; - shr.s32 %r66, %r4, 31; - mov.s32 %r67, 1; - and.b32 %r68, %r66, %r67; - add.s32 %r69, %r68, %r4; - shr.s32 %r70, %r69, 1; - mov.s32 %r71, %r70; - mov.u32 %r72, 0; - setp.ne.u32 %p15, %r70, %r72; - @!%p15 bra $Lt_1_32514; -$Lt_1_33026: - setp.ge.u32 %p16, %r16, %r71; - @%p16 bra $Lt_1_33282; - add.u32 %r73, %r1, %r71; - cvt.u64.u32 %rd56, %r73; - mul.wide.u32 %rd57, %r73, 4; - add.u64 %rd58, %rd52, %rd57; - ld.shared.f32 %f157, [%rd58+0]; - add.ftz.f32 %f152, %f157, %f152; - st.shared.f32 [%rd55+0], %f152; - ld.shared.f32 %f158, [%rd58+512]; - add.ftz.f32 %f153, %f158, %f153; - st.shared.f32 [%rd55+512], %f153; - ld.shared.f32 %f159, [%rd58+1024]; - add.ftz.f32 %f154, %f159, %f154; - st.shared.f32 [%rd55+1024], %f154; - ld.shared.f32 %f160, [%rd58+1536]; - add.ftz.f32 %f155, %f160, %f155; - st.shared.f32 [%rd55+1536], %f155; - ld.shared.f32 %f161, [%rd58+2048]; - add.ftz.f32 %f156, %f161, %f156; - st.shared.f32 [%rd55+2048], %f156; -$Lt_1_33282: - shr.u32 %r71, %r71, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p17, %r71, %r74; - @%p17 bra $Lt_1_33026; -$Lt_1_32514: - mov.f32 %f38, %f152; - mov.f32 %f37, %f153; - mov.f32 %f36, %f154; - mov.f32 %f40, %f155; - mov.f32 %f39, %f156; - ld.param.s32 %r75, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r76, 0; - setp.le.s32 %p18, %r75, %r76; - @%p18 bra $Lt_1_34050; - mov.f32 %f152, %f11; - st.shared.f32 [%rd55+0], %f152; - mov.f32 %f153, %f13; - st.shared.f32 [%rd55+512], %f153; - mov.f32 %f154, %f15; - st.shared.f32 [%rd55+1024], %f154; - mov.f32 %f155, %f17; - st.shared.f32 [%rd55+1536], %f155; - mov.f32 %f156, %f19; - st.shared.f32 [%rd55+2048], %f156; - mov.f32 %f162, %f20; - st.shared.f32 [%rd55+2560], %f162; - mov.s32 %r77, %r70; - @!%p15 bra $Lt_1_34562; -$Lt_1_35074: - setp.ge.u32 %p19, %r16, %r77; - @%p19 bra $Lt_1_35330; - add.u32 %r78, %r1, %r77; - cvt.u64.u32 %rd59, %r78; - mul.wide.u32 %rd60, %r78, 4; - add.u64 %rd61, %rd52, %rd60; - ld.shared.f32 %f163, [%rd61+0]; - add.ftz.f32 %f152, %f163, %f152; - st.shared.f32 [%rd55+0], %f152; - ld.shared.f32 %f164, [%rd61+512]; - add.ftz.f32 %f153, %f164, %f153; - st.shared.f32 [%rd55+512], %f153; - ld.shared.f32 %f165, [%rd61+1024]; - add.ftz.f32 %f154, %f165, %f154; - st.shared.f32 [%rd55+1024], %f154; - ld.shared.f32 %f166, [%rd61+1536]; - add.ftz.f32 %f155, %f166, %f155; - st.shared.f32 [%rd55+1536], %f155; - ld.shared.f32 %f167, [%rd61+2048]; - add.ftz.f32 %f156, %f167, %f156; - st.shared.f32 [%rd55+2048], %f156; - ld.shared.f32 %f168, [%rd61+2560]; - add.ftz.f32 %f162, %f168, %f162; - st.shared.f32 [%rd55+2560], %f162; -$Lt_1_35330: - shr.u32 %r77, %r77, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p20, %r77, %r79; - @%p20 bra $Lt_1_35074; -$Lt_1_34562: - mov.f32 %f11, %f152; - mov.f32 %f13, %f153; - mov.f32 %f15, %f154; - mov.f32 %f17, %f155; - mov.f32 %f19, %f156; - mov.f32 %f21, %f162; -$Lt_1_34050: -$Lt_1_32002: - mov.u32 %r80, 0; - setp.ne.s32 %p21, %r16, %r80; - @%p21 bra $Lt_1_36098; - ld.param.u64 %rd62, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd63, %rd62, %rd18; - ld.param.s32 %r81, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r82, 0; - setp.le.s32 %p22, %r81, %r82; - @%p22 bra $Lt_1_36610; - st.global.f32 [%rd63+0], %f40; - cvt.s64.s32 %rd64, %r11; - mul.wide.s32 %rd65, %r11, 4; - add.u64 %rd66, %rd65, %rd63; - st.global.f32 [%rd66+0], %f39; - add.u64 %rd63, %rd65, %rd66; -$Lt_1_36610: - ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r84, 0; - setp.le.s32 %p23, %r83, %r84; - @%p23 bra $Lt_1_37122; - mov.f32 %f169, %f11; - st.global.f32 [%rd63+0], %f169; - cvt.s64.s32 %rd67, %r11; - mul.wide.s32 %rd68, %r11, 4; - add.u64 %rd69, %rd68, %rd63; - mov.f32 %f170, %f13; - st.global.f32 [%rd69+0], %f170; - add.u64 %rd70, %rd68, %rd69; - mov.f32 %f171, %f15; - st.global.f32 [%rd70+0], %f171; - add.u64 %rd71, %rd68, %rd70; - mov.f32 %f172, %f17; - st.global.f32 [%rd71+0], %f172; - add.u64 %rd63, %rd68, %rd71; - mov.f32 %f173, %f19; - st.global.f32 [%rd63+0], %f173; - mov.f32 %f174, %f21; - add.u64 %rd72, %rd68, %rd63; - st.global.f32 [%rd72+0], %f174; -$Lt_1_37122: - ld.param.u64 %rd73, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd74, %rd17, 16; - add.u64 %rd75, %rd73, %rd74; - mov.f32 %f175, %f176; - st.global.v4.f32 [%rd75+0], {%f38,%f37,%f36,%f175}; -$Lt_1_36098: -$Lt_1_25858: - .loc 16 264 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/cg_cmm_long_ptx.h b/lib/gpu/cg_cmm_long_ptx.h deleted file mode 100644 index 4098954171..0000000000 --- a/lib/gpu/cg_cmm_long_ptx.h +++ /dev/null @@ -1,1129 +0,0 @@ -const char * cg_cmm_long = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .global .texref q_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_lj1,\n" -" .param .u64 __cudaparm_kernel_pair_lj3,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_q_,\n" -" .param .f32 __cudaparm_kernel_pair_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<86>;\n" -" .reg .u64 %rd<66>;\n" -" .reg .f32 %f<175>;\n" -" .reg .pred %p<23>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32642_55_non_const_red_acc144[3072];\n" -" .loc 16 36 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 41 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 42 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 43 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 44 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 45 0\n" -" ld.global.f32 %f5, [%rd1+16];\n" -" .loc 16 46 0\n" -" ld.global.f32 %f6, [%rd1+20];\n" -" .loc 16 47 0\n" -" ld.global.f32 %f7, [%rd1+24];\n" -" .loc 16 48 0\n" -" ld.global.f32 %f8, [%rd1+28];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8};\n" -" .loc 16 56 0\n" -" mov.f32 %f9, 0f00000000; \n" -" mov.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f00000000; \n" -" mov.f32 %f12, %f11;\n" -" mov.f32 %f13, 0f00000000; \n" -" mov.f32 %f14, %f13;\n" -" mov.f32 %f15, 0f00000000; \n" -" mov.f32 %f16, %f15;\n" -" mov.f32 %f17, 0f00000000; \n" -" mov.f32 %f18, %f17;\n" -" mov.f32 %f19, 0f00000000; \n" -" mov.f32 %f20, %f19;\n" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_33538;\n" -" .loc 16 61 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd5, %rd3, %rd4;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" sub.s32 %r13, %r1, 1;\n" -" and.b32 %r14, %r13, %r2;\n" -" cvt.s64.s32 %rd9, %r14;\n" -" mul.wide.s32 %rd10, %r14, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd4;\n" -" @%p2 bra $Lt_0_24066;\n" -" cvt.s32.s64 %r15, %rd6;\n" -" mul.lo.s32 %r16, %r15, %r1;\n" -" mov.s32 %r17, %r16;\n" -" mul.lo.s32 %r18, %r13, %r8;\n" -" add.s32 %r19, %r15, %r18;\n" -" cvt.s64.s32 %rd12, %r19;\n" -" mul.wide.s32 %rd13, %r19, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r20, %r13, %r12;\n" -" cvt.s64.s32 %rd15, %r20;\n" -" div.s32 %r21, %r12, %r1;\n" -" mul.lo.s32 %r22, %r16, %r21;\n" -" cvt.s64.s32 %rd16, %r22;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_23810;\n" -"$Lt_0_24066:\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" ld.global.s32 %r23, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r23;\n" -" mul.wide.s32 %rd23, %r23, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r12;\n" -" mul.wide.s32 %rd26, %r12, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r17, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_23810:\n" -" .loc 16 64 0\n" -" mov.u32 %r24, %r10;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f25, %f21;\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" .loc 16 65 0\n" -" mov.u32 %r31, %r10;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}];\n" -" mov.f32 %f33, %f29;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_35074;\n" -" cvt.rzi.ftz.s32.f32 %r38, %f28;\n" -" cvt.s64.s32 %rd27, %r17;\n" -" ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r40, %r39, %r38;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112;\n" -"$Lt_0_24834:\n" -" .loc 16 69 0\n" -" ld.global.s32 %r41, [%rd20+0];\n" -" .loc 16 72 0\n" -" shr.s32 %r42, %r41, 30;\n" -" and.b32 %r43, %r42, 3;\n" -" cvt.s64.s32 %rd30, %r43;\n" -" mul.wide.s32 %rd31, %r43, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f39, [%rd32+0];\n" -" .loc 16 73 0\n" -" mov.f32 %f40, 0f3f800000; \n" -" ld.shared.f32 %f41, [%rd32+16];\n" -" sub.ftz.f32 %f42, %f40, %f41;\n" -" .loc 16 76 0\n" -" and.b32 %r44, %r41, 1073741823;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" mov.s32 %r48, 0;\n" -" mov.u32 %r49, %r48;\n" -" mov.s32 %r50, 0;\n" -" mov.u32 %r51, %r50;\n" -" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r45,%r47,%r49,%r51}];\n" -" mov.f32 %f47, %f43;\n" -" mov.f32 %f48, %f44;\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" cvt.rzi.ftz.s32.f32 %r52, %f50;\n" -" sub.ftz.f32 %f51, %f26, %f48;\n" -" sub.ftz.f32 %f52, %f25, %f47;\n" -" sub.ftz.f32 %f53, %f27, %f49;\n" -" mul.ftz.f32 %f54, %f51, %f51;\n" -" fma.rn.ftz.f32 %f55, %f52, %f52, %f54;\n" -" fma.rn.ftz.f32 %f56, %f53, %f53, %f55;\n" -" add.s32 %r53, %r52, %r40;\n" -" cvt.s64.s32 %rd33, %r53;\n" -" mul.wide.s32 %rd34, %r53, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f57, [%rd35+0];\n" -" setp.gt.ftz.f32 %p4, %f57, %f56;\n" -" @!%p4 bra $Lt_0_28674;\n" -" rcp.approx.ftz.f32 %f58, %f56;\n" -" ld.global.f32 %f59, [%rd35+4];\n" -" setp.lt.ftz.f32 %p5, %f56, %f59;\n" -" @!%p5 bra $Lt_0_25858;\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" ld.global.f32 %f60, [%rd37+0];\n" -" mov.f32 %f61, 0f40000000; \n" -" setp.eq.ftz.f32 %p6, %f60, %f61;\n" -" @!%p6 bra $Lt_0_26370;\n" -" .loc 16 92 0\n" -" mul.ftz.f32 %f62, %f58, %f58;\n" -" mov.f32 %f63, %f62;\n" -" mov.f32 %f64, %f63;\n" -" .loc 16 93 0\n" -" mul.ftz.f32 %f65, %f62, %f62;\n" -" mov.f32 %f66, %f65;\n" -" bra.uni $Lt_0_26626;\n" -"$Lt_0_26370:\n" -" mov.f32 %f67, 0f3f800000; \n" -" setp.eq.ftz.f32 %p7, %f60, %f67;\n" -" @!%p7 bra $Lt_0_26882;\n" -" .loc 16 95 0\n" -" rsqrt.approx.ftz.f32 %f68, %f56;\n" -" mul.ftz.f32 %f69, %f58, %f68;\n" -" mov.f32 %f65, %f69;\n" -" mov.f32 %f66, %f65;\n" -" .loc 16 96 0\n" -" mul.ftz.f32 %f63, %f69, %f69;\n" -" mov.f32 %f64, %f63;\n" -" bra.uni $Lt_0_26626;\n" -"$Lt_0_26882:\n" -" .loc 16 98 0\n" -" mul.ftz.f32 %f70, %f58, %f58;\n" -" mul.ftz.f32 %f71, %f58, %f70;\n" -" mov.f32 %f63, %f71;\n" -" mov.f32 %f64, %f63;\n" -" .loc 16 99 0\n" -" mov.f32 %f65, %f71;\n" -" mov.f32 %f66, %f65;\n" -"$Lt_0_26626:\n" -"$Lt_0_26114:\n" -" .loc 16 101 0\n" -" mul.ftz.f32 %f72, %f39, %f63;\n" -" ld.global.v2.f32 {%f73,%f74}, [%rd35+8];\n" -" mul.ftz.f32 %f75, %f73, %f65;\n" -" sub.ftz.f32 %f76, %f75, %f74;\n" -" mul.ftz.f32 %f77, %f72, %f76;\n" -" bra.uni $Lt_0_25602;\n" -"$Lt_0_25858:\n" -" .loc 16 103 0\n" -" mov.f32 %f77, 0f00000000; \n" -"$Lt_0_25602:\n" -" ld.param.f32 %f78, [__cudaparm_kernel_pair_cut_coulsq];\n" -" setp.gt.ftz.f32 %p8, %f78, %f56;\n" -" @!%p8 bra $Lt_0_27394;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f79, %f58;\n" -" ld.param.f32 %f80, [__cudaparm_kernel_pair_g_ewald];\n" -" mul.ftz.f32 %f81, %f80, %f79;\n" -" mul.ftz.f32 %f82, %f81, %f81;\n" -" neg.ftz.f32 %f83, %f82;\n" -" mov.f32 %f84, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f85, %f83, %f84;\n" -" ex2.approx.ftz.f32 %f86, %f85;\n" -" .loc 16 110 0\n" -" mov.f32 %f87, 0f3f800000; \n" -" mov.f32 %f88, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f89, %f88, %f81, %f87;\n" -" rcp.approx.ftz.f32 %f90, %f89;\n" -" mov.f32 %f91, 0f3e827906; \n" -" mov.f32 %f92, 0fbe91a98e; \n" -" mov.f32 %f93, 0f3fb5f0e3; \n" -" mov.f32 %f94, 0fbfba00e3; \n" -" mov.f32 %f95, 0f3f87dc22; \n" -" fma.rn.ftz.f32 %f96, %f95, %f90, %f94;\n" -" fma.rn.ftz.f32 %f97, %f90, %f96, %f93;\n" -" fma.rn.ftz.f32 %f98, %f90, %f97, %f92;\n" -" fma.rn.ftz.f32 %f99, %f90, %f98, %f91;\n" -" mul.ftz.f32 %f100, %f90, %f99;\n" -" mul.ftz.f32 %f101, %f86, %f100;\n" -" mov.f32 %f102, %f101;\n" -" .loc 16 111 0\n" -" mov.u32 %r54, %r44;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f103,%f104,%f105,%f106},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f107, %f103;\n" -" ld.param.f32 %f108, [__cudaparm_kernel_pair_qqrd2e];\n" -" mul.ftz.f32 %f109, %f108, %f33;\n" -" mul.ftz.f32 %f110, %f109, %f107;\n" -" div.approx.ftz.f32 %f111, %f110, %f79;\n" -" mov.f32 %f112, %f111;\n" -" .loc 16 112 0\n" -" mov.f32 %f113, 0f3f906ebb; \n" -" mul.ftz.f32 %f114, %f81, %f113;\n" -" fma.rn.ftz.f32 %f115, %f86, %f114, %f101;\n" -" sub.ftz.f32 %f116, %f115, %f42;\n" -" mul.ftz.f32 %f117, %f111, %f116;\n" -" bra.uni $Lt_0_27138;\n" -"$Lt_0_27394:\n" -" .loc 16 114 0\n" -" mov.f32 %f117, 0f00000000; \n" -"$Lt_0_27138:\n" -" .loc 16 118 0\n" -" add.ftz.f32 %f118, %f117, %f77;\n" -" mul.ftz.f32 %f119, %f118, %f58;\n" -" fma.rn.ftz.f32 %f36, %f52, %f119, %f36;\n" -" .loc 16 119 0\n" -" fma.rn.ftz.f32 %f35, %f51, %f119, %f35;\n" -" .loc 16 120 0\n" -" fma.rn.ftz.f32 %f34, %f53, %f119, %f34;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p9, %r61, %r62;\n" -" @%p9 bra $Lt_0_28162;\n" -" .loc 16 123 0\n" -" mov.f32 %f120, %f112;\n" -" mov.f32 %f121, %f102;\n" -" sub.ftz.f32 %f122, %f121, %f42;\n" -" fma.rn.ftz.f32 %f123, %f120, %f122, %f37;\n" -" selp.f32 %f37, %f123, %f37, %p8;\n" -" @!%p5 bra $Lt_0_28162;\n" -" .loc 16 126 0\n" -" ld.param.u64 %rd38, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd39, %rd38, %rd34;\n" -" ld.global.v4.f32 {_,%f124,%f125,%f126}, [%rd39+0];\n" -" mov.f32 %f127, %f64;\n" -" mul.ftz.f32 %f128, %f127, %f39;\n" -" mov.f32 %f129, %f66;\n" -" mul.ftz.f32 %f130, %f124, %f129;\n" -" sub.ftz.f32 %f131, %f130, %f125;\n" -" mul.ftz.f32 %f132, %f128, %f131;\n" -" sub.ftz.f32 %f133, %f132, %f126;\n" -" add.ftz.f32 %f38, %f38, %f133;\n" -"$Lt_0_28162:\n" -"$Lt_0_27650:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p10, %r63, %r64;\n" -" @%p10 bra $Lt_0_28674;\n" -" .loc 16 131 0\n" -" mov.f32 %f134, %f10;\n" -" mul.ftz.f32 %f135, %f52, %f52;\n" -" fma.rn.ftz.f32 %f136, %f119, %f135, %f134;\n" -" mov.f32 %f10, %f136;\n" -" .loc 16 132 0\n" -" mov.f32 %f137, %f12;\n" -" fma.rn.ftz.f32 %f138, %f119, %f54, %f137;\n" -" mov.f32 %f12, %f138;\n" -" .loc 16 133 0\n" -" mov.f32 %f139, %f14;\n" -" mul.ftz.f32 %f140, %f53, %f53;\n" -" fma.rn.ftz.f32 %f141, %f119, %f140, %f139;\n" -" mov.f32 %f14, %f141;\n" -" .loc 16 134 0\n" -" mov.f32 %f142, %f16;\n" -" mul.ftz.f32 %f143, %f51, %f52;\n" -" fma.rn.ftz.f32 %f144, %f119, %f143, %f142;\n" -" mov.f32 %f16, %f144;\n" -" .loc 16 135 0\n" -" mov.f32 %f145, %f18;\n" -" mul.ftz.f32 %f146, %f52, %f53;\n" -" fma.rn.ftz.f32 %f147, %f119, %f146, %f145;\n" -" mov.f32 %f18, %f147;\n" -" .loc 16 136 0\n" -" mul.ftz.f32 %f148, %f51, %f53;\n" -" fma.rn.ftz.f32 %f19, %f119, %f148, %f19;\n" -" mov.f32 %f20, %f19;\n" -"$Lt_0_28674:\n" -"$Lt_0_25090:\n" -" .loc 16 68 0\n" -" mul.lo.u64 %rd40, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd40;\n" -" setp.lt.u64 %p11, %rd20, %rd19;\n" -" @%p11 bra $Lt_0_24834;\n" -" bra.uni $Lt_0_24322;\n" -"$Lt_0_35074:\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -"$Lt_0_24322:\n" -" mov.u32 %r65, 1;\n" -" setp.le.s32 %p12, %r1, %r65;\n" -" @%p12 bra $Lt_0_31490;\n" -" .loc 16 141 0\n" -" mov.u64 %rd41, __cuda___cuda_local_var_32642_55_non_const_red_acc144;\n" -" cvt.s64.s32 %rd42, %r2;\n" -" mul.wide.s32 %rd43, %r2, 4;\n" -" add.u64 %rd44, %rd41, %rd43;\n" -" mov.f32 %f149, %f36;\n" -" st.shared.f32 [%rd44+0], %f149;\n" -" mov.f32 %f150, %f35;\n" -" st.shared.f32 [%rd44+512], %f150;\n" -" mov.f32 %f151, %f34;\n" -" st.shared.f32 [%rd44+1024], %f151;\n" -" mov.f32 %f152, %f38;\n" -" st.shared.f32 [%rd44+1536], %f152;\n" -" mov.f32 %f153, %f37;\n" -" st.shared.f32 [%rd44+2048], %f153;\n" -" shr.s32 %r66, %r1, 31;\n" -" mov.s32 %r67, 1;\n" -" and.b32 %r68, %r66, %r67;\n" -" add.s32 %r69, %r68, %r1;\n" -" shr.s32 %r70, %r69, 1;\n" -" mov.s32 %r71, %r70;\n" -" mov.u32 %r72, 0;\n" -" setp.ne.u32 %p13, %r70, %r72;\n" -" @!%p13 bra $Lt_0_29954;\n" -"$Lt_0_30466:\n" -" setp.ge.u32 %p14, %r14, %r71;\n" -" @%p14 bra $Lt_0_30722;\n" -" add.u32 %r73, %r2, %r71;\n" -" cvt.u64.u32 %rd45, %r73;\n" -" mul.wide.u32 %rd46, %r73, 4;\n" -" add.u64 %rd47, %rd41, %rd46;\n" -" ld.shared.f32 %f154, [%rd47+0];\n" -" add.ftz.f32 %f149, %f154, %f149;\n" -" st.shared.f32 [%rd44+0], %f149;\n" -" ld.shared.f32 %f155, [%rd47+512];\n" -" add.ftz.f32 %f150, %f155, %f150;\n" -" st.shared.f32 [%rd44+512], %f150;\n" -" ld.shared.f32 %f156, [%rd47+1024];\n" -" add.ftz.f32 %f151, %f156, %f151;\n" -" st.shared.f32 [%rd44+1024], %f151;\n" -" ld.shared.f32 %f157, [%rd47+1536];\n" -" add.ftz.f32 %f152, %f157, %f152;\n" -" st.shared.f32 [%rd44+1536], %f152;\n" -" ld.shared.f32 %f158, [%rd47+2048];\n" -" add.ftz.f32 %f153, %f158, %f153;\n" -" st.shared.f32 [%rd44+2048], %f153;\n" -"$Lt_0_30722:\n" -" shr.u32 %r71, %r71, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p15, %r71, %r74;\n" -" @%p15 bra $Lt_0_30466;\n" -"$Lt_0_29954:\n" -" mov.f32 %f36, %f149;\n" -" mov.f32 %f35, %f150;\n" -" mov.f32 %f34, %f151;\n" -" mov.f32 %f38, %f152;\n" -" mov.f32 %f37, %f153;\n" -" ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r76, 0;\n" -" setp.le.s32 %p16, %r75, %r76;\n" -" @%p16 bra $Lt_0_31490;\n" -" mov.f32 %f149, %f10;\n" -" st.shared.f32 [%rd44+0], %f149;\n" -" mov.f32 %f150, %f12;\n" -" st.shared.f32 [%rd44+512], %f150;\n" -" mov.f32 %f151, %f14;\n" -" st.shared.f32 [%rd44+1024], %f151;\n" -" mov.f32 %f152, %f16;\n" -" st.shared.f32 [%rd44+1536], %f152;\n" -" mov.f32 %f153, %f18;\n" -" st.shared.f32 [%rd44+2048], %f153;\n" -" mov.f32 %f159, %f19;\n" -" st.shared.f32 [%rd44+2560], %f159;\n" -" mov.s32 %r77, %r70;\n" -" @!%p13 bra $Lt_0_32002;\n" -"$Lt_0_32514:\n" -" setp.ge.u32 %p17, %r14, %r77;\n" -" @%p17 bra $Lt_0_32770;\n" -" add.u32 %r78, %r2, %r77;\n" -" cvt.u64.u32 %rd48, %r78;\n" -" mul.wide.u32 %rd49, %r78, 4;\n" -" add.u64 %rd50, %rd41, %rd49;\n" -" ld.shared.f32 %f160, [%rd50+0];\n" -" add.ftz.f32 %f149, %f160, %f149;\n" -" st.shared.f32 [%rd44+0], %f149;\n" -" ld.shared.f32 %f161, [%rd50+512];\n" -" add.ftz.f32 %f150, %f161, %f150;\n" -" st.shared.f32 [%rd44+512], %f150;\n" -" ld.shared.f32 %f162, [%rd50+1024];\n" -" add.ftz.f32 %f151, %f162, %f151;\n" -" st.shared.f32 [%rd44+1024], %f151;\n" -" ld.shared.f32 %f163, [%rd50+1536];\n" -" add.ftz.f32 %f152, %f163, %f152;\n" -" st.shared.f32 [%rd44+1536], %f152;\n" -" ld.shared.f32 %f164, [%rd50+2048];\n" -" add.ftz.f32 %f153, %f164, %f153;\n" -" st.shared.f32 [%rd44+2048], %f153;\n" -" ld.shared.f32 %f165, [%rd50+2560];\n" -" add.ftz.f32 %f159, %f165, %f159;\n" -" st.shared.f32 [%rd44+2560], %f159;\n" -"$Lt_0_32770:\n" -" shr.u32 %r77, %r77, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p18, %r77, %r79;\n" -" @%p18 bra $Lt_0_32514;\n" -"$Lt_0_32002:\n" -" mov.f32 %f10, %f149;\n" -" mov.f32 %f12, %f150;\n" -" mov.f32 %f14, %f151;\n" -" mov.f32 %f16, %f152;\n" -" mov.f32 %f18, %f153;\n" -" mov.f32 %f20, %f159;\n" -"$Lt_0_31490:\n" -"$Lt_0_29442:\n" -" mov.u32 %r80, 0;\n" -" setp.ne.s32 %p19, %r14, %r80;\n" -" @%p19 bra $Lt_0_33538;\n" -" ld.param.u64 %rd51, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd52, %rd51, %rd3;\n" -" ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r82, 0;\n" -" setp.le.s32 %p20, %r81, %r82;\n" -" @%p20 bra $Lt_0_34050;\n" -" st.global.f32 [%rd52+0], %f38;\n" -" cvt.s64.s32 %rd53, %r9;\n" -" mul.wide.s32 %rd54, %r9, 4;\n" -" add.u64 %rd55, %rd54, %rd52;\n" -" st.global.f32 [%rd55+0], %f37;\n" -" add.u64 %rd52, %rd54, %rd55;\n" -"$Lt_0_34050:\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p21, %r83, %r84;\n" -" @%p21 bra $Lt_0_34562;\n" -" mov.f32 %f166, %f10;\n" -" st.global.f32 [%rd52+0], %f166;\n" -" cvt.s64.s32 %rd56, %r9;\n" -" mul.wide.s32 %rd57, %r9, 4;\n" -" add.u64 %rd58, %rd57, %rd52;\n" -" mov.f32 %f167, %f12;\n" -" st.global.f32 [%rd58+0], %f167;\n" -" add.u64 %rd59, %rd57, %rd58;\n" -" mov.f32 %f168, %f14;\n" -" st.global.f32 [%rd59+0], %f168;\n" -" add.u64 %rd60, %rd57, %rd59;\n" -" mov.f32 %f169, %f16;\n" -" st.global.f32 [%rd60+0], %f169;\n" -" add.u64 %rd52, %rd57, %rd60;\n" -" mov.f32 %f170, %f18;\n" -" st.global.f32 [%rd52+0], %f170;\n" -" mov.f32 %f171, %f20;\n" -" add.u64 %rd61, %rd57, %rd52;\n" -" st.global.f32 [%rd61+0], %f171;\n" -"$Lt_0_34562:\n" -" ld.param.u64 %rd62, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd63, %rd2, 16;\n" -" add.u64 %rd64, %rd62, %rd63;\n" -" mov.f32 %f172, %f173;\n" -" st.global.v4.f32 [%rd64+0], {%f36,%f35,%f34,%f172};\n" -"$Lt_0_33538:\n" -"$Lt_0_23298:\n" -" .loc 16 144 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_fast_q_,\n" -" .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_fast_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<86>;\n" -" .reg .u64 %rd<77>;\n" -" .reg .f32 %f<178>;\n" -" .reg .pred %p<25>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32661_33_non_const_sp_lj3320[32];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32660_34_non_const_lj33360[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32659_34_non_const_lj15296[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32762_55_non_const_red_acc7232[3072];\n" -" .loc 16 154 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 7;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_24834;\n" -" .loc 16 162 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32661_33_non_const_sp_lj3320;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_24834:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32661_33_non_const_sp_lj3320;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_25346;\n" -" .loc 16 164 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32660_34_non_const_lj33360;\n" -" mov.u64 %rd8, __cuda___cuda_local_var_32659_34_non_const_lj15296;\n" -" cvt.s64.s32 %rd9, %r1;\n" -" mul.wide.s32 %rd10, %r1, 16;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_fast_lj1_in];\n" -" add.u64 %rd12, %rd11, %rd10;\n" -" add.u64 %rd13, %rd10, %rd8;\n" -" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd12+0];\n" -" st.shared.v4.f32 [%rd13+0], {%f2,%f3,%f4,%f5};\n" -" .loc 16 165 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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_25346:\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32660_34_non_const_lj33360;\n" -" mov.u64 %rd8, __cuda___cuda_local_var_32659_34_non_const_lj15296;\n" -" .loc 16 174 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 176 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r5, %r1, %r4;\n" -" cvt.s32.u32 %r6, %ntid.x;\n" -" div.s32 %r7, %r6, %r4;\n" -" cvt.s32.u32 %r8, %ctaid.x;\n" -" mul.lo.s32 %r9, %r8, %r7;\n" -" add.s32 %r10, %r5, %r9;\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p3, %r10, %r11;\n" -" @%p3 bra $Lt_1_36098;\n" -" .loc 16 181 0\n" -" cvt.s64.s32 %rd17, %r10;\n" -" mul.wide.s32 %rd18, %r10, 4;\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd20, %rd18, %rd19;\n" -" ld.global.s32 %r12, [%rd20+0];\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd21, %r13;\n" -" mul.wide.s32 %rd22, %r13, 4;\n" -" add.u64 %rd23, %rd22, %rd20;\n" -" ld.global.s32 %r14, [%rd23+0];\n" -" sub.s32 %r15, %r4, 1;\n" -" and.b32 %r16, %r15, %r1;\n" -" cvt.s64.s32 %rd24, %r16;\n" -" mul.wide.s32 %rd25, %r16, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p4, %rd26, %rd19;\n" -" @%p4 bra $Lt_1_26626;\n" -" cvt.s32.s64 %r17, %rd21;\n" -" mul.lo.s32 %r18, %r17, %r4;\n" -" mov.s32 %r19, %r18;\n" -" mul.lo.s32 %r20, %r15, %r10;\n" -" add.s32 %r21, %r17, %r20;\n" -" cvt.s64.s32 %rd27, %r21;\n" -" mul.wide.s32 %rd28, %r21, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r22, %r15, %r14;\n" -" cvt.s64.s32 %rd30, %r22;\n" -" div.s32 %r23, %r14, %r4;\n" -" mul.lo.s32 %r24, %r18, %r23;\n" -" cvt.s64.s32 %rd31, %r24;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_26370;\n" -"$Lt_1_26626:\n" -" add.u64 %rd36, %rd22, %rd23;\n" -" ld.global.s32 %r25, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r25;\n" -" mul.wide.s32 %rd38, %r25, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r14;\n" -" mul.wide.s32 %rd41, %r14, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r19, %r4;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_26370:\n" -" .loc 16 184 0\n" -" mov.u32 %r26, %r12;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r26,%r28,%r30,%r32}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" .loc 16 185 0\n" -" mov.u32 %r33, %r12;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" mov.s32 %r38, 0;\n" -" mov.u32 %r39, %r38;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r33,%r35,%r37,%r39}];\n" -" mov.f32 %f34, %f30;\n" -" setp.ge.u64 %p5, %rd35, %rd34;\n" -" @%p5 bra $Lt_1_37634;\n" -" cvt.rzi.ftz.s32.f32 %r40, %f29;\n" -" cvt.s64.s32 %rd42, %r19;\n" -" mul.lo.s32 %r41, %r40, 11;\n" -" cvt.rn.f32.s32 %f35, %r41;\n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -"$Lt_1_27394:\n" -" .loc 16 190 0\n" -" ld.global.s32 %r42, [%rd35+0];\n" -" .loc 16 193 0\n" -" shr.s32 %r43, %r42, 30;\n" -" and.b32 %r44, %r43, 3;\n" -" cvt.s64.s32 %rd43, %r44;\n" -" mul.wide.s32 %rd44, %r44, 4;\n" -" add.u64 %rd45, %rd1, %rd44;\n" -" ld.shared.f32 %f41, [%rd45+0];\n" -" .loc 16 194 0\n" -" mov.f32 %f42, 0f3f800000; \n" -" ld.shared.f32 %f43, [%rd45+16];\n" -" sub.ftz.f32 %f44, %f42, %f43;\n" -" .loc 16 197 0\n" -" and.b32 %r45, %r42, 1073741823;\n" -" mov.u32 %r46, %r45;\n" -" mov.s32 %r47, 0;\n" -" mov.u32 %r48, %r47;\n" -" mov.s32 %r49, 0;\n" -" mov.u32 %r50, %r49;\n" -" mov.s32 %r51, 0;\n" -" mov.u32 %r52, %r51;\n" -" tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r46,%r48,%r50,%r52}];\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" mov.f32 %f51, %f47;\n" -" mov.f32 %f52, %f48;\n" -" sub.ftz.f32 %f53, %f27, %f50;\n" -" sub.ftz.f32 %f54, %f26, %f49;\n" -" sub.ftz.f32 %f55, %f28, %f51;\n" -" mul.ftz.f32 %f56, %f53, %f53;\n" -" fma.rn.ftz.f32 %f57, %f54, %f54, %f56;\n" -" fma.rn.ftz.f32 %f58, %f55, %f55, %f57;\n" -" add.ftz.f32 %f59, %f35, %f52;\n" -" cvt.rzi.ftz.s32.f32 %r53, %f59;\n" -" cvt.s64.s32 %rd46, %r53;\n" -" mul.wide.s32 %rd47, %r53, 16;\n" -" add.u64 %rd48, %rd47, %rd8;\n" -" ld.shared.f32 %f60, [%rd48+0];\n" -" setp.gt.ftz.f32 %p6, %f60, %f58;\n" -" @!%p6 bra $Lt_1_31234;\n" -" rcp.approx.ftz.f32 %f61, %f58;\n" -" ld.shared.f32 %f62, [%rd48+4];\n" -" setp.lt.ftz.f32 %p7, %f58, %f62;\n" -" @!%p7 bra $Lt_1_28418;\n" -" add.u64 %rd49, %rd47, %rd7;\n" -" ld.shared.f32 %f63, [%rd49+0];\n" -" mov.f32 %f64, 0f40000000; \n" -" setp.eq.ftz.f32 %p8, %f63, %f64;\n" -" @!%p8 bra $Lt_1_28930;\n" -" .loc 16 212 0\n" -" mul.ftz.f32 %f65, %f61, %f61;\n" -" mov.f32 %f66, %f65;\n" -" mov.f32 %f67, %f66;\n" -" .loc 16 213 0\n" -" mul.ftz.f32 %f68, %f65, %f65;\n" -" mov.f32 %f69, %f68;\n" -" bra.uni $Lt_1_29186;\n" -"$Lt_1_28930:\n" -" mov.f32 %f70, 0f3f800000; \n" -" setp.eq.ftz.f32 %p9, %f63, %f70;\n" -" @!%p9 bra $Lt_1_29442;\n" -" .loc 16 215 0\n" -" rsqrt.approx.ftz.f32 %f71, %f58;\n" -" mul.ftz.f32 %f72, %f61, %f71;\n" -" mov.f32 %f68, %f72;\n" -" mov.f32 %f69, %f68;\n" -" .loc 16 216 0\n" -" mul.ftz.f32 %f66, %f72, %f72;\n" -" mov.f32 %f67, %f66;\n" -" bra.uni $Lt_1_29186;\n" -"$Lt_1_29442:\n" -" .loc 16 218 0\n" -" mul.ftz.f32 %f73, %f61, %f61;\n" -" mul.ftz.f32 %f74, %f61, %f73;\n" -" mov.f32 %f66, %f74;\n" -" mov.f32 %f67, %f66;\n" -" .loc 16 219 0\n" -" mov.f32 %f68, %f74;\n" -" mov.f32 %f69, %f68;\n" -"$Lt_1_29186:\n" -"$Lt_1_28674:\n" -" .loc 16 221 0\n" -" mul.ftz.f32 %f75, %f41, %f66;\n" -" ld.shared.v2.f32 {%f76,%f77}, [%rd48+8];\n" -" mul.ftz.f32 %f78, %f76, %f68;\n" -" sub.ftz.f32 %f79, %f78, %f77;\n" -" mul.ftz.f32 %f80, %f75, %f79;\n" -" bra.uni $Lt_1_28162;\n" -"$Lt_1_28418:\n" -" .loc 16 223 0\n" -" mov.f32 %f80, 0f00000000; \n" -"$Lt_1_28162:\n" -" ld.param.f32 %f81, [__cudaparm_kernel_pair_fast_cut_coulsq];\n" -" setp.gt.ftz.f32 %p10, %f81, %f58;\n" -" @!%p10 bra $Lt_1_29954;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f82, %f61;\n" -" ld.param.f32 %f83, [__cudaparm_kernel_pair_fast_g_ewald];\n" -" mul.ftz.f32 %f84, %f83, %f82;\n" -" mul.ftz.f32 %f85, %f84, %f84;\n" -" neg.ftz.f32 %f86, %f85;\n" -" mov.f32 %f87, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f88, %f86, %f87;\n" -" ex2.approx.ftz.f32 %f89, %f88;\n" -" .loc 16 230 0\n" -" mov.f32 %f90, 0f3f800000; \n" -" mov.f32 %f91, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f92, %f91, %f84, %f90;\n" -" rcp.approx.ftz.f32 %f93, %f92;\n" -" mov.f32 %f94, 0f3e827906; \n" -" mov.f32 %f95, 0fbe91a98e; \n" -" mov.f32 %f96, 0f3fb5f0e3; \n" -" mov.f32 %f97, 0fbfba00e3; \n" -" mov.f32 %f98, 0f3f87dc22; \n" -" fma.rn.ftz.f32 %f99, %f98, %f93, %f97;\n" -" fma.rn.ftz.f32 %f100, %f93, %f99, %f96;\n" -" fma.rn.ftz.f32 %f101, %f93, %f100, %f95;\n" -" fma.rn.ftz.f32 %f102, %f93, %f101, %f94;\n" -" mul.ftz.f32 %f103, %f93, %f102;\n" -" mul.ftz.f32 %f104, %f89, %f103;\n" -" mov.f32 %f105, %f104;\n" -" .loc 16 231 0\n" -" mov.u32 %r54, %r45;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f106,%f107,%f108,%f109},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f110, %f106;\n" -" ld.param.f32 %f111, [__cudaparm_kernel_pair_fast_qqrd2e];\n" -" mul.ftz.f32 %f112, %f111, %f34;\n" -" mul.ftz.f32 %f113, %f112, %f110;\n" -" div.approx.ftz.f32 %f114, %f113, %f82;\n" -" mov.f32 %f115, %f114;\n" -" .loc 16 232 0\n" -" mov.f32 %f116, 0f3f906ebb; \n" -" mul.ftz.f32 %f117, %f84, %f116;\n" -" fma.rn.ftz.f32 %f118, %f89, %f117, %f104;\n" -" sub.ftz.f32 %f119, %f118, %f44;\n" -" mul.ftz.f32 %f120, %f114, %f119;\n" -" bra.uni $Lt_1_29698;\n" -"$Lt_1_29954:\n" -" .loc 16 234 0\n" -" mov.f32 %f120, 0f00000000; \n" -"$Lt_1_29698:\n" -" .loc 16 238 0\n" -" add.ftz.f32 %f121, %f120, %f80;\n" -" mul.ftz.f32 %f122, %f121, %f61;\n" -" fma.rn.ftz.f32 %f38, %f54, %f122, %f38;\n" -" .loc 16 239 0\n" -" fma.rn.ftz.f32 %f37, %f53, %f122, %f37;\n" -" .loc 16 240 0\n" -" fma.rn.ftz.f32 %f36, %f55, %f122, %f36;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p11, %r61, %r62;\n" -" @%p11 bra $Lt_1_30722;\n" -" .loc 16 243 0\n" -" mov.f32 %f123, %f115;\n" -" mov.f32 %f124, %f105;\n" -" sub.ftz.f32 %f125, %f124, %f44;\n" -" fma.rn.ftz.f32 %f126, %f123, %f125, %f39;\n" -" selp.f32 %f39, %f126, %f39, %p10;\n" -" @!%p7 bra $Lt_1_30722;\n" -" .loc 16 246 0\n" -" add.u64 %rd50, %rd47, %rd7;\n" -" ld.shared.v4.f32 {_,%f127,%f128,%f129}, [%rd50+0];\n" -" mov.f32 %f130, %f67;\n" -" mul.ftz.f32 %f131, %f130, %f41;\n" -" mov.f32 %f132, %f69;\n" -" mul.ftz.f32 %f133, %f127, %f132;\n" -" sub.ftz.f32 %f134, %f133, %f128;\n" -" mul.ftz.f32 %f135, %f131, %f134;\n" -" sub.ftz.f32 %f136, %f135, %f129;\n" -" add.ftz.f32 %f40, %f40, %f136;\n" -"$Lt_1_30722:\n" -"$Lt_1_30210:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p12, %r63, %r64;\n" -" @%p12 bra $Lt_1_31234;\n" -" .loc 16 251 0\n" -" mov.f32 %f137, %f11;\n" -" mul.ftz.f32 %f138, %f54, %f54;\n" -" fma.rn.ftz.f32 %f139, %f122, %f138, %f137;\n" -" mov.f32 %f11, %f139;\n" -" .loc 16 252 0\n" -" mov.f32 %f140, %f13;\n" -" fma.rn.ftz.f32 %f141, %f122, %f56, %f140;\n" -" mov.f32 %f13, %f141;\n" -" .loc 16 253 0\n" -" mov.f32 %f142, %f15;\n" -" mul.ftz.f32 %f143, %f55, %f55;\n" -" fma.rn.ftz.f32 %f144, %f122, %f143, %f142;\n" -" mov.f32 %f15, %f144;\n" -" .loc 16 254 0\n" -" mov.f32 %f145, %f17;\n" -" mul.ftz.f32 %f146, %f53, %f54;\n" -" fma.rn.ftz.f32 %f147, %f122, %f146, %f145;\n" -" mov.f32 %f17, %f147;\n" -" .loc 16 255 0\n" -" mov.f32 %f148, %f19;\n" -" mul.ftz.f32 %f149, %f54, %f55;\n" -" fma.rn.ftz.f32 %f150, %f122, %f149, %f148;\n" -" mov.f32 %f19, %f150;\n" -" .loc 16 256 0\n" -" mul.ftz.f32 %f151, %f53, %f55;\n" -" fma.rn.ftz.f32 %f20, %f122, %f151, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_31234:\n" -"$Lt_1_27650:\n" -" .loc 16 189 0\n" -" mul.lo.u64 %rd51, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd51;\n" -" setp.lt.u64 %p13, %rd35, %rd34;\n" -" @%p13 bra $Lt_1_27394;\n" -" bra.uni $Lt_1_26882;\n" -"$Lt_1_37634:\n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -"$Lt_1_26882:\n" -" mov.u32 %r65, 1;\n" -" setp.le.s32 %p14, %r4, %r65;\n" -" @%p14 bra $Lt_1_34050;\n" -" .loc 16 261 0\n" -" mov.u64 %rd52, __cuda___cuda_local_var_32762_55_non_const_red_acc7232;\n" -" cvt.s64.s32 %rd53, %r1;\n" -" mul.wide.s32 %rd54, %r1, 4;\n" -" add.u64 %rd55, %rd52, %rd54;\n" -" mov.f32 %f152, %f38;\n" -" st.shared.f32 [%rd55+0], %f152;\n" -" mov.f32 %f153, %f37;\n" -" st.shared.f32 [%rd55+512], %f153;\n" -" mov.f32 %f154, %f36;\n" -" st.shared.f32 [%rd55+1024], %f154;\n" -" mov.f32 %f155, %f40;\n" -" st.shared.f32 [%rd55+1536], %f155;\n" -" mov.f32 %f156, %f39;\n" -" st.shared.f32 [%rd55+2048], %f156;\n" -" shr.s32 %r66, %r4, 31;\n" -" mov.s32 %r67, 1;\n" -" and.b32 %r68, %r66, %r67;\n" -" add.s32 %r69, %r68, %r4;\n" -" shr.s32 %r70, %r69, 1;\n" -" mov.s32 %r71, %r70;\n" -" mov.u32 %r72, 0;\n" -" setp.ne.u32 %p15, %r70, %r72;\n" -" @!%p15 bra $Lt_1_32514;\n" -"$Lt_1_33026:\n" -" setp.ge.u32 %p16, %r16, %r71;\n" -" @%p16 bra $Lt_1_33282;\n" -" add.u32 %r73, %r1, %r71;\n" -" cvt.u64.u32 %rd56, %r73;\n" -" mul.wide.u32 %rd57, %r73, 4;\n" -" add.u64 %rd58, %rd52, %rd57;\n" -" ld.shared.f32 %f157, [%rd58+0];\n" -" add.ftz.f32 %f152, %f157, %f152;\n" -" st.shared.f32 [%rd55+0], %f152;\n" -" ld.shared.f32 %f158, [%rd58+512];\n" -" add.ftz.f32 %f153, %f158, %f153;\n" -" st.shared.f32 [%rd55+512], %f153;\n" -" ld.shared.f32 %f159, [%rd58+1024];\n" -" add.ftz.f32 %f154, %f159, %f154;\n" -" st.shared.f32 [%rd55+1024], %f154;\n" -" ld.shared.f32 %f160, [%rd58+1536];\n" -" add.ftz.f32 %f155, %f160, %f155;\n" -" st.shared.f32 [%rd55+1536], %f155;\n" -" ld.shared.f32 %f161, [%rd58+2048];\n" -" add.ftz.f32 %f156, %f161, %f156;\n" -" st.shared.f32 [%rd55+2048], %f156;\n" -"$Lt_1_33282:\n" -" shr.u32 %r71, %r71, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p17, %r71, %r74;\n" -" @%p17 bra $Lt_1_33026;\n" -"$Lt_1_32514:\n" -" mov.f32 %f38, %f152;\n" -" mov.f32 %f37, %f153;\n" -" mov.f32 %f36, %f154;\n" -" mov.f32 %f40, %f155;\n" -" mov.f32 %f39, %f156;\n" -" ld.param.s32 %r75, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r76, 0;\n" -" setp.le.s32 %p18, %r75, %r76;\n" -" @%p18 bra $Lt_1_34050;\n" -" mov.f32 %f152, %f11;\n" -" st.shared.f32 [%rd55+0], %f152;\n" -" mov.f32 %f153, %f13;\n" -" st.shared.f32 [%rd55+512], %f153;\n" -" mov.f32 %f154, %f15;\n" -" st.shared.f32 [%rd55+1024], %f154;\n" -" mov.f32 %f155, %f17;\n" -" st.shared.f32 [%rd55+1536], %f155;\n" -" mov.f32 %f156, %f19;\n" -" st.shared.f32 [%rd55+2048], %f156;\n" -" mov.f32 %f162, %f20;\n" -" st.shared.f32 [%rd55+2560], %f162;\n" -" mov.s32 %r77, %r70;\n" -" @!%p15 bra $Lt_1_34562;\n" -"$Lt_1_35074:\n" -" setp.ge.u32 %p19, %r16, %r77;\n" -" @%p19 bra $Lt_1_35330;\n" -" add.u32 %r78, %r1, %r77;\n" -" cvt.u64.u32 %rd59, %r78;\n" -" mul.wide.u32 %rd60, %r78, 4;\n" -" add.u64 %rd61, %rd52, %rd60;\n" -" ld.shared.f32 %f163, [%rd61+0];\n" -" add.ftz.f32 %f152, %f163, %f152;\n" -" st.shared.f32 [%rd55+0], %f152;\n" -" ld.shared.f32 %f164, [%rd61+512];\n" -" add.ftz.f32 %f153, %f164, %f153;\n" -" st.shared.f32 [%rd55+512], %f153;\n" -" ld.shared.f32 %f165, [%rd61+1024];\n" -" add.ftz.f32 %f154, %f165, %f154;\n" -" st.shared.f32 [%rd55+1024], %f154;\n" -" ld.shared.f32 %f166, [%rd61+1536];\n" -" add.ftz.f32 %f155, %f166, %f155;\n" -" st.shared.f32 [%rd55+1536], %f155;\n" -" ld.shared.f32 %f167, [%rd61+2048];\n" -" add.ftz.f32 %f156, %f167, %f156;\n" -" st.shared.f32 [%rd55+2048], %f156;\n" -" ld.shared.f32 %f168, [%rd61+2560];\n" -" add.ftz.f32 %f162, %f168, %f162;\n" -" st.shared.f32 [%rd55+2560], %f162;\n" -"$Lt_1_35330:\n" -" shr.u32 %r77, %r77, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p20, %r77, %r79;\n" -" @%p20 bra $Lt_1_35074;\n" -"$Lt_1_34562:\n" -" mov.f32 %f11, %f152;\n" -" mov.f32 %f13, %f153;\n" -" mov.f32 %f15, %f154;\n" -" mov.f32 %f17, %f155;\n" -" mov.f32 %f19, %f156;\n" -" mov.f32 %f21, %f162;\n" -"$Lt_1_34050:\n" -"$Lt_1_32002:\n" -" mov.u32 %r80, 0;\n" -" setp.ne.s32 %p21, %r16, %r80;\n" -" @%p21 bra $Lt_1_36098;\n" -" ld.param.u64 %rd62, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd63, %rd62, %rd18;\n" -" ld.param.s32 %r81, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r82, 0;\n" -" setp.le.s32 %p22, %r81, %r82;\n" -" @%p22 bra $Lt_1_36610;\n" -" st.global.f32 [%rd63+0], %f40;\n" -" cvt.s64.s32 %rd64, %r11;\n" -" mul.wide.s32 %rd65, %r11, 4;\n" -" add.u64 %rd66, %rd65, %rd63;\n" -" st.global.f32 [%rd66+0], %f39;\n" -" add.u64 %rd63, %rd65, %rd66;\n" -"$Lt_1_36610:\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p23, %r83, %r84;\n" -" @%p23 bra $Lt_1_37122;\n" -" mov.f32 %f169, %f11;\n" -" st.global.f32 [%rd63+0], %f169;\n" -" cvt.s64.s32 %rd67, %r11;\n" -" mul.wide.s32 %rd68, %r11, 4;\n" -" add.u64 %rd69, %rd68, %rd63;\n" -" mov.f32 %f170, %f13;\n" -" st.global.f32 [%rd69+0], %f170;\n" -" add.u64 %rd70, %rd68, %rd69;\n" -" mov.f32 %f171, %f15;\n" -" st.global.f32 [%rd70+0], %f171;\n" -" add.u64 %rd71, %rd68, %rd70;\n" -" mov.f32 %f172, %f17;\n" -" st.global.f32 [%rd71+0], %f172;\n" -" add.u64 %rd63, %rd68, %rd71;\n" -" mov.f32 %f173, %f19;\n" -" st.global.f32 [%rd63+0], %f173;\n" -" mov.f32 %f174, %f21;\n" -" add.u64 %rd72, %rd68, %rd63;\n" -" st.global.f32 [%rd72+0], %f174;\n" -"$Lt_1_37122:\n" -" ld.param.u64 %rd73, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd74, %rd17, 16;\n" -" add.u64 %rd75, %rd73, %rd74;\n" -" mov.f32 %f175, %f176;\n" -" st.global.v4.f32 [%rd75+0], {%f38,%f37,%f36,%f175};\n" -"$Lt_1_36098:\n" -"$Lt_1_25858:\n" -" .loc 16 264 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/cg_cmm_ptx.h b/lib/gpu/cg_cmm_ptx.h deleted file mode 100644 index 1409d07723..0000000000 --- a/lib/gpu/cg_cmm_ptx.h +++ /dev/null @@ -1,906 +0,0 @@ -const char * cg_cmm = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref 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_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<72>;\n" -" .reg .u64 %rd<63>;\n" -" .reg .f32 %f<111>;\n" -" .reg .pred %p<21>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32608_55_non_const_red_acc108[3072];\n" -" .loc 16 31 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 36 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 37 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 38 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 39 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 46 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" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_28930;\n" -" .loc 16 51 0\n" -" ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" cvt.s64.s32 %rd4, %r8;\n" -" mul.wide.s32 %rd5, %r8, 4;\n" -" ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd7, %rd5, %rd6;\n" -" add.u64 %rd8, %rd3, %rd7;\n" -" ld.global.s32 %r11, [%rd8+0];\n" -" sub.s32 %r12, %r1, 1;\n" -" and.b32 %r13, %r12, %r2;\n" -" cvt.s64.s32 %rd9, %r13;\n" -" mul.wide.s32 %rd10, %r13, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd6;\n" -" @%p2 bra $Lt_0_20994;\n" -" cvt.s32.s64 %r14, %rd2;\n" -" mul.lo.s32 %r15, %r14, %r1;\n" -" mov.s32 %r16, %r15;\n" -" mul.lo.s32 %r17, %r12, %r8;\n" -" add.s32 %r18, %r14, %r17;\n" -" cvt.s64.s32 %rd12, %r18;\n" -" mul.wide.s32 %rd13, %r18, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r19, %r12, %r11;\n" -" cvt.s64.s32 %rd15, %r19;\n" -" div.s32 %r20, %r11, %r1;\n" -" mul.lo.s32 %r21, %r15, %r20;\n" -" cvt.s64.s32 %rd16, %r21;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_20738;\n" -"$Lt_0_20994:\n" -" add.u64 %rd21, %rd3, %rd8;\n" -" ld.global.s32 %r22, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r22;\n" -" mul.wide.s32 %rd23, %r22, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r11;\n" -" mul.wide.s32 %rd26, %r11, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r16, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_20738:\n" -" .loc 16 54 0\n" -" ld.global.s32 %r23, [%rd7+0];\n" -" mov.u32 %r24, %r23;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f21, %f17;\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_30466;\n" -" cvt.rzi.ftz.s32.f32 %r31, %f24;\n" -" cvt.s64.s32 %rd27, %r16;\n" -" ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r33, %r32, %r31;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92;\n" -"$Lt_0_21762:\n" -" .loc 16 60 0\n" -" ld.global.s32 %r34, [%rd20+0];\n" -" .loc 16 61 0\n" -" shr.s32 %r35, %r34, 30;\n" -" and.b32 %r36, %r35, 3;\n" -" cvt.s64.s32 %rd30, %r36;\n" -" mul.wide.s32 %rd31, %r36, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f29, [%rd32+0];\n" -" .loc 16 64 0\n" -" and.b32 %r37, %r34, 1073741823;\n" -" mov.u32 %r38, %r37;\n" -" mov.s32 %r39, 0;\n" -" mov.u32 %r40, %r39;\n" -" mov.s32 %r41, 0;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}];\n" -" mov.f32 %f34, %f30;\n" -" mov.f32 %f35, %f31;\n" -" mov.f32 %f36, %f32;\n" -" mov.f32 %f37, %f33;\n" -" cvt.rzi.ftz.s32.f32 %r45, %f37;\n" -" sub.ftz.f32 %f38, %f22, %f35;\n" -" sub.ftz.f32 %f39, %f21, %f34;\n" -" sub.ftz.f32 %f40, %f23, %f36;\n" -" mul.ftz.f32 %f41, %f38, %f38;\n" -" fma.rn.ftz.f32 %f42, %f39, %f39, %f41;\n" -" fma.rn.ftz.f32 %f43, %f40, %f40, %f42;\n" -" add.s32 %r46, %r45, %r33;\n" -" cvt.s64.s32 %rd33, %r46;\n" -" mul.wide.s32 %rd34, %r46, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f44, [%rd35+0];\n" -" setp.gt.ftz.f32 %p4, %f44, %f43;\n" -" @!%p4 bra $Lt_0_24066;\n" -" rcp.approx.ftz.f32 %f45, %f43;\n" -" ld.global.f32 %f46, [%rd35+4];\n" -" mov.f32 %f47, 0f40000000; \n" -" setp.eq.ftz.f32 %p5, %f46, %f47;\n" -" @!%p5 bra $Lt_0_22786;\n" -" .loc 16 79 0\n" -" mul.ftz.f32 %f48, %f45, %f45;\n" -" mov.f32 %f49, %f48;\n" -" .loc 16 80 0\n" -" mul.ftz.f32 %f50, %f48, %f48;\n" -" bra.uni $Lt_0_23042;\n" -"$Lt_0_22786:\n" -" mov.f32 %f51, 0f3f800000; \n" -" setp.eq.ftz.f32 %p6, %f46, %f51;\n" -" @!%p6 bra $Lt_0_23298;\n" -" .loc 16 82 0\n" -" sqrt.approx.ftz.f32 %f52, %f45;\n" -" mul.ftz.f32 %f53, %f45, %f52;\n" -" mov.f32 %f50, %f53;\n" -" .loc 16 83 0\n" -" mul.ftz.f32 %f49, %f53, %f53;\n" -" bra.uni $Lt_0_23042;\n" -"$Lt_0_23298:\n" -" .loc 16 85 0\n" -" mul.ftz.f32 %f54, %f45, %f45;\n" -" mul.ftz.f32 %f55, %f45, %f54;\n" -" mov.f32 %f49, %f55;\n" -" .loc 16 86 0\n" -" mov.f32 %f50, %f55;\n" -"$Lt_0_23042:\n" -"$Lt_0_22530:\n" -" .loc 16 88 0\n" -" mul.ftz.f32 %f56, %f45, %f29;\n" -" mul.ftz.f32 %f57, %f49, %f56;\n" -" ld.global.v2.f32 {%f58,%f59}, [%rd35+8];\n" -" mul.ftz.f32 %f60, %f58, %f50;\n" -" sub.ftz.f32 %f61, %f60, %f59;\n" -" mul.ftz.f32 %f62, %f57, %f61;\n" -" .loc 16 90 0\n" -" fma.rn.ftz.f32 %f27, %f39, %f62, %f27;\n" -" .loc 16 91 0\n" -" fma.rn.ftz.f32 %f26, %f38, %f62, %f26;\n" -" .loc 16 92 0\n" -" fma.rn.ftz.f32 %f25, %f40, %f62, %f25;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p7, %r47, %r48;\n" -" @%p7 bra $Lt_0_23554;\n" -" .loc 16 94 0\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" ld.global.v4.f32 {%f63,%f64,%f65,_}, [%rd37+0];\n" -" mul.ftz.f32 %f66, %f29, %f49;\n" -" mul.ftz.f32 %f67, %f63, %f50;\n" -" sub.ftz.f32 %f68, %f67, %f64;\n" -" mul.ftz.f32 %f69, %f66, %f68;\n" -" sub.ftz.f32 %f70, %f69, %f65;\n" -" add.ftz.f32 %f28, %f28, %f70;\n" -"$Lt_0_23554:\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p8, %r49, %r50;\n" -" @%p8 bra $Lt_0_24066;\n" -" .loc 16 97 0\n" -" mov.f32 %f71, %f6;\n" -" mul.ftz.f32 %f72, %f39, %f39;\n" -" fma.rn.ftz.f32 %f73, %f62, %f72, %f71;\n" -" mov.f32 %f6, %f73;\n" -" .loc 16 98 0\n" -" mov.f32 %f74, %f8;\n" -" fma.rn.ftz.f32 %f75, %f62, %f41, %f74;\n" -" mov.f32 %f8, %f75;\n" -" .loc 16 99 0\n" -" mov.f32 %f76, %f10;\n" -" mul.ftz.f32 %f77, %f40, %f40;\n" -" fma.rn.ftz.f32 %f78, %f62, %f77, %f76;\n" -" mov.f32 %f10, %f78;\n" -" .loc 16 100 0\n" -" mov.f32 %f79, %f12;\n" -" mul.ftz.f32 %f80, %f38, %f39;\n" -" fma.rn.ftz.f32 %f81, %f62, %f80, %f79;\n" -" mov.f32 %f12, %f81;\n" -" .loc 16 101 0\n" -" mov.f32 %f82, %f14;\n" -" mul.ftz.f32 %f83, %f39, %f40;\n" -" fma.rn.ftz.f32 %f84, %f62, %f83, %f82;\n" -" mov.f32 %f14, %f84;\n" -" .loc 16 102 0\n" -" mul.ftz.f32 %f85, %f38, %f40;\n" -" fma.rn.ftz.f32 %f15, %f62, %f85, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_0_24066:\n" -"$Lt_0_22018:\n" -" .loc 16 58 0\n" -" mul.lo.u64 %rd38, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd38;\n" -" setp.lt.u64 %p9, %rd20, %rd19;\n" -" @%p9 bra $Lt_0_21762;\n" -" bra.uni $Lt_0_21250;\n" -"$Lt_0_30466:\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -"$Lt_0_21250:\n" -" mov.u32 %r51, 1;\n" -" setp.le.s32 %p10, %r1, %r51;\n" -" @%p10 bra $Lt_0_26882;\n" -" .loc 16 107 0\n" -" mov.u64 %rd39, __cuda___cuda_local_var_32608_55_non_const_red_acc108;\n" -" cvt.s64.s32 %rd40, %r2;\n" -" mul.wide.s32 %rd41, %r2, 4;\n" -" add.u64 %rd42, %rd39, %rd41;\n" -" mov.f32 %f86, %f27;\n" -" st.shared.f32 [%rd42+0], %f86;\n" -" mov.f32 %f87, %f26;\n" -" st.shared.f32 [%rd42+512], %f87;\n" -" mov.f32 %f88, %f25;\n" -" st.shared.f32 [%rd42+1024], %f88;\n" -" mov.f32 %f89, %f28;\n" -" st.shared.f32 [%rd42+1536], %f89;\n" -" shr.s32 %r52, %r1, 31;\n" -" mov.s32 %r53, 1;\n" -" and.b32 %r54, %r52, %r53;\n" -" add.s32 %r55, %r54, %r1;\n" -" shr.s32 %r56, %r55, 1;\n" -" mov.s32 %r57, %r56;\n" -" mov.u32 %r58, 0;\n" -" setp.ne.u32 %p11, %r56, %r58;\n" -" @!%p11 bra $Lt_0_25346;\n" -"$Lt_0_25858:\n" -" setp.ge.u32 %p12, %r13, %r57;\n" -" @%p12 bra $Lt_0_26114;\n" -" add.u32 %r59, %r2, %r57;\n" -" cvt.u64.u32 %rd43, %r59;\n" -" mul.wide.u32 %rd44, %r59, 4;\n" -" add.u64 %rd45, %rd39, %rd44;\n" -" ld.shared.f32 %f90, [%rd45+0];\n" -" add.ftz.f32 %f86, %f90, %f86;\n" -" st.shared.f32 [%rd42+0], %f86;\n" -" ld.shared.f32 %f91, [%rd45+512];\n" -" add.ftz.f32 %f87, %f91, %f87;\n" -" st.shared.f32 [%rd42+512], %f87;\n" -" ld.shared.f32 %f92, [%rd45+1024];\n" -" add.ftz.f32 %f88, %f92, %f88;\n" -" st.shared.f32 [%rd42+1024], %f88;\n" -" ld.shared.f32 %f93, [%rd45+1536];\n" -" add.ftz.f32 %f89, %f93, %f89;\n" -" st.shared.f32 [%rd42+1536], %f89;\n" -"$Lt_0_26114:\n" -" shr.u32 %r57, %r57, 1;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p13, %r57, %r60;\n" -" @%p13 bra $Lt_0_25858;\n" -"$Lt_0_25346:\n" -" mov.f32 %f27, %f86;\n" -" mov.f32 %f26, %f87;\n" -" mov.f32 %f25, %f88;\n" -" mov.f32 %f28, %f89;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p14, %r61, %r62;\n" -" @%p14 bra $Lt_0_26882;\n" -" mov.f32 %f86, %f6;\n" -" st.shared.f32 [%rd42+0], %f86;\n" -" mov.f32 %f87, %f8;\n" -" st.shared.f32 [%rd42+512], %f87;\n" -" mov.f32 %f88, %f10;\n" -" st.shared.f32 [%rd42+1024], %f88;\n" -" mov.f32 %f89, %f12;\n" -" st.shared.f32 [%rd42+1536], %f89;\n" -" mov.f32 %f94, %f14;\n" -" st.shared.f32 [%rd42+2048], %f94;\n" -" mov.f32 %f95, %f15;\n" -" st.shared.f32 [%rd42+2560], %f95;\n" -" mov.s32 %r63, %r56;\n" -" @!%p11 bra $Lt_0_27394;\n" -"$Lt_0_27906:\n" -" setp.ge.u32 %p15, %r13, %r63;\n" -" @%p15 bra $Lt_0_28162;\n" -" add.u32 %r64, %r2, %r63;\n" -" cvt.u64.u32 %rd46, %r64;\n" -" mul.wide.u32 %rd47, %r64, 4;\n" -" add.u64 %rd48, %rd39, %rd47;\n" -" ld.shared.f32 %f96, [%rd48+0];\n" -" add.ftz.f32 %f86, %f96, %f86;\n" -" st.shared.f32 [%rd42+0], %f86;\n" -" ld.shared.f32 %f97, [%rd48+512];\n" -" add.ftz.f32 %f87, %f97, %f87;\n" -" st.shared.f32 [%rd42+512], %f87;\n" -" ld.shared.f32 %f98, [%rd48+1024];\n" -" add.ftz.f32 %f88, %f98, %f88;\n" -" st.shared.f32 [%rd42+1024], %f88;\n" -" ld.shared.f32 %f99, [%rd48+1536];\n" -" add.ftz.f32 %f89, %f99, %f89;\n" -" st.shared.f32 [%rd42+1536], %f89;\n" -" ld.shared.f32 %f100, [%rd48+2048];\n" -" add.ftz.f32 %f94, %f100, %f94;\n" -" st.shared.f32 [%rd42+2048], %f94;\n" -" ld.shared.f32 %f101, [%rd48+2560];\n" -" add.ftz.f32 %f95, %f101, %f95;\n" -" st.shared.f32 [%rd42+2560], %f95;\n" -"$Lt_0_28162:\n" -" shr.u32 %r63, %r63, 1;\n" -" mov.u32 %r65, 0;\n" -" setp.ne.u32 %p16, %r63, %r65;\n" -" @%p16 bra $Lt_0_27906;\n" -"$Lt_0_27394:\n" -" mov.f32 %f6, %f86;\n" -" mov.f32 %f8, %f87;\n" -" mov.f32 %f10, %f88;\n" -" mov.f32 %f12, %f89;\n" -" mov.f32 %f14, %f94;\n" -" mov.f32 %f16, %f95;\n" -"$Lt_0_26882:\n" -"$Lt_0_24834:\n" -" mov.u32 %r66, 0;\n" -" setp.ne.s32 %p17, %r13, %r66;\n" -" @%p17 bra $Lt_0_28930;\n" -" ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd50, %rd49, %rd5;\n" -" ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r68, 0;\n" -" setp.le.s32 %p18, %r67, %r68;\n" -" @%p18 bra $Lt_0_29442;\n" -" st.global.f32 [%rd50+0], %f28;\n" -" cvt.s64.s32 %rd51, %r9;\n" -" mul.wide.s32 %rd52, %r9, 4;\n" -" add.u64 %rd50, %rd50, %rd52;\n" -"$Lt_0_29442:\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p19, %r69, %r70;\n" -" @%p19 bra $Lt_0_29954;\n" -" mov.f32 %f102, %f6;\n" -" st.global.f32 [%rd50+0], %f102;\n" -" cvt.s64.s32 %rd53, %r9;\n" -" mul.wide.s32 %rd54, %r9, 4;\n" -" add.u64 %rd55, %rd54, %rd50;\n" -" mov.f32 %f103, %f8;\n" -" st.global.f32 [%rd55+0], %f103;\n" -" add.u64 %rd56, %rd54, %rd55;\n" -" mov.f32 %f104, %f10;\n" -" st.global.f32 [%rd56+0], %f104;\n" -" add.u64 %rd57, %rd54, %rd56;\n" -" mov.f32 %f105, %f12;\n" -" st.global.f32 [%rd57+0], %f105;\n" -" add.u64 %rd50, %rd54, %rd57;\n" -" mov.f32 %f106, %f14;\n" -" st.global.f32 [%rd50+0], %f106;\n" -" mov.f32 %f107, %f16;\n" -" add.u64 %rd58, %rd54, %rd50;\n" -" st.global.f32 [%rd58+0], %f107;\n" -"$Lt_0_29954:\n" -" ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd60, %rd4, 16;\n" -" add.u64 %rd61, %rd59, %rd60;\n" -" mov.f32 %f108, %f109;\n" -" st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f108};\n" -"$Lt_0_28930:\n" -"$Lt_0_20226:\n" -" .loc 16 110 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<74>;\n" -" .reg .u64 %rd<75>;\n" -" .reg .f32 %f<118>;\n" -" .reg .pred %p<24>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32625_33_non_const_sp_lj3268[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32623_34_non_const_lj13296[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32624_34_non_const_lj35232[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32702_55_non_const_red_acc7168[3072];\n" -" .loc 16 118 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_22530;\n" -" .loc 16 126 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32625_33_non_const_sp_lj3268;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_22530:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32625_33_non_const_sp_lj3268;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_23042;\n" -" .loc 16 128 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32623_34_non_const_lj13296;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_23554;\n" -" .loc 16 130 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32624_34_non_const_lj35232;\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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_23554:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32624_34_non_const_lj35232;\n" -"$Lt_1_23042:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32624_34_non_const_lj35232;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32623_34_non_const_lj13296;\n" -" .loc 16 138 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 140 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_32770;\n" -" .loc 16 145 0\n" -" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd17, %r14;\n" -" mul.wide.s32 %rd18, %r14, 4;\n" -" cvt.s64.s32 %rd19, %r12;\n" -" mul.wide.s32 %rd20, %r12, 4;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd22, %rd20, %rd21;\n" -" add.u64 %rd23, %rd18, %rd22;\n" -" ld.global.s32 %r15, [%rd23+0];\n" -" sub.s32 %r16, %r6, 1;\n" -" and.b32 %r17, %r16, %r1;\n" -" cvt.s64.s32 %rd24, %r17;\n" -" mul.wide.s32 %rd25, %r17, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd26, %rd21;\n" -" @%p5 bra $Lt_1_24834;\n" -" cvt.s32.s64 %r18, %rd17;\n" -" mul.lo.s32 %r19, %r18, %r6;\n" -" mov.s32 %r20, %r19;\n" -" mul.lo.s32 %r21, %r16, %r12;\n" -" add.s32 %r22, %r18, %r21;\n" -" cvt.s64.s32 %rd27, %r22;\n" -" mul.wide.s32 %rd28, %r22, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r23, %r16, %r15;\n" -" cvt.s64.s32 %rd30, %r23;\n" -" div.s32 %r24, %r15, %r6;\n" -" mul.lo.s32 %r25, %r19, %r24;\n" -" cvt.s64.s32 %rd31, %r25;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_24578;\n" -"$Lt_1_24834:\n" -" add.u64 %rd36, %rd18, %rd23;\n" -" ld.global.s32 %r26, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r26;\n" -" mul.wide.s32 %rd38, %r26, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r15;\n" -" mul.wide.s32 %rd41, %r15, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r20, %r6;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_24578:\n" -" .loc 16 148 0\n" -" ld.global.s32 %r27, [%rd22+0];\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" setp.ge.u64 %p6, %rd35, %rd34;\n" -" @%p6 bra $Lt_1_34306;\n" -" cvt.rzi.ftz.s32.f32 %r35, %f29;\n" -" cvt.s64.s32 %rd42, %r20;\n" -" mul.lo.s32 %r36, %r35, 11;\n" -" cvt.rn.f32.s32 %f30, %r36;\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_25602:\n" -" .loc 16 155 0\n" -" ld.global.s32 %r37, [%rd35+0];\n" -" .loc 16 156 0\n" -" shr.s32 %r38, %r37, 30;\n" -" and.b32 %r39, %r38, 3;\n" -" cvt.s64.s32 %rd43, %r39;\n" -" mul.wide.s32 %rd44, %r39, 4;\n" -" add.u64 %rd45, %rd1, %rd44;\n" -" ld.shared.f32 %f35, [%rd45+0];\n" -" .loc 16 159 0\n" -" and.b32 %r40, %r37, 1073741823;\n" -" mov.u32 %r41, %r40;\n" -" mov.s32 %r42, 0;\n" -" mov.u32 %r43, %r42;\n" -" mov.s32 %r44, 0;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r41,%r43,%r45,%r47}];\n" -" mov.f32 %f40, %f36;\n" -" mov.f32 %f41, %f37;\n" -" mov.f32 %f42, %f38;\n" -" mov.f32 %f43, %f39;\n" -" sub.ftz.f32 %f44, %f27, %f41;\n" -" sub.ftz.f32 %f45, %f26, %f40;\n" -" sub.ftz.f32 %f46, %f28, %f42;\n" -" mul.ftz.f32 %f47, %f44, %f44;\n" -" fma.rn.ftz.f32 %f48, %f45, %f45, %f47;\n" -" fma.rn.ftz.f32 %f49, %f46, %f46, %f48;\n" -" add.ftz.f32 %f50, %f30, %f43;\n" -" cvt.rzi.ftz.s32.f32 %r48, %f50;\n" -" cvt.s64.s32 %rd46, %r48;\n" -" mul.wide.s32 %rd47, %r48, 16;\n" -" add.u64 %rd48, %rd47, %rd7;\n" -" ld.shared.f32 %f51, [%rd48+0];\n" -" setp.gt.ftz.f32 %p7, %f51, %f49;\n" -" @!%p7 bra $Lt_1_27906;\n" -" rcp.approx.ftz.f32 %f52, %f49;\n" -" ld.shared.f32 %f53, [%rd48+4];\n" -" mov.f32 %f54, 0f40000000; \n" -" setp.eq.ftz.f32 %p8, %f53, %f54;\n" -" @!%p8 bra $Lt_1_26626;\n" -" .loc 16 173 0\n" -" mul.ftz.f32 %f55, %f52, %f52;\n" -" mov.f32 %f56, %f55;\n" -" .loc 16 174 0\n" -" mul.ftz.f32 %f57, %f55, %f55;\n" -" bra.uni $Lt_1_26882;\n" -"$Lt_1_26626:\n" -" mov.f32 %f58, 0f3f800000; \n" -" setp.eq.ftz.f32 %p9, %f53, %f58;\n" -" @!%p9 bra $Lt_1_27138;\n" -" .loc 16 176 0\n" -" sqrt.approx.ftz.f32 %f59, %f52;\n" -" mul.ftz.f32 %f60, %f52, %f59;\n" -" mov.f32 %f57, %f60;\n" -" .loc 16 177 0\n" -" mul.ftz.f32 %f56, %f60, %f60;\n" -" bra.uni $Lt_1_26882;\n" -"$Lt_1_27138:\n" -" .loc 16 179 0\n" -" mul.ftz.f32 %f61, %f52, %f52;\n" -" mul.ftz.f32 %f62, %f52, %f61;\n" -" mov.f32 %f56, %f62;\n" -" .loc 16 180 0\n" -" mov.f32 %f57, %f62;\n" -"$Lt_1_26882:\n" -"$Lt_1_26370:\n" -" .loc 16 182 0\n" -" mul.ftz.f32 %f63, %f52, %f35;\n" -" mul.ftz.f32 %f64, %f56, %f63;\n" -" ld.shared.v2.f32 {%f65,%f66}, [%rd48+8];\n" -" mul.ftz.f32 %f67, %f65, %f57;\n" -" sub.ftz.f32 %f68, %f67, %f66;\n" -" mul.ftz.f32 %f69, %f64, %f68;\n" -" .loc 16 184 0\n" -" fma.rn.ftz.f32 %f33, %f45, %f69, %f33;\n" -" .loc 16 185 0\n" -" fma.rn.ftz.f32 %f32, %f44, %f69, %f32;\n" -" .loc 16 186 0\n" -" fma.rn.ftz.f32 %f31, %f46, %f69, %f31;\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p10, %r49, %r50;\n" -" @%p10 bra $Lt_1_27394;\n" -" .loc 16 188 0\n" -" add.u64 %rd49, %rd47, %rd13;\n" -" ld.shared.v4.f32 {%f70,%f71,%f72,_}, [%rd49+0];\n" -" mul.ftz.f32 %f73, %f35, %f56;\n" -" mul.ftz.f32 %f74, %f70, %f57;\n" -" sub.ftz.f32 %f75, %f74, %f71;\n" -" mul.ftz.f32 %f76, %f73, %f75;\n" -" sub.ftz.f32 %f77, %f76, %f72;\n" -" add.ftz.f32 %f34, %f34, %f77;\n" -"$Lt_1_27394:\n" -" ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r52, 0;\n" -" setp.le.s32 %p11, %r51, %r52;\n" -" @%p11 bra $Lt_1_27906;\n" -" .loc 16 191 0\n" -" mov.f32 %f78, %f11;\n" -" mul.ftz.f32 %f79, %f45, %f45;\n" -" fma.rn.ftz.f32 %f80, %f69, %f79, %f78;\n" -" mov.f32 %f11, %f80;\n" -" .loc 16 192 0\n" -" mov.f32 %f81, %f13;\n" -" fma.rn.ftz.f32 %f82, %f69, %f47, %f81;\n" -" mov.f32 %f13, %f82;\n" -" .loc 16 193 0\n" -" mov.f32 %f83, %f15;\n" -" mul.ftz.f32 %f84, %f46, %f46;\n" -" fma.rn.ftz.f32 %f85, %f69, %f84, %f83;\n" -" mov.f32 %f15, %f85;\n" -" .loc 16 194 0\n" -" mov.f32 %f86, %f17;\n" -" mul.ftz.f32 %f87, %f44, %f45;\n" -" fma.rn.ftz.f32 %f88, %f69, %f87, %f86;\n" -" mov.f32 %f17, %f88;\n" -" .loc 16 195 0\n" -" mov.f32 %f89, %f19;\n" -" mul.ftz.f32 %f90, %f45, %f46;\n" -" fma.rn.ftz.f32 %f91, %f69, %f90, %f89;\n" -" mov.f32 %f19, %f91;\n" -" .loc 16 196 0\n" -" mul.ftz.f32 %f92, %f44, %f46;\n" -" fma.rn.ftz.f32 %f20, %f69, %f92, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_27906:\n" -"$Lt_1_25858:\n" -" .loc 16 153 0\n" -" mul.lo.u64 %rd50, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd50;\n" -" setp.lt.u64 %p12, %rd35, %rd34;\n" -" @%p12 bra $Lt_1_25602;\n" -" bra.uni $Lt_1_25090;\n" -"$Lt_1_34306:\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_25090:\n" -" mov.u32 %r53, 1;\n" -" setp.le.s32 %p13, %r6, %r53;\n" -" @%p13 bra $Lt_1_30722;\n" -" .loc 16 201 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_32702_55_non_const_red_acc7168;\n" -" cvt.s64.s32 %rd52, %r1;\n" -" mul.wide.s32 %rd53, %r1, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f93, %f33;\n" -" st.shared.f32 [%rd54+0], %f93;\n" -" mov.f32 %f94, %f32;\n" -" st.shared.f32 [%rd54+512], %f94;\n" -" mov.f32 %f95, %f31;\n" -" st.shared.f32 [%rd54+1024], %f95;\n" -" mov.f32 %f96, %f34;\n" -" st.shared.f32 [%rd54+1536], %f96;\n" -" shr.s32 %r54, %r6, 31;\n" -" mov.s32 %r55, 1;\n" -" and.b32 %r56, %r54, %r55;\n" -" add.s32 %r57, %r56, %r6;\n" -" shr.s32 %r58, %r57, 1;\n" -" mov.s32 %r59, %r58;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p14, %r58, %r60;\n" -" @!%p14 bra $Lt_1_29186;\n" -"$Lt_1_29698:\n" -" setp.ge.u32 %p15, %r17, %r59;\n" -" @%p15 bra $Lt_1_29954;\n" -" add.u32 %r61, %r1, %r59;\n" -" cvt.u64.u32 %rd55, %r61;\n" -" mul.wide.u32 %rd56, %r61, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f97, [%rd57+0];\n" -" add.ftz.f32 %f93, %f97, %f93;\n" -" st.shared.f32 [%rd54+0], %f93;\n" -" ld.shared.f32 %f98, [%rd57+512];\n" -" add.ftz.f32 %f94, %f98, %f94;\n" -" st.shared.f32 [%rd54+512], %f94;\n" -" ld.shared.f32 %f99, [%rd57+1024];\n" -" add.ftz.f32 %f95, %f99, %f95;\n" -" st.shared.f32 [%rd54+1024], %f95;\n" -" ld.shared.f32 %f100, [%rd57+1536];\n" -" add.ftz.f32 %f96, %f100, %f96;\n" -" st.shared.f32 [%rd54+1536], %f96;\n" -"$Lt_1_29954:\n" -" shr.u32 %r59, %r59, 1;\n" -" mov.u32 %r62, 0;\n" -" setp.ne.u32 %p16, %r59, %r62;\n" -" @%p16 bra $Lt_1_29698;\n" -"$Lt_1_29186:\n" -" mov.f32 %f33, %f93;\n" -" mov.f32 %f32, %f94;\n" -" mov.f32 %f31, %f95;\n" -" mov.f32 %f34, %f96;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p17, %r63, %r64;\n" -" @%p17 bra $Lt_1_30722;\n" -" mov.f32 %f93, %f11;\n" -" st.shared.f32 [%rd54+0], %f93;\n" -" mov.f32 %f94, %f13;\n" -" st.shared.f32 [%rd54+512], %f94;\n" -" mov.f32 %f95, %f15;\n" -" st.shared.f32 [%rd54+1024], %f95;\n" -" mov.f32 %f96, %f17;\n" -" st.shared.f32 [%rd54+1536], %f96;\n" -" mov.f32 %f101, %f19;\n" -" st.shared.f32 [%rd54+2048], %f101;\n" -" mov.f32 %f102, %f20;\n" -" st.shared.f32 [%rd54+2560], %f102;\n" -" mov.s32 %r65, %r58;\n" -" @!%p14 bra $Lt_1_31234;\n" -"$Lt_1_31746:\n" -" setp.ge.u32 %p18, %r17, %r65;\n" -" @%p18 bra $Lt_1_32002;\n" -" add.u32 %r66, %r1, %r65;\n" -" cvt.u64.u32 %rd58, %r66;\n" -" mul.wide.u32 %rd59, %r66, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f103, [%rd60+0];\n" -" add.ftz.f32 %f93, %f103, %f93;\n" -" st.shared.f32 [%rd54+0], %f93;\n" -" ld.shared.f32 %f104, [%rd60+512];\n" -" add.ftz.f32 %f94, %f104, %f94;\n" -" st.shared.f32 [%rd54+512], %f94;\n" -" ld.shared.f32 %f105, [%rd60+1024];\n" -" add.ftz.f32 %f95, %f105, %f95;\n" -" st.shared.f32 [%rd54+1024], %f95;\n" -" ld.shared.f32 %f106, [%rd60+1536];\n" -" add.ftz.f32 %f96, %f106, %f96;\n" -" st.shared.f32 [%rd54+1536], %f96;\n" -" ld.shared.f32 %f107, [%rd60+2048];\n" -" add.ftz.f32 %f101, %f107, %f101;\n" -" st.shared.f32 [%rd54+2048], %f101;\n" -" ld.shared.f32 %f108, [%rd60+2560];\n" -" add.ftz.f32 %f102, %f108, %f102;\n" -" st.shared.f32 [%rd54+2560], %f102;\n" -"$Lt_1_32002:\n" -" shr.u32 %r65, %r65, 1;\n" -" mov.u32 %r67, 0;\n" -" setp.ne.u32 %p19, %r65, %r67;\n" -" @%p19 bra $Lt_1_31746;\n" -"$Lt_1_31234:\n" -" mov.f32 %f11, %f93;\n" -" mov.f32 %f13, %f94;\n" -" mov.f32 %f15, %f95;\n" -" mov.f32 %f17, %f96;\n" -" mov.f32 %f19, %f101;\n" -" mov.f32 %f21, %f102;\n" -"$Lt_1_30722:\n" -"$Lt_1_28674:\n" -" mov.u32 %r68, 0;\n" -" setp.ne.s32 %p20, %r17, %r68;\n" -" @%p20 bra $Lt_1_32770;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd62, %rd61, %rd20;\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p21, %r69, %r70;\n" -" @%p21 bra $Lt_1_33282;\n" -" st.global.f32 [%rd62+0], %f34;\n" -" cvt.s64.s32 %rd63, %r13;\n" -" mul.wide.s32 %rd64, %r13, 4;\n" -" add.u64 %rd62, %rd62, %rd64;\n" -"$Lt_1_33282:\n" -" ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r72, 0;\n" -" setp.le.s32 %p22, %r71, %r72;\n" -" @%p22 bra $Lt_1_33794;\n" -" mov.f32 %f109, %f11;\n" -" st.global.f32 [%rd62+0], %f109;\n" -" cvt.s64.s32 %rd65, %r13;\n" -" mul.wide.s32 %rd66, %r13, 4;\n" -" add.u64 %rd67, %rd66, %rd62;\n" -" mov.f32 %f110, %f13;\n" -" st.global.f32 [%rd67+0], %f110;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" mov.f32 %f111, %f15;\n" -" st.global.f32 [%rd68+0], %f111;\n" -" add.u64 %rd69, %rd66, %rd68;\n" -" mov.f32 %f112, %f17;\n" -" st.global.f32 [%rd69+0], %f112;\n" -" add.u64 %rd62, %rd66, %rd69;\n" -" mov.f32 %f113, %f19;\n" -" st.global.f32 [%rd62+0], %f113;\n" -" mov.f32 %f114, %f21;\n" -" add.u64 %rd70, %rd66, %rd62;\n" -" st.global.f32 [%rd70+0], %f114;\n" -"$Lt_1_33794:\n" -" ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd72, %rd19, 16;\n" -" add.u64 %rd73, %rd71, %rd72;\n" -" mov.f32 %f115, %f116;\n" -" st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f115};\n" -"$Lt_1_32770:\n" -"$Lt_1_24066:\n" -" .loc 16 204 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/charmm_long.ptx b/lib/gpu/charmm_long.ptx deleted file mode 100644 index 39d7cd5923..0000000000 --- a/lib/gpu/charmm_long.ptx +++ /dev/null @@ -1,1200 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009e6b_00000000-9_lal_charmm_long.cpp3.i (/home/sjplimp/ccBI#.BwX2xw) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009e6b_00000000-8_lal_charmm_long.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_charmm_long.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_q_, - .param .f32 __cudaparm_kernel_pair_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_qqrd2e, - .param .f32 __cudaparm_kernel_pair_g_ewald, - .param .f32 __cudaparm_kernel_pair_denom_lj, - .param .f32 __cudaparm_kernel_pair_cut_bothsq, - .param .f32 __cudaparm_kernel_pair_cut_ljsq, - .param .f32 __cudaparm_kernel_pair_cut_lj_innersq, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<91>; - .reg .u64 %rd<65>; - .reg .f32 %f<190>; - .reg .pred %p<23>; - .shared .align 16 .b8 __cuda___cuda_local_var_32542_33_non_const_sp_lj120[32]; - .shared .align 4 .b8 __cuda___cuda_local_var_32646_55_non_const_red_acc152[3072]; - // __cuda_local_var_32554_10_non_const_f = 64 - // __cuda_local_var_32556_9_non_const_virial = 16 - // __cuda_local_var_32590_43_non_const_r6inv = 40 - // __cuda_local_var_32590_50_non_const_prefactor = 52 - // __cuda_local_var_32590_61_non_const__erfc = 48 - // __cuda_local_var_32590_68_non_const_switch1 = 44 - .loc 16 37 0 -$LDWbegin_kernel_pair: - .loc 16 42 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 43 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 44 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 45 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32542_33_non_const_sp_lj120+0], {%f1,%f2,%f3,%f4}; - .loc 16 46 0 - ld.global.f32 %f5, [%rd1+16]; - .loc 16 47 0 - ld.global.f32 %f6, [%rd1+20]; - .loc 16 48 0 - ld.global.f32 %f7, [%rd1+24]; - .loc 16 49 0 - ld.global.f32 %f8, [%rd1+28]; - st.shared.v4.f32 [__cuda___cuda_local_var_32542_33_non_const_sp_lj120+16], {%f5,%f6,%f7,%f8}; - .loc 16 57 0 - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - mov.f32 %f17, 0f00000000; // 0 - mov.f32 %f18, %f17; - mov.f32 %f19, 0f00000000; // 0 - mov.f32 %f20, %f19; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_33026; - .loc 16 62 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd5, %rd3, %rd4; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - sub.s32 %r13, %r1, 1; - and.b32 %r14, %r13, %r2; - cvt.s64.s32 %rd9, %r14; - mul.wide.s32 %rd10, %r14, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd4; - @%p2 bra $Lt_0_24066; - cvt.s32.s64 %r15, %rd6; - mul.lo.s32 %r16, %r15, %r1; - mov.s32 %r17, %r16; - mul.lo.s32 %r18, %r13, %r8; - add.s32 %r19, %r15, %r18; - cvt.s64.s32 %rd12, %r19; - mul.wide.s32 %rd13, %r19, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r20, %r13, %r12; - cvt.s64.s32 %rd15, %r20; - div.s32 %r21, %r12, %r1; - mul.lo.s32 %r22, %r16, %r21; - cvt.s64.s32 %rd16, %r22; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_23810; -$Lt_0_24066: - add.u64 %rd21, %rd7, %rd8; - ld.global.s32 %r23, [%rd21+0]; - cvt.s64.s32 %rd22, %r23; - mul.wide.s32 %rd23, %r23, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r12; - mul.wide.s32 %rd26, %r12, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r17, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_23810: - .loc 16 65 0 - mov.u32 %r24, %r10; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f25, %f21; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - .loc 16 66 0 - mov.u32 %r31, %r10; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}]; - mov.f32 %f33, %f29; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_34562; - cvt.s64.s32 %rd27, %r17; - ld.param.f32 %f34, [__cudaparm_kernel_pair_cut_bothsq]; - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.u64 %rd28, __cuda___cuda_local_var_32542_33_non_const_sp_lj120; -$Lt_0_24834: - // Loop body line 66, nesting depth: 1, estimated iterations: unknown - .loc 16 70 0 - ld.global.s32 %r38, [%rd20+0]; - .loc 16 73 0 - shr.s32 %r39, %r38, 30; - and.b32 %r40, %r39, 3; - cvt.s64.s32 %rd29, %r40; - mul.wide.s32 %rd30, %r40, 4; - add.u64 %rd31, %rd28, %rd30; - ld.shared.f32 %f40, [%rd31+0]; - .loc 16 74 0 - mov.f32 %f41, 0f3f800000; // 1 - ld.shared.f32 %f42, [%rd31+16]; - sub.ftz.f32 %f43, %f41, %f42; - .loc 16 77 0 - and.b32 %r41, %r38, 1073741823; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - mov.s32 %r45, 0; - mov.u32 %r46, %r45; - mov.s32 %r47, 0; - mov.u32 %r48, %r47; - tex.1d.v4.f32.s32 {%f44,%f45,%f46,%f47},[pos_tex,{%r42,%r44,%r46,%r48}]; - mov.f32 %f48, %f44; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - mov.f32 %f51, %f47; - sub.ftz.f32 %f52, %f26, %f49; - sub.ftz.f32 %f53, %f25, %f48; - sub.ftz.f32 %f54, %f27, %f50; - mul.ftz.f32 %f55, %f52, %f52; - fma.rn.ftz.f32 %f56, %f53, %f53, %f55; - fma.rn.ftz.f32 %f57, %f54, %f54, %f56; - setp.lt.ftz.f32 %p4, %f57, %f34; - @!%p4 bra $Lt_0_28162; - ld.param.f32 %f58, [__cudaparm_kernel_pair_cut_ljsq]; - setp.lt.ftz.f32 %p5, %f57, %f58; - rcp.approx.ftz.f32 %f59, %f57; - @!%p5 bra $Lt_0_25858; - .loc 16 92 0 - mul.ftz.f32 %f60, %f59, %f59; - mul.ftz.f32 %f61, %f59, %f60; - mov.f32 %f62, %f61; - .loc 16 93 0 - cvt.rzi.ftz.s32.f32 %r49, %f51; - cvt.rzi.ftz.s32.f32 %r50, %f28; - ld.param.u64 %rd32, [__cudaparm_kernel_pair_lj1]; - ld.param.s32 %r51, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r52, %r51, %r50; - add.s32 %r53, %r49, %r52; - cvt.s64.s32 %rd33, %r53; - mul.wide.s32 %rd34, %r53, 16; - add.u64 %rd35, %rd32, %rd34; - mul.ftz.f32 %f63, %f61, %f40; - ld.global.v2.f32 {%f64,%f65}, [%rd35+0]; - mul.ftz.f32 %f66, %f64, %f61; - sub.ftz.f32 %f67, %f66, %f65; - mul.ftz.f32 %f68, %f63, %f67; - ld.param.f32 %f69, [__cudaparm_kernel_pair_cut_lj_innersq]; - setp.gt.ftz.f32 %p6, %f57, %f69; - @!%p6 bra $Lt_0_25602; - .loc 16 99 0 - add.ftz.f32 %f70, %f57, %f57; - sub.ftz.f32 %f71, %f58, %f57; - add.ftz.f32 %f72, %f70, %f58; - mul.ftz.f32 %f73, %f71, %f71; - mov.f32 %f74, 0f40400000; // 3 - mul.ftz.f32 %f75, %f74, %f69; - sub.ftz.f32 %f76, %f72, %f75; - ld.param.f32 %f77, [__cudaparm_kernel_pair_denom_lj]; - div.approx.ftz.f32 %f78, %f76, %f77; - mul.ftz.f32 %f79, %f73, %f78; - mov.f32 %f80, %f79; - .loc 16 102 0 - mov.f32 %f81, 0f41400000; // 12 - mul.ftz.f32 %f82, %f57, %f81; - mul.ftz.f32 %f83, %f71, %f82; - sub.ftz.f32 %f84, %f57, %f69; - mul.ftz.f32 %f85, %f83, %f84; - div.approx.ftz.f32 %f86, %f85, %f77; - ld.global.v2.f32 {%f87,%f88}, [%rd35+8]; - mul.ftz.f32 %f89, %f87, %f61; - sub.ftz.f32 %f90, %f89, %f88; - mul.ftz.f32 %f91, %f61, %f90; - mul.ftz.f32 %f92, %f86, %f91; - fma.rn.ftz.f32 %f68, %f68, %f79, %f92; - bra.uni $Lt_0_25602; -$Lt_0_25858: - .loc 16 105 0 - mov.f32 %f68, 0f00000000; // 0 -$Lt_0_25602: - ld.param.f32 %f93, [__cudaparm_kernel_pair_cut_coulsq]; - setp.gt.ftz.f32 %p7, %f93, %f57; - @!%p7 bra $Lt_0_26882; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f94, %f59; - ld.param.f32 %f95, [__cudaparm_kernel_pair_g_ewald]; - mul.ftz.f32 %f96, %f95, %f94; - mul.ftz.f32 %f97, %f96, %f96; - neg.ftz.f32 %f98, %f97; - mov.f32 %f99, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f100, %f98, %f99; - ex2.approx.ftz.f32 %f101, %f100; - .loc 16 112 0 - mov.f32 %f102, 0f3f800000; // 1 - mov.f32 %f103, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f104, %f103, %f96, %f102; - rcp.approx.ftz.f32 %f105, %f104; - mov.f32 %f106, 0f3e827906; // 0.25483 - mov.f32 %f107, 0fbe91a98e; // -0.284497 - mov.f32 %f108, 0f3fb5f0e3; // 1.42141 - mov.f32 %f109, 0fbfba00e3; // -1.45315 - mov.f32 %f110, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f111, %f110, %f105, %f109; - fma.rn.ftz.f32 %f112, %f105, %f111, %f108; - fma.rn.ftz.f32 %f113, %f105, %f112, %f107; - fma.rn.ftz.f32 %f114, %f105, %f113, %f106; - mul.ftz.f32 %f115, %f105, %f114; - mul.ftz.f32 %f116, %f101, %f115; - mov.f32 %f117, %f116; - .loc 16 113 0 - mov.u32 %r54, %r41; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f118,%f119,%f120,%f121},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f122, %f118; - ld.param.f32 %f123, [__cudaparm_kernel_pair_qqrd2e]; - mul.ftz.f32 %f124, %f123, %f33; - mul.ftz.f32 %f125, %f124, %f122; - div.approx.ftz.f32 %f126, %f125, %f94; - mov.f32 %f127, %f126; - .loc 16 114 0 - mov.f32 %f128, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f129, %f96, %f128; - fma.rn.ftz.f32 %f130, %f101, %f129, %f116; - sub.ftz.f32 %f131, %f130, %f43; - mul.ftz.f32 %f132, %f126, %f131; - bra.uni $Lt_0_26626; -$Lt_0_26882: - .loc 16 116 0 - mov.f32 %f132, 0f00000000; // 0 -$Lt_0_26626: - .loc 16 120 0 - add.ftz.f32 %f133, %f132, %f68; - mul.ftz.f32 %f134, %f133, %f59; - fma.rn.ftz.f32 %f37, %f53, %f134, %f37; - .loc 16 121 0 - fma.rn.ftz.f32 %f36, %f52, %f134, %f36; - .loc 16 122 0 - fma.rn.ftz.f32 %f35, %f54, %f134, %f35; - ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p8, %r61, %r62; - @%p8 bra $Lt_0_27650; - .loc 16 125 0 - mov.f32 %f135, %f127; - mov.f32 %f136, %f117; - sub.ftz.f32 %f137, %f136, %f43; - fma.rn.ftz.f32 %f138, %f135, %f137, %f38; - selp.f32 %f38, %f138, %f38, %p7; - @!%p5 bra $Lt_0_27650; - .loc 16 128 0 - cvt.rzi.ftz.s32.f32 %r63, %f51; - cvt.rzi.ftz.s32.f32 %r64, %f28; - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj1]; - ld.param.s32 %r65, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r66, %r65, %r64; - add.s32 %r67, %r63, %r66; - cvt.s64.s32 %rd37, %r67; - mul.wide.s32 %rd38, %r67, 16; - add.u64 %rd35, %rd36, %rd38; - mov.f32 %f139, %f62; - ld.global.v2.f32 {%f140,%f141}, [%rd35+8]; - mul.ftz.f32 %f142, %f140, %f139; - sub.ftz.f32 %f143, %f142, %f141; - mul.ftz.f32 %f144, %f139, %f143; - mov.f32 %f145, %f80; - mul.ftz.f32 %f146, %f145, %f144; - ld.param.f32 %f147, [__cudaparm_kernel_pair_cut_lj_innersq]; - setp.lt.ftz.f32 %p9, %f147, %f57; - selp.f32 %f148, %f146, %f144, %p9; - .loc 16 131 0 - fma.rn.ftz.f32 %f39, %f40, %f148, %f39; -$Lt_0_27650: -$Lt_0_27138: - ld.param.s32 %r68, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r69, 0; - setp.le.s32 %p10, %r68, %r69; - @%p10 bra $Lt_0_28162; - .loc 16 135 0 - mov.f32 %f149, %f10; - mul.ftz.f32 %f150, %f53, %f53; - fma.rn.ftz.f32 %f151, %f134, %f150, %f149; - mov.f32 %f10, %f151; - .loc 16 136 0 - mov.f32 %f152, %f12; - fma.rn.ftz.f32 %f153, %f134, %f55, %f152; - mov.f32 %f12, %f153; - .loc 16 137 0 - mov.f32 %f154, %f14; - mul.ftz.f32 %f155, %f54, %f54; - fma.rn.ftz.f32 %f156, %f134, %f155, %f154; - mov.f32 %f14, %f156; - .loc 16 138 0 - mov.f32 %f157, %f16; - mul.ftz.f32 %f158, %f52, %f53; - fma.rn.ftz.f32 %f159, %f134, %f158, %f157; - mov.f32 %f16, %f159; - .loc 16 139 0 - mov.f32 %f160, %f18; - mul.ftz.f32 %f161, %f53, %f54; - fma.rn.ftz.f32 %f162, %f134, %f161, %f160; - mov.f32 %f18, %f162; - .loc 16 140 0 - mul.ftz.f32 %f163, %f52, %f54; - fma.rn.ftz.f32 %f19, %f134, %f163, %f19; - mov.f32 %f20, %f19; -$Lt_0_28162: -$Lt_0_25090: - .loc 16 69 0 - mul.lo.u64 %rd39, %rd27, 4; - add.u64 %rd20, %rd20, %rd39; - setp.lt.u64 %p11, %rd20, %rd19; - @%p11 bra $Lt_0_24834; - bra.uni $Lt_0_24322; -$Lt_0_34562: - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 -$Lt_0_24322: - mov.u32 %r70, 1; - setp.le.s32 %p12, %r1, %r70; - @%p12 bra $Lt_0_30978; - .loc 16 145 0 - mov.u64 %rd40, __cuda___cuda_local_var_32646_55_non_const_red_acc152; - cvt.s64.s32 %rd41, %r2; - mul.wide.s32 %rd42, %r2, 4; - add.u64 %rd43, %rd40, %rd42; - mov.f32 %f164, %f37; - st.shared.f32 [%rd43+0], %f164; - mov.f32 %f165, %f36; - st.shared.f32 [%rd43+512], %f165; - mov.f32 %f166, %f35; - st.shared.f32 [%rd43+1024], %f166; - mov.f32 %f167, %f39; - st.shared.f32 [%rd43+1536], %f167; - mov.f32 %f168, %f38; - st.shared.f32 [%rd43+2048], %f168; - shr.s32 %r71, %r1, 31; - mov.s32 %r72, 1; - and.b32 %r73, %r71, %r72; - add.s32 %r74, %r73, %r1; - shr.s32 %r75, %r74, 1; - mov.s32 %r76, %r75; - mov.u32 %r77, 0; - setp.ne.u32 %p13, %r75, %r77; - @!%p13 bra $Lt_0_29442; -$Lt_0_29954: - setp.ge.u32 %p14, %r14, %r76; - @%p14 bra $Lt_0_30210; - add.u32 %r78, %r2, %r76; - cvt.u64.u32 %rd44, %r78; - mul.wide.u32 %rd45, %r78, 4; - add.u64 %rd46, %rd40, %rd45; - ld.shared.f32 %f169, [%rd46+0]; - add.ftz.f32 %f164, %f169, %f164; - st.shared.f32 [%rd43+0], %f164; - ld.shared.f32 %f170, [%rd46+512]; - add.ftz.f32 %f165, %f170, %f165; - st.shared.f32 [%rd43+512], %f165; - ld.shared.f32 %f171, [%rd46+1024]; - add.ftz.f32 %f166, %f171, %f166; - st.shared.f32 [%rd43+1024], %f166; - ld.shared.f32 %f172, [%rd46+1536]; - add.ftz.f32 %f167, %f172, %f167; - st.shared.f32 [%rd43+1536], %f167; - ld.shared.f32 %f173, [%rd46+2048]; - add.ftz.f32 %f168, %f173, %f168; - st.shared.f32 [%rd43+2048], %f168; -$Lt_0_30210: - shr.u32 %r76, %r76, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p15, %r76, %r79; - @%p15 bra $Lt_0_29954; -$Lt_0_29442: - mov.f32 %f37, %f164; - mov.f32 %f36, %f165; - mov.f32 %f35, %f166; - mov.f32 %f39, %f167; - mov.f32 %f38, %f168; - ld.param.s32 %r80, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r81, 0; - setp.le.s32 %p16, %r80, %r81; - @%p16 bra $Lt_0_30978; - mov.f32 %f164, %f10; - st.shared.f32 [%rd43+0], %f164; - mov.f32 %f165, %f12; - st.shared.f32 [%rd43+512], %f165; - mov.f32 %f166, %f14; - st.shared.f32 [%rd43+1024], %f166; - mov.f32 %f167, %f16; - st.shared.f32 [%rd43+1536], %f167; - mov.f32 %f168, %f18; - st.shared.f32 [%rd43+2048], %f168; - mov.f32 %f174, %f19; - st.shared.f32 [%rd43+2560], %f174; - mov.s32 %r82, %r75; - @!%p13 bra $Lt_0_31490; -$Lt_0_32002: - setp.ge.u32 %p17, %r14, %r82; - @%p17 bra $Lt_0_32258; - add.u32 %r83, %r2, %r82; - cvt.u64.u32 %rd47, %r83; - mul.wide.u32 %rd48, %r83, 4; - add.u64 %rd49, %rd40, %rd48; - ld.shared.f32 %f175, [%rd49+0]; - add.ftz.f32 %f164, %f175, %f164; - st.shared.f32 [%rd43+0], %f164; - ld.shared.f32 %f176, [%rd49+512]; - add.ftz.f32 %f165, %f176, %f165; - st.shared.f32 [%rd43+512], %f165; - ld.shared.f32 %f177, [%rd49+1024]; - add.ftz.f32 %f166, %f177, %f166; - st.shared.f32 [%rd43+1024], %f166; - ld.shared.f32 %f178, [%rd49+1536]; - add.ftz.f32 %f167, %f178, %f167; - st.shared.f32 [%rd43+1536], %f167; - ld.shared.f32 %f179, [%rd49+2048]; - add.ftz.f32 %f168, %f179, %f168; - st.shared.f32 [%rd43+2048], %f168; - ld.shared.f32 %f180, [%rd49+2560]; - add.ftz.f32 %f174, %f180, %f174; - st.shared.f32 [%rd43+2560], %f174; -$Lt_0_32258: - shr.u32 %r82, %r82, 1; - mov.u32 %r84, 0; - setp.ne.u32 %p18, %r82, %r84; - @%p18 bra $Lt_0_32002; -$Lt_0_31490: - mov.f32 %f10, %f164; - mov.f32 %f12, %f165; - mov.f32 %f14, %f166; - mov.f32 %f16, %f167; - mov.f32 %f18, %f168; - mov.f32 %f20, %f174; -$Lt_0_30978: -$Lt_0_28930: - mov.u32 %r85, 0; - setp.ne.s32 %p19, %r14, %r85; - @%p19 bra $Lt_0_33026; - ld.param.u64 %rd50, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd51, %rd50, %rd3; - ld.param.s32 %r86, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r87, 0; - setp.le.s32 %p20, %r86, %r87; - @%p20 bra $Lt_0_33538; - st.global.f32 [%rd51+0], %f39; - cvt.s64.s32 %rd52, %r9; - mul.wide.s32 %rd53, %r9, 4; - add.u64 %rd54, %rd53, %rd51; - st.global.f32 [%rd54+0], %f38; - add.u64 %rd51, %rd53, %rd54; -$Lt_0_33538: - ld.param.s32 %r88, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r89, 0; - setp.le.s32 %p21, %r88, %r89; - @%p21 bra $Lt_0_34050; - mov.f32 %f181, %f10; - st.global.f32 [%rd51+0], %f181; - cvt.s64.s32 %rd55, %r9; - mul.wide.s32 %rd56, %r9, 4; - add.u64 %rd57, %rd56, %rd51; - mov.f32 %f182, %f12; - st.global.f32 [%rd57+0], %f182; - add.u64 %rd58, %rd56, %rd57; - mov.f32 %f183, %f14; - st.global.f32 [%rd58+0], %f183; - add.u64 %rd59, %rd56, %rd58; - mov.f32 %f184, %f16; - st.global.f32 [%rd59+0], %f184; - add.u64 %rd51, %rd56, %rd59; - mov.f32 %f185, %f18; - st.global.f32 [%rd51+0], %f185; - mov.f32 %f186, %f20; - add.u64 %rd60, %rd56, %rd51; - st.global.f32 [%rd60+0], %f186; -$Lt_0_34050: - ld.param.u64 %rd61, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd62, %rd2, 16; - add.u64 %rd63, %rd61, %rd62; - mov.f32 %f187, %f188; - st.global.v4.f32 [%rd63+0], {%f37,%f36,%f35,%f187}; -$Lt_0_33026: -$Lt_0_23298: - .loc 16 148 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_ljd_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_fast_q_, - .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_fast_qqrd2e, - .param .f32 __cudaparm_kernel_pair_fast_g_ewald, - .param .f32 __cudaparm_kernel_pair_fast_denom_lj, - .param .f32 __cudaparm_kernel_pair_fast_cut_bothsq, - .param .f32 __cudaparm_kernel_pair_fast_cut_ljsq, - .param .f32 __cudaparm_kernel_pair_fast_cut_lj_innersq, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<86>; - .reg .u64 %rd<72>; - .reg .f32 %f<196>; - .reg .pred %p<25>; - .shared .align 4 .b8 __cuda___cuda_local_var_32666_33_non_const_sp_lj3336[32]; - .shared .align 8 .b8 __cuda___cuda_local_var_32665_34_non_const_ljd3368[1024]; - .shared .align 4 .b8 __cuda___cuda_local_var_32775_55_non_const_red_acc4392[3072]; - // __cuda_local_var_32675_10_non_const_f = 64 - // __cuda_local_var_32677_9_non_const_virial = 16 - // __cuda_local_var_32712_43_non_const_prefactor = 56 - // __cuda_local_var_32712_54_non_const__erfc = 52 - // __cuda_local_var_32712_61_non_const_switch1 = 48 - // __cuda_local_var_32713_15_non_const_lj3 = 44 - // __cuda_local_var_32713_20_non_const_lj4 = 40 - .loc 16 160 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - cvt.s64.s32 %rd1, %r1; - mov.u32 %r2, 7; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_24834; - .loc 16 167 0 - mov.u64 %rd2, __cuda___cuda_local_var_32666_33_non_const_sp_lj3336; - mul.lo.u64 %rd3, %rd1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd2; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_24834: - mov.u64 %rd7, __cuda___cuda_local_var_32665_34_non_const_ljd3368; - mov.u64 %rd2, __cuda___cuda_local_var_32666_33_non_const_sp_lj3336; - .loc 16 168 0 - mul.lo.u64 %rd8, %rd1, 8; - ld.param.u64 %rd9, [__cudaparm_kernel_pair_fast_ljd_in]; - add.u64 %rd10, %rd9, %rd8; - add.u64 %rd11, %rd8, %rd7; - ld.global.v2.f32 {%f2,%f3}, [%rd10+0]; - st.shared.v2.f32 [%rd11+0], {%f2,%f3}; - add.s32 %r3, %r1, 128; - mov.u32 %r4, 127; - setp.gt.s32 %p2, %r3, %r4; - @%p2 bra $Lt_1_25346; - ld.global.v2.f32 {%f4,%f5}, [%rd10+1024]; - st.shared.v2.f32 [%rd11+1024], {%f4,%f5}; -$Lt_1_25346: - .loc 16 178 0 - mov.f32 %f6, 0f00000000; // 0 - mov.f32 %f7, %f6; - mov.f32 %f8, 0f00000000; // 0 - mov.f32 %f9, %f8; - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - .loc 16 180 0 - bar.sync 0; - ld.param.s32 %r5, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r6, %r1, %r5; - cvt.s32.u32 %r7, %ntid.x; - div.s32 %r8, %r7, %r5; - cvt.s32.u32 %r9, %ctaid.x; - mul.lo.s32 %r10, %r9, %r8; - add.s32 %r11, %r6, %r10; - ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p3, %r11, %r12; - @%p3 bra $Lt_1_35586; - .loc 16 185 0 - cvt.s64.s32 %rd12, %r11; - mul.wide.s32 %rd13, %r11, 4; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd15, %rd13, %rd14; - ld.global.s32 %r13, [%rd15+0]; - ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd16, %r14; - mul.wide.s32 %rd17, %r14, 4; - add.u64 %rd18, %rd17, %rd15; - ld.global.s32 %r15, [%rd18+0]; - sub.s32 %r16, %r5, 1; - and.b32 %r17, %r16, %r1; - cvt.s64.s32 %rd19, %r17; - mul.wide.s32 %rd20, %r17, 4; - ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p4, %rd21, %rd14; - @%p4 bra $Lt_1_26626; - cvt.s32.s64 %r18, %rd16; - mul.lo.s32 %r19, %r18, %r5; - mov.s32 %r20, %r19; - mul.lo.s32 %r21, %r16, %r11; - add.s32 %r22, %r18, %r21; - cvt.s64.s32 %rd22, %r22; - mul.wide.s32 %rd23, %r22, 4; - add.u64 %rd24, %rd18, %rd23; - and.b32 %r23, %r16, %r15; - cvt.s64.s32 %rd25, %r23; - div.s32 %r24, %r15, %r5; - mul.lo.s32 %r25, %r19, %r24; - cvt.s64.s32 %rd26, %r25; - add.u64 %rd27, %rd25, %rd26; - mul.lo.u64 %rd28, %rd27, 4; - add.u64 %rd29, %rd24, %rd28; - add.u64 %rd30, %rd20, %rd24; - bra.uni $Lt_1_26370; -$Lt_1_26626: - add.u64 %rd31, %rd17, %rd18; - ld.global.s32 %r26, [%rd31+0]; - cvt.s64.s32 %rd32, %r26; - mul.wide.s32 %rd33, %r26, 4; - add.u64 %rd34, %rd21, %rd33; - cvt.s64.s32 %rd35, %r15; - mul.wide.s32 %rd36, %r15, 4; - add.u64 %rd29, %rd34, %rd36; - mov.s32 %r20, %r5; - add.u64 %rd30, %rd20, %rd34; -$Lt_1_26370: - .loc 16 188 0 - mov.u32 %r27, %r13; - mov.s32 %r28, 0; - mov.u32 %r29, %r28; - mov.s32 %r30, 0; - mov.u32 %r31, %r30; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - tex.1d.v4.f32.s32 {%f18,%f19,%f20,%f21},[pos_tex,{%r27,%r29,%r31,%r33}]; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - mov.f32 %f25, %f21; - .loc 16 189 0 - mov.u32 %r34, %r13; - mov.s32 %r35, 0; - mov.u32 %r36, %r35; - mov.s32 %r37, 0; - mov.u32 %r38, %r37; - mov.s32 %r39, 0; - mov.u32 %r40, %r39; - tex.1d.v4.f32.s32 {%f26,%f27,%f28,%f29},[q_tex,{%r34,%r36,%r38,%r40}]; - mov.f32 %f30, %f26; - setp.ge.u64 %p5, %rd30, %rd29; - @%p5 bra $Lt_1_37122; - cvt.rzi.ftz.s32.f32 %r41, %f25; - cvt.s64.s32 %rd37, %r20; - ld.param.f32 %f31, [__cudaparm_kernel_pair_fast_cut_bothsq]; - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 -$Lt_1_27394: - // Loop body line 189, nesting depth: 1, estimated iterations: unknown - .loc 16 193 0 - ld.global.s32 %r42, [%rd30+0]; - .loc 16 196 0 - shr.s32 %r43, %r42, 30; - and.b32 %r44, %r43, 3; - cvt.s64.s32 %rd38, %r44; - mul.wide.s32 %rd39, %r44, 4; - add.u64 %rd40, %rd2, %rd39; - ld.shared.f32 %f37, [%rd40+0]; - .loc 16 197 0 - mov.f32 %f38, 0f3f800000; // 1 - ld.shared.f32 %f39, [%rd40+16]; - sub.ftz.f32 %f40, %f38, %f39; - .loc 16 200 0 - and.b32 %r45, %r42, 1073741823; - mov.u32 %r46, %r45; - mov.s32 %r47, 0; - mov.u32 %r48, %r47; - mov.s32 %r49, 0; - mov.u32 %r50, %r49; - mov.s32 %r51, 0; - mov.u32 %r52, %r51; - tex.1d.v4.f32.s32 {%f41,%f42,%f43,%f44},[pos_tex,{%r46,%r48,%r50,%r52}]; - mov.f32 %f45, %f41; - mov.f32 %f46, %f42; - mov.f32 %f47, %f43; - mov.f32 %f48, %f44; - sub.ftz.f32 %f49, %f23, %f46; - sub.ftz.f32 %f50, %f22, %f45; - sub.ftz.f32 %f51, %f24, %f47; - mul.ftz.f32 %f52, %f49, %f49; - fma.rn.ftz.f32 %f53, %f50, %f50, %f52; - fma.rn.ftz.f32 %f54, %f51, %f51, %f53; - setp.lt.ftz.f32 %p6, %f54, %f31; - @!%p6 bra $Lt_1_30722; - ld.param.f32 %f55, [__cudaparm_kernel_pair_fast_cut_ljsq]; - setp.lt.ftz.f32 %p7, %f54, %f55; - rcp.approx.ftz.f32 %f56, %f54; - @!%p7 bra $Lt_1_28418; - .loc 16 215 0 - cvt.rzi.ftz.s32.f32 %r53, %f48; - cvt.s64.s32 %rd41, %r41; - mul.wide.s32 %rd42, %r41, 8; - add.u64 %rd43, %rd7, %rd42; - cvt.s64.s32 %rd44, %r53; - mul.wide.s32 %rd45, %r53, 8; - add.u64 %rd46, %rd7, %rd45; - ld.shared.v2.f32 {%f57,%f58}, [%rd43+0]; - ld.shared.v2.f32 {%f59,%f60}, [%rd46+0]; - mul.ftz.f32 %f61, %f57, %f59; - .loc 16 216 0 - add.ftz.f32 %f62, %f58, %f60; - mov.f32 %f63, 0f3f000000; // 0.5 - mul.ftz.f32 %f64, %f62, %f63; - .loc 16 220 0 - mul.ftz.f32 %f65, %f64, %f64; - sqrt.approx.ftz.f32 %f66, %f61; - mov.f32 %f67, 0f40800000; // 4 - mul.ftz.f32 %f68, %f66, %f67; - mul.ftz.f32 %f69, %f65, %f56; - mul.ftz.f32 %f70, %f69, %f69; - mul.ftz.f32 %f71, %f69, %f70; - mul.ftz.f32 %f72, %f68, %f71; - mov.f32 %f73, %f72; - .loc 16 221 0 - mul.ftz.f32 %f74, %f71, %f72; - mov.f32 %f75, %f74; - .loc 16 222 0 - mov.f32 %f76, 0f40c00000; // 6 - mul.ftz.f32 %f77, %f72, %f76; - mov.f32 %f78, 0f41400000; // 12 - mul.ftz.f32 %f79, %f78, %f74; - sub.ftz.f32 %f80, %f79, %f77; - mul.ftz.f32 %f81, %f37, %f80; - ld.param.f32 %f82, [__cudaparm_kernel_pair_fast_cut_lj_innersq]; - setp.gt.ftz.f32 %p8, %f54, %f82; - @!%p8 bra $Lt_1_28162; - .loc 16 228 0 - add.ftz.f32 %f83, %f54, %f54; - sub.ftz.f32 %f84, %f55, %f54; - add.ftz.f32 %f85, %f83, %f55; - mul.ftz.f32 %f86, %f84, %f84; - mov.f32 %f87, 0f40400000; // 3 - mul.ftz.f32 %f88, %f87, %f82; - sub.ftz.f32 %f89, %f85, %f88; - ld.param.f32 %f90, [__cudaparm_kernel_pair_fast_denom_lj]; - div.approx.ftz.f32 %f91, %f89, %f90; - mul.ftz.f32 %f92, %f86, %f91; - mov.f32 %f93, %f92; - .loc 16 231 0 - mov.f32 %f94, 0f41400000; // 12 - mul.ftz.f32 %f95, %f54, %f94; - mul.ftz.f32 %f96, %f84, %f95; - sub.ftz.f32 %f97, %f54, %f82; - mul.ftz.f32 %f98, %f96, %f97; - div.approx.ftz.f32 %f99, %f98, %f90; - sub.ftz.f32 %f100, %f74, %f72; - mul.ftz.f32 %f101, %f99, %f100; - fma.rn.ftz.f32 %f81, %f81, %f92, %f101; - bra.uni $Lt_1_28162; -$Lt_1_28418: - .loc 16 234 0 - mov.f32 %f81, 0f00000000; // 0 -$Lt_1_28162: - ld.param.f32 %f102, [__cudaparm_kernel_pair_fast_cut_coulsq]; - setp.gt.ftz.f32 %p9, %f102, %f54; - @!%p9 bra $Lt_1_29442; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f103, %f56; - ld.param.f32 %f104, [__cudaparm_kernel_pair_fast_g_ewald]; - mul.ftz.f32 %f105, %f104, %f103; - mul.ftz.f32 %f106, %f105, %f105; - neg.ftz.f32 %f107, %f106; - mov.f32 %f108, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f109, %f107, %f108; - ex2.approx.ftz.f32 %f110, %f109; - .loc 16 241 0 - mov.f32 %f111, 0f3f800000; // 1 - mov.f32 %f112, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f113, %f112, %f105, %f111; - rcp.approx.ftz.f32 %f114, %f113; - mov.f32 %f115, 0f3e827906; // 0.25483 - mov.f32 %f116, 0fbe91a98e; // -0.284497 - mov.f32 %f117, 0f3fb5f0e3; // 1.42141 - mov.f32 %f118, 0fbfba00e3; // -1.45315 - mov.f32 %f119, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f120, %f119, %f114, %f118; - fma.rn.ftz.f32 %f121, %f114, %f120, %f117; - fma.rn.ftz.f32 %f122, %f114, %f121, %f116; - fma.rn.ftz.f32 %f123, %f114, %f122, %f115; - mul.ftz.f32 %f124, %f114, %f123; - mul.ftz.f32 %f125, %f110, %f124; - mov.f32 %f126, %f125; - .loc 16 242 0 - mov.u32 %r54, %r45; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f127,%f128,%f129,%f130},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f131, %f127; - ld.param.f32 %f132, [__cudaparm_kernel_pair_fast_qqrd2e]; - mul.ftz.f32 %f133, %f132, %f30; - mul.ftz.f32 %f134, %f133, %f131; - div.approx.ftz.f32 %f135, %f134, %f103; - mov.f32 %f136, %f135; - .loc 16 243 0 - mov.f32 %f137, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f138, %f105, %f137; - fma.rn.ftz.f32 %f139, %f110, %f138, %f125; - sub.ftz.f32 %f140, %f139, %f40; - mul.ftz.f32 %f141, %f135, %f140; - bra.uni $Lt_1_29186; -$Lt_1_29442: - .loc 16 245 0 - mov.f32 %f141, 0f00000000; // 0 -$Lt_1_29186: - .loc 16 249 0 - add.ftz.f32 %f142, %f141, %f81; - mul.ftz.f32 %f143, %f142, %f56; - fma.rn.ftz.f32 %f34, %f50, %f143, %f34; - .loc 16 250 0 - fma.rn.ftz.f32 %f33, %f49, %f143, %f33; - .loc 16 251 0 - fma.rn.ftz.f32 %f32, %f51, %f143, %f32; - ld.param.s32 %r61, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p10, %r61, %r62; - @%p10 bra $Lt_1_30210; - .loc 16 254 0 - mov.f32 %f144, %f136; - mov.f32 %f145, %f126; - sub.ftz.f32 %f146, %f145, %f40; - fma.rn.ftz.f32 %f147, %f144, %f146, %f35; - selp.f32 %f35, %f147, %f35, %p9; - @!%p7 bra $Lt_1_30210; - .loc 16 260 0 - mov.f32 %f148, %f75; - mov.f32 %f149, %f73; - sub.ftz.f32 %f150, %f148, %f149; - mov.f32 %f151, %f93; - mul.ftz.f32 %f152, %f151, %f150; - ld.param.f32 %f153, [__cudaparm_kernel_pair_fast_cut_lj_innersq]; - setp.lt.ftz.f32 %p11, %f153, %f54; - selp.f32 %f154, %f152, %f150, %p11; - fma.rn.ftz.f32 %f36, %f37, %f154, %f36; -$Lt_1_30210: -$Lt_1_29698: - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p12, %r63, %r64; - @%p12 bra $Lt_1_30722; - .loc 16 264 0 - mov.f32 %f155, %f7; - mul.ftz.f32 %f156, %f50, %f50; - fma.rn.ftz.f32 %f157, %f143, %f156, %f155; - mov.f32 %f7, %f157; - .loc 16 265 0 - mov.f32 %f158, %f9; - fma.rn.ftz.f32 %f159, %f143, %f52, %f158; - mov.f32 %f9, %f159; - .loc 16 266 0 - mov.f32 %f160, %f11; - mul.ftz.f32 %f161, %f51, %f51; - fma.rn.ftz.f32 %f162, %f143, %f161, %f160; - mov.f32 %f11, %f162; - .loc 16 267 0 - mov.f32 %f163, %f13; - mul.ftz.f32 %f164, %f49, %f50; - fma.rn.ftz.f32 %f165, %f143, %f164, %f163; - mov.f32 %f13, %f165; - .loc 16 268 0 - mov.f32 %f166, %f15; - mul.ftz.f32 %f167, %f50, %f51; - fma.rn.ftz.f32 %f168, %f143, %f167, %f166; - mov.f32 %f15, %f168; - .loc 16 269 0 - mul.ftz.f32 %f169, %f49, %f51; - fma.rn.ftz.f32 %f16, %f143, %f169, %f16; - mov.f32 %f17, %f16; -$Lt_1_30722: -$Lt_1_27650: - .loc 16 192 0 - mul.lo.u64 %rd47, %rd37, 4; - add.u64 %rd30, %rd30, %rd47; - setp.lt.u64 %p13, %rd30, %rd29; - @%p13 bra $Lt_1_27394; - bra.uni $Lt_1_26882; -$Lt_1_37122: - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 -$Lt_1_26882: - mov.u32 %r65, 1; - setp.le.s32 %p14, %r5, %r65; - @%p14 bra $Lt_1_33538; - .loc 16 274 0 - mov.u64 %rd48, __cuda___cuda_local_var_32775_55_non_const_red_acc4392; - mul.lo.u64 %rd49, %rd1, 4; - add.u64 %rd50, %rd48, %rd49; - mov.f32 %f170, %f34; - st.shared.f32 [%rd50+0], %f170; - mov.f32 %f171, %f33; - st.shared.f32 [%rd50+512], %f171; - mov.f32 %f172, %f32; - st.shared.f32 [%rd50+1024], %f172; - mov.f32 %f173, %f36; - st.shared.f32 [%rd50+1536], %f173; - mov.f32 %f174, %f35; - st.shared.f32 [%rd50+2048], %f174; - shr.s32 %r66, %r5, 31; - mov.s32 %r67, 1; - and.b32 %r68, %r66, %r67; - add.s32 %r69, %r68, %r5; - shr.s32 %r70, %r69, 1; - mov.s32 %r71, %r70; - mov.u32 %r72, 0; - setp.ne.u32 %p15, %r70, %r72; - @!%p15 bra $Lt_1_32002; -$Lt_1_32514: - setp.ge.u32 %p16, %r17, %r71; - @%p16 bra $Lt_1_32770; - add.u32 %r73, %r1, %r71; - cvt.u64.u32 %rd51, %r73; - mul.wide.u32 %rd52, %r73, 4; - add.u64 %rd53, %rd48, %rd52; - ld.shared.f32 %f175, [%rd53+0]; - add.ftz.f32 %f170, %f175, %f170; - st.shared.f32 [%rd50+0], %f170; - ld.shared.f32 %f176, [%rd53+512]; - add.ftz.f32 %f171, %f176, %f171; - st.shared.f32 [%rd50+512], %f171; - ld.shared.f32 %f177, [%rd53+1024]; - add.ftz.f32 %f172, %f177, %f172; - st.shared.f32 [%rd50+1024], %f172; - ld.shared.f32 %f178, [%rd53+1536]; - add.ftz.f32 %f173, %f178, %f173; - st.shared.f32 [%rd50+1536], %f173; - ld.shared.f32 %f179, [%rd53+2048]; - add.ftz.f32 %f174, %f179, %f174; - st.shared.f32 [%rd50+2048], %f174; -$Lt_1_32770: - shr.u32 %r71, %r71, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p17, %r71, %r74; - @%p17 bra $Lt_1_32514; -$Lt_1_32002: - mov.f32 %f34, %f170; - mov.f32 %f33, %f171; - mov.f32 %f32, %f172; - mov.f32 %f36, %f173; - mov.f32 %f35, %f174; - ld.param.s32 %r75, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r76, 0; - setp.le.s32 %p18, %r75, %r76; - @%p18 bra $Lt_1_33538; - mov.f32 %f170, %f7; - st.shared.f32 [%rd50+0], %f170; - mov.f32 %f171, %f9; - st.shared.f32 [%rd50+512], %f171; - mov.f32 %f172, %f11; - st.shared.f32 [%rd50+1024], %f172; - mov.f32 %f173, %f13; - st.shared.f32 [%rd50+1536], %f173; - mov.f32 %f174, %f15; - st.shared.f32 [%rd50+2048], %f174; - mov.f32 %f180, %f16; - st.shared.f32 [%rd50+2560], %f180; - mov.s32 %r77, %r70; - @!%p15 bra $Lt_1_34050; -$Lt_1_34562: - setp.ge.u32 %p19, %r17, %r77; - @%p19 bra $Lt_1_34818; - add.u32 %r78, %r1, %r77; - cvt.u64.u32 %rd54, %r78; - mul.wide.u32 %rd55, %r78, 4; - add.u64 %rd56, %rd48, %rd55; - ld.shared.f32 %f181, [%rd56+0]; - add.ftz.f32 %f170, %f181, %f170; - st.shared.f32 [%rd50+0], %f170; - ld.shared.f32 %f182, [%rd56+512]; - add.ftz.f32 %f171, %f182, %f171; - st.shared.f32 [%rd50+512], %f171; - ld.shared.f32 %f183, [%rd56+1024]; - add.ftz.f32 %f172, %f183, %f172; - st.shared.f32 [%rd50+1024], %f172; - ld.shared.f32 %f184, [%rd56+1536]; - add.ftz.f32 %f173, %f184, %f173; - st.shared.f32 [%rd50+1536], %f173; - ld.shared.f32 %f185, [%rd56+2048]; - add.ftz.f32 %f174, %f185, %f174; - st.shared.f32 [%rd50+2048], %f174; - ld.shared.f32 %f186, [%rd56+2560]; - add.ftz.f32 %f180, %f186, %f180; - st.shared.f32 [%rd50+2560], %f180; -$Lt_1_34818: - shr.u32 %r77, %r77, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p20, %r77, %r79; - @%p20 bra $Lt_1_34562; -$Lt_1_34050: - mov.f32 %f7, %f170; - mov.f32 %f9, %f171; - mov.f32 %f11, %f172; - mov.f32 %f13, %f173; - mov.f32 %f15, %f174; - mov.f32 %f17, %f180; -$Lt_1_33538: -$Lt_1_31490: - mov.u32 %r80, 0; - setp.ne.s32 %p21, %r17, %r80; - @%p21 bra $Lt_1_35586; - ld.param.u64 %rd57, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd58, %rd57, %rd13; - ld.param.s32 %r81, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r82, 0; - setp.le.s32 %p22, %r81, %r82; - @%p22 bra $Lt_1_36098; - st.global.f32 [%rd58+0], %f36; - cvt.s64.s32 %rd59, %r12; - mul.wide.s32 %rd60, %r12, 4; - add.u64 %rd61, %rd60, %rd58; - st.global.f32 [%rd61+0], %f35; - add.u64 %rd58, %rd60, %rd61; -$Lt_1_36098: - ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r84, 0; - setp.le.s32 %p23, %r83, %r84; - @%p23 bra $Lt_1_36610; - mov.f32 %f187, %f7; - st.global.f32 [%rd58+0], %f187; - cvt.s64.s32 %rd62, %r12; - mul.wide.s32 %rd63, %r12, 4; - add.u64 %rd64, %rd63, %rd58; - mov.f32 %f188, %f9; - st.global.f32 [%rd64+0], %f188; - add.u64 %rd65, %rd63, %rd64; - mov.f32 %f189, %f11; - st.global.f32 [%rd65+0], %f189; - add.u64 %rd66, %rd63, %rd65; - mov.f32 %f190, %f13; - st.global.f32 [%rd66+0], %f190; - add.u64 %rd58, %rd63, %rd66; - mov.f32 %f191, %f15; - st.global.f32 [%rd58+0], %f191; - mov.f32 %f192, %f17; - add.u64 %rd67, %rd63, %rd58; - st.global.f32 [%rd67+0], %f192; -$Lt_1_36610: - ld.param.u64 %rd68, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd69, %rd12, 16; - add.u64 %rd70, %rd68, %rd69; - mov.f32 %f193, %f194; - st.global.v4.f32 [%rd70+0], {%f34,%f33,%f32,%f193}; -$Lt_1_35586: -$Lt_1_25858: - .loc 16 277 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/charmm_long_ptx.h b/lib/gpu/charmm_long_ptx.h deleted file mode 100644 index 92b2bf8ca1..0000000000 --- a/lib/gpu/charmm_long_ptx.h +++ /dev/null @@ -1,1139 +0,0 @@ -const char * charmm_long = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .global .texref q_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_lj1,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_q_,\n" -" .param .f32 __cudaparm_kernel_pair_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_g_ewald,\n" -" .param .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" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<91>;\n" -" .reg .u64 %rd<65>;\n" -" .reg .f32 %f<190>;\n" -" .reg .pred %p<23>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32542_33_non_const_sp_lj120[32];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32646_55_non_const_red_acc152[3072];\n" -" .loc 16 37 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 42 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 43 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 44 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 45 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32542_33_non_const_sp_lj120+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 46 0\n" -" ld.global.f32 %f5, [%rd1+16];\n" -" .loc 16 47 0\n" -" ld.global.f32 %f6, [%rd1+20];\n" -" .loc 16 48 0\n" -" ld.global.f32 %f7, [%rd1+24];\n" -" .loc 16 49 0\n" -" ld.global.f32 %f8, [%rd1+28];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32542_33_non_const_sp_lj120+16], {%f5,%f6,%f7,%f8};\n" -" .loc 16 57 0\n" -" mov.f32 %f9, 0f00000000; \n" -" mov.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f00000000; \n" -" mov.f32 %f12, %f11;\n" -" mov.f32 %f13, 0f00000000; \n" -" mov.f32 %f14, %f13;\n" -" mov.f32 %f15, 0f00000000; \n" -" mov.f32 %f16, %f15;\n" -" mov.f32 %f17, 0f00000000; \n" -" mov.f32 %f18, %f17;\n" -" mov.f32 %f19, 0f00000000; \n" -" mov.f32 %f20, %f19;\n" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_33026;\n" -" .loc 16 62 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd5, %rd3, %rd4;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" sub.s32 %r13, %r1, 1;\n" -" and.b32 %r14, %r13, %r2;\n" -" cvt.s64.s32 %rd9, %r14;\n" -" mul.wide.s32 %rd10, %r14, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd4;\n" -" @%p2 bra $Lt_0_24066;\n" -" cvt.s32.s64 %r15, %rd6;\n" -" mul.lo.s32 %r16, %r15, %r1;\n" -" mov.s32 %r17, %r16;\n" -" mul.lo.s32 %r18, %r13, %r8;\n" -" add.s32 %r19, %r15, %r18;\n" -" cvt.s64.s32 %rd12, %r19;\n" -" mul.wide.s32 %rd13, %r19, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r20, %r13, %r12;\n" -" cvt.s64.s32 %rd15, %r20;\n" -" div.s32 %r21, %r12, %r1;\n" -" mul.lo.s32 %r22, %r16, %r21;\n" -" cvt.s64.s32 %rd16, %r22;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_23810;\n" -"$Lt_0_24066:\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" ld.global.s32 %r23, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r23;\n" -" mul.wide.s32 %rd23, %r23, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r12;\n" -" mul.wide.s32 %rd26, %r12, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r17, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_23810:\n" -" .loc 16 65 0\n" -" mov.u32 %r24, %r10;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f25, %f21;\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" .loc 16 66 0\n" -" mov.u32 %r31, %r10;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}];\n" -" mov.f32 %f33, %f29;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_34562;\n" -" cvt.s64.s32 %rd27, %r17;\n" -" ld.param.f32 %f34, [__cudaparm_kernel_pair_cut_bothsq];\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" -" mov.u64 %rd28, __cuda___cuda_local_var_32542_33_non_const_sp_lj120;\n" -"$Lt_0_24834:\n" -" .loc 16 70 0\n" -" ld.global.s32 %r38, [%rd20+0];\n" -" .loc 16 73 0\n" -" shr.s32 %r39, %r38, 30;\n" -" and.b32 %r40, %r39, 3;\n" -" cvt.s64.s32 %rd29, %r40;\n" -" mul.wide.s32 %rd30, %r40, 4;\n" -" add.u64 %rd31, %rd28, %rd30;\n" -" ld.shared.f32 %f40, [%rd31+0];\n" -" .loc 16 74 0\n" -" mov.f32 %f41, 0f3f800000; \n" -" ld.shared.f32 %f42, [%rd31+16];\n" -" sub.ftz.f32 %f43, %f41, %f42;\n" -" .loc 16 77 0\n" -" and.b32 %r41, %r38, 1073741823;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" mov.s32 %r45, 0;\n" -" mov.u32 %r46, %r45;\n" -" mov.s32 %r47, 0;\n" -" mov.u32 %r48, %r47;\n" -" tex.1d.v4.f32.s32 {%f44,%f45,%f46,%f47},[pos_tex,{%r42,%r44,%r46,%r48}];\n" -" mov.f32 %f48, %f44;\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" mov.f32 %f51, %f47;\n" -" sub.ftz.f32 %f52, %f26, %f49;\n" -" sub.ftz.f32 %f53, %f25, %f48;\n" -" sub.ftz.f32 %f54, %f27, %f50;\n" -" mul.ftz.f32 %f55, %f52, %f52;\n" -" fma.rn.ftz.f32 %f56, %f53, %f53, %f55;\n" -" fma.rn.ftz.f32 %f57, %f54, %f54, %f56;\n" -" setp.lt.ftz.f32 %p4, %f57, %f34;\n" -" @!%p4 bra $Lt_0_28162;\n" -" ld.param.f32 %f58, [__cudaparm_kernel_pair_cut_ljsq];\n" -" setp.lt.ftz.f32 %p5, %f57, %f58;\n" -" rcp.approx.ftz.f32 %f59, %f57;\n" -" @!%p5 bra $Lt_0_25858;\n" -" .loc 16 92 0\n" -" mul.ftz.f32 %f60, %f59, %f59;\n" -" mul.ftz.f32 %f61, %f59, %f60;\n" -" mov.f32 %f62, %f61;\n" -" .loc 16 93 0\n" -" cvt.rzi.ftz.s32.f32 %r49, %f51;\n" -" cvt.rzi.ftz.s32.f32 %r50, %f28;\n" -" ld.param.u64 %rd32, [__cudaparm_kernel_pair_lj1];\n" -" ld.param.s32 %r51, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r52, %r51, %r50;\n" -" add.s32 %r53, %r49, %r52;\n" -" cvt.s64.s32 %rd33, %r53;\n" -" mul.wide.s32 %rd34, %r53, 16;\n" -" add.u64 %rd35, %rd32, %rd34;\n" -" mul.ftz.f32 %f63, %f61, %f40;\n" -" ld.global.v2.f32 {%f64,%f65}, [%rd35+0];\n" -" mul.ftz.f32 %f66, %f64, %f61;\n" -" sub.ftz.f32 %f67, %f66, %f65;\n" -" mul.ftz.f32 %f68, %f63, %f67;\n" -" ld.param.f32 %f69, [__cudaparm_kernel_pair_cut_lj_innersq];\n" -" setp.gt.ftz.f32 %p6, %f57, %f69;\n" -" @!%p6 bra $Lt_0_25602;\n" -" .loc 16 99 0\n" -" add.ftz.f32 %f70, %f57, %f57;\n" -" sub.ftz.f32 %f71, %f58, %f57;\n" -" add.ftz.f32 %f72, %f70, %f58;\n" -" mul.ftz.f32 %f73, %f71, %f71;\n" -" mov.f32 %f74, 0f40400000; \n" -" mul.ftz.f32 %f75, %f74, %f69;\n" -" sub.ftz.f32 %f76, %f72, %f75;\n" -" ld.param.f32 %f77, [__cudaparm_kernel_pair_denom_lj];\n" -" div.approx.ftz.f32 %f78, %f76, %f77;\n" -" mul.ftz.f32 %f79, %f73, %f78;\n" -" mov.f32 %f80, %f79;\n" -" .loc 16 102 0\n" -" mov.f32 %f81, 0f41400000; \n" -" mul.ftz.f32 %f82, %f57, %f81;\n" -" mul.ftz.f32 %f83, %f71, %f82;\n" -" sub.ftz.f32 %f84, %f57, %f69;\n" -" mul.ftz.f32 %f85, %f83, %f84;\n" -" div.approx.ftz.f32 %f86, %f85, %f77;\n" -" ld.global.v2.f32 {%f87,%f88}, [%rd35+8];\n" -" mul.ftz.f32 %f89, %f87, %f61;\n" -" sub.ftz.f32 %f90, %f89, %f88;\n" -" mul.ftz.f32 %f91, %f61, %f90;\n" -" mul.ftz.f32 %f92, %f86, %f91;\n" -" fma.rn.ftz.f32 %f68, %f68, %f79, %f92;\n" -" bra.uni $Lt_0_25602;\n" -"$Lt_0_25858:\n" -" .loc 16 105 0\n" -" mov.f32 %f68, 0f00000000; \n" -"$Lt_0_25602:\n" -" ld.param.f32 %f93, [__cudaparm_kernel_pair_cut_coulsq];\n" -" setp.gt.ftz.f32 %p7, %f93, %f57;\n" -" @!%p7 bra $Lt_0_26882;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f94, %f59;\n" -" ld.param.f32 %f95, [__cudaparm_kernel_pair_g_ewald];\n" -" mul.ftz.f32 %f96, %f95, %f94;\n" -" mul.ftz.f32 %f97, %f96, %f96;\n" -" neg.ftz.f32 %f98, %f97;\n" -" mov.f32 %f99, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f100, %f98, %f99;\n" -" ex2.approx.ftz.f32 %f101, %f100;\n" -" .loc 16 112 0\n" -" mov.f32 %f102, 0f3f800000; \n" -" mov.f32 %f103, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f104, %f103, %f96, %f102;\n" -" rcp.approx.ftz.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" -" fma.rn.ftz.f32 %f111, %f110, %f105, %f109;\n" -" fma.rn.ftz.f32 %f112, %f105, %f111, %f108;\n" -" fma.rn.ftz.f32 %f113, %f105, %f112, %f107;\n" -" fma.rn.ftz.f32 %f114, %f105, %f113, %f106;\n" -" mul.ftz.f32 %f115, %f105, %f114;\n" -" mul.ftz.f32 %f116, %f101, %f115;\n" -" mov.f32 %f117, %f116;\n" -" .loc 16 113 0\n" -" mov.u32 %r54, %r41;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f118,%f119,%f120,%f121},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f122, %f118;\n" -" ld.param.f32 %f123, [__cudaparm_kernel_pair_qqrd2e];\n" -" mul.ftz.f32 %f124, %f123, %f33;\n" -" mul.ftz.f32 %f125, %f124, %f122;\n" -" div.approx.ftz.f32 %f126, %f125, %f94;\n" -" mov.f32 %f127, %f126;\n" -" .loc 16 114 0\n" -" mov.f32 %f128, 0f3f906ebb; \n" -" mul.ftz.f32 %f129, %f96, %f128;\n" -" fma.rn.ftz.f32 %f130, %f101, %f129, %f116;\n" -" sub.ftz.f32 %f131, %f130, %f43;\n" -" mul.ftz.f32 %f132, %f126, %f131;\n" -" bra.uni $Lt_0_26626;\n" -"$Lt_0_26882:\n" -" .loc 16 116 0\n" -" mov.f32 %f132, 0f00000000; \n" -"$Lt_0_26626:\n" -" .loc 16 120 0\n" -" add.ftz.f32 %f133, %f132, %f68;\n" -" mul.ftz.f32 %f134, %f133, %f59;\n" -" fma.rn.ftz.f32 %f37, %f53, %f134, %f37;\n" -" .loc 16 121 0\n" -" fma.rn.ftz.f32 %f36, %f52, %f134, %f36;\n" -" .loc 16 122 0\n" -" fma.rn.ftz.f32 %f35, %f54, %f134, %f35;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p8, %r61, %r62;\n" -" @%p8 bra $Lt_0_27650;\n" -" .loc 16 125 0\n" -" mov.f32 %f135, %f127;\n" -" mov.f32 %f136, %f117;\n" -" sub.ftz.f32 %f137, %f136, %f43;\n" -" fma.rn.ftz.f32 %f138, %f135, %f137, %f38;\n" -" selp.f32 %f38, %f138, %f38, %p7;\n" -" @!%p5 bra $Lt_0_27650;\n" -" .loc 16 128 0\n" -" cvt.rzi.ftz.s32.f32 %r63, %f51;\n" -" cvt.rzi.ftz.s32.f32 %r64, %f28;\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj1];\n" -" ld.param.s32 %r65, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r66, %r65, %r64;\n" -" add.s32 %r67, %r63, %r66;\n" -" cvt.s64.s32 %rd37, %r67;\n" -" mul.wide.s32 %rd38, %r67, 16;\n" -" add.u64 %rd35, %rd36, %rd38;\n" -" mov.f32 %f139, %f62;\n" -" ld.global.v2.f32 {%f140,%f141}, [%rd35+8];\n" -" mul.ftz.f32 %f142, %f140, %f139;\n" -" sub.ftz.f32 %f143, %f142, %f141;\n" -" mul.ftz.f32 %f144, %f139, %f143;\n" -" mov.f32 %f145, %f80;\n" -" mul.ftz.f32 %f146, %f145, %f144;\n" -" ld.param.f32 %f147, [__cudaparm_kernel_pair_cut_lj_innersq];\n" -" setp.lt.ftz.f32 %p9, %f147, %f57;\n" -" selp.f32 %f148, %f146, %f144, %p9;\n" -" .loc 16 131 0\n" -" fma.rn.ftz.f32 %f39, %f40, %f148, %f39;\n" -"$Lt_0_27650:\n" -"$Lt_0_27138:\n" -" ld.param.s32 %r68, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r69, 0;\n" -" setp.le.s32 %p10, %r68, %r69;\n" -" @%p10 bra $Lt_0_28162;\n" -" .loc 16 135 0\n" -" mov.f32 %f149, %f10;\n" -" mul.ftz.f32 %f150, %f53, %f53;\n" -" fma.rn.ftz.f32 %f151, %f134, %f150, %f149;\n" -" mov.f32 %f10, %f151;\n" -" .loc 16 136 0\n" -" mov.f32 %f152, %f12;\n" -" fma.rn.ftz.f32 %f153, %f134, %f55, %f152;\n" -" mov.f32 %f12, %f153;\n" -" .loc 16 137 0\n" -" mov.f32 %f154, %f14;\n" -" mul.ftz.f32 %f155, %f54, %f54;\n" -" fma.rn.ftz.f32 %f156, %f134, %f155, %f154;\n" -" mov.f32 %f14, %f156;\n" -" .loc 16 138 0\n" -" mov.f32 %f157, %f16;\n" -" mul.ftz.f32 %f158, %f52, %f53;\n" -" fma.rn.ftz.f32 %f159, %f134, %f158, %f157;\n" -" mov.f32 %f16, %f159;\n" -" .loc 16 139 0\n" -" mov.f32 %f160, %f18;\n" -" mul.ftz.f32 %f161, %f53, %f54;\n" -" fma.rn.ftz.f32 %f162, %f134, %f161, %f160;\n" -" mov.f32 %f18, %f162;\n" -" .loc 16 140 0\n" -" mul.ftz.f32 %f163, %f52, %f54;\n" -" fma.rn.ftz.f32 %f19, %f134, %f163, %f19;\n" -" mov.f32 %f20, %f19;\n" -"$Lt_0_28162:\n" -"$Lt_0_25090:\n" -" .loc 16 69 0\n" -" mul.lo.u64 %rd39, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd39;\n" -" setp.lt.u64 %p11, %rd20, %rd19;\n" -" @%p11 bra $Lt_0_24834;\n" -" bra.uni $Lt_0_24322;\n" -"$Lt_0_34562:\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" -"$Lt_0_24322:\n" -" mov.u32 %r70, 1;\n" -" setp.le.s32 %p12, %r1, %r70;\n" -" @%p12 bra $Lt_0_30978;\n" -" .loc 16 145 0\n" -" mov.u64 %rd40, __cuda___cuda_local_var_32646_55_non_const_red_acc152;\n" -" cvt.s64.s32 %rd41, %r2;\n" -" mul.wide.s32 %rd42, %r2, 4;\n" -" add.u64 %rd43, %rd40, %rd42;\n" -" mov.f32 %f164, %f37;\n" -" st.shared.f32 [%rd43+0], %f164;\n" -" mov.f32 %f165, %f36;\n" -" st.shared.f32 [%rd43+512], %f165;\n" -" mov.f32 %f166, %f35;\n" -" st.shared.f32 [%rd43+1024], %f166;\n" -" mov.f32 %f167, %f39;\n" -" st.shared.f32 [%rd43+1536], %f167;\n" -" mov.f32 %f168, %f38;\n" -" st.shared.f32 [%rd43+2048], %f168;\n" -" shr.s32 %r71, %r1, 31;\n" -" mov.s32 %r72, 1;\n" -" and.b32 %r73, %r71, %r72;\n" -" add.s32 %r74, %r73, %r1;\n" -" shr.s32 %r75, %r74, 1;\n" -" mov.s32 %r76, %r75;\n" -" mov.u32 %r77, 0;\n" -" setp.ne.u32 %p13, %r75, %r77;\n" -" @!%p13 bra $Lt_0_29442;\n" -"$Lt_0_29954:\n" -" setp.ge.u32 %p14, %r14, %r76;\n" -" @%p14 bra $Lt_0_30210;\n" -" add.u32 %r78, %r2, %r76;\n" -" cvt.u64.u32 %rd44, %r78;\n" -" mul.wide.u32 %rd45, %r78, 4;\n" -" add.u64 %rd46, %rd40, %rd45;\n" -" ld.shared.f32 %f169, [%rd46+0];\n" -" add.ftz.f32 %f164, %f169, %f164;\n" -" st.shared.f32 [%rd43+0], %f164;\n" -" ld.shared.f32 %f170, [%rd46+512];\n" -" add.ftz.f32 %f165, %f170, %f165;\n" -" st.shared.f32 [%rd43+512], %f165;\n" -" ld.shared.f32 %f171, [%rd46+1024];\n" -" add.ftz.f32 %f166, %f171, %f166;\n" -" st.shared.f32 [%rd43+1024], %f166;\n" -" ld.shared.f32 %f172, [%rd46+1536];\n" -" add.ftz.f32 %f167, %f172, %f167;\n" -" st.shared.f32 [%rd43+1536], %f167;\n" -" ld.shared.f32 %f173, [%rd46+2048];\n" -" add.ftz.f32 %f168, %f173, %f168;\n" -" st.shared.f32 [%rd43+2048], %f168;\n" -"$Lt_0_30210:\n" -" shr.u32 %r76, %r76, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p15, %r76, %r79;\n" -" @%p15 bra $Lt_0_29954;\n" -"$Lt_0_29442:\n" -" mov.f32 %f37, %f164;\n" -" mov.f32 %f36, %f165;\n" -" mov.f32 %f35, %f166;\n" -" mov.f32 %f39, %f167;\n" -" mov.f32 %f38, %f168;\n" -" ld.param.s32 %r80, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r81, 0;\n" -" setp.le.s32 %p16, %r80, %r81;\n" -" @%p16 bra $Lt_0_30978;\n" -" mov.f32 %f164, %f10;\n" -" st.shared.f32 [%rd43+0], %f164;\n" -" mov.f32 %f165, %f12;\n" -" st.shared.f32 [%rd43+512], %f165;\n" -" mov.f32 %f166, %f14;\n" -" st.shared.f32 [%rd43+1024], %f166;\n" -" mov.f32 %f167, %f16;\n" -" st.shared.f32 [%rd43+1536], %f167;\n" -" mov.f32 %f168, %f18;\n" -" st.shared.f32 [%rd43+2048], %f168;\n" -" mov.f32 %f174, %f19;\n" -" st.shared.f32 [%rd43+2560], %f174;\n" -" mov.s32 %r82, %r75;\n" -" @!%p13 bra $Lt_0_31490;\n" -"$Lt_0_32002:\n" -" setp.ge.u32 %p17, %r14, %r82;\n" -" @%p17 bra $Lt_0_32258;\n" -" add.u32 %r83, %r2, %r82;\n" -" cvt.u64.u32 %rd47, %r83;\n" -" mul.wide.u32 %rd48, %r83, 4;\n" -" add.u64 %rd49, %rd40, %rd48;\n" -" ld.shared.f32 %f175, [%rd49+0];\n" -" add.ftz.f32 %f164, %f175, %f164;\n" -" st.shared.f32 [%rd43+0], %f164;\n" -" ld.shared.f32 %f176, [%rd49+512];\n" -" add.ftz.f32 %f165, %f176, %f165;\n" -" st.shared.f32 [%rd43+512], %f165;\n" -" ld.shared.f32 %f177, [%rd49+1024];\n" -" add.ftz.f32 %f166, %f177, %f166;\n" -" st.shared.f32 [%rd43+1024], %f166;\n" -" ld.shared.f32 %f178, [%rd49+1536];\n" -" add.ftz.f32 %f167, %f178, %f167;\n" -" st.shared.f32 [%rd43+1536], %f167;\n" -" ld.shared.f32 %f179, [%rd49+2048];\n" -" add.ftz.f32 %f168, %f179, %f168;\n" -" st.shared.f32 [%rd43+2048], %f168;\n" -" ld.shared.f32 %f180, [%rd49+2560];\n" -" add.ftz.f32 %f174, %f180, %f174;\n" -" st.shared.f32 [%rd43+2560], %f174;\n" -"$Lt_0_32258:\n" -" shr.u32 %r82, %r82, 1;\n" -" mov.u32 %r84, 0;\n" -" setp.ne.u32 %p18, %r82, %r84;\n" -" @%p18 bra $Lt_0_32002;\n" -"$Lt_0_31490:\n" -" mov.f32 %f10, %f164;\n" -" mov.f32 %f12, %f165;\n" -" mov.f32 %f14, %f166;\n" -" mov.f32 %f16, %f167;\n" -" mov.f32 %f18, %f168;\n" -" mov.f32 %f20, %f174;\n" -"$Lt_0_30978:\n" -"$Lt_0_28930:\n" -" mov.u32 %r85, 0;\n" -" setp.ne.s32 %p19, %r14, %r85;\n" -" @%p19 bra $Lt_0_33026;\n" -" ld.param.u64 %rd50, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd51, %rd50, %rd3;\n" -" ld.param.s32 %r86, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r87, 0;\n" -" setp.le.s32 %p20, %r86, %r87;\n" -" @%p20 bra $Lt_0_33538;\n" -" st.global.f32 [%rd51+0], %f39;\n" -" cvt.s64.s32 %rd52, %r9;\n" -" mul.wide.s32 %rd53, %r9, 4;\n" -" add.u64 %rd54, %rd53, %rd51;\n" -" st.global.f32 [%rd54+0], %f38;\n" -" add.u64 %rd51, %rd53, %rd54;\n" -"$Lt_0_33538:\n" -" ld.param.s32 %r88, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r89, 0;\n" -" setp.le.s32 %p21, %r88, %r89;\n" -" @%p21 bra $Lt_0_34050;\n" -" mov.f32 %f181, %f10;\n" -" st.global.f32 [%rd51+0], %f181;\n" -" cvt.s64.s32 %rd55, %r9;\n" -" mul.wide.s32 %rd56, %r9, 4;\n" -" add.u64 %rd57, %rd56, %rd51;\n" -" mov.f32 %f182, %f12;\n" -" st.global.f32 [%rd57+0], %f182;\n" -" add.u64 %rd58, %rd56, %rd57;\n" -" mov.f32 %f183, %f14;\n" -" st.global.f32 [%rd58+0], %f183;\n" -" add.u64 %rd59, %rd56, %rd58;\n" -" mov.f32 %f184, %f16;\n" -" st.global.f32 [%rd59+0], %f184;\n" -" add.u64 %rd51, %rd56, %rd59;\n" -" mov.f32 %f185, %f18;\n" -" st.global.f32 [%rd51+0], %f185;\n" -" mov.f32 %f186, %f20;\n" -" add.u64 %rd60, %rd56, %rd51;\n" -" st.global.f32 [%rd60+0], %f186;\n" -"$Lt_0_34050:\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd62, %rd2, 16;\n" -" add.u64 %rd63, %rd61, %rd62;\n" -" mov.f32 %f187, %f188;\n" -" st.global.v4.f32 [%rd63+0], {%f37,%f36,%f35,%f187};\n" -"$Lt_0_33026:\n" -"$Lt_0_23298:\n" -" .loc 16 148 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_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_fast_q_,\n" -" .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_fast_g_ewald,\n" -" .param .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" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<86>;\n" -" .reg .u64 %rd<72>;\n" -" .reg .f32 %f<196>;\n" -" .reg .pred %p<25>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32666_33_non_const_sp_lj3336[32];\n" -" .shared .align 8 .b8 __cuda___cuda_local_var_32665_34_non_const_ljd3368[1024];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32775_55_non_const_red_acc4392[3072];\n" -" .loc 16 160 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" cvt.s64.s32 %rd1, %r1;\n" -" mov.u32 %r2, 7;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_24834;\n" -" .loc 16 167 0\n" -" mov.u64 %rd2, __cuda___cuda_local_var_32666_33_non_const_sp_lj3336;\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_24834:\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32665_34_non_const_ljd3368;\n" -" mov.u64 %rd2, __cuda___cuda_local_var_32666_33_non_const_sp_lj3336;\n" -" .loc 16 168 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.v2.f32 [%rd11+0], {%f2,%f3};\n" -" add.s32 %r3, %r1, 128;\n" -" mov.u32 %r4, 127;\n" -" setp.gt.s32 %p2, %r3, %r4;\n" -" @%p2 bra $Lt_1_25346;\n" -" ld.global.v2.f32 {%f4,%f5}, [%rd10+1024];\n" -" st.shared.v2.f32 [%rd11+1024], {%f4,%f5};\n" -"$Lt_1_25346:\n" -" .loc 16 178 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 16 180 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r5, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r6, %r1, %r5;\n" -" cvt.s32.u32 %r7, %ntid.x;\n" -" div.s32 %r8, %r7, %r5;\n" -" cvt.s32.u32 %r9, %ctaid.x;\n" -" mul.lo.s32 %r10, %r9, %r8;\n" -" add.s32 %r11, %r6, %r10;\n" -" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p3, %r11, %r12;\n" -" @%p3 bra $Lt_1_35586;\n" -" .loc 16 185 0\n" -" cvt.s64.s32 %rd12, %r11;\n" -" mul.wide.s32 %rd13, %r11, 4;\n" -" ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd15, %rd13, %rd14;\n" -" ld.global.s32 %r13, [%rd15+0];\n" -" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd16, %r14;\n" -" mul.wide.s32 %rd17, %r14, 4;\n" -" add.u64 %rd18, %rd17, %rd15;\n" -" ld.global.s32 %r15, [%rd18+0];\n" -" sub.s32 %r16, %r5, 1;\n" -" and.b32 %r17, %r16, %r1;\n" -" cvt.s64.s32 %rd19, %r17;\n" -" mul.wide.s32 %rd20, %r17, 4;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p4, %rd21, %rd14;\n" -" @%p4 bra $Lt_1_26626;\n" -" cvt.s32.s64 %r18, %rd16;\n" -" mul.lo.s32 %r19, %r18, %r5;\n" -" mov.s32 %r20, %r19;\n" -" mul.lo.s32 %r21, %r16, %r11;\n" -" add.s32 %r22, %r18, %r21;\n" -" cvt.s64.s32 %rd22, %r22;\n" -" mul.wide.s32 %rd23, %r22, 4;\n" -" add.u64 %rd24, %rd18, %rd23;\n" -" and.b32 %r23, %r16, %r15;\n" -" cvt.s64.s32 %rd25, %r23;\n" -" div.s32 %r24, %r15, %r5;\n" -" mul.lo.s32 %r25, %r19, %r24;\n" -" cvt.s64.s32 %rd26, %r25;\n" -" add.u64 %rd27, %rd25, %rd26;\n" -" mul.lo.u64 %rd28, %rd27, 4;\n" -" add.u64 %rd29, %rd24, %rd28;\n" -" add.u64 %rd30, %rd20, %rd24;\n" -" bra.uni $Lt_1_26370;\n" -"$Lt_1_26626:\n" -" add.u64 %rd31, %rd17, %rd18;\n" -" ld.global.s32 %r26, [%rd31+0];\n" -" cvt.s64.s32 %rd32, %r26;\n" -" mul.wide.s32 %rd33, %r26, 4;\n" -" add.u64 %rd34, %rd21, %rd33;\n" -" cvt.s64.s32 %rd35, %r15;\n" -" mul.wide.s32 %rd36, %r15, 4;\n" -" add.u64 %rd29, %rd34, %rd36;\n" -" mov.s32 %r20, %r5;\n" -" add.u64 %rd30, %rd20, %rd34;\n" -"$Lt_1_26370:\n" -" .loc 16 188 0\n" -" mov.u32 %r27, %r13;\n" -" mov.s32 %r28, 0;\n" -" mov.u32 %r29, %r28;\n" -" mov.s32 %r30, 0;\n" -" mov.u32 %r31, %r30;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" tex.1d.v4.f32.s32 {%f18,%f19,%f20,%f21},[pos_tex,{%r27,%r29,%r31,%r33}];\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" mov.f32 %f25, %f21;\n" -" .loc 16 189 0\n" -" mov.u32 %r34, %r13;\n" -" mov.s32 %r35, 0;\n" -" mov.u32 %r36, %r35;\n" -" mov.s32 %r37, 0;\n" -" mov.u32 %r38, %r37;\n" -" mov.s32 %r39, 0;\n" -" mov.u32 %r40, %r39;\n" -" tex.1d.v4.f32.s32 {%f26,%f27,%f28,%f29},[q_tex,{%r34,%r36,%r38,%r40}];\n" -" mov.f32 %f30, %f26;\n" -" setp.ge.u64 %p5, %rd30, %rd29;\n" -" @%p5 bra $Lt_1_37122;\n" -" cvt.rzi.ftz.s32.f32 %r41, %f25;\n" -" cvt.s64.s32 %rd37, %r20;\n" -" ld.param.f32 %f31, [__cudaparm_kernel_pair_fast_cut_bothsq];\n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -"$Lt_1_27394:\n" -" .loc 16 193 0\n" -" ld.global.s32 %r42, [%rd30+0];\n" -" .loc 16 196 0\n" -" shr.s32 %r43, %r42, 30;\n" -" and.b32 %r44, %r43, 3;\n" -" cvt.s64.s32 %rd38, %r44;\n" -" mul.wide.s32 %rd39, %r44, 4;\n" -" add.u64 %rd40, %rd2, %rd39;\n" -" ld.shared.f32 %f37, [%rd40+0];\n" -" .loc 16 197 0\n" -" mov.f32 %f38, 0f3f800000; \n" -" ld.shared.f32 %f39, [%rd40+16];\n" -" sub.ftz.f32 %f40, %f38, %f39;\n" -" .loc 16 200 0\n" -" and.b32 %r45, %r42, 1073741823;\n" -" mov.u32 %r46, %r45;\n" -" mov.s32 %r47, 0;\n" -" mov.u32 %r48, %r47;\n" -" mov.s32 %r49, 0;\n" -" mov.u32 %r50, %r49;\n" -" mov.s32 %r51, 0;\n" -" mov.u32 %r52, %r51;\n" -" tex.1d.v4.f32.s32 {%f41,%f42,%f43,%f44},[pos_tex,{%r46,%r48,%r50,%r52}];\n" -" mov.f32 %f45, %f41;\n" -" mov.f32 %f46, %f42;\n" -" mov.f32 %f47, %f43;\n" -" mov.f32 %f48, %f44;\n" -" sub.ftz.f32 %f49, %f23, %f46;\n" -" sub.ftz.f32 %f50, %f22, %f45;\n" -" sub.ftz.f32 %f51, %f24, %f47;\n" -" mul.ftz.f32 %f52, %f49, %f49;\n" -" fma.rn.ftz.f32 %f53, %f50, %f50, %f52;\n" -" fma.rn.ftz.f32 %f54, %f51, %f51, %f53;\n" -" setp.lt.ftz.f32 %p6, %f54, %f31;\n" -" @!%p6 bra $Lt_1_30722;\n" -" ld.param.f32 %f55, [__cudaparm_kernel_pair_fast_cut_ljsq];\n" -" setp.lt.ftz.f32 %p7, %f54, %f55;\n" -" rcp.approx.ftz.f32 %f56, %f54;\n" -" @!%p7 bra $Lt_1_28418;\n" -" .loc 16 215 0\n" -" cvt.rzi.ftz.s32.f32 %r53, %f48;\n" -" cvt.s64.s32 %rd41, %r41;\n" -" mul.wide.s32 %rd42, %r41, 8;\n" -" add.u64 %rd43, %rd7, %rd42;\n" -" cvt.s64.s32 %rd44, %r53;\n" -" mul.wide.s32 %rd45, %r53, 8;\n" -" add.u64 %rd46, %rd7, %rd45;\n" -" ld.shared.v2.f32 {%f57,%f58}, [%rd43+0];\n" -" ld.shared.v2.f32 {%f59,%f60}, [%rd46+0];\n" -" mul.ftz.f32 %f61, %f57, %f59;\n" -" .loc 16 216 0\n" -" add.ftz.f32 %f62, %f58, %f60;\n" -" mov.f32 %f63, 0f3f000000; \n" -" mul.ftz.f32 %f64, %f62, %f63;\n" -" .loc 16 220 0\n" -" mul.ftz.f32 %f65, %f64, %f64;\n" -" sqrt.approx.ftz.f32 %f66, %f61;\n" -" mov.f32 %f67, 0f40800000; \n" -" mul.ftz.f32 %f68, %f66, %f67;\n" -" mul.ftz.f32 %f69, %f65, %f56;\n" -" mul.ftz.f32 %f70, %f69, %f69;\n" -" mul.ftz.f32 %f71, %f69, %f70;\n" -" mul.ftz.f32 %f72, %f68, %f71;\n" -" mov.f32 %f73, %f72;\n" -" .loc 16 221 0\n" -" mul.ftz.f32 %f74, %f71, %f72;\n" -" mov.f32 %f75, %f74;\n" -" .loc 16 222 0\n" -" mov.f32 %f76, 0f40c00000; \n" -" mul.ftz.f32 %f77, %f72, %f76;\n" -" mov.f32 %f78, 0f41400000; \n" -" mul.ftz.f32 %f79, %f78, %f74;\n" -" sub.ftz.f32 %f80, %f79, %f77;\n" -" mul.ftz.f32 %f81, %f37, %f80;\n" -" ld.param.f32 %f82, [__cudaparm_kernel_pair_fast_cut_lj_innersq];\n" -" setp.gt.ftz.f32 %p8, %f54, %f82;\n" -" @!%p8 bra $Lt_1_28162;\n" -" .loc 16 228 0\n" -" add.ftz.f32 %f83, %f54, %f54;\n" -" sub.ftz.f32 %f84, %f55, %f54;\n" -" add.ftz.f32 %f85, %f83, %f55;\n" -" mul.ftz.f32 %f86, %f84, %f84;\n" -" mov.f32 %f87, 0f40400000; \n" -" mul.ftz.f32 %f88, %f87, %f82;\n" -" sub.ftz.f32 %f89, %f85, %f88;\n" -" ld.param.f32 %f90, [__cudaparm_kernel_pair_fast_denom_lj];\n" -" div.approx.ftz.f32 %f91, %f89, %f90;\n" -" mul.ftz.f32 %f92, %f86, %f91;\n" -" mov.f32 %f93, %f92;\n" -" .loc 16 231 0\n" -" mov.f32 %f94, 0f41400000; \n" -" mul.ftz.f32 %f95, %f54, %f94;\n" -" mul.ftz.f32 %f96, %f84, %f95;\n" -" sub.ftz.f32 %f97, %f54, %f82;\n" -" mul.ftz.f32 %f98, %f96, %f97;\n" -" div.approx.ftz.f32 %f99, %f98, %f90;\n" -" sub.ftz.f32 %f100, %f74, %f72;\n" -" mul.ftz.f32 %f101, %f99, %f100;\n" -" fma.rn.ftz.f32 %f81, %f81, %f92, %f101;\n" -" bra.uni $Lt_1_28162;\n" -"$Lt_1_28418:\n" -" .loc 16 234 0\n" -" mov.f32 %f81, 0f00000000; \n" -"$Lt_1_28162:\n" -" ld.param.f32 %f102, [__cudaparm_kernel_pair_fast_cut_coulsq];\n" -" setp.gt.ftz.f32 %p9, %f102, %f54;\n" -" @!%p9 bra $Lt_1_29442;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f103, %f56;\n" -" ld.param.f32 %f104, [__cudaparm_kernel_pair_fast_g_ewald];\n" -" mul.ftz.f32 %f105, %f104, %f103;\n" -" mul.ftz.f32 %f106, %f105, %f105;\n" -" neg.ftz.f32 %f107, %f106;\n" -" mov.f32 %f108, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f109, %f107, %f108;\n" -" ex2.approx.ftz.f32 %f110, %f109;\n" -" .loc 16 241 0\n" -" mov.f32 %f111, 0f3f800000; \n" -" mov.f32 %f112, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f113, %f112, %f105, %f111;\n" -" rcp.approx.ftz.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" -" fma.rn.ftz.f32 %f120, %f119, %f114, %f118;\n" -" fma.rn.ftz.f32 %f121, %f114, %f120, %f117;\n" -" fma.rn.ftz.f32 %f122, %f114, %f121, %f116;\n" -" fma.rn.ftz.f32 %f123, %f114, %f122, %f115;\n" -" mul.ftz.f32 %f124, %f114, %f123;\n" -" mul.ftz.f32 %f125, %f110, %f124;\n" -" mov.f32 %f126, %f125;\n" -" .loc 16 242 0\n" -" mov.u32 %r54, %r45;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f127,%f128,%f129,%f130},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f131, %f127;\n" -" ld.param.f32 %f132, [__cudaparm_kernel_pair_fast_qqrd2e];\n" -" mul.ftz.f32 %f133, %f132, %f30;\n" -" mul.ftz.f32 %f134, %f133, %f131;\n" -" div.approx.ftz.f32 %f135, %f134, %f103;\n" -" mov.f32 %f136, %f135;\n" -" .loc 16 243 0\n" -" mov.f32 %f137, 0f3f906ebb; \n" -" mul.ftz.f32 %f138, %f105, %f137;\n" -" fma.rn.ftz.f32 %f139, %f110, %f138, %f125;\n" -" sub.ftz.f32 %f140, %f139, %f40;\n" -" mul.ftz.f32 %f141, %f135, %f140;\n" -" bra.uni $Lt_1_29186;\n" -"$Lt_1_29442:\n" -" .loc 16 245 0\n" -" mov.f32 %f141, 0f00000000; \n" -"$Lt_1_29186:\n" -" .loc 16 249 0\n" -" add.ftz.f32 %f142, %f141, %f81;\n" -" mul.ftz.f32 %f143, %f142, %f56;\n" -" fma.rn.ftz.f32 %f34, %f50, %f143, %f34;\n" -" .loc 16 250 0\n" -" fma.rn.ftz.f32 %f33, %f49, %f143, %f33;\n" -" .loc 16 251 0\n" -" fma.rn.ftz.f32 %f32, %f51, %f143, %f32;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p10, %r61, %r62;\n" -" @%p10 bra $Lt_1_30210;\n" -" .loc 16 254 0\n" -" mov.f32 %f144, %f136;\n" -" mov.f32 %f145, %f126;\n" -" sub.ftz.f32 %f146, %f145, %f40;\n" -" fma.rn.ftz.f32 %f147, %f144, %f146, %f35;\n" -" selp.f32 %f35, %f147, %f35, %p9;\n" -" @!%p7 bra $Lt_1_30210;\n" -" .loc 16 260 0\n" -" mov.f32 %f148, %f75;\n" -" mov.f32 %f149, %f73;\n" -" sub.ftz.f32 %f150, %f148, %f149;\n" -" mov.f32 %f151, %f93;\n" -" mul.ftz.f32 %f152, %f151, %f150;\n" -" ld.param.f32 %f153, [__cudaparm_kernel_pair_fast_cut_lj_innersq];\n" -" setp.lt.ftz.f32 %p11, %f153, %f54;\n" -" selp.f32 %f154, %f152, %f150, %p11;\n" -" fma.rn.ftz.f32 %f36, %f37, %f154, %f36;\n" -"$Lt_1_30210:\n" -"$Lt_1_29698:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p12, %r63, %r64;\n" -" @%p12 bra $Lt_1_30722;\n" -" .loc 16 264 0\n" -" mov.f32 %f155, %f7;\n" -" mul.ftz.f32 %f156, %f50, %f50;\n" -" fma.rn.ftz.f32 %f157, %f143, %f156, %f155;\n" -" mov.f32 %f7, %f157;\n" -" .loc 16 265 0\n" -" mov.f32 %f158, %f9;\n" -" fma.rn.ftz.f32 %f159, %f143, %f52, %f158;\n" -" mov.f32 %f9, %f159;\n" -" .loc 16 266 0\n" -" mov.f32 %f160, %f11;\n" -" mul.ftz.f32 %f161, %f51, %f51;\n" -" fma.rn.ftz.f32 %f162, %f143, %f161, %f160;\n" -" mov.f32 %f11, %f162;\n" -" .loc 16 267 0\n" -" mov.f32 %f163, %f13;\n" -" mul.ftz.f32 %f164, %f49, %f50;\n" -" fma.rn.ftz.f32 %f165, %f143, %f164, %f163;\n" -" mov.f32 %f13, %f165;\n" -" .loc 16 268 0\n" -" mov.f32 %f166, %f15;\n" -" mul.ftz.f32 %f167, %f50, %f51;\n" -" fma.rn.ftz.f32 %f168, %f143, %f167, %f166;\n" -" mov.f32 %f15, %f168;\n" -" .loc 16 269 0\n" -" mul.ftz.f32 %f169, %f49, %f51;\n" -" fma.rn.ftz.f32 %f16, %f143, %f169, %f16;\n" -" mov.f32 %f17, %f16;\n" -"$Lt_1_30722:\n" -"$Lt_1_27650:\n" -" .loc 16 192 0\n" -" mul.lo.u64 %rd47, %rd37, 4;\n" -" add.u64 %rd30, %rd30, %rd47;\n" -" setp.lt.u64 %p13, %rd30, %rd29;\n" -" @%p13 bra $Lt_1_27394;\n" -" bra.uni $Lt_1_26882;\n" -"$Lt_1_37122:\n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -"$Lt_1_26882:\n" -" mov.u32 %r65, 1;\n" -" setp.le.s32 %p14, %r5, %r65;\n" -" @%p14 bra $Lt_1_33538;\n" -" .loc 16 274 0\n" -" mov.u64 %rd48, __cuda___cuda_local_var_32775_55_non_const_red_acc4392;\n" -" mul.lo.u64 %rd49, %rd1, 4;\n" -" add.u64 %rd50, %rd48, %rd49;\n" -" mov.f32 %f170, %f34;\n" -" st.shared.f32 [%rd50+0], %f170;\n" -" mov.f32 %f171, %f33;\n" -" st.shared.f32 [%rd50+512], %f171;\n" -" mov.f32 %f172, %f32;\n" -" st.shared.f32 [%rd50+1024], %f172;\n" -" mov.f32 %f173, %f36;\n" -" st.shared.f32 [%rd50+1536], %f173;\n" -" mov.f32 %f174, %f35;\n" -" st.shared.f32 [%rd50+2048], %f174;\n" -" shr.s32 %r66, %r5, 31;\n" -" mov.s32 %r67, 1;\n" -" and.b32 %r68, %r66, %r67;\n" -" add.s32 %r69, %r68, %r5;\n" -" shr.s32 %r70, %r69, 1;\n" -" mov.s32 %r71, %r70;\n" -" mov.u32 %r72, 0;\n" -" setp.ne.u32 %p15, %r70, %r72;\n" -" @!%p15 bra $Lt_1_32002;\n" -"$Lt_1_32514:\n" -" setp.ge.u32 %p16, %r17, %r71;\n" -" @%p16 bra $Lt_1_32770;\n" -" add.u32 %r73, %r1, %r71;\n" -" cvt.u64.u32 %rd51, %r73;\n" -" mul.wide.u32 %rd52, %r73, 4;\n" -" add.u64 %rd53, %rd48, %rd52;\n" -" ld.shared.f32 %f175, [%rd53+0];\n" -" add.ftz.f32 %f170, %f175, %f170;\n" -" st.shared.f32 [%rd50+0], %f170;\n" -" ld.shared.f32 %f176, [%rd53+512];\n" -" add.ftz.f32 %f171, %f176, %f171;\n" -" st.shared.f32 [%rd50+512], %f171;\n" -" ld.shared.f32 %f177, [%rd53+1024];\n" -" add.ftz.f32 %f172, %f177, %f172;\n" -" st.shared.f32 [%rd50+1024], %f172;\n" -" ld.shared.f32 %f178, [%rd53+1536];\n" -" add.ftz.f32 %f173, %f178, %f173;\n" -" st.shared.f32 [%rd50+1536], %f173;\n" -" ld.shared.f32 %f179, [%rd53+2048];\n" -" add.ftz.f32 %f174, %f179, %f174;\n" -" st.shared.f32 [%rd50+2048], %f174;\n" -"$Lt_1_32770:\n" -" shr.u32 %r71, %r71, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p17, %r71, %r74;\n" -" @%p17 bra $Lt_1_32514;\n" -"$Lt_1_32002:\n" -" mov.f32 %f34, %f170;\n" -" mov.f32 %f33, %f171;\n" -" mov.f32 %f32, %f172;\n" -" mov.f32 %f36, %f173;\n" -" mov.f32 %f35, %f174;\n" -" ld.param.s32 %r75, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r76, 0;\n" -" setp.le.s32 %p18, %r75, %r76;\n" -" @%p18 bra $Lt_1_33538;\n" -" mov.f32 %f170, %f7;\n" -" st.shared.f32 [%rd50+0], %f170;\n" -" mov.f32 %f171, %f9;\n" -" st.shared.f32 [%rd50+512], %f171;\n" -" mov.f32 %f172, %f11;\n" -" st.shared.f32 [%rd50+1024], %f172;\n" -" mov.f32 %f173, %f13;\n" -" st.shared.f32 [%rd50+1536], %f173;\n" -" mov.f32 %f174, %f15;\n" -" st.shared.f32 [%rd50+2048], %f174;\n" -" mov.f32 %f180, %f16;\n" -" st.shared.f32 [%rd50+2560], %f180;\n" -" mov.s32 %r77, %r70;\n" -" @!%p15 bra $Lt_1_34050;\n" -"$Lt_1_34562:\n" -" setp.ge.u32 %p19, %r17, %r77;\n" -" @%p19 bra $Lt_1_34818;\n" -" add.u32 %r78, %r1, %r77;\n" -" cvt.u64.u32 %rd54, %r78;\n" -" mul.wide.u32 %rd55, %r78, 4;\n" -" add.u64 %rd56, %rd48, %rd55;\n" -" ld.shared.f32 %f181, [%rd56+0];\n" -" add.ftz.f32 %f170, %f181, %f170;\n" -" st.shared.f32 [%rd50+0], %f170;\n" -" ld.shared.f32 %f182, [%rd56+512];\n" -" add.ftz.f32 %f171, %f182, %f171;\n" -" st.shared.f32 [%rd50+512], %f171;\n" -" ld.shared.f32 %f183, [%rd56+1024];\n" -" add.ftz.f32 %f172, %f183, %f172;\n" -" st.shared.f32 [%rd50+1024], %f172;\n" -" ld.shared.f32 %f184, [%rd56+1536];\n" -" add.ftz.f32 %f173, %f184, %f173;\n" -" st.shared.f32 [%rd50+1536], %f173;\n" -" ld.shared.f32 %f185, [%rd56+2048];\n" -" add.ftz.f32 %f174, %f185, %f174;\n" -" st.shared.f32 [%rd50+2048], %f174;\n" -" ld.shared.f32 %f186, [%rd56+2560];\n" -" add.ftz.f32 %f180, %f186, %f180;\n" -" st.shared.f32 [%rd50+2560], %f180;\n" -"$Lt_1_34818:\n" -" shr.u32 %r77, %r77, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p20, %r77, %r79;\n" -" @%p20 bra $Lt_1_34562;\n" -"$Lt_1_34050:\n" -" mov.f32 %f7, %f170;\n" -" mov.f32 %f9, %f171;\n" -" mov.f32 %f11, %f172;\n" -" mov.f32 %f13, %f173;\n" -" mov.f32 %f15, %f174;\n" -" mov.f32 %f17, %f180;\n" -"$Lt_1_33538:\n" -"$Lt_1_31490:\n" -" mov.u32 %r80, 0;\n" -" setp.ne.s32 %p21, %r17, %r80;\n" -" @%p21 bra $Lt_1_35586;\n" -" ld.param.u64 %rd57, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd58, %rd57, %rd13;\n" -" ld.param.s32 %r81, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r82, 0;\n" -" setp.le.s32 %p22, %r81, %r82;\n" -" @%p22 bra $Lt_1_36098;\n" -" st.global.f32 [%rd58+0], %f36;\n" -" cvt.s64.s32 %rd59, %r12;\n" -" mul.wide.s32 %rd60, %r12, 4;\n" -" add.u64 %rd61, %rd60, %rd58;\n" -" st.global.f32 [%rd61+0], %f35;\n" -" add.u64 %rd58, %rd60, %rd61;\n" -"$Lt_1_36098:\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p23, %r83, %r84;\n" -" @%p23 bra $Lt_1_36610;\n" -" mov.f32 %f187, %f7;\n" -" st.global.f32 [%rd58+0], %f187;\n" -" cvt.s64.s32 %rd62, %r12;\n" -" mul.wide.s32 %rd63, %r12, 4;\n" -" add.u64 %rd64, %rd63, %rd58;\n" -" mov.f32 %f188, %f9;\n" -" st.global.f32 [%rd64+0], %f188;\n" -" add.u64 %rd65, %rd63, %rd64;\n" -" mov.f32 %f189, %f11;\n" -" st.global.f32 [%rd65+0], %f189;\n" -" add.u64 %rd66, %rd63, %rd65;\n" -" mov.f32 %f190, %f13;\n" -" st.global.f32 [%rd66+0], %f190;\n" -" add.u64 %rd58, %rd63, %rd66;\n" -" mov.f32 %f191, %f15;\n" -" st.global.f32 [%rd58+0], %f191;\n" -" mov.f32 %f192, %f17;\n" -" add.u64 %rd67, %rd63, %rd58;\n" -" st.global.f32 [%rd67+0], %f192;\n" -"$Lt_1_36610:\n" -" ld.param.u64 %rd68, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd69, %rd12, 16;\n" -" add.u64 %rd70, %rd68, %rd69;\n" -" mov.f32 %f193, %f194;\n" -" st.global.v4.f32 [%rd70+0], {%f34,%f33,%f32,%f193};\n" -"$Lt_1_35586:\n" -"$Lt_1_25858:\n" -" .loc 16 277 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/coul_long.ptx b/lib/gpu/coul_long.ptx deleted file mode 100644 index 5576f36c59..0000000000 --- a/lib/gpu/coul_long.ptx +++ /dev/null @@ -1,1009 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009de1_00000000-9_lal_coul_long.cpp3.i (/home/sjplimp/ccBI#.NrfuKV) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009de1_00000000-8_lal_coul_long.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_coul_long.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_cl_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair_engv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_q_, - .param .f32 __cudaparm_kernel_pair_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_qqrd2e, - .param .f32 __cudaparm_kernel_pair_g_ewald, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<81>; - .reg .u64 %rd<58>; - .reg .f32 %f<132>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_cl112[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32611_37_non_const_red_acc128[3072]; - // __cuda_local_var_32548_10_non_const_f = 48 - // __cuda_local_var_32550_9_non_const_virial = 16 - .loc 16 36 0 -$LDWbegin_kernel_pair: - .loc 16 41 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_cl_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 42 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 43 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 44 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_cl112+0], {%f1,%f2,%f3,%f4}; - .loc 16 51 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_25858; - .loc 16 56 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd5, %rd3, %rd4; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - sub.s32 %r13, %r1, 1; - and.b32 %r14, %r13, %r2; - cvt.s64.s32 %rd9, %r14; - mul.wide.s32 %rd10, %r14, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd4; - @%p2 bra $Lt_0_19458; - cvt.s32.s64 %r15, %rd6; - mul.lo.s32 %r16, %r15, %r1; - mov.s32 %r17, %r16; - mul.lo.s32 %r18, %r13, %r8; - add.s32 %r19, %r15, %r18; - cvt.s64.s32 %rd12, %r19; - mul.wide.s32 %rd13, %r19, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r20, %r13, %r12; - cvt.s64.s32 %rd15, %r20; - div.s32 %r21, %r12, %r1; - mul.lo.s32 %r22, %r16, %r21; - cvt.s64.s32 %rd16, %r22; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_19202; -$Lt_0_19458: - add.u64 %rd21, %rd7, %rd8; - ld.global.s32 %r23, [%rd21+0]; - cvt.s64.s32 %rd22, %r23; - mul.wide.s32 %rd23, %r23, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r12; - mul.wide.s32 %rd26, %r12, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r17, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_19202: - .loc 16 59 0 - mov.u32 %r24, %r10; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f21, %f17; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - .loc 16 60 0 - mov.u32 %r31, %r10; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - tex.1d.v4.f32.s32 {%f24,%f25,%f26,%f27},[q_tex,{%r31,%r33,%r35,%r37}]; - mov.f32 %f28, %f24; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_27394; - cvt.s64.s32 %rd27, %r17; - ld.param.f32 %f29, [__cudaparm_kernel_pair_cut_coulsq]; - mov.f32 %f30, 0f00000000; // 0 - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.u64 %rd28, __cuda___cuda_local_var_32541_33_non_const_sp_cl112; -$Lt_0_20226: - // Loop body line 60, nesting depth: 1, estimated iterations: unknown - .loc 16 63 0 - ld.global.s32 %r38, [%rd20+0]; - .loc 16 66 0 - mov.f32 %f34, 0f3f800000; // 1 - shr.s32 %r39, %r38, 30; - and.b32 %r40, %r39, 3; - cvt.s64.s32 %rd29, %r40; - mul.wide.s32 %rd30, %r40, 4; - add.u64 %rd31, %rd28, %rd30; - ld.shared.f32 %f35, [%rd31+0]; - sub.ftz.f32 %f36, %f34, %f35; - .loc 16 69 0 - and.b32 %r41, %r38, 1073741823; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - mov.s32 %r45, 0; - mov.u32 %r46, %r45; - mov.s32 %r47, 0; - mov.u32 %r48, %r47; - tex.1d.v4.f32.s32 {%f37,%f38,%f39,%f40},[pos_tex,{%r42,%r44,%r46,%r48}]; - mov.f32 %f41, %f37; - mov.f32 %f42, %f38; - mov.f32 %f43, %f39; - sub.ftz.f32 %f44, %f22, %f42; - sub.ftz.f32 %f45, %f21, %f41; - sub.ftz.f32 %f46, %f23, %f43; - mul.ftz.f32 %f47, %f44, %f44; - fma.rn.ftz.f32 %f48, %f45, %f45, %f47; - fma.rn.ftz.f32 %f49, %f46, %f46, %f48; - setp.lt.ftz.f32 %p4, %f49, %f29; - @!%p4 bra $Lt_0_20994; - .loc 20 518 0 - rcp.approx.ftz.f32 %f50, %f49; - rsqrt.approx.ftz.f32 %f51, %f50; - ld.param.f32 %f52, [__cudaparm_kernel_pair_g_ewald]; - mul.ftz.f32 %f53, %f52, %f51; - mul.ftz.f32 %f54, %f53, %f53; - neg.ftz.f32 %f55, %f54; - mov.f32 %f56, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f57, %f55, %f56; - ex2.approx.ftz.f32 %f58, %f57; - .loc 16 85 0 - mov.f32 %f59, 0f3f800000; // 1 - mov.f32 %f60, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f61, %f60, %f53, %f59; - rcp.approx.ftz.f32 %f62, %f61; - mov.f32 %f63, 0f3e827906; // 0.25483 - mov.f32 %f64, 0fbe91a98e; // -0.284497 - mov.f32 %f65, 0f3fb5f0e3; // 1.42141 - mov.f32 %f66, 0fbfba00e3; // -1.45315 - mov.f32 %f67, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f68, %f67, %f62, %f66; - fma.rn.ftz.f32 %f69, %f62, %f68, %f65; - fma.rn.ftz.f32 %f70, %f62, %f69, %f64; - fma.rn.ftz.f32 %f71, %f62, %f70, %f63; - mul.ftz.f32 %f72, %f62, %f71; - mul.ftz.f32 %f73, %f58, %f72; - .loc 16 86 0 - mov.u32 %r49, %r41; - mov.s32 %r50, 0; - mov.u32 %r51, %r50; - mov.s32 %r52, 0; - mov.u32 %r53, %r52; - mov.s32 %r54, 0; - mov.u32 %r55, %r54; - tex.1d.v4.f32.s32 {%f74,%f75,%f76,%f77},[q_tex,{%r49,%r51,%r53,%r55}]; - mov.f32 %f78, %f74; - .loc 16 87 0 - ld.param.f32 %f79, [__cudaparm_kernel_pair_qqrd2e]; - mul.ftz.f32 %f80, %f79, %f28; - mul.ftz.f32 %f81, %f80, %f78; - div.approx.ftz.f32 %f82, %f81, %f51; - mov.f32 %f83, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f84, %f53, %f83; - fma.rn.ftz.f32 %f85, %f58, %f84, %f73; - sub.ftz.f32 %f86, %f85, %f36; - mul.ftz.f32 %f87, %f82, %f86; - mul.ftz.f32 %f88, %f50, %f87; - .loc 16 89 0 - fma.rn.ftz.f32 %f32, %f45, %f88, %f32; - .loc 16 90 0 - fma.rn.ftz.f32 %f31, %f44, %f88, %f31; - .loc 16 91 0 - fma.rn.ftz.f32 %f30, %f46, %f88, %f30; - .loc 16 78 0 - sub.ftz.f32 %f89, %f73, %f36; - fma.rn.ftz.f32 %f90, %f82, %f89, %f33; - ld.param.s32 %r56, [__cudaparm_kernel_pair_eflag]; - mov.s32 %r57, 0; - setp.gt.s32 %p5, %r56, %r57; - selp.f32 %f33, %f90, %f33, %p5; - ld.param.s32 %r58, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r59, 0; - setp.le.s32 %p6, %r58, %r59; - @%p6 bra $Lt_0_20994; - .loc 16 97 0 - mov.f32 %f91, %f6; - mul.ftz.f32 %f92, %f45, %f45; - fma.rn.ftz.f32 %f93, %f88, %f92, %f91; - mov.f32 %f6, %f93; - .loc 16 98 0 - mov.f32 %f94, %f8; - fma.rn.ftz.f32 %f95, %f88, %f47, %f94; - mov.f32 %f8, %f95; - .loc 16 99 0 - mov.f32 %f96, %f10; - mul.ftz.f32 %f97, %f46, %f46; - fma.rn.ftz.f32 %f98, %f88, %f97, %f96; - mov.f32 %f10, %f98; - .loc 16 100 0 - mov.f32 %f99, %f12; - mul.ftz.f32 %f100, %f44, %f45; - fma.rn.ftz.f32 %f101, %f88, %f100, %f99; - mov.f32 %f12, %f101; - .loc 16 101 0 - mov.f32 %f102, %f14; - mul.ftz.f32 %f103, %f45, %f46; - fma.rn.ftz.f32 %f104, %f88, %f103, %f102; - mov.f32 %f14, %f104; - .loc 16 102 0 - mul.ftz.f32 %f105, %f44, %f46; - fma.rn.ftz.f32 %f15, %f88, %f105, %f15; - mov.f32 %f16, %f15; -$Lt_0_20994: -$Lt_0_20482: - .loc 16 62 0 - mul.lo.u64 %rd32, %rd27, 4; - add.u64 %rd20, %rd20, %rd32; - setp.lt.u64 %p7, %rd20, %rd19; - @%p7 bra $Lt_0_20226; - bra.uni $Lt_0_19714; -$Lt_0_27394: - mov.f32 %f30, 0f00000000; // 0 - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 -$Lt_0_19714: - mov.u32 %r60, 1; - setp.le.s32 %p8, %r1, %r60; - @%p8 bra $Lt_0_23810; - .loc 16 112 0 - mov.u64 %rd33, __cuda___cuda_local_var_32611_37_non_const_red_acc128; - cvt.s64.s32 %rd34, %r2; - mul.wide.s32 %rd35, %r2, 4; - add.u64 %rd36, %rd33, %rd35; - mov.f32 %f106, %f32; - st.shared.f32 [%rd36+0], %f106; - .loc 16 113 0 - mov.f32 %f107, %f31; - st.shared.f32 [%rd36+512], %f107; - .loc 16 114 0 - mov.f32 %f108, %f30; - st.shared.f32 [%rd36+1024], %f108; - .loc 16 115 0 - mov.f32 %f109, %f33; - st.shared.f32 [%rd36+1536], %f109; - .loc 16 117 0 - shr.s32 %r61, %r1, 31; - mov.s32 %r62, 1; - and.b32 %r63, %r61, %r62; - add.s32 %r64, %r63, %r1; - shr.s32 %r65, %r64, 1; - mov.s32 %r66, %r65; - mov.u32 %r67, 0; - setp.ne.u32 %p9, %r65, %r67; - @!%p9 bra $Lt_0_22274; -$Lt_0_22786: - setp.ge.u32 %p10, %r14, %r66; - @%p10 bra $Lt_0_23042; - .loc 16 120 0 - add.u32 %r68, %r2, %r66; - cvt.u64.u32 %rd37, %r68; - mul.wide.u32 %rd38, %r68, 4; - add.u64 %rd39, %rd33, %rd38; - ld.shared.f32 %f110, [%rd39+0]; - add.ftz.f32 %f106, %f110, %f106; - st.shared.f32 [%rd36+0], %f106; - ld.shared.f32 %f111, [%rd39+512]; - add.ftz.f32 %f107, %f111, %f107; - st.shared.f32 [%rd36+512], %f107; - ld.shared.f32 %f112, [%rd39+1024]; - add.ftz.f32 %f108, %f112, %f108; - st.shared.f32 [%rd36+1024], %f108; - ld.shared.f32 %f113, [%rd39+1536]; - add.ftz.f32 %f109, %f113, %f109; - st.shared.f32 [%rd36+1536], %f109; -$Lt_0_23042: - .loc 16 117 0 - shr.u32 %r66, %r66, 1; - mov.u32 %r69, 0; - setp.ne.u32 %p11, %r66, %r69; - @%p11 bra $Lt_0_22786; -$Lt_0_22274: - .loc 16 124 0 - mov.f32 %f32, %f106; - .loc 16 125 0 - mov.f32 %f31, %f107; - .loc 16 126 0 - mov.f32 %f30, %f108; - .loc 16 127 0 - mov.f32 %f33, %f109; - ld.param.s32 %r70, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r71, 0; - setp.le.s32 %p12, %r70, %r71; - @%p12 bra $Lt_0_23810; - .loc 16 131 0 - mov.f32 %f106, %f6; - st.shared.f32 [%rd36+0], %f106; - mov.f32 %f107, %f8; - st.shared.f32 [%rd36+512], %f107; - mov.f32 %f108, %f10; - st.shared.f32 [%rd36+1024], %f108; - mov.f32 %f109, %f12; - st.shared.f32 [%rd36+1536], %f109; - mov.f32 %f114, %f14; - st.shared.f32 [%rd36+2048], %f114; - mov.f32 %f115, %f15; - st.shared.f32 [%rd36+2560], %f115; - .loc 16 133 0 - mov.s32 %r72, %r65; - @!%p9 bra $Lt_0_24322; -$Lt_0_24834: - setp.ge.u32 %p13, %r14, %r72; - @%p13 bra $Lt_0_25090; - .loc 16 136 0 - add.u32 %r73, %r2, %r72; - cvt.u64.u32 %rd40, %r73; - mul.wide.u32 %rd41, %r73, 4; - add.u64 %rd42, %rd33, %rd41; - ld.shared.f32 %f116, [%rd42+0]; - add.ftz.f32 %f106, %f116, %f106; - st.shared.f32 [%rd36+0], %f106; - ld.shared.f32 %f117, [%rd42+512]; - add.ftz.f32 %f107, %f117, %f107; - st.shared.f32 [%rd36+512], %f107; - ld.shared.f32 %f118, [%rd42+1024]; - add.ftz.f32 %f108, %f118, %f108; - st.shared.f32 [%rd36+1024], %f108; - ld.shared.f32 %f119, [%rd42+1536]; - add.ftz.f32 %f109, %f119, %f109; - st.shared.f32 [%rd36+1536], %f109; - ld.shared.f32 %f120, [%rd42+2048]; - add.ftz.f32 %f114, %f120, %f114; - st.shared.f32 [%rd36+2048], %f114; - ld.shared.f32 %f121, [%rd42+2560]; - add.ftz.f32 %f115, %f121, %f115; - st.shared.f32 [%rd36+2560], %f115; -$Lt_0_25090: - .loc 16 133 0 - shr.u32 %r72, %r72, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p14, %r72, %r74; - @%p14 bra $Lt_0_24834; -$Lt_0_24322: - .loc 16 141 0 - mov.f32 %f6, %f106; - mov.f32 %f8, %f107; - mov.f32 %f10, %f108; - mov.f32 %f12, %f109; - mov.f32 %f14, %f114; - mov.f32 %f16, %f115; -$Lt_0_23810: -$Lt_0_21762: - mov.u32 %r75, 0; - setp.ne.s32 %p15, %r14, %r75; - @%p15 bra $Lt_0_25858; - .loc 16 147 0 - ld.param.u64 %rd43, [__cudaparm_kernel_pair_engv]; - add.u64 %rd44, %rd43, %rd3; - ld.param.s32 %r76, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r77, 0; - setp.le.s32 %p16, %r76, %r77; - @%p16 bra $Lt_0_26370; - .loc 16 149 0 - mov.f32 %f122, 0f00000000; // 0 - st.global.f32 [%rd44+0], %f122; - .loc 16 150 0 - cvt.s64.s32 %rd45, %r9; - mul.wide.s32 %rd46, %r9, 4; - add.u64 %rd47, %rd46, %rd44; - .loc 16 151 0 - st.global.f32 [%rd47+0], %f33; - .loc 16 152 0 - add.u64 %rd44, %rd46, %rd47; -$Lt_0_26370: - ld.param.s32 %r78, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r79, 0; - setp.le.s32 %p17, %r78, %r79; - @%p17 bra $Lt_0_26882; - .loc 16 156 0 - mov.f32 %f123, %f6; - st.global.f32 [%rd44+0], %f123; - .loc 16 157 0 - cvt.s64.s32 %rd48, %r9; - mul.wide.s32 %rd49, %r9, 4; - add.u64 %rd50, %rd49, %rd44; - .loc 16 156 0 - mov.f32 %f124, %f8; - st.global.f32 [%rd50+0], %f124; - .loc 16 157 0 - add.u64 %rd51, %rd49, %rd50; - .loc 16 156 0 - mov.f32 %f125, %f10; - st.global.f32 [%rd51+0], %f125; - .loc 16 157 0 - add.u64 %rd52, %rd49, %rd51; - .loc 16 156 0 - mov.f32 %f126, %f12; - st.global.f32 [%rd52+0], %f126; - .loc 16 157 0 - add.u64 %rd44, %rd49, %rd52; - .loc 16 156 0 - mov.f32 %f127, %f14; - st.global.f32 [%rd44+0], %f127; - mov.f32 %f128, %f16; - add.u64 %rd53, %rd49, %rd44; - st.global.f32 [%rd53+0], %f128; -$Lt_0_26882: - .loc 16 160 0 - ld.param.u64 %rd54, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd55, %rd2, 16; - add.u64 %rd56, %rd54, %rd55; - mov.f32 %f129, %f130; - st.global.v4.f32 [%rd56+0], {%f32,%f31,%f30,%f129}; -$Lt_0_25858: -$Lt_0_18690: - .loc 16 163 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_cl_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast_engv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_fast_q_, - .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_fast_qqrd2e, - .param .f32 __cudaparm_kernel_pair_fast_g_ewald, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<82>; - .reg .u64 %rd<62>; - .reg .f32 %f<129>; - .reg .pred %p<20>; - .shared .align 4 .b8 __cuda___cuda_local_var_32678_33_non_const_sp_cl3304[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32748_37_non_const_red_acc3320[3072]; - // __cuda_local_var_32683_10_non_const_f = 48 - // __cuda_local_var_32685_9_non_const_virial = 16 - .loc 16 173 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_19458; - .loc 16 179 0 - mov.u64 %rd1, __cuda___cuda_local_var_32678_33_non_const_sp_cl3304; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_cl_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_19458: - mov.u64 %rd1, __cuda___cuda_local_var_32678_33_non_const_sp_cl3304; - .loc 16 186 0 - mov.f32 %f2, 0f00000000; // 0 - mov.f32 %f3, %f2; - mov.f32 %f4, 0f00000000; // 0 - mov.f32 %f5, %f4; - mov.f32 %f6, 0f00000000; // 0 - mov.f32 %f7, %f6; - mov.f32 %f8, 0f00000000; // 0 - mov.f32 %f9, %f8; - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - .loc 16 188 0 - bar.sync 0; - ld.param.s32 %r3, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r4, %r1, %r3; - cvt.s32.u32 %r5, %ntid.x; - div.s32 %r6, %r5, %r3; - cvt.s32.u32 %r7, %ctaid.x; - mul.lo.s32 %r8, %r7, %r6; - add.s32 %r9, %r4, %r8; - ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p2, %r9, %r10; - @%p2 bra $Lt_1_27138; - .loc 16 193 0 - cvt.s64.s32 %rd7, %r9; - mul.wide.s32 %rd8, %r9, 4; - ld.param.u64 %rd9, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd10, %rd8, %rd9; - ld.global.s32 %r11, [%rd10+0]; - ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd11, %r12; - mul.wide.s32 %rd12, %r12, 4; - add.u64 %rd13, %rd12, %rd10; - ld.global.s32 %r13, [%rd13+0]; - sub.s32 %r14, %r3, 1; - and.b32 %r15, %r14, %r1; - cvt.s64.s32 %rd14, %r15; - mul.wide.s32 %rd15, %r15, 4; - ld.param.u64 %rd16, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p3, %rd16, %rd9; - @%p3 bra $Lt_1_20738; - cvt.s32.s64 %r16, %rd11; - mul.lo.s32 %r17, %r16, %r3; - mov.s32 %r18, %r17; - mul.lo.s32 %r19, %r14, %r9; - add.s32 %r20, %r16, %r19; - cvt.s64.s32 %rd17, %r20; - mul.wide.s32 %rd18, %r20, 4; - add.u64 %rd19, %rd13, %rd18; - and.b32 %r21, %r14, %r13; - cvt.s64.s32 %rd20, %r21; - div.s32 %r22, %r13, %r3; - mul.lo.s32 %r23, %r17, %r22; - cvt.s64.s32 %rd21, %r23; - add.u64 %rd22, %rd20, %rd21; - mul.lo.u64 %rd23, %rd22, 4; - add.u64 %rd24, %rd19, %rd23; - add.u64 %rd25, %rd15, %rd19; - bra.uni $Lt_1_20482; -$Lt_1_20738: - add.u64 %rd26, %rd12, %rd13; - ld.global.s32 %r24, [%rd26+0]; - cvt.s64.s32 %rd27, %r24; - mul.wide.s32 %rd28, %r24, 4; - add.u64 %rd29, %rd16, %rd28; - cvt.s64.s32 %rd30, %r13; - mul.wide.s32 %rd31, %r13, 4; - add.u64 %rd24, %rd29, %rd31; - mov.s32 %r18, %r3; - add.u64 %rd25, %rd15, %rd29; -$Lt_1_20482: - .loc 16 196 0 - mov.u32 %r25, %r11; - mov.s32 %r26, 0; - mov.u32 %r27, %r26; - mov.s32 %r28, 0; - mov.u32 %r29, %r28; - mov.s32 %r30, 0; - mov.u32 %r31, %r30; - tex.1d.v4.f32.s32 {%f14,%f15,%f16,%f17},[pos_tex,{%r25,%r27,%r29,%r31}]; - mov.f32 %f18, %f14; - mov.f32 %f19, %f15; - mov.f32 %f20, %f16; - .loc 16 197 0 - mov.u32 %r32, %r11; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - mov.s32 %r35, 0; - mov.u32 %r36, %r35; - mov.s32 %r37, 0; - mov.u32 %r38, %r37; - tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[q_tex,{%r32,%r34,%r36,%r38}]; - mov.f32 %f25, %f21; - setp.ge.u64 %p4, %rd25, %rd24; - @%p4 bra $Lt_1_28674; - cvt.s64.s32 %rd32, %r18; - ld.param.f32 %f26, [__cudaparm_kernel_pair_fast_cut_coulsq]; - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 -$Lt_1_21506: - // Loop body line 197, nesting depth: 1, estimated iterations: unknown - .loc 16 200 0 - ld.global.s32 %r39, [%rd25+0]; - .loc 16 203 0 - mov.f32 %f31, 0f3f800000; // 1 - shr.s32 %r40, %r39, 30; - and.b32 %r41, %r40, 3; - cvt.s64.s32 %rd33, %r41; - mul.wide.s32 %rd34, %r41, 4; - add.u64 %rd35, %rd1, %rd34; - ld.shared.f32 %f32, [%rd35+0]; - sub.ftz.f32 %f33, %f31, %f32; - .loc 16 206 0 - and.b32 %r42, %r39, 1073741823; - mov.u32 %r43, %r42; - mov.s32 %r44, 0; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - mov.s32 %r48, 0; - mov.u32 %r49, %r48; - tex.1d.v4.f32.s32 {%f34,%f35,%f36,%f37},[pos_tex,{%r43,%r45,%r47,%r49}]; - mov.f32 %f38, %f34; - mov.f32 %f39, %f35; - mov.f32 %f40, %f36; - sub.ftz.f32 %f41, %f19, %f39; - sub.ftz.f32 %f42, %f18, %f38; - sub.ftz.f32 %f43, %f20, %f40; - mul.ftz.f32 %f44, %f41, %f41; - fma.rn.ftz.f32 %f45, %f42, %f42, %f44; - fma.rn.ftz.f32 %f46, %f43, %f43, %f45; - setp.lt.ftz.f32 %p5, %f46, %f26; - @!%p5 bra $Lt_1_22274; - .loc 20 518 0 - rcp.approx.ftz.f32 %f47, %f46; - rsqrt.approx.ftz.f32 %f48, %f47; - ld.param.f32 %f49, [__cudaparm_kernel_pair_fast_g_ewald]; - mul.ftz.f32 %f50, %f49, %f48; - mul.ftz.f32 %f51, %f50, %f50; - neg.ftz.f32 %f52, %f51; - mov.f32 %f53, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f54, %f52, %f53; - ex2.approx.ftz.f32 %f55, %f54; - .loc 16 222 0 - mov.f32 %f56, 0f3f800000; // 1 - mov.f32 %f57, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f58, %f57, %f50, %f56; - rcp.approx.ftz.f32 %f59, %f58; - mov.f32 %f60, 0f3e827906; // 0.25483 - mov.f32 %f61, 0fbe91a98e; // -0.284497 - mov.f32 %f62, 0f3fb5f0e3; // 1.42141 - mov.f32 %f63, 0fbfba00e3; // -1.45315 - mov.f32 %f64, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f65, %f64, %f59, %f63; - fma.rn.ftz.f32 %f66, %f59, %f65, %f62; - fma.rn.ftz.f32 %f67, %f59, %f66, %f61; - fma.rn.ftz.f32 %f68, %f59, %f67, %f60; - mul.ftz.f32 %f69, %f59, %f68; - mul.ftz.f32 %f70, %f55, %f69; - .loc 16 223 0 - mov.u32 %r50, %r42; - mov.s32 %r51, 0; - mov.u32 %r52, %r51; - mov.s32 %r53, 0; - mov.u32 %r54, %r53; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - tex.1d.v4.f32.s32 {%f71,%f72,%f73,%f74},[q_tex,{%r50,%r52,%r54,%r56}]; - mov.f32 %f75, %f71; - .loc 16 224 0 - ld.param.f32 %f76, [__cudaparm_kernel_pair_fast_qqrd2e]; - mul.ftz.f32 %f77, %f76, %f25; - mul.ftz.f32 %f78, %f77, %f75; - div.approx.ftz.f32 %f79, %f78, %f48; - mov.f32 %f80, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f81, %f50, %f80; - fma.rn.ftz.f32 %f82, %f55, %f81, %f70; - sub.ftz.f32 %f83, %f82, %f33; - mul.ftz.f32 %f84, %f79, %f83; - mul.ftz.f32 %f85, %f47, %f84; - .loc 16 226 0 - fma.rn.ftz.f32 %f29, %f42, %f85, %f29; - .loc 16 227 0 - fma.rn.ftz.f32 %f28, %f41, %f85, %f28; - .loc 16 228 0 - fma.rn.ftz.f32 %f27, %f43, %f85, %f27; - .loc 16 215 0 - sub.ftz.f32 %f86, %f70, %f33; - fma.rn.ftz.f32 %f87, %f79, %f86, %f30; - ld.param.s32 %r57, [__cudaparm_kernel_pair_fast_eflag]; - mov.s32 %r58, 0; - setp.gt.s32 %p6, %r57, %r58; - selp.f32 %f30, %f87, %f30, %p6; - ld.param.s32 %r59, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r60, 0; - setp.le.s32 %p7, %r59, %r60; - @%p7 bra $Lt_1_22274; - .loc 16 234 0 - mov.f32 %f88, %f3; - mul.ftz.f32 %f89, %f42, %f42; - fma.rn.ftz.f32 %f90, %f85, %f89, %f88; - mov.f32 %f3, %f90; - .loc 16 235 0 - mov.f32 %f91, %f5; - fma.rn.ftz.f32 %f92, %f85, %f44, %f91; - mov.f32 %f5, %f92; - .loc 16 236 0 - mov.f32 %f93, %f7; - mul.ftz.f32 %f94, %f43, %f43; - fma.rn.ftz.f32 %f95, %f85, %f94, %f93; - mov.f32 %f7, %f95; - .loc 16 237 0 - mov.f32 %f96, %f9; - mul.ftz.f32 %f97, %f41, %f42; - fma.rn.ftz.f32 %f98, %f85, %f97, %f96; - mov.f32 %f9, %f98; - .loc 16 238 0 - mov.f32 %f99, %f11; - mul.ftz.f32 %f100, %f42, %f43; - fma.rn.ftz.f32 %f101, %f85, %f100, %f99; - mov.f32 %f11, %f101; - .loc 16 239 0 - mul.ftz.f32 %f102, %f41, %f43; - fma.rn.ftz.f32 %f12, %f85, %f102, %f12; - mov.f32 %f13, %f12; -$Lt_1_22274: -$Lt_1_21762: - .loc 16 199 0 - mul.lo.u64 %rd36, %rd32, 4; - add.u64 %rd25, %rd25, %rd36; - setp.lt.u64 %p8, %rd25, %rd24; - @%p8 bra $Lt_1_21506; - bra.uni $Lt_1_20994; -$Lt_1_28674: - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 -$Lt_1_20994: - mov.u32 %r61, 1; - setp.le.s32 %p9, %r3, %r61; - @%p9 bra $Lt_1_25090; - .loc 16 249 0 - mov.u64 %rd37, __cuda___cuda_local_var_32748_37_non_const_red_acc3320; - cvt.s64.s32 %rd38, %r1; - mul.wide.s32 %rd39, %r1, 4; - add.u64 %rd40, %rd37, %rd39; - mov.f32 %f103, %f29; - st.shared.f32 [%rd40+0], %f103; - .loc 16 250 0 - mov.f32 %f104, %f28; - st.shared.f32 [%rd40+512], %f104; - .loc 16 251 0 - mov.f32 %f105, %f27; - st.shared.f32 [%rd40+1024], %f105; - .loc 16 252 0 - mov.f32 %f106, %f30; - st.shared.f32 [%rd40+1536], %f106; - .loc 16 254 0 - shr.s32 %r62, %r3, 31; - mov.s32 %r63, 1; - and.b32 %r64, %r62, %r63; - add.s32 %r65, %r64, %r3; - shr.s32 %r66, %r65, 1; - mov.s32 %r67, %r66; - mov.u32 %r68, 0; - setp.ne.u32 %p10, %r66, %r68; - @!%p10 bra $Lt_1_23554; -$Lt_1_24066: - setp.ge.u32 %p11, %r15, %r67; - @%p11 bra $Lt_1_24322; - .loc 16 257 0 - add.u32 %r69, %r1, %r67; - cvt.u64.u32 %rd41, %r69; - mul.wide.u32 %rd42, %r69, 4; - add.u64 %rd43, %rd37, %rd42; - ld.shared.f32 %f107, [%rd43+0]; - add.ftz.f32 %f103, %f107, %f103; - st.shared.f32 [%rd40+0], %f103; - ld.shared.f32 %f108, [%rd43+512]; - add.ftz.f32 %f104, %f108, %f104; - st.shared.f32 [%rd40+512], %f104; - ld.shared.f32 %f109, [%rd43+1024]; - add.ftz.f32 %f105, %f109, %f105; - st.shared.f32 [%rd40+1024], %f105; - ld.shared.f32 %f110, [%rd43+1536]; - add.ftz.f32 %f106, %f110, %f106; - st.shared.f32 [%rd40+1536], %f106; -$Lt_1_24322: - .loc 16 254 0 - shr.u32 %r67, %r67, 1; - mov.u32 %r70, 0; - setp.ne.u32 %p12, %r67, %r70; - @%p12 bra $Lt_1_24066; -$Lt_1_23554: - .loc 16 261 0 - mov.f32 %f29, %f103; - .loc 16 262 0 - mov.f32 %f28, %f104; - .loc 16 263 0 - mov.f32 %f27, %f105; - .loc 16 264 0 - mov.f32 %f30, %f106; - ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r72, 0; - setp.le.s32 %p13, %r71, %r72; - @%p13 bra $Lt_1_25090; - .loc 16 268 0 - mov.f32 %f103, %f3; - st.shared.f32 [%rd40+0], %f103; - mov.f32 %f104, %f5; - st.shared.f32 [%rd40+512], %f104; - mov.f32 %f105, %f7; - st.shared.f32 [%rd40+1024], %f105; - mov.f32 %f106, %f9; - st.shared.f32 [%rd40+1536], %f106; - mov.f32 %f111, %f11; - st.shared.f32 [%rd40+2048], %f111; - mov.f32 %f112, %f12; - st.shared.f32 [%rd40+2560], %f112; - .loc 16 270 0 - mov.s32 %r73, %r66; - @!%p10 bra $Lt_1_25602; -$Lt_1_26114: - setp.ge.u32 %p14, %r15, %r73; - @%p14 bra $Lt_1_26370; - .loc 16 273 0 - add.u32 %r74, %r1, %r73; - cvt.u64.u32 %rd44, %r74; - mul.wide.u32 %rd45, %r74, 4; - add.u64 %rd46, %rd37, %rd45; - ld.shared.f32 %f113, [%rd46+0]; - add.ftz.f32 %f103, %f113, %f103; - st.shared.f32 [%rd40+0], %f103; - ld.shared.f32 %f114, [%rd46+512]; - add.ftz.f32 %f104, %f114, %f104; - st.shared.f32 [%rd40+512], %f104; - ld.shared.f32 %f115, [%rd46+1024]; - add.ftz.f32 %f105, %f115, %f105; - st.shared.f32 [%rd40+1024], %f105; - ld.shared.f32 %f116, [%rd46+1536]; - add.ftz.f32 %f106, %f116, %f106; - st.shared.f32 [%rd40+1536], %f106; - ld.shared.f32 %f117, [%rd46+2048]; - add.ftz.f32 %f111, %f117, %f111; - st.shared.f32 [%rd40+2048], %f111; - ld.shared.f32 %f118, [%rd46+2560]; - add.ftz.f32 %f112, %f118, %f112; - st.shared.f32 [%rd40+2560], %f112; -$Lt_1_26370: - .loc 16 270 0 - shr.u32 %r73, %r73, 1; - mov.u32 %r75, 0; - setp.ne.u32 %p15, %r73, %r75; - @%p15 bra $Lt_1_26114; -$Lt_1_25602: - .loc 16 278 0 - mov.f32 %f3, %f103; - mov.f32 %f5, %f104; - mov.f32 %f7, %f105; - mov.f32 %f9, %f106; - mov.f32 %f11, %f111; - mov.f32 %f13, %f112; -$Lt_1_25090: -$Lt_1_23042: - mov.u32 %r76, 0; - setp.ne.s32 %p16, %r15, %r76; - @%p16 bra $Lt_1_27138; - .loc 16 284 0 - ld.param.u64 %rd47, [__cudaparm_kernel_pair_fast_engv]; - add.u64 %rd48, %rd47, %rd8; - ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r78, 0; - setp.le.s32 %p17, %r77, %r78; - @%p17 bra $Lt_1_27650; - .loc 16 286 0 - mov.f32 %f119, 0f00000000; // 0 - st.global.f32 [%rd48+0], %f119; - .loc 16 287 0 - cvt.s64.s32 %rd49, %r10; - mul.wide.s32 %rd50, %r10, 4; - add.u64 %rd51, %rd50, %rd48; - .loc 16 288 0 - st.global.f32 [%rd51+0], %f30; - .loc 16 289 0 - add.u64 %rd48, %rd50, %rd51; -$Lt_1_27650: - ld.param.s32 %r79, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r80, 0; - setp.le.s32 %p18, %r79, %r80; - @%p18 bra $Lt_1_28162; - .loc 16 293 0 - mov.f32 %f120, %f3; - st.global.f32 [%rd48+0], %f120; - .loc 16 294 0 - cvt.s64.s32 %rd52, %r10; - mul.wide.s32 %rd53, %r10, 4; - add.u64 %rd54, %rd53, %rd48; - .loc 16 293 0 - mov.f32 %f121, %f5; - st.global.f32 [%rd54+0], %f121; - .loc 16 294 0 - add.u64 %rd55, %rd53, %rd54; - .loc 16 293 0 - mov.f32 %f122, %f7; - st.global.f32 [%rd55+0], %f122; - .loc 16 294 0 - add.u64 %rd56, %rd53, %rd55; - .loc 16 293 0 - mov.f32 %f123, %f9; - st.global.f32 [%rd56+0], %f123; - .loc 16 294 0 - add.u64 %rd48, %rd53, %rd56; - .loc 16 293 0 - mov.f32 %f124, %f11; - st.global.f32 [%rd48+0], %f124; - mov.f32 %f125, %f13; - add.u64 %rd57, %rd53, %rd48; - st.global.f32 [%rd57+0], %f125; -$Lt_1_28162: - .loc 16 297 0 - ld.param.u64 %rd58, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd59, %rd7, 16; - add.u64 %rd60, %rd58, %rd59; - mov.f32 %f126, %f127; - st.global.v4.f32 [%rd60+0], {%f29,%f28,%f27,%f126}; -$Lt_1_27138: -$Lt_1_19970: - .loc 16 300 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/coul_long_ptx.h b/lib/gpu/coul_long_ptx.h deleted file mode 100644 index 5091de01fa..0000000000 --- a/lib/gpu/coul_long_ptx.h +++ /dev/null @@ -1,957 +0,0 @@ -const char * coul_long = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .global .texref q_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_lj1,\n" -" .param .u64 __cudaparm_kernel_pair_lj3,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_cl_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair_engv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_q_,\n" -" .param .f32 __cudaparm_kernel_pair_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<81>;\n" -" .reg .u64 %rd<58>;\n" -" .reg .f32 %f<132>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_cl112[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32611_37_non_const_red_acc128[3072];\n" -" .loc 16 36 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 41 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_cl_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 42 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 43 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 44 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_cl112+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 51 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" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_25858;\n" -" .loc 16 56 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd5, %rd3, %rd4;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" sub.s32 %r13, %r1, 1;\n" -" and.b32 %r14, %r13, %r2;\n" -" cvt.s64.s32 %rd9, %r14;\n" -" mul.wide.s32 %rd10, %r14, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd4;\n" -" @%p2 bra $Lt_0_19458;\n" -" cvt.s32.s64 %r15, %rd6;\n" -" mul.lo.s32 %r16, %r15, %r1;\n" -" mov.s32 %r17, %r16;\n" -" mul.lo.s32 %r18, %r13, %r8;\n" -" add.s32 %r19, %r15, %r18;\n" -" cvt.s64.s32 %rd12, %r19;\n" -" mul.wide.s32 %rd13, %r19, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r20, %r13, %r12;\n" -" cvt.s64.s32 %rd15, %r20;\n" -" div.s32 %r21, %r12, %r1;\n" -" mul.lo.s32 %r22, %r16, %r21;\n" -" cvt.s64.s32 %rd16, %r22;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_19202;\n" -"$Lt_0_19458:\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" ld.global.s32 %r23, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r23;\n" -" mul.wide.s32 %rd23, %r23, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r12;\n" -" mul.wide.s32 %rd26, %r12, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r17, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_19202:\n" -" .loc 16 59 0\n" -" mov.u32 %r24, %r10;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f21, %f17;\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" .loc 16 60 0\n" -" mov.u32 %r31, %r10;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" tex.1d.v4.f32.s32 {%f24,%f25,%f26,%f27},[q_tex,{%r31,%r33,%r35,%r37}];\n" -" mov.f32 %f28, %f24;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_27394;\n" -" cvt.s64.s32 %rd27, %r17;\n" -" ld.param.f32 %f29, [__cudaparm_kernel_pair_cut_coulsq];\n" -" mov.f32 %f30, 0f00000000; \n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.u64 %rd28, __cuda___cuda_local_var_32541_33_non_const_sp_cl112;\n" -"$Lt_0_20226:\n" -" .loc 16 63 0\n" -" ld.global.s32 %r38, [%rd20+0];\n" -" .loc 16 66 0\n" -" mov.f32 %f34, 0f3f800000; \n" -" shr.s32 %r39, %r38, 30;\n" -" and.b32 %r40, %r39, 3;\n" -" cvt.s64.s32 %rd29, %r40;\n" -" mul.wide.s32 %rd30, %r40, 4;\n" -" add.u64 %rd31, %rd28, %rd30;\n" -" ld.shared.f32 %f35, [%rd31+0];\n" -" sub.ftz.f32 %f36, %f34, %f35;\n" -" .loc 16 69 0\n" -" and.b32 %r41, %r38, 1073741823;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" mov.s32 %r45, 0;\n" -" mov.u32 %r46, %r45;\n" -" mov.s32 %r47, 0;\n" -" mov.u32 %r48, %r47;\n" -" tex.1d.v4.f32.s32 {%f37,%f38,%f39,%f40},[pos_tex,{%r42,%r44,%r46,%r48}];\n" -" mov.f32 %f41, %f37;\n" -" mov.f32 %f42, %f38;\n" -" mov.f32 %f43, %f39;\n" -" sub.ftz.f32 %f44, %f22, %f42;\n" -" sub.ftz.f32 %f45, %f21, %f41;\n" -" sub.ftz.f32 %f46, %f23, %f43;\n" -" mul.ftz.f32 %f47, %f44, %f44;\n" -" fma.rn.ftz.f32 %f48, %f45, %f45, %f47;\n" -" fma.rn.ftz.f32 %f49, %f46, %f46, %f48;\n" -" setp.lt.ftz.f32 %p4, %f49, %f29;\n" -" @!%p4 bra $Lt_0_20994;\n" -" .loc 20 518 0\n" -" rcp.approx.ftz.f32 %f50, %f49;\n" -" rsqrt.approx.ftz.f32 %f51, %f50;\n" -" ld.param.f32 %f52, [__cudaparm_kernel_pair_g_ewald];\n" -" mul.ftz.f32 %f53, %f52, %f51;\n" -" mul.ftz.f32 %f54, %f53, %f53;\n" -" neg.ftz.f32 %f55, %f54;\n" -" mov.f32 %f56, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f57, %f55, %f56;\n" -" ex2.approx.ftz.f32 %f58, %f57;\n" -" .loc 16 85 0\n" -" mov.f32 %f59, 0f3f800000; \n" -" mov.f32 %f60, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f61, %f60, %f53, %f59;\n" -" rcp.approx.ftz.f32 %f62, %f61;\n" -" mov.f32 %f63, 0f3e827906; \n" -" mov.f32 %f64, 0fbe91a98e; \n" -" mov.f32 %f65, 0f3fb5f0e3; \n" -" mov.f32 %f66, 0fbfba00e3; \n" -" mov.f32 %f67, 0f3f87dc22; \n" -" fma.rn.ftz.f32 %f68, %f67, %f62, %f66;\n" -" fma.rn.ftz.f32 %f69, %f62, %f68, %f65;\n" -" fma.rn.ftz.f32 %f70, %f62, %f69, %f64;\n" -" fma.rn.ftz.f32 %f71, %f62, %f70, %f63;\n" -" mul.ftz.f32 %f72, %f62, %f71;\n" -" mul.ftz.f32 %f73, %f58, %f72;\n" -" .loc 16 86 0\n" -" mov.u32 %r49, %r41;\n" -" mov.s32 %r50, 0;\n" -" mov.u32 %r51, %r50;\n" -" mov.s32 %r52, 0;\n" -" mov.u32 %r53, %r52;\n" -" mov.s32 %r54, 0;\n" -" mov.u32 %r55, %r54;\n" -" tex.1d.v4.f32.s32 {%f74,%f75,%f76,%f77},[q_tex,{%r49,%r51,%r53,%r55}];\n" -" mov.f32 %f78, %f74;\n" -" .loc 16 87 0\n" -" ld.param.f32 %f79, [__cudaparm_kernel_pair_qqrd2e];\n" -" mul.ftz.f32 %f80, %f79, %f28;\n" -" mul.ftz.f32 %f81, %f80, %f78;\n" -" div.approx.ftz.f32 %f82, %f81, %f51;\n" -" mov.f32 %f83, 0f3f906ebb; \n" -" mul.ftz.f32 %f84, %f53, %f83;\n" -" fma.rn.ftz.f32 %f85, %f58, %f84, %f73;\n" -" sub.ftz.f32 %f86, %f85, %f36;\n" -" mul.ftz.f32 %f87, %f82, %f86;\n" -" mul.ftz.f32 %f88, %f50, %f87;\n" -" .loc 16 89 0\n" -" fma.rn.ftz.f32 %f32, %f45, %f88, %f32;\n" -" .loc 16 90 0\n" -" fma.rn.ftz.f32 %f31, %f44, %f88, %f31;\n" -" .loc 16 91 0\n" -" fma.rn.ftz.f32 %f30, %f46, %f88, %f30;\n" -" .loc 16 78 0\n" -" sub.ftz.f32 %f89, %f73, %f36;\n" -" fma.rn.ftz.f32 %f90, %f82, %f89, %f33;\n" -" ld.param.s32 %r56, [__cudaparm_kernel_pair_eflag];\n" -" mov.s32 %r57, 0;\n" -" setp.gt.s32 %p5, %r56, %r57;\n" -" selp.f32 %f33, %f90, %f33, %p5;\n" -" ld.param.s32 %r58, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r59, 0;\n" -" setp.le.s32 %p6, %r58, %r59;\n" -" @%p6 bra $Lt_0_20994;\n" -" .loc 16 97 0\n" -" mov.f32 %f91, %f6;\n" -" mul.ftz.f32 %f92, %f45, %f45;\n" -" fma.rn.ftz.f32 %f93, %f88, %f92, %f91;\n" -" mov.f32 %f6, %f93;\n" -" .loc 16 98 0\n" -" mov.f32 %f94, %f8;\n" -" fma.rn.ftz.f32 %f95, %f88, %f47, %f94;\n" -" mov.f32 %f8, %f95;\n" -" .loc 16 99 0\n" -" mov.f32 %f96, %f10;\n" -" mul.ftz.f32 %f97, %f46, %f46;\n" -" fma.rn.ftz.f32 %f98, %f88, %f97, %f96;\n" -" mov.f32 %f10, %f98;\n" -" .loc 16 100 0\n" -" mov.f32 %f99, %f12;\n" -" mul.ftz.f32 %f100, %f44, %f45;\n" -" fma.rn.ftz.f32 %f101, %f88, %f100, %f99;\n" -" mov.f32 %f12, %f101;\n" -" .loc 16 101 0\n" -" mov.f32 %f102, %f14;\n" -" mul.ftz.f32 %f103, %f45, %f46;\n" -" fma.rn.ftz.f32 %f104, %f88, %f103, %f102;\n" -" mov.f32 %f14, %f104;\n" -" .loc 16 102 0\n" -" mul.ftz.f32 %f105, %f44, %f46;\n" -" fma.rn.ftz.f32 %f15, %f88, %f105, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_0_20994:\n" -"$Lt_0_20482:\n" -" .loc 16 62 0\n" -" mul.lo.u64 %rd32, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd32;\n" -" setp.lt.u64 %p7, %rd20, %rd19;\n" -" @%p7 bra $Lt_0_20226;\n" -" bra.uni $Lt_0_19714;\n" -"$Lt_0_27394:\n" -" mov.f32 %f30, 0f00000000; \n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -"$Lt_0_19714:\n" -" mov.u32 %r60, 1;\n" -" setp.le.s32 %p8, %r1, %r60;\n" -" @%p8 bra $Lt_0_23810;\n" -" .loc 16 112 0\n" -" mov.u64 %rd33, __cuda___cuda_local_var_32611_37_non_const_red_acc128;\n" -" cvt.s64.s32 %rd34, %r2;\n" -" mul.wide.s32 %rd35, %r2, 4;\n" -" add.u64 %rd36, %rd33, %rd35;\n" -" mov.f32 %f106, %f32;\n" -" st.shared.f32 [%rd36+0], %f106;\n" -" .loc 16 113 0\n" -" mov.f32 %f107, %f31;\n" -" st.shared.f32 [%rd36+512], %f107;\n" -" .loc 16 114 0\n" -" mov.f32 %f108, %f30;\n" -" st.shared.f32 [%rd36+1024], %f108;\n" -" .loc 16 115 0\n" -" mov.f32 %f109, %f33;\n" -" st.shared.f32 [%rd36+1536], %f109;\n" -" .loc 16 117 0\n" -" shr.s32 %r61, %r1, 31;\n" -" mov.s32 %r62, 1;\n" -" and.b32 %r63, %r61, %r62;\n" -" add.s32 %r64, %r63, %r1;\n" -" shr.s32 %r65, %r64, 1;\n" -" mov.s32 %r66, %r65;\n" -" mov.u32 %r67, 0;\n" -" setp.ne.u32 %p9, %r65, %r67;\n" -" @!%p9 bra $Lt_0_22274;\n" -"$Lt_0_22786:\n" -" setp.ge.u32 %p10, %r14, %r66;\n" -" @%p10 bra $Lt_0_23042;\n" -" .loc 16 120 0\n" -" add.u32 %r68, %r2, %r66;\n" -" cvt.u64.u32 %rd37, %r68;\n" -" mul.wide.u32 %rd38, %r68, 4;\n" -" add.u64 %rd39, %rd33, %rd38;\n" -" ld.shared.f32 %f110, [%rd39+0];\n" -" add.ftz.f32 %f106, %f110, %f106;\n" -" st.shared.f32 [%rd36+0], %f106;\n" -" ld.shared.f32 %f111, [%rd39+512];\n" -" add.ftz.f32 %f107, %f111, %f107;\n" -" st.shared.f32 [%rd36+512], %f107;\n" -" ld.shared.f32 %f112, [%rd39+1024];\n" -" add.ftz.f32 %f108, %f112, %f108;\n" -" st.shared.f32 [%rd36+1024], %f108;\n" -" ld.shared.f32 %f113, [%rd39+1536];\n" -" add.ftz.f32 %f109, %f113, %f109;\n" -" st.shared.f32 [%rd36+1536], %f109;\n" -"$Lt_0_23042:\n" -" .loc 16 117 0\n" -" shr.u32 %r66, %r66, 1;\n" -" mov.u32 %r69, 0;\n" -" setp.ne.u32 %p11, %r66, %r69;\n" -" @%p11 bra $Lt_0_22786;\n" -"$Lt_0_22274:\n" -" .loc 16 124 0\n" -" mov.f32 %f32, %f106;\n" -" .loc 16 125 0\n" -" mov.f32 %f31, %f107;\n" -" .loc 16 126 0\n" -" mov.f32 %f30, %f108;\n" -" .loc 16 127 0\n" -" mov.f32 %f33, %f109;\n" -" ld.param.s32 %r70, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r71, 0;\n" -" setp.le.s32 %p12, %r70, %r71;\n" -" @%p12 bra $Lt_0_23810;\n" -" .loc 16 131 0\n" -" mov.f32 %f106, %f6;\n" -" st.shared.f32 [%rd36+0], %f106;\n" -" mov.f32 %f107, %f8;\n" -" st.shared.f32 [%rd36+512], %f107;\n" -" mov.f32 %f108, %f10;\n" -" st.shared.f32 [%rd36+1024], %f108;\n" -" mov.f32 %f109, %f12;\n" -" st.shared.f32 [%rd36+1536], %f109;\n" -" mov.f32 %f114, %f14;\n" -" st.shared.f32 [%rd36+2048], %f114;\n" -" mov.f32 %f115, %f15;\n" -" st.shared.f32 [%rd36+2560], %f115;\n" -" .loc 16 133 0\n" -" mov.s32 %r72, %r65;\n" -" @!%p9 bra $Lt_0_24322;\n" -"$Lt_0_24834:\n" -" setp.ge.u32 %p13, %r14, %r72;\n" -" @%p13 bra $Lt_0_25090;\n" -" .loc 16 136 0\n" -" add.u32 %r73, %r2, %r72;\n" -" cvt.u64.u32 %rd40, %r73;\n" -" mul.wide.u32 %rd41, %r73, 4;\n" -" add.u64 %rd42, %rd33, %rd41;\n" -" ld.shared.f32 %f116, [%rd42+0];\n" -" add.ftz.f32 %f106, %f116, %f106;\n" -" st.shared.f32 [%rd36+0], %f106;\n" -" ld.shared.f32 %f117, [%rd42+512];\n" -" add.ftz.f32 %f107, %f117, %f107;\n" -" st.shared.f32 [%rd36+512], %f107;\n" -" ld.shared.f32 %f118, [%rd42+1024];\n" -" add.ftz.f32 %f108, %f118, %f108;\n" -" st.shared.f32 [%rd36+1024], %f108;\n" -" ld.shared.f32 %f119, [%rd42+1536];\n" -" add.ftz.f32 %f109, %f119, %f109;\n" -" st.shared.f32 [%rd36+1536], %f109;\n" -" ld.shared.f32 %f120, [%rd42+2048];\n" -" add.ftz.f32 %f114, %f120, %f114;\n" -" st.shared.f32 [%rd36+2048], %f114;\n" -" ld.shared.f32 %f121, [%rd42+2560];\n" -" add.ftz.f32 %f115, %f121, %f115;\n" -" st.shared.f32 [%rd36+2560], %f115;\n" -"$Lt_0_25090:\n" -" .loc 16 133 0\n" -" shr.u32 %r72, %r72, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p14, %r72, %r74;\n" -" @%p14 bra $Lt_0_24834;\n" -"$Lt_0_24322:\n" -" .loc 16 141 0\n" -" mov.f32 %f6, %f106;\n" -" mov.f32 %f8, %f107;\n" -" mov.f32 %f10, %f108;\n" -" mov.f32 %f12, %f109;\n" -" mov.f32 %f14, %f114;\n" -" mov.f32 %f16, %f115;\n" -"$Lt_0_23810:\n" -"$Lt_0_21762:\n" -" mov.u32 %r75, 0;\n" -" setp.ne.s32 %p15, %r14, %r75;\n" -" @%p15 bra $Lt_0_25858;\n" -" .loc 16 147 0\n" -" ld.param.u64 %rd43, [__cudaparm_kernel_pair_engv];\n" -" add.u64 %rd44, %rd43, %rd3;\n" -" ld.param.s32 %r76, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r77, 0;\n" -" setp.le.s32 %p16, %r76, %r77;\n" -" @%p16 bra $Lt_0_26370;\n" -" .loc 16 149 0\n" -" mov.f32 %f122, 0f00000000; \n" -" st.global.f32 [%rd44+0], %f122;\n" -" .loc 16 150 0\n" -" cvt.s64.s32 %rd45, %r9;\n" -" mul.wide.s32 %rd46, %r9, 4;\n" -" add.u64 %rd47, %rd46, %rd44;\n" -" .loc 16 151 0\n" -" st.global.f32 [%rd47+0], %f33;\n" -" .loc 16 152 0\n" -" add.u64 %rd44, %rd46, %rd47;\n" -"$Lt_0_26370:\n" -" ld.param.s32 %r78, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r79, 0;\n" -" setp.le.s32 %p17, %r78, %r79;\n" -" @%p17 bra $Lt_0_26882;\n" -" .loc 16 156 0\n" -" mov.f32 %f123, %f6;\n" -" st.global.f32 [%rd44+0], %f123;\n" -" .loc 16 157 0\n" -" cvt.s64.s32 %rd48, %r9;\n" -" mul.wide.s32 %rd49, %r9, 4;\n" -" add.u64 %rd50, %rd49, %rd44;\n" -" .loc 16 156 0\n" -" mov.f32 %f124, %f8;\n" -" st.global.f32 [%rd50+0], %f124;\n" -" .loc 16 157 0\n" -" add.u64 %rd51, %rd49, %rd50;\n" -" .loc 16 156 0\n" -" mov.f32 %f125, %f10;\n" -" st.global.f32 [%rd51+0], %f125;\n" -" .loc 16 157 0\n" -" add.u64 %rd52, %rd49, %rd51;\n" -" .loc 16 156 0\n" -" mov.f32 %f126, %f12;\n" -" st.global.f32 [%rd52+0], %f126;\n" -" .loc 16 157 0\n" -" add.u64 %rd44, %rd49, %rd52;\n" -" .loc 16 156 0\n" -" mov.f32 %f127, %f14;\n" -" st.global.f32 [%rd44+0], %f127;\n" -" mov.f32 %f128, %f16;\n" -" add.u64 %rd53, %rd49, %rd44;\n" -" st.global.f32 [%rd53+0], %f128;\n" -"$Lt_0_26882:\n" -" .loc 16 160 0\n" -" ld.param.u64 %rd54, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd55, %rd2, 16;\n" -" add.u64 %rd56, %rd54, %rd55;\n" -" mov.f32 %f129, %f130;\n" -" st.global.v4.f32 [%rd56+0], {%f32,%f31,%f30,%f129};\n" -"$Lt_0_25858:\n" -"$Lt_0_18690:\n" -" .loc 16 163 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_cl_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast_engv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_fast_q_,\n" -" .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_fast_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<82>;\n" -" .reg .u64 %rd<62>;\n" -" .reg .f32 %f<129>;\n" -" .reg .pred %p<20>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32678_33_non_const_sp_cl3304[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32748_37_non_const_red_acc3320[3072];\n" -" .loc 16 173 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_19458;\n" -" .loc 16 179 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32678_33_non_const_sp_cl3304;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_cl_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_19458:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32678_33_non_const_sp_cl3304;\n" -" .loc 16 186 0\n" -" mov.f32 %f2, 0f00000000; \n" -" mov.f32 %f3, %f2;\n" -" mov.f32 %f4, 0f00000000; \n" -" mov.f32 %f5, %f4;\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" -" .loc 16 188 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r3, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r4, %r1, %r3;\n" -" cvt.s32.u32 %r5, %ntid.x;\n" -" div.s32 %r6, %r5, %r3;\n" -" cvt.s32.u32 %r7, %ctaid.x;\n" -" mul.lo.s32 %r8, %r7, %r6;\n" -" add.s32 %r9, %r4, %r8;\n" -" ld.param.s32 %r10, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p2, %r9, %r10;\n" -" @%p2 bra $Lt_1_27138;\n" -" .loc 16 193 0\n" -" cvt.s64.s32 %rd7, %r9;\n" -" mul.wide.s32 %rd8, %r9, 4;\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd10, %rd8, %rd9;\n" -" ld.global.s32 %r11, [%rd10+0];\n" -" ld.param.s32 %r12, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd11, %r12;\n" -" mul.wide.s32 %rd12, %r12, 4;\n" -" add.u64 %rd13, %rd12, %rd10;\n" -" ld.global.s32 %r13, [%rd13+0];\n" -" sub.s32 %r14, %r3, 1;\n" -" and.b32 %r15, %r14, %r1;\n" -" cvt.s64.s32 %rd14, %r15;\n" -" mul.wide.s32 %rd15, %r15, 4;\n" -" ld.param.u64 %rd16, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p3, %rd16, %rd9;\n" -" @%p3 bra $Lt_1_20738;\n" -" cvt.s32.s64 %r16, %rd11;\n" -" mul.lo.s32 %r17, %r16, %r3;\n" -" mov.s32 %r18, %r17;\n" -" mul.lo.s32 %r19, %r14, %r9;\n" -" add.s32 %r20, %r16, %r19;\n" -" cvt.s64.s32 %rd17, %r20;\n" -" mul.wide.s32 %rd18, %r20, 4;\n" -" add.u64 %rd19, %rd13, %rd18;\n" -" and.b32 %r21, %r14, %r13;\n" -" cvt.s64.s32 %rd20, %r21;\n" -" div.s32 %r22, %r13, %r3;\n" -" mul.lo.s32 %r23, %r17, %r22;\n" -" cvt.s64.s32 %rd21, %r23;\n" -" add.u64 %rd22, %rd20, %rd21;\n" -" mul.lo.u64 %rd23, %rd22, 4;\n" -" add.u64 %rd24, %rd19, %rd23;\n" -" add.u64 %rd25, %rd15, %rd19;\n" -" bra.uni $Lt_1_20482;\n" -"$Lt_1_20738:\n" -" add.u64 %rd26, %rd12, %rd13;\n" -" ld.global.s32 %r24, [%rd26+0];\n" -" cvt.s64.s32 %rd27, %r24;\n" -" mul.wide.s32 %rd28, %r24, 4;\n" -" add.u64 %rd29, %rd16, %rd28;\n" -" cvt.s64.s32 %rd30, %r13;\n" -" mul.wide.s32 %rd31, %r13, 4;\n" -" add.u64 %rd24, %rd29, %rd31;\n" -" mov.s32 %r18, %r3;\n" -" add.u64 %rd25, %rd15, %rd29;\n" -"$Lt_1_20482:\n" -" .loc 16 196 0\n" -" mov.u32 %r25, %r11;\n" -" mov.s32 %r26, 0;\n" -" mov.u32 %r27, %r26;\n" -" mov.s32 %r28, 0;\n" -" mov.u32 %r29, %r28;\n" -" mov.s32 %r30, 0;\n" -" mov.u32 %r31, %r30;\n" -" tex.1d.v4.f32.s32 {%f14,%f15,%f16,%f17},[pos_tex,{%r25,%r27,%r29,%r31}];\n" -" mov.f32 %f18, %f14;\n" -" mov.f32 %f19, %f15;\n" -" mov.f32 %f20, %f16;\n" -" .loc 16 197 0\n" -" mov.u32 %r32, %r11;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" mov.s32 %r35, 0;\n" -" mov.u32 %r36, %r35;\n" -" mov.s32 %r37, 0;\n" -" mov.u32 %r38, %r37;\n" -" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[q_tex,{%r32,%r34,%r36,%r38}];\n" -" mov.f32 %f25, %f21;\n" -" setp.ge.u64 %p4, %rd25, %rd24;\n" -" @%p4 bra $Lt_1_28674;\n" -" cvt.s64.s32 %rd32, %r18;\n" -" ld.param.f32 %f26, [__cudaparm_kernel_pair_fast_cut_coulsq];\n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -"$Lt_1_21506:\n" -" .loc 16 200 0\n" -" ld.global.s32 %r39, [%rd25+0];\n" -" .loc 16 203 0\n" -" mov.f32 %f31, 0f3f800000; \n" -" shr.s32 %r40, %r39, 30;\n" -" and.b32 %r41, %r40, 3;\n" -" cvt.s64.s32 %rd33, %r41;\n" -" mul.wide.s32 %rd34, %r41, 4;\n" -" add.u64 %rd35, %rd1, %rd34;\n" -" ld.shared.f32 %f32, [%rd35+0];\n" -" sub.ftz.f32 %f33, %f31, %f32;\n" -" .loc 16 206 0\n" -" and.b32 %r42, %r39, 1073741823;\n" -" mov.u32 %r43, %r42;\n" -" mov.s32 %r44, 0;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" mov.s32 %r48, 0;\n" -" mov.u32 %r49, %r48;\n" -" tex.1d.v4.f32.s32 {%f34,%f35,%f36,%f37},[pos_tex,{%r43,%r45,%r47,%r49}];\n" -" mov.f32 %f38, %f34;\n" -" mov.f32 %f39, %f35;\n" -" mov.f32 %f40, %f36;\n" -" sub.ftz.f32 %f41, %f19, %f39;\n" -" sub.ftz.f32 %f42, %f18, %f38;\n" -" sub.ftz.f32 %f43, %f20, %f40;\n" -" mul.ftz.f32 %f44, %f41, %f41;\n" -" fma.rn.ftz.f32 %f45, %f42, %f42, %f44;\n" -" fma.rn.ftz.f32 %f46, %f43, %f43, %f45;\n" -" setp.lt.ftz.f32 %p5, %f46, %f26;\n" -" @!%p5 bra $Lt_1_22274;\n" -" .loc 20 518 0\n" -" rcp.approx.ftz.f32 %f47, %f46;\n" -" rsqrt.approx.ftz.f32 %f48, %f47;\n" -" ld.param.f32 %f49, [__cudaparm_kernel_pair_fast_g_ewald];\n" -" mul.ftz.f32 %f50, %f49, %f48;\n" -" mul.ftz.f32 %f51, %f50, %f50;\n" -" neg.ftz.f32 %f52, %f51;\n" -" mov.f32 %f53, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f54, %f52, %f53;\n" -" ex2.approx.ftz.f32 %f55, %f54;\n" -" .loc 16 222 0\n" -" mov.f32 %f56, 0f3f800000; \n" -" mov.f32 %f57, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f58, %f57, %f50, %f56;\n" -" rcp.approx.ftz.f32 %f59, %f58;\n" -" mov.f32 %f60, 0f3e827906; \n" -" mov.f32 %f61, 0fbe91a98e; \n" -" mov.f32 %f62, 0f3fb5f0e3; \n" -" mov.f32 %f63, 0fbfba00e3; \n" -" mov.f32 %f64, 0f3f87dc22; \n" -" fma.rn.ftz.f32 %f65, %f64, %f59, %f63;\n" -" fma.rn.ftz.f32 %f66, %f59, %f65, %f62;\n" -" fma.rn.ftz.f32 %f67, %f59, %f66, %f61;\n" -" fma.rn.ftz.f32 %f68, %f59, %f67, %f60;\n" -" mul.ftz.f32 %f69, %f59, %f68;\n" -" mul.ftz.f32 %f70, %f55, %f69;\n" -" .loc 16 223 0\n" -" mov.u32 %r50, %r42;\n" -" mov.s32 %r51, 0;\n" -" mov.u32 %r52, %r51;\n" -" mov.s32 %r53, 0;\n" -" mov.u32 %r54, %r53;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" tex.1d.v4.f32.s32 {%f71,%f72,%f73,%f74},[q_tex,{%r50,%r52,%r54,%r56}];\n" -" mov.f32 %f75, %f71;\n" -" .loc 16 224 0\n" -" ld.param.f32 %f76, [__cudaparm_kernel_pair_fast_qqrd2e];\n" -" mul.ftz.f32 %f77, %f76, %f25;\n" -" mul.ftz.f32 %f78, %f77, %f75;\n" -" div.approx.ftz.f32 %f79, %f78, %f48;\n" -" mov.f32 %f80, 0f3f906ebb; \n" -" mul.ftz.f32 %f81, %f50, %f80;\n" -" fma.rn.ftz.f32 %f82, %f55, %f81, %f70;\n" -" sub.ftz.f32 %f83, %f82, %f33;\n" -" mul.ftz.f32 %f84, %f79, %f83;\n" -" mul.ftz.f32 %f85, %f47, %f84;\n" -" .loc 16 226 0\n" -" fma.rn.ftz.f32 %f29, %f42, %f85, %f29;\n" -" .loc 16 227 0\n" -" fma.rn.ftz.f32 %f28, %f41, %f85, %f28;\n" -" .loc 16 228 0\n" -" fma.rn.ftz.f32 %f27, %f43, %f85, %f27;\n" -" .loc 16 215 0\n" -" sub.ftz.f32 %f86, %f70, %f33;\n" -" fma.rn.ftz.f32 %f87, %f79, %f86, %f30;\n" -" ld.param.s32 %r57, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.s32 %r58, 0;\n" -" setp.gt.s32 %p6, %r57, %r58;\n" -" selp.f32 %f30, %f87, %f30, %p6;\n" -" ld.param.s32 %r59, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r60, 0;\n" -" setp.le.s32 %p7, %r59, %r60;\n" -" @%p7 bra $Lt_1_22274;\n" -" .loc 16 234 0\n" -" mov.f32 %f88, %f3;\n" -" mul.ftz.f32 %f89, %f42, %f42;\n" -" fma.rn.ftz.f32 %f90, %f85, %f89, %f88;\n" -" mov.f32 %f3, %f90;\n" -" .loc 16 235 0\n" -" mov.f32 %f91, %f5;\n" -" fma.rn.ftz.f32 %f92, %f85, %f44, %f91;\n" -" mov.f32 %f5, %f92;\n" -" .loc 16 236 0\n" -" mov.f32 %f93, %f7;\n" -" mul.ftz.f32 %f94, %f43, %f43;\n" -" fma.rn.ftz.f32 %f95, %f85, %f94, %f93;\n" -" mov.f32 %f7, %f95;\n" -" .loc 16 237 0\n" -" mov.f32 %f96, %f9;\n" -" mul.ftz.f32 %f97, %f41, %f42;\n" -" fma.rn.ftz.f32 %f98, %f85, %f97, %f96;\n" -" mov.f32 %f9, %f98;\n" -" .loc 16 238 0\n" -" mov.f32 %f99, %f11;\n" -" mul.ftz.f32 %f100, %f42, %f43;\n" -" fma.rn.ftz.f32 %f101, %f85, %f100, %f99;\n" -" mov.f32 %f11, %f101;\n" -" .loc 16 239 0\n" -" mul.ftz.f32 %f102, %f41, %f43;\n" -" fma.rn.ftz.f32 %f12, %f85, %f102, %f12;\n" -" mov.f32 %f13, %f12;\n" -"$Lt_1_22274:\n" -"$Lt_1_21762:\n" -" .loc 16 199 0\n" -" mul.lo.u64 %rd36, %rd32, 4;\n" -" add.u64 %rd25, %rd25, %rd36;\n" -" setp.lt.u64 %p8, %rd25, %rd24;\n" -" @%p8 bra $Lt_1_21506;\n" -" bra.uni $Lt_1_20994;\n" -"$Lt_1_28674:\n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -"$Lt_1_20994:\n" -" mov.u32 %r61, 1;\n" -" setp.le.s32 %p9, %r3, %r61;\n" -" @%p9 bra $Lt_1_25090;\n" -" .loc 16 249 0\n" -" mov.u64 %rd37, __cuda___cuda_local_var_32748_37_non_const_red_acc3320;\n" -" cvt.s64.s32 %rd38, %r1;\n" -" mul.wide.s32 %rd39, %r1, 4;\n" -" add.u64 %rd40, %rd37, %rd39;\n" -" mov.f32 %f103, %f29;\n" -" st.shared.f32 [%rd40+0], %f103;\n" -" .loc 16 250 0\n" -" mov.f32 %f104, %f28;\n" -" st.shared.f32 [%rd40+512], %f104;\n" -" .loc 16 251 0\n" -" mov.f32 %f105, %f27;\n" -" st.shared.f32 [%rd40+1024], %f105;\n" -" .loc 16 252 0\n" -" mov.f32 %f106, %f30;\n" -" st.shared.f32 [%rd40+1536], %f106;\n" -" .loc 16 254 0\n" -" shr.s32 %r62, %r3, 31;\n" -" mov.s32 %r63, 1;\n" -" and.b32 %r64, %r62, %r63;\n" -" add.s32 %r65, %r64, %r3;\n" -" shr.s32 %r66, %r65, 1;\n" -" mov.s32 %r67, %r66;\n" -" mov.u32 %r68, 0;\n" -" setp.ne.u32 %p10, %r66, %r68;\n" -" @!%p10 bra $Lt_1_23554;\n" -"$Lt_1_24066:\n" -" setp.ge.u32 %p11, %r15, %r67;\n" -" @%p11 bra $Lt_1_24322;\n" -" .loc 16 257 0\n" -" add.u32 %r69, %r1, %r67;\n" -" cvt.u64.u32 %rd41, %r69;\n" -" mul.wide.u32 %rd42, %r69, 4;\n" -" add.u64 %rd43, %rd37, %rd42;\n" -" ld.shared.f32 %f107, [%rd43+0];\n" -" add.ftz.f32 %f103, %f107, %f103;\n" -" st.shared.f32 [%rd40+0], %f103;\n" -" ld.shared.f32 %f108, [%rd43+512];\n" -" add.ftz.f32 %f104, %f108, %f104;\n" -" st.shared.f32 [%rd40+512], %f104;\n" -" ld.shared.f32 %f109, [%rd43+1024];\n" -" add.ftz.f32 %f105, %f109, %f105;\n" -" st.shared.f32 [%rd40+1024], %f105;\n" -" ld.shared.f32 %f110, [%rd43+1536];\n" -" add.ftz.f32 %f106, %f110, %f106;\n" -" st.shared.f32 [%rd40+1536], %f106;\n" -"$Lt_1_24322:\n" -" .loc 16 254 0\n" -" shr.u32 %r67, %r67, 1;\n" -" mov.u32 %r70, 0;\n" -" setp.ne.u32 %p12, %r67, %r70;\n" -" @%p12 bra $Lt_1_24066;\n" -"$Lt_1_23554:\n" -" .loc 16 261 0\n" -" mov.f32 %f29, %f103;\n" -" .loc 16 262 0\n" -" mov.f32 %f28, %f104;\n" -" .loc 16 263 0\n" -" mov.f32 %f27, %f105;\n" -" .loc 16 264 0\n" -" mov.f32 %f30, %f106;\n" -" ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r72, 0;\n" -" setp.le.s32 %p13, %r71, %r72;\n" -" @%p13 bra $Lt_1_25090;\n" -" .loc 16 268 0\n" -" mov.f32 %f103, %f3;\n" -" st.shared.f32 [%rd40+0], %f103;\n" -" mov.f32 %f104, %f5;\n" -" st.shared.f32 [%rd40+512], %f104;\n" -" mov.f32 %f105, %f7;\n" -" st.shared.f32 [%rd40+1024], %f105;\n" -" mov.f32 %f106, %f9;\n" -" st.shared.f32 [%rd40+1536], %f106;\n" -" mov.f32 %f111, %f11;\n" -" st.shared.f32 [%rd40+2048], %f111;\n" -" mov.f32 %f112, %f12;\n" -" st.shared.f32 [%rd40+2560], %f112;\n" -" .loc 16 270 0\n" -" mov.s32 %r73, %r66;\n" -" @!%p10 bra $Lt_1_25602;\n" -"$Lt_1_26114:\n" -" setp.ge.u32 %p14, %r15, %r73;\n" -" @%p14 bra $Lt_1_26370;\n" -" .loc 16 273 0\n" -" add.u32 %r74, %r1, %r73;\n" -" cvt.u64.u32 %rd44, %r74;\n" -" mul.wide.u32 %rd45, %r74, 4;\n" -" add.u64 %rd46, %rd37, %rd45;\n" -" ld.shared.f32 %f113, [%rd46+0];\n" -" add.ftz.f32 %f103, %f113, %f103;\n" -" st.shared.f32 [%rd40+0], %f103;\n" -" ld.shared.f32 %f114, [%rd46+512];\n" -" add.ftz.f32 %f104, %f114, %f104;\n" -" st.shared.f32 [%rd40+512], %f104;\n" -" ld.shared.f32 %f115, [%rd46+1024];\n" -" add.ftz.f32 %f105, %f115, %f105;\n" -" st.shared.f32 [%rd40+1024], %f105;\n" -" ld.shared.f32 %f116, [%rd46+1536];\n" -" add.ftz.f32 %f106, %f116, %f106;\n" -" st.shared.f32 [%rd40+1536], %f106;\n" -" ld.shared.f32 %f117, [%rd46+2048];\n" -" add.ftz.f32 %f111, %f117, %f111;\n" -" st.shared.f32 [%rd40+2048], %f111;\n" -" ld.shared.f32 %f118, [%rd46+2560];\n" -" add.ftz.f32 %f112, %f118, %f112;\n" -" st.shared.f32 [%rd40+2560], %f112;\n" -"$Lt_1_26370:\n" -" .loc 16 270 0\n" -" shr.u32 %r73, %r73, 1;\n" -" mov.u32 %r75, 0;\n" -" setp.ne.u32 %p15, %r73, %r75;\n" -" @%p15 bra $Lt_1_26114;\n" -"$Lt_1_25602:\n" -" .loc 16 278 0\n" -" mov.f32 %f3, %f103;\n" -" mov.f32 %f5, %f104;\n" -" mov.f32 %f7, %f105;\n" -" mov.f32 %f9, %f106;\n" -" mov.f32 %f11, %f111;\n" -" mov.f32 %f13, %f112;\n" -"$Lt_1_25090:\n" -"$Lt_1_23042:\n" -" mov.u32 %r76, 0;\n" -" setp.ne.s32 %p16, %r15, %r76;\n" -" @%p16 bra $Lt_1_27138;\n" -" .loc 16 284 0\n" -" ld.param.u64 %rd47, [__cudaparm_kernel_pair_fast_engv];\n" -" add.u64 %rd48, %rd47, %rd8;\n" -" ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r78, 0;\n" -" setp.le.s32 %p17, %r77, %r78;\n" -" @%p17 bra $Lt_1_27650;\n" -" .loc 16 286 0\n" -" mov.f32 %f119, 0f00000000; \n" -" st.global.f32 [%rd48+0], %f119;\n" -" .loc 16 287 0\n" -" cvt.s64.s32 %rd49, %r10;\n" -" mul.wide.s32 %rd50, %r10, 4;\n" -" add.u64 %rd51, %rd50, %rd48;\n" -" .loc 16 288 0\n" -" st.global.f32 [%rd51+0], %f30;\n" -" .loc 16 289 0\n" -" add.u64 %rd48, %rd50, %rd51;\n" -"$Lt_1_27650:\n" -" ld.param.s32 %r79, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r80, 0;\n" -" setp.le.s32 %p18, %r79, %r80;\n" -" @%p18 bra $Lt_1_28162;\n" -" .loc 16 293 0\n" -" mov.f32 %f120, %f3;\n" -" st.global.f32 [%rd48+0], %f120;\n" -" .loc 16 294 0\n" -" cvt.s64.s32 %rd52, %r10;\n" -" mul.wide.s32 %rd53, %r10, 4;\n" -" add.u64 %rd54, %rd53, %rd48;\n" -" .loc 16 293 0\n" -" mov.f32 %f121, %f5;\n" -" st.global.f32 [%rd54+0], %f121;\n" -" .loc 16 294 0\n" -" add.u64 %rd55, %rd53, %rd54;\n" -" .loc 16 293 0\n" -" mov.f32 %f122, %f7;\n" -" st.global.f32 [%rd55+0], %f122;\n" -" .loc 16 294 0\n" -" add.u64 %rd56, %rd53, %rd55;\n" -" .loc 16 293 0\n" -" mov.f32 %f123, %f9;\n" -" st.global.f32 [%rd56+0], %f123;\n" -" .loc 16 294 0\n" -" add.u64 %rd48, %rd53, %rd56;\n" -" .loc 16 293 0\n" -" mov.f32 %f124, %f11;\n" -" st.global.f32 [%rd48+0], %f124;\n" -" mov.f32 %f125, %f13;\n" -" add.u64 %rd57, %rd53, %rd48;\n" -" st.global.f32 [%rd57+0], %f125;\n" -"$Lt_1_28162:\n" -" .loc 16 297 0\n" -" ld.param.u64 %rd58, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd59, %rd7, 16;\n" -" add.u64 %rd60, %rd58, %rd59;\n" -" mov.f32 %f126, %f127;\n" -" st.global.v4.f32 [%rd60+0], {%f29,%f28,%f27,%f126};\n" -"$Lt_1_27138:\n" -"$Lt_1_19970:\n" -" .loc 16 300 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/cudpp.o b/lib/gpu/cudpp.o deleted file mode 100644 index dfce9b08ac4579d223b0150fe955b88dc9673117..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1904 zcmb`H&rcIU6vwAOfT9Q$L(&8i_poX)vS|sR;b1T=u$UGb3?>?qGPDbA=#NczHO0hm zsFF;8#H0U&cfFB7j0Zh>)_B6i7>pMVB>3L$46MU?F}`GW-uuj(_kDfcc6~B46$}K3 zumHJDP9s4HIrP8@2TzbL(n)l-pnlO=McvoguM8`y2N?(s_15=zmhI{6(;fD4AMH*h7sTktjYmElA( znHWxvDDgR?sOZ#o`Ow%PHWI@JSm0@Hjs%*~_7Fz>T^*5^0R=oDxgw6IDvC*3IJmm9Qdpw#~`1&ZKs+ofU?Jbowfs1)}@ z9F`b{?|H#Res&Ia)WMmdiMd||AGtGjJm3~V=wq_h4amWo|9U?OcTp+<%WFb^$P2+2 zZHax{!@Q}ZBEbuNa_?~#l=5!z`->76^Aq?kIPy&JEZ*T}=5fuXjn-wDi5U+3@7GdTB}tnWSZ`j{6cKaagk_@R?; zQ4n_z`F4W+`Arx(Z}QJF!1?gc@HUAMf^+Hh^yB=`0PBM#|JLyG^}ld@5B%~eaI9~_ zj^_MF!M+O1FP{`17fn+un5OI9uQzOx&#yF_dDCcE^%|{|?X~=q1j#>|O^&7J)45!( zLTg!Cqbo+^=ComBI9YYC&(UJJi8az?%cORp#H$u)?bJItgPyLyLc@0o-`S&M*HQ?< pkmJk*-$n=~=f8Hb!!Lj@@_RYQ+W77XQ@Mk6a0wH?AHl^Oe*+(U-?sn& diff --git a/lib/gpu/cudpp_maximal_launch.o b/lib/gpu/cudpp_maximal_launch.o deleted file mode 100644 index 17e0b892a695b8a1414ff194751a58b74d888280..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2176 zcmbtVU1$_n6uz??lU38qDt!tfr7Y>OM&D$tO)wN>ia5@Mk<{ev;X7^U@x;_nz~e z?|$db*?W^Ok7^?!K_H$90<#VFE?sP3Olv>LQJ~P;6?q4&TJ5qd+3OX#-(IiEG0e~Wj-qhX z1gTxMgU38s|K<(NJJD=Rtc zl;@SqtgbM#!iX}dGo2_CLM~_K0m~PdslW#fl$mavA&N~mr_!fNdd_sj|Nkt3 z1oW762c!~id;^m{i~4+Ycfo*n@|rF6IM8QqW(%w+h1VO+>;GHeBW|}J6Q04v=w!iK z?*Iuk|LguZ?8W*q7;Wa(A7}#|E<#>g4*7gPbzp<@d;2`@NACV09p4Aql(VeOUjIDc z18{;p!Q4TYNL?cKAAb^Wzt{h5fW6i`z`k?qp9J4;!SiDrJUjANH#xh;+zt2|uy(Ni zX23etr|$jv+L2kCgZ0-E0S9?qWW@@=b{Jm!_1d%HjwiwMb?PwU!B^wxh3!taYhx59 zZc}`zo#1cxoyY!r1DFgW_||aS5Dc5|Hp2e<1K2Sbo%rJ$;A{h&7}Jx*VmhZ+GC4h) z&g#>7V@ffKMFP9eu*^hl|Y8!Ke;%q*dpK5DY0 zc{XF1?a^4N017N)mTi0l>Hu??u~KGYngQzAd+vAQ9m6~H9RI<9)qHrb5C74Jzv07w g@!@y}J)P~~qv89&yXYDA9}VmJ?|0HheYmUp3YCaK^8f$< diff --git a/lib/gpu/cudpp_plan.o b/lib/gpu/cudpp_plan.o deleted file mode 100644 index 219bfcc181bb6f39fb8cd932a574b835dbe61c14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9800 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 diff --git a/lib/gpu/device.ptx b/lib/gpu/device.ptx deleted file mode 100644 index c21e0acd2f..0000000000 --- a/lib/gpu/device.ptx +++ /dev/null @@ -1,134 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009a81_00000000-9_lal_device.cpp3.i (/home/sjplimp/ccBI#.zwVkZj) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009a81_00000000-8_lal_device.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_device.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_zero ( - .param .u64 __cudaparm_kernel_zero_mem, - .param .s32 __cudaparm_kernel_zero_numel) - { - .reg .u32 %r<9>; - .reg .u64 %rd<6>; - .reg .pred %p<3>; - .loc 16 20 0 -$LDWbegin_kernel_zero: - cvt.s32.u32 %r1, %ctaid.x; - cvt.s32.u32 %r2, %ntid.x; - mul24.lo.s32 %r3, %r1, %r2; - mov.u32 %r4, %tid.x; - add.u32 %r5, %r3, %r4; - ld.param.s32 %r6, [__cudaparm_kernel_zero_numel]; - setp.le.s32 %p1, %r6, %r5; - @%p1 bra $Lt_0_1026; - .loc 16 24 0 - mov.s32 %r7, 0; - ld.param.u64 %rd1, [__cudaparm_kernel_zero_mem]; - cvt.s64.s32 %rd2, %r5; - mul.wide.s32 %rd3, %r5, 4; - add.u64 %rd4, %rd1, %rd3; - st.global.s32 [%rd4+0], %r7; -$Lt_0_1026: - .loc 16 25 0 - exit; -$LDWend_kernel_zero: - } // kernel_zero - - .entry kernel_info ( - .param .u64 __cudaparm_kernel_info_info) - { - .reg .u32 %r<16>; - .reg .u64 %rd<3>; - .loc 16 27 0 -$LDWbegin_kernel_info: - .loc 16 28 0 - ld.param.u64 %rd1, [__cudaparm_kernel_info_info]; - mov.s32 %r1, 200; - st.global.s32 [%rd1+0], %r1; - .loc 16 29 0 - mov.s32 %r2, 32; - st.global.s32 [%rd1+4], %r2; - .loc 16 30 0 - mov.s32 %r3, 32; - st.global.s32 [%rd1+8], %r3; - .loc 16 31 0 - mov.s32 %r4, 4; - st.global.s32 [%rd1+12], %r4; - .loc 16 32 0 - mov.s32 %r5, 8; - st.global.s32 [%rd1+16], %r5; - .loc 16 33 0 - mov.s32 %r6, 64; - st.global.s32 [%rd1+20], %r6; - .loc 16 34 0 - mov.s32 %r7, 128; - st.global.s32 [%rd1+24], %r7; - .loc 16 35 0 - mov.s32 %r8, 11; - st.global.s32 [%rd1+28], %r8; - .loc 16 36 0 - mov.s32 %r9, 8; - st.global.s32 [%rd1+32], %r9; - .loc 16 37 0 - mov.s32 %r10, 128; - st.global.s32 [%rd1+36], %r10; - .loc 16 38 0 - mov.s32 %r11, 128; - st.global.s32 [%rd1+40], %r11; - .loc 16 39 0 - mov.s32 %r12, 128; - st.global.s32 [%rd1+44], %r12; - .loc 16 40 0 - mov.s32 %r13, 128; - st.global.s32 [%rd1+48], %r13; - .loc 16 41 0 - mov.s32 %r14, 8; - st.global.s32 [%rd1+52], %r14; - .loc 16 42 0 - exit; -$LDWend_kernel_info: - } // kernel_info - diff --git a/lib/gpu/device_ptx.h b/lib/gpu/device_ptx.h deleted file mode 100644 index 5df5c329a3..0000000000 --- a/lib/gpu/device_ptx.h +++ /dev/null @@ -1,88 +0,0 @@ -const char * device = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .entry kernel_zero (\n" -" .param .u64 __cudaparm_kernel_zero_mem,\n" -" .param .s32 __cudaparm_kernel_zero_numel)\n" -" {\n" -" .reg .u32 %r<9>;\n" -" .reg .u64 %rd<6>;\n" -" .reg .pred %p<3>;\n" -" .loc 16 20 0\n" -"$LDWbegin_kernel_zero:\n" -" cvt.s32.u32 %r1, %ctaid.x;\n" -" cvt.s32.u32 %r2, %ntid.x;\n" -" mul24.lo.s32 %r3, %r1, %r2;\n" -" mov.u32 %r4, %tid.x;\n" -" add.u32 %r5, %r3, %r4;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_zero_numel];\n" -" setp.le.s32 %p1, %r6, %r5;\n" -" @%p1 bra $Lt_0_1026;\n" -" .loc 16 24 0\n" -" mov.s32 %r7, 0;\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_zero_mem];\n" -" cvt.s64.s32 %rd2, %r5;\n" -" mul.wide.s32 %rd3, %r5, 4;\n" -" add.u64 %rd4, %rd1, %rd3;\n" -" st.global.s32 [%rd4+0], %r7;\n" -"$Lt_0_1026:\n" -" .loc 16 25 0\n" -" exit;\n" -"$LDWend_kernel_zero:\n" -" }\n" -" .entry kernel_info (\n" -" .param .u64 __cudaparm_kernel_info_info)\n" -" {\n" -" .reg .u32 %r<16>;\n" -" .reg .u64 %rd<3>;\n" -" .loc 16 27 0\n" -"$LDWbegin_kernel_info:\n" -" .loc 16 28 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_info_info];\n" -" mov.s32 %r1, 200;\n" -" st.global.s32 [%rd1+0], %r1;\n" -" .loc 16 29 0\n" -" mov.s32 %r2, 32;\n" -" st.global.s32 [%rd1+4], %r2;\n" -" .loc 16 30 0\n" -" mov.s32 %r3, 32;\n" -" st.global.s32 [%rd1+8], %r3;\n" -" .loc 16 31 0\n" -" mov.s32 %r4, 4;\n" -" st.global.s32 [%rd1+12], %r4;\n" -" .loc 16 32 0\n" -" mov.s32 %r5, 8;\n" -" st.global.s32 [%rd1+16], %r5;\n" -" .loc 16 33 0\n" -" mov.s32 %r6, 64;\n" -" st.global.s32 [%rd1+20], %r6;\n" -" .loc 16 34 0\n" -" mov.s32 %r7, 128;\n" -" st.global.s32 [%rd1+24], %r7;\n" -" .loc 16 35 0\n" -" mov.s32 %r8, 11;\n" -" st.global.s32 [%rd1+28], %r8;\n" -" .loc 16 36 0\n" -" mov.s32 %r9, 8;\n" -" st.global.s32 [%rd1+32], %r9;\n" -" .loc 16 37 0\n" -" mov.s32 %r10, 128;\n" -" st.global.s32 [%rd1+36], %r10;\n" -" .loc 16 38 0\n" -" mov.s32 %r11, 128;\n" -" st.global.s32 [%rd1+40], %r11;\n" -" .loc 16 39 0\n" -" mov.s32 %r12, 128;\n" -" st.global.s32 [%rd1+44], %r12;\n" -" .loc 16 40 0\n" -" mov.s32 %r13, 128;\n" -" st.global.s32 [%rd1+48], %r13;\n" -" .loc 16 41 0\n" -" mov.s32 %r14, 8;\n" -" st.global.s32 [%rd1+52], %r14;\n" -" .loc 16 42 0\n" -" exit;\n" -"$LDWend_kernel_info:\n" -" }\n" -; diff --git a/lib/gpu/ellipsoid_nbor.ptx b/lib/gpu/ellipsoid_nbor.ptx deleted file mode 100644 index 657177c8f2..0000000000 --- a/lib/gpu/ellipsoid_nbor.ptx +++ /dev/null @@ -1,329 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009ad9_00000000-9_lal_ellipsoid_nbor.cpp3.i (/home/sjplimp/ccBI#.7CLzz0) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009ad9_00000000-8_lal_ellipsoid_nbor.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_ellipsoid_nbor.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_nbor ( - .param .u64 __cudaparm_kernel_nbor_x_, - .param .u64 __cudaparm_kernel_nbor_cut_form, - .param .s32 __cudaparm_kernel_nbor_ntypes, - .param .u64 __cudaparm_kernel_nbor_dev_nbor, - .param .s32 __cudaparm_kernel_nbor_nbor_pitch, - .param .s32 __cudaparm_kernel_nbor_start, - .param .s32 __cudaparm_kernel_nbor_inum, - .param .u64 __cudaparm_kernel_nbor_dev_ij, - .param .s32 __cudaparm_kernel_nbor_form_low, - .param .s32 __cudaparm_kernel_nbor_form_high) - { - .reg .u32 %r<26>; - .reg .u64 %rd<33>; - .reg .f32 %f<20>; - .reg .pred %p<8>; - .loc 16 29 0 -$LDWbegin_kernel_nbor: - cvt.s32.u32 %r1, %ctaid.x; - cvt.s32.u32 %r2, %ntid.x; - mul24.lo.s32 %r3, %r1, %r2; - mov.u32 %r4, %tid.x; - add.u32 %r5, %r3, %r4; - ld.param.s32 %r6, [__cudaparm_kernel_nbor_start]; - add.u32 %r7, %r6, %r5; - ld.param.s32 %r8, [__cudaparm_kernel_nbor_inum]; - setp.le.s32 %p1, %r8, %r7; - @%p1 bra $Lt_0_4354; - .loc 16 36 0 - cvt.s64.s32 %rd1, %r7; - ld.param.u64 %rd2, [__cudaparm_kernel_nbor_dev_ij]; - mul.wide.s32 %rd3, %r7, 4; - add.u64 %rd4, %rd2, %rd3; - ld.global.s32 %r9, [%rd4+0]; - .loc 16 38 0 - ld.param.s32 %r10, [__cudaparm_kernel_nbor_nbor_pitch]; - cvt.s64.s32 %rd5, %r10; - mul.wide.s32 %rd6, %r10, 4; - add.u64 %rd7, %rd6, %rd4; - ld.global.s32 %r11, [%rd7+0]; - .loc 16 39 0 - add.u64 %rd8, %rd6, %rd7; - mov.s64 %rd9, %rd8; - .loc 16 41 0 - ld.param.u64 %rd10, [__cudaparm_kernel_nbor_dev_nbor]; - add.u64 %rd11, %rd1, %rd5; - add.u64 %rd12, %rd5, %rd11; - mul.lo.u64 %rd13, %rd12, 4; - add.u64 %rd14, %rd10, %rd13; - .loc 16 43 0 - ld.param.u64 %rd15, [__cudaparm_kernel_nbor_x_]; - cvt.s64.s32 %rd16, %r9; - mul.wide.s32 %rd17, %r9, 16; - add.u64 %rd18, %rd15, %rd17; - ld.global.v4.f32 {%f1,%f2,%f3,%f4}, [%rd18+0]; - cvt.s32.s64 %r12, %rd5; - mul.lo.s32 %r13, %r12, %r11; - cvt.s64.s32 %rd19, %r13; - mul.wide.s32 %rd20, %r13, 4; - add.u64 %rd21, %rd8, %rd20; - setp.ge.u64 %p2, %rd8, %rd21; - @%p2 bra $Lt_0_6402; - cvt.rzi.ftz.s32.f32 %r14, %f4; - ld.param.s32 %r15, [__cudaparm_kernel_nbor_form_low]; - cvt.rn.f32.s32 %f5, %r15; - ld.param.s32 %r16, [__cudaparm_kernel_nbor_ntypes]; - mul.lo.s32 %r17, %r16, %r14; - ld.param.u64 %rd22, [__cudaparm_kernel_nbor_cut_form]; - mov.s32 %r18, 0; -$Lt_0_5378: - // Loop body line 43, nesting depth: 1, estimated iterations: unknown - .loc 16 49 0 - ld.global.s32 %r19, [%rd9+0]; - and.b32 %r20, %r19, 1073741823; - .loc 16 50 0 - cvt.s64.s32 %rd23, %r20; - mul.wide.s32 %rd24, %r20, 16; - add.u64 %rd25, %rd15, %rd24; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd25+0]; - .loc 16 53 0 - cvt.rzi.ftz.s32.f32 %r21, %f9; - add.s32 %r22, %r21, %r17; - cvt.s64.s32 %rd26, %r22; - mul.wide.s32 %rd27, %r22, 8; - add.u64 %rd28, %rd22, %rd27; - ld.global.f32 %f10, [%rd28+4]; - .loc 16 48 0 - setp.le.ftz.f32 %p3, %f5, %f10; - @!%p3 bra $Lt_0_6658; - ld.param.s32 %r23, [__cudaparm_kernel_nbor_form_high]; - cvt.rn.f32.s32 %f11, %r23; - setp.ge.ftz.f32 %p4, %f11, %f10; - @!%p4 bra $Lt_0_6658; - sub.ftz.f32 %f12, %f6, %f1; - sub.ftz.f32 %f13, %f7, %f2; - sub.ftz.f32 %f14, %f8, %f3; - ld.global.f32 %f15, [%rd28+0]; - mul.ftz.f32 %f16, %f12, %f12; - fma.rn.ftz.f32 %f17, %f13, %f13, %f16; - fma.rn.ftz.f32 %f18, %f14, %f14, %f17; - setp.gt.ftz.f32 %p5, %f15, %f18; - @!%p5 bra $Lt_0_6658; - .loc 16 64 0 - st.global.s32 [%rd14+0], %r20; - .loc 16 65 0 - add.u64 %rd14, %rd6, %rd14; - .loc 16 66 0 - add.s32 %r18, %r18, 1; -$Lt_0_6658: -$L_0_3842: - .loc 16 47 0 - add.u64 %rd9, %rd6, %rd9; - setp.gt.u64 %p6, %rd21, %rd9; - @%p6 bra $Lt_0_5378; - bra.uni $Lt_0_4866; -$Lt_0_6402: - mov.s32 %r18, 0; -$Lt_0_4866: - .loc 16 70 0 - add.s32 %r24, %r12, %r7; - cvt.s64.s32 %rd29, %r24; - mul.wide.s32 %rd30, %r24, 4; - add.u64 %rd31, %rd10, %rd30; - st.global.s32 [%rd31+0], %r18; -$Lt_0_4354: - .loc 16 72 0 - exit; -$LDWend_kernel_nbor: - } // kernel_nbor - - .entry kernel_nbor_fast ( - .param .u64 __cudaparm_kernel_nbor_fast_x_, - .param .u64 __cudaparm_kernel_nbor_fast_cut_form, - .param .u64 __cudaparm_kernel_nbor_fast_dev_nbor, - .param .s32 __cudaparm_kernel_nbor_fast_nbor_pitch, - .param .s32 __cudaparm_kernel_nbor_fast_start, - .param .s32 __cudaparm_kernel_nbor_fast_inum, - .param .u64 __cudaparm_kernel_nbor_fast_dev_ij, - .param .s32 __cudaparm_kernel_nbor_fast_form_low, - .param .s32 __cudaparm_kernel_nbor_fast_form_high) - { - .reg .u32 %r<28>; - .reg .u64 %rd<42>; - .reg .f32 %f<19>; - .reg .pred %p<9>; - .shared .align 4 .b8 __cuda___cuda_local_var_32570_31_non_const_form120[484]; - .shared .align 4 .b8 __cuda___cuda_local_var_32571_33_non_const_cutsq604[484]; - .loc 16 84 0 -$LDWbegin_kernel_nbor_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 120; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_5122; - .loc 16 90 0 - mov.u64 %rd1, __cuda___cuda_local_var_32570_31_non_const_form120; - mov.u64 %rd2, __cuda___cuda_local_var_32571_33_non_const_cutsq604; - cvt.s64.s32 %rd3, %r1; - mul.wide.s32 %rd4, %r1, 4; - ld.param.u64 %rd5, [__cudaparm_kernel_nbor_fast_cut_form]; - mul.wide.s32 %rd6, %r1, 8; - add.u64 %rd7, %rd5, %rd6; - ld.global.v2.f32 {%f1,%f2}, [%rd7+0]; - add.u64 %rd8, %rd4, %rd2; - st.shared.f32 [%rd8+0], %f1; - .loc 16 91 0 - cvt.rzi.ftz.s32.f32 %r3, %f2; - add.u64 %rd9, %rd4, %rd1; - st.shared.s32 [%rd9+0], %r3; -$Lt_1_5122: - mov.u64 %rd1, __cuda___cuda_local_var_32570_31_non_const_form120; - mov.u64 %rd2, __cuda___cuda_local_var_32571_33_non_const_cutsq604; - .loc 16 94 0 - bar.sync 0; - cvt.s32.u32 %r4, %ctaid.x; - cvt.s32.u32 %r5, %ntid.x; - mul.lo.s32 %r6, %r4, %r5; - ld.param.s32 %r7, [__cudaparm_kernel_nbor_fast_start]; - add.s32 %r8, %r7, %r6; - add.s32 %r9, %r8, %r1; - ld.param.s32 %r10, [__cudaparm_kernel_nbor_fast_inum]; - setp.le.s32 %p2, %r10, %r9; - @%p2 bra $Lt_1_5634; - .loc 16 98 0 - cvt.s64.s32 %rd10, %r9; - ld.param.u64 %rd11, [__cudaparm_kernel_nbor_fast_dev_ij]; - mul.wide.s32 %rd12, %r9, 4; - add.u64 %rd13, %rd11, %rd12; - ld.global.s32 %r11, [%rd13+0]; - .loc 16 100 0 - ld.param.s32 %r12, [__cudaparm_kernel_nbor_fast_nbor_pitch]; - cvt.s64.s32 %rd14, %r12; - mul.wide.s32 %rd15, %r12, 4; - add.u64 %rd16, %rd15, %rd13; - ld.global.s32 %r13, [%rd16+0]; - .loc 16 101 0 - add.u64 %rd17, %rd15, %rd16; - mov.s64 %rd18, %rd17; - .loc 16 103 0 - ld.param.u64 %rd19, [__cudaparm_kernel_nbor_fast_dev_nbor]; - add.u64 %rd20, %rd10, %rd14; - add.u64 %rd21, %rd14, %rd20; - mul.lo.u64 %rd22, %rd21, 4; - add.u64 %rd23, %rd19, %rd22; - .loc 16 105 0 - ld.param.u64 %rd24, [__cudaparm_kernel_nbor_fast_x_]; - cvt.s64.s32 %rd25, %r11; - mul.wide.s32 %rd26, %r11, 16; - add.u64 %rd27, %rd24, %rd26; - ld.global.v4.f32 {%f3,%f4,%f5,%f6}, [%rd27+0]; - cvt.s32.s64 %r14, %rd14; - mul.lo.s32 %r15, %r14, %r13; - cvt.s64.s32 %rd28, %r15; - mul.wide.s32 %rd29, %r15, 4; - add.u64 %rd30, %rd17, %rd29; - setp.ge.u64 %p3, %rd17, %rd30; - @%p3 bra $Lt_1_7682; - cvt.rzi.ftz.s32.f32 %r16, %f6; - mul.lo.s32 %r17, %r16, 11; - ld.param.s32 %r18, [__cudaparm_kernel_nbor_fast_form_low]; - mov.s32 %r19, 0; -$Lt_1_6658: - // Loop body line 105, nesting depth: 1, estimated iterations: unknown - .loc 16 112 0 - ld.global.s32 %r20, [%rd18+0]; - and.b32 %r21, %r20, 1073741823; - .loc 16 113 0 - cvt.s64.s32 %rd31, %r21; - mul.wide.s32 %rd32, %r21, 16; - add.u64 %rd33, %rd24, %rd32; - ld.global.v4.f32 {%f7,%f8,%f9,%f10}, [%rd33+0]; - .loc 16 111 0 - cvt.rzi.ftz.s32.f32 %r22, %f10; - add.s32 %r23, %r22, %r17; - cvt.s64.s32 %rd34, %r23; - mul.wide.s32 %rd35, %r23, 4; - add.u64 %rd36, %rd35, %rd1; - ld.shared.s32 %r24, [%rd36+0]; - setp.lt.s32 %p4, %r24, %r18; - @%p4 bra $Lt_1_7938; - ld.param.s32 %r25, [__cudaparm_kernel_nbor_fast_form_high]; - setp.lt.s32 %p5, %r25, %r24; - @%p5 bra $Lt_1_7938; - sub.ftz.f32 %f11, %f7, %f3; - sub.ftz.f32 %f12, %f8, %f4; - sub.ftz.f32 %f13, %f9, %f5; - add.u64 %rd37, %rd35, %rd2; - ld.shared.f32 %f14, [%rd37+0]; - mul.ftz.f32 %f15, %f11, %f11; - fma.rn.ftz.f32 %f16, %f12, %f12, %f15; - fma.rn.ftz.f32 %f17, %f13, %f13, %f16; - setp.gt.ftz.f32 %p6, %f14, %f17; - @!%p6 bra $Lt_1_7938; - .loc 16 127 0 - st.global.s32 [%rd23+0], %r21; - .loc 16 128 0 - add.u64 %rd23, %rd15, %rd23; - .loc 16 129 0 - add.s32 %r19, %r19, 1; -$Lt_1_7938: -$L_1_4610: - .loc 16 110 0 - add.u64 %rd18, %rd15, %rd18; - setp.gt.u64 %p7, %rd30, %rd18; - @%p7 bra $Lt_1_6658; - bra.uni $Lt_1_6146; -$Lt_1_7682: - mov.s32 %r19, 0; -$Lt_1_6146: - .loc 16 133 0 - add.s32 %r26, %r14, %r9; - cvt.s64.s32 %rd38, %r26; - mul.wide.s32 %rd39, %r26, 4; - add.u64 %rd40, %rd19, %rd39; - st.global.s32 [%rd40+0], %r19; -$Lt_1_5634: - .loc 16 135 0 - exit; -$LDWend_kernel_nbor_fast: - } // kernel_nbor_fast - diff --git a/lib/gpu/ellipsoid_nbor_ptx.h b/lib/gpu/ellipsoid_nbor_ptx.h deleted file mode 100644 index d47e6ce892..0000000000 --- a/lib/gpu/ellipsoid_nbor_ptx.h +++ /dev/null @@ -1,281 +0,0 @@ -const char * ellipsoid_nbor = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .entry kernel_nbor (\n" -" .param .u64 __cudaparm_kernel_nbor_x_,\n" -" .param .u64 __cudaparm_kernel_nbor_cut_form,\n" -" .param .s32 __cudaparm_kernel_nbor_ntypes,\n" -" .param .u64 __cudaparm_kernel_nbor_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_nbor_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_nbor_start,\n" -" .param .s32 __cudaparm_kernel_nbor_inum,\n" -" .param .u64 __cudaparm_kernel_nbor_dev_ij,\n" -" .param .s32 __cudaparm_kernel_nbor_form_low,\n" -" .param .s32 __cudaparm_kernel_nbor_form_high)\n" -" {\n" -" .reg .u32 %r<26>;\n" -" .reg .u64 %rd<33>;\n" -" .reg .f32 %f<20>;\n" -" .reg .pred %p<8>;\n" -" .loc 16 29 0\n" -"$LDWbegin_kernel_nbor:\n" -" cvt.s32.u32 %r1, %ctaid.x;\n" -" cvt.s32.u32 %r2, %ntid.x;\n" -" mul24.lo.s32 %r3, %r1, %r2;\n" -" mov.u32 %r4, %tid.x;\n" -" add.u32 %r5, %r3, %r4;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_nbor_start];\n" -" add.u32 %r7, %r6, %r5;\n" -" ld.param.s32 %r8, [__cudaparm_kernel_nbor_inum];\n" -" setp.le.s32 %p1, %r8, %r7;\n" -" @%p1 bra $Lt_0_4354;\n" -" .loc 16 36 0\n" -" cvt.s64.s32 %rd1, %r7;\n" -" ld.param.u64 %rd2, [__cudaparm_kernel_nbor_dev_ij];\n" -" mul.wide.s32 %rd3, %r7, 4;\n" -" add.u64 %rd4, %rd2, %rd3;\n" -" ld.global.s32 %r9, [%rd4+0];\n" -" .loc 16 38 0\n" -" ld.param.s32 %r10, [__cudaparm_kernel_nbor_nbor_pitch];\n" -" cvt.s64.s32 %rd5, %r10;\n" -" mul.wide.s32 %rd6, %r10, 4;\n" -" add.u64 %rd7, %rd6, %rd4;\n" -" ld.global.s32 %r11, [%rd7+0];\n" -" .loc 16 39 0\n" -" add.u64 %rd8, %rd6, %rd7;\n" -" mov.s64 %rd9, %rd8;\n" -" .loc 16 41 0\n" -" ld.param.u64 %rd10, [__cudaparm_kernel_nbor_dev_nbor];\n" -" add.u64 %rd11, %rd1, %rd5;\n" -" add.u64 %rd12, %rd5, %rd11;\n" -" mul.lo.u64 %rd13, %rd12, 4;\n" -" add.u64 %rd14, %rd10, %rd13;\n" -" .loc 16 43 0\n" -" ld.param.u64 %rd15, [__cudaparm_kernel_nbor_x_];\n" -" cvt.s64.s32 %rd16, %r9;\n" -" mul.wide.s32 %rd17, %r9, 16;\n" -" add.u64 %rd18, %rd15, %rd17;\n" -" ld.global.v4.f32 {%f1,%f2,%f3,%f4}, [%rd18+0];\n" -" cvt.s32.s64 %r12, %rd5;\n" -" mul.lo.s32 %r13, %r12, %r11;\n" -" cvt.s64.s32 %rd19, %r13;\n" -" mul.wide.s32 %rd20, %r13, 4;\n" -" add.u64 %rd21, %rd8, %rd20;\n" -" setp.ge.u64 %p2, %rd8, %rd21;\n" -" @%p2 bra $Lt_0_6402;\n" -" cvt.rzi.ftz.s32.f32 %r14, %f4;\n" -" ld.param.s32 %r15, [__cudaparm_kernel_nbor_form_low];\n" -" cvt.rn.f32.s32 %f5, %r15;\n" -" ld.param.s32 %r16, [__cudaparm_kernel_nbor_ntypes];\n" -" mul.lo.s32 %r17, %r16, %r14;\n" -" ld.param.u64 %rd22, [__cudaparm_kernel_nbor_cut_form];\n" -" mov.s32 %r18, 0;\n" -"$Lt_0_5378:\n" -" .loc 16 49 0\n" -" ld.global.s32 %r19, [%rd9+0];\n" -" and.b32 %r20, %r19, 1073741823;\n" -" .loc 16 50 0\n" -" cvt.s64.s32 %rd23, %r20;\n" -" mul.wide.s32 %rd24, %r20, 16;\n" -" add.u64 %rd25, %rd15, %rd24;\n" -" ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd25+0];\n" -" .loc 16 53 0\n" -" cvt.rzi.ftz.s32.f32 %r21, %f9;\n" -" add.s32 %r22, %r21, %r17;\n" -" cvt.s64.s32 %rd26, %r22;\n" -" mul.wide.s32 %rd27, %r22, 8;\n" -" add.u64 %rd28, %rd22, %rd27;\n" -" ld.global.f32 %f10, [%rd28+4];\n" -" .loc 16 48 0\n" -" setp.le.ftz.f32 %p3, %f5, %f10;\n" -" @!%p3 bra $Lt_0_6658;\n" -" ld.param.s32 %r23, [__cudaparm_kernel_nbor_form_high];\n" -" cvt.rn.f32.s32 %f11, %r23;\n" -" setp.ge.ftz.f32 %p4, %f11, %f10;\n" -" @!%p4 bra $Lt_0_6658;\n" -" sub.ftz.f32 %f12, %f6, %f1;\n" -" sub.ftz.f32 %f13, %f7, %f2;\n" -" sub.ftz.f32 %f14, %f8, %f3;\n" -" ld.global.f32 %f15, [%rd28+0];\n" -" mul.ftz.f32 %f16, %f12, %f12;\n" -" fma.rn.ftz.f32 %f17, %f13, %f13, %f16;\n" -" fma.rn.ftz.f32 %f18, %f14, %f14, %f17;\n" -" setp.gt.ftz.f32 %p5, %f15, %f18;\n" -" @!%p5 bra $Lt_0_6658;\n" -" .loc 16 64 0\n" -" st.global.s32 [%rd14+0], %r20;\n" -" .loc 16 65 0\n" -" add.u64 %rd14, %rd6, %rd14;\n" -" .loc 16 66 0\n" -" add.s32 %r18, %r18, 1;\n" -"$Lt_0_6658:\n" -"$L_0_3842:\n" -" .loc 16 47 0\n" -" add.u64 %rd9, %rd6, %rd9;\n" -" setp.gt.u64 %p6, %rd21, %rd9;\n" -" @%p6 bra $Lt_0_5378;\n" -" bra.uni $Lt_0_4866;\n" -"$Lt_0_6402:\n" -" mov.s32 %r18, 0;\n" -"$Lt_0_4866:\n" -" .loc 16 70 0\n" -" add.s32 %r24, %r12, %r7;\n" -" cvt.s64.s32 %rd29, %r24;\n" -" mul.wide.s32 %rd30, %r24, 4;\n" -" add.u64 %rd31, %rd10, %rd30;\n" -" st.global.s32 [%rd31+0], %r18;\n" -"$Lt_0_4354:\n" -" .loc 16 72 0\n" -" exit;\n" -"$LDWend_kernel_nbor:\n" -" }\n" -" .entry kernel_nbor_fast (\n" -" .param .u64 __cudaparm_kernel_nbor_fast_x_,\n" -" .param .u64 __cudaparm_kernel_nbor_fast_cut_form,\n" -" .param .u64 __cudaparm_kernel_nbor_fast_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_nbor_fast_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_nbor_fast_start,\n" -" .param .s32 __cudaparm_kernel_nbor_fast_inum,\n" -" .param .u64 __cudaparm_kernel_nbor_fast_dev_ij,\n" -" .param .s32 __cudaparm_kernel_nbor_fast_form_low,\n" -" .param .s32 __cudaparm_kernel_nbor_fast_form_high)\n" -" {\n" -" .reg .u32 %r<28>;\n" -" .reg .u64 %rd<42>;\n" -" .reg .f32 %f<19>;\n" -" .reg .pred %p<9>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32570_31_non_const_form120[484];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32571_33_non_const_cutsq604[484];\n" -" .loc 16 84 0\n" -"$LDWbegin_kernel_nbor_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 120;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_5122;\n" -" .loc 16 90 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32570_31_non_const_form120;\n" -" mov.u64 %rd2, __cuda___cuda_local_var_32571_33_non_const_cutsq604;\n" -" cvt.s64.s32 %rd3, %r1;\n" -" mul.wide.s32 %rd4, %r1, 4;\n" -" ld.param.u64 %rd5, [__cudaparm_kernel_nbor_fast_cut_form];\n" -" mul.wide.s32 %rd6, %r1, 8;\n" -" add.u64 %rd7, %rd5, %rd6;\n" -" ld.global.v2.f32 {%f1,%f2}, [%rd7+0];\n" -" add.u64 %rd8, %rd4, %rd2;\n" -" st.shared.f32 [%rd8+0], %f1;\n" -" .loc 16 91 0\n" -" cvt.rzi.ftz.s32.f32 %r3, %f2;\n" -" add.u64 %rd9, %rd4, %rd1;\n" -" st.shared.s32 [%rd9+0], %r3;\n" -"$Lt_1_5122:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32570_31_non_const_form120;\n" -" mov.u64 %rd2, __cuda___cuda_local_var_32571_33_non_const_cutsq604;\n" -" .loc 16 94 0\n" -" bar.sync 0;\n" -" cvt.s32.u32 %r4, %ctaid.x;\n" -" cvt.s32.u32 %r5, %ntid.x;\n" -" mul.lo.s32 %r6, %r4, %r5;\n" -" ld.param.s32 %r7, [__cudaparm_kernel_nbor_fast_start];\n" -" add.s32 %r8, %r7, %r6;\n" -" add.s32 %r9, %r8, %r1;\n" -" ld.param.s32 %r10, [__cudaparm_kernel_nbor_fast_inum];\n" -" setp.le.s32 %p2, %r10, %r9;\n" -" @%p2 bra $Lt_1_5634;\n" -" .loc 16 98 0\n" -" cvt.s64.s32 %rd10, %r9;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_nbor_fast_dev_ij];\n" -" mul.wide.s32 %rd12, %r9, 4;\n" -" add.u64 %rd13, %rd11, %rd12;\n" -" ld.global.s32 %r11, [%rd13+0];\n" -" .loc 16 100 0\n" -" ld.param.s32 %r12, [__cudaparm_kernel_nbor_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd14, %r12;\n" -" mul.wide.s32 %rd15, %r12, 4;\n" -" add.u64 %rd16, %rd15, %rd13;\n" -" ld.global.s32 %r13, [%rd16+0];\n" -" .loc 16 101 0\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mov.s64 %rd18, %rd17;\n" -" .loc 16 103 0\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_nbor_fast_dev_nbor];\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" add.u64 %rd21, %rd14, %rd20;\n" -" mul.lo.u64 %rd22, %rd21, 4;\n" -" add.u64 %rd23, %rd19, %rd22;\n" -" .loc 16 105 0\n" -" ld.param.u64 %rd24, [__cudaparm_kernel_nbor_fast_x_];\n" -" cvt.s64.s32 %rd25, %r11;\n" -" mul.wide.s32 %rd26, %r11, 16;\n" -" add.u64 %rd27, %rd24, %rd26;\n" -" ld.global.v4.f32 {%f3,%f4,%f5,%f6}, [%rd27+0];\n" -" cvt.s32.s64 %r14, %rd14;\n" -" mul.lo.s32 %r15, %r14, %r13;\n" -" cvt.s64.s32 %rd28, %r15;\n" -" mul.wide.s32 %rd29, %r15, 4;\n" -" add.u64 %rd30, %rd17, %rd29;\n" -" setp.ge.u64 %p3, %rd17, %rd30;\n" -" @%p3 bra $Lt_1_7682;\n" -" cvt.rzi.ftz.s32.f32 %r16, %f6;\n" -" mul.lo.s32 %r17, %r16, 11;\n" -" ld.param.s32 %r18, [__cudaparm_kernel_nbor_fast_form_low];\n" -" mov.s32 %r19, 0;\n" -"$Lt_1_6658:\n" -" .loc 16 112 0\n" -" ld.global.s32 %r20, [%rd18+0];\n" -" and.b32 %r21, %r20, 1073741823;\n" -" .loc 16 113 0\n" -" cvt.s64.s32 %rd31, %r21;\n" -" mul.wide.s32 %rd32, %r21, 16;\n" -" add.u64 %rd33, %rd24, %rd32;\n" -" ld.global.v4.f32 {%f7,%f8,%f9,%f10}, [%rd33+0];\n" -" .loc 16 111 0\n" -" cvt.rzi.ftz.s32.f32 %r22, %f10;\n" -" add.s32 %r23, %r22, %r17;\n" -" cvt.s64.s32 %rd34, %r23;\n" -" mul.wide.s32 %rd35, %r23, 4;\n" -" add.u64 %rd36, %rd35, %rd1;\n" -" ld.shared.s32 %r24, [%rd36+0];\n" -" setp.lt.s32 %p4, %r24, %r18;\n" -" @%p4 bra $Lt_1_7938;\n" -" ld.param.s32 %r25, [__cudaparm_kernel_nbor_fast_form_high];\n" -" setp.lt.s32 %p5, %r25, %r24;\n" -" @%p5 bra $Lt_1_7938;\n" -" sub.ftz.f32 %f11, %f7, %f3;\n" -" sub.ftz.f32 %f12, %f8, %f4;\n" -" sub.ftz.f32 %f13, %f9, %f5;\n" -" add.u64 %rd37, %rd35, %rd2;\n" -" ld.shared.f32 %f14, [%rd37+0];\n" -" mul.ftz.f32 %f15, %f11, %f11;\n" -" fma.rn.ftz.f32 %f16, %f12, %f12, %f15;\n" -" fma.rn.ftz.f32 %f17, %f13, %f13, %f16;\n" -" setp.gt.ftz.f32 %p6, %f14, %f17;\n" -" @!%p6 bra $Lt_1_7938;\n" -" .loc 16 127 0\n" -" st.global.s32 [%rd23+0], %r21;\n" -" .loc 16 128 0\n" -" add.u64 %rd23, %rd15, %rd23;\n" -" .loc 16 129 0\n" -" add.s32 %r19, %r19, 1;\n" -"$Lt_1_7938:\n" -"$L_1_4610:\n" -" .loc 16 110 0\n" -" add.u64 %rd18, %rd15, %rd18;\n" -" setp.gt.u64 %p7, %rd30, %rd18;\n" -" @%p7 bra $Lt_1_6658;\n" -" bra.uni $Lt_1_6146;\n" -"$Lt_1_7682:\n" -" mov.s32 %r19, 0;\n" -"$Lt_1_6146:\n" -" .loc 16 133 0\n" -" add.s32 %r26, %r14, %r9;\n" -" cvt.s64.s32 %rd38, %r26;\n" -" mul.wide.s32 %rd39, %r26, 4;\n" -" add.u64 %rd40, %rd19, %rd39;\n" -" st.global.s32 [%rd40+0], %r19;\n" -"$Lt_1_5634:\n" -" .loc 16 135 0\n" -" exit;\n" -"$LDWend_kernel_nbor_fast:\n" -" }\n" -; diff --git a/lib/gpu/gayberne.ptx b/lib/gpu/gayberne.ptx deleted file mode 100644 index 806a9b39a0..0000000000 --- a/lib/gpu/gayberne.ptx +++ /dev/null @@ -1,1590 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009b6f_00000000-9_lal_gayberne.cpp3.i (/home/sjplimp/ccBI#.YH8XBK) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009b6f_00000000-8_lal_gayberne.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_ellipsoid_extra.h" - .file 17 "lal_gayberne.cu" - .file 18 "/usr/local/cuda/include/common_functions.h" - .file 19 "/usr/local/cuda/include/math_functions.h" - .file 20 "/usr/local/cuda/include/math_constants.h" - .file 21 "/usr/local/cuda/include/device_functions.h" - .file 22 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 24 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 26 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 27 "/usr/local/cuda/include/surface_functions.h" - .file 28 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 29 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_ellipsoid ( - .param .u64 __cudaparm_kernel_ellipsoid_x_, - .param .u64 __cudaparm_kernel_ellipsoid_q, - .param .u64 __cudaparm_kernel_ellipsoid_shape, - .param .u64 __cudaparm_kernel_ellipsoid_well, - .param .u64 __cudaparm_kernel_ellipsoid_gum, - .param .u64 __cudaparm_kernel_ellipsoid_sig_eps, - .param .s32 __cudaparm_kernel_ellipsoid_ntypes, - .param .u64 __cudaparm_kernel_ellipsoid_lshape, - .param .u64 __cudaparm_kernel_ellipsoid_dev_nbor, - .param .s32 __cudaparm_kernel_ellipsoid_stride, - .param .u64 __cudaparm_kernel_ellipsoid_ans, - .param .s32 __cudaparm_kernel_ellipsoid_astride, - .param .u64 __cudaparm_kernel_ellipsoid_engv, - .param .u64 __cudaparm_kernel_ellipsoid_err_flag, - .param .s32 __cudaparm_kernel_ellipsoid_eflag, - .param .s32 __cudaparm_kernel_ellipsoid_vflag, - .param .s32 __cudaparm_kernel_ellipsoid_inum, - .param .s32 __cudaparm_kernel_ellipsoid_t_per_atom) - { - .reg .u32 %r<67>; - .reg .u64 %rd<83>; - .reg .f32 %f<898>; - .reg .pred %p<35>; - .shared .align 16 .b8 __cuda___cuda_local_var_32950_33_non_const_sp_lj128[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33207_55_non_const_red_acc144[3584]; - // __cuda_local_var_32957_10_non_const_f = 48 - // __cuda_local_var_32961_10_non_const_tor = 64 - // __cuda_local_var_32965_9_non_const_virial = 16 - .loc 17 91 0 -$LDWbegin_kernel_ellipsoid: - .loc 17 96 0 - ld.param.u64 %rd1, [__cudaparm_kernel_ellipsoid_gum]; - ldu.global.f32 %f1, [%rd1+12]; - .loc 17 97 0 - ld.global.f32 %f2, [%rd1+16]; - .loc 17 98 0 - ld.global.f32 %f3, [%rd1+20]; - .loc 17 99 0 - ld.global.f32 %f4, [%rd1+24]; - st.shared.v4.f32 [__cuda___cuda_local_var_32950_33_non_const_sp_lj128+0], {%f1,%f2,%f3,%f4}; - .loc 17 112 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_ellipsoid_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_ellipsoid_inum]; - setp.le.s32 %p1, %r9, %r8; - @%p1 bra $Lt_0_55298; - .loc 17 117 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_ellipsoid_dev_nbor]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_ellipsoid_stride]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - .loc 17 120 0 - cvt.s64.s32 %rd9, %r10; - mul.wide.s32 %rd10, %r10, 16; - ld.param.u64 %rd11, [__cudaparm_kernel_ellipsoid_x_]; - add.u64 %rd12, %rd10, %rd11; - ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0]; - .loc 17 123 0 - cvt.rzi.ftz.s32.f32 %r13, %f20; - cvt.s64.s32 %rd13, %r13; - mul.wide.s32 %rd14, %r13, 16; - ld.param.u64 %rd15, [__cudaparm_kernel_ellipsoid_shape]; - add.u64 %rd16, %rd14, %rd15; - ld.global.v4.f32 {%f21,%f22,%f23,_}, [%rd16+0]; - .loc 17 126 0 - ld.param.u64 %rd17, [__cudaparm_kernel_ellipsoid_q]; - add.u64 %rd18, %rd10, %rd17; - ld.global.v4.f32 {%f24,%f25,%f26,%f27}, [%rd18+0]; - .loc 17 129 0 - ld.param.u64 %rd19, [__cudaparm_kernel_ellipsoid_well]; - add.u64 %rd20, %rd14, %rd19; - ld.global.v4.f32 {%f28,%f29,%f30,_}, [%rd20+0]; - .loc 17 130 0 - cvt.s32.s64 %r14, %rd6; - sub.s32 %r15, %r1, 1; - and.b32 %r16, %r15, %r2; - add.u64 %rd21, %rd7, %rd8; - mul.lo.s32 %r17, %r14, %r16; - cvt.s64.s32 %rd22, %r17; - mul.wide.s32 %rd23, %r17, 4; - add.u64 %rd24, %rd21, %rd23; - mov.s64 %rd25, %rd24; - mul.lo.s32 %r18, %r14, %r12; - cvt.s64.s32 %rd26, %r18; - mul.wide.s32 %rd27, %r18, 4; - add.u64 %rd28, %rd21, %rd27; - setp.ge.u64 %p2, %rd24, %rd28; - @%p2 bra $Lt_0_56834; - ld.param.s32 %r19, [__cudaparm_kernel_ellipsoid_eflag]; - mov.s32 %r20, 0; - setp.gt.s32 %p3, %r19, %r20; - ld.param.s32 %r21, [__cudaparm_kernel_ellipsoid_vflag]; - mov.s32 %r22, 0; - setp.gt.s32 %p4, %r21, %r22; - add.ftz.f32 %f31, %f25, %f25; - add.ftz.f32 %f32, %f27, %f27; - mul.ftz.f32 %f33, %f24, %f24; - mul.ftz.f32 %f34, %f25, %f25; - mul.ftz.f32 %f35, %f26, %f26; - mul.ftz.f32 %f36, %f27, %f27; - add.ftz.f32 %f37, %f26, %f26; - ld.param.s32 %r23, [__cudaparm_kernel_ellipsoid_ntypes]; - mul.lo.s32 %r24, %r23, %r13; - mul.ftz.f32 %f38, %f31, %f26; - mul.ftz.f32 %f39, %f31, %f27; - mul.ftz.f32 %f40, %f31, %f24; - mul.ftz.f32 %f41, %f32, %f24; - add.ftz.f32 %f42, %f33, %f34; - sub.ftz.f32 %f43, %f33, %f34; - mul.ftz.f32 %f44, %f37, %f24; - mul.ftz.f32 %f45, %f37, %f27; - sub.ftz.f32 %f46, %f38, %f41; - add.ftz.f32 %f47, %f38, %f41; - sub.ftz.f32 %f48, %f42, %f35; - add.ftz.f32 %f49, %f35, %f43; - sub.ftz.f32 %f50, %f43, %f35; - add.ftz.f32 %f51, %f39, %f44; - sub.ftz.f32 %f52, %f39, %f44; - sub.ftz.f32 %f53, %f45, %f40; - add.ftz.f32 %f54, %f40, %f45; - ld.param.u64 %rd29, [__cudaparm_kernel_ellipsoid_lshape]; - mul.lo.u64 %rd30, %rd13, 4; - add.u64 %rd31, %rd29, %rd30; - mul.ftz.f32 %f55, %f46, %f22; - mul.ftz.f32 %f56, %f46, %f29; - mul.ftz.f32 %f57, %f47, %f21; - mul.ftz.f32 %f58, %f47, %f28; - sub.ftz.f32 %f59, %f48, %f36; - sub.ftz.f32 %f60, %f49, %f36; - add.ftz.f32 %f61, %f36, %f50; - mul.ftz.f32 %f62, %f51, %f23; - mul.ftz.f32 %f63, %f51, %f30; - add.ftz.f32 %f64, %f51, %f51; - mul.ftz.f32 %f65, %f52, %f21; - mul.ftz.f32 %f66, %f52, %f28; - mul.ftz.f32 %f67, %f53, %f23; - mul.ftz.f32 %f68, %f53, %f30; - add.ftz.f32 %f69, %f53, %f53; - mul.ftz.f32 %f70, %f54, %f22; - mul.ftz.f32 %f71, %f54, %f29; - mul.ftz.f32 %f72, %f46, %f55; - mul.ftz.f32 %f73, %f54, %f55; - mul.ftz.f32 %f74, %f46, %f56; - mul.ftz.f32 %f75, %f54, %f56; - mul.ftz.f32 %f76, %f59, %f21; - mul.ftz.f32 %f77, %f59, %f28; - mul.ftz.f32 %f78, %f60, %f22; - mul.ftz.f32 %f79, %f55, %f60; - mul.ftz.f32 %f80, %f60, %f29; - mul.ftz.f32 %f81, %f56, %f60; - mul.ftz.f32 %f82, %f61, %f23; - mul.ftz.f32 %f83, %f61, %f30; - add.ftz.f32 %f84, %f61, %f61; - mul.ftz.f32 %f85, %f46, %f70; - mul.ftz.f32 %f86, %f60, %f70; - mul.ftz.f32 %f87, %f54, %f70; - mul.ftz.f32 %f88, %f46, %f71; - mul.ftz.f32 %f89, %f60, %f71; - mul.ftz.f32 %f90, %f54, %f71; - fma.rn.ftz.f32 %f91, %f59, %f76, %f72; - fma.rn.ftz.f32 %f92, %f76, %f52, %f73; - fma.rn.ftz.f32 %f93, %f59, %f77, %f74; - fma.rn.ftz.f32 %f94, %f77, %f52, %f75; - mul.ftz.f32 %f95, %f46, %f78; - mul.ftz.f32 %f96, %f60, %f78; - mul.ftz.f32 %f97, %f54, %f78; - fma.rn.ftz.f32 %f98, %f76, %f47, %f79; - mul.ftz.f32 %f99, %f46, %f80; - mul.ftz.f32 %f100, %f60, %f80; - mul.ftz.f32 %f101, %f54, %f80; - fma.rn.ftz.f32 %f102, %f77, %f47, %f81; - fma.rn.ftz.f32 %f103, %f59, %f65, %f85; - fma.rn.ftz.f32 %f104, %f47, %f65, %f86; - fma.rn.ftz.f32 %f105, %f52, %f65, %f87; - fma.rn.ftz.f32 %f106, %f59, %f66, %f88; - fma.rn.ftz.f32 %f107, %f47, %f66, %f89; - fma.rn.ftz.f32 %f108, %f52, %f66, %f90; - fma.rn.ftz.f32 %f109, %f51, %f62, %f91; - fma.rn.ftz.f32 %f110, %f62, %f61, %f92; - fma.rn.ftz.f32 %f111, %f51, %f63, %f93; - fma.rn.ftz.f32 %f112, %f63, %f61, %f94; - fma.rn.ftz.f32 %f113, %f59, %f57, %f95; - fma.rn.ftz.f32 %f114, %f47, %f57, %f96; - fma.rn.ftz.f32 %f115, %f57, %f52, %f97; - fma.rn.ftz.f32 %f116, %f62, %f53, %f98; - fma.rn.ftz.f32 %f117, %f59, %f58, %f99; - fma.rn.ftz.f32 %f118, %f47, %f58, %f100; - fma.rn.ftz.f32 %f119, %f58, %f52, %f101; - fma.rn.ftz.f32 %f120, %f63, %f53, %f102; - fma.rn.ftz.f32 %f121, %f51, %f82, %f103; - fma.rn.ftz.f32 %f122, %f53, %f82, %f104; - fma.rn.ftz.f32 %f123, %f61, %f82, %f105; - fma.rn.ftz.f32 %f124, %f51, %f83, %f106; - fma.rn.ftz.f32 %f125, %f53, %f83, %f107; - fma.rn.ftz.f32 %f126, %f61, %f83, %f108; - fma.rn.ftz.f32 %f127, %f51, %f67, %f113; - fma.rn.ftz.f32 %f128, %f53, %f67, %f114; - fma.rn.ftz.f32 %f129, %f67, %f61, %f115; - fma.rn.ftz.f32 %f130, %f51, %f68, %f117; - fma.rn.ftz.f32 %f131, %f53, %f68, %f118; - fma.rn.ftz.f32 %f132, %f68, %f61, %f119; - ld.param.u64 %rd32, [__cudaparm_kernel_ellipsoid_sig_eps]; - mov.f32 %f133, 0f00000000; // 0 - mov.f32 %f134, 0f00000000; // 0 - mov.f32 %f135, 0f00000000; // 0 - mov.f32 %f136, 0f00000000; // 0 - mov.f32 %f137, 0f00000000; // 0 - mov.f32 %f138, 0f00000000; // 0 - mov.f32 %f139, 0f00000000; // 0 - mov.u64 %rd33, __cuda___cuda_local_var_32950_33_non_const_sp_lj128; -$Lt_0_40962: - // Loop body line 130, nesting depth: 1, estimated iterations: unknown - .loc 17 135 0 - ld.global.s32 %r25, [%rd25+0]; - .loc 17 136 0 - shr.s32 %r26, %r25, 30; - and.b32 %r27, %r26, 3; - cvt.s64.s32 %rd34, %r27; - mul.wide.s32 %rd35, %r27, 4; - add.u64 %rd36, %rd33, %rd35; - ld.shared.f32 %f140, [%rd36+0]; - .loc 17 139 0 - and.b32 %r28, %r25, 1073741823; - cvt.s64.s32 %rd37, %r28; - mul.wide.s32 %rd38, %r28, 16; - add.u64 %rd39, %rd38, %rd11; - ld.global.v4.f32 {%f141,%f142,%f143,%f144}, [%rd39+0]; - .loc 17 153 0 - add.u64 %rd40, %rd38, %rd17; - ld.global.v4.f32 {%f145,%f146,%f147,%f148}, [%rd40+0]; - .loc 17 162 0 - cvt.rzi.ftz.s32.f32 %r29, %f144; - cvt.s64.s32 %rd41, %r29; - mul.wide.s32 %rd42, %r29, 16; - add.u64 %rd43, %rd42, %rd15; - ld.global.v4.f32 {%f149,%f150,%f151,_}, [%rd43+0]; - .loc 16 299 0 - sub.ftz.f32 %f152, %f141, %f17; - mov.f32 %f153, %f152; - .loc 16 300 0 - add.ftz.f32 %f154, %f146, %f146; - add.ftz.f32 %f155, %f148, %f148; - mul.ftz.f32 %f156, %f145, %f145; - mul.ftz.f32 %f157, %f146, %f146; - mul.ftz.f32 %f158, %f147, %f147; - mul.ftz.f32 %f159, %f148, %f148; - add.ftz.f32 %f160, %f147, %f147; - mul.ftz.f32 %f161, %f154, %f147; - mul.ftz.f32 %f162, %f154, %f148; - mul.ftz.f32 %f163, %f155, %f145; - add.ftz.f32 %f164, %f156, %f157; - mul.ftz.f32 %f165, %f160, %f145; - sub.ftz.f32 %f166, %f161, %f163; - sub.ftz.f32 %f167, %f164, %f158; - add.ftz.f32 %f168, %f162, %f165; - mul.ftz.f32 %f169, %f166, %f150; - sub.ftz.f32 %f170, %f167, %f159; - mul.ftz.f32 %f171, %f168, %f151; - mul.ftz.f32 %f172, %f166, %f169; - mul.ftz.f32 %f173, %f170, %f149; - fma.rn.ftz.f32 %f174, %f170, %f173, %f172; - fma.rn.ftz.f32 %f175, %f168, %f171, %f174; - add.ftz.f32 %f176, %f109, %f175; - mov.f32 %f177, %f176; - .loc 16 301 0 - mul.ftz.f32 %f178, %f154, %f145; - sub.ftz.f32 %f179, %f156, %f157; - mul.ftz.f32 %f180, %f160, %f148; - add.ftz.f32 %f181, %f161, %f163; - add.ftz.f32 %f182, %f158, %f179; - sub.ftz.f32 %f183, %f180, %f178; - mul.ftz.f32 %f184, %f181, %f149; - sub.ftz.f32 %f185, %f182, %f159; - mul.ftz.f32 %f186, %f183, %f151; - mul.ftz.f32 %f187, %f185, %f150; - mul.ftz.f32 %f188, %f166, %f187; - fma.rn.ftz.f32 %f189, %f170, %f184, %f188; - fma.rn.ftz.f32 %f190, %f168, %f186, %f189; - add.ftz.f32 %f191, %f127, %f190; - mov.f32 %f192, %f191; - .loc 16 302 0 - sub.ftz.f32 %f193, %f179, %f158; - sub.ftz.f32 %f194, %f162, %f165; - add.ftz.f32 %f195, %f178, %f180; - add.ftz.f32 %f196, %f159, %f193; - mul.ftz.f32 %f197, %f194, %f149; - mul.ftz.f32 %f198, %f195, %f150; - mul.ftz.f32 %f199, %f196, %f151; - mul.ftz.f32 %f200, %f166, %f198; - fma.rn.ftz.f32 %f201, %f170, %f197, %f200; - fma.rn.ftz.f32 %f202, %f168, %f199, %f201; - add.ftz.f32 %f203, %f121, %f202; - mov.f32 %f204, %f203; - .loc 16 303 0 - sub.ftz.f32 %f205, %f142, %f18; - mov.f32 %f206, %f205; - .loc 16 304 0 - mul.ftz.f32 %f207, %f169, %f185; - fma.rn.ftz.f32 %f208, %f173, %f181, %f207; - fma.rn.ftz.f32 %f209, %f171, %f183, %f208; - add.ftz.f32 %f210, %f116, %f209; - mov.f32 %f211, %f210; - .loc 16 305 0 - mul.ftz.f32 %f212, %f185, %f187; - fma.rn.ftz.f32 %f213, %f181, %f184, %f212; - fma.rn.ftz.f32 %f214, %f183, %f186, %f213; - add.ftz.f32 %f215, %f128, %f214; - mov.f32 %f216, %f215; - .loc 16 306 0 - mul.ftz.f32 %f217, %f185, %f198; - fma.rn.ftz.f32 %f218, %f181, %f197, %f217; - fma.rn.ftz.f32 %f219, %f183, %f199, %f218; - add.ftz.f32 %f220, %f122, %f219; - mov.f32 %f221, %f220; - .loc 16 307 0 - sub.ftz.f32 %f222, %f143, %f19; - mov.f32 %f223, %f222; - .loc 16 308 0 - mul.ftz.f32 %f224, %f195, %f169; - fma.rn.ftz.f32 %f225, %f173, %f194, %f224; - fma.rn.ftz.f32 %f226, %f171, %f196, %f225; - add.ftz.f32 %f227, %f110, %f226; - mov.f32 %f228, %f227; - .loc 16 309 0 - mul.ftz.f32 %f229, %f195, %f187; - fma.rn.ftz.f32 %f230, %f184, %f194, %f229; - fma.rn.ftz.f32 %f231, %f186, %f196, %f230; - add.ftz.f32 %f232, %f129, %f231; - mov.f32 %f233, %f232; - .loc 16 310 0 - mul.ftz.f32 %f234, %f195, %f198; - fma.rn.ftz.f32 %f235, %f194, %f197, %f234; - fma.rn.ftz.f32 %f236, %f196, %f199, %f235; - add.ftz.f32 %f237, %f123, %f236; - mov.f32 %f238, %f237; - abs.ftz.f32 %f239, %f210; - abs.ftz.f32 %f240, %f176; - setp.gt.ftz.f32 %p5, %f239, %f240; - @!%p5 bra $Lt_0_41218; - .loc 16 314 0 - mov.f32 %f177, %f210; - mov.f32 %f211, %f176; - .loc 16 315 0 - mov.f32 %f192, %f215; - mov.f32 %f216, %f191; - .loc 16 316 0 - mov.f32 %f204, %f220; - mov.f32 %f221, %f203; - .loc 16 317 0 - mov.f32 %f153, %f205; - mov.f32 %f206, %f152; -$Lt_0_41218: - mov.f32 %f241, %f177; - abs.ftz.f32 %f242, %f241; - abs.ftz.f32 %f243, %f227; - setp.lt.ftz.f32 %p6, %f242, %f243; - @!%p6 bra $Lt_0_41730; - .loc 16 321 0 - mov.f32 %f177, %f227; - mov.f32 %f228, %f241; - .loc 16 322 0 - mov.f32 %f244, %f192; - mov.f32 %f192, %f232; - mov.f32 %f233, %f244; - .loc 16 323 0 - mov.f32 %f245, %f204; - mov.f32 %f204, %f237; - mov.f32 %f238, %f245; - .loc 16 324 0 - mov.f32 %f246, %f153; - mov.f32 %f153, %f222; - mov.f32 %f223, %f246; -$Lt_0_41730: - mov.f32 %f247, %f177; - mov.f32 %f248, 0f00000000; // 0 - setp.neu.ftz.f32 %p7, %f247, %f248; - @!%p7 bra $Lt_0_42498; - bra.uni $Lt_0_43266; -$Lt_0_42498: - mov.f32 %f249, 0f00000000; // 0 - setp.neu.ftz.f32 %p8, %f211, %f249; - @!%p8 bra $Lt_0_43010; - .loc 16 338 0 - mov.f32 %f177, %f211; - mov.f32 %f211, %f247; - .loc 16 339 0 - mov.f32 %f250, %f192; - mov.f32 %f192, %f216; - mov.f32 %f216, %f250; - .loc 16 340 0 - mov.f32 %f251, %f204; - mov.f32 %f204, %f221; - mov.f32 %f221, %f251; - .loc 16 341 0 - mov.f32 %f252, %f153; - mov.f32 %f153, %f206; - mov.f32 %f206, %f252; - bra.uni $Lt_0_43266; -$Lt_0_43010: - mov.f32 %f253, 0f00000000; // 0 - setp.neu.ftz.f32 %p9, %f228, %f253; - @!%p9 bra $Lt_0_43522; - .loc 16 346 0 - mov.f32 %f177, %f228; - mov.f32 %f228, %f247; - .loc 16 347 0 - mov.f32 %f254, %f192; - mov.f32 %f192, %f233; - mov.f32 %f233, %f254; - .loc 16 348 0 - mov.f32 %f255, %f204; - mov.f32 %f204, %f238; - mov.f32 %f238, %f255; - .loc 16 349 0 - mov.f32 %f256, %f153; - mov.f32 %f153, %f223; - mov.f32 %f223, %f256; - bra.uni $Lt_0_43266; -$Lt_0_43522: - .loc 16 352 0 - mov.s32 %r30, 2; - ld.param.u64 %rd44, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd44+0], %r30; -$Lt_0_43266: -$Lt_0_42754: -$Lt_0_42242: - .loc 16 355 0 - div.approx.ftz.f32 %f257, %f211, %f177; - mul.ftz.f32 %f258, %f192, %f257; - sub.ftz.f32 %f259, %f216, %f258; - mov.f32 %f216, %f259; - .loc 16 356 0 - mul.ftz.f32 %f260, %f204, %f257; - sub.ftz.f32 %f261, %f221, %f260; - mov.f32 %f221, %f261; - .loc 16 357 0 - mul.ftz.f32 %f262, %f153, %f257; - sub.ftz.f32 %f263, %f206, %f262; - mov.f32 %f206, %f263; - .loc 16 359 0 - div.approx.ftz.f32 %f264, %f228, %f177; - mul.ftz.f32 %f265, %f192, %f264; - sub.ftz.f32 %f233, %f233, %f265; - .loc 16 360 0 - mul.ftz.f32 %f266, %f204, %f264; - sub.ftz.f32 %f238, %f238, %f266; - .loc 16 361 0 - mul.ftz.f32 %f267, %f153, %f264; - sub.ftz.f32 %f223, %f223, %f267; - abs.ftz.f32 %f268, %f259; - abs.ftz.f32 %f269, %f233; - setp.lt.ftz.f32 %p10, %f268, %f269; - @!%p10 bra $Lt_0_43778; - .loc 16 366 0 - mov.f32 %f216, %f233; - mov.f32 %f233, %f259; - .loc 16 367 0 - mov.f32 %f221, %f238; - mov.f32 %f238, %f261; - .loc 16 368 0 - mov.f32 %f206, %f223; - mov.f32 %f223, %f263; -$Lt_0_43778: - mov.f32 %f270, %f216; - mov.f32 %f271, 0f00000000; // 0 - setp.neu.ftz.f32 %p11, %f270, %f271; - @!%p11 bra $Lt_0_44546; - bra.uni $Lt_0_44802; -$Lt_0_44546: - mov.f32 %f272, 0f00000000; // 0 - setp.neu.ftz.f32 %p12, %f233, %f272; - @!%p12 bra $Lt_0_44802; - .loc 16 383 0 - mov.f32 %f216, %f233; - mov.f32 %f233, %f270; - .loc 16 384 0 - mov.f32 %f273, %f221; - mov.f32 %f221, %f238; - mov.f32 %f238, %f273; - .loc 16 385 0 - mov.f32 %f274, %f206; - mov.f32 %f206, %f223; - mov.f32 %f223, %f274; -$Lt_0_44802: -$Lt_0_44290: - .loc 16 390 0 - div.approx.ftz.f32 %f275, %f233, %f216; - mul.ftz.f32 %f276, %f221, %f275; - sub.ftz.f32 %f238, %f238, %f276; - .loc 16 391 0 - mul.ftz.f32 %f277, %f206, %f275; - sub.ftz.f32 %f223, %f223, %f277; - mov.f32 %f278, 0f00000000; // 0 - setp.eq.ftz.f32 %p13, %f238, %f278; - @!%p13 bra $Lt_0_45314; - .loc 16 394 0 - mov.s32 %r31, 2; - ld.param.u64 %rd45, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd45+0], %r31; -$Lt_0_45314: - .loc 17 179 0 - div.approx.ftz.f32 %f279, %f223, %f238; - mul.ftz.f32 %f280, %f205, %f205; - mul.ftz.f32 %f281, %f279, %f221; - fma.rn.ftz.f32 %f282, %f152, %f152, %f280; - sub.ftz.f32 %f283, %f206, %f281; - fma.rn.ftz.f32 %f284, %f222, %f222, %f282; - div.approx.ftz.f32 %f285, %f283, %f216; - rsqrt.approx.ftz.f32 %f286, %f284; - mul.ftz.f32 %f287, %f285, %f192; - fma.rn.ftz.f32 %f288, %f204, %f279, %f287; - sub.ftz.f32 %f289, %f153, %f288; - div.approx.ftz.f32 %f290, %f289, %f177; - mul.ftz.f32 %f291, %f286, %f290; - .loc 17 191 0 - mul.ftz.f32 %f292, %f285, %f286; - mul.ftz.f32 %f293, %f286, %f205; - mul.ftz.f32 %f294, %f286, %f152; - mul.ftz.f32 %f295, %f286, %f222; - mul.ftz.f32 %f296, %f279, %f286; - mul.ftz.f32 %f297, %f292, %f293; - fma.rn.ftz.f32 %f298, %f294, %f291, %f297; - fma.rn.ftz.f32 %f299, %f295, %f296, %f298; - mov.f32 %f300, 0f3f000000; // 0.5 - mul.ftz.f32 %f301, %f299, %f300; - rsqrt.approx.ftz.f32 %f302, %f301; - .loc 17 195 0 - rcp.approx.ftz.f32 %f303, %f286; - mul.ftz.f32 %f304, %f303, %f291; - .loc 17 200 0 - add.s32 %r32, %r29, %r24; - cvt.s64.s32 %rd46, %r32; - mul.wide.s32 %rd47, %r32, 8; - add.u64 %rd48, %rd32, %rd47; - ld.global.v2.f32 {%f305,%f306}, [%rd48+0]; - .loc 17 202 0 - sub.ftz.f32 %f307, %f303, %f302; - ld.global.f32 %f308, [%rd1+0]; - fma.rn.ftz.f32 %f309, %f308, %f305, %f307; - .loc 17 209 0 - div.approx.ftz.f32 %f310, %f305, %f309; - mul.ftz.f32 %f311, %f310, %f310; - mul.ftz.f32 %f312, %f310, %f311; - mul.ftz.f32 %f313, %f312, %f312; - mul.ftz.f32 %f314, %f313, %f313; - mul.ftz.f32 %f315, %f310, %f313; - add.ftz.f32 %f316, %f314, %f314; - mul.ftz.f32 %f317, %f310, %f316; - sub.ftz.f32 %f318, %f317, %f315; - div.approx.ftz.f32 %f319, %f318, %f305; - mov.f32 %f320, 0f41c00000; // 24 - mul.ftz.f32 %f321, %f319, %f320; - mul.ftz.f32 %f322, %f306, %f321; - .loc 17 214 0 - mul.ftz.f32 %f323, %f302, %f322; - mul.ftz.f32 %f324, %f323, %f302; - mul.ftz.f32 %f325, %f324, %f302; - mov.f32 %f326, 0f3f000000; // 0.5 - mul.ftz.f32 %f327, %f325, %f326; - mul.ftz.f32 %f328, %f327, %f286; - mul.ftz.f32 %f329, %f292, %f303; - mul.ftz.f32 %f330, %f296, %f303; - mul.ftz.f32 %f331, %f286, %f328; - mul.ftz.f32 %f332, %f293, %f329; - fma.rn.ftz.f32 %f333, %f294, %f304, %f332; - fma.rn.ftz.f32 %f334, %f295, %f330, %f333; - mul.ftz.f32 %f335, %f294, %f334; - sub.ftz.f32 %f336, %f304, %f335; - mul.ftz.f32 %f337, %f331, %f336; - fma.rn.ftz.f32 %f338, %f294, %f322, %f337; - .loc 17 215 0 - mul.ftz.f32 %f339, %f293, %f334; - sub.ftz.f32 %f340, %f329, %f339; - mul.ftz.f32 %f341, %f331, %f340; - fma.rn.ftz.f32 %f342, %f293, %f322, %f341; - .loc 17 216 0 - mul.ftz.f32 %f343, %f295, %f334; - sub.ftz.f32 %f344, %f330, %f343; - mul.ftz.f32 %f345, %f331, %f344; - fma.rn.ftz.f32 %f346, %f295, %f322, %f345; - .loc 17 226 0 - mul.ftz.f32 %f347, %f122, %f329; - mul.ftz.f32 %f348, %f330, %f331; - mul.ftz.f32 %f349, %f329, %f331; - mul.ftz.f32 %f350, %f329, %f128; - fma.rn.ftz.f32 %f351, %f304, %f121, %f347; - fma.rn.ftz.f32 %f352, %f304, %f127, %f350; - fma.rn.ftz.f32 %f353, %f330, %f123, %f351; - fma.rn.ftz.f32 %f354, %f330, %f129, %f352; - mul.ftz.f32 %f355, %f348, %f354; - neg.ftz.f32 %f356, %f349; - fma.rn.ftz.f32 %f357, %f356, %f353, %f355; - mul.ftz.f32 %f358, %f116, %f329; - mul.ftz.f32 %f359, %f331, %f304; - fma.rn.ftz.f32 %f360, %f109, %f304, %f358; - fma.rn.ftz.f32 %f361, %f330, %f110, %f360; - mul.ftz.f32 %f362, %f359, %f353; - neg.ftz.f32 %f363, %f348; - fma.rn.ftz.f32 %f364, %f361, %f363, %f362; - mul.ftz.f32 %f365, %f349, %f361; - neg.ftz.f32 %f366, %f359; - fma.rn.ftz.f32 %f367, %f366, %f354, %f365; - .loc 17 233 0 - ld.global.f32 %f368, [%rd31+0]; - mul.lo.u64 %rd49, %rd41, 4; - add.u64 %rd50, %rd29, %rd49; - ld.global.f32 %f369, [%rd50+0]; - add.ftz.f32 %f370, %f368, %f368; - mul.ftz.f32 %f371, %f369, %f370; - .loc 17 234 0 - mul.ftz.f32 %f372, %f210, %f203; - mul.ftz.f32 %f373, %f227, %f203; - mul.ftz.f32 %f374, %f220, %f176; - mul.ftz.f32 %f375, %f210, %f191; - mul.ftz.f32 %f376, %f227, %f191; - mul.ftz.f32 %f377, %f215, %f176; - mul.ftz.f32 %f378, %f374, %f232; - mul.ftz.f32 %f379, %f237, %f377; - sub.ftz.f32 %f380, %f379, %f378; - mul.ftz.f32 %f381, %f237, %f375; - sub.ftz.f32 %f382, %f380, %f381; - fma.rn.ftz.f32 %f383, %f232, %f372, %f382; - fma.rn.ftz.f32 %f384, %f220, %f376, %f383; - mul.ftz.f32 %f385, %f215, %f373; - sub.ftz.f32 %f386, %f384, %f385; - .loc 17 235 0 - ld.global.f32 %f387, [%rd1+4]; - .loc 17 240 0 - mul.ftz.f32 %f388, %f232, %f372; - sub.ftz.f32 %f389, %f388, %f378; - mul.ftz.f32 %f390, %f215, %f373; - sub.ftz.f32 %f391, %f389, %f390; - fma.rn.ftz.f32 %f392, %f220, %f376, %f391; - mul.ftz.f32 %f393, %f237, %f375; - sub.ftz.f32 %f394, %f392, %f393; - fma.rn.ftz.f32 %f395, %f237, %f377, %f394; - .loc 17 241 0 - div.approx.ftz.f32 %f396, %f371, %f386; - lg2.approx.ftz.f32 %f397, %f396; - mul.ftz.f32 %f398, %f397, %f387; - ex2.approx.ftz.f32 %f399, %f398; - mul.ftz.f32 %f400, %f399, %f387; - neg.ftz.f32 %f401, %f400; - .loc 17 274 0 - add.u64 %rd51, %rd42, %rd19; - ld.global.v4.f32 {%f402,%f403,%f404,_}, [%rd51+0]; - .loc 16 299 0 - mul.ftz.f32 %f405, %f294, %f303; - mov.f32 %f153, %f405; - .loc 16 300 0 - mul.ftz.f32 %f406, %f166, %f403; - mul.ftz.f32 %f407, %f168, %f404; - mul.ftz.f32 %f408, %f166, %f406; - mul.ftz.f32 %f409, %f170, %f402; - fma.rn.ftz.f32 %f410, %f170, %f409, %f408; - fma.rn.ftz.f32 %f411, %f168, %f407, %f410; - add.ftz.f32 %f412, %f111, %f411; - mov.f32 %f177, %f412; - .loc 16 301 0 - mul.ftz.f32 %f413, %f181, %f402; - mul.ftz.f32 %f414, %f183, %f404; - mul.ftz.f32 %f415, %f185, %f403; - mul.ftz.f32 %f416, %f166, %f415; - fma.rn.ftz.f32 %f417, %f170, %f413, %f416; - fma.rn.ftz.f32 %f418, %f168, %f414, %f417; - add.ftz.f32 %f419, %f130, %f418; - mov.f32 %f192, %f419; - .loc 16 302 0 - mul.ftz.f32 %f420, %f194, %f402; - mul.ftz.f32 %f421, %f195, %f403; - mul.ftz.f32 %f422, %f196, %f404; - mul.ftz.f32 %f423, %f166, %f421; - fma.rn.ftz.f32 %f424, %f170, %f420, %f423; - fma.rn.ftz.f32 %f425, %f168, %f422, %f424; - add.ftz.f32 %f426, %f124, %f425; - mov.f32 %f204, %f426; - .loc 16 303 0 - mul.ftz.f32 %f427, %f293, %f303; - mov.f32 %f206, %f427; - .loc 16 304 0 - mul.ftz.f32 %f428, %f406, %f185; - fma.rn.ftz.f32 %f429, %f409, %f181, %f428; - fma.rn.ftz.f32 %f430, %f407, %f183, %f429; - add.ftz.f32 %f431, %f120, %f430; - mov.f32 %f211, %f431; - .loc 16 305 0 - mul.ftz.f32 %f432, %f185, %f415; - fma.rn.ftz.f32 %f433, %f181, %f413, %f432; - fma.rn.ftz.f32 %f434, %f183, %f414, %f433; - add.ftz.f32 %f216, %f131, %f434; - .loc 16 306 0 - mul.ftz.f32 %f435, %f185, %f421; - fma.rn.ftz.f32 %f436, %f181, %f420, %f435; - fma.rn.ftz.f32 %f437, %f183, %f422, %f436; - add.ftz.f32 %f221, %f125, %f437; - .loc 16 307 0 - mul.ftz.f32 %f438, %f295, %f303; - mov.f32 %f223, %f438; - .loc 16 308 0 - mul.ftz.f32 %f439, %f195, %f406; - fma.rn.ftz.f32 %f440, %f409, %f194, %f439; - fma.rn.ftz.f32 %f441, %f407, %f196, %f440; - add.ftz.f32 %f442, %f112, %f441; - mov.f32 %f228, %f442; - .loc 16 309 0 - mul.ftz.f32 %f443, %f195, %f415; - fma.rn.ftz.f32 %f444, %f413, %f194, %f443; - fma.rn.ftz.f32 %f445, %f414, %f196, %f444; - add.ftz.f32 %f233, %f132, %f445; - .loc 16 310 0 - mul.ftz.f32 %f446, %f195, %f421; - fma.rn.ftz.f32 %f447, %f194, %f420, %f446; - fma.rn.ftz.f32 %f448, %f196, %f422, %f447; - add.ftz.f32 %f238, %f126, %f448; - abs.ftz.f32 %f449, %f431; - abs.ftz.f32 %f450, %f412; - setp.gt.ftz.f32 %p14, %f449, %f450; - @!%p14 bra $Lt_0_45826; - .loc 16 314 0 - mov.f32 %f177, %f431; - mov.f32 %f211, %f412; - .loc 16 315 0 - mov.f32 %f192, %f216; - mov.f32 %f216, %f419; - .loc 16 316 0 - mov.f32 %f204, %f221; - mov.f32 %f221, %f426; - .loc 16 317 0 - mov.f32 %f153, %f427; - mov.f32 %f206, %f405; -$Lt_0_45826: - mov.f32 %f451, %f177; - abs.ftz.f32 %f452, %f451; - abs.ftz.f32 %f453, %f442; - setp.lt.ftz.f32 %p15, %f452, %f453; - @!%p15 bra $Lt_0_46338; - .loc 16 321 0 - mov.f32 %f177, %f442; - mov.f32 %f228, %f451; - .loc 16 322 0 - mov.f32 %f454, %f192; - mov.f32 %f192, %f233; - mov.f32 %f233, %f454; - .loc 16 323 0 - mov.f32 %f455, %f204; - mov.f32 %f204, %f238; - mov.f32 %f238, %f455; - .loc 16 324 0 - mov.f32 %f456, %f153; - mov.f32 %f153, %f438; - mov.f32 %f223, %f456; -$Lt_0_46338: - mov.f32 %f457, %f177; - mov.f32 %f458, 0f00000000; // 0 - setp.neu.ftz.f32 %p16, %f457, %f458; - @!%p16 bra $Lt_0_47106; - bra.uni $Lt_0_47874; -$Lt_0_47106: - mov.f32 %f459, 0f00000000; // 0 - setp.neu.ftz.f32 %p17, %f211, %f459; - @!%p17 bra $Lt_0_47618; - .loc 16 338 0 - mov.f32 %f177, %f211; - mov.f32 %f211, %f457; - .loc 16 339 0 - mov.f32 %f460, %f192; - mov.f32 %f192, %f216; - mov.f32 %f216, %f460; - .loc 16 340 0 - mov.f32 %f461, %f204; - mov.f32 %f204, %f221; - mov.f32 %f221, %f461; - .loc 16 341 0 - mov.f32 %f462, %f153; - mov.f32 %f153, %f206; - mov.f32 %f206, %f462; - bra.uni $Lt_0_47874; -$Lt_0_47618: - mov.f32 %f463, 0f00000000; // 0 - setp.neu.ftz.f32 %p18, %f228, %f463; - @!%p18 bra $Lt_0_48130; - .loc 16 346 0 - mov.f32 %f177, %f228; - mov.f32 %f228, %f457; - .loc 16 347 0 - mov.f32 %f464, %f192; - mov.f32 %f192, %f233; - mov.f32 %f233, %f464; - .loc 16 348 0 - mov.f32 %f465, %f204; - mov.f32 %f204, %f238; - mov.f32 %f238, %f465; - .loc 16 349 0 - mov.f32 %f466, %f153; - mov.f32 %f153, %f223; - mov.f32 %f223, %f466; - bra.uni $Lt_0_47874; -$Lt_0_48130: - .loc 16 352 0 - mov.s32 %r33, 2; - ld.param.u64 %rd52, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd52+0], %r33; -$Lt_0_47874: -$Lt_0_47362: -$Lt_0_46850: - .loc 16 355 0 - div.approx.ftz.f32 %f467, %f211, %f177; - mul.ftz.f32 %f468, %f192, %f467; - sub.ftz.f32 %f469, %f216, %f468; - mov.f32 %f216, %f469; - .loc 16 356 0 - mul.ftz.f32 %f470, %f204, %f467; - sub.ftz.f32 %f471, %f221, %f470; - mov.f32 %f221, %f471; - .loc 16 357 0 - mul.ftz.f32 %f472, %f153, %f467; - sub.ftz.f32 %f473, %f206, %f472; - mov.f32 %f206, %f473; - .loc 16 359 0 - div.approx.ftz.f32 %f474, %f228, %f177; - mul.ftz.f32 %f475, %f192, %f474; - sub.ftz.f32 %f233, %f233, %f475; - .loc 16 360 0 - mul.ftz.f32 %f476, %f204, %f474; - sub.ftz.f32 %f238, %f238, %f476; - .loc 16 361 0 - mul.ftz.f32 %f477, %f153, %f474; - sub.ftz.f32 %f223, %f223, %f477; - abs.ftz.f32 %f478, %f469; - abs.ftz.f32 %f479, %f233; - setp.lt.ftz.f32 %p19, %f478, %f479; - @!%p19 bra $Lt_0_48386; - .loc 16 366 0 - mov.f32 %f216, %f233; - mov.f32 %f233, %f469; - .loc 16 367 0 - mov.f32 %f221, %f238; - mov.f32 %f238, %f471; - .loc 16 368 0 - mov.f32 %f206, %f223; - mov.f32 %f223, %f473; -$Lt_0_48386: - mov.f32 %f480, %f216; - mov.f32 %f481, 0f00000000; // 0 - setp.neu.ftz.f32 %p20, %f480, %f481; - @!%p20 bra $Lt_0_49154; - bra.uni $Lt_0_49410; -$Lt_0_49154: - mov.f32 %f482, 0f00000000; // 0 - setp.neu.ftz.f32 %p21, %f233, %f482; - @!%p21 bra $Lt_0_49410; - .loc 16 383 0 - mov.f32 %f216, %f233; - mov.f32 %f233, %f480; - .loc 16 384 0 - mov.f32 %f483, %f221; - mov.f32 %f221, %f238; - mov.f32 %f238, %f483; - .loc 16 385 0 - mov.f32 %f484, %f206; - mov.f32 %f206, %f223; - mov.f32 %f223, %f484; -$Lt_0_49410: -$Lt_0_48898: - .loc 16 390 0 - div.approx.ftz.f32 %f485, %f233, %f216; - mul.ftz.f32 %f486, %f221, %f485; - sub.ftz.f32 %f238, %f238, %f486; - .loc 16 391 0 - mul.ftz.f32 %f487, %f206, %f485; - sub.ftz.f32 %f223, %f223, %f487; - mov.f32 %f488, 0f00000000; // 0 - setp.eq.ftz.f32 %p22, %f238, %f488; - @!%p22 bra $Lt_0_49922; - .loc 16 394 0 - mov.s32 %r34, 2; - ld.param.u64 %rd53, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd53+0], %r34; -$Lt_0_49922: - .loc 17 286 0 - div.approx.ftz.f32 %f489, %f223, %f238; - mul.ftz.f32 %f490, %f489, %f221; - sub.ftz.f32 %f491, %f206, %f490; - div.approx.ftz.f32 %f492, %f491, %f216; - mul.ftz.f32 %f493, %f492, %f192; - fma.rn.ftz.f32 %f494, %f204, %f489, %f493; - sub.ftz.f32 %f495, %f153, %f494; - div.approx.ftz.f32 %f496, %f495, %f177; - mul.ftz.f32 %f497, %f286, %f496; - .loc 17 293 0 - mul.ftz.f32 %f498, %f492, %f286; - mul.ftz.f32 %f499, %f489, %f286; - mul.ftz.f32 %f500, %f286, %f405; - mul.ftz.f32 %f501, %f286, %f427; - mul.ftz.f32 %f502, %f286, %f438; - mul.ftz.f32 %f503, %f498, %f501; - fma.rn.ftz.f32 %f504, %f500, %f497, %f503; - fma.rn.ftz.f32 %f505, %f502, %f499, %f504; - add.ftz.f32 %f506, %f505, %f505; - ld.global.f32 %f507, [%rd1+8]; - .loc 17 296 0 - mul.ftz.f32 %f508, %f303, %f497; - .loc 17 301 0 - mov.f32 %f509, 0fbf800000; // -1 - add.ftz.f32 %f510, %f507, %f509; - lg2.approx.ftz.f32 %f511, %f506; - mul.ftz.f32 %f512, %f511, %f507; - ex2.approx.ftz.f32 %f513, %f512; - mov.f32 %f514, 0fc0800000; // -4 - mul.ftz.f32 %f515, %f286, %f514; - mul.ftz.f32 %f516, %f286, %f515; - lg2.approx.ftz.f32 %f517, %f513; - div.approx.ftz.f32 %f518, %f510, %f507; - mul.ftz.f32 %f519, %f517, %f518; - ex2.approx.ftz.f32 %f520, %f519; - mul.ftz.f32 %f521, %f516, %f507; - mul.ftz.f32 %f522, %f520, %f521; - .loc 17 303 0 - mul.ftz.f32 %f523, %f498, %f303; - mul.ftz.f32 %f524, %f499, %f303; - mul.ftz.f32 %f525, %f523, %f501; - fma.rn.ftz.f32 %f526, %f500, %f508, %f525; - fma.rn.ftz.f32 %f527, %f502, %f524, %f526; - mul.ftz.f32 %f528, %f500, %f527; - sub.ftz.f32 %f529, %f508, %f528; - mul.ftz.f32 %f530, %f522, %f529; - .loc 17 304 0 - mul.ftz.f32 %f531, %f501, %f527; - sub.ftz.f32 %f532, %f523, %f531; - mul.ftz.f32 %f533, %f522, %f532; - .loc 17 305 0 - mul.ftz.f32 %f534, %f502, %f527; - sub.ftz.f32 %f535, %f524, %f534; - mul.ftz.f32 %f536, %f522, %f535; - .loc 17 310 0 - mul.ftz.f32 %f537, %f125, %f523; - mul.ftz.f32 %f538, %f523, %f131; - fma.rn.ftz.f32 %f539, %f508, %f124, %f537; - fma.rn.ftz.f32 %f540, %f508, %f130, %f538; - fma.rn.ftz.f32 %f541, %f524, %f126, %f539; - fma.rn.ftz.f32 %f542, %f524, %f132, %f540; - mul.ftz.f32 %f543, %f523, %f541; - mul.ftz.f32 %f544, %f542, %f524; - sub.ftz.f32 %f545, %f544, %f543; - mul.ftz.f32 %f546, %f120, %f523; - fma.rn.ftz.f32 %f547, %f111, %f508, %f546; - fma.rn.ftz.f32 %f548, %f524, %f112, %f547; - mul.ftz.f32 %f549, %f524, %f548; - mul.ftz.f32 %f550, %f508, %f541; - sub.ftz.f32 %f551, %f550, %f549; - mul.ftz.f32 %f552, %f542, %f508; - mul.ftz.f32 %f553, %f548, %f523; - sub.ftz.f32 %f554, %f553, %f552; - .loc 17 312 0 - mul.ftz.f32 %f555, %f516, %f545; - .loc 17 313 0 - mul.ftz.f32 %f556, %f516, %f551; - .loc 17 314 0 - mul.ftz.f32 %f557, %f516, %f554; - .loc 16 396 0 - mov.f32 %f558, 0f40800000; // 4 - mul.ftz.f32 %f559, %f306, %f558; - mul.ftz.f32 %f560, %f399, %f140; - sub.ftz.f32 %f561, %f314, %f313; - mul.ftz.f32 %f562, %f513, %f560; - mul.ftz.f32 %f563, %f559, %f561; - fma.rn.ftz.f32 %f564, %f563, %f562, %f139; - selp.f32 %f139, %f564, %f139, %p3; - mul.ftz.f32 %f565, %f562, %f338; - mul.ftz.f32 %f566, %f562, %f342; - mul.ftz.f32 %f567, %f562, %f346; - mul.ftz.f32 %f568, %f399, %f563; - mul.ftz.f32 %f569, %f568, %f140; - neg.ftz.f32 %f570, %f569; - mul.ftz.f32 %f571, %f530, %f570; - sub.ftz.f32 %f572, %f571, %f565; - mul.ftz.f32 %f573, %f533, %f570; - sub.ftz.f32 %f574, %f573, %f566; - mul.ftz.f32 %f575, %f536, %f570; - sub.ftz.f32 %f576, %f575, %f567; - @!%p4 bra $Lt_0_50690; - .loc 17 326 0 - add.ftz.f32 %f138, %f572, %f138; - .loc 17 327 0 - mul.ftz.f32 %f577, %f303, %f500; - neg.ftz.f32 %f578, %f577; - mov.f32 %f579, %f6; - fma.rn.ftz.f32 %f580, %f578, %f572, %f579; - mov.f32 %f6, %f580; - .loc 17 329 0 - add.ftz.f32 %f137, %f574, %f137; - .loc 17 330 0 - mul.ftz.f32 %f581, %f303, %f501; - neg.ftz.f32 %f582, %f581; - mov.f32 %f583, %f8; - fma.rn.ftz.f32 %f584, %f582, %f574, %f583; - mov.f32 %f8, %f584; - .loc 17 331 0 - mov.f32 %f585, %f12; - fma.rn.ftz.f32 %f586, %f578, %f574, %f585; - mov.f32 %f12, %f586; - .loc 17 333 0 - add.ftz.f32 %f136, %f576, %f136; - .loc 17 334 0 - mov.f32 %f587, %f10; - mul.ftz.f32 %f588, %f303, %f502; - neg.ftz.f32 %f589, %f588; - fma.rn.ftz.f32 %f590, %f589, %f576, %f587; - mov.f32 %f10, %f590; - .loc 17 335 0 - mov.f32 %f591, %f14; - fma.rn.ftz.f32 %f592, %f578, %f576, %f591; - mov.f32 %f14, %f592; - .loc 17 336 0 - fma.rn.ftz.f32 %f15, %f582, %f576, %f15; - mov.f32 %f16, %f15; - bra.uni $Lt_0_50434; -$Lt_0_50690: - .loc 17 338 0 - add.ftz.f32 %f138, %f572, %f138; - .loc 17 339 0 - add.ftz.f32 %f137, %f574, %f137; - .loc 17 340 0 - add.ftz.f32 %f136, %f576, %f136; -$Lt_0_50434: - .loc 17 347 0 - rcp.approx.ftz.f32 %f593, %f395; - mul.ftz.f32 %f594, %f513, %f399; - mul.ftz.f32 %f595, %f594, %f140; - neg.ftz.f32 %f596, %f595; - mul.ftz.f32 %f597, %f513, %f563; - mul.ftz.f32 %f598, %f54, %f176; - mul.ftz.f32 %f599, %f60, %f176; - add.ftz.f32 %f600, %f176, %f176; - mul.ftz.f32 %f601, %f52, %f176; - mul.ftz.f32 %f602, %f47, %f176; - mul.ftz.f32 %f603, %f69, %f176; - mul.ftz.f32 %f604, %f61, %f176; - add.ftz.f32 %f605, %f227, %f227; - mul.ftz.f32 %f606, %f46, %f227; - mul.ftz.f32 %f607, %f59, %f227; - mul.ftz.f32 %f608, %f52, %f227; - mul.ftz.f32 %f609, %f47, %f227; - mul.ftz.f32 %f610, %f54, %f210; - add.ftz.f32 %f611, %f210, %f210; - mul.ftz.f32 %f612, %f46, %f210; - mul.ftz.f32 %f613, %f52, %f210; - mul.ftz.f32 %f614, %f51, %f210; - mul.ftz.f32 %f615, %f84, %f210; - mul.ftz.f32 %f616, %f46, %f203; - mul.ftz.f32 %f617, %f59, %f203; - mul.ftz.f32 %f618, %f51, %f203; - mul.ftz.f32 %f619, %f69, %f203; - mul.ftz.f32 %f620, %f227, %f220; - mul.ftz.f32 %f621, %f61, %f220; - add.ftz.f32 %f622, %f237, %f237; - mul.ftz.f32 %f623, %f237, %f210; - mul.ftz.f32 %f624, %f59, %f237; - mul.ftz.f32 %f625, %f597, %f140; - mul.ftz.f32 %f626, %f600, %f237; - mul.ftz.f32 %f627, %f60, %f605; - mul.ftz.f32 %f628, %f605, %f203; - mul.ftz.f32 %f629, %f237, %f191; - mul.ftz.f32 %f630, %f54, %f191; - mul.ftz.f32 %f631, %f220, %f191; - mul.ftz.f32 %f632, %f61, %f191; - add.ftz.f32 %f633, %f215, %f215; - mul.ftz.f32 %f634, %f227, %f215; - mul.ftz.f32 %f635, %f232, %f210; - mul.ftz.f32 %f636, %f53, %f232; - mul.ftz.f32 %f637, %f611, %f191; - mul.ftz.f32 %f638, %f52, %f611; - mul.ftz.f32 %f639, %f616, %f215; - mul.ftz.f32 %f640, %f617, %f215; - mul.ftz.f32 %f641, %f618, %f232; - mul.ftz.f32 %f642, %f618, %f215; - mul.ftz.f32 %f643, %f622, %f176; - mul.ftz.f32 %f644, %f624, %f191; - neg.ftz.f32 %f645, %f625; - mul.ftz.f32 %f646, %f46, %f629; - mul.ftz.f32 %f647, %f633, %f176; - mul.ftz.f32 %f648, %f61, %f633; - mul.ftz.f32 %f649, %f46, %f631; - sub.ftz.f32 %f650, %f649, %f639; - mul.ftz.f32 %f651, %f59, %f631; - sub.ftz.f32 %f652, %f651, %f640; - mul.ftz.f32 %f653, %f51, %f629; - sub.ftz.f32 %f654, %f653, %f641; - mul.ftz.f32 %f655, %f51, %f631; - sub.ftz.f32 %f656, %f655, %f642; - mul.ftz.f32 %f657, %f232, %f617; - sub.ftz.f32 %f658, %f657, %f644; - mul.ftz.f32 %f659, %f232, %f616; - sub.ftz.f32 %f660, %f659, %f646; - mul.ftz.f32 %f661, %f60, %f374; - sub.ftz.f32 %f662, %f650, %f661; - mul.ftz.f32 %f663, %f47, %f374; - sub.ftz.f32 %f664, %f652, %f663; - mul.ftz.f32 %f665, %f237, %f603; - sub.ftz.f32 %f666, %f654, %f665; - mul.ftz.f32 %f667, %f53, %f374; - sub.ftz.f32 %f668, %f656, %f667; - fma.rn.ftz.f32 %f669, %f47, %f626, %f658; - fma.rn.ftz.f32 %f670, %f60, %f643, %f660; - fma.rn.ftz.f32 %f671, %f60, %f372, %f662; - fma.rn.ftz.f32 %f672, %f47, %f372, %f664; - fma.rn.ftz.f32 %f673, %f176, %f621, %f666; - fma.rn.ftz.f32 %f674, %f53, %f372, %f668; - mul.ftz.f32 %f675, %f220, %f601; - sub.ftz.f32 %f676, %f669, %f675; - mul.ftz.f32 %f677, %f220, %f598; - sub.ftz.f32 %f678, %f670, %f677; - fma.rn.ftz.f32 %f679, %f54, %f647, %f671; - mul.ftz.f32 %f680, %f232, %f602; - sub.ftz.f32 %f681, %f672, %f680; - fma.rn.ftz.f32 %f682, %f227, %f619, %f673; - mul.ftz.f32 %f683, %f51, %f634; - sub.ftz.f32 %f684, %f674, %f683; - mul.ftz.f32 %f685, %f47, %f628; - sub.ftz.f32 %f686, %f676, %f685; - mul.ftz.f32 %f687, %f203, %f627; - sub.ftz.f32 %f688, %f678, %f687; - mul.ftz.f32 %f689, %f232, %f599; - sub.ftz.f32 %f690, %f679, %f689; - mul.ftz.f32 %f691, %f59, %f634; - sub.ftz.f32 %f692, %f681, %f691; - fma.rn.ftz.f32 %f693, %f237, %f614, %f682; - mul.ftz.f32 %f694, %f176, %f636; - sub.ftz.f32 %f695, %f684, %f694; - fma.rn.ftz.f32 %f696, %f203, %f613, %f686; - mul.ftz.f32 %f697, %f46, %f623; - sub.ftz.f32 %f698, %f688, %f697; - fma.rn.ftz.f32 %f699, %f60, %f376, %f690; - fma.rn.ftz.f32 %f700, %f52, %f647, %f692; - mul.ftz.f32 %f701, %f61, %f372; - sub.ftz.f32 %f702, %f693, %f701; - fma.rn.ftz.f32 %f703, %f176, %f648, %f695; - mul.ftz.f32 %f704, %f59, %f623; - sub.ftz.f32 %f705, %f696, %f704; - fma.rn.ftz.f32 %f706, %f46, %f620, %f698; - mul.ftz.f32 %f707, %f215, %f606; - sub.ftz.f32 %f708, %f699, %f707; - mul.ftz.f32 %f709, %f191, %f638; - sub.ftz.f32 %f710, %f700, %f709; - mul.ftz.f32 %f711, %f51, %f620; - sub.ftz.f32 %f712, %f702, %f711; - fma.rn.ftz.f32 %f713, %f51, %f635, %f703; - fma.rn.ftz.f32 %f714, %f220, %f607, %f705; - fma.rn.ftz.f32 %f715, %f203, %f610, %f706; - mul.ftz.f32 %f716, %f54, %f637; - sub.ftz.f32 %f717, %f708, %f716; - fma.rn.ftz.f32 %f718, %f59, %f635, %f710; - fma.rn.ftz.f32 %f719, %f232, %f604, %f712; - fma.rn.ftz.f32 %f720, %f53, %f376, %f713; - fma.rn.ftz.f32 %f721, %f191, %f608, %f714; - mul.ftz.f32 %f722, %f232, %f598; - sub.ftz.f32 %f723, %f715, %f722; - fma.rn.ftz.f32 %f724, %f232, %f612, %f717; - fma.rn.ftz.f32 %f725, %f191, %f609, %f718; - mul.ftz.f32 %f726, %f227, %f632; - sub.ftz.f32 %f727, %f726, %f719; - mul.ftz.f32 %f728, %f191, %f615; - sub.ftz.f32 %f729, %f720, %f728; - mul.ftz.f32 %f730, %f232, %f601; - sub.ftz.f32 %f731, %f721, %f730; - fma.rn.ftz.f32 %f732, %f227, %f630, %f723; - mul.ftz.f32 %f733, %f724, %f22; - mul.ftz.f32 %f734, %f725, %f21; - mul.ftz.f32 %f735, %f727, %f23; - mul.ftz.f32 %f736, %f729, %f23; - mul.ftz.f32 %f737, %f731, %f21; - mul.ftz.f32 %f738, %f732, %f22; - mul.ftz.f32 %f739, %f593, %f733; - mul.ftz.f32 %f740, %f593, %f734; - mul.ftz.f32 %f741, %f593, %f735; - mul.ftz.f32 %f742, %f593, %f736; - mul.ftz.f32 %f743, %f593, %f737; - mul.ftz.f32 %f744, %f593, %f738; - mul.ftz.f32 %f745, %f739, %f401; - mul.ftz.f32 %f746, %f740, %f401; - mul.ftz.f32 %f747, %f741, %f401; - mul.ftz.f32 %f748, %f742, %f401; - mul.ftz.f32 %f749, %f743, %f401; - mul.ftz.f32 %f750, %f744, %f401; - mul.ftz.f32 %f751, %f569, %f555; - mul.ftz.f32 %f752, %f52, %f749; - mul.ftz.f32 %f753, %f47, %f746; - sub.ftz.f32 %f754, %f753, %f752; - mul.ftz.f32 %f755, %f54, %f750; - mul.ftz.f32 %f756, %f745, %f60; - sub.ftz.f32 %f757, %f756, %f755; - add.ftz.f32 %f758, %f754, %f757; - mul.ftz.f32 %f759, %f61, %f747; - mul.ftz.f32 %f760, %f748, %f53; - sub.ftz.f32 %f761, %f760, %f759; - add.ftz.f32 %f762, %f758, %f761; - mul.ftz.f32 %f763, %f762, %f645; - sub.ftz.f32 %f764, %f763, %f751; - fma.rn.ftz.f32 %f765, %f357, %f596, %f764; - add.ftz.f32 %f135, %f135, %f765; - .loc 17 348 0 - mul.ftz.f32 %f766, %f54, %f227; - mul.ftz.f32 %f767, %f53, %f210; - mul.ftz.f32 %f768, %f47, %f203; - mul.ftz.f32 %f769, %f60, %f203; - add.ftz.f32 %f770, %f220, %f220; - mul.ftz.f32 %f771, %f47, %f191; - mul.ftz.f32 %f772, %f60, %f191; - mul.ftz.f32 %f773, %f53, %f191; - mul.ftz.f32 %f774, %f52, %f215; - mul.ftz.f32 %f775, %f54, %f215; - mul.ftz.f32 %f776, %f215, %f203; - mul.ftz.f32 %f777, %f232, %f203; - mul.ftz.f32 %f778, %f64, %f232; - mul.ftz.f32 %f779, %f59, %f770; - mul.ftz.f32 %f780, %f46, %f770; - mul.ftz.f32 %f781, %f52, %f631; - mul.ftz.f32 %f782, %f633, %f237; - mul.ftz.f32 %f783, %f51, %f633; - mul.ftz.f32 %f784, %f775, %f203; - mul.ftz.f32 %f785, %f61, %f776; - fma.rn.ftz.f32 %f786, %f59, %f782, %f781; - mul.ftz.f32 %f787, %f46, %f782; - sub.ftz.f32 %f788, %f787, %f784; - mul.ftz.f32 %f789, %f61, %f631; - sub.ftz.f32 %f790, %f789, %f785; - mul.ftz.f32 %f791, %f203, %f774; - sub.ftz.f32 %f792, %f786, %f791; - fma.rn.ftz.f32 %f793, %f54, %f631, %f788; - fma.rn.ftz.f32 %f794, %f237, %f783, %f790; - mul.ftz.f32 %f795, %f232, %f779; - sub.ftz.f32 %f796, %f792, %f795; - mul.ftz.f32 %f797, %f232, %f780; - sub.ftz.f32 %f798, %f793, %f797; - mul.ftz.f32 %f799, %f237, %f773; - sub.ftz.f32 %f800, %f794, %f799; - fma.rn.ftz.f32 %f801, %f232, %f768, %f796; - fma.rn.ftz.f32 %f802, %f232, %f769, %f798; - fma.rn.ftz.f32 %f803, %f53, %f777, %f800; - mul.ftz.f32 %f804, %f237, %f771; - sub.ftz.f32 %f805, %f801, %f804; - mul.ftz.f32 %f806, %f237, %f772; - sub.ftz.f32 %f807, %f802, %f806; - mul.ftz.f32 %f808, %f220, %f778; - sub.ftz.f32 %f809, %f803, %f808; - mul.ftz.f32 %f810, %f47, %f623; - sub.ftz.f32 %f811, %f805, %f810; - mul.ftz.f32 %f812, %f60, %f623; - sub.ftz.f32 %f813, %f807, %f812; - mul.ftz.f32 %f814, %f237, %f767; - sub.ftz.f32 %f815, %f809, %f814; - fma.rn.ftz.f32 %f816, %f47, %f620, %f811; - fma.rn.ftz.f32 %f817, %f60, %f620, %f813; - fma.rn.ftz.f32 %f818, %f53, %f620, %f815; - fma.rn.ftz.f32 %f819, %f232, %f613, %f816; - mul.ftz.f32 %f820, %f215, %f766; - sub.ftz.f32 %f821, %f817, %f820; - mul.ftz.f32 %f822, %f61, %f634; - sub.ftz.f32 %f823, %f818, %f822; - mul.ftz.f32 %f824, %f215, %f608; - sub.ftz.f32 %f825, %f819, %f824; - fma.rn.ftz.f32 %f826, %f232, %f610, %f821; - fma.rn.ftz.f32 %f827, %f61, %f635, %f823; - mul.ftz.f32 %f828, %f825, %f21; - mul.ftz.f32 %f829, %f826, %f22; - mul.ftz.f32 %f830, %f827, %f23; - mul.ftz.f32 %f831, %f593, %f828; - mul.ftz.f32 %f832, %f593, %f829; - mul.ftz.f32 %f833, %f593, %f830; - mul.ftz.f32 %f834, %f831, %f401; - mul.ftz.f32 %f835, %f832, %f401; - mul.ftz.f32 %f836, %f833, %f401; - mul.ftz.f32 %f837, %f569, %f556; - mul.ftz.f32 %f838, %f46, %f745; - mul.ftz.f32 %f839, %f835, %f54; - sub.ftz.f32 %f840, %f839, %f838; - mul.ftz.f32 %f841, %f59, %f746; - mul.ftz.f32 %f842, %f834, %f52; - sub.ftz.f32 %f843, %f842, %f841; - add.ftz.f32 %f844, %f840, %f843; - mul.ftz.f32 %f845, %f51, %f748; - mul.ftz.f32 %f846, %f836, %f61; - sub.ftz.f32 %f847, %f846, %f845; - add.ftz.f32 %f848, %f844, %f847; - mul.ftz.f32 %f849, %f848, %f645; - sub.ftz.f32 %f850, %f849, %f837; - fma.rn.ftz.f32 %f851, %f364, %f596, %f850; - add.ftz.f32 %f134, %f134, %f851; - .loc 17 349 0 - mul.ftz.f32 %f852, %f569, %f557; - mul.ftz.f32 %f853, %f47, %f834; - mul.ftz.f32 %f854, %f59, %f749; - sub.ftz.f32 %f855, %f854, %f853; - mul.ftz.f32 %f856, %f60, %f835; - mul.ftz.f32 %f857, %f750, %f46; - sub.ftz.f32 %f858, %f857, %f856; - add.ftz.f32 %f859, %f855, %f858; - mul.ftz.f32 %f860, %f53, %f836; - mul.ftz.f32 %f861, %f747, %f51; - sub.ftz.f32 %f862, %f861, %f860; - add.ftz.f32 %f863, %f859, %f862; - mul.ftz.f32 %f864, %f863, %f645; - sub.ftz.f32 %f865, %f864, %f852; - fma.rn.ftz.f32 %f866, %f367, %f596, %f865; - add.ftz.f32 %f133, %f133, %f866; - mul.lo.s32 %r35, %r14, %r1; - cvt.s64.s32 %rd54, %r35; - mul.wide.s32 %rd55, %r35, 4; - add.u64 %rd25, %rd25, %rd55; - setp.gt.u64 %p23, %rd28, %rd25; - @%p23 bra $Lt_0_40962; - bra.uni $Lt_0_40450; -$Lt_0_56834: - mov.f32 %f133, 0f00000000; // 0 - mov.f32 %f134, 0f00000000; // 0 - mov.f32 %f135, 0f00000000; // 0 - mov.f32 %f136, 0f00000000; // 0 - mov.f32 %f137, 0f00000000; // 0 - mov.f32 %f138, 0f00000000; // 0 - mov.f32 %f139, 0f00000000; // 0 -$Lt_0_40450: - mov.u32 %r36, 1; - setp.le.s32 %p24, %r1, %r36; - @%p24 bra $Lt_0_53250; - .loc 17 352 0 - mov.u64 %rd56, __cuda___cuda_local_var_33207_55_non_const_red_acc144; - cvt.s64.s32 %rd57, %r2; - mul.wide.s32 %rd58, %r2, 4; - add.u64 %rd59, %rd56, %rd58; - mov.f32 %f867, %f138; - st.shared.f32 [%rd59+0], %f867; - mov.f32 %f868, %f137; - st.shared.f32 [%rd59+512], %f868; - mov.f32 %f869, %f136; - st.shared.f32 [%rd59+1024], %f869; - mov.f32 %f870, %f135; - st.shared.f32 [%rd59+1536], %f870; - mov.f32 %f871, %f134; - st.shared.f32 [%rd59+2048], %f871; - mov.f32 %f872, %f133; - st.shared.f32 [%rd59+2560], %f872; - shr.s32 %r37, %r1, 31; - mov.s32 %r38, 1; - and.b32 %r39, %r37, %r38; - add.s32 %r40, %r39, %r1; - shr.s32 %r41, %r40, 1; - mov.s32 %r42, %r41; - mov.u32 %r43, 0; - setp.ne.u32 %p25, %r41, %r43; - @!%p25 bra $Lt_0_51714; -$Lt_0_52226: - setp.ge.u32 %p26, %r16, %r42; - @%p26 bra $Lt_0_52482; - add.u32 %r44, %r2, %r42; - cvt.u64.u32 %rd60, %r44; - mul.wide.u32 %rd61, %r44, 4; - add.u64 %rd62, %rd56, %rd61; - ld.shared.f32 %f873, [%rd62+0]; - add.ftz.f32 %f867, %f873, %f867; - st.shared.f32 [%rd59+0], %f867; - ld.shared.f32 %f874, [%rd62+512]; - add.ftz.f32 %f868, %f874, %f868; - st.shared.f32 [%rd59+512], %f868; - ld.shared.f32 %f875, [%rd62+1024]; - add.ftz.f32 %f869, %f875, %f869; - st.shared.f32 [%rd59+1024], %f869; - ld.shared.f32 %f876, [%rd62+1536]; - add.ftz.f32 %f870, %f876, %f870; - st.shared.f32 [%rd59+1536], %f870; - ld.shared.f32 %f877, [%rd62+2048]; - add.ftz.f32 %f871, %f877, %f871; - st.shared.f32 [%rd59+2048], %f871; - ld.shared.f32 %f878, [%rd62+2560]; - add.ftz.f32 %f872, %f878, %f872; - st.shared.f32 [%rd59+2560], %f872; -$Lt_0_52482: - shr.u32 %r42, %r42, 1; - mov.u32 %r45, 0; - setp.ne.u32 %p27, %r42, %r45; - @%p27 bra $Lt_0_52226; -$Lt_0_51714: - mov.f32 %f138, %f867; - mov.f32 %f137, %f868; - mov.f32 %f136, %f869; - mov.f32 %f135, %f870; - mov.f32 %f134, %f871; - mov.f32 %f133, %f872; - ld.param.s32 %r46, [__cudaparm_kernel_ellipsoid_eflag]; - mov.s32 %r47, 0; - set.gt.u32.s32 %r48, %r46, %r47; - neg.s32 %r49, %r48; - ld.param.s32 %r50, [__cudaparm_kernel_ellipsoid_vflag]; - mov.s32 %r51, 0; - set.gt.u32.s32 %r52, %r50, %r51; - neg.s32 %r53, %r52; - or.b32 %r54, %r49, %r53; - mov.u32 %r55, 0; - setp.eq.s32 %p28, %r54, %r55; - @%p28 bra $Lt_0_53250; - mov.f32 %f867, %f6; - st.shared.f32 [%rd59+0], %f867; - mov.f32 %f868, %f8; - st.shared.f32 [%rd59+512], %f868; - mov.f32 %f869, %f10; - st.shared.f32 [%rd59+1024], %f869; - mov.f32 %f870, %f12; - st.shared.f32 [%rd59+1536], %f870; - mov.f32 %f871, %f14; - st.shared.f32 [%rd59+2048], %f871; - mov.f32 %f872, %f15; - st.shared.f32 [%rd59+2560], %f872; - mov.f32 %f879, %f139; - st.shared.f32 [%rd59+3072], %f879; - mov.s32 %r56, %r41; - @!%p25 bra $Lt_0_53762; -$Lt_0_54274: - setp.ge.u32 %p29, %r16, %r56; - @%p29 bra $Lt_0_54530; - add.u32 %r57, %r2, %r56; - cvt.u64.u32 %rd63, %r57; - mul.wide.u32 %rd64, %r57, 4; - add.u64 %rd65, %rd56, %rd64; - ld.shared.f32 %f880, [%rd65+0]; - add.ftz.f32 %f867, %f880, %f867; - st.shared.f32 [%rd59+0], %f867; - ld.shared.f32 %f881, [%rd65+512]; - add.ftz.f32 %f868, %f881, %f868; - st.shared.f32 [%rd59+512], %f868; - ld.shared.f32 %f882, [%rd65+1024]; - add.ftz.f32 %f869, %f882, %f869; - st.shared.f32 [%rd59+1024], %f869; - ld.shared.f32 %f883, [%rd65+1536]; - add.ftz.f32 %f870, %f883, %f870; - st.shared.f32 [%rd59+1536], %f870; - ld.shared.f32 %f884, [%rd65+2048]; - add.ftz.f32 %f871, %f884, %f871; - st.shared.f32 [%rd59+2048], %f871; - ld.shared.f32 %f885, [%rd65+2560]; - add.ftz.f32 %f872, %f885, %f872; - st.shared.f32 [%rd59+2560], %f872; - ld.shared.f32 %f886, [%rd65+3072]; - add.ftz.f32 %f879, %f886, %f879; - st.shared.f32 [%rd59+3072], %f879; -$Lt_0_54530: - shr.u32 %r56, %r56, 1; - mov.u32 %r58, 0; - setp.ne.u32 %p30, %r56, %r58; - @%p30 bra $Lt_0_54274; -$Lt_0_53762: - mov.f32 %f6, %f867; - mov.f32 %f8, %f868; - mov.f32 %f10, %f869; - mov.f32 %f12, %f870; - mov.f32 %f14, %f871; - mov.f32 %f16, %f872; - mov.f32 %f139, %f879; -$Lt_0_53250: -$Lt_0_51202: - mov.u32 %r59, 0; - setp.ne.s32 %p31, %r16, %r59; - @%p31 bra $Lt_0_55298; - ld.param.u64 %rd66, [__cudaparm_kernel_ellipsoid_engv]; - add.u64 %rd67, %rd66, %rd3; - ld.param.s32 %r60, [__cudaparm_kernel_ellipsoid_astride]; - ld.param.s32 %r61, [__cudaparm_kernel_ellipsoid_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p32, %r61, %r62; - @%p32 bra $Lt_0_55810; - st.global.f32 [%rd67+0], %f139; - cvt.s64.s32 %rd68, %r60; - mul.wide.s32 %rd69, %r60, 4; - add.u64 %rd67, %rd67, %rd69; -$Lt_0_55810: - ld.param.s32 %r63, [__cudaparm_kernel_ellipsoid_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p33, %r63, %r64; - @%p33 bra $Lt_0_56322; - mov.f32 %f887, %f6; - st.global.f32 [%rd67+0], %f887; - cvt.s64.s32 %rd70, %r60; - mul.wide.s32 %rd71, %r60, 4; - add.u64 %rd72, %rd71, %rd67; - mov.f32 %f888, %f8; - st.global.f32 [%rd72+0], %f888; - add.u64 %rd73, %rd71, %rd72; - mov.f32 %f889, %f10; - st.global.f32 [%rd73+0], %f889; - add.u64 %rd74, %rd71, %rd73; - mov.f32 %f890, %f12; - st.global.f32 [%rd74+0], %f890; - add.u64 %rd67, %rd71, %rd74; - mov.f32 %f891, %f14; - st.global.f32 [%rd67+0], %f891; - mov.f32 %f892, %f16; - add.u64 %rd75, %rd71, %rd67; - st.global.f32 [%rd75+0], %f892; -$Lt_0_56322: - ld.param.u64 %rd76, [__cudaparm_kernel_ellipsoid_ans]; - mul.lo.u64 %rd77, %rd2, 16; - add.u64 %rd78, %rd76, %rd77; - mov.f32 %f893, %f894; - st.global.v4.f32 [%rd78+0], {%f138,%f137,%f136,%f893}; - add.s32 %r65, %r8, %r60; - cvt.s64.s32 %rd79, %r65; - mul.wide.s32 %rd80, %r65, 16; - add.u64 %rd81, %rd76, %rd80; - mov.f32 %f895, %f896; - st.global.v4.f32 [%rd81+0], {%f135,%f134,%f133,%f895}; -$Lt_0_55298: -$Lt_0_39938: - .loc 17 355 0 - exit; -$LDWend_kernel_ellipsoid: - } // kernel_ellipsoid - diff --git a/lib/gpu/gayberne_lj.ptx b/lib/gpu/gayberne_lj.ptx deleted file mode 100644 index d77eaa1059..0000000000 --- a/lib/gpu/gayberne_lj.ptx +++ /dev/null @@ -1,1915 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009b93_00000000-9_lal_gayberne_lj.cpp3.i (/home/sjplimp/ccBI#.hcleqA) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009b93_00000000-8_lal_gayberne_lj.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_ellipsoid_extra.h" - .file 17 "lal_gayberne_lj.cu" - .file 18 "/usr/local/cuda/include/common_functions.h" - .file 19 "/usr/local/cuda/include/math_functions.h" - .file 20 "/usr/local/cuda/include/math_constants.h" - .file 21 "/usr/local/cuda/include/device_functions.h" - .file 22 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 24 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 26 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 27 "/usr/local/cuda/include/surface_functions.h" - .file 28 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 29 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_sphere_ellipsoid ( - .param .u64 __cudaparm_kernel_sphere_ellipsoid_x_, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_q, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_shape, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_well, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_gum, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_sig_eps, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_ntypes, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_lshape, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_dev_nbor, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_stride, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_ans, - .param .u64 __cudaparm_kernel_sphere_ellipsoid___val_paramengv, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_err_flag, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_eflag, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_vflag, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_start, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_inum, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_t_per_atom) - { - .reg .u32 %r<59>; - .reg .u64 %rd<79>; - .reg .f32 %f<432>; - .reg .pred %p<35>; - .shared .align 16 .b8 __cuda___cuda_local_var_32888_33_non_const_sp_lj124[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33089_55_non_const_red_acc140[3072]; - // __cuda_local_var_32895_10_non_const_f = 48 - // __cuda_local_var_32899_9_non_const_virial = 16 - .loc 17 28 0 -$LDWbegin_kernel_sphere_ellipsoid: - .loc 17 34 0 - ld.param.u64 %rd1, [__cudaparm_kernel_sphere_ellipsoid_gum]; - ldu.global.f32 %f1, [%rd1+12]; - .loc 17 35 0 - ld.global.f32 %f2, [%rd1+16]; - .loc 17 36 0 - ld.global.f32 %f3, [%rd1+20]; - .loc 17 37 0 - ld.global.f32 %f4, [%rd1+24]; - st.shared.v4.f32 [__cuda___cuda_local_var_32888_33_non_const_sp_lj124+0], {%f1,%f2,%f3,%f4}; - .loc 17 46 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_sphere_ellipsoid_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_sphere_ellipsoid_start]; - add.s32 %r10, %r9, %r8; - ld.param.s32 %r11, [__cudaparm_kernel_sphere_ellipsoid_inum]; - setp.ge.s32 %p1, %r10, %r11; - @%p1 bra $Lt_0_55042; - .loc 17 51 0 - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_sphere_ellipsoid_dev_nbor]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r12, [%rd5+0]; - ld.param.s32 %r13, [__cudaparm_kernel_sphere_ellipsoid_stride]; - cvt.s64.s32 %rd6, %r13; - mul.wide.s32 %rd7, %r13, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r14, [%rd8+0]; - .loc 17 54 0 - ld.param.u64 %rd9, [__cudaparm_kernel_sphere_ellipsoid_x_]; - cvt.s64.s32 %rd10, %r12; - mul.wide.s32 %rd11, %r12, 16; - add.u64 %rd12, %rd9, %rd11; - ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0]; - .loc 17 57 0 - cvt.rzi.ftz.s32.f32 %r15, %f20; - cvt.s64.s32 %rd13, %r15; - mul.wide.s32 %rd14, %r15, 16; - ld.param.u64 %rd15, [__cudaparm_kernel_sphere_ellipsoid_shape]; - add.u64 %rd16, %rd14, %rd15; - ld.global.f32 %f21, [%rd16+0]; - .loc 17 58 0 - ld.param.u64 %rd17, [__cudaparm_kernel_sphere_ellipsoid_well]; - add.u64 %rd18, %rd14, %rd17; - ld.global.f32 %f22, [%rd18+0]; - cvt.s32.s64 %r16, %rd6; - sub.s32 %r17, %r1, 1; - and.b32 %r18, %r17, %r2; - add.u64 %rd19, %rd7, %rd8; - mul.lo.s32 %r19, %r16, %r18; - cvt.s64.s32 %rd20, %r19; - mul.wide.s32 %rd21, %r19, 4; - add.u64 %rd22, %rd19, %rd21; - mov.s64 %rd23, %rd22; - mul.lo.s32 %r20, %r16, %r14; - cvt.s64.s32 %rd24, %r20; - mul.wide.s32 %rd25, %r20, 4; - add.u64 %rd26, %rd19, %rd25; - setp.ge.u64 %p2, %rd22, %rd26; - @%p2 bra $Lt_0_56578; - ld.param.s32 %r21, [__cudaparm_kernel_sphere_ellipsoid_eflag]; - mov.s32 %r22, 0; - setp.gt.s32 %p3, %r21, %r22; - ld.param.s32 %r23, [__cudaparm_kernel_sphere_ellipsoid_vflag]; - mov.s32 %r24, 0; - setp.gt.s32 %p4, %r23, %r24; - ld.param.s32 %r25, [__cudaparm_kernel_sphere_ellipsoid_ntypes]; - mul.lo.s32 %r26, %r25, %r15; - ld.param.u64 %rd27, [__cudaparm_kernel_sphere_ellipsoid_lshape]; - mul.lo.u64 %rd28, %rd13, 4; - add.u64 %rd29, %rd27, %rd28; - ld.param.u64 %rd30, [__cudaparm_kernel_sphere_ellipsoid_sig_eps]; - ld.param.u64 %rd31, [__cudaparm_kernel_sphere_ellipsoid_q]; - mov.f32 %f23, 0f00000000; // 0 - mov.f32 %f24, 0f00000000; // 0 - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.u64 %rd32, __cuda___cuda_local_var_32888_33_non_const_sp_lj124; -$Lt_0_40706: - // Loop body line 58, nesting depth: 1, estimated iterations: unknown - .loc 17 63 0 - ld.global.s32 %r27, [%rd23+0]; - .loc 17 64 0 - shr.s32 %r28, %r27, 30; - and.b32 %r29, %r28, 3; - cvt.s64.s32 %rd33, %r29; - mul.wide.s32 %rd34, %r29, 4; - add.u64 %rd35, %rd32, %rd34; - ld.shared.f32 %f27, [%rd35+0]; - .loc 17 67 0 - and.b32 %r30, %r27, 1073741823; - cvt.s64.s32 %rd36, %r30; - mul.wide.s32 %rd37, %r30, 16; - add.u64 %rd38, %rd37, %rd9; - ld.global.v4.f32 {%f28,%f29,%f30,%f31}, [%rd38+0]; - .loc 17 86 0 - add.u64 %rd39, %rd37, %rd31; - ld.global.v4.f32 {%f32,%f33,%f34,%f35}, [%rd39+0]; - .loc 17 95 0 - cvt.rzi.ftz.s32.f32 %r31, %f31; - cvt.s64.s32 %rd40, %r31; - mul.wide.s32 %rd41, %r31, 16; - add.u64 %rd42, %rd41, %rd15; - ld.global.v4.f32 {%f36,%f37,%f38,_}, [%rd42+0]; - .loc 16 299 0 - sub.ftz.f32 %f39, %f28, %f17; - mov.f32 %f40, %f39; - .loc 16 300 0 - add.ftz.f32 %f41, %f33, %f33; - add.ftz.f32 %f42, %f35, %f35; - mul.ftz.f32 %f43, %f32, %f32; - mul.ftz.f32 %f44, %f33, %f33; - mul.ftz.f32 %f45, %f34, %f34; - mul.ftz.f32 %f46, %f35, %f35; - add.ftz.f32 %f47, %f34, %f34; - mul.ftz.f32 %f48, %f41, %f34; - mul.ftz.f32 %f49, %f41, %f35; - mul.ftz.f32 %f50, %f42, %f32; - add.ftz.f32 %f51, %f43, %f44; - mul.ftz.f32 %f52, %f47, %f32; - sub.ftz.f32 %f53, %f48, %f50; - sub.ftz.f32 %f54, %f51, %f45; - add.ftz.f32 %f55, %f49, %f52; - mul.ftz.f32 %f56, %f53, %f37; - sub.ftz.f32 %f57, %f54, %f46; - mul.ftz.f32 %f58, %f55, %f38; - mul.ftz.f32 %f59, %f53, %f56; - mul.ftz.f32 %f60, %f57, %f36; - fma.rn.ftz.f32 %f61, %f57, %f60, %f59; - fma.rn.ftz.f32 %f62, %f55, %f58, %f61; - add.ftz.f32 %f63, %f62, %f21; - mov.f32 %f64, %f63; - .loc 16 301 0 - mul.ftz.f32 %f65, %f41, %f32; - sub.ftz.f32 %f66, %f43, %f44; - mul.ftz.f32 %f67, %f47, %f35; - add.ftz.f32 %f68, %f48, %f50; - add.ftz.f32 %f69, %f45, %f66; - sub.ftz.f32 %f70, %f67, %f65; - mul.ftz.f32 %f71, %f68, %f36; - sub.ftz.f32 %f72, %f69, %f46; - mul.ftz.f32 %f73, %f70, %f38; - mul.ftz.f32 %f74, %f72, %f37; - mul.ftz.f32 %f75, %f53, %f74; - fma.rn.ftz.f32 %f76, %f57, %f71, %f75; - fma.rn.ftz.f32 %f77, %f55, %f73, %f76; - mov.f32 %f78, %f77; - .loc 16 302 0 - sub.ftz.f32 %f79, %f66, %f45; - sub.ftz.f32 %f80, %f49, %f52; - add.ftz.f32 %f81, %f65, %f67; - add.ftz.f32 %f82, %f46, %f79; - mul.ftz.f32 %f83, %f80, %f36; - mul.ftz.f32 %f84, %f81, %f37; - mul.ftz.f32 %f85, %f82, %f38; - mul.ftz.f32 %f86, %f53, %f84; - fma.rn.ftz.f32 %f87, %f57, %f83, %f86; - fma.rn.ftz.f32 %f88, %f55, %f85, %f87; - mov.f32 %f89, %f88; - .loc 16 303 0 - sub.ftz.f32 %f90, %f29, %f18; - mov.f32 %f91, %f90; - .loc 16 304 0 - mul.ftz.f32 %f92, %f56, %f72; - fma.rn.ftz.f32 %f93, %f60, %f68, %f92; - fma.rn.ftz.f32 %f94, %f58, %f70, %f93; - mov.f32 %f95, %f94; - .loc 16 305 0 - mul.ftz.f32 %f96, %f72, %f74; - fma.rn.ftz.f32 %f97, %f68, %f71, %f96; - fma.rn.ftz.f32 %f98, %f70, %f73, %f97; - add.ftz.f32 %f99, %f98, %f21; - mov.f32 %f100, %f99; - .loc 16 306 0 - mul.ftz.f32 %f101, %f72, %f84; - fma.rn.ftz.f32 %f102, %f68, %f83, %f101; - fma.rn.ftz.f32 %f103, %f70, %f85, %f102; - mov.f32 %f104, %f103; - .loc 16 307 0 - sub.ftz.f32 %f105, %f30, %f19; - mov.f32 %f106, %f105; - .loc 16 308 0 - mul.ftz.f32 %f107, %f81, %f56; - fma.rn.ftz.f32 %f108, %f60, %f80, %f107; - fma.rn.ftz.f32 %f109, %f58, %f82, %f108; - mov.f32 %f110, %f109; - .loc 16 309 0 - mul.ftz.f32 %f111, %f81, %f74; - fma.rn.ftz.f32 %f112, %f71, %f80, %f111; - fma.rn.ftz.f32 %f113, %f73, %f82, %f112; - mov.f32 %f114, %f113; - .loc 16 310 0 - mul.ftz.f32 %f115, %f81, %f84; - fma.rn.ftz.f32 %f116, %f80, %f83, %f115; - fma.rn.ftz.f32 %f117, %f82, %f85, %f116; - add.ftz.f32 %f118, %f117, %f21; - mov.f32 %f119, %f118; - abs.ftz.f32 %f120, %f94; - abs.ftz.f32 %f121, %f63; - setp.gt.ftz.f32 %p5, %f120, %f121; - @!%p5 bra $Lt_0_40962; - .loc 16 314 0 - mov.f32 %f64, %f94; - mov.f32 %f95, %f63; - .loc 16 315 0 - mov.f32 %f78, %f99; - mov.f32 %f100, %f77; - .loc 16 316 0 - mov.f32 %f89, %f103; - mov.f32 %f104, %f88; - .loc 16 317 0 - mov.f32 %f40, %f90; - mov.f32 %f91, %f39; -$Lt_0_40962: - mov.f32 %f122, %f64; - abs.ftz.f32 %f123, %f122; - abs.ftz.f32 %f124, %f109; - setp.lt.ftz.f32 %p6, %f123, %f124; - @!%p6 bra $Lt_0_41474; - .loc 16 321 0 - mov.f32 %f64, %f109; - mov.f32 %f110, %f122; - .loc 16 322 0 - mov.f32 %f125, %f78; - mov.f32 %f78, %f113; - mov.f32 %f114, %f125; - .loc 16 323 0 - mov.f32 %f126, %f89; - mov.f32 %f89, %f118; - mov.f32 %f119, %f126; - .loc 16 324 0 - mov.f32 %f127, %f40; - mov.f32 %f40, %f105; - mov.f32 %f106, %f127; -$Lt_0_41474: - mov.f32 %f128, %f64; - mov.f32 %f129, 0f00000000; // 0 - setp.neu.ftz.f32 %p7, %f128, %f129; - @!%p7 bra $Lt_0_42242; - bra.uni $Lt_0_43010; -$Lt_0_42242: - mov.f32 %f130, 0f00000000; // 0 - setp.neu.ftz.f32 %p8, %f95, %f130; - @!%p8 bra $Lt_0_42754; - .loc 16 338 0 - mov.f32 %f64, %f95; - mov.f32 %f95, %f128; - .loc 16 339 0 - mov.f32 %f131, %f78; - mov.f32 %f78, %f100; - mov.f32 %f100, %f131; - .loc 16 340 0 - mov.f32 %f132, %f89; - mov.f32 %f89, %f104; - mov.f32 %f104, %f132; - .loc 16 341 0 - mov.f32 %f133, %f40; - mov.f32 %f40, %f91; - mov.f32 %f91, %f133; - bra.uni $Lt_0_43010; -$Lt_0_42754: - mov.f32 %f134, 0f00000000; // 0 - setp.neu.ftz.f32 %p9, %f110, %f134; - @!%p9 bra $Lt_0_43266; - .loc 16 346 0 - mov.f32 %f64, %f110; - mov.f32 %f110, %f128; - .loc 16 347 0 - mov.f32 %f135, %f78; - mov.f32 %f78, %f114; - mov.f32 %f114, %f135; - .loc 16 348 0 - mov.f32 %f136, %f89; - mov.f32 %f89, %f119; - mov.f32 %f119, %f136; - .loc 16 349 0 - mov.f32 %f137, %f40; - mov.f32 %f40, %f106; - mov.f32 %f106, %f137; - bra.uni $Lt_0_43010; -$Lt_0_43266: - .loc 16 352 0 - mov.s32 %r32, 2; - ld.param.u64 %rd43, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd43+0], %r32; -$Lt_0_43010: -$Lt_0_42498: -$Lt_0_41986: - .loc 16 355 0 - div.approx.ftz.f32 %f138, %f95, %f64; - mul.ftz.f32 %f139, %f78, %f138; - sub.ftz.f32 %f140, %f100, %f139; - mov.f32 %f100, %f140; - .loc 16 356 0 - mul.ftz.f32 %f141, %f89, %f138; - sub.ftz.f32 %f142, %f104, %f141; - mov.f32 %f104, %f142; - .loc 16 357 0 - mul.ftz.f32 %f143, %f40, %f138; - sub.ftz.f32 %f144, %f91, %f143; - mov.f32 %f91, %f144; - .loc 16 359 0 - div.approx.ftz.f32 %f145, %f110, %f64; - mul.ftz.f32 %f146, %f78, %f145; - sub.ftz.f32 %f114, %f114, %f146; - .loc 16 360 0 - mul.ftz.f32 %f147, %f89, %f145; - sub.ftz.f32 %f119, %f119, %f147; - .loc 16 361 0 - mul.ftz.f32 %f148, %f40, %f145; - sub.ftz.f32 %f106, %f106, %f148; - abs.ftz.f32 %f149, %f140; - abs.ftz.f32 %f150, %f114; - setp.lt.ftz.f32 %p10, %f149, %f150; - @!%p10 bra $Lt_0_43522; - .loc 16 366 0 - mov.f32 %f100, %f114; - mov.f32 %f114, %f140; - .loc 16 367 0 - mov.f32 %f104, %f119; - mov.f32 %f119, %f142; - .loc 16 368 0 - mov.f32 %f91, %f106; - mov.f32 %f106, %f144; -$Lt_0_43522: - mov.f32 %f151, %f100; - mov.f32 %f152, 0f00000000; // 0 - setp.neu.ftz.f32 %p11, %f151, %f152; - @!%p11 bra $Lt_0_44290; - bra.uni $Lt_0_44546; -$Lt_0_44290: - mov.f32 %f153, 0f00000000; // 0 - setp.neu.ftz.f32 %p12, %f114, %f153; - @!%p12 bra $Lt_0_44546; - .loc 16 383 0 - mov.f32 %f100, %f114; - mov.f32 %f114, %f151; - .loc 16 384 0 - mov.f32 %f154, %f104; - mov.f32 %f104, %f119; - mov.f32 %f119, %f154; - .loc 16 385 0 - mov.f32 %f155, %f91; - mov.f32 %f91, %f106; - mov.f32 %f106, %f155; -$Lt_0_44546: -$Lt_0_44034: - .loc 16 390 0 - div.approx.ftz.f32 %f156, %f114, %f100; - mul.ftz.f32 %f157, %f104, %f156; - sub.ftz.f32 %f119, %f119, %f157; - .loc 16 391 0 - mul.ftz.f32 %f158, %f91, %f156; - sub.ftz.f32 %f106, %f106, %f158; - mov.f32 %f159, 0f00000000; // 0 - setp.eq.ftz.f32 %p13, %f119, %f159; - @!%p13 bra $Lt_0_45058; - .loc 16 394 0 - mov.s32 %r33, 2; - ld.param.u64 %rd44, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd44+0], %r33; -$Lt_0_45058: - .loc 17 115 0 - div.approx.ftz.f32 %f160, %f106, %f119; - mul.ftz.f32 %f161, %f90, %f90; - mul.ftz.f32 %f162, %f160, %f104; - fma.rn.ftz.f32 %f163, %f39, %f39, %f161; - sub.ftz.f32 %f164, %f91, %f162; - fma.rn.ftz.f32 %f165, %f105, %f105, %f163; - div.approx.ftz.f32 %f166, %f164, %f100; - rsqrt.approx.ftz.f32 %f167, %f165; - mul.ftz.f32 %f168, %f166, %f78; - fma.rn.ftz.f32 %f169, %f89, %f160, %f168; - sub.ftz.f32 %f170, %f40, %f169; - div.approx.ftz.f32 %f171, %f170, %f64; - mul.ftz.f32 %f172, %f167, %f171; - .loc 17 127 0 - mul.ftz.f32 %f173, %f166, %f167; - mul.ftz.f32 %f174, %f167, %f90; - mul.ftz.f32 %f175, %f167, %f39; - mul.ftz.f32 %f176, %f167, %f105; - mul.ftz.f32 %f177, %f160, %f167; - mul.ftz.f32 %f178, %f173, %f174; - fma.rn.ftz.f32 %f179, %f175, %f172, %f178; - fma.rn.ftz.f32 %f180, %f176, %f177, %f179; - mov.f32 %f181, 0f3f000000; // 0.5 - mul.ftz.f32 %f182, %f180, %f181; - rsqrt.approx.ftz.f32 %f183, %f182; - .loc 17 131 0 - rcp.approx.ftz.f32 %f184, %f167; - mul.ftz.f32 %f185, %f184, %f172; - .loc 17 136 0 - add.s32 %r34, %r31, %r26; - cvt.s64.s32 %rd45, %r34; - mul.wide.s32 %rd46, %r34, 8; - add.u64 %rd47, %rd30, %rd46; - ld.global.v2.f32 {%f186,%f187}, [%rd47+0]; - .loc 17 138 0 - sub.ftz.f32 %f188, %f184, %f183; - ld.global.f32 %f189, [%rd1+0]; - fma.rn.ftz.f32 %f190, %f189, %f186, %f188; - .loc 17 145 0 - div.approx.ftz.f32 %f191, %f186, %f190; - mul.ftz.f32 %f192, %f191, %f191; - mul.ftz.f32 %f193, %f191, %f192; - mul.ftz.f32 %f194, %f193, %f193; - mul.ftz.f32 %f195, %f194, %f194; - mul.ftz.f32 %f196, %f191, %f194; - add.ftz.f32 %f197, %f195, %f195; - mul.ftz.f32 %f198, %f191, %f197; - sub.ftz.f32 %f199, %f198, %f196; - div.approx.ftz.f32 %f200, %f199, %f186; - mov.f32 %f201, 0f41c00000; // 24 - mul.ftz.f32 %f202, %f200, %f201; - mul.ftz.f32 %f203, %f187, %f202; - .loc 17 150 0 - mul.ftz.f32 %f204, %f183, %f203; - mul.ftz.f32 %f205, %f204, %f183; - mul.ftz.f32 %f206, %f205, %f183; - mov.f32 %f207, 0f3f000000; // 0.5 - mul.ftz.f32 %f208, %f206, %f207; - mul.ftz.f32 %f209, %f208, %f167; - mul.ftz.f32 %f210, %f173, %f184; - mul.ftz.f32 %f211, %f177, %f184; - mul.ftz.f32 %f212, %f167, %f209; - mul.ftz.f32 %f213, %f174, %f210; - fma.rn.ftz.f32 %f214, %f175, %f185, %f213; - fma.rn.ftz.f32 %f215, %f176, %f211, %f214; - mul.ftz.f32 %f216, %f175, %f215; - sub.ftz.f32 %f217, %f185, %f216; - mul.ftz.f32 %f218, %f212, %f217; - fma.rn.ftz.f32 %f219, %f175, %f203, %f218; - .loc 17 151 0 - mul.ftz.f32 %f220, %f174, %f215; - sub.ftz.f32 %f221, %f210, %f220; - mul.ftz.f32 %f222, %f212, %f221; - fma.rn.ftz.f32 %f223, %f174, %f203, %f222; - .loc 17 152 0 - mul.ftz.f32 %f224, %f176, %f215; - sub.ftz.f32 %f225, %f211, %f224; - mul.ftz.f32 %f226, %f212, %f225; - fma.rn.ftz.f32 %f227, %f176, %f203, %f226; - .loc 17 159 0 - ld.global.f32 %f228, [%rd29+0]; - mul.lo.u64 %rd48, %rd40, 4; - add.u64 %rd49, %rd27, %rd48; - ld.global.f32 %f229, [%rd49+0]; - add.ftz.f32 %f230, %f228, %f228; - mul.ftz.f32 %f231, %f229, %f230; - .loc 17 160 0 - mul.ftz.f32 %f232, %f103, %f63; - mul.ftz.f32 %f233, %f113, %f232; - mul.ftz.f32 %f234, %f99, %f63; - mul.ftz.f32 %f235, %f118, %f234; - sub.ftz.f32 %f236, %f235, %f233; - mul.ftz.f32 %f237, %f94, %f77; - mul.ftz.f32 %f238, %f118, %f237; - sub.ftz.f32 %f239, %f236, %f238; - mul.ftz.f32 %f240, %f94, %f88; - fma.rn.ftz.f32 %f241, %f113, %f240, %f239; - mul.ftz.f32 %f242, %f109, %f77; - fma.rn.ftz.f32 %f243, %f103, %f242, %f241; - mul.ftz.f32 %f244, %f109, %f88; - mul.ftz.f32 %f245, %f99, %f244; - sub.ftz.f32 %f246, %f243, %f245; - .loc 17 161 0 - ld.global.f32 %f247, [%rd1+4]; - .loc 17 172 0 - add.u64 %rd50, %rd41, %rd17; - ld.global.v4.f32 {%f248,%f249,%f250,_}, [%rd50+0]; - .loc 16 299 0 - mov.f32 %f40, %f39; - .loc 16 300 0 - mul.ftz.f32 %f251, %f53, %f249; - mul.ftz.f32 %f252, %f55, %f250; - mul.ftz.f32 %f253, %f53, %f251; - mul.ftz.f32 %f254, %f57, %f248; - fma.rn.ftz.f32 %f255, %f57, %f254, %f253; - fma.rn.ftz.f32 %f256, %f55, %f252, %f255; - add.ftz.f32 %f257, %f256, %f22; - mov.f32 %f64, %f257; - .loc 16 301 0 - mul.ftz.f32 %f258, %f68, %f248; - mul.ftz.f32 %f259, %f70, %f250; - mul.ftz.f32 %f260, %f72, %f249; - mul.ftz.f32 %f261, %f53, %f260; - fma.rn.ftz.f32 %f262, %f57, %f258, %f261; - fma.rn.ftz.f32 %f263, %f55, %f259, %f262; - mov.f32 %f78, %f263; - .loc 16 302 0 - mul.ftz.f32 %f264, %f80, %f248; - mul.ftz.f32 %f265, %f81, %f249; - mul.ftz.f32 %f266, %f82, %f250; - mul.ftz.f32 %f267, %f53, %f265; - fma.rn.ftz.f32 %f268, %f57, %f264, %f267; - fma.rn.ftz.f32 %f269, %f55, %f266, %f268; - mov.f32 %f89, %f269; - .loc 16 303 0 - mov.f32 %f91, %f90; - .loc 16 304 0 - mul.ftz.f32 %f270, %f251, %f72; - fma.rn.ftz.f32 %f271, %f254, %f68, %f270; - fma.rn.ftz.f32 %f272, %f252, %f70, %f271; - mov.f32 %f95, %f272; - .loc 16 305 0 - mul.ftz.f32 %f273, %f72, %f260; - fma.rn.ftz.f32 %f274, %f68, %f258, %f273; - fma.rn.ftz.f32 %f275, %f70, %f259, %f274; - add.ftz.f32 %f100, %f22, %f275; - .loc 16 306 0 - mul.ftz.f32 %f276, %f72, %f265; - fma.rn.ftz.f32 %f277, %f68, %f264, %f276; - fma.rn.ftz.f32 %f104, %f70, %f266, %f277; - .loc 16 307 0 - mov.f32 %f106, %f105; - .loc 16 308 0 - mul.ftz.f32 %f278, %f81, %f251; - fma.rn.ftz.f32 %f279, %f254, %f80, %f278; - fma.rn.ftz.f32 %f280, %f252, %f82, %f279; - mov.f32 %f110, %f280; - .loc 16 309 0 - mul.ftz.f32 %f281, %f81, %f260; - fma.rn.ftz.f32 %f282, %f258, %f80, %f281; - fma.rn.ftz.f32 %f114, %f259, %f82, %f282; - .loc 16 310 0 - mul.ftz.f32 %f283, %f81, %f265; - fma.rn.ftz.f32 %f284, %f80, %f264, %f283; - fma.rn.ftz.f32 %f285, %f82, %f266, %f284; - add.ftz.f32 %f119, %f22, %f285; - abs.ftz.f32 %f286, %f272; - abs.ftz.f32 %f287, %f257; - setp.gt.ftz.f32 %p14, %f286, %f287; - @!%p14 bra $Lt_0_45570; - .loc 16 314 0 - mov.f32 %f64, %f272; - mov.f32 %f95, %f257; - .loc 16 315 0 - mov.f32 %f78, %f100; - mov.f32 %f100, %f263; - .loc 16 316 0 - mov.f32 %f89, %f104; - mov.f32 %f104, %f269; - .loc 16 317 0 - mov.f32 %f40, %f90; - mov.f32 %f91, %f39; -$Lt_0_45570: - mov.f32 %f288, %f64; - abs.ftz.f32 %f289, %f288; - abs.ftz.f32 %f290, %f280; - setp.lt.ftz.f32 %p15, %f289, %f290; - @!%p15 bra $Lt_0_46082; - .loc 16 321 0 - mov.f32 %f64, %f280; - mov.f32 %f110, %f288; - .loc 16 322 0 - mov.f32 %f291, %f78; - mov.f32 %f78, %f114; - mov.f32 %f114, %f291; - .loc 16 323 0 - mov.f32 %f292, %f89; - mov.f32 %f89, %f119; - mov.f32 %f119, %f292; - .loc 16 324 0 - mov.f32 %f293, %f40; - mov.f32 %f40, %f105; - mov.f32 %f106, %f293; -$Lt_0_46082: - mov.f32 %f294, %f64; - mov.f32 %f295, 0f00000000; // 0 - setp.neu.ftz.f32 %p16, %f294, %f295; - @!%p16 bra $Lt_0_46850; - bra.uni $Lt_0_47618; -$Lt_0_46850: - mov.f32 %f296, 0f00000000; // 0 - setp.neu.ftz.f32 %p17, %f95, %f296; - @!%p17 bra $Lt_0_47362; - .loc 16 338 0 - mov.f32 %f64, %f95; - mov.f32 %f95, %f294; - .loc 16 339 0 - mov.f32 %f297, %f78; - mov.f32 %f78, %f100; - mov.f32 %f100, %f297; - .loc 16 340 0 - mov.f32 %f298, %f89; - mov.f32 %f89, %f104; - mov.f32 %f104, %f298; - .loc 16 341 0 - mov.f32 %f299, %f40; - mov.f32 %f40, %f91; - mov.f32 %f91, %f299; - bra.uni $Lt_0_47618; -$Lt_0_47362: - mov.f32 %f300, 0f00000000; // 0 - setp.neu.ftz.f32 %p18, %f110, %f300; - @!%p18 bra $Lt_0_47874; - .loc 16 346 0 - mov.f32 %f64, %f110; - mov.f32 %f110, %f294; - .loc 16 347 0 - mov.f32 %f301, %f78; - mov.f32 %f78, %f114; - mov.f32 %f114, %f301; - .loc 16 348 0 - mov.f32 %f302, %f89; - mov.f32 %f89, %f119; - mov.f32 %f119, %f302; - .loc 16 349 0 - mov.f32 %f303, %f40; - mov.f32 %f40, %f106; - mov.f32 %f106, %f303; - bra.uni $Lt_0_47618; -$Lt_0_47874: - .loc 16 352 0 - mov.s32 %r35, 2; - ld.param.u64 %rd51, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd51+0], %r35; -$Lt_0_47618: -$Lt_0_47106: -$Lt_0_46594: - .loc 16 355 0 - div.approx.ftz.f32 %f304, %f95, %f64; - mul.ftz.f32 %f305, %f78, %f304; - sub.ftz.f32 %f306, %f100, %f305; - mov.f32 %f100, %f306; - .loc 16 356 0 - mul.ftz.f32 %f307, %f89, %f304; - sub.ftz.f32 %f308, %f104, %f307; - mov.f32 %f104, %f308; - .loc 16 357 0 - mul.ftz.f32 %f309, %f40, %f304; - sub.ftz.f32 %f310, %f91, %f309; - mov.f32 %f91, %f310; - .loc 16 359 0 - div.approx.ftz.f32 %f311, %f110, %f64; - mul.ftz.f32 %f312, %f78, %f311; - sub.ftz.f32 %f114, %f114, %f312; - .loc 16 360 0 - mul.ftz.f32 %f313, %f89, %f311; - sub.ftz.f32 %f119, %f119, %f313; - .loc 16 361 0 - mul.ftz.f32 %f314, %f40, %f311; - sub.ftz.f32 %f106, %f106, %f314; - abs.ftz.f32 %f315, %f306; - abs.ftz.f32 %f316, %f114; - setp.lt.ftz.f32 %p19, %f315, %f316; - @!%p19 bra $Lt_0_48130; - .loc 16 366 0 - mov.f32 %f100, %f114; - mov.f32 %f114, %f306; - .loc 16 367 0 - mov.f32 %f104, %f119; - mov.f32 %f119, %f308; - .loc 16 368 0 - mov.f32 %f91, %f106; - mov.f32 %f106, %f310; -$Lt_0_48130: - mov.f32 %f317, %f100; - mov.f32 %f318, 0f00000000; // 0 - setp.neu.ftz.f32 %p20, %f317, %f318; - @!%p20 bra $Lt_0_48898; - bra.uni $Lt_0_49154; -$Lt_0_48898: - mov.f32 %f319, 0f00000000; // 0 - setp.neu.ftz.f32 %p21, %f114, %f319; - @!%p21 bra $Lt_0_49154; - .loc 16 383 0 - mov.f32 %f100, %f114; - mov.f32 %f114, %f317; - .loc 16 384 0 - mov.f32 %f320, %f104; - mov.f32 %f104, %f119; - mov.f32 %f119, %f320; - .loc 16 385 0 - mov.f32 %f321, %f91; - mov.f32 %f91, %f106; - mov.f32 %f106, %f321; -$Lt_0_49154: -$Lt_0_48642: - .loc 16 390 0 - div.approx.ftz.f32 %f322, %f114, %f100; - mul.ftz.f32 %f323, %f104, %f322; - sub.ftz.f32 %f119, %f119, %f323; - .loc 16 391 0 - mul.ftz.f32 %f324, %f91, %f322; - sub.ftz.f32 %f106, %f106, %f324; - mov.f32 %f325, 0f00000000; // 0 - setp.eq.ftz.f32 %p22, %f119, %f325; - @!%p22 bra $Lt_0_49666; - .loc 16 394 0 - mov.s32 %r36, 2; - ld.param.u64 %rd52, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd52+0], %r36; -$Lt_0_49666: - .loc 17 189 0 - div.approx.ftz.f32 %f326, %f106, %f119; - mul.ftz.f32 %f327, %f326, %f104; - sub.ftz.f32 %f328, %f91, %f327; - div.approx.ftz.f32 %f329, %f328, %f100; - mul.ftz.f32 %f330, %f329, %f78; - fma.rn.ftz.f32 %f331, %f89, %f326, %f330; - sub.ftz.f32 %f332, %f40, %f331; - div.approx.ftz.f32 %f333, %f332, %f64; - mul.ftz.f32 %f334, %f167, %f333; - .loc 17 193 0 - ld.global.f32 %f335, [%rd1+8]; - .loc 21 496 0 - mul.ftz.f32 %f336, %f329, %f167; - mul.ftz.f32 %f337, %f326, %f167; - mul.ftz.f32 %f338, %f336, %f174; - fma.rn.ftz.f32 %f339, %f175, %f334, %f338; - fma.rn.ftz.f32 %f340, %f176, %f337, %f339; - add.ftz.f32 %f341, %f340, %f340; - lg2.approx.ftz.f32 %f342, %f341; - .loc 21 538 0 - mul.ftz.f32 %f343, %f342, %f335; - ex2.approx.ftz.f32 %f344, %f343; - .loc 17 196 0 - mul.ftz.f32 %f345, %f184, %f334; - .loc 17 201 0 - mov.f32 %f346, 0fbf800000; // -1 - add.ftz.f32 %f347, %f335, %f346; - .loc 21 496 0 - lg2.approx.ftz.f32 %f348, %f344; - .loc 17 201 0 - div.approx.ftz.f32 %f349, %f347, %f335; - mul.ftz.f32 %f350, %f348, %f349; - ex2.approx.ftz.f32 %f351, %f350; - mov.f32 %f352, 0fc0800000; // -4 - mul.ftz.f32 %f353, %f167, %f352; - mul.ftz.f32 %f354, %f167, %f353; - mul.ftz.f32 %f355, %f335, %f354; - mul.ftz.f32 %f356, %f351, %f355; - .loc 17 203 0 - mul.ftz.f32 %f357, %f336, %f184; - mul.ftz.f32 %f358, %f337, %f184; - mul.ftz.f32 %f359, %f174, %f357; - fma.rn.ftz.f32 %f360, %f175, %f345, %f359; - fma.rn.ftz.f32 %f361, %f176, %f358, %f360; - mul.ftz.f32 %f362, %f175, %f361; - sub.ftz.f32 %f363, %f345, %f362; - mul.ftz.f32 %f364, %f356, %f363; - .loc 17 204 0 - mul.ftz.f32 %f365, %f174, %f361; - sub.ftz.f32 %f366, %f357, %f365; - mul.ftz.f32 %f367, %f356, %f366; - .loc 17 205 0 - mul.ftz.f32 %f368, %f176, %f361; - sub.ftz.f32 %f369, %f358, %f368; - mul.ftz.f32 %f370, %f356, %f369; - .loc 16 396 0 - mov.f32 %f371, 0f40800000; // 4 - mul.ftz.f32 %f372, %f187, %f371; - div.approx.ftz.f32 %f373, %f231, %f246; - lg2.approx.ftz.f32 %f374, %f373; - mul.ftz.f32 %f375, %f374, %f247; - ex2.approx.ftz.f32 %f376, %f375; - mul.ftz.f32 %f377, %f376, %f27; - sub.ftz.f32 %f378, %f195, %f194; - mul.ftz.f32 %f379, %f377, %f344; - mul.ftz.f32 %f380, %f372, %f378; - fma.rn.ftz.f32 %f381, %f380, %f379, %f26; - selp.f32 %f26, %f381, %f26, %p3; - mul.ftz.f32 %f382, %f379, %f219; - mul.ftz.f32 %f383, %f379, %f223; - mul.ftz.f32 %f384, %f379, %f227; - mul.ftz.f32 %f385, %f376, %f380; - mul.ftz.f32 %f386, %f385, %f27; - neg.ftz.f32 %f387, %f386; - mul.ftz.f32 %f388, %f364, %f387; - sub.ftz.f32 %f389, %f388, %f382; - mul.ftz.f32 %f390, %f367, %f387; - sub.ftz.f32 %f391, %f390, %f383; - mul.ftz.f32 %f392, %f370, %f387; - sub.ftz.f32 %f393, %f392, %f384; - @!%p4 bra $Lt_0_50434; - .loc 17 217 0 - add.ftz.f32 %f25, %f389, %f25; - .loc 17 218 0 - sub.ftz.f32 %f394, %f17, %f28; - mov.f32 %f395, %f6; - fma.rn.ftz.f32 %f396, %f394, %f389, %f395; - mov.f32 %f6, %f396; - .loc 17 220 0 - add.ftz.f32 %f24, %f391, %f24; - .loc 17 221 0 - sub.ftz.f32 %f397, %f18, %f29; - mov.f32 %f398, %f8; - fma.rn.ftz.f32 %f399, %f397, %f391, %f398; - mov.f32 %f8, %f399; - .loc 17 222 0 - mov.f32 %f400, %f12; - fma.rn.ftz.f32 %f401, %f394, %f391, %f400; - mov.f32 %f12, %f401; - .loc 17 224 0 - add.ftz.f32 %f23, %f393, %f23; - .loc 17 225 0 - mov.f32 %f402, %f10; - sub.ftz.f32 %f403, %f19, %f30; - fma.rn.ftz.f32 %f404, %f403, %f393, %f402; - mov.f32 %f10, %f404; - .loc 17 226 0 - mov.f32 %f405, %f14; - fma.rn.ftz.f32 %f406, %f394, %f393, %f405; - mov.f32 %f14, %f406; - .loc 17 227 0 - fma.rn.ftz.f32 %f15, %f397, %f393, %f15; - mov.f32 %f16, %f15; - bra.uni $Lt_0_50178; -$Lt_0_50434: - .loc 17 229 0 - add.ftz.f32 %f25, %f389, %f25; - .loc 17 230 0 - add.ftz.f32 %f24, %f391, %f24; - .loc 17 231 0 - add.ftz.f32 %f23, %f393, %f23; -$Lt_0_50178: - mul.lo.s32 %r37, %r16, %r1; - cvt.s64.s32 %rd53, %r37; - mul.wide.s32 %rd54, %r37, 4; - add.u64 %rd23, %rd23, %rd54; - setp.gt.u64 %p23, %rd26, %rd23; - @%p23 bra $Lt_0_40706; - bra.uni $Lt_0_40194; -$Lt_0_56578: - mov.f32 %f23, 0f00000000; // 0 - mov.f32 %f24, 0f00000000; // 0 - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 -$Lt_0_40194: - mov.u32 %r38, 1; - setp.le.s32 %p24, %r1, %r38; - @%p24 bra $Lt_0_52994; - .loc 17 234 0 - mov.u64 %rd55, __cuda___cuda_local_var_33089_55_non_const_red_acc140; - cvt.s64.s32 %rd56, %r2; - mul.wide.s32 %rd57, %r2, 4; - add.u64 %rd58, %rd55, %rd57; - mov.f32 %f407, %f25; - st.shared.f32 [%rd58+0], %f407; - mov.f32 %f408, %f24; - st.shared.f32 [%rd58+512], %f408; - mov.f32 %f409, %f23; - st.shared.f32 [%rd58+1024], %f409; - mov.f32 %f410, %f26; - st.shared.f32 [%rd58+1536], %f410; - shr.s32 %r39, %r1, 31; - mov.s32 %r40, 1; - and.b32 %r41, %r39, %r40; - add.s32 %r42, %r41, %r1; - shr.s32 %r43, %r42, 1; - mov.s32 %r44, %r43; - mov.u32 %r45, 0; - setp.ne.u32 %p25, %r43, %r45; - @!%p25 bra $Lt_0_51458; -$Lt_0_51970: - setp.ge.u32 %p26, %r18, %r44; - @%p26 bra $Lt_0_52226; - add.u32 %r46, %r2, %r44; - cvt.u64.u32 %rd59, %r46; - mul.wide.u32 %rd60, %r46, 4; - add.u64 %rd61, %rd55, %rd60; - ld.shared.f32 %f411, [%rd61+0]; - add.ftz.f32 %f407, %f411, %f407; - st.shared.f32 [%rd58+0], %f407; - ld.shared.f32 %f412, [%rd61+512]; - add.ftz.f32 %f408, %f412, %f408; - st.shared.f32 [%rd58+512], %f408; - ld.shared.f32 %f413, [%rd61+1024]; - add.ftz.f32 %f409, %f413, %f409; - st.shared.f32 [%rd58+1024], %f409; - ld.shared.f32 %f414, [%rd61+1536]; - add.ftz.f32 %f410, %f414, %f410; - st.shared.f32 [%rd58+1536], %f410; -$Lt_0_52226: - shr.u32 %r44, %r44, 1; - mov.u32 %r47, 0; - setp.ne.u32 %p27, %r44, %r47; - @%p27 bra $Lt_0_51970; -$Lt_0_51458: - mov.f32 %f25, %f407; - mov.f32 %f24, %f408; - mov.f32 %f23, %f409; - mov.f32 %f26, %f410; - ld.param.s32 %r48, [__cudaparm_kernel_sphere_ellipsoid_vflag]; - mov.u32 %r49, 0; - setp.le.s32 %p28, %r48, %r49; - @%p28 bra $Lt_0_52994; - mov.f32 %f407, %f6; - st.shared.f32 [%rd58+0], %f407; - mov.f32 %f408, %f8; - st.shared.f32 [%rd58+512], %f408; - mov.f32 %f409, %f10; - st.shared.f32 [%rd58+1024], %f409; - mov.f32 %f410, %f12; - st.shared.f32 [%rd58+1536], %f410; - mov.f32 %f415, %f14; - st.shared.f32 [%rd58+2048], %f415; - mov.f32 %f416, %f15; - st.shared.f32 [%rd58+2560], %f416; - mov.s32 %r50, %r43; - @!%p25 bra $Lt_0_53506; -$Lt_0_54018: - setp.ge.u32 %p29, %r18, %r50; - @%p29 bra $Lt_0_54274; - add.u32 %r51, %r2, %r50; - cvt.u64.u32 %rd62, %r51; - mul.wide.u32 %rd63, %r51, 4; - add.u64 %rd64, %rd55, %rd63; - ld.shared.f32 %f417, [%rd64+0]; - add.ftz.f32 %f407, %f417, %f407; - st.shared.f32 [%rd58+0], %f407; - ld.shared.f32 %f418, [%rd64+512]; - add.ftz.f32 %f408, %f418, %f408; - st.shared.f32 [%rd58+512], %f408; - ld.shared.f32 %f419, [%rd64+1024]; - add.ftz.f32 %f409, %f419, %f409; - st.shared.f32 [%rd58+1024], %f409; - ld.shared.f32 %f420, [%rd64+1536]; - add.ftz.f32 %f410, %f420, %f410; - st.shared.f32 [%rd58+1536], %f410; - ld.shared.f32 %f421, [%rd64+2048]; - add.ftz.f32 %f415, %f421, %f415; - st.shared.f32 [%rd58+2048], %f415; - ld.shared.f32 %f422, [%rd64+2560]; - add.ftz.f32 %f416, %f422, %f416; - st.shared.f32 [%rd58+2560], %f416; -$Lt_0_54274: - shr.u32 %r50, %r50, 1; - mov.u32 %r52, 0; - setp.ne.u32 %p30, %r50, %r52; - @%p30 bra $Lt_0_54018; -$Lt_0_53506: - mov.f32 %f6, %f407; - mov.f32 %f8, %f408; - mov.f32 %f10, %f409; - mov.f32 %f12, %f410; - mov.f32 %f14, %f415; - mov.f32 %f16, %f416; -$Lt_0_52994: -$Lt_0_50946: - mov.u32 %r53, 0; - setp.ne.s32 %p31, %r18, %r53; - @%p31 bra $Lt_0_55042; - ld.param.u64 %rd65, [__cudaparm_kernel_sphere_ellipsoid___val_paramengv]; - add.u64 %rd66, %rd65, %rd3; - ld.param.s32 %r54, [__cudaparm_kernel_sphere_ellipsoid_eflag]; - mov.u32 %r55, 0; - setp.le.s32 %p32, %r54, %r55; - @%p32 bra $Lt_0_55554; - st.global.f32 [%rd66+0], %f26; - cvt.s64.s32 %rd67, %r11; - mul.wide.s32 %rd68, %r11, 4; - add.u64 %rd66, %rd66, %rd68; -$Lt_0_55554: - ld.param.s32 %r56, [__cudaparm_kernel_sphere_ellipsoid_vflag]; - mov.u32 %r57, 0; - setp.le.s32 %p33, %r56, %r57; - @%p33 bra $Lt_0_56066; - mov.f32 %f423, %f6; - st.global.f32 [%rd66+0], %f423; - cvt.s64.s32 %rd69, %r11; - mul.wide.s32 %rd70, %r11, 4; - add.u64 %rd71, %rd70, %rd66; - mov.f32 %f424, %f8; - st.global.f32 [%rd71+0], %f424; - add.u64 %rd72, %rd70, %rd71; - mov.f32 %f425, %f10; - st.global.f32 [%rd72+0], %f425; - add.u64 %rd73, %rd70, %rd72; - mov.f32 %f426, %f12; - st.global.f32 [%rd73+0], %f426; - add.u64 %rd66, %rd70, %rd73; - mov.f32 %f427, %f14; - st.global.f32 [%rd66+0], %f427; - mov.f32 %f428, %f16; - add.u64 %rd74, %rd70, %rd66; - st.global.f32 [%rd74+0], %f428; -$Lt_0_56066: - ld.param.u64 %rd75, [__cudaparm_kernel_sphere_ellipsoid_ans]; - mul.lo.u64 %rd76, %rd2, 16; - add.u64 %rd77, %rd75, %rd76; - mov.f32 %f429, %f430; - st.global.v4.f32 [%rd77+0], {%f25,%f24,%f23,%f429}; -$Lt_0_55042: -$Lt_0_39682: - .loc 17 237 0 - exit; -$LDWend_kernel_sphere_ellipsoid: - } // kernel_sphere_ellipsoid - - .entry kernel_lj ( - .param .u64 __cudaparm_kernel_lj_x_, - .param .u64 __cudaparm_kernel_lj_lj1, - .param .u64 __cudaparm_kernel_lj_lj3, - .param .s32 __cudaparm_kernel_lj_lj_types, - .param .u64 __cudaparm_kernel_lj_gum, - .param .s32 __cudaparm_kernel_lj_stride, - .param .u64 __cudaparm_kernel_lj_dev_ij, - .param .u64 __cudaparm_kernel_lj_ans, - .param .u64 __cudaparm_kernel_lj___val_paramengv, - .param .u64 __cudaparm_kernel_lj_err_flag, - .param .s32 __cudaparm_kernel_lj_eflag, - .param .s32 __cudaparm_kernel_lj_vflag, - .param .s32 __cudaparm_kernel_lj_start, - .param .s32 __cudaparm_kernel_lj_inum, - .param .s32 __cudaparm_kernel_lj_t_per_atom) - { - .reg .u32 %r<55>; - .reg .u64 %rd<60>; - .reg .f32 %f<115>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_33106_33_non_const_sp_lj3316[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33172_55_non_const_red_acc3332[3072]; - // __cuda_local_var_33117_9_non_const_virial = 16 - .loc 17 246 0 -$LDWbegin_kernel_lj: - .loc 17 252 0 - ld.param.u64 %rd1, [__cudaparm_kernel_lj_gum]; - ldu.global.f32 %f1, [%rd1+12]; - .loc 17 253 0 - ld.global.f32 %f2, [%rd1+16]; - .loc 17 254 0 - ld.global.f32 %f3, [%rd1+20]; - .loc 17 255 0 - ld.global.f32 %f4, [%rd1+24]; - st.shared.v4.f32 [__cuda___cuda_local_var_33106_33_non_const_sp_lj3316+0], {%f1,%f2,%f3,%f4}; - .loc 17 264 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_lj_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_lj_start]; - add.s32 %r10, %r9, %r8; - ld.param.s32 %r11, [__cudaparm_kernel_lj_inum]; - setp.ge.s32 %p1, %r10, %r11; - @%p1 bra $Lt_1_25346; - .loc 17 269 0 - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_lj_dev_ij]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r12, [%rd5+0]; - ld.param.s32 %r13, [__cudaparm_kernel_lj_stride]; - cvt.s64.s32 %rd6, %r13; - mul.wide.s32 %rd7, %r13, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r14, [%rd8+0]; - .loc 17 272 0 - ld.param.u64 %rd9, [__cudaparm_kernel_lj_x_]; - cvt.s64.s32 %rd10, %r12; - mul.wide.s32 %rd11, %r12, 16; - add.u64 %rd12, %rd9, %rd11; - ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0]; - .loc 17 273 0 - cvt.s32.s64 %r15, %rd6; - sub.s32 %r16, %r1, 1; - and.b32 %r17, %r16, %r2; - add.u64 %rd13, %rd7, %rd8; - mul.lo.s32 %r18, %r15, %r17; - cvt.s64.s32 %rd14, %r18; - mul.wide.s32 %rd15, %r18, 4; - add.u64 %rd16, %rd13, %rd15; - mov.s64 %rd17, %rd16; - mul.lo.s32 %r19, %r15, %r14; - cvt.s64.s32 %rd18, %r19; - mul.wide.s32 %rd19, %r19, 4; - add.u64 %rd20, %rd13, %rd19; - setp.ge.u64 %p2, %rd16, %rd20; - @%p2 bra $Lt_1_26882; - cvt.rzi.ftz.s32.f32 %r20, %f20; - ld.param.s32 %r21, [__cudaparm_kernel_lj_lj_types]; - mul.lo.s32 %r22, %r21, %r20; - ld.param.u64 %rd21, [__cudaparm_kernel_lj_lj1]; - mov.f32 %f21, 0f00000000; // 0 - mov.f32 %f22, 0f00000000; // 0 - mov.f32 %f23, 0f00000000; // 0 - mov.f32 %f24, 0f00000000; // 0 - mov.u64 %rd22, __cuda___cuda_local_var_33106_33_non_const_sp_lj3316; -$Lt_1_19714: - // Loop body line 273, nesting depth: 1, estimated iterations: unknown - .loc 17 278 0 - ld.global.s32 %r23, [%rd17+0]; - .loc 17 279 0 - shr.s32 %r24, %r23, 30; - and.b32 %r25, %r24, 3; - cvt.s64.s32 %rd23, %r25; - mul.wide.s32 %rd24, %r25, 4; - add.u64 %rd25, %rd22, %rd24; - ld.shared.f32 %f25, [%rd25+0]; - .loc 17 282 0 - and.b32 %r26, %r23, 1073741823; - cvt.s64.s32 %rd26, %r26; - mul.wide.s32 %rd27, %r26, 16; - add.u64 %rd28, %rd9, %rd27; - ld.global.v4.f32 {%f26,%f27,%f28,%f29}, [%rd28+0]; - .loc 17 278 0 - cvt.rzi.ftz.s32.f32 %r27, %f29; - sub.ftz.f32 %f30, %f18, %f27; - sub.ftz.f32 %f31, %f17, %f26; - sub.ftz.f32 %f32, %f19, %f28; - mul.ftz.f32 %f33, %f30, %f30; - fma.rn.ftz.f32 %f34, %f31, %f31, %f33; - fma.rn.ftz.f32 %f35, %f32, %f32, %f34; - add.s32 %r28, %r27, %r22; - cvt.s64.s32 %rd29, %r28; - mul.wide.s32 %rd30, %r28, 16; - add.u64 %rd31, %rd30, %rd21; - ld.global.f32 %f36, [%rd31+8]; - setp.gt.ftz.f32 %p3, %f36, %f35; - @!%p3 bra $Lt_1_27138; - ld.global.f32 %f37, [%rd31+12]; - mov.f32 %f38, 0f00000000; // 0 - setp.eq.ftz.f32 %p4, %f37, %f38; - @!%p4 bra $Lt_1_27138; - .loc 17 296 0 - rcp.approx.ftz.f32 %f39, %f35; - mul.ftz.f32 %f40, %f39, %f39; - mul.ftz.f32 %f41, %f39, %f40; - mul.ftz.f32 %f42, %f39, %f41; - ld.global.v2.f32 {%f43,%f44}, [%rd31+0]; - mul.ftz.f32 %f45, %f43, %f41; - sub.ftz.f32 %f46, %f45, %f44; - mul.ftz.f32 %f47, %f42, %f46; - mul.ftz.f32 %f48, %f25, %f47; - .loc 17 298 0 - fma.rn.ftz.f32 %f23, %f31, %f48, %f23; - .loc 17 299 0 - fma.rn.ftz.f32 %f22, %f30, %f48, %f22; - .loc 17 300 0 - fma.rn.ftz.f32 %f21, %f32, %f48, %f21; - ld.param.s32 %r29, [__cudaparm_kernel_lj_eflag]; - mov.u32 %r30, 0; - setp.le.s32 %p5, %r29, %r30; - @%p5 bra $Lt_1_19970; - .loc 17 304 0 - ld.param.u64 %rd32, [__cudaparm_kernel_lj_lj3]; - add.u64 %rd33, %rd32, %rd30; - ld.global.v4.f32 {%f49,%f50,%f51,_}, [%rd33+0]; - mul.ftz.f32 %f52, %f49, %f41; - sub.ftz.f32 %f53, %f52, %f50; - mul.ftz.f32 %f54, %f41, %f53; - sub.ftz.f32 %f55, %f54, %f51; - fma.rn.ftz.f32 %f24, %f25, %f55, %f24; -$Lt_1_19970: - ld.param.s32 %r31, [__cudaparm_kernel_lj_vflag]; - mov.u32 %r32, 0; - setp.le.s32 %p6, %r31, %r32; - @%p6 bra $Lt_1_27138; - .loc 17 307 0 - mov.f32 %f56, %f6; - mul.ftz.f32 %f57, %f31, %f31; - fma.rn.ftz.f32 %f58, %f48, %f57, %f56; - mov.f32 %f6, %f58; - .loc 17 308 0 - mov.f32 %f59, %f8; - fma.rn.ftz.f32 %f60, %f48, %f33, %f59; - mov.f32 %f8, %f60; - .loc 17 309 0 - mov.f32 %f61, %f10; - mul.ftz.f32 %f62, %f32, %f32; - fma.rn.ftz.f32 %f63, %f48, %f62, %f61; - mov.f32 %f10, %f63; - .loc 17 310 0 - mov.f32 %f64, %f12; - mul.ftz.f32 %f65, %f30, %f31; - fma.rn.ftz.f32 %f66, %f48, %f65, %f64; - mov.f32 %f12, %f66; - .loc 17 311 0 - mov.f32 %f67, %f14; - mul.ftz.f32 %f68, %f31, %f32; - fma.rn.ftz.f32 %f69, %f48, %f68, %f67; - mov.f32 %f14, %f69; - .loc 17 312 0 - mul.ftz.f32 %f70, %f30, %f32; - fma.rn.ftz.f32 %f15, %f48, %f70, %f15; - mov.f32 %f16, %f15; -$Lt_1_27138: -$L_1_18178: - .loc 17 306 0 - mul.lo.s32 %r33, %r15, %r1; - cvt.s64.s32 %rd34, %r33; - mul.wide.s32 %rd35, %r33, 4; - add.u64 %rd17, %rd17, %rd35; - setp.gt.u64 %p7, %rd20, %rd17; - @%p7 bra $Lt_1_19714; - bra.uni $Lt_1_19202; -$Lt_1_26882: - mov.f32 %f21, 0f00000000; // 0 - mov.f32 %f22, 0f00000000; // 0 - mov.f32 %f23, 0f00000000; // 0 - mov.f32 %f24, 0f00000000; // 0 -$Lt_1_19202: - mov.u32 %r34, 1; - setp.le.s32 %p8, %r1, %r34; - @%p8 bra $Lt_1_23298; - .loc 17 317 0 - mov.u64 %rd36, __cuda___cuda_local_var_33172_55_non_const_red_acc3332; - cvt.s64.s32 %rd37, %r2; - mul.wide.s32 %rd38, %r2, 4; - add.u64 %rd39, %rd36, %rd38; - mov.f32 %f71, %f23; - st.shared.f32 [%rd39+0], %f71; - mov.f32 %f72, %f22; - st.shared.f32 [%rd39+512], %f72; - mov.f32 %f73, %f21; - st.shared.f32 [%rd39+1024], %f73; - mov.f32 %f74, %f24; - st.shared.f32 [%rd39+1536], %f74; - shr.s32 %r35, %r1, 31; - mov.s32 %r36, 1; - and.b32 %r37, %r35, %r36; - add.s32 %r38, %r37, %r1; - shr.s32 %r39, %r38, 1; - mov.s32 %r40, %r39; - mov.u32 %r41, 0; - setp.ne.u32 %p9, %r39, %r41; - @!%p9 bra $Lt_1_21762; -$Lt_1_22274: - setp.ge.u32 %p10, %r17, %r40; - @%p10 bra $Lt_1_22530; - add.u32 %r42, %r2, %r40; - cvt.u64.u32 %rd40, %r42; - mul.wide.u32 %rd41, %r42, 4; - add.u64 %rd42, %rd36, %rd41; - ld.shared.f32 %f75, [%rd42+0]; - add.ftz.f32 %f71, %f75, %f71; - st.shared.f32 [%rd39+0], %f71; - ld.shared.f32 %f76, [%rd42+512]; - add.ftz.f32 %f72, %f76, %f72; - st.shared.f32 [%rd39+512], %f72; - ld.shared.f32 %f77, [%rd42+1024]; - add.ftz.f32 %f73, %f77, %f73; - st.shared.f32 [%rd39+1024], %f73; - ld.shared.f32 %f78, [%rd42+1536]; - add.ftz.f32 %f74, %f78, %f74; - st.shared.f32 [%rd39+1536], %f74; -$Lt_1_22530: - shr.u32 %r40, %r40, 1; - mov.u32 %r43, 0; - setp.ne.u32 %p11, %r40, %r43; - @%p11 bra $Lt_1_22274; -$Lt_1_21762: - mov.f32 %f23, %f71; - mov.f32 %f22, %f72; - mov.f32 %f21, %f73; - mov.f32 %f24, %f74; - ld.param.s32 %r44, [__cudaparm_kernel_lj_vflag]; - mov.u32 %r45, 0; - setp.le.s32 %p12, %r44, %r45; - @%p12 bra $Lt_1_23298; - mov.f32 %f71, %f6; - st.shared.f32 [%rd39+0], %f71; - mov.f32 %f72, %f8; - st.shared.f32 [%rd39+512], %f72; - mov.f32 %f73, %f10; - st.shared.f32 [%rd39+1024], %f73; - mov.f32 %f74, %f12; - st.shared.f32 [%rd39+1536], %f74; - mov.f32 %f79, %f14; - st.shared.f32 [%rd39+2048], %f79; - mov.f32 %f80, %f15; - st.shared.f32 [%rd39+2560], %f80; - mov.s32 %r46, %r39; - @!%p9 bra $Lt_1_23810; -$Lt_1_24322: - setp.ge.u32 %p13, %r17, %r46; - @%p13 bra $Lt_1_24578; - add.u32 %r47, %r2, %r46; - cvt.u64.u32 %rd43, %r47; - mul.wide.u32 %rd44, %r47, 4; - add.u64 %rd45, %rd36, %rd44; - ld.shared.f32 %f81, [%rd45+0]; - add.ftz.f32 %f71, %f81, %f71; - st.shared.f32 [%rd39+0], %f71; - ld.shared.f32 %f82, [%rd45+512]; - add.ftz.f32 %f72, %f82, %f72; - st.shared.f32 [%rd39+512], %f72; - ld.shared.f32 %f83, [%rd45+1024]; - add.ftz.f32 %f73, %f83, %f73; - st.shared.f32 [%rd39+1024], %f73; - ld.shared.f32 %f84, [%rd45+1536]; - add.ftz.f32 %f74, %f84, %f74; - st.shared.f32 [%rd39+1536], %f74; - ld.shared.f32 %f85, [%rd45+2048]; - add.ftz.f32 %f79, %f85, %f79; - st.shared.f32 [%rd39+2048], %f79; - ld.shared.f32 %f86, [%rd45+2560]; - add.ftz.f32 %f80, %f86, %f80; - st.shared.f32 [%rd39+2560], %f80; -$Lt_1_24578: - shr.u32 %r46, %r46, 1; - mov.u32 %r48, 0; - setp.ne.u32 %p14, %r46, %r48; - @%p14 bra $Lt_1_24322; -$Lt_1_23810: - mov.f32 %f6, %f71; - mov.f32 %f8, %f72; - mov.f32 %f10, %f73; - mov.f32 %f12, %f74; - mov.f32 %f14, %f79; - mov.f32 %f16, %f80; -$Lt_1_23298: -$Lt_1_21250: - mov.u32 %r49, 0; - setp.ne.s32 %p15, %r17, %r49; - @%p15 bra $Lt_1_25346; - ld.param.u64 %rd46, [__cudaparm_kernel_lj___val_paramengv]; - add.u64 %rd47, %rd46, %rd3; - ld.param.s32 %r50, [__cudaparm_kernel_lj_eflag]; - mov.u32 %r51, 0; - setp.le.s32 %p16, %r50, %r51; - @%p16 bra $Lt_1_25858; - ld.global.f32 %f87, [%rd47+0]; - add.ftz.f32 %f88, %f87, %f24; - st.global.f32 [%rd47+0], %f88; - cvt.s64.s32 %rd48, %r11; - mul.wide.s32 %rd49, %r11, 4; - add.u64 %rd47, %rd47, %rd49; -$Lt_1_25858: - ld.param.s32 %r52, [__cudaparm_kernel_lj_vflag]; - mov.u32 %r53, 0; - setp.le.s32 %p17, %r52, %r53; - @%p17 bra $Lt_1_26370; - ld.global.f32 %f89, [%rd47+0]; - mov.f32 %f90, %f6; - add.ftz.f32 %f91, %f89, %f90; - st.global.f32 [%rd47+0], %f91; - cvt.s64.s32 %rd50, %r11; - mul.wide.s32 %rd51, %r11, 4; - add.u64 %rd52, %rd51, %rd47; - ld.global.f32 %f92, [%rd52+0]; - mov.f32 %f93, %f8; - add.ftz.f32 %f94, %f92, %f93; - st.global.f32 [%rd52+0], %f94; - add.u64 %rd53, %rd51, %rd52; - ld.global.f32 %f95, [%rd53+0]; - mov.f32 %f96, %f10; - add.ftz.f32 %f97, %f95, %f96; - st.global.f32 [%rd53+0], %f97; - add.u64 %rd54, %rd51, %rd53; - ld.global.f32 %f98, [%rd54+0]; - mov.f32 %f99, %f12; - add.ftz.f32 %f100, %f98, %f99; - st.global.f32 [%rd54+0], %f100; - add.u64 %rd55, %rd51, %rd54; - ld.global.f32 %f101, [%rd55+0]; - mov.f32 %f102, %f14; - add.ftz.f32 %f103, %f101, %f102; - st.global.f32 [%rd55+0], %f103; - add.u64 %rd47, %rd51, %rd55; - ld.global.f32 %f104, [%rd47+0]; - mov.f32 %f105, %f16; - add.ftz.f32 %f106, %f104, %f105; - st.global.f32 [%rd47+0], %f106; -$Lt_1_26370: - ld.param.u64 %rd56, [__cudaparm_kernel_lj_ans]; - mul.lo.u64 %rd57, %rd2, 16; - add.u64 %rd58, %rd56, %rd57; - ld.global.v4.f32 {%f107,%f108,%f109,%f110}, [%rd58+0]; - add.ftz.f32 %f111, %f108, %f22; - add.ftz.f32 %f112, %f109, %f21; - add.ftz.f32 %f113, %f107, %f23; - st.global.v4.f32 [%rd58+0], {%f113,%f111,%f112,%f110}; -$Lt_1_25346: -$Lt_1_18690: - .loc 17 320 0 - exit; -$LDWend_kernel_lj: - } // kernel_lj - - .entry kernel_lj_fast ( - .param .u64 __cudaparm_kernel_lj_fast_x_, - .param .u64 __cudaparm_kernel_lj_fast_lj1_in, - .param .u64 __cudaparm_kernel_lj_fast_lj3_in, - .param .u64 __cudaparm_kernel_lj_fast_gum, - .param .s32 __cudaparm_kernel_lj_fast_stride, - .param .u64 __cudaparm_kernel_lj_fast_dev_ij, - .param .u64 __cudaparm_kernel_lj_fast_ans, - .param .u64 __cudaparm_kernel_lj_fast___val_paramengv, - .param .u64 __cudaparm_kernel_lj_fast_err_flag, - .param .s32 __cudaparm_kernel_lj_fast_eflag, - .param .s32 __cudaparm_kernel_lj_fast_vflag, - .param .s32 __cudaparm_kernel_lj_fast_start, - .param .s32 __cudaparm_kernel_lj_fast_inum, - .param .s32 __cudaparm_kernel_lj_fast_t_per_atom) - { - .reg .u32 %r<57>; - .reg .u64 %rd<72>; - .reg .f32 %f<122>; - .reg .pred %p<22>; - .shared .align 4 .b8 __cuda___cuda_local_var_33188_33_non_const_sp_lj6500[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_33189_34_non_const_lj16528[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_33190_34_non_const_lj38464[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_33260_55_non_const_red_acc10400[3072]; - // __cuda_local_var_33204_9_non_const_virial = 16 - .loc 17 328 0 -$LDWbegin_kernel_lj_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_2_20994; - .loc 17 337 0 - mov.u64 %rd1, __cuda___cuda_local_var_33188_33_non_const_sp_lj6500; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_lj_fast_gum]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+12]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_2_20994: - mov.u64 %rd1, __cuda___cuda_local_var_33188_33_non_const_sp_lj6500; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_2_21506; - .loc 17 339 0 - mov.u64 %rd7, __cuda___cuda_local_var_33189_34_non_const_lj16528; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_lj_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_lj_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_2_22018; - .loc 17 341 0 - mov.u64 %rd13, __cuda___cuda_local_var_33190_34_non_const_lj38464; - ld.param.u64 %rd14, [__cudaparm_kernel_lj_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_2_22018: - mov.u64 %rd13, __cuda___cuda_local_var_33190_34_non_const_lj38464; -$Lt_2_21506: - mov.u64 %rd13, __cuda___cuda_local_var_33190_34_non_const_lj38464; - mov.u64 %rd7, __cuda___cuda_local_var_33189_34_non_const_lj16528; - .loc 17 351 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 17 353 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_lj_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_lj_fast_start]; - add.s32 %r14, %r13, %r12; - ld.param.s32 %r15, [__cudaparm_kernel_lj_fast_inum]; - setp.ge.s32 %p4, %r14, %r15; - @%p4 bra $Lt_2_29186; - .loc 17 358 0 - cvt.s64.s32 %rd17, %r14; - mul.wide.s32 %rd18, %r14, 4; - ld.param.u64 %rd19, [__cudaparm_kernel_lj_fast_dev_ij]; - add.u64 %rd20, %rd19, %rd18; - ld.global.s32 %r16, [%rd20+0]; - ld.param.s32 %r17, [__cudaparm_kernel_lj_fast_stride]; - cvt.s64.s32 %rd21, %r17; - mul.wide.s32 %rd22, %r17, 4; - add.u64 %rd23, %rd22, %rd20; - ld.global.s32 %r18, [%rd23+0]; - .loc 17 361 0 - ld.param.u64 %rd24, [__cudaparm_kernel_lj_fast_x_]; - cvt.s64.s32 %rd25, %r16; - mul.wide.s32 %rd26, %r16, 16; - add.u64 %rd27, %rd24, %rd26; - ld.global.v4.f32 {%f22,%f23,%f24,%f25}, [%rd27+0]; - .loc 17 363 0 - cvt.s32.s64 %r19, %rd21; - sub.s32 %r20, %r6, 1; - and.b32 %r21, %r20, %r1; - add.u64 %rd28, %rd22, %rd23; - mul.lo.s32 %r22, %r19, %r21; - cvt.s64.s32 %rd29, %r22; - mul.wide.s32 %rd30, %r22, 4; - add.u64 %rd31, %rd28, %rd30; - mov.s64 %rd32, %rd31; - mul.lo.s32 %r23, %r19, %r18; - cvt.s64.s32 %rd33, %r23; - mul.wide.s32 %rd34, %r23, 4; - add.u64 %rd35, %rd28, %rd34; - setp.ge.u64 %p5, %rd31, %rd35; - @%p5 bra $Lt_2_30722; - cvt.rzi.ftz.s32.f32 %r24, %f25; - mul.lo.s32 %r25, %r24, 11; - cvt.rn.f32.s32 %f26, %r25; - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 -$Lt_2_23554: - // Loop body line 363, nesting depth: 1, estimated iterations: unknown - .loc 17 368 0 - ld.global.s32 %r26, [%rd32+0]; - .loc 17 369 0 - shr.s32 %r27, %r26, 30; - and.b32 %r28, %r27, 3; - cvt.s64.s32 %rd36, %r28; - mul.wide.s32 %rd37, %r28, 4; - add.u64 %rd38, %rd1, %rd37; - ld.shared.f32 %f31, [%rd38+0]; - .loc 17 372 0 - and.b32 %r29, %r26, 1073741823; - cvt.s64.s32 %rd39, %r29; - mul.wide.s32 %rd40, %r29, 16; - add.u64 %rd41, %rd24, %rd40; - ld.global.v4.f32 {%f32,%f33,%f34,%f35}, [%rd41+0]; - .loc 17 368 0 - sub.ftz.f32 %f36, %f23, %f33; - sub.ftz.f32 %f37, %f22, %f32; - sub.ftz.f32 %f38, %f24, %f34; - mul.ftz.f32 %f39, %f36, %f36; - fma.rn.ftz.f32 %f40, %f37, %f37, %f39; - fma.rn.ftz.f32 %f41, %f38, %f38, %f40; - add.ftz.f32 %f42, %f26, %f35; - cvt.rzi.ftz.s32.f32 %r30, %f42; - cvt.s64.s32 %rd42, %r30; - mul.wide.s32 %rd43, %r30, 16; - add.u64 %rd44, %rd43, %rd7; - ld.shared.f32 %f43, [%rd44+8]; - setp.gt.ftz.f32 %p6, %f43, %f41; - @!%p6 bra $Lt_2_30978; - ld.shared.f32 %f44, [%rd44+12]; - mov.f32 %f45, 0f00000000; // 0 - setp.eq.ftz.f32 %p7, %f44, %f45; - @!%p7 bra $Lt_2_30978; - .loc 17 384 0 - rcp.approx.ftz.f32 %f46, %f41; - mul.ftz.f32 %f47, %f46, %f46; - mul.ftz.f32 %f48, %f46, %f47; - mul.ftz.f32 %f49, %f46, %f31; - mul.ftz.f32 %f50, %f48, %f49; - ld.shared.v2.f32 {%f51,%f52}, [%rd44+0]; - mul.ftz.f32 %f53, %f51, %f48; - sub.ftz.f32 %f54, %f53, %f52; - mul.ftz.f32 %f55, %f50, %f54; - .loc 17 386 0 - fma.rn.ftz.f32 %f29, %f37, %f55, %f29; - .loc 17 387 0 - fma.rn.ftz.f32 %f28, %f36, %f55, %f28; - .loc 17 388 0 - fma.rn.ftz.f32 %f27, %f38, %f55, %f27; - ld.param.s32 %r31, [__cudaparm_kernel_lj_fast_eflag]; - mov.u32 %r32, 0; - setp.le.s32 %p8, %r31, %r32; - @%p8 bra $Lt_2_23810; - .loc 17 391 0 - add.u64 %rd45, %rd43, %rd13; - ld.shared.v4.f32 {%f56,%f57,%f58,_}, [%rd45+0]; - mul.ftz.f32 %f59, %f56, %f48; - sub.ftz.f32 %f60, %f59, %f57; - mul.ftz.f32 %f61, %f48, %f60; - .loc 17 392 0 - sub.ftz.f32 %f62, %f61, %f58; - fma.rn.ftz.f32 %f30, %f31, %f62, %f30; -$Lt_2_23810: - ld.param.s32 %r33, [__cudaparm_kernel_lj_fast_vflag]; - mov.u32 %r34, 0; - setp.le.s32 %p9, %r33, %r34; - @%p9 bra $Lt_2_30978; - .loc 17 395 0 - mov.f32 %f63, %f11; - mul.ftz.f32 %f64, %f37, %f37; - fma.rn.ftz.f32 %f65, %f55, %f64, %f63; - mov.f32 %f11, %f65; - .loc 17 396 0 - mov.f32 %f66, %f13; - fma.rn.ftz.f32 %f67, %f55, %f39, %f66; - mov.f32 %f13, %f67; - .loc 17 397 0 - mov.f32 %f68, %f15; - mul.ftz.f32 %f69, %f38, %f38; - fma.rn.ftz.f32 %f70, %f55, %f69, %f68; - mov.f32 %f15, %f70; - .loc 17 398 0 - mov.f32 %f71, %f17; - mul.ftz.f32 %f72, %f36, %f37; - fma.rn.ftz.f32 %f73, %f55, %f72, %f71; - mov.f32 %f17, %f73; - .loc 17 399 0 - mov.f32 %f74, %f19; - mul.ftz.f32 %f75, %f37, %f38; - fma.rn.ftz.f32 %f76, %f55, %f75, %f74; - mov.f32 %f19, %f76; - .loc 17 400 0 - mul.ftz.f32 %f77, %f36, %f38; - fma.rn.ftz.f32 %f20, %f55, %f77, %f20; - mov.f32 %f21, %f20; -$Lt_2_30978: -$L_2_20482: - .loc 17 394 0 - mul.lo.s32 %r35, %r19, %r6; - cvt.s64.s32 %rd46, %r35; - mul.wide.s32 %rd47, %r35, 4; - add.u64 %rd32, %rd32, %rd47; - setp.gt.u64 %p10, %rd35, %rd32; - @%p10 bra $Lt_2_23554; - bra.uni $Lt_2_23042; -$Lt_2_30722: - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 -$Lt_2_23042: - mov.u32 %r36, 1; - setp.le.s32 %p11, %r6, %r36; - @%p11 bra $Lt_2_27138; - .loc 17 405 0 - mov.u64 %rd48, __cuda___cuda_local_var_33260_55_non_const_red_acc10400; - cvt.s64.s32 %rd49, %r1; - mul.wide.s32 %rd50, %r1, 4; - add.u64 %rd51, %rd48, %rd50; - mov.f32 %f78, %f29; - st.shared.f32 [%rd51+0], %f78; - mov.f32 %f79, %f28; - st.shared.f32 [%rd51+512], %f79; - mov.f32 %f80, %f27; - st.shared.f32 [%rd51+1024], %f80; - mov.f32 %f81, %f30; - st.shared.f32 [%rd51+1536], %f81; - shr.s32 %r37, %r6, 31; - mov.s32 %r38, 1; - and.b32 %r39, %r37, %r38; - add.s32 %r40, %r39, %r6; - shr.s32 %r41, %r40, 1; - mov.s32 %r42, %r41; - mov.u32 %r43, 0; - setp.ne.u32 %p12, %r41, %r43; - @!%p12 bra $Lt_2_25602; -$Lt_2_26114: - setp.ge.u32 %p13, %r21, %r42; - @%p13 bra $Lt_2_26370; - add.u32 %r44, %r1, %r42; - cvt.u64.u32 %rd52, %r44; - mul.wide.u32 %rd53, %r44, 4; - add.u64 %rd54, %rd48, %rd53; - ld.shared.f32 %f82, [%rd54+0]; - add.ftz.f32 %f78, %f82, %f78; - st.shared.f32 [%rd51+0], %f78; - ld.shared.f32 %f83, [%rd54+512]; - add.ftz.f32 %f79, %f83, %f79; - st.shared.f32 [%rd51+512], %f79; - ld.shared.f32 %f84, [%rd54+1024]; - add.ftz.f32 %f80, %f84, %f80; - st.shared.f32 [%rd51+1024], %f80; - ld.shared.f32 %f85, [%rd54+1536]; - add.ftz.f32 %f81, %f85, %f81; - st.shared.f32 [%rd51+1536], %f81; -$Lt_2_26370: - shr.u32 %r42, %r42, 1; - mov.u32 %r45, 0; - setp.ne.u32 %p14, %r42, %r45; - @%p14 bra $Lt_2_26114; -$Lt_2_25602: - mov.f32 %f29, %f78; - mov.f32 %f28, %f79; - mov.f32 %f27, %f80; - mov.f32 %f30, %f81; - ld.param.s32 %r46, [__cudaparm_kernel_lj_fast_vflag]; - mov.u32 %r47, 0; - setp.le.s32 %p15, %r46, %r47; - @%p15 bra $Lt_2_27138; - mov.f32 %f78, %f11; - st.shared.f32 [%rd51+0], %f78; - mov.f32 %f79, %f13; - st.shared.f32 [%rd51+512], %f79; - mov.f32 %f80, %f15; - st.shared.f32 [%rd51+1024], %f80; - mov.f32 %f81, %f17; - st.shared.f32 [%rd51+1536], %f81; - mov.f32 %f86, %f19; - st.shared.f32 [%rd51+2048], %f86; - mov.f32 %f87, %f20; - st.shared.f32 [%rd51+2560], %f87; - mov.s32 %r48, %r41; - @!%p12 bra $Lt_2_27650; -$Lt_2_28162: - setp.ge.u32 %p16, %r21, %r48; - @%p16 bra $Lt_2_28418; - add.u32 %r49, %r1, %r48; - cvt.u64.u32 %rd55, %r49; - mul.wide.u32 %rd56, %r49, 4; - add.u64 %rd57, %rd48, %rd56; - ld.shared.f32 %f88, [%rd57+0]; - add.ftz.f32 %f78, %f88, %f78; - st.shared.f32 [%rd51+0], %f78; - ld.shared.f32 %f89, [%rd57+512]; - add.ftz.f32 %f79, %f89, %f79; - st.shared.f32 [%rd51+512], %f79; - ld.shared.f32 %f90, [%rd57+1024]; - add.ftz.f32 %f80, %f90, %f80; - st.shared.f32 [%rd51+1024], %f80; - ld.shared.f32 %f91, [%rd57+1536]; - add.ftz.f32 %f81, %f91, %f81; - st.shared.f32 [%rd51+1536], %f81; - ld.shared.f32 %f92, [%rd57+2048]; - add.ftz.f32 %f86, %f92, %f86; - st.shared.f32 [%rd51+2048], %f86; - ld.shared.f32 %f93, [%rd57+2560]; - add.ftz.f32 %f87, %f93, %f87; - st.shared.f32 [%rd51+2560], %f87; -$Lt_2_28418: - shr.u32 %r48, %r48, 1; - mov.u32 %r50, 0; - setp.ne.u32 %p17, %r48, %r50; - @%p17 bra $Lt_2_28162; -$Lt_2_27650: - mov.f32 %f11, %f78; - mov.f32 %f13, %f79; - mov.f32 %f15, %f80; - mov.f32 %f17, %f81; - mov.f32 %f19, %f86; - mov.f32 %f21, %f87; -$Lt_2_27138: -$Lt_2_25090: - mov.u32 %r51, 0; - setp.ne.s32 %p18, %r21, %r51; - @%p18 bra $Lt_2_29186; - ld.param.u64 %rd58, [__cudaparm_kernel_lj_fast___val_paramengv]; - add.u64 %rd59, %rd58, %rd18; - ld.param.s32 %r52, [__cudaparm_kernel_lj_fast_eflag]; - mov.u32 %r53, 0; - setp.le.s32 %p19, %r52, %r53; - @%p19 bra $Lt_2_29698; - ld.global.f32 %f94, [%rd59+0]; - add.ftz.f32 %f95, %f94, %f30; - st.global.f32 [%rd59+0], %f95; - cvt.s64.s32 %rd60, %r15; - mul.wide.s32 %rd61, %r15, 4; - add.u64 %rd59, %rd59, %rd61; -$Lt_2_29698: - ld.param.s32 %r54, [__cudaparm_kernel_lj_fast_vflag]; - mov.u32 %r55, 0; - setp.le.s32 %p20, %r54, %r55; - @%p20 bra $Lt_2_30210; - ld.global.f32 %f96, [%rd59+0]; - mov.f32 %f97, %f11; - add.ftz.f32 %f98, %f96, %f97; - st.global.f32 [%rd59+0], %f98; - cvt.s64.s32 %rd62, %r15; - mul.wide.s32 %rd63, %r15, 4; - add.u64 %rd64, %rd63, %rd59; - ld.global.f32 %f99, [%rd64+0]; - mov.f32 %f100, %f13; - add.ftz.f32 %f101, %f99, %f100; - st.global.f32 [%rd64+0], %f101; - add.u64 %rd65, %rd63, %rd64; - ld.global.f32 %f102, [%rd65+0]; - mov.f32 %f103, %f15; - add.ftz.f32 %f104, %f102, %f103; - st.global.f32 [%rd65+0], %f104; - add.u64 %rd66, %rd63, %rd65; - ld.global.f32 %f105, [%rd66+0]; - mov.f32 %f106, %f17; - add.ftz.f32 %f107, %f105, %f106; - st.global.f32 [%rd66+0], %f107; - add.u64 %rd67, %rd63, %rd66; - ld.global.f32 %f108, [%rd67+0]; - mov.f32 %f109, %f19; - add.ftz.f32 %f110, %f108, %f109; - st.global.f32 [%rd67+0], %f110; - add.u64 %rd59, %rd63, %rd67; - ld.global.f32 %f111, [%rd59+0]; - mov.f32 %f112, %f21; - add.ftz.f32 %f113, %f111, %f112; - st.global.f32 [%rd59+0], %f113; -$Lt_2_30210: - ld.param.u64 %rd68, [__cudaparm_kernel_lj_fast_ans]; - mul.lo.u64 %rd69, %rd17, 16; - add.u64 %rd70, %rd68, %rd69; - ld.global.v4.f32 {%f114,%f115,%f116,%f117}, [%rd70+0]; - add.ftz.f32 %f118, %f115, %f28; - add.ftz.f32 %f119, %f116, %f27; - add.ftz.f32 %f120, %f114, %f29; - st.global.v4.f32 [%rd70+0], {%f120,%f118,%f119,%f117}; -$Lt_2_29186: -$Lt_2_22530: - .loc 17 408 0 - exit; -$LDWend_kernel_lj_fast: - } // kernel_lj_fast - diff --git a/lib/gpu/gayberne_lj_ptx.h b/lib/gpu/gayberne_lj_ptx.h deleted file mode 100644 index f4a7b21b12..0000000000 --- a/lib/gpu/gayberne_lj_ptx.h +++ /dev/null @@ -1,1860 +0,0 @@ -const char * gayberne_lj = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .entry kernel_sphere_ellipsoid (\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_x_,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_q,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_shape,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_well,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_gum,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_sig_eps,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_ntypes,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_lshape,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_stride,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_ans,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid___val_paramengv,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_err_flag,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_eflag,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_vflag,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_start,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_inum,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_t_per_atom)\n" -" {\n" -" .reg .u32 %r<59>;\n" -" .reg .u64 %rd<79>;\n" -" .reg .f32 %f<432>;\n" -" .reg .pred %p<35>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32888_33_non_const_sp_lj124[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33089_55_non_const_red_acc140[3072];\n" -" .loc 17 28 0\n" -"$LDWbegin_kernel_sphere_ellipsoid:\n" -" .loc 17 34 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_sphere_ellipsoid_gum];\n" -" ldu.global.f32 %f1, [%rd1+12];\n" -" .loc 17 35 0\n" -" ld.global.f32 %f2, [%rd1+16];\n" -" .loc 17 36 0\n" -" ld.global.f32 %f3, [%rd1+20];\n" -" .loc 17 37 0\n" -" ld.global.f32 %f4, [%rd1+24];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32888_33_non_const_sp_lj124+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 46 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" -" ld.param.s32 %r1, [__cudaparm_kernel_sphere_ellipsoid_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_sphere_ellipsoid_start];\n" -" add.s32 %r10, %r9, %r8;\n" -" ld.param.s32 %r11, [__cudaparm_kernel_sphere_ellipsoid_inum];\n" -" setp.ge.s32 %p1, %r10, %r11;\n" -" @%p1 bra $Lt_0_55042;\n" -" .loc 17 51 0\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_sphere_ellipsoid_dev_nbor];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r12, [%rd5+0];\n" -" ld.param.s32 %r13, [__cudaparm_kernel_sphere_ellipsoid_stride];\n" -" cvt.s64.s32 %rd6, %r13;\n" -" mul.wide.s32 %rd7, %r13, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r14, [%rd8+0];\n" -" .loc 17 54 0\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_sphere_ellipsoid_x_];\n" -" cvt.s64.s32 %rd10, %r12;\n" -" mul.wide.s32 %rd11, %r12, 16;\n" -" add.u64 %rd12, %rd9, %rd11;\n" -" ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0];\n" -" .loc 17 57 0\n" -" cvt.rzi.ftz.s32.f32 %r15, %f20;\n" -" cvt.s64.s32 %rd13, %r15;\n" -" mul.wide.s32 %rd14, %r15, 16;\n" -" ld.param.u64 %rd15, [__cudaparm_kernel_sphere_ellipsoid_shape];\n" -" add.u64 %rd16, %rd14, %rd15;\n" -" ld.global.f32 %f21, [%rd16+0];\n" -" .loc 17 58 0\n" -" ld.param.u64 %rd17, [__cudaparm_kernel_sphere_ellipsoid_well];\n" -" add.u64 %rd18, %rd14, %rd17;\n" -" ld.global.f32 %f22, [%rd18+0];\n" -" cvt.s32.s64 %r16, %rd6;\n" -" sub.s32 %r17, %r1, 1;\n" -" and.b32 %r18, %r17, %r2;\n" -" add.u64 %rd19, %rd7, %rd8;\n" -" mul.lo.s32 %r19, %r16, %r18;\n" -" cvt.s64.s32 %rd20, %r19;\n" -" mul.wide.s32 %rd21, %r19, 4;\n" -" add.u64 %rd22, %rd19, %rd21;\n" -" mov.s64 %rd23, %rd22;\n" -" mul.lo.s32 %r20, %r16, %r14;\n" -" cvt.s64.s32 %rd24, %r20;\n" -" mul.wide.s32 %rd25, %r20, 4;\n" -" add.u64 %rd26, %rd19, %rd25;\n" -" setp.ge.u64 %p2, %rd22, %rd26;\n" -" @%p2 bra $Lt_0_56578;\n" -" ld.param.s32 %r21, [__cudaparm_kernel_sphere_ellipsoid_eflag];\n" -" mov.s32 %r22, 0;\n" -" setp.gt.s32 %p3, %r21, %r22;\n" -" ld.param.s32 %r23, [__cudaparm_kernel_sphere_ellipsoid_vflag];\n" -" mov.s32 %r24, 0;\n" -" setp.gt.s32 %p4, %r23, %r24;\n" -" ld.param.s32 %r25, [__cudaparm_kernel_sphere_ellipsoid_ntypes];\n" -" mul.lo.s32 %r26, %r25, %r15;\n" -" ld.param.u64 %rd27, [__cudaparm_kernel_sphere_ellipsoid_lshape];\n" -" mul.lo.u64 %rd28, %rd13, 4;\n" -" add.u64 %rd29, %rd27, %rd28;\n" -" ld.param.u64 %rd30, [__cudaparm_kernel_sphere_ellipsoid_sig_eps];\n" -" ld.param.u64 %rd31, [__cudaparm_kernel_sphere_ellipsoid_q];\n" -" mov.f32 %f23, 0f00000000; \n" -" mov.f32 %f24, 0f00000000; \n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.u64 %rd32, __cuda___cuda_local_var_32888_33_non_const_sp_lj124;\n" -"$Lt_0_40706:\n" -" .loc 17 63 0\n" -" ld.global.s32 %r27, [%rd23+0];\n" -" .loc 17 64 0\n" -" shr.s32 %r28, %r27, 30;\n" -" and.b32 %r29, %r28, 3;\n" -" cvt.s64.s32 %rd33, %r29;\n" -" mul.wide.s32 %rd34, %r29, 4;\n" -" add.u64 %rd35, %rd32, %rd34;\n" -" ld.shared.f32 %f27, [%rd35+0];\n" -" .loc 17 67 0\n" -" and.b32 %r30, %r27, 1073741823;\n" -" cvt.s64.s32 %rd36, %r30;\n" -" mul.wide.s32 %rd37, %r30, 16;\n" -" add.u64 %rd38, %rd37, %rd9;\n" -" ld.global.v4.f32 {%f28,%f29,%f30,%f31}, [%rd38+0];\n" -" .loc 17 86 0\n" -" add.u64 %rd39, %rd37, %rd31;\n" -" ld.global.v4.f32 {%f32,%f33,%f34,%f35}, [%rd39+0];\n" -" .loc 17 95 0\n" -" cvt.rzi.ftz.s32.f32 %r31, %f31;\n" -" cvt.s64.s32 %rd40, %r31;\n" -" mul.wide.s32 %rd41, %r31, 16;\n" -" add.u64 %rd42, %rd41, %rd15;\n" -" ld.global.v4.f32 {%f36,%f37,%f38,_}, [%rd42+0];\n" -" .loc 16 299 0\n" -" sub.ftz.f32 %f39, %f28, %f17;\n" -" mov.f32 %f40, %f39;\n" -" .loc 16 300 0\n" -" add.ftz.f32 %f41, %f33, %f33;\n" -" add.ftz.f32 %f42, %f35, %f35;\n" -" mul.ftz.f32 %f43, %f32, %f32;\n" -" mul.ftz.f32 %f44, %f33, %f33;\n" -" mul.ftz.f32 %f45, %f34, %f34;\n" -" mul.ftz.f32 %f46, %f35, %f35;\n" -" add.ftz.f32 %f47, %f34, %f34;\n" -" mul.ftz.f32 %f48, %f41, %f34;\n" -" mul.ftz.f32 %f49, %f41, %f35;\n" -" mul.ftz.f32 %f50, %f42, %f32;\n" -" add.ftz.f32 %f51, %f43, %f44;\n" -" mul.ftz.f32 %f52, %f47, %f32;\n" -" sub.ftz.f32 %f53, %f48, %f50;\n" -" sub.ftz.f32 %f54, %f51, %f45;\n" -" add.ftz.f32 %f55, %f49, %f52;\n" -" mul.ftz.f32 %f56, %f53, %f37;\n" -" sub.ftz.f32 %f57, %f54, %f46;\n" -" mul.ftz.f32 %f58, %f55, %f38;\n" -" mul.ftz.f32 %f59, %f53, %f56;\n" -" mul.ftz.f32 %f60, %f57, %f36;\n" -" fma.rn.ftz.f32 %f61, %f57, %f60, %f59;\n" -" fma.rn.ftz.f32 %f62, %f55, %f58, %f61;\n" -" add.ftz.f32 %f63, %f62, %f21;\n" -" mov.f32 %f64, %f63;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f65, %f41, %f32;\n" -" sub.ftz.f32 %f66, %f43, %f44;\n" -" mul.ftz.f32 %f67, %f47, %f35;\n" -" add.ftz.f32 %f68, %f48, %f50;\n" -" add.ftz.f32 %f69, %f45, %f66;\n" -" sub.ftz.f32 %f70, %f67, %f65;\n" -" mul.ftz.f32 %f71, %f68, %f36;\n" -" sub.ftz.f32 %f72, %f69, %f46;\n" -" mul.ftz.f32 %f73, %f70, %f38;\n" -" mul.ftz.f32 %f74, %f72, %f37;\n" -" mul.ftz.f32 %f75, %f53, %f74;\n" -" fma.rn.ftz.f32 %f76, %f57, %f71, %f75;\n" -" fma.rn.ftz.f32 %f77, %f55, %f73, %f76;\n" -" mov.f32 %f78, %f77;\n" -" .loc 16 302 0\n" -" sub.ftz.f32 %f79, %f66, %f45;\n" -" sub.ftz.f32 %f80, %f49, %f52;\n" -" add.ftz.f32 %f81, %f65, %f67;\n" -" add.ftz.f32 %f82, %f46, %f79;\n" -" mul.ftz.f32 %f83, %f80, %f36;\n" -" mul.ftz.f32 %f84, %f81, %f37;\n" -" mul.ftz.f32 %f85, %f82, %f38;\n" -" mul.ftz.f32 %f86, %f53, %f84;\n" -" fma.rn.ftz.f32 %f87, %f57, %f83, %f86;\n" -" fma.rn.ftz.f32 %f88, %f55, %f85, %f87;\n" -" mov.f32 %f89, %f88;\n" -" .loc 16 303 0\n" -" sub.ftz.f32 %f90, %f29, %f18;\n" -" mov.f32 %f91, %f90;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f92, %f56, %f72;\n" -" fma.rn.ftz.f32 %f93, %f60, %f68, %f92;\n" -" fma.rn.ftz.f32 %f94, %f58, %f70, %f93;\n" -" mov.f32 %f95, %f94;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f96, %f72, %f74;\n" -" fma.rn.ftz.f32 %f97, %f68, %f71, %f96;\n" -" fma.rn.ftz.f32 %f98, %f70, %f73, %f97;\n" -" add.ftz.f32 %f99, %f98, %f21;\n" -" mov.f32 %f100, %f99;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f101, %f72, %f84;\n" -" fma.rn.ftz.f32 %f102, %f68, %f83, %f101;\n" -" fma.rn.ftz.f32 %f103, %f70, %f85, %f102;\n" -" mov.f32 %f104, %f103;\n" -" .loc 16 307 0\n" -" sub.ftz.f32 %f105, %f30, %f19;\n" -" mov.f32 %f106, %f105;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f107, %f81, %f56;\n" -" fma.rn.ftz.f32 %f108, %f60, %f80, %f107;\n" -" fma.rn.ftz.f32 %f109, %f58, %f82, %f108;\n" -" mov.f32 %f110, %f109;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f111, %f81, %f74;\n" -" fma.rn.ftz.f32 %f112, %f71, %f80, %f111;\n" -" fma.rn.ftz.f32 %f113, %f73, %f82, %f112;\n" -" mov.f32 %f114, %f113;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f115, %f81, %f84;\n" -" fma.rn.ftz.f32 %f116, %f80, %f83, %f115;\n" -" fma.rn.ftz.f32 %f117, %f82, %f85, %f116;\n" -" add.ftz.f32 %f118, %f117, %f21;\n" -" mov.f32 %f119, %f118;\n" -" abs.ftz.f32 %f120, %f94;\n" -" abs.ftz.f32 %f121, %f63;\n" -" setp.gt.ftz.f32 %p5, %f120, %f121;\n" -" @!%p5 bra $Lt_0_40962;\n" -" .loc 16 314 0\n" -" mov.f32 %f64, %f94;\n" -" mov.f32 %f95, %f63;\n" -" .loc 16 315 0\n" -" mov.f32 %f78, %f99;\n" -" mov.f32 %f100, %f77;\n" -" .loc 16 316 0\n" -" mov.f32 %f89, %f103;\n" -" mov.f32 %f104, %f88;\n" -" .loc 16 317 0\n" -" mov.f32 %f40, %f90;\n" -" mov.f32 %f91, %f39;\n" -"$Lt_0_40962:\n" -" mov.f32 %f122, %f64;\n" -" abs.ftz.f32 %f123, %f122;\n" -" abs.ftz.f32 %f124, %f109;\n" -" setp.lt.ftz.f32 %p6, %f123, %f124;\n" -" @!%p6 bra $Lt_0_41474;\n" -" .loc 16 321 0\n" -" mov.f32 %f64, %f109;\n" -" mov.f32 %f110, %f122;\n" -" .loc 16 322 0\n" -" mov.f32 %f125, %f78;\n" -" mov.f32 %f78, %f113;\n" -" mov.f32 %f114, %f125;\n" -" .loc 16 323 0\n" -" mov.f32 %f126, %f89;\n" -" mov.f32 %f89, %f118;\n" -" mov.f32 %f119, %f126;\n" -" .loc 16 324 0\n" -" mov.f32 %f127, %f40;\n" -" mov.f32 %f40, %f105;\n" -" mov.f32 %f106, %f127;\n" -"$Lt_0_41474:\n" -" mov.f32 %f128, %f64;\n" -" mov.f32 %f129, 0f00000000; \n" -" setp.neu.ftz.f32 %p7, %f128, %f129;\n" -" @!%p7 bra $Lt_0_42242;\n" -" bra.uni $Lt_0_43010;\n" -"$Lt_0_42242:\n" -" mov.f32 %f130, 0f00000000; \n" -" setp.neu.ftz.f32 %p8, %f95, %f130;\n" -" @!%p8 bra $Lt_0_42754;\n" -" .loc 16 338 0\n" -" mov.f32 %f64, %f95;\n" -" mov.f32 %f95, %f128;\n" -" .loc 16 339 0\n" -" mov.f32 %f131, %f78;\n" -" mov.f32 %f78, %f100;\n" -" mov.f32 %f100, %f131;\n" -" .loc 16 340 0\n" -" mov.f32 %f132, %f89;\n" -" mov.f32 %f89, %f104;\n" -" mov.f32 %f104, %f132;\n" -" .loc 16 341 0\n" -" mov.f32 %f133, %f40;\n" -" mov.f32 %f40, %f91;\n" -" mov.f32 %f91, %f133;\n" -" bra.uni $Lt_0_43010;\n" -"$Lt_0_42754:\n" -" mov.f32 %f134, 0f00000000; \n" -" setp.neu.ftz.f32 %p9, %f110, %f134;\n" -" @!%p9 bra $Lt_0_43266;\n" -" .loc 16 346 0\n" -" mov.f32 %f64, %f110;\n" -" mov.f32 %f110, %f128;\n" -" .loc 16 347 0\n" -" mov.f32 %f135, %f78;\n" -" mov.f32 %f78, %f114;\n" -" mov.f32 %f114, %f135;\n" -" .loc 16 348 0\n" -" mov.f32 %f136, %f89;\n" -" mov.f32 %f89, %f119;\n" -" mov.f32 %f119, %f136;\n" -" .loc 16 349 0\n" -" mov.f32 %f137, %f40;\n" -" mov.f32 %f40, %f106;\n" -" mov.f32 %f106, %f137;\n" -" bra.uni $Lt_0_43010;\n" -"$Lt_0_43266:\n" -" .loc 16 352 0\n" -" mov.s32 %r32, 2;\n" -" ld.param.u64 %rd43, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd43+0], %r32;\n" -"$Lt_0_43010:\n" -"$Lt_0_42498:\n" -"$Lt_0_41986:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f138, %f95, %f64;\n" -" mul.ftz.f32 %f139, %f78, %f138;\n" -" sub.ftz.f32 %f140, %f100, %f139;\n" -" mov.f32 %f100, %f140;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f141, %f89, %f138;\n" -" sub.ftz.f32 %f142, %f104, %f141;\n" -" mov.f32 %f104, %f142;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f143, %f40, %f138;\n" -" sub.ftz.f32 %f144, %f91, %f143;\n" -" mov.f32 %f91, %f144;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f145, %f110, %f64;\n" -" mul.ftz.f32 %f146, %f78, %f145;\n" -" sub.ftz.f32 %f114, %f114, %f146;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f147, %f89, %f145;\n" -" sub.ftz.f32 %f119, %f119, %f147;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f148, %f40, %f145;\n" -" sub.ftz.f32 %f106, %f106, %f148;\n" -" abs.ftz.f32 %f149, %f140;\n" -" abs.ftz.f32 %f150, %f114;\n" -" setp.lt.ftz.f32 %p10, %f149, %f150;\n" -" @!%p10 bra $Lt_0_43522;\n" -" .loc 16 366 0\n" -" mov.f32 %f100, %f114;\n" -" mov.f32 %f114, %f140;\n" -" .loc 16 367 0\n" -" mov.f32 %f104, %f119;\n" -" mov.f32 %f119, %f142;\n" -" .loc 16 368 0\n" -" mov.f32 %f91, %f106;\n" -" mov.f32 %f106, %f144;\n" -"$Lt_0_43522:\n" -" mov.f32 %f151, %f100;\n" -" mov.f32 %f152, 0f00000000; \n" -" setp.neu.ftz.f32 %p11, %f151, %f152;\n" -" @!%p11 bra $Lt_0_44290;\n" -" bra.uni $Lt_0_44546;\n" -"$Lt_0_44290:\n" -" mov.f32 %f153, 0f00000000; \n" -" setp.neu.ftz.f32 %p12, %f114, %f153;\n" -" @!%p12 bra $Lt_0_44546;\n" -" .loc 16 383 0\n" -" mov.f32 %f100, %f114;\n" -" mov.f32 %f114, %f151;\n" -" .loc 16 384 0\n" -" mov.f32 %f154, %f104;\n" -" mov.f32 %f104, %f119;\n" -" mov.f32 %f119, %f154;\n" -" .loc 16 385 0\n" -" mov.f32 %f155, %f91;\n" -" mov.f32 %f91, %f106;\n" -" mov.f32 %f106, %f155;\n" -"$Lt_0_44546:\n" -"$Lt_0_44034:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f156, %f114, %f100;\n" -" mul.ftz.f32 %f157, %f104, %f156;\n" -" sub.ftz.f32 %f119, %f119, %f157;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f158, %f91, %f156;\n" -" sub.ftz.f32 %f106, %f106, %f158;\n" -" mov.f32 %f159, 0f00000000; \n" -" setp.eq.ftz.f32 %p13, %f119, %f159;\n" -" @!%p13 bra $Lt_0_45058;\n" -" .loc 16 394 0\n" -" mov.s32 %r33, 2;\n" -" ld.param.u64 %rd44, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd44+0], %r33;\n" -"$Lt_0_45058:\n" -" .loc 17 115 0\n" -" div.approx.ftz.f32 %f160, %f106, %f119;\n" -" mul.ftz.f32 %f161, %f90, %f90;\n" -" mul.ftz.f32 %f162, %f160, %f104;\n" -" fma.rn.ftz.f32 %f163, %f39, %f39, %f161;\n" -" sub.ftz.f32 %f164, %f91, %f162;\n" -" fma.rn.ftz.f32 %f165, %f105, %f105, %f163;\n" -" div.approx.ftz.f32 %f166, %f164, %f100;\n" -" rsqrt.approx.ftz.f32 %f167, %f165;\n" -" mul.ftz.f32 %f168, %f166, %f78;\n" -" fma.rn.ftz.f32 %f169, %f89, %f160, %f168;\n" -" sub.ftz.f32 %f170, %f40, %f169;\n" -" div.approx.ftz.f32 %f171, %f170, %f64;\n" -" mul.ftz.f32 %f172, %f167, %f171;\n" -" .loc 17 127 0\n" -" mul.ftz.f32 %f173, %f166, %f167;\n" -" mul.ftz.f32 %f174, %f167, %f90;\n" -" mul.ftz.f32 %f175, %f167, %f39;\n" -" mul.ftz.f32 %f176, %f167, %f105;\n" -" mul.ftz.f32 %f177, %f160, %f167;\n" -" mul.ftz.f32 %f178, %f173, %f174;\n" -" fma.rn.ftz.f32 %f179, %f175, %f172, %f178;\n" -" fma.rn.ftz.f32 %f180, %f176, %f177, %f179;\n" -" mov.f32 %f181, 0f3f000000; \n" -" mul.ftz.f32 %f182, %f180, %f181;\n" -" rsqrt.approx.ftz.f32 %f183, %f182;\n" -" .loc 17 131 0\n" -" rcp.approx.ftz.f32 %f184, %f167;\n" -" mul.ftz.f32 %f185, %f184, %f172;\n" -" .loc 17 136 0\n" -" add.s32 %r34, %r31, %r26;\n" -" cvt.s64.s32 %rd45, %r34;\n" -" mul.wide.s32 %rd46, %r34, 8;\n" -" add.u64 %rd47, %rd30, %rd46;\n" -" ld.global.v2.f32 {%f186,%f187}, [%rd47+0];\n" -" .loc 17 138 0\n" -" sub.ftz.f32 %f188, %f184, %f183;\n" -" ld.global.f32 %f189, [%rd1+0];\n" -" fma.rn.ftz.f32 %f190, %f189, %f186, %f188;\n" -" .loc 17 145 0\n" -" div.approx.ftz.f32 %f191, %f186, %f190;\n" -" mul.ftz.f32 %f192, %f191, %f191;\n" -" mul.ftz.f32 %f193, %f191, %f192;\n" -" mul.ftz.f32 %f194, %f193, %f193;\n" -" mul.ftz.f32 %f195, %f194, %f194;\n" -" mul.ftz.f32 %f196, %f191, %f194;\n" -" add.ftz.f32 %f197, %f195, %f195;\n" -" mul.ftz.f32 %f198, %f191, %f197;\n" -" sub.ftz.f32 %f199, %f198, %f196;\n" -" div.approx.ftz.f32 %f200, %f199, %f186;\n" -" mov.f32 %f201, 0f41c00000; \n" -" mul.ftz.f32 %f202, %f200, %f201;\n" -" mul.ftz.f32 %f203, %f187, %f202;\n" -" .loc 17 150 0\n" -" mul.ftz.f32 %f204, %f183, %f203;\n" -" mul.ftz.f32 %f205, %f204, %f183;\n" -" mul.ftz.f32 %f206, %f205, %f183;\n" -" mov.f32 %f207, 0f3f000000; \n" -" mul.ftz.f32 %f208, %f206, %f207;\n" -" mul.ftz.f32 %f209, %f208, %f167;\n" -" mul.ftz.f32 %f210, %f173, %f184;\n" -" mul.ftz.f32 %f211, %f177, %f184;\n" -" mul.ftz.f32 %f212, %f167, %f209;\n" -" mul.ftz.f32 %f213, %f174, %f210;\n" -" fma.rn.ftz.f32 %f214, %f175, %f185, %f213;\n" -" fma.rn.ftz.f32 %f215, %f176, %f211, %f214;\n" -" mul.ftz.f32 %f216, %f175, %f215;\n" -" sub.ftz.f32 %f217, %f185, %f216;\n" -" mul.ftz.f32 %f218, %f212, %f217;\n" -" fma.rn.ftz.f32 %f219, %f175, %f203, %f218;\n" -" .loc 17 151 0\n" -" mul.ftz.f32 %f220, %f174, %f215;\n" -" sub.ftz.f32 %f221, %f210, %f220;\n" -" mul.ftz.f32 %f222, %f212, %f221;\n" -" fma.rn.ftz.f32 %f223, %f174, %f203, %f222;\n" -" .loc 17 152 0\n" -" mul.ftz.f32 %f224, %f176, %f215;\n" -" sub.ftz.f32 %f225, %f211, %f224;\n" -" mul.ftz.f32 %f226, %f212, %f225;\n" -" fma.rn.ftz.f32 %f227, %f176, %f203, %f226;\n" -" .loc 17 159 0\n" -" ld.global.f32 %f228, [%rd29+0];\n" -" mul.lo.u64 %rd48, %rd40, 4;\n" -" add.u64 %rd49, %rd27, %rd48;\n" -" ld.global.f32 %f229, [%rd49+0];\n" -" add.ftz.f32 %f230, %f228, %f228;\n" -" mul.ftz.f32 %f231, %f229, %f230;\n" -" .loc 17 160 0\n" -" mul.ftz.f32 %f232, %f103, %f63;\n" -" mul.ftz.f32 %f233, %f113, %f232;\n" -" mul.ftz.f32 %f234, %f99, %f63;\n" -" mul.ftz.f32 %f235, %f118, %f234;\n" -" sub.ftz.f32 %f236, %f235, %f233;\n" -" mul.ftz.f32 %f237, %f94, %f77;\n" -" mul.ftz.f32 %f238, %f118, %f237;\n" -" sub.ftz.f32 %f239, %f236, %f238;\n" -" mul.ftz.f32 %f240, %f94, %f88;\n" -" fma.rn.ftz.f32 %f241, %f113, %f240, %f239;\n" -" mul.ftz.f32 %f242, %f109, %f77;\n" -" fma.rn.ftz.f32 %f243, %f103, %f242, %f241;\n" -" mul.ftz.f32 %f244, %f109, %f88;\n" -" mul.ftz.f32 %f245, %f99, %f244;\n" -" sub.ftz.f32 %f246, %f243, %f245;\n" -" .loc 17 161 0\n" -" ld.global.f32 %f247, [%rd1+4];\n" -" .loc 17 172 0\n" -" add.u64 %rd50, %rd41, %rd17;\n" -" ld.global.v4.f32 {%f248,%f249,%f250,_}, [%rd50+0];\n" -" .loc 16 299 0\n" -" mov.f32 %f40, %f39;\n" -" .loc 16 300 0\n" -" mul.ftz.f32 %f251, %f53, %f249;\n" -" mul.ftz.f32 %f252, %f55, %f250;\n" -" mul.ftz.f32 %f253, %f53, %f251;\n" -" mul.ftz.f32 %f254, %f57, %f248;\n" -" fma.rn.ftz.f32 %f255, %f57, %f254, %f253;\n" -" fma.rn.ftz.f32 %f256, %f55, %f252, %f255;\n" -" add.ftz.f32 %f257, %f256, %f22;\n" -" mov.f32 %f64, %f257;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f258, %f68, %f248;\n" -" mul.ftz.f32 %f259, %f70, %f250;\n" -" mul.ftz.f32 %f260, %f72, %f249;\n" -" mul.ftz.f32 %f261, %f53, %f260;\n" -" fma.rn.ftz.f32 %f262, %f57, %f258, %f261;\n" -" fma.rn.ftz.f32 %f263, %f55, %f259, %f262;\n" -" mov.f32 %f78, %f263;\n" -" .loc 16 302 0\n" -" mul.ftz.f32 %f264, %f80, %f248;\n" -" mul.ftz.f32 %f265, %f81, %f249;\n" -" mul.ftz.f32 %f266, %f82, %f250;\n" -" mul.ftz.f32 %f267, %f53, %f265;\n" -" fma.rn.ftz.f32 %f268, %f57, %f264, %f267;\n" -" fma.rn.ftz.f32 %f269, %f55, %f266, %f268;\n" -" mov.f32 %f89, %f269;\n" -" .loc 16 303 0\n" -" mov.f32 %f91, %f90;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f270, %f251, %f72;\n" -" fma.rn.ftz.f32 %f271, %f254, %f68, %f270;\n" -" fma.rn.ftz.f32 %f272, %f252, %f70, %f271;\n" -" mov.f32 %f95, %f272;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f273, %f72, %f260;\n" -" fma.rn.ftz.f32 %f274, %f68, %f258, %f273;\n" -" fma.rn.ftz.f32 %f275, %f70, %f259, %f274;\n" -" add.ftz.f32 %f100, %f22, %f275;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f276, %f72, %f265;\n" -" fma.rn.ftz.f32 %f277, %f68, %f264, %f276;\n" -" fma.rn.ftz.f32 %f104, %f70, %f266, %f277;\n" -" .loc 16 307 0\n" -" mov.f32 %f106, %f105;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f278, %f81, %f251;\n" -" fma.rn.ftz.f32 %f279, %f254, %f80, %f278;\n" -" fma.rn.ftz.f32 %f280, %f252, %f82, %f279;\n" -" mov.f32 %f110, %f280;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f281, %f81, %f260;\n" -" fma.rn.ftz.f32 %f282, %f258, %f80, %f281;\n" -" fma.rn.ftz.f32 %f114, %f259, %f82, %f282;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f283, %f81, %f265;\n" -" fma.rn.ftz.f32 %f284, %f80, %f264, %f283;\n" -" fma.rn.ftz.f32 %f285, %f82, %f266, %f284;\n" -" add.ftz.f32 %f119, %f22, %f285;\n" -" abs.ftz.f32 %f286, %f272;\n" -" abs.ftz.f32 %f287, %f257;\n" -" setp.gt.ftz.f32 %p14, %f286, %f287;\n" -" @!%p14 bra $Lt_0_45570;\n" -" .loc 16 314 0\n" -" mov.f32 %f64, %f272;\n" -" mov.f32 %f95, %f257;\n" -" .loc 16 315 0\n" -" mov.f32 %f78, %f100;\n" -" mov.f32 %f100, %f263;\n" -" .loc 16 316 0\n" -" mov.f32 %f89, %f104;\n" -" mov.f32 %f104, %f269;\n" -" .loc 16 317 0\n" -" mov.f32 %f40, %f90;\n" -" mov.f32 %f91, %f39;\n" -"$Lt_0_45570:\n" -" mov.f32 %f288, %f64;\n" -" abs.ftz.f32 %f289, %f288;\n" -" abs.ftz.f32 %f290, %f280;\n" -" setp.lt.ftz.f32 %p15, %f289, %f290;\n" -" @!%p15 bra $Lt_0_46082;\n" -" .loc 16 321 0\n" -" mov.f32 %f64, %f280;\n" -" mov.f32 %f110, %f288;\n" -" .loc 16 322 0\n" -" mov.f32 %f291, %f78;\n" -" mov.f32 %f78, %f114;\n" -" mov.f32 %f114, %f291;\n" -" .loc 16 323 0\n" -" mov.f32 %f292, %f89;\n" -" mov.f32 %f89, %f119;\n" -" mov.f32 %f119, %f292;\n" -" .loc 16 324 0\n" -" mov.f32 %f293, %f40;\n" -" mov.f32 %f40, %f105;\n" -" mov.f32 %f106, %f293;\n" -"$Lt_0_46082:\n" -" mov.f32 %f294, %f64;\n" -" mov.f32 %f295, 0f00000000; \n" -" setp.neu.ftz.f32 %p16, %f294, %f295;\n" -" @!%p16 bra $Lt_0_46850;\n" -" bra.uni $Lt_0_47618;\n" -"$Lt_0_46850:\n" -" mov.f32 %f296, 0f00000000; \n" -" setp.neu.ftz.f32 %p17, %f95, %f296;\n" -" @!%p17 bra $Lt_0_47362;\n" -" .loc 16 338 0\n" -" mov.f32 %f64, %f95;\n" -" mov.f32 %f95, %f294;\n" -" .loc 16 339 0\n" -" mov.f32 %f297, %f78;\n" -" mov.f32 %f78, %f100;\n" -" mov.f32 %f100, %f297;\n" -" .loc 16 340 0\n" -" mov.f32 %f298, %f89;\n" -" mov.f32 %f89, %f104;\n" -" mov.f32 %f104, %f298;\n" -" .loc 16 341 0\n" -" mov.f32 %f299, %f40;\n" -" mov.f32 %f40, %f91;\n" -" mov.f32 %f91, %f299;\n" -" bra.uni $Lt_0_47618;\n" -"$Lt_0_47362:\n" -" mov.f32 %f300, 0f00000000; \n" -" setp.neu.ftz.f32 %p18, %f110, %f300;\n" -" @!%p18 bra $Lt_0_47874;\n" -" .loc 16 346 0\n" -" mov.f32 %f64, %f110;\n" -" mov.f32 %f110, %f294;\n" -" .loc 16 347 0\n" -" mov.f32 %f301, %f78;\n" -" mov.f32 %f78, %f114;\n" -" mov.f32 %f114, %f301;\n" -" .loc 16 348 0\n" -" mov.f32 %f302, %f89;\n" -" mov.f32 %f89, %f119;\n" -" mov.f32 %f119, %f302;\n" -" .loc 16 349 0\n" -" mov.f32 %f303, %f40;\n" -" mov.f32 %f40, %f106;\n" -" mov.f32 %f106, %f303;\n" -" bra.uni $Lt_0_47618;\n" -"$Lt_0_47874:\n" -" .loc 16 352 0\n" -" mov.s32 %r35, 2;\n" -" ld.param.u64 %rd51, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd51+0], %r35;\n" -"$Lt_0_47618:\n" -"$Lt_0_47106:\n" -"$Lt_0_46594:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f304, %f95, %f64;\n" -" mul.ftz.f32 %f305, %f78, %f304;\n" -" sub.ftz.f32 %f306, %f100, %f305;\n" -" mov.f32 %f100, %f306;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f307, %f89, %f304;\n" -" sub.ftz.f32 %f308, %f104, %f307;\n" -" mov.f32 %f104, %f308;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f309, %f40, %f304;\n" -" sub.ftz.f32 %f310, %f91, %f309;\n" -" mov.f32 %f91, %f310;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f311, %f110, %f64;\n" -" mul.ftz.f32 %f312, %f78, %f311;\n" -" sub.ftz.f32 %f114, %f114, %f312;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f313, %f89, %f311;\n" -" sub.ftz.f32 %f119, %f119, %f313;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f314, %f40, %f311;\n" -" sub.ftz.f32 %f106, %f106, %f314;\n" -" abs.ftz.f32 %f315, %f306;\n" -" abs.ftz.f32 %f316, %f114;\n" -" setp.lt.ftz.f32 %p19, %f315, %f316;\n" -" @!%p19 bra $Lt_0_48130;\n" -" .loc 16 366 0\n" -" mov.f32 %f100, %f114;\n" -" mov.f32 %f114, %f306;\n" -" .loc 16 367 0\n" -" mov.f32 %f104, %f119;\n" -" mov.f32 %f119, %f308;\n" -" .loc 16 368 0\n" -" mov.f32 %f91, %f106;\n" -" mov.f32 %f106, %f310;\n" -"$Lt_0_48130:\n" -" mov.f32 %f317, %f100;\n" -" mov.f32 %f318, 0f00000000; \n" -" setp.neu.ftz.f32 %p20, %f317, %f318;\n" -" @!%p20 bra $Lt_0_48898;\n" -" bra.uni $Lt_0_49154;\n" -"$Lt_0_48898:\n" -" mov.f32 %f319, 0f00000000; \n" -" setp.neu.ftz.f32 %p21, %f114, %f319;\n" -" @!%p21 bra $Lt_0_49154;\n" -" .loc 16 383 0\n" -" mov.f32 %f100, %f114;\n" -" mov.f32 %f114, %f317;\n" -" .loc 16 384 0\n" -" mov.f32 %f320, %f104;\n" -" mov.f32 %f104, %f119;\n" -" mov.f32 %f119, %f320;\n" -" .loc 16 385 0\n" -" mov.f32 %f321, %f91;\n" -" mov.f32 %f91, %f106;\n" -" mov.f32 %f106, %f321;\n" -"$Lt_0_49154:\n" -"$Lt_0_48642:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f322, %f114, %f100;\n" -" mul.ftz.f32 %f323, %f104, %f322;\n" -" sub.ftz.f32 %f119, %f119, %f323;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f324, %f91, %f322;\n" -" sub.ftz.f32 %f106, %f106, %f324;\n" -" mov.f32 %f325, 0f00000000; \n" -" setp.eq.ftz.f32 %p22, %f119, %f325;\n" -" @!%p22 bra $Lt_0_49666;\n" -" .loc 16 394 0\n" -" mov.s32 %r36, 2;\n" -" ld.param.u64 %rd52, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd52+0], %r36;\n" -"$Lt_0_49666:\n" -" .loc 17 189 0\n" -" div.approx.ftz.f32 %f326, %f106, %f119;\n" -" mul.ftz.f32 %f327, %f326, %f104;\n" -" sub.ftz.f32 %f328, %f91, %f327;\n" -" div.approx.ftz.f32 %f329, %f328, %f100;\n" -" mul.ftz.f32 %f330, %f329, %f78;\n" -" fma.rn.ftz.f32 %f331, %f89, %f326, %f330;\n" -" sub.ftz.f32 %f332, %f40, %f331;\n" -" div.approx.ftz.f32 %f333, %f332, %f64;\n" -" mul.ftz.f32 %f334, %f167, %f333;\n" -" .loc 17 193 0\n" -" ld.global.f32 %f335, [%rd1+8];\n" -" .loc 21 496 0\n" -" mul.ftz.f32 %f336, %f329, %f167;\n" -" mul.ftz.f32 %f337, %f326, %f167;\n" -" mul.ftz.f32 %f338, %f336, %f174;\n" -" fma.rn.ftz.f32 %f339, %f175, %f334, %f338;\n" -" fma.rn.ftz.f32 %f340, %f176, %f337, %f339;\n" -" add.ftz.f32 %f341, %f340, %f340;\n" -" lg2.approx.ftz.f32 %f342, %f341;\n" -" .loc 21 538 0\n" -" mul.ftz.f32 %f343, %f342, %f335;\n" -" ex2.approx.ftz.f32 %f344, %f343;\n" -" .loc 17 196 0\n" -" mul.ftz.f32 %f345, %f184, %f334;\n" -" .loc 17 201 0\n" -" mov.f32 %f346, 0fbf800000; \n" -" add.ftz.f32 %f347, %f335, %f346;\n" -" .loc 21 496 0\n" -" lg2.approx.ftz.f32 %f348, %f344;\n" -" .loc 17 201 0\n" -" div.approx.ftz.f32 %f349, %f347, %f335;\n" -" mul.ftz.f32 %f350, %f348, %f349;\n" -" ex2.approx.ftz.f32 %f351, %f350;\n" -" mov.f32 %f352, 0fc0800000; \n" -" mul.ftz.f32 %f353, %f167, %f352;\n" -" mul.ftz.f32 %f354, %f167, %f353;\n" -" mul.ftz.f32 %f355, %f335, %f354;\n" -" mul.ftz.f32 %f356, %f351, %f355;\n" -" .loc 17 203 0\n" -" mul.ftz.f32 %f357, %f336, %f184;\n" -" mul.ftz.f32 %f358, %f337, %f184;\n" -" mul.ftz.f32 %f359, %f174, %f357;\n" -" fma.rn.ftz.f32 %f360, %f175, %f345, %f359;\n" -" fma.rn.ftz.f32 %f361, %f176, %f358, %f360;\n" -" mul.ftz.f32 %f362, %f175, %f361;\n" -" sub.ftz.f32 %f363, %f345, %f362;\n" -" mul.ftz.f32 %f364, %f356, %f363;\n" -" .loc 17 204 0\n" -" mul.ftz.f32 %f365, %f174, %f361;\n" -" sub.ftz.f32 %f366, %f357, %f365;\n" -" mul.ftz.f32 %f367, %f356, %f366;\n" -" .loc 17 205 0\n" -" mul.ftz.f32 %f368, %f176, %f361;\n" -" sub.ftz.f32 %f369, %f358, %f368;\n" -" mul.ftz.f32 %f370, %f356, %f369;\n" -" .loc 16 396 0\n" -" mov.f32 %f371, 0f40800000; \n" -" mul.ftz.f32 %f372, %f187, %f371;\n" -" div.approx.ftz.f32 %f373, %f231, %f246;\n" -" lg2.approx.ftz.f32 %f374, %f373;\n" -" mul.ftz.f32 %f375, %f374, %f247;\n" -" ex2.approx.ftz.f32 %f376, %f375;\n" -" mul.ftz.f32 %f377, %f376, %f27;\n" -" sub.ftz.f32 %f378, %f195, %f194;\n" -" mul.ftz.f32 %f379, %f377, %f344;\n" -" mul.ftz.f32 %f380, %f372, %f378;\n" -" fma.rn.ftz.f32 %f381, %f380, %f379, %f26;\n" -" selp.f32 %f26, %f381, %f26, %p3;\n" -" mul.ftz.f32 %f382, %f379, %f219;\n" -" mul.ftz.f32 %f383, %f379, %f223;\n" -" mul.ftz.f32 %f384, %f379, %f227;\n" -" mul.ftz.f32 %f385, %f376, %f380;\n" -" mul.ftz.f32 %f386, %f385, %f27;\n" -" neg.ftz.f32 %f387, %f386;\n" -" mul.ftz.f32 %f388, %f364, %f387;\n" -" sub.ftz.f32 %f389, %f388, %f382;\n" -" mul.ftz.f32 %f390, %f367, %f387;\n" -" sub.ftz.f32 %f391, %f390, %f383;\n" -" mul.ftz.f32 %f392, %f370, %f387;\n" -" sub.ftz.f32 %f393, %f392, %f384;\n" -" @!%p4 bra $Lt_0_50434;\n" -" .loc 17 217 0\n" -" add.ftz.f32 %f25, %f389, %f25;\n" -" .loc 17 218 0\n" -" sub.ftz.f32 %f394, %f17, %f28;\n" -" mov.f32 %f395, %f6;\n" -" fma.rn.ftz.f32 %f396, %f394, %f389, %f395;\n" -" mov.f32 %f6, %f396;\n" -" .loc 17 220 0\n" -" add.ftz.f32 %f24, %f391, %f24;\n" -" .loc 17 221 0\n" -" sub.ftz.f32 %f397, %f18, %f29;\n" -" mov.f32 %f398, %f8;\n" -" fma.rn.ftz.f32 %f399, %f397, %f391, %f398;\n" -" mov.f32 %f8, %f399;\n" -" .loc 17 222 0\n" -" mov.f32 %f400, %f12;\n" -" fma.rn.ftz.f32 %f401, %f394, %f391, %f400;\n" -" mov.f32 %f12, %f401;\n" -" .loc 17 224 0\n" -" add.ftz.f32 %f23, %f393, %f23;\n" -" .loc 17 225 0\n" -" mov.f32 %f402, %f10;\n" -" sub.ftz.f32 %f403, %f19, %f30;\n" -" fma.rn.ftz.f32 %f404, %f403, %f393, %f402;\n" -" mov.f32 %f10, %f404;\n" -" .loc 17 226 0\n" -" mov.f32 %f405, %f14;\n" -" fma.rn.ftz.f32 %f406, %f394, %f393, %f405;\n" -" mov.f32 %f14, %f406;\n" -" .loc 17 227 0\n" -" fma.rn.ftz.f32 %f15, %f397, %f393, %f15;\n" -" mov.f32 %f16, %f15;\n" -" bra.uni $Lt_0_50178;\n" -"$Lt_0_50434:\n" -" .loc 17 229 0\n" -" add.ftz.f32 %f25, %f389, %f25;\n" -" .loc 17 230 0\n" -" add.ftz.f32 %f24, %f391, %f24;\n" -" .loc 17 231 0\n" -" add.ftz.f32 %f23, %f393, %f23;\n" -"$Lt_0_50178:\n" -" mul.lo.s32 %r37, %r16, %r1;\n" -" cvt.s64.s32 %rd53, %r37;\n" -" mul.wide.s32 %rd54, %r37, 4;\n" -" add.u64 %rd23, %rd23, %rd54;\n" -" setp.gt.u64 %p23, %rd26, %rd23;\n" -" @%p23 bra $Lt_0_40706;\n" -" bra.uni $Lt_0_40194;\n" -"$Lt_0_56578:\n" -" mov.f32 %f23, 0f00000000; \n" -" mov.f32 %f24, 0f00000000; \n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -"$Lt_0_40194:\n" -" mov.u32 %r38, 1;\n" -" setp.le.s32 %p24, %r1, %r38;\n" -" @%p24 bra $Lt_0_52994;\n" -" .loc 17 234 0\n" -" mov.u64 %rd55, __cuda___cuda_local_var_33089_55_non_const_red_acc140;\n" -" cvt.s64.s32 %rd56, %r2;\n" -" mul.wide.s32 %rd57, %r2, 4;\n" -" add.u64 %rd58, %rd55, %rd57;\n" -" mov.f32 %f407, %f25;\n" -" st.shared.f32 [%rd58+0], %f407;\n" -" mov.f32 %f408, %f24;\n" -" st.shared.f32 [%rd58+512], %f408;\n" -" mov.f32 %f409, %f23;\n" -" st.shared.f32 [%rd58+1024], %f409;\n" -" mov.f32 %f410, %f26;\n" -" st.shared.f32 [%rd58+1536], %f410;\n" -" shr.s32 %r39, %r1, 31;\n" -" mov.s32 %r40, 1;\n" -" and.b32 %r41, %r39, %r40;\n" -" add.s32 %r42, %r41, %r1;\n" -" shr.s32 %r43, %r42, 1;\n" -" mov.s32 %r44, %r43;\n" -" mov.u32 %r45, 0;\n" -" setp.ne.u32 %p25, %r43, %r45;\n" -" @!%p25 bra $Lt_0_51458;\n" -"$Lt_0_51970:\n" -" setp.ge.u32 %p26, %r18, %r44;\n" -" @%p26 bra $Lt_0_52226;\n" -" add.u32 %r46, %r2, %r44;\n" -" cvt.u64.u32 %rd59, %r46;\n" -" mul.wide.u32 %rd60, %r46, 4;\n" -" add.u64 %rd61, %rd55, %rd60;\n" -" ld.shared.f32 %f411, [%rd61+0];\n" -" add.ftz.f32 %f407, %f411, %f407;\n" -" st.shared.f32 [%rd58+0], %f407;\n" -" ld.shared.f32 %f412, [%rd61+512];\n" -" add.ftz.f32 %f408, %f412, %f408;\n" -" st.shared.f32 [%rd58+512], %f408;\n" -" ld.shared.f32 %f413, [%rd61+1024];\n" -" add.ftz.f32 %f409, %f413, %f409;\n" -" st.shared.f32 [%rd58+1024], %f409;\n" -" ld.shared.f32 %f414, [%rd61+1536];\n" -" add.ftz.f32 %f410, %f414, %f410;\n" -" st.shared.f32 [%rd58+1536], %f410;\n" -"$Lt_0_52226:\n" -" shr.u32 %r44, %r44, 1;\n" -" mov.u32 %r47, 0;\n" -" setp.ne.u32 %p27, %r44, %r47;\n" -" @%p27 bra $Lt_0_51970;\n" -"$Lt_0_51458:\n" -" mov.f32 %f25, %f407;\n" -" mov.f32 %f24, %f408;\n" -" mov.f32 %f23, %f409;\n" -" mov.f32 %f26, %f410;\n" -" ld.param.s32 %r48, [__cudaparm_kernel_sphere_ellipsoid_vflag];\n" -" mov.u32 %r49, 0;\n" -" setp.le.s32 %p28, %r48, %r49;\n" -" @%p28 bra $Lt_0_52994;\n" -" mov.f32 %f407, %f6;\n" -" st.shared.f32 [%rd58+0], %f407;\n" -" mov.f32 %f408, %f8;\n" -" st.shared.f32 [%rd58+512], %f408;\n" -" mov.f32 %f409, %f10;\n" -" st.shared.f32 [%rd58+1024], %f409;\n" -" mov.f32 %f410, %f12;\n" -" st.shared.f32 [%rd58+1536], %f410;\n" -" mov.f32 %f415, %f14;\n" -" st.shared.f32 [%rd58+2048], %f415;\n" -" mov.f32 %f416, %f15;\n" -" st.shared.f32 [%rd58+2560], %f416;\n" -" mov.s32 %r50, %r43;\n" -" @!%p25 bra $Lt_0_53506;\n" -"$Lt_0_54018:\n" -" setp.ge.u32 %p29, %r18, %r50;\n" -" @%p29 bra $Lt_0_54274;\n" -" add.u32 %r51, %r2, %r50;\n" -" cvt.u64.u32 %rd62, %r51;\n" -" mul.wide.u32 %rd63, %r51, 4;\n" -" add.u64 %rd64, %rd55, %rd63;\n" -" ld.shared.f32 %f417, [%rd64+0];\n" -" add.ftz.f32 %f407, %f417, %f407;\n" -" st.shared.f32 [%rd58+0], %f407;\n" -" ld.shared.f32 %f418, [%rd64+512];\n" -" add.ftz.f32 %f408, %f418, %f408;\n" -" st.shared.f32 [%rd58+512], %f408;\n" -" ld.shared.f32 %f419, [%rd64+1024];\n" -" add.ftz.f32 %f409, %f419, %f409;\n" -" st.shared.f32 [%rd58+1024], %f409;\n" -" ld.shared.f32 %f420, [%rd64+1536];\n" -" add.ftz.f32 %f410, %f420, %f410;\n" -" st.shared.f32 [%rd58+1536], %f410;\n" -" ld.shared.f32 %f421, [%rd64+2048];\n" -" add.ftz.f32 %f415, %f421, %f415;\n" -" st.shared.f32 [%rd58+2048], %f415;\n" -" ld.shared.f32 %f422, [%rd64+2560];\n" -" add.ftz.f32 %f416, %f422, %f416;\n" -" st.shared.f32 [%rd58+2560], %f416;\n" -"$Lt_0_54274:\n" -" shr.u32 %r50, %r50, 1;\n" -" mov.u32 %r52, 0;\n" -" setp.ne.u32 %p30, %r50, %r52;\n" -" @%p30 bra $Lt_0_54018;\n" -"$Lt_0_53506:\n" -" mov.f32 %f6, %f407;\n" -" mov.f32 %f8, %f408;\n" -" mov.f32 %f10, %f409;\n" -" mov.f32 %f12, %f410;\n" -" mov.f32 %f14, %f415;\n" -" mov.f32 %f16, %f416;\n" -"$Lt_0_52994:\n" -"$Lt_0_50946:\n" -" mov.u32 %r53, 0;\n" -" setp.ne.s32 %p31, %r18, %r53;\n" -" @%p31 bra $Lt_0_55042;\n" -" ld.param.u64 %rd65, [__cudaparm_kernel_sphere_ellipsoid___val_paramengv];\n" -" add.u64 %rd66, %rd65, %rd3;\n" -" ld.param.s32 %r54, [__cudaparm_kernel_sphere_ellipsoid_eflag];\n" -" mov.u32 %r55, 0;\n" -" setp.le.s32 %p32, %r54, %r55;\n" -" @%p32 bra $Lt_0_55554;\n" -" st.global.f32 [%rd66+0], %f26;\n" -" cvt.s64.s32 %rd67, %r11;\n" -" mul.wide.s32 %rd68, %r11, 4;\n" -" add.u64 %rd66, %rd66, %rd68;\n" -"$Lt_0_55554:\n" -" ld.param.s32 %r56, [__cudaparm_kernel_sphere_ellipsoid_vflag];\n" -" mov.u32 %r57, 0;\n" -" setp.le.s32 %p33, %r56, %r57;\n" -" @%p33 bra $Lt_0_56066;\n" -" mov.f32 %f423, %f6;\n" -" st.global.f32 [%rd66+0], %f423;\n" -" cvt.s64.s32 %rd69, %r11;\n" -" mul.wide.s32 %rd70, %r11, 4;\n" -" add.u64 %rd71, %rd70, %rd66;\n" -" mov.f32 %f424, %f8;\n" -" st.global.f32 [%rd71+0], %f424;\n" -" add.u64 %rd72, %rd70, %rd71;\n" -" mov.f32 %f425, %f10;\n" -" st.global.f32 [%rd72+0], %f425;\n" -" add.u64 %rd73, %rd70, %rd72;\n" -" mov.f32 %f426, %f12;\n" -" st.global.f32 [%rd73+0], %f426;\n" -" add.u64 %rd66, %rd70, %rd73;\n" -" mov.f32 %f427, %f14;\n" -" st.global.f32 [%rd66+0], %f427;\n" -" mov.f32 %f428, %f16;\n" -" add.u64 %rd74, %rd70, %rd66;\n" -" st.global.f32 [%rd74+0], %f428;\n" -"$Lt_0_56066:\n" -" ld.param.u64 %rd75, [__cudaparm_kernel_sphere_ellipsoid_ans];\n" -" mul.lo.u64 %rd76, %rd2, 16;\n" -" add.u64 %rd77, %rd75, %rd76;\n" -" mov.f32 %f429, %f430;\n" -" st.global.v4.f32 [%rd77+0], {%f25,%f24,%f23,%f429};\n" -"$Lt_0_55042:\n" -"$Lt_0_39682:\n" -" .loc 17 237 0\n" -" exit;\n" -"$LDWend_kernel_sphere_ellipsoid:\n" -" }\n" -" .entry kernel_lj (\n" -" .param .u64 __cudaparm_kernel_lj_x_,\n" -" .param .u64 __cudaparm_kernel_lj_lj1,\n" -" .param .u64 __cudaparm_kernel_lj_lj3,\n" -" .param .s32 __cudaparm_kernel_lj_lj_types,\n" -" .param .u64 __cudaparm_kernel_lj_gum,\n" -" .param .s32 __cudaparm_kernel_lj_stride,\n" -" .param .u64 __cudaparm_kernel_lj_dev_ij,\n" -" .param .u64 __cudaparm_kernel_lj_ans,\n" -" .param .u64 __cudaparm_kernel_lj___val_paramengv,\n" -" .param .u64 __cudaparm_kernel_lj_err_flag,\n" -" .param .s32 __cudaparm_kernel_lj_eflag,\n" -" .param .s32 __cudaparm_kernel_lj_vflag,\n" -" .param .s32 __cudaparm_kernel_lj_start,\n" -" .param .s32 __cudaparm_kernel_lj_inum,\n" -" .param .s32 __cudaparm_kernel_lj_t_per_atom)\n" -" {\n" -" .reg .u32 %r<55>;\n" -" .reg .u64 %rd<60>;\n" -" .reg .f32 %f<115>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33106_33_non_const_sp_lj3316[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33172_55_non_const_red_acc3332[3072];\n" -" .loc 17 246 0\n" -"$LDWbegin_kernel_lj:\n" -" .loc 17 252 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_lj_gum];\n" -" ldu.global.f32 %f1, [%rd1+12];\n" -" .loc 17 253 0\n" -" ld.global.f32 %f2, [%rd1+16];\n" -" .loc 17 254 0\n" -" ld.global.f32 %f3, [%rd1+20];\n" -" .loc 17 255 0\n" -" ld.global.f32 %f4, [%rd1+24];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_33106_33_non_const_sp_lj3316+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 264 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" -" ld.param.s32 %r1, [__cudaparm_kernel_lj_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_lj_start];\n" -" add.s32 %r10, %r9, %r8;\n" -" ld.param.s32 %r11, [__cudaparm_kernel_lj_inum];\n" -" setp.ge.s32 %p1, %r10, %r11;\n" -" @%p1 bra $Lt_1_25346;\n" -" .loc 17 269 0\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_lj_dev_ij];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r12, [%rd5+0];\n" -" ld.param.s32 %r13, [__cudaparm_kernel_lj_stride];\n" -" cvt.s64.s32 %rd6, %r13;\n" -" mul.wide.s32 %rd7, %r13, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r14, [%rd8+0];\n" -" .loc 17 272 0\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_lj_x_];\n" -" cvt.s64.s32 %rd10, %r12;\n" -" mul.wide.s32 %rd11, %r12, 16;\n" -" add.u64 %rd12, %rd9, %rd11;\n" -" ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0];\n" -" .loc 17 273 0\n" -" cvt.s32.s64 %r15, %rd6;\n" -" sub.s32 %r16, %r1, 1;\n" -" and.b32 %r17, %r16, %r2;\n" -" add.u64 %rd13, %rd7, %rd8;\n" -" mul.lo.s32 %r18, %r15, %r17;\n" -" cvt.s64.s32 %rd14, %r18;\n" -" mul.wide.s32 %rd15, %r18, 4;\n" -" add.u64 %rd16, %rd13, %rd15;\n" -" mov.s64 %rd17, %rd16;\n" -" mul.lo.s32 %r19, %r15, %r14;\n" -" cvt.s64.s32 %rd18, %r19;\n" -" mul.wide.s32 %rd19, %r19, 4;\n" -" add.u64 %rd20, %rd13, %rd19;\n" -" setp.ge.u64 %p2, %rd16, %rd20;\n" -" @%p2 bra $Lt_1_26882;\n" -" cvt.rzi.ftz.s32.f32 %r20, %f20;\n" -" ld.param.s32 %r21, [__cudaparm_kernel_lj_lj_types];\n" -" mul.lo.s32 %r22, %r21, %r20;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_lj_lj1];\n" -" mov.f32 %f21, 0f00000000; \n" -" mov.f32 %f22, 0f00000000; \n" -" mov.f32 %f23, 0f00000000; \n" -" mov.f32 %f24, 0f00000000; \n" -" mov.u64 %rd22, __cuda___cuda_local_var_33106_33_non_const_sp_lj3316;\n" -"$Lt_1_19714:\n" -" .loc 17 278 0\n" -" ld.global.s32 %r23, [%rd17+0];\n" -" .loc 17 279 0\n" -" shr.s32 %r24, %r23, 30;\n" -" and.b32 %r25, %r24, 3;\n" -" cvt.s64.s32 %rd23, %r25;\n" -" mul.wide.s32 %rd24, %r25, 4;\n" -" add.u64 %rd25, %rd22, %rd24;\n" -" ld.shared.f32 %f25, [%rd25+0];\n" -" .loc 17 282 0\n" -" and.b32 %r26, %r23, 1073741823;\n" -" cvt.s64.s32 %rd26, %r26;\n" -" mul.wide.s32 %rd27, %r26, 16;\n" -" add.u64 %rd28, %rd9, %rd27;\n" -" ld.global.v4.f32 {%f26,%f27,%f28,%f29}, [%rd28+0];\n" -" .loc 17 278 0\n" -" cvt.rzi.ftz.s32.f32 %r27, %f29;\n" -" sub.ftz.f32 %f30, %f18, %f27;\n" -" sub.ftz.f32 %f31, %f17, %f26;\n" -" sub.ftz.f32 %f32, %f19, %f28;\n" -" mul.ftz.f32 %f33, %f30, %f30;\n" -" fma.rn.ftz.f32 %f34, %f31, %f31, %f33;\n" -" fma.rn.ftz.f32 %f35, %f32, %f32, %f34;\n" -" add.s32 %r28, %r27, %r22;\n" -" cvt.s64.s32 %rd29, %r28;\n" -" mul.wide.s32 %rd30, %r28, 16;\n" -" add.u64 %rd31, %rd30, %rd21;\n" -" ld.global.f32 %f36, [%rd31+8];\n" -" setp.gt.ftz.f32 %p3, %f36, %f35;\n" -" @!%p3 bra $Lt_1_27138;\n" -" ld.global.f32 %f37, [%rd31+12];\n" -" mov.f32 %f38, 0f00000000; \n" -" setp.eq.ftz.f32 %p4, %f37, %f38;\n" -" @!%p4 bra $Lt_1_27138;\n" -" .loc 17 296 0\n" -" rcp.approx.ftz.f32 %f39, %f35;\n" -" mul.ftz.f32 %f40, %f39, %f39;\n" -" mul.ftz.f32 %f41, %f39, %f40;\n" -" mul.ftz.f32 %f42, %f39, %f41;\n" -" ld.global.v2.f32 {%f43,%f44}, [%rd31+0];\n" -" mul.ftz.f32 %f45, %f43, %f41;\n" -" sub.ftz.f32 %f46, %f45, %f44;\n" -" mul.ftz.f32 %f47, %f42, %f46;\n" -" mul.ftz.f32 %f48, %f25, %f47;\n" -" .loc 17 298 0\n" -" fma.rn.ftz.f32 %f23, %f31, %f48, %f23;\n" -" .loc 17 299 0\n" -" fma.rn.ftz.f32 %f22, %f30, %f48, %f22;\n" -" .loc 17 300 0\n" -" fma.rn.ftz.f32 %f21, %f32, %f48, %f21;\n" -" ld.param.s32 %r29, [__cudaparm_kernel_lj_eflag];\n" -" mov.u32 %r30, 0;\n" -" setp.le.s32 %p5, %r29, %r30;\n" -" @%p5 bra $Lt_1_19970;\n" -" .loc 17 304 0\n" -" ld.param.u64 %rd32, [__cudaparm_kernel_lj_lj3];\n" -" add.u64 %rd33, %rd32, %rd30;\n" -" ld.global.v4.f32 {%f49,%f50,%f51,_}, [%rd33+0];\n" -" mul.ftz.f32 %f52, %f49, %f41;\n" -" sub.ftz.f32 %f53, %f52, %f50;\n" -" mul.ftz.f32 %f54, %f41, %f53;\n" -" sub.ftz.f32 %f55, %f54, %f51;\n" -" fma.rn.ftz.f32 %f24, %f25, %f55, %f24;\n" -"$Lt_1_19970:\n" -" ld.param.s32 %r31, [__cudaparm_kernel_lj_vflag];\n" -" mov.u32 %r32, 0;\n" -" setp.le.s32 %p6, %r31, %r32;\n" -" @%p6 bra $Lt_1_27138;\n" -" .loc 17 307 0\n" -" mov.f32 %f56, %f6;\n" -" mul.ftz.f32 %f57, %f31, %f31;\n" -" fma.rn.ftz.f32 %f58, %f48, %f57, %f56;\n" -" mov.f32 %f6, %f58;\n" -" .loc 17 308 0\n" -" mov.f32 %f59, %f8;\n" -" fma.rn.ftz.f32 %f60, %f48, %f33, %f59;\n" -" mov.f32 %f8, %f60;\n" -" .loc 17 309 0\n" -" mov.f32 %f61, %f10;\n" -" mul.ftz.f32 %f62, %f32, %f32;\n" -" fma.rn.ftz.f32 %f63, %f48, %f62, %f61;\n" -" mov.f32 %f10, %f63;\n" -" .loc 17 310 0\n" -" mov.f32 %f64, %f12;\n" -" mul.ftz.f32 %f65, %f30, %f31;\n" -" fma.rn.ftz.f32 %f66, %f48, %f65, %f64;\n" -" mov.f32 %f12, %f66;\n" -" .loc 17 311 0\n" -" mov.f32 %f67, %f14;\n" -" mul.ftz.f32 %f68, %f31, %f32;\n" -" fma.rn.ftz.f32 %f69, %f48, %f68, %f67;\n" -" mov.f32 %f14, %f69;\n" -" .loc 17 312 0\n" -" mul.ftz.f32 %f70, %f30, %f32;\n" -" fma.rn.ftz.f32 %f15, %f48, %f70, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_1_27138:\n" -"$L_1_18178:\n" -" .loc 17 306 0\n" -" mul.lo.s32 %r33, %r15, %r1;\n" -" cvt.s64.s32 %rd34, %r33;\n" -" mul.wide.s32 %rd35, %r33, 4;\n" -" add.u64 %rd17, %rd17, %rd35;\n" -" setp.gt.u64 %p7, %rd20, %rd17;\n" -" @%p7 bra $Lt_1_19714;\n" -" bra.uni $Lt_1_19202;\n" -"$Lt_1_26882:\n" -" mov.f32 %f21, 0f00000000; \n" -" mov.f32 %f22, 0f00000000; \n" -" mov.f32 %f23, 0f00000000; \n" -" mov.f32 %f24, 0f00000000; \n" -"$Lt_1_19202:\n" -" mov.u32 %r34, 1;\n" -" setp.le.s32 %p8, %r1, %r34;\n" -" @%p8 bra $Lt_1_23298;\n" -" .loc 17 317 0\n" -" mov.u64 %rd36, __cuda___cuda_local_var_33172_55_non_const_red_acc3332;\n" -" cvt.s64.s32 %rd37, %r2;\n" -" mul.wide.s32 %rd38, %r2, 4;\n" -" add.u64 %rd39, %rd36, %rd38;\n" -" mov.f32 %f71, %f23;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" mov.f32 %f72, %f22;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" mov.f32 %f73, %f21;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" mov.f32 %f74, %f24;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -" shr.s32 %r35, %r1, 31;\n" -" mov.s32 %r36, 1;\n" -" and.b32 %r37, %r35, %r36;\n" -" add.s32 %r38, %r37, %r1;\n" -" shr.s32 %r39, %r38, 1;\n" -" mov.s32 %r40, %r39;\n" -" mov.u32 %r41, 0;\n" -" setp.ne.u32 %p9, %r39, %r41;\n" -" @!%p9 bra $Lt_1_21762;\n" -"$Lt_1_22274:\n" -" setp.ge.u32 %p10, %r17, %r40;\n" -" @%p10 bra $Lt_1_22530;\n" -" add.u32 %r42, %r2, %r40;\n" -" cvt.u64.u32 %rd40, %r42;\n" -" mul.wide.u32 %rd41, %r42, 4;\n" -" add.u64 %rd42, %rd36, %rd41;\n" -" ld.shared.f32 %f75, [%rd42+0];\n" -" add.ftz.f32 %f71, %f75, %f71;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" ld.shared.f32 %f76, [%rd42+512];\n" -" add.ftz.f32 %f72, %f76, %f72;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" ld.shared.f32 %f77, [%rd42+1024];\n" -" add.ftz.f32 %f73, %f77, %f73;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" ld.shared.f32 %f78, [%rd42+1536];\n" -" add.ftz.f32 %f74, %f78, %f74;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -"$Lt_1_22530:\n" -" shr.u32 %r40, %r40, 1;\n" -" mov.u32 %r43, 0;\n" -" setp.ne.u32 %p11, %r40, %r43;\n" -" @%p11 bra $Lt_1_22274;\n" -"$Lt_1_21762:\n" -" mov.f32 %f23, %f71;\n" -" mov.f32 %f22, %f72;\n" -" mov.f32 %f21, %f73;\n" -" mov.f32 %f24, %f74;\n" -" ld.param.s32 %r44, [__cudaparm_kernel_lj_vflag];\n" -" mov.u32 %r45, 0;\n" -" setp.le.s32 %p12, %r44, %r45;\n" -" @%p12 bra $Lt_1_23298;\n" -" mov.f32 %f71, %f6;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" mov.f32 %f72, %f8;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" mov.f32 %f73, %f10;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" mov.f32 %f74, %f12;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -" mov.f32 %f79, %f14;\n" -" st.shared.f32 [%rd39+2048], %f79;\n" -" mov.f32 %f80, %f15;\n" -" st.shared.f32 [%rd39+2560], %f80;\n" -" mov.s32 %r46, %r39;\n" -" @!%p9 bra $Lt_1_23810;\n" -"$Lt_1_24322:\n" -" setp.ge.u32 %p13, %r17, %r46;\n" -" @%p13 bra $Lt_1_24578;\n" -" add.u32 %r47, %r2, %r46;\n" -" cvt.u64.u32 %rd43, %r47;\n" -" mul.wide.u32 %rd44, %r47, 4;\n" -" add.u64 %rd45, %rd36, %rd44;\n" -" ld.shared.f32 %f81, [%rd45+0];\n" -" add.ftz.f32 %f71, %f81, %f71;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" ld.shared.f32 %f82, [%rd45+512];\n" -" add.ftz.f32 %f72, %f82, %f72;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" ld.shared.f32 %f83, [%rd45+1024];\n" -" add.ftz.f32 %f73, %f83, %f73;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" ld.shared.f32 %f84, [%rd45+1536];\n" -" add.ftz.f32 %f74, %f84, %f74;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -" ld.shared.f32 %f85, [%rd45+2048];\n" -" add.ftz.f32 %f79, %f85, %f79;\n" -" st.shared.f32 [%rd39+2048], %f79;\n" -" ld.shared.f32 %f86, [%rd45+2560];\n" -" add.ftz.f32 %f80, %f86, %f80;\n" -" st.shared.f32 [%rd39+2560], %f80;\n" -"$Lt_1_24578:\n" -" shr.u32 %r46, %r46, 1;\n" -" mov.u32 %r48, 0;\n" -" setp.ne.u32 %p14, %r46, %r48;\n" -" @%p14 bra $Lt_1_24322;\n" -"$Lt_1_23810:\n" -" mov.f32 %f6, %f71;\n" -" mov.f32 %f8, %f72;\n" -" mov.f32 %f10, %f73;\n" -" mov.f32 %f12, %f74;\n" -" mov.f32 %f14, %f79;\n" -" mov.f32 %f16, %f80;\n" -"$Lt_1_23298:\n" -"$Lt_1_21250:\n" -" mov.u32 %r49, 0;\n" -" setp.ne.s32 %p15, %r17, %r49;\n" -" @%p15 bra $Lt_1_25346;\n" -" ld.param.u64 %rd46, [__cudaparm_kernel_lj___val_paramengv];\n" -" add.u64 %rd47, %rd46, %rd3;\n" -" ld.param.s32 %r50, [__cudaparm_kernel_lj_eflag];\n" -" mov.u32 %r51, 0;\n" -" setp.le.s32 %p16, %r50, %r51;\n" -" @%p16 bra $Lt_1_25858;\n" -" ld.global.f32 %f87, [%rd47+0];\n" -" add.ftz.f32 %f88, %f87, %f24;\n" -" st.global.f32 [%rd47+0], %f88;\n" -" cvt.s64.s32 %rd48, %r11;\n" -" mul.wide.s32 %rd49, %r11, 4;\n" -" add.u64 %rd47, %rd47, %rd49;\n" -"$Lt_1_25858:\n" -" ld.param.s32 %r52, [__cudaparm_kernel_lj_vflag];\n" -" mov.u32 %r53, 0;\n" -" setp.le.s32 %p17, %r52, %r53;\n" -" @%p17 bra $Lt_1_26370;\n" -" ld.global.f32 %f89, [%rd47+0];\n" -" mov.f32 %f90, %f6;\n" -" add.ftz.f32 %f91, %f89, %f90;\n" -" st.global.f32 [%rd47+0], %f91;\n" -" cvt.s64.s32 %rd50, %r11;\n" -" mul.wide.s32 %rd51, %r11, 4;\n" -" add.u64 %rd52, %rd51, %rd47;\n" -" ld.global.f32 %f92, [%rd52+0];\n" -" mov.f32 %f93, %f8;\n" -" add.ftz.f32 %f94, %f92, %f93;\n" -" st.global.f32 [%rd52+0], %f94;\n" -" add.u64 %rd53, %rd51, %rd52;\n" -" ld.global.f32 %f95, [%rd53+0];\n" -" mov.f32 %f96, %f10;\n" -" add.ftz.f32 %f97, %f95, %f96;\n" -" st.global.f32 [%rd53+0], %f97;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" ld.global.f32 %f98, [%rd54+0];\n" -" mov.f32 %f99, %f12;\n" -" add.ftz.f32 %f100, %f98, %f99;\n" -" st.global.f32 [%rd54+0], %f100;\n" -" add.u64 %rd55, %rd51, %rd54;\n" -" ld.global.f32 %f101, [%rd55+0];\n" -" mov.f32 %f102, %f14;\n" -" add.ftz.f32 %f103, %f101, %f102;\n" -" st.global.f32 [%rd55+0], %f103;\n" -" add.u64 %rd47, %rd51, %rd55;\n" -" ld.global.f32 %f104, [%rd47+0];\n" -" mov.f32 %f105, %f16;\n" -" add.ftz.f32 %f106, %f104, %f105;\n" -" st.global.f32 [%rd47+0], %f106;\n" -"$Lt_1_26370:\n" -" ld.param.u64 %rd56, [__cudaparm_kernel_lj_ans];\n" -" mul.lo.u64 %rd57, %rd2, 16;\n" -" add.u64 %rd58, %rd56, %rd57;\n" -" ld.global.v4.f32 {%f107,%f108,%f109,%f110}, [%rd58+0];\n" -" add.ftz.f32 %f111, %f108, %f22;\n" -" add.ftz.f32 %f112, %f109, %f21;\n" -" add.ftz.f32 %f113, %f107, %f23;\n" -" st.global.v4.f32 [%rd58+0], {%f113,%f111,%f112,%f110};\n" -"$Lt_1_25346:\n" -"$Lt_1_18690:\n" -" .loc 17 320 0\n" -" exit;\n" -"$LDWend_kernel_lj:\n" -" }\n" -" .entry kernel_lj_fast (\n" -" .param .u64 __cudaparm_kernel_lj_fast_x_,\n" -" .param .u64 __cudaparm_kernel_lj_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_lj_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_lj_fast_gum,\n" -" .param .s32 __cudaparm_kernel_lj_fast_stride,\n" -" .param .u64 __cudaparm_kernel_lj_fast_dev_ij,\n" -" .param .u64 __cudaparm_kernel_lj_fast_ans,\n" -" .param .u64 __cudaparm_kernel_lj_fast___val_paramengv,\n" -" .param .u64 __cudaparm_kernel_lj_fast_err_flag,\n" -" .param .s32 __cudaparm_kernel_lj_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_lj_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_lj_fast_start,\n" -" .param .s32 __cudaparm_kernel_lj_fast_inum,\n" -" .param .s32 __cudaparm_kernel_lj_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<57>;\n" -" .reg .u64 %rd<72>;\n" -" .reg .f32 %f<122>;\n" -" .reg .pred %p<22>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33188_33_non_const_sp_lj6500[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33189_34_non_const_lj16528[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33190_34_non_const_lj38464[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33260_55_non_const_red_acc10400[3072];\n" -" .loc 17 328 0\n" -"$LDWbegin_kernel_lj_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_2_20994;\n" -" .loc 17 337 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_33188_33_non_const_sp_lj6500;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_lj_fast_gum];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+12];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_2_20994:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_33188_33_non_const_sp_lj6500;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_2_21506;\n" -" .loc 17 339 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_33189_34_non_const_lj16528;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 16;\n" -" ld.param.u64 %rd10, [__cudaparm_kernel_lj_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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5};\n" -" ld.param.s32 %r4, [__cudaparm_kernel_lj_fast_eflag];\n" -" mov.u32 %r5, 0;\n" -" setp.le.s32 %p3, %r4, %r5;\n" -" @%p3 bra $Lt_2_22018;\n" -" .loc 17 341 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_33190_34_non_const_lj38464;\n" -" ld.param.u64 %rd14, [__cudaparm_kernel_lj_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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_2_22018:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_33190_34_non_const_lj38464;\n" -"$Lt_2_21506:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_33190_34_non_const_lj38464;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_33189_34_non_const_lj16528;\n" -" .loc 17 351 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 17 353 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_lj_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_lj_fast_start];\n" -" add.s32 %r14, %r13, %r12;\n" -" ld.param.s32 %r15, [__cudaparm_kernel_lj_fast_inum];\n" -" setp.ge.s32 %p4, %r14, %r15;\n" -" @%p4 bra $Lt_2_29186;\n" -" .loc 17 358 0\n" -" cvt.s64.s32 %rd17, %r14;\n" -" mul.wide.s32 %rd18, %r14, 4;\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_lj_fast_dev_ij];\n" -" add.u64 %rd20, %rd19, %rd18;\n" -" ld.global.s32 %r16, [%rd20+0];\n" -" ld.param.s32 %r17, [__cudaparm_kernel_lj_fast_stride];\n" -" cvt.s64.s32 %rd21, %r17;\n" -" mul.wide.s32 %rd22, %r17, 4;\n" -" add.u64 %rd23, %rd22, %rd20;\n" -" ld.global.s32 %r18, [%rd23+0];\n" -" .loc 17 361 0\n" -" ld.param.u64 %rd24, [__cudaparm_kernel_lj_fast_x_];\n" -" cvt.s64.s32 %rd25, %r16;\n" -" mul.wide.s32 %rd26, %r16, 16;\n" -" add.u64 %rd27, %rd24, %rd26;\n" -" ld.global.v4.f32 {%f22,%f23,%f24,%f25}, [%rd27+0];\n" -" .loc 17 363 0\n" -" cvt.s32.s64 %r19, %rd21;\n" -" sub.s32 %r20, %r6, 1;\n" -" and.b32 %r21, %r20, %r1;\n" -" add.u64 %rd28, %rd22, %rd23;\n" -" mul.lo.s32 %r22, %r19, %r21;\n" -" cvt.s64.s32 %rd29, %r22;\n" -" mul.wide.s32 %rd30, %r22, 4;\n" -" add.u64 %rd31, %rd28, %rd30;\n" -" mov.s64 %rd32, %rd31;\n" -" mul.lo.s32 %r23, %r19, %r18;\n" -" cvt.s64.s32 %rd33, %r23;\n" -" mul.wide.s32 %rd34, %r23, 4;\n" -" add.u64 %rd35, %rd28, %rd34;\n" -" setp.ge.u64 %p5, %rd31, %rd35;\n" -" @%p5 bra $Lt_2_30722;\n" -" cvt.rzi.ftz.s32.f32 %r24, %f25;\n" -" mul.lo.s32 %r25, %r24, 11;\n" -" cvt.rn.f32.s32 %f26, %r25;\n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -"$Lt_2_23554:\n" -" .loc 17 368 0\n" -" ld.global.s32 %r26, [%rd32+0];\n" -" .loc 17 369 0\n" -" shr.s32 %r27, %r26, 30;\n" -" and.b32 %r28, %r27, 3;\n" -" cvt.s64.s32 %rd36, %r28;\n" -" mul.wide.s32 %rd37, %r28, 4;\n" -" add.u64 %rd38, %rd1, %rd37;\n" -" ld.shared.f32 %f31, [%rd38+0];\n" -" .loc 17 372 0\n" -" and.b32 %r29, %r26, 1073741823;\n" -" cvt.s64.s32 %rd39, %r29;\n" -" mul.wide.s32 %rd40, %r29, 16;\n" -" add.u64 %rd41, %rd24, %rd40;\n" -" ld.global.v4.f32 {%f32,%f33,%f34,%f35}, [%rd41+0];\n" -" .loc 17 368 0\n" -" sub.ftz.f32 %f36, %f23, %f33;\n" -" sub.ftz.f32 %f37, %f22, %f32;\n" -" sub.ftz.f32 %f38, %f24, %f34;\n" -" mul.ftz.f32 %f39, %f36, %f36;\n" -" fma.rn.ftz.f32 %f40, %f37, %f37, %f39;\n" -" fma.rn.ftz.f32 %f41, %f38, %f38, %f40;\n" -" add.ftz.f32 %f42, %f26, %f35;\n" -" cvt.rzi.ftz.s32.f32 %r30, %f42;\n" -" cvt.s64.s32 %rd42, %r30;\n" -" mul.wide.s32 %rd43, %r30, 16;\n" -" add.u64 %rd44, %rd43, %rd7;\n" -" ld.shared.f32 %f43, [%rd44+8];\n" -" setp.gt.ftz.f32 %p6, %f43, %f41;\n" -" @!%p6 bra $Lt_2_30978;\n" -" ld.shared.f32 %f44, [%rd44+12];\n" -" mov.f32 %f45, 0f00000000; \n" -" setp.eq.ftz.f32 %p7, %f44, %f45;\n" -" @!%p7 bra $Lt_2_30978;\n" -" .loc 17 384 0\n" -" rcp.approx.ftz.f32 %f46, %f41;\n" -" mul.ftz.f32 %f47, %f46, %f46;\n" -" mul.ftz.f32 %f48, %f46, %f47;\n" -" mul.ftz.f32 %f49, %f46, %f31;\n" -" mul.ftz.f32 %f50, %f48, %f49;\n" -" ld.shared.v2.f32 {%f51,%f52}, [%rd44+0];\n" -" mul.ftz.f32 %f53, %f51, %f48;\n" -" sub.ftz.f32 %f54, %f53, %f52;\n" -" mul.ftz.f32 %f55, %f50, %f54;\n" -" .loc 17 386 0\n" -" fma.rn.ftz.f32 %f29, %f37, %f55, %f29;\n" -" .loc 17 387 0\n" -" fma.rn.ftz.f32 %f28, %f36, %f55, %f28;\n" -" .loc 17 388 0\n" -" fma.rn.ftz.f32 %f27, %f38, %f55, %f27;\n" -" ld.param.s32 %r31, [__cudaparm_kernel_lj_fast_eflag];\n" -" mov.u32 %r32, 0;\n" -" setp.le.s32 %p8, %r31, %r32;\n" -" @%p8 bra $Lt_2_23810;\n" -" .loc 17 391 0\n" -" add.u64 %rd45, %rd43, %rd13;\n" -" ld.shared.v4.f32 {%f56,%f57,%f58,_}, [%rd45+0];\n" -" mul.ftz.f32 %f59, %f56, %f48;\n" -" sub.ftz.f32 %f60, %f59, %f57;\n" -" mul.ftz.f32 %f61, %f48, %f60;\n" -" .loc 17 392 0\n" -" sub.ftz.f32 %f62, %f61, %f58;\n" -" fma.rn.ftz.f32 %f30, %f31, %f62, %f30;\n" -"$Lt_2_23810:\n" -" ld.param.s32 %r33, [__cudaparm_kernel_lj_fast_vflag];\n" -" mov.u32 %r34, 0;\n" -" setp.le.s32 %p9, %r33, %r34;\n" -" @%p9 bra $Lt_2_30978;\n" -" .loc 17 395 0\n" -" mov.f32 %f63, %f11;\n" -" mul.ftz.f32 %f64, %f37, %f37;\n" -" fma.rn.ftz.f32 %f65, %f55, %f64, %f63;\n" -" mov.f32 %f11, %f65;\n" -" .loc 17 396 0\n" -" mov.f32 %f66, %f13;\n" -" fma.rn.ftz.f32 %f67, %f55, %f39, %f66;\n" -" mov.f32 %f13, %f67;\n" -" .loc 17 397 0\n" -" mov.f32 %f68, %f15;\n" -" mul.ftz.f32 %f69, %f38, %f38;\n" -" fma.rn.ftz.f32 %f70, %f55, %f69, %f68;\n" -" mov.f32 %f15, %f70;\n" -" .loc 17 398 0\n" -" mov.f32 %f71, %f17;\n" -" mul.ftz.f32 %f72, %f36, %f37;\n" -" fma.rn.ftz.f32 %f73, %f55, %f72, %f71;\n" -" mov.f32 %f17, %f73;\n" -" .loc 17 399 0\n" -" mov.f32 %f74, %f19;\n" -" mul.ftz.f32 %f75, %f37, %f38;\n" -" fma.rn.ftz.f32 %f76, %f55, %f75, %f74;\n" -" mov.f32 %f19, %f76;\n" -" .loc 17 400 0\n" -" mul.ftz.f32 %f77, %f36, %f38;\n" -" fma.rn.ftz.f32 %f20, %f55, %f77, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_2_30978:\n" -"$L_2_20482:\n" -" .loc 17 394 0\n" -" mul.lo.s32 %r35, %r19, %r6;\n" -" cvt.s64.s32 %rd46, %r35;\n" -" mul.wide.s32 %rd47, %r35, 4;\n" -" add.u64 %rd32, %rd32, %rd47;\n" -" setp.gt.u64 %p10, %rd35, %rd32;\n" -" @%p10 bra $Lt_2_23554;\n" -" bra.uni $Lt_2_23042;\n" -"$Lt_2_30722:\n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -"$Lt_2_23042:\n" -" mov.u32 %r36, 1;\n" -" setp.le.s32 %p11, %r6, %r36;\n" -" @%p11 bra $Lt_2_27138;\n" -" .loc 17 405 0\n" -" mov.u64 %rd48, __cuda___cuda_local_var_33260_55_non_const_red_acc10400;\n" -" cvt.s64.s32 %rd49, %r1;\n" -" mul.wide.s32 %rd50, %r1, 4;\n" -" add.u64 %rd51, %rd48, %rd50;\n" -" mov.f32 %f78, %f29;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" mov.f32 %f79, %f28;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" mov.f32 %f80, %f27;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" mov.f32 %f81, %f30;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -" shr.s32 %r37, %r6, 31;\n" -" mov.s32 %r38, 1;\n" -" and.b32 %r39, %r37, %r38;\n" -" add.s32 %r40, %r39, %r6;\n" -" shr.s32 %r41, %r40, 1;\n" -" mov.s32 %r42, %r41;\n" -" mov.u32 %r43, 0;\n" -" setp.ne.u32 %p12, %r41, %r43;\n" -" @!%p12 bra $Lt_2_25602;\n" -"$Lt_2_26114:\n" -" setp.ge.u32 %p13, %r21, %r42;\n" -" @%p13 bra $Lt_2_26370;\n" -" add.u32 %r44, %r1, %r42;\n" -" cvt.u64.u32 %rd52, %r44;\n" -" mul.wide.u32 %rd53, %r44, 4;\n" -" add.u64 %rd54, %rd48, %rd53;\n" -" ld.shared.f32 %f82, [%rd54+0];\n" -" add.ftz.f32 %f78, %f82, %f78;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" ld.shared.f32 %f83, [%rd54+512];\n" -" add.ftz.f32 %f79, %f83, %f79;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" ld.shared.f32 %f84, [%rd54+1024];\n" -" add.ftz.f32 %f80, %f84, %f80;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" ld.shared.f32 %f85, [%rd54+1536];\n" -" add.ftz.f32 %f81, %f85, %f81;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -"$Lt_2_26370:\n" -" shr.u32 %r42, %r42, 1;\n" -" mov.u32 %r45, 0;\n" -" setp.ne.u32 %p14, %r42, %r45;\n" -" @%p14 bra $Lt_2_26114;\n" -"$Lt_2_25602:\n" -" mov.f32 %f29, %f78;\n" -" mov.f32 %f28, %f79;\n" -" mov.f32 %f27, %f80;\n" -" mov.f32 %f30, %f81;\n" -" ld.param.s32 %r46, [__cudaparm_kernel_lj_fast_vflag];\n" -" mov.u32 %r47, 0;\n" -" setp.le.s32 %p15, %r46, %r47;\n" -" @%p15 bra $Lt_2_27138;\n" -" mov.f32 %f78, %f11;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" mov.f32 %f79, %f13;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" mov.f32 %f80, %f15;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" mov.f32 %f81, %f17;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -" mov.f32 %f86, %f19;\n" -" st.shared.f32 [%rd51+2048], %f86;\n" -" mov.f32 %f87, %f20;\n" -" st.shared.f32 [%rd51+2560], %f87;\n" -" mov.s32 %r48, %r41;\n" -" @!%p12 bra $Lt_2_27650;\n" -"$Lt_2_28162:\n" -" setp.ge.u32 %p16, %r21, %r48;\n" -" @%p16 bra $Lt_2_28418;\n" -" add.u32 %r49, %r1, %r48;\n" -" cvt.u64.u32 %rd55, %r49;\n" -" mul.wide.u32 %rd56, %r49, 4;\n" -" add.u64 %rd57, %rd48, %rd56;\n" -" ld.shared.f32 %f88, [%rd57+0];\n" -" add.ftz.f32 %f78, %f88, %f78;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" ld.shared.f32 %f89, [%rd57+512];\n" -" add.ftz.f32 %f79, %f89, %f79;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" ld.shared.f32 %f90, [%rd57+1024];\n" -" add.ftz.f32 %f80, %f90, %f80;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" ld.shared.f32 %f91, [%rd57+1536];\n" -" add.ftz.f32 %f81, %f91, %f81;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -" ld.shared.f32 %f92, [%rd57+2048];\n" -" add.ftz.f32 %f86, %f92, %f86;\n" -" st.shared.f32 [%rd51+2048], %f86;\n" -" ld.shared.f32 %f93, [%rd57+2560];\n" -" add.ftz.f32 %f87, %f93, %f87;\n" -" st.shared.f32 [%rd51+2560], %f87;\n" -"$Lt_2_28418:\n" -" shr.u32 %r48, %r48, 1;\n" -" mov.u32 %r50, 0;\n" -" setp.ne.u32 %p17, %r48, %r50;\n" -" @%p17 bra $Lt_2_28162;\n" -"$Lt_2_27650:\n" -" mov.f32 %f11, %f78;\n" -" mov.f32 %f13, %f79;\n" -" mov.f32 %f15, %f80;\n" -" mov.f32 %f17, %f81;\n" -" mov.f32 %f19, %f86;\n" -" mov.f32 %f21, %f87;\n" -"$Lt_2_27138:\n" -"$Lt_2_25090:\n" -" mov.u32 %r51, 0;\n" -" setp.ne.s32 %p18, %r21, %r51;\n" -" @%p18 bra $Lt_2_29186;\n" -" ld.param.u64 %rd58, [__cudaparm_kernel_lj_fast___val_paramengv];\n" -" add.u64 %rd59, %rd58, %rd18;\n" -" ld.param.s32 %r52, [__cudaparm_kernel_lj_fast_eflag];\n" -" mov.u32 %r53, 0;\n" -" setp.le.s32 %p19, %r52, %r53;\n" -" @%p19 bra $Lt_2_29698;\n" -" ld.global.f32 %f94, [%rd59+0];\n" -" add.ftz.f32 %f95, %f94, %f30;\n" -" st.global.f32 [%rd59+0], %f95;\n" -" cvt.s64.s32 %rd60, %r15;\n" -" mul.wide.s32 %rd61, %r15, 4;\n" -" add.u64 %rd59, %rd59, %rd61;\n" -"$Lt_2_29698:\n" -" ld.param.s32 %r54, [__cudaparm_kernel_lj_fast_vflag];\n" -" mov.u32 %r55, 0;\n" -" setp.le.s32 %p20, %r54, %r55;\n" -" @%p20 bra $Lt_2_30210;\n" -" ld.global.f32 %f96, [%rd59+0];\n" -" mov.f32 %f97, %f11;\n" -" add.ftz.f32 %f98, %f96, %f97;\n" -" st.global.f32 [%rd59+0], %f98;\n" -" cvt.s64.s32 %rd62, %r15;\n" -" mul.wide.s32 %rd63, %r15, 4;\n" -" add.u64 %rd64, %rd63, %rd59;\n" -" ld.global.f32 %f99, [%rd64+0];\n" -" mov.f32 %f100, %f13;\n" -" add.ftz.f32 %f101, %f99, %f100;\n" -" st.global.f32 [%rd64+0], %f101;\n" -" add.u64 %rd65, %rd63, %rd64;\n" -" ld.global.f32 %f102, [%rd65+0];\n" -" mov.f32 %f103, %f15;\n" -" add.ftz.f32 %f104, %f102, %f103;\n" -" st.global.f32 [%rd65+0], %f104;\n" -" add.u64 %rd66, %rd63, %rd65;\n" -" ld.global.f32 %f105, [%rd66+0];\n" -" mov.f32 %f106, %f17;\n" -" add.ftz.f32 %f107, %f105, %f106;\n" -" st.global.f32 [%rd66+0], %f107;\n" -" add.u64 %rd67, %rd63, %rd66;\n" -" ld.global.f32 %f108, [%rd67+0];\n" -" mov.f32 %f109, %f19;\n" -" add.ftz.f32 %f110, %f108, %f109;\n" -" st.global.f32 [%rd67+0], %f110;\n" -" add.u64 %rd59, %rd63, %rd67;\n" -" ld.global.f32 %f111, [%rd59+0];\n" -" mov.f32 %f112, %f21;\n" -" add.ftz.f32 %f113, %f111, %f112;\n" -" st.global.f32 [%rd59+0], %f113;\n" -"$Lt_2_30210:\n" -" ld.param.u64 %rd68, [__cudaparm_kernel_lj_fast_ans];\n" -" mul.lo.u64 %rd69, %rd17, 16;\n" -" add.u64 %rd70, %rd68, %rd69;\n" -" ld.global.v4.f32 {%f114,%f115,%f116,%f117}, [%rd70+0];\n" -" add.ftz.f32 %f118, %f115, %f28;\n" -" add.ftz.f32 %f119, %f116, %f27;\n" -" add.ftz.f32 %f120, %f114, %f29;\n" -" st.global.v4.f32 [%rd70+0], {%f120,%f118,%f119,%f117};\n" -"$Lt_2_29186:\n" -"$Lt_2_22530:\n" -" .loc 17 408 0\n" -" exit;\n" -"$LDWend_kernel_lj_fast:\n" -" }\n" -; diff --git a/lib/gpu/gayberne_ptx.h b/lib/gpu/gayberne_ptx.h deleted file mode 100644 index 55d334213c..0000000000 --- a/lib/gpu/gayberne_ptx.h +++ /dev/null @@ -1,1540 +0,0 @@ -const char * gayberne = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .entry kernel_ellipsoid (\n" -" .param .u64 __cudaparm_kernel_ellipsoid_x_,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_q,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_shape,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_well,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_gum,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sig_eps,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_ntypes,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_lshape,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_stride,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_ans,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_astride,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_engv,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_err_flag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_eflag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_vflag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_inum,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_t_per_atom)\n" -" {\n" -" .reg .u32 %r<67>;\n" -" .reg .u64 %rd<83>;\n" -" .reg .f32 %f<898>;\n" -" .reg .pred %p<35>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32950_33_non_const_sp_lj128[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33207_55_non_const_red_acc144[3584];\n" -" .loc 17 91 0\n" -"$LDWbegin_kernel_ellipsoid:\n" -" .loc 17 96 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_ellipsoid_gum];\n" -" ldu.global.f32 %f1, [%rd1+12];\n" -" .loc 17 97 0\n" -" ld.global.f32 %f2, [%rd1+16];\n" -" .loc 17 98 0\n" -" ld.global.f32 %f3, [%rd1+20];\n" -" .loc 17 99 0\n" -" ld.global.f32 %f4, [%rd1+24];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32950_33_non_const_sp_lj128+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 112 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" -" ld.param.s32 %r1, [__cudaparm_kernel_ellipsoid_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_ellipsoid_inum];\n" -" setp.le.s32 %p1, %r9, %r8;\n" -" @%p1 bra $Lt_0_55298;\n" -" .loc 17 117 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_ellipsoid_dev_nbor];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_ellipsoid_stride];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" .loc 17 120 0\n" -" cvt.s64.s32 %rd9, %r10;\n" -" mul.wide.s32 %rd10, %r10, 16;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_ellipsoid_x_];\n" -" add.u64 %rd12, %rd10, %rd11;\n" -" ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0];\n" -" .loc 17 123 0\n" -" cvt.rzi.ftz.s32.f32 %r13, %f20;\n" -" cvt.s64.s32 %rd13, %r13;\n" -" mul.wide.s32 %rd14, %r13, 16;\n" -" ld.param.u64 %rd15, [__cudaparm_kernel_ellipsoid_shape];\n" -" add.u64 %rd16, %rd14, %rd15;\n" -" ld.global.v4.f32 {%f21,%f22,%f23,_}, [%rd16+0];\n" -" .loc 17 126 0\n" -" ld.param.u64 %rd17, [__cudaparm_kernel_ellipsoid_q];\n" -" add.u64 %rd18, %rd10, %rd17;\n" -" ld.global.v4.f32 {%f24,%f25,%f26,%f27}, [%rd18+0];\n" -" .loc 17 129 0\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_ellipsoid_well];\n" -" add.u64 %rd20, %rd14, %rd19;\n" -" ld.global.v4.f32 {%f28,%f29,%f30,_}, [%rd20+0];\n" -" .loc 17 130 0\n" -" cvt.s32.s64 %r14, %rd6;\n" -" sub.s32 %r15, %r1, 1;\n" -" and.b32 %r16, %r15, %r2;\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" mul.lo.s32 %r17, %r14, %r16;\n" -" cvt.s64.s32 %rd22, %r17;\n" -" mul.wide.s32 %rd23, %r17, 4;\n" -" add.u64 %rd24, %rd21, %rd23;\n" -" mov.s64 %rd25, %rd24;\n" -" mul.lo.s32 %r18, %r14, %r12;\n" -" cvt.s64.s32 %rd26, %r18;\n" -" mul.wide.s32 %rd27, %r18, 4;\n" -" add.u64 %rd28, %rd21, %rd27;\n" -" setp.ge.u64 %p2, %rd24, %rd28;\n" -" @%p2 bra $Lt_0_56834;\n" -" ld.param.s32 %r19, [__cudaparm_kernel_ellipsoid_eflag];\n" -" mov.s32 %r20, 0;\n" -" setp.gt.s32 %p3, %r19, %r20;\n" -" ld.param.s32 %r21, [__cudaparm_kernel_ellipsoid_vflag];\n" -" mov.s32 %r22, 0;\n" -" setp.gt.s32 %p4, %r21, %r22;\n" -" add.ftz.f32 %f31, %f25, %f25;\n" -" add.ftz.f32 %f32, %f27, %f27;\n" -" mul.ftz.f32 %f33, %f24, %f24;\n" -" mul.ftz.f32 %f34, %f25, %f25;\n" -" mul.ftz.f32 %f35, %f26, %f26;\n" -" mul.ftz.f32 %f36, %f27, %f27;\n" -" add.ftz.f32 %f37, %f26, %f26;\n" -" ld.param.s32 %r23, [__cudaparm_kernel_ellipsoid_ntypes];\n" -" mul.lo.s32 %r24, %r23, %r13;\n" -" mul.ftz.f32 %f38, %f31, %f26;\n" -" mul.ftz.f32 %f39, %f31, %f27;\n" -" mul.ftz.f32 %f40, %f31, %f24;\n" -" mul.ftz.f32 %f41, %f32, %f24;\n" -" add.ftz.f32 %f42, %f33, %f34;\n" -" sub.ftz.f32 %f43, %f33, %f34;\n" -" mul.ftz.f32 %f44, %f37, %f24;\n" -" mul.ftz.f32 %f45, %f37, %f27;\n" -" sub.ftz.f32 %f46, %f38, %f41;\n" -" add.ftz.f32 %f47, %f38, %f41;\n" -" sub.ftz.f32 %f48, %f42, %f35;\n" -" add.ftz.f32 %f49, %f35, %f43;\n" -" sub.ftz.f32 %f50, %f43, %f35;\n" -" add.ftz.f32 %f51, %f39, %f44;\n" -" sub.ftz.f32 %f52, %f39, %f44;\n" -" sub.ftz.f32 %f53, %f45, %f40;\n" -" add.ftz.f32 %f54, %f40, %f45;\n" -" ld.param.u64 %rd29, [__cudaparm_kernel_ellipsoid_lshape];\n" -" mul.lo.u64 %rd30, %rd13, 4;\n" -" add.u64 %rd31, %rd29, %rd30;\n" -" mul.ftz.f32 %f55, %f46, %f22;\n" -" mul.ftz.f32 %f56, %f46, %f29;\n" -" mul.ftz.f32 %f57, %f47, %f21;\n" -" mul.ftz.f32 %f58, %f47, %f28;\n" -" sub.ftz.f32 %f59, %f48, %f36;\n" -" sub.ftz.f32 %f60, %f49, %f36;\n" -" add.ftz.f32 %f61, %f36, %f50;\n" -" mul.ftz.f32 %f62, %f51, %f23;\n" -" mul.ftz.f32 %f63, %f51, %f30;\n" -" add.ftz.f32 %f64, %f51, %f51;\n" -" mul.ftz.f32 %f65, %f52, %f21;\n" -" mul.ftz.f32 %f66, %f52, %f28;\n" -" mul.ftz.f32 %f67, %f53, %f23;\n" -" mul.ftz.f32 %f68, %f53, %f30;\n" -" add.ftz.f32 %f69, %f53, %f53;\n" -" mul.ftz.f32 %f70, %f54, %f22;\n" -" mul.ftz.f32 %f71, %f54, %f29;\n" -" mul.ftz.f32 %f72, %f46, %f55;\n" -" mul.ftz.f32 %f73, %f54, %f55;\n" -" mul.ftz.f32 %f74, %f46, %f56;\n" -" mul.ftz.f32 %f75, %f54, %f56;\n" -" mul.ftz.f32 %f76, %f59, %f21;\n" -" mul.ftz.f32 %f77, %f59, %f28;\n" -" mul.ftz.f32 %f78, %f60, %f22;\n" -" mul.ftz.f32 %f79, %f55, %f60;\n" -" mul.ftz.f32 %f80, %f60, %f29;\n" -" mul.ftz.f32 %f81, %f56, %f60;\n" -" mul.ftz.f32 %f82, %f61, %f23;\n" -" mul.ftz.f32 %f83, %f61, %f30;\n" -" add.ftz.f32 %f84, %f61, %f61;\n" -" mul.ftz.f32 %f85, %f46, %f70;\n" -" mul.ftz.f32 %f86, %f60, %f70;\n" -" mul.ftz.f32 %f87, %f54, %f70;\n" -" mul.ftz.f32 %f88, %f46, %f71;\n" -" mul.ftz.f32 %f89, %f60, %f71;\n" -" mul.ftz.f32 %f90, %f54, %f71;\n" -" fma.rn.ftz.f32 %f91, %f59, %f76, %f72;\n" -" fma.rn.ftz.f32 %f92, %f76, %f52, %f73;\n" -" fma.rn.ftz.f32 %f93, %f59, %f77, %f74;\n" -" fma.rn.ftz.f32 %f94, %f77, %f52, %f75;\n" -" mul.ftz.f32 %f95, %f46, %f78;\n" -" mul.ftz.f32 %f96, %f60, %f78;\n" -" mul.ftz.f32 %f97, %f54, %f78;\n" -" fma.rn.ftz.f32 %f98, %f76, %f47, %f79;\n" -" mul.ftz.f32 %f99, %f46, %f80;\n" -" mul.ftz.f32 %f100, %f60, %f80;\n" -" mul.ftz.f32 %f101, %f54, %f80;\n" -" fma.rn.ftz.f32 %f102, %f77, %f47, %f81;\n" -" fma.rn.ftz.f32 %f103, %f59, %f65, %f85;\n" -" fma.rn.ftz.f32 %f104, %f47, %f65, %f86;\n" -" fma.rn.ftz.f32 %f105, %f52, %f65, %f87;\n" -" fma.rn.ftz.f32 %f106, %f59, %f66, %f88;\n" -" fma.rn.ftz.f32 %f107, %f47, %f66, %f89;\n" -" fma.rn.ftz.f32 %f108, %f52, %f66, %f90;\n" -" fma.rn.ftz.f32 %f109, %f51, %f62, %f91;\n" -" fma.rn.ftz.f32 %f110, %f62, %f61, %f92;\n" -" fma.rn.ftz.f32 %f111, %f51, %f63, %f93;\n" -" fma.rn.ftz.f32 %f112, %f63, %f61, %f94;\n" -" fma.rn.ftz.f32 %f113, %f59, %f57, %f95;\n" -" fma.rn.ftz.f32 %f114, %f47, %f57, %f96;\n" -" fma.rn.ftz.f32 %f115, %f57, %f52, %f97;\n" -" fma.rn.ftz.f32 %f116, %f62, %f53, %f98;\n" -" fma.rn.ftz.f32 %f117, %f59, %f58, %f99;\n" -" fma.rn.ftz.f32 %f118, %f47, %f58, %f100;\n" -" fma.rn.ftz.f32 %f119, %f58, %f52, %f101;\n" -" fma.rn.ftz.f32 %f120, %f63, %f53, %f102;\n" -" fma.rn.ftz.f32 %f121, %f51, %f82, %f103;\n" -" fma.rn.ftz.f32 %f122, %f53, %f82, %f104;\n" -" fma.rn.ftz.f32 %f123, %f61, %f82, %f105;\n" -" fma.rn.ftz.f32 %f124, %f51, %f83, %f106;\n" -" fma.rn.ftz.f32 %f125, %f53, %f83, %f107;\n" -" fma.rn.ftz.f32 %f126, %f61, %f83, %f108;\n" -" fma.rn.ftz.f32 %f127, %f51, %f67, %f113;\n" -" fma.rn.ftz.f32 %f128, %f53, %f67, %f114;\n" -" fma.rn.ftz.f32 %f129, %f67, %f61, %f115;\n" -" fma.rn.ftz.f32 %f130, %f51, %f68, %f117;\n" -" fma.rn.ftz.f32 %f131, %f53, %f68, %f118;\n" -" fma.rn.ftz.f32 %f132, %f68, %f61, %f119;\n" -" ld.param.u64 %rd32, [__cudaparm_kernel_ellipsoid_sig_eps];\n" -" mov.f32 %f133, 0f00000000; \n" -" mov.f32 %f134, 0f00000000; \n" -" mov.f32 %f135, 0f00000000; \n" -" mov.f32 %f136, 0f00000000; \n" -" mov.f32 %f137, 0f00000000; \n" -" mov.f32 %f138, 0f00000000; \n" -" mov.f32 %f139, 0f00000000; \n" -" mov.u64 %rd33, __cuda___cuda_local_var_32950_33_non_const_sp_lj128;\n" -"$Lt_0_40962:\n" -" .loc 17 135 0\n" -" ld.global.s32 %r25, [%rd25+0];\n" -" .loc 17 136 0\n" -" shr.s32 %r26, %r25, 30;\n" -" and.b32 %r27, %r26, 3;\n" -" cvt.s64.s32 %rd34, %r27;\n" -" mul.wide.s32 %rd35, %r27, 4;\n" -" add.u64 %rd36, %rd33, %rd35;\n" -" ld.shared.f32 %f140, [%rd36+0];\n" -" .loc 17 139 0\n" -" and.b32 %r28, %r25, 1073741823;\n" -" cvt.s64.s32 %rd37, %r28;\n" -" mul.wide.s32 %rd38, %r28, 16;\n" -" add.u64 %rd39, %rd38, %rd11;\n" -" ld.global.v4.f32 {%f141,%f142,%f143,%f144}, [%rd39+0];\n" -" .loc 17 153 0\n" -" add.u64 %rd40, %rd38, %rd17;\n" -" ld.global.v4.f32 {%f145,%f146,%f147,%f148}, [%rd40+0];\n" -" .loc 17 162 0\n" -" cvt.rzi.ftz.s32.f32 %r29, %f144;\n" -" cvt.s64.s32 %rd41, %r29;\n" -" mul.wide.s32 %rd42, %r29, 16;\n" -" add.u64 %rd43, %rd42, %rd15;\n" -" ld.global.v4.f32 {%f149,%f150,%f151,_}, [%rd43+0];\n" -" .loc 16 299 0\n" -" sub.ftz.f32 %f152, %f141, %f17;\n" -" mov.f32 %f153, %f152;\n" -" .loc 16 300 0\n" -" add.ftz.f32 %f154, %f146, %f146;\n" -" add.ftz.f32 %f155, %f148, %f148;\n" -" mul.ftz.f32 %f156, %f145, %f145;\n" -" mul.ftz.f32 %f157, %f146, %f146;\n" -" mul.ftz.f32 %f158, %f147, %f147;\n" -" mul.ftz.f32 %f159, %f148, %f148;\n" -" add.ftz.f32 %f160, %f147, %f147;\n" -" mul.ftz.f32 %f161, %f154, %f147;\n" -" mul.ftz.f32 %f162, %f154, %f148;\n" -" mul.ftz.f32 %f163, %f155, %f145;\n" -" add.ftz.f32 %f164, %f156, %f157;\n" -" mul.ftz.f32 %f165, %f160, %f145;\n" -" sub.ftz.f32 %f166, %f161, %f163;\n" -" sub.ftz.f32 %f167, %f164, %f158;\n" -" add.ftz.f32 %f168, %f162, %f165;\n" -" mul.ftz.f32 %f169, %f166, %f150;\n" -" sub.ftz.f32 %f170, %f167, %f159;\n" -" mul.ftz.f32 %f171, %f168, %f151;\n" -" mul.ftz.f32 %f172, %f166, %f169;\n" -" mul.ftz.f32 %f173, %f170, %f149;\n" -" fma.rn.ftz.f32 %f174, %f170, %f173, %f172;\n" -" fma.rn.ftz.f32 %f175, %f168, %f171, %f174;\n" -" add.ftz.f32 %f176, %f109, %f175;\n" -" mov.f32 %f177, %f176;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f178, %f154, %f145;\n" -" sub.ftz.f32 %f179, %f156, %f157;\n" -" mul.ftz.f32 %f180, %f160, %f148;\n" -" add.ftz.f32 %f181, %f161, %f163;\n" -" add.ftz.f32 %f182, %f158, %f179;\n" -" sub.ftz.f32 %f183, %f180, %f178;\n" -" mul.ftz.f32 %f184, %f181, %f149;\n" -" sub.ftz.f32 %f185, %f182, %f159;\n" -" mul.ftz.f32 %f186, %f183, %f151;\n" -" mul.ftz.f32 %f187, %f185, %f150;\n" -" mul.ftz.f32 %f188, %f166, %f187;\n" -" fma.rn.ftz.f32 %f189, %f170, %f184, %f188;\n" -" fma.rn.ftz.f32 %f190, %f168, %f186, %f189;\n" -" add.ftz.f32 %f191, %f127, %f190;\n" -" mov.f32 %f192, %f191;\n" -" .loc 16 302 0\n" -" sub.ftz.f32 %f193, %f179, %f158;\n" -" sub.ftz.f32 %f194, %f162, %f165;\n" -" add.ftz.f32 %f195, %f178, %f180;\n" -" add.ftz.f32 %f196, %f159, %f193;\n" -" mul.ftz.f32 %f197, %f194, %f149;\n" -" mul.ftz.f32 %f198, %f195, %f150;\n" -" mul.ftz.f32 %f199, %f196, %f151;\n" -" mul.ftz.f32 %f200, %f166, %f198;\n" -" fma.rn.ftz.f32 %f201, %f170, %f197, %f200;\n" -" fma.rn.ftz.f32 %f202, %f168, %f199, %f201;\n" -" add.ftz.f32 %f203, %f121, %f202;\n" -" mov.f32 %f204, %f203;\n" -" .loc 16 303 0\n" -" sub.ftz.f32 %f205, %f142, %f18;\n" -" mov.f32 %f206, %f205;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f207, %f169, %f185;\n" -" fma.rn.ftz.f32 %f208, %f173, %f181, %f207;\n" -" fma.rn.ftz.f32 %f209, %f171, %f183, %f208;\n" -" add.ftz.f32 %f210, %f116, %f209;\n" -" mov.f32 %f211, %f210;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f212, %f185, %f187;\n" -" fma.rn.ftz.f32 %f213, %f181, %f184, %f212;\n" -" fma.rn.ftz.f32 %f214, %f183, %f186, %f213;\n" -" add.ftz.f32 %f215, %f128, %f214;\n" -" mov.f32 %f216, %f215;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f217, %f185, %f198;\n" -" fma.rn.ftz.f32 %f218, %f181, %f197, %f217;\n" -" fma.rn.ftz.f32 %f219, %f183, %f199, %f218;\n" -" add.ftz.f32 %f220, %f122, %f219;\n" -" mov.f32 %f221, %f220;\n" -" .loc 16 307 0\n" -" sub.ftz.f32 %f222, %f143, %f19;\n" -" mov.f32 %f223, %f222;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f224, %f195, %f169;\n" -" fma.rn.ftz.f32 %f225, %f173, %f194, %f224;\n" -" fma.rn.ftz.f32 %f226, %f171, %f196, %f225;\n" -" add.ftz.f32 %f227, %f110, %f226;\n" -" mov.f32 %f228, %f227;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f229, %f195, %f187;\n" -" fma.rn.ftz.f32 %f230, %f184, %f194, %f229;\n" -" fma.rn.ftz.f32 %f231, %f186, %f196, %f230;\n" -" add.ftz.f32 %f232, %f129, %f231;\n" -" mov.f32 %f233, %f232;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f234, %f195, %f198;\n" -" fma.rn.ftz.f32 %f235, %f194, %f197, %f234;\n" -" fma.rn.ftz.f32 %f236, %f196, %f199, %f235;\n" -" add.ftz.f32 %f237, %f123, %f236;\n" -" mov.f32 %f238, %f237;\n" -" abs.ftz.f32 %f239, %f210;\n" -" abs.ftz.f32 %f240, %f176;\n" -" setp.gt.ftz.f32 %p5, %f239, %f240;\n" -" @!%p5 bra $Lt_0_41218;\n" -" .loc 16 314 0\n" -" mov.f32 %f177, %f210;\n" -" mov.f32 %f211, %f176;\n" -" .loc 16 315 0\n" -" mov.f32 %f192, %f215;\n" -" mov.f32 %f216, %f191;\n" -" .loc 16 316 0\n" -" mov.f32 %f204, %f220;\n" -" mov.f32 %f221, %f203;\n" -" .loc 16 317 0\n" -" mov.f32 %f153, %f205;\n" -" mov.f32 %f206, %f152;\n" -"$Lt_0_41218:\n" -" mov.f32 %f241, %f177;\n" -" abs.ftz.f32 %f242, %f241;\n" -" abs.ftz.f32 %f243, %f227;\n" -" setp.lt.ftz.f32 %p6, %f242, %f243;\n" -" @!%p6 bra $Lt_0_41730;\n" -" .loc 16 321 0\n" -" mov.f32 %f177, %f227;\n" -" mov.f32 %f228, %f241;\n" -" .loc 16 322 0\n" -" mov.f32 %f244, %f192;\n" -" mov.f32 %f192, %f232;\n" -" mov.f32 %f233, %f244;\n" -" .loc 16 323 0\n" -" mov.f32 %f245, %f204;\n" -" mov.f32 %f204, %f237;\n" -" mov.f32 %f238, %f245;\n" -" .loc 16 324 0\n" -" mov.f32 %f246, %f153;\n" -" mov.f32 %f153, %f222;\n" -" mov.f32 %f223, %f246;\n" -"$Lt_0_41730:\n" -" mov.f32 %f247, %f177;\n" -" mov.f32 %f248, 0f00000000; \n" -" setp.neu.ftz.f32 %p7, %f247, %f248;\n" -" @!%p7 bra $Lt_0_42498;\n" -" bra.uni $Lt_0_43266;\n" -"$Lt_0_42498:\n" -" mov.f32 %f249, 0f00000000; \n" -" setp.neu.ftz.f32 %p8, %f211, %f249;\n" -" @!%p8 bra $Lt_0_43010;\n" -" .loc 16 338 0\n" -" mov.f32 %f177, %f211;\n" -" mov.f32 %f211, %f247;\n" -" .loc 16 339 0\n" -" mov.f32 %f250, %f192;\n" -" mov.f32 %f192, %f216;\n" -" mov.f32 %f216, %f250;\n" -" .loc 16 340 0\n" -" mov.f32 %f251, %f204;\n" -" mov.f32 %f204, %f221;\n" -" mov.f32 %f221, %f251;\n" -" .loc 16 341 0\n" -" mov.f32 %f252, %f153;\n" -" mov.f32 %f153, %f206;\n" -" mov.f32 %f206, %f252;\n" -" bra.uni $Lt_0_43266;\n" -"$Lt_0_43010:\n" -" mov.f32 %f253, 0f00000000; \n" -" setp.neu.ftz.f32 %p9, %f228, %f253;\n" -" @!%p9 bra $Lt_0_43522;\n" -" .loc 16 346 0\n" -" mov.f32 %f177, %f228;\n" -" mov.f32 %f228, %f247;\n" -" .loc 16 347 0\n" -" mov.f32 %f254, %f192;\n" -" mov.f32 %f192, %f233;\n" -" mov.f32 %f233, %f254;\n" -" .loc 16 348 0\n" -" mov.f32 %f255, %f204;\n" -" mov.f32 %f204, %f238;\n" -" mov.f32 %f238, %f255;\n" -" .loc 16 349 0\n" -" mov.f32 %f256, %f153;\n" -" mov.f32 %f153, %f223;\n" -" mov.f32 %f223, %f256;\n" -" bra.uni $Lt_0_43266;\n" -"$Lt_0_43522:\n" -" .loc 16 352 0\n" -" mov.s32 %r30, 2;\n" -" ld.param.u64 %rd44, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd44+0], %r30;\n" -"$Lt_0_43266:\n" -"$Lt_0_42754:\n" -"$Lt_0_42242:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f257, %f211, %f177;\n" -" mul.ftz.f32 %f258, %f192, %f257;\n" -" sub.ftz.f32 %f259, %f216, %f258;\n" -" mov.f32 %f216, %f259;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f260, %f204, %f257;\n" -" sub.ftz.f32 %f261, %f221, %f260;\n" -" mov.f32 %f221, %f261;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f262, %f153, %f257;\n" -" sub.ftz.f32 %f263, %f206, %f262;\n" -" mov.f32 %f206, %f263;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f264, %f228, %f177;\n" -" mul.ftz.f32 %f265, %f192, %f264;\n" -" sub.ftz.f32 %f233, %f233, %f265;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f266, %f204, %f264;\n" -" sub.ftz.f32 %f238, %f238, %f266;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f267, %f153, %f264;\n" -" sub.ftz.f32 %f223, %f223, %f267;\n" -" abs.ftz.f32 %f268, %f259;\n" -" abs.ftz.f32 %f269, %f233;\n" -" setp.lt.ftz.f32 %p10, %f268, %f269;\n" -" @!%p10 bra $Lt_0_43778;\n" -" .loc 16 366 0\n" -" mov.f32 %f216, %f233;\n" -" mov.f32 %f233, %f259;\n" -" .loc 16 367 0\n" -" mov.f32 %f221, %f238;\n" -" mov.f32 %f238, %f261;\n" -" .loc 16 368 0\n" -" mov.f32 %f206, %f223;\n" -" mov.f32 %f223, %f263;\n" -"$Lt_0_43778:\n" -" mov.f32 %f270, %f216;\n" -" mov.f32 %f271, 0f00000000; \n" -" setp.neu.ftz.f32 %p11, %f270, %f271;\n" -" @!%p11 bra $Lt_0_44546;\n" -" bra.uni $Lt_0_44802;\n" -"$Lt_0_44546:\n" -" mov.f32 %f272, 0f00000000; \n" -" setp.neu.ftz.f32 %p12, %f233, %f272;\n" -" @!%p12 bra $Lt_0_44802;\n" -" .loc 16 383 0\n" -" mov.f32 %f216, %f233;\n" -" mov.f32 %f233, %f270;\n" -" .loc 16 384 0\n" -" mov.f32 %f273, %f221;\n" -" mov.f32 %f221, %f238;\n" -" mov.f32 %f238, %f273;\n" -" .loc 16 385 0\n" -" mov.f32 %f274, %f206;\n" -" mov.f32 %f206, %f223;\n" -" mov.f32 %f223, %f274;\n" -"$Lt_0_44802:\n" -"$Lt_0_44290:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f275, %f233, %f216;\n" -" mul.ftz.f32 %f276, %f221, %f275;\n" -" sub.ftz.f32 %f238, %f238, %f276;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f277, %f206, %f275;\n" -" sub.ftz.f32 %f223, %f223, %f277;\n" -" mov.f32 %f278, 0f00000000; \n" -" setp.eq.ftz.f32 %p13, %f238, %f278;\n" -" @!%p13 bra $Lt_0_45314;\n" -" .loc 16 394 0\n" -" mov.s32 %r31, 2;\n" -" ld.param.u64 %rd45, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd45+0], %r31;\n" -"$Lt_0_45314:\n" -" .loc 17 179 0\n" -" div.approx.ftz.f32 %f279, %f223, %f238;\n" -" mul.ftz.f32 %f280, %f205, %f205;\n" -" mul.ftz.f32 %f281, %f279, %f221;\n" -" fma.rn.ftz.f32 %f282, %f152, %f152, %f280;\n" -" sub.ftz.f32 %f283, %f206, %f281;\n" -" fma.rn.ftz.f32 %f284, %f222, %f222, %f282;\n" -" div.approx.ftz.f32 %f285, %f283, %f216;\n" -" rsqrt.approx.ftz.f32 %f286, %f284;\n" -" mul.ftz.f32 %f287, %f285, %f192;\n" -" fma.rn.ftz.f32 %f288, %f204, %f279, %f287;\n" -" sub.ftz.f32 %f289, %f153, %f288;\n" -" div.approx.ftz.f32 %f290, %f289, %f177;\n" -" mul.ftz.f32 %f291, %f286, %f290;\n" -" .loc 17 191 0\n" -" mul.ftz.f32 %f292, %f285, %f286;\n" -" mul.ftz.f32 %f293, %f286, %f205;\n" -" mul.ftz.f32 %f294, %f286, %f152;\n" -" mul.ftz.f32 %f295, %f286, %f222;\n" -" mul.ftz.f32 %f296, %f279, %f286;\n" -" mul.ftz.f32 %f297, %f292, %f293;\n" -" fma.rn.ftz.f32 %f298, %f294, %f291, %f297;\n" -" fma.rn.ftz.f32 %f299, %f295, %f296, %f298;\n" -" mov.f32 %f300, 0f3f000000; \n" -" mul.ftz.f32 %f301, %f299, %f300;\n" -" rsqrt.approx.ftz.f32 %f302, %f301;\n" -" .loc 17 195 0\n" -" rcp.approx.ftz.f32 %f303, %f286;\n" -" mul.ftz.f32 %f304, %f303, %f291;\n" -" .loc 17 200 0\n" -" add.s32 %r32, %r29, %r24;\n" -" cvt.s64.s32 %rd46, %r32;\n" -" mul.wide.s32 %rd47, %r32, 8;\n" -" add.u64 %rd48, %rd32, %rd47;\n" -" ld.global.v2.f32 {%f305,%f306}, [%rd48+0];\n" -" .loc 17 202 0\n" -" sub.ftz.f32 %f307, %f303, %f302;\n" -" ld.global.f32 %f308, [%rd1+0];\n" -" fma.rn.ftz.f32 %f309, %f308, %f305, %f307;\n" -" .loc 17 209 0\n" -" div.approx.ftz.f32 %f310, %f305, %f309;\n" -" mul.ftz.f32 %f311, %f310, %f310;\n" -" mul.ftz.f32 %f312, %f310, %f311;\n" -" mul.ftz.f32 %f313, %f312, %f312;\n" -" mul.ftz.f32 %f314, %f313, %f313;\n" -" mul.ftz.f32 %f315, %f310, %f313;\n" -" add.ftz.f32 %f316, %f314, %f314;\n" -" mul.ftz.f32 %f317, %f310, %f316;\n" -" sub.ftz.f32 %f318, %f317, %f315;\n" -" div.approx.ftz.f32 %f319, %f318, %f305;\n" -" mov.f32 %f320, 0f41c00000; \n" -" mul.ftz.f32 %f321, %f319, %f320;\n" -" mul.ftz.f32 %f322, %f306, %f321;\n" -" .loc 17 214 0\n" -" mul.ftz.f32 %f323, %f302, %f322;\n" -" mul.ftz.f32 %f324, %f323, %f302;\n" -" mul.ftz.f32 %f325, %f324, %f302;\n" -" mov.f32 %f326, 0f3f000000; \n" -" mul.ftz.f32 %f327, %f325, %f326;\n" -" mul.ftz.f32 %f328, %f327, %f286;\n" -" mul.ftz.f32 %f329, %f292, %f303;\n" -" mul.ftz.f32 %f330, %f296, %f303;\n" -" mul.ftz.f32 %f331, %f286, %f328;\n" -" mul.ftz.f32 %f332, %f293, %f329;\n" -" fma.rn.ftz.f32 %f333, %f294, %f304, %f332;\n" -" fma.rn.ftz.f32 %f334, %f295, %f330, %f333;\n" -" mul.ftz.f32 %f335, %f294, %f334;\n" -" sub.ftz.f32 %f336, %f304, %f335;\n" -" mul.ftz.f32 %f337, %f331, %f336;\n" -" fma.rn.ftz.f32 %f338, %f294, %f322, %f337;\n" -" .loc 17 215 0\n" -" mul.ftz.f32 %f339, %f293, %f334;\n" -" sub.ftz.f32 %f340, %f329, %f339;\n" -" mul.ftz.f32 %f341, %f331, %f340;\n" -" fma.rn.ftz.f32 %f342, %f293, %f322, %f341;\n" -" .loc 17 216 0\n" -" mul.ftz.f32 %f343, %f295, %f334;\n" -" sub.ftz.f32 %f344, %f330, %f343;\n" -" mul.ftz.f32 %f345, %f331, %f344;\n" -" fma.rn.ftz.f32 %f346, %f295, %f322, %f345;\n" -" .loc 17 226 0\n" -" mul.ftz.f32 %f347, %f122, %f329;\n" -" mul.ftz.f32 %f348, %f330, %f331;\n" -" mul.ftz.f32 %f349, %f329, %f331;\n" -" mul.ftz.f32 %f350, %f329, %f128;\n" -" fma.rn.ftz.f32 %f351, %f304, %f121, %f347;\n" -" fma.rn.ftz.f32 %f352, %f304, %f127, %f350;\n" -" fma.rn.ftz.f32 %f353, %f330, %f123, %f351;\n" -" fma.rn.ftz.f32 %f354, %f330, %f129, %f352;\n" -" mul.ftz.f32 %f355, %f348, %f354;\n" -" neg.ftz.f32 %f356, %f349;\n" -" fma.rn.ftz.f32 %f357, %f356, %f353, %f355;\n" -" mul.ftz.f32 %f358, %f116, %f329;\n" -" mul.ftz.f32 %f359, %f331, %f304;\n" -" fma.rn.ftz.f32 %f360, %f109, %f304, %f358;\n" -" fma.rn.ftz.f32 %f361, %f330, %f110, %f360;\n" -" mul.ftz.f32 %f362, %f359, %f353;\n" -" neg.ftz.f32 %f363, %f348;\n" -" fma.rn.ftz.f32 %f364, %f361, %f363, %f362;\n" -" mul.ftz.f32 %f365, %f349, %f361;\n" -" neg.ftz.f32 %f366, %f359;\n" -" fma.rn.ftz.f32 %f367, %f366, %f354, %f365;\n" -" .loc 17 233 0\n" -" ld.global.f32 %f368, [%rd31+0];\n" -" mul.lo.u64 %rd49, %rd41, 4;\n" -" add.u64 %rd50, %rd29, %rd49;\n" -" ld.global.f32 %f369, [%rd50+0];\n" -" add.ftz.f32 %f370, %f368, %f368;\n" -" mul.ftz.f32 %f371, %f369, %f370;\n" -" .loc 17 234 0\n" -" mul.ftz.f32 %f372, %f210, %f203;\n" -" mul.ftz.f32 %f373, %f227, %f203;\n" -" mul.ftz.f32 %f374, %f220, %f176;\n" -" mul.ftz.f32 %f375, %f210, %f191;\n" -" mul.ftz.f32 %f376, %f227, %f191;\n" -" mul.ftz.f32 %f377, %f215, %f176;\n" -" mul.ftz.f32 %f378, %f374, %f232;\n" -" mul.ftz.f32 %f379, %f237, %f377;\n" -" sub.ftz.f32 %f380, %f379, %f378;\n" -" mul.ftz.f32 %f381, %f237, %f375;\n" -" sub.ftz.f32 %f382, %f380, %f381;\n" -" fma.rn.ftz.f32 %f383, %f232, %f372, %f382;\n" -" fma.rn.ftz.f32 %f384, %f220, %f376, %f383;\n" -" mul.ftz.f32 %f385, %f215, %f373;\n" -" sub.ftz.f32 %f386, %f384, %f385;\n" -" .loc 17 235 0\n" -" ld.global.f32 %f387, [%rd1+4];\n" -" .loc 17 240 0\n" -" mul.ftz.f32 %f388, %f232, %f372;\n" -" sub.ftz.f32 %f389, %f388, %f378;\n" -" mul.ftz.f32 %f390, %f215, %f373;\n" -" sub.ftz.f32 %f391, %f389, %f390;\n" -" fma.rn.ftz.f32 %f392, %f220, %f376, %f391;\n" -" mul.ftz.f32 %f393, %f237, %f375;\n" -" sub.ftz.f32 %f394, %f392, %f393;\n" -" fma.rn.ftz.f32 %f395, %f237, %f377, %f394;\n" -" .loc 17 241 0\n" -" div.approx.ftz.f32 %f396, %f371, %f386;\n" -" lg2.approx.ftz.f32 %f397, %f396;\n" -" mul.ftz.f32 %f398, %f397, %f387;\n" -" ex2.approx.ftz.f32 %f399, %f398;\n" -" mul.ftz.f32 %f400, %f399, %f387;\n" -" neg.ftz.f32 %f401, %f400;\n" -" .loc 17 274 0\n" -" add.u64 %rd51, %rd42, %rd19;\n" -" ld.global.v4.f32 {%f402,%f403,%f404,_}, [%rd51+0];\n" -" .loc 16 299 0\n" -" mul.ftz.f32 %f405, %f294, %f303;\n" -" mov.f32 %f153, %f405;\n" -" .loc 16 300 0\n" -" mul.ftz.f32 %f406, %f166, %f403;\n" -" mul.ftz.f32 %f407, %f168, %f404;\n" -" mul.ftz.f32 %f408, %f166, %f406;\n" -" mul.ftz.f32 %f409, %f170, %f402;\n" -" fma.rn.ftz.f32 %f410, %f170, %f409, %f408;\n" -" fma.rn.ftz.f32 %f411, %f168, %f407, %f410;\n" -" add.ftz.f32 %f412, %f111, %f411;\n" -" mov.f32 %f177, %f412;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f413, %f181, %f402;\n" -" mul.ftz.f32 %f414, %f183, %f404;\n" -" mul.ftz.f32 %f415, %f185, %f403;\n" -" mul.ftz.f32 %f416, %f166, %f415;\n" -" fma.rn.ftz.f32 %f417, %f170, %f413, %f416;\n" -" fma.rn.ftz.f32 %f418, %f168, %f414, %f417;\n" -" add.ftz.f32 %f419, %f130, %f418;\n" -" mov.f32 %f192, %f419;\n" -" .loc 16 302 0\n" -" mul.ftz.f32 %f420, %f194, %f402;\n" -" mul.ftz.f32 %f421, %f195, %f403;\n" -" mul.ftz.f32 %f422, %f196, %f404;\n" -" mul.ftz.f32 %f423, %f166, %f421;\n" -" fma.rn.ftz.f32 %f424, %f170, %f420, %f423;\n" -" fma.rn.ftz.f32 %f425, %f168, %f422, %f424;\n" -" add.ftz.f32 %f426, %f124, %f425;\n" -" mov.f32 %f204, %f426;\n" -" .loc 16 303 0\n" -" mul.ftz.f32 %f427, %f293, %f303;\n" -" mov.f32 %f206, %f427;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f428, %f406, %f185;\n" -" fma.rn.ftz.f32 %f429, %f409, %f181, %f428;\n" -" fma.rn.ftz.f32 %f430, %f407, %f183, %f429;\n" -" add.ftz.f32 %f431, %f120, %f430;\n" -" mov.f32 %f211, %f431;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f432, %f185, %f415;\n" -" fma.rn.ftz.f32 %f433, %f181, %f413, %f432;\n" -" fma.rn.ftz.f32 %f434, %f183, %f414, %f433;\n" -" add.ftz.f32 %f216, %f131, %f434;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f435, %f185, %f421;\n" -" fma.rn.ftz.f32 %f436, %f181, %f420, %f435;\n" -" fma.rn.ftz.f32 %f437, %f183, %f422, %f436;\n" -" add.ftz.f32 %f221, %f125, %f437;\n" -" .loc 16 307 0\n" -" mul.ftz.f32 %f438, %f295, %f303;\n" -" mov.f32 %f223, %f438;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f439, %f195, %f406;\n" -" fma.rn.ftz.f32 %f440, %f409, %f194, %f439;\n" -" fma.rn.ftz.f32 %f441, %f407, %f196, %f440;\n" -" add.ftz.f32 %f442, %f112, %f441;\n" -" mov.f32 %f228, %f442;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f443, %f195, %f415;\n" -" fma.rn.ftz.f32 %f444, %f413, %f194, %f443;\n" -" fma.rn.ftz.f32 %f445, %f414, %f196, %f444;\n" -" add.ftz.f32 %f233, %f132, %f445;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f446, %f195, %f421;\n" -" fma.rn.ftz.f32 %f447, %f194, %f420, %f446;\n" -" fma.rn.ftz.f32 %f448, %f196, %f422, %f447;\n" -" add.ftz.f32 %f238, %f126, %f448;\n" -" abs.ftz.f32 %f449, %f431;\n" -" abs.ftz.f32 %f450, %f412;\n" -" setp.gt.ftz.f32 %p14, %f449, %f450;\n" -" @!%p14 bra $Lt_0_45826;\n" -" .loc 16 314 0\n" -" mov.f32 %f177, %f431;\n" -" mov.f32 %f211, %f412;\n" -" .loc 16 315 0\n" -" mov.f32 %f192, %f216;\n" -" mov.f32 %f216, %f419;\n" -" .loc 16 316 0\n" -" mov.f32 %f204, %f221;\n" -" mov.f32 %f221, %f426;\n" -" .loc 16 317 0\n" -" mov.f32 %f153, %f427;\n" -" mov.f32 %f206, %f405;\n" -"$Lt_0_45826:\n" -" mov.f32 %f451, %f177;\n" -" abs.ftz.f32 %f452, %f451;\n" -" abs.ftz.f32 %f453, %f442;\n" -" setp.lt.ftz.f32 %p15, %f452, %f453;\n" -" @!%p15 bra $Lt_0_46338;\n" -" .loc 16 321 0\n" -" mov.f32 %f177, %f442;\n" -" mov.f32 %f228, %f451;\n" -" .loc 16 322 0\n" -" mov.f32 %f454, %f192;\n" -" mov.f32 %f192, %f233;\n" -" mov.f32 %f233, %f454;\n" -" .loc 16 323 0\n" -" mov.f32 %f455, %f204;\n" -" mov.f32 %f204, %f238;\n" -" mov.f32 %f238, %f455;\n" -" .loc 16 324 0\n" -" mov.f32 %f456, %f153;\n" -" mov.f32 %f153, %f438;\n" -" mov.f32 %f223, %f456;\n" -"$Lt_0_46338:\n" -" mov.f32 %f457, %f177;\n" -" mov.f32 %f458, 0f00000000; \n" -" setp.neu.ftz.f32 %p16, %f457, %f458;\n" -" @!%p16 bra $Lt_0_47106;\n" -" bra.uni $Lt_0_47874;\n" -"$Lt_0_47106:\n" -" mov.f32 %f459, 0f00000000; \n" -" setp.neu.ftz.f32 %p17, %f211, %f459;\n" -" @!%p17 bra $Lt_0_47618;\n" -" .loc 16 338 0\n" -" mov.f32 %f177, %f211;\n" -" mov.f32 %f211, %f457;\n" -" .loc 16 339 0\n" -" mov.f32 %f460, %f192;\n" -" mov.f32 %f192, %f216;\n" -" mov.f32 %f216, %f460;\n" -" .loc 16 340 0\n" -" mov.f32 %f461, %f204;\n" -" mov.f32 %f204, %f221;\n" -" mov.f32 %f221, %f461;\n" -" .loc 16 341 0\n" -" mov.f32 %f462, %f153;\n" -" mov.f32 %f153, %f206;\n" -" mov.f32 %f206, %f462;\n" -" bra.uni $Lt_0_47874;\n" -"$Lt_0_47618:\n" -" mov.f32 %f463, 0f00000000; \n" -" setp.neu.ftz.f32 %p18, %f228, %f463;\n" -" @!%p18 bra $Lt_0_48130;\n" -" .loc 16 346 0\n" -" mov.f32 %f177, %f228;\n" -" mov.f32 %f228, %f457;\n" -" .loc 16 347 0\n" -" mov.f32 %f464, %f192;\n" -" mov.f32 %f192, %f233;\n" -" mov.f32 %f233, %f464;\n" -" .loc 16 348 0\n" -" mov.f32 %f465, %f204;\n" -" mov.f32 %f204, %f238;\n" -" mov.f32 %f238, %f465;\n" -" .loc 16 349 0\n" -" mov.f32 %f466, %f153;\n" -" mov.f32 %f153, %f223;\n" -" mov.f32 %f223, %f466;\n" -" bra.uni $Lt_0_47874;\n" -"$Lt_0_48130:\n" -" .loc 16 352 0\n" -" mov.s32 %r33, 2;\n" -" ld.param.u64 %rd52, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd52+0], %r33;\n" -"$Lt_0_47874:\n" -"$Lt_0_47362:\n" -"$Lt_0_46850:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f467, %f211, %f177;\n" -" mul.ftz.f32 %f468, %f192, %f467;\n" -" sub.ftz.f32 %f469, %f216, %f468;\n" -" mov.f32 %f216, %f469;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f470, %f204, %f467;\n" -" sub.ftz.f32 %f471, %f221, %f470;\n" -" mov.f32 %f221, %f471;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f472, %f153, %f467;\n" -" sub.ftz.f32 %f473, %f206, %f472;\n" -" mov.f32 %f206, %f473;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f474, %f228, %f177;\n" -" mul.ftz.f32 %f475, %f192, %f474;\n" -" sub.ftz.f32 %f233, %f233, %f475;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f476, %f204, %f474;\n" -" sub.ftz.f32 %f238, %f238, %f476;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f477, %f153, %f474;\n" -" sub.ftz.f32 %f223, %f223, %f477;\n" -" abs.ftz.f32 %f478, %f469;\n" -" abs.ftz.f32 %f479, %f233;\n" -" setp.lt.ftz.f32 %p19, %f478, %f479;\n" -" @!%p19 bra $Lt_0_48386;\n" -" .loc 16 366 0\n" -" mov.f32 %f216, %f233;\n" -" mov.f32 %f233, %f469;\n" -" .loc 16 367 0\n" -" mov.f32 %f221, %f238;\n" -" mov.f32 %f238, %f471;\n" -" .loc 16 368 0\n" -" mov.f32 %f206, %f223;\n" -" mov.f32 %f223, %f473;\n" -"$Lt_0_48386:\n" -" mov.f32 %f480, %f216;\n" -" mov.f32 %f481, 0f00000000; \n" -" setp.neu.ftz.f32 %p20, %f480, %f481;\n" -" @!%p20 bra $Lt_0_49154;\n" -" bra.uni $Lt_0_49410;\n" -"$Lt_0_49154:\n" -" mov.f32 %f482, 0f00000000; \n" -" setp.neu.ftz.f32 %p21, %f233, %f482;\n" -" @!%p21 bra $Lt_0_49410;\n" -" .loc 16 383 0\n" -" mov.f32 %f216, %f233;\n" -" mov.f32 %f233, %f480;\n" -" .loc 16 384 0\n" -" mov.f32 %f483, %f221;\n" -" mov.f32 %f221, %f238;\n" -" mov.f32 %f238, %f483;\n" -" .loc 16 385 0\n" -" mov.f32 %f484, %f206;\n" -" mov.f32 %f206, %f223;\n" -" mov.f32 %f223, %f484;\n" -"$Lt_0_49410:\n" -"$Lt_0_48898:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f485, %f233, %f216;\n" -" mul.ftz.f32 %f486, %f221, %f485;\n" -" sub.ftz.f32 %f238, %f238, %f486;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f487, %f206, %f485;\n" -" sub.ftz.f32 %f223, %f223, %f487;\n" -" mov.f32 %f488, 0f00000000; \n" -" setp.eq.ftz.f32 %p22, %f238, %f488;\n" -" @!%p22 bra $Lt_0_49922;\n" -" .loc 16 394 0\n" -" mov.s32 %r34, 2;\n" -" ld.param.u64 %rd53, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd53+0], %r34;\n" -"$Lt_0_49922:\n" -" .loc 17 286 0\n" -" div.approx.ftz.f32 %f489, %f223, %f238;\n" -" mul.ftz.f32 %f490, %f489, %f221;\n" -" sub.ftz.f32 %f491, %f206, %f490;\n" -" div.approx.ftz.f32 %f492, %f491, %f216;\n" -" mul.ftz.f32 %f493, %f492, %f192;\n" -" fma.rn.ftz.f32 %f494, %f204, %f489, %f493;\n" -" sub.ftz.f32 %f495, %f153, %f494;\n" -" div.approx.ftz.f32 %f496, %f495, %f177;\n" -" mul.ftz.f32 %f497, %f286, %f496;\n" -" .loc 17 293 0\n" -" mul.ftz.f32 %f498, %f492, %f286;\n" -" mul.ftz.f32 %f499, %f489, %f286;\n" -" mul.ftz.f32 %f500, %f286, %f405;\n" -" mul.ftz.f32 %f501, %f286, %f427;\n" -" mul.ftz.f32 %f502, %f286, %f438;\n" -" mul.ftz.f32 %f503, %f498, %f501;\n" -" fma.rn.ftz.f32 %f504, %f500, %f497, %f503;\n" -" fma.rn.ftz.f32 %f505, %f502, %f499, %f504;\n" -" add.ftz.f32 %f506, %f505, %f505;\n" -" ld.global.f32 %f507, [%rd1+8];\n" -" .loc 17 296 0\n" -" mul.ftz.f32 %f508, %f303, %f497;\n" -" .loc 17 301 0\n" -" mov.f32 %f509, 0fbf800000; \n" -" add.ftz.f32 %f510, %f507, %f509;\n" -" lg2.approx.ftz.f32 %f511, %f506;\n" -" mul.ftz.f32 %f512, %f511, %f507;\n" -" ex2.approx.ftz.f32 %f513, %f512;\n" -" mov.f32 %f514, 0fc0800000; \n" -" mul.ftz.f32 %f515, %f286, %f514;\n" -" mul.ftz.f32 %f516, %f286, %f515;\n" -" lg2.approx.ftz.f32 %f517, %f513;\n" -" div.approx.ftz.f32 %f518, %f510, %f507;\n" -" mul.ftz.f32 %f519, %f517, %f518;\n" -" ex2.approx.ftz.f32 %f520, %f519;\n" -" mul.ftz.f32 %f521, %f516, %f507;\n" -" mul.ftz.f32 %f522, %f520, %f521;\n" -" .loc 17 303 0\n" -" mul.ftz.f32 %f523, %f498, %f303;\n" -" mul.ftz.f32 %f524, %f499, %f303;\n" -" mul.ftz.f32 %f525, %f523, %f501;\n" -" fma.rn.ftz.f32 %f526, %f500, %f508, %f525;\n" -" fma.rn.ftz.f32 %f527, %f502, %f524, %f526;\n" -" mul.ftz.f32 %f528, %f500, %f527;\n" -" sub.ftz.f32 %f529, %f508, %f528;\n" -" mul.ftz.f32 %f530, %f522, %f529;\n" -" .loc 17 304 0\n" -" mul.ftz.f32 %f531, %f501, %f527;\n" -" sub.ftz.f32 %f532, %f523, %f531;\n" -" mul.ftz.f32 %f533, %f522, %f532;\n" -" .loc 17 305 0\n" -" mul.ftz.f32 %f534, %f502, %f527;\n" -" sub.ftz.f32 %f535, %f524, %f534;\n" -" mul.ftz.f32 %f536, %f522, %f535;\n" -" .loc 17 310 0\n" -" mul.ftz.f32 %f537, %f125, %f523;\n" -" mul.ftz.f32 %f538, %f523, %f131;\n" -" fma.rn.ftz.f32 %f539, %f508, %f124, %f537;\n" -" fma.rn.ftz.f32 %f540, %f508, %f130, %f538;\n" -" fma.rn.ftz.f32 %f541, %f524, %f126, %f539;\n" -" fma.rn.ftz.f32 %f542, %f524, %f132, %f540;\n" -" mul.ftz.f32 %f543, %f523, %f541;\n" -" mul.ftz.f32 %f544, %f542, %f524;\n" -" sub.ftz.f32 %f545, %f544, %f543;\n" -" mul.ftz.f32 %f546, %f120, %f523;\n" -" fma.rn.ftz.f32 %f547, %f111, %f508, %f546;\n" -" fma.rn.ftz.f32 %f548, %f524, %f112, %f547;\n" -" mul.ftz.f32 %f549, %f524, %f548;\n" -" mul.ftz.f32 %f550, %f508, %f541;\n" -" sub.ftz.f32 %f551, %f550, %f549;\n" -" mul.ftz.f32 %f552, %f542, %f508;\n" -" mul.ftz.f32 %f553, %f548, %f523;\n" -" sub.ftz.f32 %f554, %f553, %f552;\n" -" .loc 17 312 0\n" -" mul.ftz.f32 %f555, %f516, %f545;\n" -" .loc 17 313 0\n" -" mul.ftz.f32 %f556, %f516, %f551;\n" -" .loc 17 314 0\n" -" mul.ftz.f32 %f557, %f516, %f554;\n" -" .loc 16 396 0\n" -" mov.f32 %f558, 0f40800000; \n" -" mul.ftz.f32 %f559, %f306, %f558;\n" -" mul.ftz.f32 %f560, %f399, %f140;\n" -" sub.ftz.f32 %f561, %f314, %f313;\n" -" mul.ftz.f32 %f562, %f513, %f560;\n" -" mul.ftz.f32 %f563, %f559, %f561;\n" -" fma.rn.ftz.f32 %f564, %f563, %f562, %f139;\n" -" selp.f32 %f139, %f564, %f139, %p3;\n" -" mul.ftz.f32 %f565, %f562, %f338;\n" -" mul.ftz.f32 %f566, %f562, %f342;\n" -" mul.ftz.f32 %f567, %f562, %f346;\n" -" mul.ftz.f32 %f568, %f399, %f563;\n" -" mul.ftz.f32 %f569, %f568, %f140;\n" -" neg.ftz.f32 %f570, %f569;\n" -" mul.ftz.f32 %f571, %f530, %f570;\n" -" sub.ftz.f32 %f572, %f571, %f565;\n" -" mul.ftz.f32 %f573, %f533, %f570;\n" -" sub.ftz.f32 %f574, %f573, %f566;\n" -" mul.ftz.f32 %f575, %f536, %f570;\n" -" sub.ftz.f32 %f576, %f575, %f567;\n" -" @!%p4 bra $Lt_0_50690;\n" -" .loc 17 326 0\n" -" add.ftz.f32 %f138, %f572, %f138;\n" -" .loc 17 327 0\n" -" mul.ftz.f32 %f577, %f303, %f500;\n" -" neg.ftz.f32 %f578, %f577;\n" -" mov.f32 %f579, %f6;\n" -" fma.rn.ftz.f32 %f580, %f578, %f572, %f579;\n" -" mov.f32 %f6, %f580;\n" -" .loc 17 329 0\n" -" add.ftz.f32 %f137, %f574, %f137;\n" -" .loc 17 330 0\n" -" mul.ftz.f32 %f581, %f303, %f501;\n" -" neg.ftz.f32 %f582, %f581;\n" -" mov.f32 %f583, %f8;\n" -" fma.rn.ftz.f32 %f584, %f582, %f574, %f583;\n" -" mov.f32 %f8, %f584;\n" -" .loc 17 331 0\n" -" mov.f32 %f585, %f12;\n" -" fma.rn.ftz.f32 %f586, %f578, %f574, %f585;\n" -" mov.f32 %f12, %f586;\n" -" .loc 17 333 0\n" -" add.ftz.f32 %f136, %f576, %f136;\n" -" .loc 17 334 0\n" -" mov.f32 %f587, %f10;\n" -" mul.ftz.f32 %f588, %f303, %f502;\n" -" neg.ftz.f32 %f589, %f588;\n" -" fma.rn.ftz.f32 %f590, %f589, %f576, %f587;\n" -" mov.f32 %f10, %f590;\n" -" .loc 17 335 0\n" -" mov.f32 %f591, %f14;\n" -" fma.rn.ftz.f32 %f592, %f578, %f576, %f591;\n" -" mov.f32 %f14, %f592;\n" -" .loc 17 336 0\n" -" fma.rn.ftz.f32 %f15, %f582, %f576, %f15;\n" -" mov.f32 %f16, %f15;\n" -" bra.uni $Lt_0_50434;\n" -"$Lt_0_50690:\n" -" .loc 17 338 0\n" -" add.ftz.f32 %f138, %f572, %f138;\n" -" .loc 17 339 0\n" -" add.ftz.f32 %f137, %f574, %f137;\n" -" .loc 17 340 0\n" -" add.ftz.f32 %f136, %f576, %f136;\n" -"$Lt_0_50434:\n" -" .loc 17 347 0\n" -" rcp.approx.ftz.f32 %f593, %f395;\n" -" mul.ftz.f32 %f594, %f513, %f399;\n" -" mul.ftz.f32 %f595, %f594, %f140;\n" -" neg.ftz.f32 %f596, %f595;\n" -" mul.ftz.f32 %f597, %f513, %f563;\n" -" mul.ftz.f32 %f598, %f54, %f176;\n" -" mul.ftz.f32 %f599, %f60, %f176;\n" -" add.ftz.f32 %f600, %f176, %f176;\n" -" mul.ftz.f32 %f601, %f52, %f176;\n" -" mul.ftz.f32 %f602, %f47, %f176;\n" -" mul.ftz.f32 %f603, %f69, %f176;\n" -" mul.ftz.f32 %f604, %f61, %f176;\n" -" add.ftz.f32 %f605, %f227, %f227;\n" -" mul.ftz.f32 %f606, %f46, %f227;\n" -" mul.ftz.f32 %f607, %f59, %f227;\n" -" mul.ftz.f32 %f608, %f52, %f227;\n" -" mul.ftz.f32 %f609, %f47, %f227;\n" -" mul.ftz.f32 %f610, %f54, %f210;\n" -" add.ftz.f32 %f611, %f210, %f210;\n" -" mul.ftz.f32 %f612, %f46, %f210;\n" -" mul.ftz.f32 %f613, %f52, %f210;\n" -" mul.ftz.f32 %f614, %f51, %f210;\n" -" mul.ftz.f32 %f615, %f84, %f210;\n" -" mul.ftz.f32 %f616, %f46, %f203;\n" -" mul.ftz.f32 %f617, %f59, %f203;\n" -" mul.ftz.f32 %f618, %f51, %f203;\n" -" mul.ftz.f32 %f619, %f69, %f203;\n" -" mul.ftz.f32 %f620, %f227, %f220;\n" -" mul.ftz.f32 %f621, %f61, %f220;\n" -" add.ftz.f32 %f622, %f237, %f237;\n" -" mul.ftz.f32 %f623, %f237, %f210;\n" -" mul.ftz.f32 %f624, %f59, %f237;\n" -" mul.ftz.f32 %f625, %f597, %f140;\n" -" mul.ftz.f32 %f626, %f600, %f237;\n" -" mul.ftz.f32 %f627, %f60, %f605;\n" -" mul.ftz.f32 %f628, %f605, %f203;\n" -" mul.ftz.f32 %f629, %f237, %f191;\n" -" mul.ftz.f32 %f630, %f54, %f191;\n" -" mul.ftz.f32 %f631, %f220, %f191;\n" -" mul.ftz.f32 %f632, %f61, %f191;\n" -" add.ftz.f32 %f633, %f215, %f215;\n" -" mul.ftz.f32 %f634, %f227, %f215;\n" -" mul.ftz.f32 %f635, %f232, %f210;\n" -" mul.ftz.f32 %f636, %f53, %f232;\n" -" mul.ftz.f32 %f637, %f611, %f191;\n" -" mul.ftz.f32 %f638, %f52, %f611;\n" -" mul.ftz.f32 %f639, %f616, %f215;\n" -" mul.ftz.f32 %f640, %f617, %f215;\n" -" mul.ftz.f32 %f641, %f618, %f232;\n" -" mul.ftz.f32 %f642, %f618, %f215;\n" -" mul.ftz.f32 %f643, %f622, %f176;\n" -" mul.ftz.f32 %f644, %f624, %f191;\n" -" neg.ftz.f32 %f645, %f625;\n" -" mul.ftz.f32 %f646, %f46, %f629;\n" -" mul.ftz.f32 %f647, %f633, %f176;\n" -" mul.ftz.f32 %f648, %f61, %f633;\n" -" mul.ftz.f32 %f649, %f46, %f631;\n" -" sub.ftz.f32 %f650, %f649, %f639;\n" -" mul.ftz.f32 %f651, %f59, %f631;\n" -" sub.ftz.f32 %f652, %f651, %f640;\n" -" mul.ftz.f32 %f653, %f51, %f629;\n" -" sub.ftz.f32 %f654, %f653, %f641;\n" -" mul.ftz.f32 %f655, %f51, %f631;\n" -" sub.ftz.f32 %f656, %f655, %f642;\n" -" mul.ftz.f32 %f657, %f232, %f617;\n" -" sub.ftz.f32 %f658, %f657, %f644;\n" -" mul.ftz.f32 %f659, %f232, %f616;\n" -" sub.ftz.f32 %f660, %f659, %f646;\n" -" mul.ftz.f32 %f661, %f60, %f374;\n" -" sub.ftz.f32 %f662, %f650, %f661;\n" -" mul.ftz.f32 %f663, %f47, %f374;\n" -" sub.ftz.f32 %f664, %f652, %f663;\n" -" mul.ftz.f32 %f665, %f237, %f603;\n" -" sub.ftz.f32 %f666, %f654, %f665;\n" -" mul.ftz.f32 %f667, %f53, %f374;\n" -" sub.ftz.f32 %f668, %f656, %f667;\n" -" fma.rn.ftz.f32 %f669, %f47, %f626, %f658;\n" -" fma.rn.ftz.f32 %f670, %f60, %f643, %f660;\n" -" fma.rn.ftz.f32 %f671, %f60, %f372, %f662;\n" -" fma.rn.ftz.f32 %f672, %f47, %f372, %f664;\n" -" fma.rn.ftz.f32 %f673, %f176, %f621, %f666;\n" -" fma.rn.ftz.f32 %f674, %f53, %f372, %f668;\n" -" mul.ftz.f32 %f675, %f220, %f601;\n" -" sub.ftz.f32 %f676, %f669, %f675;\n" -" mul.ftz.f32 %f677, %f220, %f598;\n" -" sub.ftz.f32 %f678, %f670, %f677;\n" -" fma.rn.ftz.f32 %f679, %f54, %f647, %f671;\n" -" mul.ftz.f32 %f680, %f232, %f602;\n" -" sub.ftz.f32 %f681, %f672, %f680;\n" -" fma.rn.ftz.f32 %f682, %f227, %f619, %f673;\n" -" mul.ftz.f32 %f683, %f51, %f634;\n" -" sub.ftz.f32 %f684, %f674, %f683;\n" -" mul.ftz.f32 %f685, %f47, %f628;\n" -" sub.ftz.f32 %f686, %f676, %f685;\n" -" mul.ftz.f32 %f687, %f203, %f627;\n" -" sub.ftz.f32 %f688, %f678, %f687;\n" -" mul.ftz.f32 %f689, %f232, %f599;\n" -" sub.ftz.f32 %f690, %f679, %f689;\n" -" mul.ftz.f32 %f691, %f59, %f634;\n" -" sub.ftz.f32 %f692, %f681, %f691;\n" -" fma.rn.ftz.f32 %f693, %f237, %f614, %f682;\n" -" mul.ftz.f32 %f694, %f176, %f636;\n" -" sub.ftz.f32 %f695, %f684, %f694;\n" -" fma.rn.ftz.f32 %f696, %f203, %f613, %f686;\n" -" mul.ftz.f32 %f697, %f46, %f623;\n" -" sub.ftz.f32 %f698, %f688, %f697;\n" -" fma.rn.ftz.f32 %f699, %f60, %f376, %f690;\n" -" fma.rn.ftz.f32 %f700, %f52, %f647, %f692;\n" -" mul.ftz.f32 %f701, %f61, %f372;\n" -" sub.ftz.f32 %f702, %f693, %f701;\n" -" fma.rn.ftz.f32 %f703, %f176, %f648, %f695;\n" -" mul.ftz.f32 %f704, %f59, %f623;\n" -" sub.ftz.f32 %f705, %f696, %f704;\n" -" fma.rn.ftz.f32 %f706, %f46, %f620, %f698;\n" -" mul.ftz.f32 %f707, %f215, %f606;\n" -" sub.ftz.f32 %f708, %f699, %f707;\n" -" mul.ftz.f32 %f709, %f191, %f638;\n" -" sub.ftz.f32 %f710, %f700, %f709;\n" -" mul.ftz.f32 %f711, %f51, %f620;\n" -" sub.ftz.f32 %f712, %f702, %f711;\n" -" fma.rn.ftz.f32 %f713, %f51, %f635, %f703;\n" -" fma.rn.ftz.f32 %f714, %f220, %f607, %f705;\n" -" fma.rn.ftz.f32 %f715, %f203, %f610, %f706;\n" -" mul.ftz.f32 %f716, %f54, %f637;\n" -" sub.ftz.f32 %f717, %f708, %f716;\n" -" fma.rn.ftz.f32 %f718, %f59, %f635, %f710;\n" -" fma.rn.ftz.f32 %f719, %f232, %f604, %f712;\n" -" fma.rn.ftz.f32 %f720, %f53, %f376, %f713;\n" -" fma.rn.ftz.f32 %f721, %f191, %f608, %f714;\n" -" mul.ftz.f32 %f722, %f232, %f598;\n" -" sub.ftz.f32 %f723, %f715, %f722;\n" -" fma.rn.ftz.f32 %f724, %f232, %f612, %f717;\n" -" fma.rn.ftz.f32 %f725, %f191, %f609, %f718;\n" -" mul.ftz.f32 %f726, %f227, %f632;\n" -" sub.ftz.f32 %f727, %f726, %f719;\n" -" mul.ftz.f32 %f728, %f191, %f615;\n" -" sub.ftz.f32 %f729, %f720, %f728;\n" -" mul.ftz.f32 %f730, %f232, %f601;\n" -" sub.ftz.f32 %f731, %f721, %f730;\n" -" fma.rn.ftz.f32 %f732, %f227, %f630, %f723;\n" -" mul.ftz.f32 %f733, %f724, %f22;\n" -" mul.ftz.f32 %f734, %f725, %f21;\n" -" mul.ftz.f32 %f735, %f727, %f23;\n" -" mul.ftz.f32 %f736, %f729, %f23;\n" -" mul.ftz.f32 %f737, %f731, %f21;\n" -" mul.ftz.f32 %f738, %f732, %f22;\n" -" mul.ftz.f32 %f739, %f593, %f733;\n" -" mul.ftz.f32 %f740, %f593, %f734;\n" -" mul.ftz.f32 %f741, %f593, %f735;\n" -" mul.ftz.f32 %f742, %f593, %f736;\n" -" mul.ftz.f32 %f743, %f593, %f737;\n" -" mul.ftz.f32 %f744, %f593, %f738;\n" -" mul.ftz.f32 %f745, %f739, %f401;\n" -" mul.ftz.f32 %f746, %f740, %f401;\n" -" mul.ftz.f32 %f747, %f741, %f401;\n" -" mul.ftz.f32 %f748, %f742, %f401;\n" -" mul.ftz.f32 %f749, %f743, %f401;\n" -" mul.ftz.f32 %f750, %f744, %f401;\n" -" mul.ftz.f32 %f751, %f569, %f555;\n" -" mul.ftz.f32 %f752, %f52, %f749;\n" -" mul.ftz.f32 %f753, %f47, %f746;\n" -" sub.ftz.f32 %f754, %f753, %f752;\n" -" mul.ftz.f32 %f755, %f54, %f750;\n" -" mul.ftz.f32 %f756, %f745, %f60;\n" -" sub.ftz.f32 %f757, %f756, %f755;\n" -" add.ftz.f32 %f758, %f754, %f757;\n" -" mul.ftz.f32 %f759, %f61, %f747;\n" -" mul.ftz.f32 %f760, %f748, %f53;\n" -" sub.ftz.f32 %f761, %f760, %f759;\n" -" add.ftz.f32 %f762, %f758, %f761;\n" -" mul.ftz.f32 %f763, %f762, %f645;\n" -" sub.ftz.f32 %f764, %f763, %f751;\n" -" fma.rn.ftz.f32 %f765, %f357, %f596, %f764;\n" -" add.ftz.f32 %f135, %f135, %f765;\n" -" .loc 17 348 0\n" -" mul.ftz.f32 %f766, %f54, %f227;\n" -" mul.ftz.f32 %f767, %f53, %f210;\n" -" mul.ftz.f32 %f768, %f47, %f203;\n" -" mul.ftz.f32 %f769, %f60, %f203;\n" -" add.ftz.f32 %f770, %f220, %f220;\n" -" mul.ftz.f32 %f771, %f47, %f191;\n" -" mul.ftz.f32 %f772, %f60, %f191;\n" -" mul.ftz.f32 %f773, %f53, %f191;\n" -" mul.ftz.f32 %f774, %f52, %f215;\n" -" mul.ftz.f32 %f775, %f54, %f215;\n" -" mul.ftz.f32 %f776, %f215, %f203;\n" -" mul.ftz.f32 %f777, %f232, %f203;\n" -" mul.ftz.f32 %f778, %f64, %f232;\n" -" mul.ftz.f32 %f779, %f59, %f770;\n" -" mul.ftz.f32 %f780, %f46, %f770;\n" -" mul.ftz.f32 %f781, %f52, %f631;\n" -" mul.ftz.f32 %f782, %f633, %f237;\n" -" mul.ftz.f32 %f783, %f51, %f633;\n" -" mul.ftz.f32 %f784, %f775, %f203;\n" -" mul.ftz.f32 %f785, %f61, %f776;\n" -" fma.rn.ftz.f32 %f786, %f59, %f782, %f781;\n" -" mul.ftz.f32 %f787, %f46, %f782;\n" -" sub.ftz.f32 %f788, %f787, %f784;\n" -" mul.ftz.f32 %f789, %f61, %f631;\n" -" sub.ftz.f32 %f790, %f789, %f785;\n" -" mul.ftz.f32 %f791, %f203, %f774;\n" -" sub.ftz.f32 %f792, %f786, %f791;\n" -" fma.rn.ftz.f32 %f793, %f54, %f631, %f788;\n" -" fma.rn.ftz.f32 %f794, %f237, %f783, %f790;\n" -" mul.ftz.f32 %f795, %f232, %f779;\n" -" sub.ftz.f32 %f796, %f792, %f795;\n" -" mul.ftz.f32 %f797, %f232, %f780;\n" -" sub.ftz.f32 %f798, %f793, %f797;\n" -" mul.ftz.f32 %f799, %f237, %f773;\n" -" sub.ftz.f32 %f800, %f794, %f799;\n" -" fma.rn.ftz.f32 %f801, %f232, %f768, %f796;\n" -" fma.rn.ftz.f32 %f802, %f232, %f769, %f798;\n" -" fma.rn.ftz.f32 %f803, %f53, %f777, %f800;\n" -" mul.ftz.f32 %f804, %f237, %f771;\n" -" sub.ftz.f32 %f805, %f801, %f804;\n" -" mul.ftz.f32 %f806, %f237, %f772;\n" -" sub.ftz.f32 %f807, %f802, %f806;\n" -" mul.ftz.f32 %f808, %f220, %f778;\n" -" sub.ftz.f32 %f809, %f803, %f808;\n" -" mul.ftz.f32 %f810, %f47, %f623;\n" -" sub.ftz.f32 %f811, %f805, %f810;\n" -" mul.ftz.f32 %f812, %f60, %f623;\n" -" sub.ftz.f32 %f813, %f807, %f812;\n" -" mul.ftz.f32 %f814, %f237, %f767;\n" -" sub.ftz.f32 %f815, %f809, %f814;\n" -" fma.rn.ftz.f32 %f816, %f47, %f620, %f811;\n" -" fma.rn.ftz.f32 %f817, %f60, %f620, %f813;\n" -" fma.rn.ftz.f32 %f818, %f53, %f620, %f815;\n" -" fma.rn.ftz.f32 %f819, %f232, %f613, %f816;\n" -" mul.ftz.f32 %f820, %f215, %f766;\n" -" sub.ftz.f32 %f821, %f817, %f820;\n" -" mul.ftz.f32 %f822, %f61, %f634;\n" -" sub.ftz.f32 %f823, %f818, %f822;\n" -" mul.ftz.f32 %f824, %f215, %f608;\n" -" sub.ftz.f32 %f825, %f819, %f824;\n" -" fma.rn.ftz.f32 %f826, %f232, %f610, %f821;\n" -" fma.rn.ftz.f32 %f827, %f61, %f635, %f823;\n" -" mul.ftz.f32 %f828, %f825, %f21;\n" -" mul.ftz.f32 %f829, %f826, %f22;\n" -" mul.ftz.f32 %f830, %f827, %f23;\n" -" mul.ftz.f32 %f831, %f593, %f828;\n" -" mul.ftz.f32 %f832, %f593, %f829;\n" -" mul.ftz.f32 %f833, %f593, %f830;\n" -" mul.ftz.f32 %f834, %f831, %f401;\n" -" mul.ftz.f32 %f835, %f832, %f401;\n" -" mul.ftz.f32 %f836, %f833, %f401;\n" -" mul.ftz.f32 %f837, %f569, %f556;\n" -" mul.ftz.f32 %f838, %f46, %f745;\n" -" mul.ftz.f32 %f839, %f835, %f54;\n" -" sub.ftz.f32 %f840, %f839, %f838;\n" -" mul.ftz.f32 %f841, %f59, %f746;\n" -" mul.ftz.f32 %f842, %f834, %f52;\n" -" sub.ftz.f32 %f843, %f842, %f841;\n" -" add.ftz.f32 %f844, %f840, %f843;\n" -" mul.ftz.f32 %f845, %f51, %f748;\n" -" mul.ftz.f32 %f846, %f836, %f61;\n" -" sub.ftz.f32 %f847, %f846, %f845;\n" -" add.ftz.f32 %f848, %f844, %f847;\n" -" mul.ftz.f32 %f849, %f848, %f645;\n" -" sub.ftz.f32 %f850, %f849, %f837;\n" -" fma.rn.ftz.f32 %f851, %f364, %f596, %f850;\n" -" add.ftz.f32 %f134, %f134, %f851;\n" -" .loc 17 349 0\n" -" mul.ftz.f32 %f852, %f569, %f557;\n" -" mul.ftz.f32 %f853, %f47, %f834;\n" -" mul.ftz.f32 %f854, %f59, %f749;\n" -" sub.ftz.f32 %f855, %f854, %f853;\n" -" mul.ftz.f32 %f856, %f60, %f835;\n" -" mul.ftz.f32 %f857, %f750, %f46;\n" -" sub.ftz.f32 %f858, %f857, %f856;\n" -" add.ftz.f32 %f859, %f855, %f858;\n" -" mul.ftz.f32 %f860, %f53, %f836;\n" -" mul.ftz.f32 %f861, %f747, %f51;\n" -" sub.ftz.f32 %f862, %f861, %f860;\n" -" add.ftz.f32 %f863, %f859, %f862;\n" -" mul.ftz.f32 %f864, %f863, %f645;\n" -" sub.ftz.f32 %f865, %f864, %f852;\n" -" fma.rn.ftz.f32 %f866, %f367, %f596, %f865;\n" -" add.ftz.f32 %f133, %f133, %f866;\n" -" mul.lo.s32 %r35, %r14, %r1;\n" -" cvt.s64.s32 %rd54, %r35;\n" -" mul.wide.s32 %rd55, %r35, 4;\n" -" add.u64 %rd25, %rd25, %rd55;\n" -" setp.gt.u64 %p23, %rd28, %rd25;\n" -" @%p23 bra $Lt_0_40962;\n" -" bra.uni $Lt_0_40450;\n" -"$Lt_0_56834:\n" -" mov.f32 %f133, 0f00000000; \n" -" mov.f32 %f134, 0f00000000; \n" -" mov.f32 %f135, 0f00000000; \n" -" mov.f32 %f136, 0f00000000; \n" -" mov.f32 %f137, 0f00000000; \n" -" mov.f32 %f138, 0f00000000; \n" -" mov.f32 %f139, 0f00000000; \n" -"$Lt_0_40450:\n" -" mov.u32 %r36, 1;\n" -" setp.le.s32 %p24, %r1, %r36;\n" -" @%p24 bra $Lt_0_53250;\n" -" .loc 17 352 0\n" -" mov.u64 %rd56, __cuda___cuda_local_var_33207_55_non_const_red_acc144;\n" -" cvt.s64.s32 %rd57, %r2;\n" -" mul.wide.s32 %rd58, %r2, 4;\n" -" add.u64 %rd59, %rd56, %rd58;\n" -" mov.f32 %f867, %f138;\n" -" st.shared.f32 [%rd59+0], %f867;\n" -" mov.f32 %f868, %f137;\n" -" st.shared.f32 [%rd59+512], %f868;\n" -" mov.f32 %f869, %f136;\n" -" st.shared.f32 [%rd59+1024], %f869;\n" -" mov.f32 %f870, %f135;\n" -" st.shared.f32 [%rd59+1536], %f870;\n" -" mov.f32 %f871, %f134;\n" -" st.shared.f32 [%rd59+2048], %f871;\n" -" mov.f32 %f872, %f133;\n" -" st.shared.f32 [%rd59+2560], %f872;\n" -" shr.s32 %r37, %r1, 31;\n" -" mov.s32 %r38, 1;\n" -" and.b32 %r39, %r37, %r38;\n" -" add.s32 %r40, %r39, %r1;\n" -" shr.s32 %r41, %r40, 1;\n" -" mov.s32 %r42, %r41;\n" -" mov.u32 %r43, 0;\n" -" setp.ne.u32 %p25, %r41, %r43;\n" -" @!%p25 bra $Lt_0_51714;\n" -"$Lt_0_52226:\n" -" setp.ge.u32 %p26, %r16, %r42;\n" -" @%p26 bra $Lt_0_52482;\n" -" add.u32 %r44, %r2, %r42;\n" -" cvt.u64.u32 %rd60, %r44;\n" -" mul.wide.u32 %rd61, %r44, 4;\n" -" add.u64 %rd62, %rd56, %rd61;\n" -" ld.shared.f32 %f873, [%rd62+0];\n" -" add.ftz.f32 %f867, %f873, %f867;\n" -" st.shared.f32 [%rd59+0], %f867;\n" -" ld.shared.f32 %f874, [%rd62+512];\n" -" add.ftz.f32 %f868, %f874, %f868;\n" -" st.shared.f32 [%rd59+512], %f868;\n" -" ld.shared.f32 %f875, [%rd62+1024];\n" -" add.ftz.f32 %f869, %f875, %f869;\n" -" st.shared.f32 [%rd59+1024], %f869;\n" -" ld.shared.f32 %f876, [%rd62+1536];\n" -" add.ftz.f32 %f870, %f876, %f870;\n" -" st.shared.f32 [%rd59+1536], %f870;\n" -" ld.shared.f32 %f877, [%rd62+2048];\n" -" add.ftz.f32 %f871, %f877, %f871;\n" -" st.shared.f32 [%rd59+2048], %f871;\n" -" ld.shared.f32 %f878, [%rd62+2560];\n" -" add.ftz.f32 %f872, %f878, %f872;\n" -" st.shared.f32 [%rd59+2560], %f872;\n" -"$Lt_0_52482:\n" -" shr.u32 %r42, %r42, 1;\n" -" mov.u32 %r45, 0;\n" -" setp.ne.u32 %p27, %r42, %r45;\n" -" @%p27 bra $Lt_0_52226;\n" -"$Lt_0_51714:\n" -" mov.f32 %f138, %f867;\n" -" mov.f32 %f137, %f868;\n" -" mov.f32 %f136, %f869;\n" -" mov.f32 %f135, %f870;\n" -" mov.f32 %f134, %f871;\n" -" mov.f32 %f133, %f872;\n" -" ld.param.s32 %r46, [__cudaparm_kernel_ellipsoid_eflag];\n" -" mov.s32 %r47, 0;\n" -" set.gt.u32.s32 %r48, %r46, %r47;\n" -" neg.s32 %r49, %r48;\n" -" ld.param.s32 %r50, [__cudaparm_kernel_ellipsoid_vflag];\n" -" mov.s32 %r51, 0;\n" -" set.gt.u32.s32 %r52, %r50, %r51;\n" -" neg.s32 %r53, %r52;\n" -" or.b32 %r54, %r49, %r53;\n" -" mov.u32 %r55, 0;\n" -" setp.eq.s32 %p28, %r54, %r55;\n" -" @%p28 bra $Lt_0_53250;\n" -" mov.f32 %f867, %f6;\n" -" st.shared.f32 [%rd59+0], %f867;\n" -" mov.f32 %f868, %f8;\n" -" st.shared.f32 [%rd59+512], %f868;\n" -" mov.f32 %f869, %f10;\n" -" st.shared.f32 [%rd59+1024], %f869;\n" -" mov.f32 %f870, %f12;\n" -" st.shared.f32 [%rd59+1536], %f870;\n" -" mov.f32 %f871, %f14;\n" -" st.shared.f32 [%rd59+2048], %f871;\n" -" mov.f32 %f872, %f15;\n" -" st.shared.f32 [%rd59+2560], %f872;\n" -" mov.f32 %f879, %f139;\n" -" st.shared.f32 [%rd59+3072], %f879;\n" -" mov.s32 %r56, %r41;\n" -" @!%p25 bra $Lt_0_53762;\n" -"$Lt_0_54274:\n" -" setp.ge.u32 %p29, %r16, %r56;\n" -" @%p29 bra $Lt_0_54530;\n" -" add.u32 %r57, %r2, %r56;\n" -" cvt.u64.u32 %rd63, %r57;\n" -" mul.wide.u32 %rd64, %r57, 4;\n" -" add.u64 %rd65, %rd56, %rd64;\n" -" ld.shared.f32 %f880, [%rd65+0];\n" -" add.ftz.f32 %f867, %f880, %f867;\n" -" st.shared.f32 [%rd59+0], %f867;\n" -" ld.shared.f32 %f881, [%rd65+512];\n" -" add.ftz.f32 %f868, %f881, %f868;\n" -" st.shared.f32 [%rd59+512], %f868;\n" -" ld.shared.f32 %f882, [%rd65+1024];\n" -" add.ftz.f32 %f869, %f882, %f869;\n" -" st.shared.f32 [%rd59+1024], %f869;\n" -" ld.shared.f32 %f883, [%rd65+1536];\n" -" add.ftz.f32 %f870, %f883, %f870;\n" -" st.shared.f32 [%rd59+1536], %f870;\n" -" ld.shared.f32 %f884, [%rd65+2048];\n" -" add.ftz.f32 %f871, %f884, %f871;\n" -" st.shared.f32 [%rd59+2048], %f871;\n" -" ld.shared.f32 %f885, [%rd65+2560];\n" -" add.ftz.f32 %f872, %f885, %f872;\n" -" st.shared.f32 [%rd59+2560], %f872;\n" -" ld.shared.f32 %f886, [%rd65+3072];\n" -" add.ftz.f32 %f879, %f886, %f879;\n" -" st.shared.f32 [%rd59+3072], %f879;\n" -"$Lt_0_54530:\n" -" shr.u32 %r56, %r56, 1;\n" -" mov.u32 %r58, 0;\n" -" setp.ne.u32 %p30, %r56, %r58;\n" -" @%p30 bra $Lt_0_54274;\n" -"$Lt_0_53762:\n" -" mov.f32 %f6, %f867;\n" -" mov.f32 %f8, %f868;\n" -" mov.f32 %f10, %f869;\n" -" mov.f32 %f12, %f870;\n" -" mov.f32 %f14, %f871;\n" -" mov.f32 %f16, %f872;\n" -" mov.f32 %f139, %f879;\n" -"$Lt_0_53250:\n" -"$Lt_0_51202:\n" -" mov.u32 %r59, 0;\n" -" setp.ne.s32 %p31, %r16, %r59;\n" -" @%p31 bra $Lt_0_55298;\n" -" ld.param.u64 %rd66, [__cudaparm_kernel_ellipsoid_engv];\n" -" add.u64 %rd67, %rd66, %rd3;\n" -" ld.param.s32 %r60, [__cudaparm_kernel_ellipsoid_astride];\n" -" ld.param.s32 %r61, [__cudaparm_kernel_ellipsoid_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p32, %r61, %r62;\n" -" @%p32 bra $Lt_0_55810;\n" -" st.global.f32 [%rd67+0], %f139;\n" -" cvt.s64.s32 %rd68, %r60;\n" -" mul.wide.s32 %rd69, %r60, 4;\n" -" add.u64 %rd67, %rd67, %rd69;\n" -"$Lt_0_55810:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_ellipsoid_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p33, %r63, %r64;\n" -" @%p33 bra $Lt_0_56322;\n" -" mov.f32 %f887, %f6;\n" -" st.global.f32 [%rd67+0], %f887;\n" -" cvt.s64.s32 %rd70, %r60;\n" -" mul.wide.s32 %rd71, %r60, 4;\n" -" add.u64 %rd72, %rd71, %rd67;\n" -" mov.f32 %f888, %f8;\n" -" st.global.f32 [%rd72+0], %f888;\n" -" add.u64 %rd73, %rd71, %rd72;\n" -" mov.f32 %f889, %f10;\n" -" st.global.f32 [%rd73+0], %f889;\n" -" add.u64 %rd74, %rd71, %rd73;\n" -" mov.f32 %f890, %f12;\n" -" st.global.f32 [%rd74+0], %f890;\n" -" add.u64 %rd67, %rd71, %rd74;\n" -" mov.f32 %f891, %f14;\n" -" st.global.f32 [%rd67+0], %f891;\n" -" mov.f32 %f892, %f16;\n" -" add.u64 %rd75, %rd71, %rd67;\n" -" st.global.f32 [%rd75+0], %f892;\n" -"$Lt_0_56322:\n" -" ld.param.u64 %rd76, [__cudaparm_kernel_ellipsoid_ans];\n" -" mul.lo.u64 %rd77, %rd2, 16;\n" -" add.u64 %rd78, %rd76, %rd77;\n" -" mov.f32 %f893, %f894;\n" -" st.global.v4.f32 [%rd78+0], {%f138,%f137,%f136,%f893};\n" -" add.s32 %r65, %r8, %r60;\n" -" cvt.s64.s32 %rd79, %r65;\n" -" mul.wide.s32 %rd80, %r65, 16;\n" -" add.u64 %rd81, %rd76, %rd80;\n" -" mov.f32 %f895, %f896;\n" -" st.global.v4.f32 [%rd81+0], {%f135,%f134,%f133,%f895};\n" -"$Lt_0_55298:\n" -"$Lt_0_39938:\n" -" .loc 17 355 0\n" -" exit;\n" -"$LDWend_kernel_ellipsoid:\n" -" }\n" -; diff --git a/lib/gpu/lal_ans.o b/lib/gpu/lal_ans.o deleted file mode 100644 index bf704f85c5d215023a96a79f1564359e157f9320..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30600 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 diff --git a/lib/gpu/lal_atom.o b/lib/gpu/lal_atom.o deleted file mode 100644 index 1c3379497e937180c7473c77c16c34d90835be84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47544 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 M2%QI-wkFyC2d}+Rq5uE@ diff --git a/lib/gpu/lal_base_charge.o b/lib/gpu/lal_base_charge.o deleted file mode 100644 index ab735d74db5cfd4392e5dacee2fafd9340330a0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80104 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 diff --git a/lib/gpu/lal_base_ellipsoid.o b/lib/gpu/lal_base_ellipsoid.o deleted file mode 100644 index 8fe2f1f6383be1f4498af16c10e82076edd2ebd9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100744 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 AJpcdz diff --git a/lib/gpu/lal_cg_cmm.o b/lib/gpu/lal_cg_cmm.o deleted file mode 100644 index 88fdd2fc7a0da849bbab7fbb930ae0adbb13ae26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71352 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 N@Uca}7ib`y{~tCzqxk>; diff --git a/lib/gpu/lal_cg_cmm_ext.o b/lib/gpu/lal_cg_cmm_ext.o deleted file mode 100644 index 93408bb679c4e45a6b123675fb3d197764e6e6da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6184 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 b(5cF|qYD3b75-{9|8B~< diff --git a/lib/gpu/lal_cg_cmm_long_ext.o b/lib/gpu/lal_cg_cmm_long_ext.o deleted file mode 100644 index 5131cb7530c371c949491023751fe73d3784046f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6576 zcmds5Uu;{|89#|jn{}O?vI%vAt(Rd?Dq7bLZkmpb*@@FQ;-;9Ic2R)cI`(z!;ne8by5+X#zVIUm?pHbGTLmdwmu;34=+r8X|)MjwUtWuGHF2f`_4Vb zKDqUM8E^aKd(U@%-|zd*cfNDZy*GJwNZ;An(ZQs2u!mTyCsD>ObhY#tS7WT3eSswp zU+p?g{Y!K^Nw-sUYhf+TWlbJF+jW_^`FuVU*f>Y3hoiVadVaUSgDr=CWY|p_0LyYugN9Qx88pxSa3842-q!Z97l1825 zqQmD(HE7P2ia;GP*F$G%ewc3i^^1QezBj%n{@9*0DnYs02ZIO2!o3-s1(39tL@^h5 zfo}xXJGtn#Q+?fD;OW4yz}HM~ycSHMm;jdeib6TYr$}XD$;P*+(d`dtB1sS%KQ7%y z^zP?pdAmLltlHg;=PmU3rc5+`Q-$7m^$FY)jniXj;`TCTSx7YAc#J^%BM}@OFc))Z z=l>R%e;e^f=l>a)`xO-3zIZYO^C{@gR(^*x?y1`!@^=3GpAx|mP!^b5gf-c4BEFSG z%Nen`Yk~RqIvE?9zZQ6L3d;QXz>nsFe}+%w{FVCy8)Gf6)C#Y!f_(T)M`Fj7zzb36 z2xV$V1a!NLqg0pBFR`6hRD~`bn6@M+b42y2(f-&@t@#Vt&!<%X5s4oo=bEr#v zalz8DI*DLEEMdpeJe@tjdVs;Kk*6l2@Ljq=bohzv7M(7l9Y+dDdlf%L%mnhEsdAdvjW)tYs@T6KW_#r;)_X ztHZjb4cE=nGUXhiO;w8}8UdlJwMy2k*R?PYK0G-14XtN**PcyUG!zYO(|W^^NVqo= z)p~ZDIW3v79DGaPCZ5LzerK%X>C|r4G1I-;N5Gxy)^sg)dd|E>{B9ySupao%#HoO!54R{>`}P_K*y6&apKNomOI@XwgujZB?&cm4m}{9>Rrp_W1(5km*n-lo{#{>o z7$*dg>Q84^`pdem2j<>8*b~>mK;q9{776_yrG~ zO583V4fyRarr<{+-AAm{28qkwO~lG%=wa7fvijFG_y4IgRO4n00Pno1jSeaGN1jf!cG za;%CB6wmH9_0^pHG34;X3nhvkCga;*_z&Y@QP2r0?BH$!j4 ztXst?Y0Ezw6xj$nQ{hob4hG;WB4}9#wFv zgC_bv@WAQ+79^ApeS^t-Vgh%M`?13Rio#z{0U&OEp9lVuz^SQ*f1kQs6RAxo^%Y{I4tV-&Jrm&+AGY8kcM&uTuv?^SuX`obNvbPUEWlpVA*o z5I6snz===mBG1Mj6~0=}iwa+j|AE2}B96>wwfMV9)&V9i-2$h4)H-ZZ@OxpCaUN3Q zsCf=5d^OJ)AH|ukdam~>_#I08J17wdHR^umAZ~PQ1cgHslZ56)e}_n+xswoA<$sf- hEnMzf*-HLC!7I7=8YKWZ;xx_p^84_Z3)jTp{{@7mkk0@B diff --git a/lib/gpu/lal_charmm_long.o b/lib/gpu/lal_charmm_long.o deleted file mode 100644 index f5baeb52bfed401f3c34c3d89ebe8fd1caee3467..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81224 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 diff --git a/lib/gpu/lal_coul_long.o b/lib/gpu/lal_coul_long.o deleted file mode 100644 index bf1455194f17ad9a30c8bf235a27677e0104b56c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63976 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 Gg8wfBv`j1j diff --git a/lib/gpu/lal_coul_long_ext.o b/lib/gpu/lal_coul_long_ext.o deleted file mode 100644 index d2407cfe75f3f3eb1467bbfb0a8624f1196fbad4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6152 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

Nn1`m@_n*TLtS&9(b-UFa4$Jn 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 diff --git a/lib/gpu/lal_lj_class2_long_ext.o b/lib/gpu/lal_lj_class2_long_ext.o deleted file mode 100644 index 49bee045b250bd264f7bc0080076459837d2c16f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6536 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 diff --git a/lib/gpu/lal_lj_coul.o b/lib/gpu/lal_lj_coul.o deleted file mode 100644 index 6e251cfa18bf96cf55cb96ea43171029e1248c68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74480 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 NM;8~!lK3Lm{{s;|tH=NV diff --git a/lib/gpu/lal_lj_coul_long_ext.o b/lib/gpu/lal_lj_coul_long_ext.o deleted file mode 100644 index 8946ee721c482dd43b2255e2fe0420423dd067b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6520 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 diff --git a/lib/gpu/lal_lj_expand_ext.o b/lib/gpu/lal_lj_expand_ext.o deleted file mode 100644 index a900ac9eb8499c1dc3a2ab6c80c67872da1cd05c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6208 zcmd5=ZERat89q+>5z4UBf=0^_y==EElUie^N$bKuaq2YAcGH-%T?;Z^QE?|IJiew_E5d(U;A>oE>A`Fu=@kA0ohdJ<*q+{T*T#nmp>%09*7vmdrx zr2YqVJ5RSa=~lyPnrk#Z`&P>};*O4v1_RsYNOkNSG_XC!$p2uxI;Wq;m{GY$@2~u} zukv=~oyx7s9qu_^iRoR$SOkMQk-*tG{UkcjL!{3*dRyRZOrHX%ky3=RHC~PBV`S4x z+AwJ?d>%+`@RE!_Mc%K#iD&#_V*DNq^1#!5TXYgMvMf4r%H|w8V0DrHhNJV0&p0~I zc*)V*$e1QhZZ+!2IU;jsjv{$yl6Cn{Ir;M%DfNsVjUI^}jt(47#-IO?$9z`Lh(g*_ zi~+qEuNeB&t-xj{o>6hU8|;vkx6Wf@aU#Hz0k5Lme>oTCHgVg~K}yMg(q z5Tbwn&w;r-kM;ifAco(B?rfXikj5>I%3paqfAw-q9{|b%a|TA^RmbDGI9kr=n!6F0 zKib4t&-{(ROEV*9QKPF;WwH}=lhS8Y8Jn0pWX zs-Y*Ml`FBzE&enhpYU>BX0d&@Cw??@fyZI?E2v*9%#7-SK7+`7K@99k>^%buQXSC8 zsC0#BY$}(1I-5VP^(GE$J2F}!ucZqm z3u-V(PXLLVSH|eB23$8!Lr8cVFJ^NT0j`UsLfR^qwGemSyMO;zw6@-Zhab{9f*rw5 ztvwVDhuXs(TH7Hjqs3FUgYVk&5YJ;Pzcc20I&p~krdl^N6L8->8(S8ApMj=P7lKzi zZvNJ1{4F>~7>iIJA}3BgSKVodrWAKw+& z0_D=}Z~abFw}0zP&E0cFAeSq*k(Wsi195*({hz*(nwrDVJH0qiMTPBE3KZWEu{J>$?#a z#4?Oqd06KQwiQIpca`l_`bpu!8Z$>rsc}n8=6`H7*yByX=-E)EOLQLQFUr~ot&uAC zp|ef}g#N)6M>#D9{peC0S|1X*KfVN=aK1fgK*+PMxDt2A+KB=3>9(gshhzq?bX7F9 z1APy!M)9S+%vYMZ`(X^Yb0Y4{XB`VUPntiaB<&?m$0o&Z$EC_ik^g2Dgic%%+0wpl zWWOZrpX2P>O~#k@j|=-yjl#9&_O*YF^tt5^>t*hM7=)cUPFo+obr330KF^ z`V_v*_ep_kf;X%bt(iX=VnAt{netIAVO; z1OK51{<;T#*#rNB2mTKadIk^cm6%4Z37Br>102mb}Ze?##3nGCyS5B|SA@H-y(dOSCc^4#o!Z}Y&@9{8&s zILoDSX6}UPe8i!#gXvnVC2b>On%M%`p=)#+kM#5(V5WI|YRW8HrE(#UZ$x|AoD5<3VA76c z3uSX8Rkk|lgKvMhXA4u`yk9alr)-EzJo)3#Mc3PT4U_3#+pJ60&$=D0OpC{3Fa<L=4homZCc`HF61YYnhfuN+@?Ucw4s~PxQM)jnO;gT$g@c|o4;^N*10Fi+JcReU z0-E_X12ZXOCfkJ(6#RXR;M`8cPj*UgohEe0TdjKOoRuo^>eXgfw;Y|E;neG6?=hux zdt%mPHf>SW!tJ!@ur6i3B(+_ccr=~OveBnXS=+*YaB>snG1i~xGrLozQr0T5(PAl^ zw@2&Oq%P|Y^4!B8gWYD*_1Eq^2bo&HdQa}vZ4X;zJ3Ee@%O9}9q*WTTQW?}_6uTz9 zcGA%MNj=r%`wFiUMn~^|Rvi(?Fn^z^?-Tl6LgMzb&4D?te!G1^;N+h^jivtw6h7sn ziGG`CiT`O_k}toohzcnKMD(P;fQww>2I6;+yAInFe23yEC~)$j=DAzpt9f?uAkIEipX(zEelK*H=TCjk z0Oh0ZXF+E)Ok+~WCkf?4zaON~+)0S5@*n1C4VU{?wvsmb)%OMReK+I`MC466{kMg|$T+F!6=a52#bWWEvV&ZIM=i2BKT|o%`;M zuV3sh;|oW5@1Fa+zjN-n=brc8bsirw_jmYwOp1?vg*AE-Wo%_jLm%Mk0PA9(VDZH( z{u z%}DKy+MjCIY9DgX@tUCz5Mu=l>huRsE$L6A13gUof~$82PZ@d@phijw%Jz8O&~s$d zMcO23e!dQbcIY)Zf0evnfRncKPZHxzFvtTB_YKiW(8xK_iBmMMpaa$b=`XuFkN8Db z=MkTD^=>kzg_B#2I&zJO++Cvx-d$u<{8cx8o+Blnv9HDMj~$GSA56xdxI(^b-_plL zA|1qD8>c*&dhS|qo9orY!}6a zZZq_Ft*ic&gC5^{qyCE$^!oQ7#NDW$J%lD!J4e|t>OUVRu=bvCjt-bB8MMpigUi#H zVs!a0!KDnJ>+RDa44;AS7R;-paZ9uISKcmP{Jo*0ei#cb4PrE2cRjumN6Q%lOIL%- zcXu#0w0t#q?2q6qUkrYCNq-hLk&BmmvhMy%yF`=SW1ug-<}>zQ4nA`nI-EH>jW0Ra z*QH;gUpMuESnYyQyT+deL=`#L6rZv8KeInr_%)x6InN=B|H8Z`>`Ht$OkSGkqPE8M zLv=?VN1npqksBo0)Z=C?qxVBy(iebXz1=%8HPs4etAL>LO1S`iy;5YI`l;rt@!BTt zk+{aCz}niHyY9$UC4T zET5a*%9F~+35h@PI@SII55*pgJrw&!%)-OszJF?OZQQd%9-I39XGg`V>wxNbX zRNo|CUIn8)Ex2BumYT`H+jJ>kpc&x0R4%6NN<|BE=fnH<-KBL8A2@iY77ay1eOhlg z5()Q4qFVQuozdbc$HjYg-^t_H&hL!*9!ZQbU$tv``isz+}fRN7IZeL zfY49emqd&@y1VmZ|p>0;V%ia!g&xF#o(R)W58O? zuaN>2dV@3J=DiMNTp*Yr)1tj_i7k%-%Nwv2@0+n8Z`4|FJg4B=`Ftxw_0cvAw` z1aDGFS|@)p#DLOtGUZ1^6E3r;fKWTvzZza#Y(_H-K4rgI9!A&ujw8lG8~j8Y{6}r@ zSKHu!XoJ7g2EPvcCS*E+mPCH%f=GC)`0oNv{7KFh-%{xLHvE?ae^v1LHx~N4ZTL~_ zC;2~#aS|ENFz{CKWCZ_Z!ROy(*gfBdf4&X=RvUb^4SuB!{*N|zAD+Kf@l(95a8^ha ztillsU;j|LRASb!dEa2nw5$=!nuzokjufoJrCBRa$GJozlMGu;e^wrn8Ota7t&#hz z{UhcOvnG;`*>73-A{n7;_L=vXqx+d<9j;cbl3lJ8XK*rf=B>Ffh7Tm2{(P}wO{FS! zl#Y4(B13Z^XDUT2hf`j`ZbdR&Qo5S5QaHNsi4N>FW22*qq!lxJ&3i_&*&)}}#Kr;F zd?K<-E^unzu`8H%;=sKdyhQfoiWSG2wx^5bd26wmdpr|bGwTLcQqGy| z6-H3-_Yo%Nc4GcypY+yeL3h11@|G^xsWQ)7V|60=eSFN#)JH2MC1bk{doG{0DOr(T zDlBYAh3`b8^b+@`^Ldv2W;yTJ_@_%@wvuC`i4kisRW9f4GRv0A`57nMycHtYDES=X zCBDl_s(-z1jb|G3G&}I_WpBi;IQeN*C4X{?b9Omrr!vSx7B!OQZyWb)CEq*h*Gj&J z@OU%&q+Z7_Rub`f6?_%+dgtPOr%;1my?iDWzS%v?C z^4?eH{aqXUpNgMb6+hP%oc!pxNV;i42(4HBYL5w=8rlmP|JM~<_494T5BW;qA~~w? zcc3r*99M8n!Cz8v)&D64|GdI~N5NJ8-xXZt--hoC3B^d4tec$zC$rmd$vC45t||Dq z;)mv?F_PaZ{M*r&e%^1x&yg{N=2iJm3S91sJh2^9_-a0Xs_;qGaFP5>;p^zjc>b*L zX$~o?3SZ5`zZLurkfoo1_&wu|^Jan5y3{xa#6*Ov&-MKZ{we6v|Brp{0P)p&7Ia3# zG$w_7l2APAZ#-H%32{~ampR(NW!=hF@+So^=i#r4{*nhjDdMJcEQ$0Z&t?Aw`~n_4 diff --git a/lib/gpu/lal_morse.o b/lib/gpu/lal_morse.o deleted file mode 100644 index e325b2c5f7e129571880329a503c63fe64aa06b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74768 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 v{ChO7CE_{n8wG#!T-eyn^f}rEzI`|gde zU+q8R4@Y_Lp8MVJoO|xM=e>8GCr6@(J3JmH#lt?w8a;_Jwz{LChqxMIJ?wTCIq_Ea zCF;LPw+nQ;NVf*o&|IUD6R&n(BW^mK4*2#|Np7doknem|{{}kH`$%7QbiePsp;rKEq!gj-j?@i3LpD96 z&63v5*MZQcUy<`y$opkDX*>TcFr8KLS8-^zm> zjE$_^@SXYtI4f6t->T}*!6ta+dT-jvb6R&uTgV%k}o`w!*_Fm&NHukmp z3-s$zJru58HfkIEX+TuLwWj!tgYPbUfBBbuHfDbZS^PKVjl!%BuDi~w3gC`pjP!|U|6qzFQ%qi0c{-+R9-2Up>I`+tkZ6)`AVeL#XS<& zxaQs5+;r9*yrE=p<>LFBoBt;v?n5ZPJ*c;<7q(+rjT*pq@C?(QoXmlRJz0ohjmFB_ z!cLx4K2AvFsaL7?A9*bNX!x=4m%=6<7U%s_`}3`Pc5Rf;xeN=c^GiF?a#z=%U%fRB zK633x?`>`pU&?%;RJNE=$Xfw2XJh%SolWGjk7x78w9(jWI+uCsJ=xxHV_yH3~K#-!C+s1 za6t1dZ9BSGJs*LlQ5V7=Im6p?+}n-s z17kxRWsENxI&q@{J5H_Po$Xlkc9Z{cwyYnvKW(o$j51c;chQ*cE+|2ec9Op&>|NW${K9@+5=ATHm#__`RsN?% z{?7>_<)5BgX)p7?3z)lh$fR4GUr$g+5qJF5cgIfjRsNDdE1dg)Q4H?+KLo7R{2CcR zs;)uz{0{5ZJMp^M+fCmT$?Dvy9*H<@XUj+^zFRYVCrmmNKZbBMh1R3+WxP(EbTLiv zW|gFM@+U(KC`~6*end3kGK&fbwR7vM;l{;gG{fLi_M0V-uKOKF461`x_;=gjRClfT zYi;n~x54Qs-pbE5B=!zuI)-r)`JLMhycPej;Lmb4W5-3i(1!n_;I9kb%c9+A!w+FU zDW0dSKHukw!#0|27k8=-iha|Rh*-3@UOMOSuT+? z`QgpP0U(ep7MVF3JvtnYn&y~k&IJ20XdWvrm{~f}#bT*=pV{TEOfy>`BXpyK<3}gP4>Qv|R;idpt5h!JaX7S>%*8$oABo#T*+SWzOO&kv zI_Vt>jx2(lDi_QQ4thDO70GZ&$x6aZ;Pk>LI&v@?9v_dz%`m2qzqX*uRN znF;Qb%bZ)XtuiK`Ir2~|U%>;JLfJOwE%2Ajg>vGUMWN0F2c-i#lrGp7l7eK#vhkpa zzZkAL$OJMqN6s6*gMGtTcGxb=XOk4|0pVa|%fo;fAApB}CJ(^_t_jWjmVp_UbH@9H z5fuD=fXTU?m_I%!y$zbs9dC`)C39Ay#8cN;U1Jvp`LL6$4^~u4()JtHVm8TlH`q@_ zh8-#M&1jTi?4e{f%hF#dWo--pgUKzFGi*FIW)3GxrL0wA>0&9Hx6{qL(TI0|+>Y>y z-)F|vzka9WQ;n&beYkhDKWLTh>^zE;KS+f|tCX=4DWoEeN=fqfk2t>Y_mKMalJ6zF z1{i%}Z{im$iTK=dzWN@Z-ybAor~3IgM;)Bb5K=xV6!K3;VCnxpflEJ{==()WeEOzJ zzC3pkUyVne6Wx9e2tS0&mZpO=s(d0e?#CD51o-@JnyyPe^b1_iT??O|Ge@Y zQ0M(^8~k62pSu-5Hx-=x=(tGyG$Dl6tA52N1Wpa@g^d4;3azft)2p)dWs(}tfRV+hTw@}CyC+!y&X;FQ8w^Z8?iPpXEC!wUXU=+gfWJcY>8xX-w7c~1K;)+{DH diff --git a/lib/gpu/lal_neighbor.o b/lib/gpu/lal_neighbor.o deleted file mode 100644 index f27fe9144c03525af0c7d813ee79d5e01b86b88c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58952 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 diff --git a/lib/gpu/lal_neighbor_shared.o b/lib/gpu/lal_neighbor_shared.o deleted file mode 100644 index b77e70255a00cead116914d0451eb491b5e9607b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32816 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%0D!gd$Aj{MyI*$i iA)bu@-usiM4LsWT>tDMMzF!~5V?Bfmu=w}>|NjGLacPVI diff --git a/lib/gpu/lal_pppm.o b/lib/gpu/lal_pppm.o deleted file mode 100644 index 7648e2b13ece1fa67528ab3d247c553b15b8c0ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167232 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

6?GTuwug0-*&mlH_%xKXK5 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 I=0g7e0?d~uBLDyZ diff --git a/lib/gpu/lal_pppm_ext.o b/lib/gpu/lal_pppm_ext.o deleted file mode 100644 index d6413d9a80a17d9d47591a1f1af8fbb70f8fae41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11272 zcmeHNe{5UD9e+tm8(6W^Zi7I9zNzk-cGTEu8d3%(pK75X+j#^k3Twu;15vgfI&BYZXg7VAy79_7=l$$)J7WGv_bd%-n+BE zKKoTcLzAZQRsHVnbD#U%_r7=c-o2N8zc;e3v7tc`)}UOiR7wI>l;=E^d^gK>D=o^o zN_gsn<|nZHSG+uem&fr^!78~=RU4jqs`)r7CDHue#RV)lx(@DL9I7pYKW*Vs$k!Dq z&iC~ff74fduK03sruYeSBU}vmTCh5Rxn|}wbkz1_a<=+RhV=hg_orR2U8fCd*Y*`( z9UKVn{NNyr*?XwqYlBId@h&L%_5o1b;oFh)UVnr+Q+&vmM{KtbBNQqYe7hjsRq)*d ziTBWv5Y+5OLdZAa47hX^6rH(>6yGh~X`cn{N)KltDcy4;D?G88B@bK+iB<%SQ_wuc zn*#>Sd;-$xBi`v>f@}TL?|2IbAQLIR^@ty;AIC++{QEWLSj$N9J+4sj1pu8s8h$q9 z%R;sCEM63E;o?R`374D>4u>IS4Y~^_ywh((i{9xI-aRSS)cd1??p|9J%l(%p*luHp`N-Mq|D$cM~3myiKRQal{d2{UN z`NvpSiv8no$#FeY+RefY!wmt1kuUwwmxqLnxn%ox%y?Uz*}|o^8P?ncq){NN&@W_B zs@2JML$<}qb|Kshd2AKH0&Yhvv_byw&;evs$ewhvt&l~B0d0ZoF(=y$SvKc$SS4$p zJ^uP9r%wk@9KQ{c@_NVlnhT98^9A8z5x|)3eF3-_vvXmgJaG>2SQW$r7nd@&AndFq z7Ccskn=2dM`P4zEzG16&qqbGsrs7EBg- zXA;B=IH7l@0cQYWBH~@148Sm`|J}f^__#d2|DFB4kL~YQKHuN4Tt465ur)v5-*9B8 zdt)X0doW!5c)&Rnu%}qKbTQu6p2=U(#F7i0WRa6xgb9!9qj+vf+|4{P!Kbi>vs`ThId8?ToR@X-d)ujnFlUCyy%Ydxkk7p`0nU{mwm36o> zPmQG$pf;K{Q`iGYXRS=!$mP@k6JI-)h^Yz795*c0u&j)Q4w&FTER|AYwwg3khPrHN zZW)3g0bZFf6lML|wO6QZ>o*QAS3CS2{?%%GAQ%j^2RqcZO-4cuLsN#Y>|DSu}rM^S*{JK~BXY*brVqo|eXMdzxDy+l6H?JcFPihT8#6VAy^; z0$`WpCFBWMo@U0Kz%rQNVtYIxp;7DrLn;_*KEyFu^96~E{v6}j8#t~WPs`rM9#89@ zrXG)a*PI?t+wQZ#r#t3qp025R>pjOBnhrOfaI`;O%27CKE1u+tE{;zJRCa{p%oR6bZrgxS6`*6t|!Q^jW7Cs>-6!RF1AdoV2O@q?2*JNvdHOFV0G};X0G=eaI-f;6HW2 z?{~qUal!xKf`9CSFN1*B^K+96ejDHmVFt3GhbGPhKXBpWenftru`B%dT=?h1=0N^F z&Sz%{$X^Y3JwNlD|B|G?--Z7)=O2^!M_u^m!)8N&PD*?~;Pw33%K6ZQnee~h!hf3c zyE$LP^Qa5|Y*_E;kGM~<^A7ZM72x&!v0d=*y5P6F;Co!~{Vw=lT=3&Aco*FFa9ja? z{}ba%LAl6ry5MVF@O~G3rwe{R;LJ}x;lfWP z6-(*(5~Ra<&>zoc6@7i=njS5p>wUVuCAgZ^4QI!66W)aMq-jRG^uBBKb$yXu)3InY zInb^rpfI$_RP-$acBD(!%?vhxVq|qR8tq?K&V>|RAD)=dvxb$+q~X=dp47(!P`z=$ z?lLnueJGYQI`BPdZLoJ7$cbD=AA#4Tlu?fqa!B!sm>z>OE$edQnuyllA05!ONC$S_ z2Y;yuw(BVzMlzL&*&V%(_Lf;Noet_T6TwxEW+F2-lrqjFT0`Zk!On7ghbC< zTQ+W}9YBpj@bZyN&elhb(Tp{zkL6;+28L@(@ba>xnYIlpt0xkuISa{7r$I0BiA*kQ z8L9Hr z*Ls8P>}D|vpD}P%R#c)J;-;x2Z?R0UPnH;s;W#4Ck*-47r5ksQ*Ry3H>D;7dk30xA7GD*q7jo_gL8<@!l=# zh;ts|U*?*aT*>pYKN`n{j(DG0NBHMKUih4M+u zg0nB}P>18fFZaUFmtFX8Nw~_(r(Ez0$$1$46nsC&vEQZe6a8u~{O?J)h|dE=2fvvJ zokIl2ehYX3dz9$loC*7o@RtK9bpA$gs&ffC4u%@|HYw(>jpLZCfS=F_5d3QdzmDKk zKSuCN3BN>e%E$L4G)yS}_Z$~~ihc4b;o}|=e*THz)X#_x(->-moar#hby z9lD;I;r#{;{iow?Avj$podl=)8o}xMyounHKTdGUzn9}UR`gS>=Z6TN&f{YQr+&^5 z9qd*h05Q6`BFjn6KEcL7)E-%W7p=YuZz^8{Z* zbY3U;6$F2u;8g!2bQ(;=6aRAx+7b!BkFSpq!Kuz5!K>m)@Tz!n924AMdHA7O1jlSS zo*b9g+b)7v#gpLF&j(%b=LudFPl8v)li*Z;8ykfaPkNplCpex(#k}7^aQs`Bz+WRc zJ#V~A@UIa5M+9F&@O9)|v5erH4qv_;UqxA*jd6J5jE!|ZPQdu%PZ&L~BA(?H;+!J* zd5$M|D)4>0yhFlY;$=}U_{TW@3yFV{mk&!g8z5jpPv~^>xV$6r#dlKtPmO4TFTOJt OBwTzqyidmY`uI1ZfT`~Q diff --git a/lib/gpu/lal_re_squared.o b/lib/gpu/lal_re_squared.o deleted file mode 100644 index 770bd3d8c3f59e637bb87817f62e5589e9f998ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 254240 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 U-}OvZ6RpJMdGMqUm*>8J113^(8vp" - .file 2 "/tmp/tmpxft_00009c40_00000000-8_lal_lj.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_lj.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<72>; - .reg .u64 %rd<63>; - .reg .f32 %f<102>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32600_55_non_const_red_acc108[3072]; - // __cuda_local_var_32543_10_non_const_f = 48 - // __cuda_local_var_32545_9_non_const_virial = 16 - .loc 16 31 0 -$LDWbegin_kernel_pair: - .loc 16 36 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 37 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 38 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 39 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4}; - .loc 16 46 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_26370; - .loc 16 51 0 - ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - cvt.s64.s32 %rd4, %r8; - mul.wide.s32 %rd5, %r8, 4; - ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd7, %rd5, %rd6; - add.u64 %rd8, %rd3, %rd7; - ld.global.s32 %r11, [%rd8+0]; - sub.s32 %r12, %r1, 1; - and.b32 %r13, %r12, %r2; - cvt.s64.s32 %rd9, %r13; - mul.wide.s32 %rd10, %r13, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd6; - @%p2 bra $Lt_0_19458; - cvt.s32.s64 %r14, %rd2; - mul.lo.s32 %r15, %r14, %r1; - mov.s32 %r16, %r15; - mul.lo.s32 %r17, %r12, %r8; - add.s32 %r18, %r14, %r17; - cvt.s64.s32 %rd12, %r18; - mul.wide.s32 %rd13, %r18, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r19, %r12, %r11; - cvt.s64.s32 %rd15, %r19; - div.s32 %r20, %r11, %r1; - mul.lo.s32 %r21, %r15, %r20; - cvt.s64.s32 %rd16, %r21; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_19202; -$Lt_0_19458: - add.u64 %rd21, %rd3, %rd8; - ld.global.s32 %r22, [%rd21+0]; - cvt.s64.s32 %rd22, %r22; - mul.wide.s32 %rd23, %r22, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r11; - mul.wide.s32 %rd26, %r11, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r16, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_19202: - .loc 16 54 0 - ld.global.s32 %r23, [%rd7+0]; - mov.u32 %r24, %r23; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f21, %f17; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_27906; - cvt.rzi.ftz.s32.f32 %r31, %f24; - cvt.s64.s32 %rd27, %r16; - ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r33, %r32, %r31; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92; -$Lt_0_20226: - // Loop body line 54, nesting depth: 1, estimated iterations: unknown - .loc 16 60 0 - ld.global.s32 %r34, [%rd20+0]; - .loc 16 61 0 - shr.s32 %r35, %r34, 30; - and.b32 %r36, %r35, 3; - cvt.s64.s32 %rd30, %r36; - mul.wide.s32 %rd31, %r36, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f29, [%rd32+0]; - .loc 16 64 0 - and.b32 %r37, %r34, 1073741823; - mov.u32 %r38, %r37; - mov.s32 %r39, 0; - mov.u32 %r40, %r39; - mov.s32 %r41, 0; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}]; - mov.f32 %f34, %f30; - mov.f32 %f35, %f31; - mov.f32 %f36, %f32; - mov.f32 %f37, %f33; - cvt.rzi.ftz.s32.f32 %r45, %f37; - sub.ftz.f32 %f38, %f22, %f35; - sub.ftz.f32 %f39, %f21, %f34; - sub.ftz.f32 %f40, %f23, %f36; - mul.ftz.f32 %f41, %f38, %f38; - fma.rn.ftz.f32 %f42, %f39, %f39, %f41; - fma.rn.ftz.f32 %f43, %f40, %f40, %f42; - add.s32 %r46, %r45, %r33; - cvt.s64.s32 %rd33, %r46; - mul.wide.s32 %rd34, %r46, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f44, [%rd35+8]; - setp.gt.ftz.f32 %p4, %f44, %f43; - @!%p4 bra $Lt_0_21506; - .loc 16 78 0 - rcp.approx.ftz.f32 %f45, %f43; - mul.ftz.f32 %f46, %f45, %f45; - mul.ftz.f32 %f47, %f45, %f46; - mul.ftz.f32 %f48, %f45, %f47; - ld.global.v2.f32 {%f49,%f50}, [%rd35+0]; - mul.ftz.f32 %f51, %f49, %f47; - sub.ftz.f32 %f52, %f51, %f50; - mul.ftz.f32 %f53, %f48, %f52; - mul.ftz.f32 %f54, %f29, %f53; - .loc 16 80 0 - fma.rn.ftz.f32 %f27, %f39, %f54, %f27; - .loc 16 81 0 - fma.rn.ftz.f32 %f26, %f38, %f54, %f26; - .loc 16 82 0 - fma.rn.ftz.f32 %f25, %f40, %f54, %f25; - ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r48, 0; - setp.le.s32 %p5, %r47, %r48; - @%p5 bra $Lt_0_20994; - .loc 16 86 0 - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - ld.global.v4.f32 {%f55,%f56,%f57,_}, [%rd37+0]; - mul.ftz.f32 %f58, %f55, %f47; - sub.ftz.f32 %f59, %f58, %f56; - mul.ftz.f32 %f60, %f47, %f59; - sub.ftz.f32 %f61, %f60, %f57; - fma.rn.ftz.f32 %f28, %f29, %f61, %f28; -$Lt_0_20994: - ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r50, 0; - setp.le.s32 %p6, %r49, %r50; - @%p6 bra $Lt_0_21506; - .loc 16 89 0 - mov.f32 %f62, %f6; - mul.ftz.f32 %f63, %f39, %f39; - fma.rn.ftz.f32 %f64, %f54, %f63, %f62; - mov.f32 %f6, %f64; - .loc 16 90 0 - mov.f32 %f65, %f8; - fma.rn.ftz.f32 %f66, %f54, %f41, %f65; - mov.f32 %f8, %f66; - .loc 16 91 0 - mov.f32 %f67, %f10; - mul.ftz.f32 %f68, %f40, %f40; - fma.rn.ftz.f32 %f69, %f54, %f68, %f67; - mov.f32 %f10, %f69; - .loc 16 92 0 - mov.f32 %f70, %f12; - mul.ftz.f32 %f71, %f38, %f39; - fma.rn.ftz.f32 %f72, %f54, %f71, %f70; - mov.f32 %f12, %f72; - .loc 16 93 0 - mov.f32 %f73, %f14; - mul.ftz.f32 %f74, %f39, %f40; - fma.rn.ftz.f32 %f75, %f54, %f74, %f73; - mov.f32 %f14, %f75; - .loc 16 94 0 - mul.ftz.f32 %f76, %f38, %f40; - fma.rn.ftz.f32 %f15, %f54, %f76, %f15; - mov.f32 %f16, %f15; -$Lt_0_21506: -$Lt_0_20482: - .loc 16 58 0 - mul.lo.u64 %rd38, %rd27, 4; - add.u64 %rd20, %rd20, %rd38; - setp.lt.u64 %p7, %rd20, %rd19; - @%p7 bra $Lt_0_20226; - bra.uni $Lt_0_19714; -$Lt_0_27906: - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 -$Lt_0_19714: - mov.u32 %r51, 1; - setp.le.s32 %p8, %r1, %r51; - @%p8 bra $Lt_0_24322; - .loc 16 99 0 - mov.u64 %rd39, __cuda___cuda_local_var_32600_55_non_const_red_acc108; - cvt.s64.s32 %rd40, %r2; - mul.wide.s32 %rd41, %r2, 4; - add.u64 %rd42, %rd39, %rd41; - mov.f32 %f77, %f27; - st.shared.f32 [%rd42+0], %f77; - mov.f32 %f78, %f26; - st.shared.f32 [%rd42+512], %f78; - mov.f32 %f79, %f25; - st.shared.f32 [%rd42+1024], %f79; - mov.f32 %f80, %f28; - st.shared.f32 [%rd42+1536], %f80; - shr.s32 %r52, %r1, 31; - mov.s32 %r53, 1; - and.b32 %r54, %r52, %r53; - add.s32 %r55, %r54, %r1; - shr.s32 %r56, %r55, 1; - mov.s32 %r57, %r56; - mov.u32 %r58, 0; - setp.ne.u32 %p9, %r56, %r58; - @!%p9 bra $Lt_0_22786; -$Lt_0_23298: - setp.ge.u32 %p10, %r13, %r57; - @%p10 bra $Lt_0_23554; - add.u32 %r59, %r2, %r57; - cvt.u64.u32 %rd43, %r59; - mul.wide.u32 %rd44, %r59, 4; - add.u64 %rd45, %rd39, %rd44; - ld.shared.f32 %f81, [%rd45+0]; - add.ftz.f32 %f77, %f81, %f77; - st.shared.f32 [%rd42+0], %f77; - ld.shared.f32 %f82, [%rd45+512]; - add.ftz.f32 %f78, %f82, %f78; - st.shared.f32 [%rd42+512], %f78; - ld.shared.f32 %f83, [%rd45+1024]; - add.ftz.f32 %f79, %f83, %f79; - st.shared.f32 [%rd42+1024], %f79; - ld.shared.f32 %f84, [%rd45+1536]; - add.ftz.f32 %f80, %f84, %f80; - st.shared.f32 [%rd42+1536], %f80; -$Lt_0_23554: - shr.u32 %r57, %r57, 1; - mov.u32 %r60, 0; - setp.ne.u32 %p11, %r57, %r60; - @%p11 bra $Lt_0_23298; -$Lt_0_22786: - mov.f32 %f27, %f77; - mov.f32 %f26, %f78; - mov.f32 %f25, %f79; - mov.f32 %f28, %f80; - ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r62, 0; - setp.le.s32 %p12, %r61, %r62; - @%p12 bra $Lt_0_24322; - mov.f32 %f77, %f6; - st.shared.f32 [%rd42+0], %f77; - mov.f32 %f78, %f8; - st.shared.f32 [%rd42+512], %f78; - mov.f32 %f79, %f10; - st.shared.f32 [%rd42+1024], %f79; - mov.f32 %f80, %f12; - st.shared.f32 [%rd42+1536], %f80; - mov.f32 %f85, %f14; - st.shared.f32 [%rd42+2048], %f85; - mov.f32 %f86, %f15; - st.shared.f32 [%rd42+2560], %f86; - mov.s32 %r63, %r56; - @!%p9 bra $Lt_0_24834; -$Lt_0_25346: - setp.ge.u32 %p13, %r13, %r63; - @%p13 bra $Lt_0_25602; - add.u32 %r64, %r2, %r63; - cvt.u64.u32 %rd46, %r64; - mul.wide.u32 %rd47, %r64, 4; - add.u64 %rd48, %rd39, %rd47; - ld.shared.f32 %f87, [%rd48+0]; - add.ftz.f32 %f77, %f87, %f77; - st.shared.f32 [%rd42+0], %f77; - ld.shared.f32 %f88, [%rd48+512]; - add.ftz.f32 %f78, %f88, %f78; - st.shared.f32 [%rd42+512], %f78; - ld.shared.f32 %f89, [%rd48+1024]; - add.ftz.f32 %f79, %f89, %f79; - st.shared.f32 [%rd42+1024], %f79; - ld.shared.f32 %f90, [%rd48+1536]; - add.ftz.f32 %f80, %f90, %f80; - st.shared.f32 [%rd42+1536], %f80; - ld.shared.f32 %f91, [%rd48+2048]; - add.ftz.f32 %f85, %f91, %f85; - st.shared.f32 [%rd42+2048], %f85; - ld.shared.f32 %f92, [%rd48+2560]; - add.ftz.f32 %f86, %f92, %f86; - st.shared.f32 [%rd42+2560], %f86; -$Lt_0_25602: - shr.u32 %r63, %r63, 1; - mov.u32 %r65, 0; - setp.ne.u32 %p14, %r63, %r65; - @%p14 bra $Lt_0_25346; -$Lt_0_24834: - mov.f32 %f6, %f77; - mov.f32 %f8, %f78; - mov.f32 %f10, %f79; - mov.f32 %f12, %f80; - mov.f32 %f14, %f85; - mov.f32 %f16, %f86; -$Lt_0_24322: -$Lt_0_22274: - mov.u32 %r66, 0; - setp.ne.s32 %p15, %r13, %r66; - @%p15 bra $Lt_0_26370; - ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd50, %rd49, %rd5; - ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r68, 0; - setp.le.s32 %p16, %r67, %r68; - @%p16 bra $Lt_0_26882; - st.global.f32 [%rd50+0], %f28; - cvt.s64.s32 %rd51, %r9; - mul.wide.s32 %rd52, %r9, 4; - add.u64 %rd50, %rd50, %rd52; -$Lt_0_26882: - ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r70, 0; - setp.le.s32 %p17, %r69, %r70; - @%p17 bra $Lt_0_27394; - mov.f32 %f93, %f6; - st.global.f32 [%rd50+0], %f93; - cvt.s64.s32 %rd53, %r9; - mul.wide.s32 %rd54, %r9, 4; - add.u64 %rd55, %rd54, %rd50; - mov.f32 %f94, %f8; - st.global.f32 [%rd55+0], %f94; - add.u64 %rd56, %rd54, %rd55; - mov.f32 %f95, %f10; - st.global.f32 [%rd56+0], %f95; - add.u64 %rd57, %rd54, %rd56; - mov.f32 %f96, %f12; - st.global.f32 [%rd57+0], %f96; - add.u64 %rd50, %rd54, %rd57; - mov.f32 %f97, %f14; - st.global.f32 [%rd50+0], %f97; - mov.f32 %f98, %f16; - add.u64 %rd58, %rd54, %rd50; - st.global.f32 [%rd58+0], %f98; -$Lt_0_27394: - ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd60, %rd4, 16; - add.u64 %rd61, %rd59, %rd60; - mov.f32 %f99, %f100; - st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f99}; -$Lt_0_26370: -$Lt_0_18690: - .loc 16 102 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<74>; - .reg .u64 %rd<75>; - .reg .f32 %f<109>; - .reg .pred %p<22>; - .shared .align 4 .b8 __cuda___cuda_local_var_32617_33_non_const_sp_lj3268[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_32615_34_non_const_lj13296[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32616_34_non_const_lj35232[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32685_55_non_const_red_acc7168[3072]; - // __cuda_local_var_32627_10_non_const_f = 48 - // __cuda_local_var_32629_9_non_const_virial = 16 - .loc 16 110 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_20994; - .loc 16 118 0 - mov.u64 %rd1, __cuda___cuda_local_var_32617_33_non_const_sp_lj3268; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_20994: - mov.u64 %rd1, __cuda___cuda_local_var_32617_33_non_const_sp_lj3268; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_21506; - .loc 16 120 0 - mov.u64 %rd7, __cuda___cuda_local_var_32615_34_non_const_lj13296; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_22018; - .loc 16 122 0 - mov.u64 %rd13, __cuda___cuda_local_var_32616_34_non_const_lj35232; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_22018: - mov.u64 %rd13, __cuda___cuda_local_var_32616_34_non_const_lj35232; -$Lt_1_21506: - mov.u64 %rd13, __cuda___cuda_local_var_32616_34_non_const_lj35232; - mov.u64 %rd7, __cuda___cuda_local_var_32615_34_non_const_lj13296; - .loc 16 130 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 132 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_30210; - .loc 16 137 0 - ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd17, %r14; - mul.wide.s32 %rd18, %r14, 4; - cvt.s64.s32 %rd19, %r12; - mul.wide.s32 %rd20, %r12, 4; - ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd22, %rd20, %rd21; - add.u64 %rd23, %rd18, %rd22; - ld.global.s32 %r15, [%rd23+0]; - sub.s32 %r16, %r6, 1; - and.b32 %r17, %r16, %r1; - cvt.s64.s32 %rd24, %r17; - mul.wide.s32 %rd25, %r17, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd26, %rd21; - @%p5 bra $Lt_1_23298; - cvt.s32.s64 %r18, %rd17; - mul.lo.s32 %r19, %r18, %r6; - mov.s32 %r20, %r19; - mul.lo.s32 %r21, %r16, %r12; - add.s32 %r22, %r18, %r21; - cvt.s64.s32 %rd27, %r22; - mul.wide.s32 %rd28, %r22, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r23, %r16, %r15; - cvt.s64.s32 %rd30, %r23; - div.s32 %r24, %r15, %r6; - mul.lo.s32 %r25, %r19, %r24; - cvt.s64.s32 %rd31, %r25; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_23042; -$Lt_1_23298: - add.u64 %rd36, %rd18, %rd23; - ld.global.s32 %r26, [%rd36+0]; - cvt.s64.s32 %rd37, %r26; - mul.wide.s32 %rd38, %r26, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r15; - mul.wide.s32 %rd41, %r15, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r20, %r6; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_23042: - .loc 16 140 0 - ld.global.s32 %r27, [%rd22+0]; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - setp.ge.u64 %p6, %rd35, %rd34; - @%p6 bra $Lt_1_31746; - cvt.rzi.ftz.s32.f32 %r35, %f29; - cvt.s64.s32 %rd42, %r20; - mul.lo.s32 %r36, %r35, 11; - cvt.rn.f32.s32 %f30, %r36; - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_24066: - // Loop body line 140, nesting depth: 1, estimated iterations: unknown - .loc 16 147 0 - ld.global.s32 %r37, [%rd35+0]; - .loc 16 148 0 - shr.s32 %r38, %r37, 30; - and.b32 %r39, %r38, 3; - cvt.s64.s32 %rd43, %r39; - mul.wide.s32 %rd44, %r39, 4; - add.u64 %rd45, %rd1, %rd44; - ld.shared.f32 %f35, [%rd45+0]; - .loc 16 151 0 - and.b32 %r40, %r37, 1073741823; - mov.u32 %r41, %r40; - mov.s32 %r42, 0; - mov.u32 %r43, %r42; - mov.s32 %r44, 0; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r41,%r43,%r45,%r47}]; - mov.f32 %f40, %f36; - mov.f32 %f41, %f37; - mov.f32 %f42, %f38; - mov.f32 %f43, %f39; - sub.ftz.f32 %f44, %f27, %f41; - sub.ftz.f32 %f45, %f26, %f40; - sub.ftz.f32 %f46, %f28, %f42; - mul.ftz.f32 %f47, %f44, %f44; - fma.rn.ftz.f32 %f48, %f45, %f45, %f47; - fma.rn.ftz.f32 %f49, %f46, %f46, %f48; - add.ftz.f32 %f50, %f30, %f43; - cvt.rzi.ftz.s32.f32 %r48, %f50; - cvt.s64.s32 %rd46, %r48; - mul.wide.s32 %rd47, %r48, 16; - add.u64 %rd48, %rd47, %rd7; - ld.shared.f32 %f51, [%rd48+8]; - setp.gt.ftz.f32 %p7, %f51, %f49; - @!%p7 bra $Lt_1_25346; - .loc 16 163 0 - rcp.approx.ftz.f32 %f52, %f49; - mul.ftz.f32 %f53, %f52, %f52; - mul.ftz.f32 %f54, %f52, %f53; - mul.ftz.f32 %f55, %f52, %f35; - mul.ftz.f32 %f56, %f54, %f55; - ld.shared.v2.f32 {%f57,%f58}, [%rd48+0]; - mul.ftz.f32 %f59, %f57, %f54; - sub.ftz.f32 %f60, %f59, %f58; - mul.ftz.f32 %f61, %f56, %f60; - .loc 16 165 0 - fma.rn.ftz.f32 %f33, %f45, %f61, %f33; - .loc 16 166 0 - fma.rn.ftz.f32 %f32, %f44, %f61, %f32; - .loc 16 167 0 - fma.rn.ftz.f32 %f31, %f46, %f61, %f31; - ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r50, 0; - setp.le.s32 %p8, %r49, %r50; - @%p8 bra $Lt_1_24834; - .loc 16 170 0 - add.u64 %rd49, %rd47, %rd13; - ld.shared.v4.f32 {%f62,%f63,%f64,_}, [%rd49+0]; - mul.ftz.f32 %f65, %f62, %f54; - sub.ftz.f32 %f66, %f65, %f63; - mul.ftz.f32 %f67, %f54, %f66; - .loc 16 171 0 - sub.ftz.f32 %f68, %f67, %f64; - fma.rn.ftz.f32 %f34, %f35, %f68, %f34; -$Lt_1_24834: - ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r52, 0; - setp.le.s32 %p9, %r51, %r52; - @%p9 bra $Lt_1_25346; - .loc 16 174 0 - mov.f32 %f69, %f11; - mul.ftz.f32 %f70, %f45, %f45; - fma.rn.ftz.f32 %f71, %f61, %f70, %f69; - mov.f32 %f11, %f71; - .loc 16 175 0 - mov.f32 %f72, %f13; - fma.rn.ftz.f32 %f73, %f61, %f47, %f72; - mov.f32 %f13, %f73; - .loc 16 176 0 - mov.f32 %f74, %f15; - mul.ftz.f32 %f75, %f46, %f46; - fma.rn.ftz.f32 %f76, %f61, %f75, %f74; - mov.f32 %f15, %f76; - .loc 16 177 0 - mov.f32 %f77, %f17; - mul.ftz.f32 %f78, %f44, %f45; - fma.rn.ftz.f32 %f79, %f61, %f78, %f77; - mov.f32 %f17, %f79; - .loc 16 178 0 - mov.f32 %f80, %f19; - mul.ftz.f32 %f81, %f45, %f46; - fma.rn.ftz.f32 %f82, %f61, %f81, %f80; - mov.f32 %f19, %f82; - .loc 16 179 0 - mul.ftz.f32 %f83, %f44, %f46; - fma.rn.ftz.f32 %f20, %f61, %f83, %f20; - mov.f32 %f21, %f20; -$Lt_1_25346: -$Lt_1_24322: - .loc 16 145 0 - mul.lo.u64 %rd50, %rd42, 4; - add.u64 %rd35, %rd35, %rd50; - setp.lt.u64 %p10, %rd35, %rd34; - @%p10 bra $Lt_1_24066; - bra.uni $Lt_1_23554; -$Lt_1_31746: - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_23554: - mov.u32 %r53, 1; - setp.le.s32 %p11, %r6, %r53; - @%p11 bra $Lt_1_28162; - .loc 16 184 0 - mov.u64 %rd51, __cuda___cuda_local_var_32685_55_non_const_red_acc7168; - cvt.s64.s32 %rd52, %r1; - mul.wide.s32 %rd53, %r1, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f84, %f33; - st.shared.f32 [%rd54+0], %f84; - mov.f32 %f85, %f32; - st.shared.f32 [%rd54+512], %f85; - mov.f32 %f86, %f31; - st.shared.f32 [%rd54+1024], %f86; - mov.f32 %f87, %f34; - st.shared.f32 [%rd54+1536], %f87; - shr.s32 %r54, %r6, 31; - mov.s32 %r55, 1; - and.b32 %r56, %r54, %r55; - add.s32 %r57, %r56, %r6; - shr.s32 %r58, %r57, 1; - mov.s32 %r59, %r58; - mov.u32 %r60, 0; - setp.ne.u32 %p12, %r58, %r60; - @!%p12 bra $Lt_1_26626; -$Lt_1_27138: - setp.ge.u32 %p13, %r17, %r59; - @%p13 bra $Lt_1_27394; - add.u32 %r61, %r1, %r59; - cvt.u64.u32 %rd55, %r61; - mul.wide.u32 %rd56, %r61, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f88, [%rd57+0]; - add.ftz.f32 %f84, %f88, %f84; - st.shared.f32 [%rd54+0], %f84; - ld.shared.f32 %f89, [%rd57+512]; - add.ftz.f32 %f85, %f89, %f85; - st.shared.f32 [%rd54+512], %f85; - ld.shared.f32 %f90, [%rd57+1024]; - add.ftz.f32 %f86, %f90, %f86; - st.shared.f32 [%rd54+1024], %f86; - ld.shared.f32 %f91, [%rd57+1536]; - add.ftz.f32 %f87, %f91, %f87; - st.shared.f32 [%rd54+1536], %f87; -$Lt_1_27394: - shr.u32 %r59, %r59, 1; - mov.u32 %r62, 0; - setp.ne.u32 %p14, %r59, %r62; - @%p14 bra $Lt_1_27138; -$Lt_1_26626: - mov.f32 %f33, %f84; - mov.f32 %f32, %f85; - mov.f32 %f31, %f86; - mov.f32 %f34, %f87; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p15, %r63, %r64; - @%p15 bra $Lt_1_28162; - mov.f32 %f84, %f11; - st.shared.f32 [%rd54+0], %f84; - mov.f32 %f85, %f13; - st.shared.f32 [%rd54+512], %f85; - mov.f32 %f86, %f15; - st.shared.f32 [%rd54+1024], %f86; - mov.f32 %f87, %f17; - st.shared.f32 [%rd54+1536], %f87; - mov.f32 %f92, %f19; - st.shared.f32 [%rd54+2048], %f92; - mov.f32 %f93, %f20; - st.shared.f32 [%rd54+2560], %f93; - mov.s32 %r65, %r58; - @!%p12 bra $Lt_1_28674; -$Lt_1_29186: - setp.ge.u32 %p16, %r17, %r65; - @%p16 bra $Lt_1_29442; - add.u32 %r66, %r1, %r65; - cvt.u64.u32 %rd58, %r66; - mul.wide.u32 %rd59, %r66, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f94, [%rd60+0]; - add.ftz.f32 %f84, %f94, %f84; - st.shared.f32 [%rd54+0], %f84; - ld.shared.f32 %f95, [%rd60+512]; - add.ftz.f32 %f85, %f95, %f85; - st.shared.f32 [%rd54+512], %f85; - ld.shared.f32 %f96, [%rd60+1024]; - add.ftz.f32 %f86, %f96, %f86; - st.shared.f32 [%rd54+1024], %f86; - ld.shared.f32 %f97, [%rd60+1536]; - add.ftz.f32 %f87, %f97, %f87; - st.shared.f32 [%rd54+1536], %f87; - ld.shared.f32 %f98, [%rd60+2048]; - add.ftz.f32 %f92, %f98, %f92; - st.shared.f32 [%rd54+2048], %f92; - ld.shared.f32 %f99, [%rd60+2560]; - add.ftz.f32 %f93, %f99, %f93; - st.shared.f32 [%rd54+2560], %f93; -$Lt_1_29442: - shr.u32 %r65, %r65, 1; - mov.u32 %r67, 0; - setp.ne.u32 %p17, %r65, %r67; - @%p17 bra $Lt_1_29186; -$Lt_1_28674: - mov.f32 %f11, %f84; - mov.f32 %f13, %f85; - mov.f32 %f15, %f86; - mov.f32 %f17, %f87; - mov.f32 %f19, %f92; - mov.f32 %f21, %f93; -$Lt_1_28162: -$Lt_1_26114: - mov.u32 %r68, 0; - setp.ne.s32 %p18, %r17, %r68; - @%p18 bra $Lt_1_30210; - ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd62, %rd61, %rd20; - ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r70, 0; - setp.le.s32 %p19, %r69, %r70; - @%p19 bra $Lt_1_30722; - st.global.f32 [%rd62+0], %f34; - cvt.s64.s32 %rd63, %r13; - mul.wide.s32 %rd64, %r13, 4; - add.u64 %rd62, %rd62, %rd64; -$Lt_1_30722: - ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r72, 0; - setp.le.s32 %p20, %r71, %r72; - @%p20 bra $Lt_1_31234; - mov.f32 %f100, %f11; - st.global.f32 [%rd62+0], %f100; - cvt.s64.s32 %rd65, %r13; - mul.wide.s32 %rd66, %r13, 4; - add.u64 %rd67, %rd66, %rd62; - mov.f32 %f101, %f13; - st.global.f32 [%rd67+0], %f101; - add.u64 %rd68, %rd66, %rd67; - mov.f32 %f102, %f15; - st.global.f32 [%rd68+0], %f102; - add.u64 %rd69, %rd66, %rd68; - mov.f32 %f103, %f17; - st.global.f32 [%rd69+0], %f103; - add.u64 %rd62, %rd66, %rd69; - mov.f32 %f104, %f19; - st.global.f32 [%rd62+0], %f104; - mov.f32 %f105, %f21; - add.u64 %rd70, %rd66, %rd62; - st.global.f32 [%rd70+0], %f105; -$Lt_1_31234: - ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd72, %rd19, 16; - add.u64 %rd73, %rd71, %rd72; - mov.f32 %f106, %f107; - st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f106}; -$Lt_1_30210: -$Lt_1_22530: - .loc 16 187 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/lj96.ptx b/lib/gpu/lj96.ptx deleted file mode 100644 index d9211d1b2c..0000000000 --- a/lib/gpu/lj96.ptx +++ /dev/null @@ -1,901 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009c89_00000000-9_lal_lj96.cpp3.i (/home/sjplimp/ccBI#.pOwwSL) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009c89_00000000-8_lal_lj96.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_lj96.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<72>; - .reg .u64 %rd<63>; - .reg .f32 %f<103>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32601_55_non_const_red_acc108[3072]; - // __cuda_local_var_32543_10_non_const_f = 48 - // __cuda_local_var_32545_9_non_const_virial = 16 - .loc 16 31 0 -$LDWbegin_kernel_pair: - .loc 16 36 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 37 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 38 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 39 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4}; - .loc 16 46 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_26370; - .loc 16 51 0 - ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - cvt.s64.s32 %rd4, %r8; - mul.wide.s32 %rd5, %r8, 4; - ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd7, %rd5, %rd6; - add.u64 %rd8, %rd3, %rd7; - ld.global.s32 %r11, [%rd8+0]; - sub.s32 %r12, %r1, 1; - and.b32 %r13, %r12, %r2; - cvt.s64.s32 %rd9, %r13; - mul.wide.s32 %rd10, %r13, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd6; - @%p2 bra $Lt_0_19458; - cvt.s32.s64 %r14, %rd2; - mul.lo.s32 %r15, %r14, %r1; - mov.s32 %r16, %r15; - mul.lo.s32 %r17, %r12, %r8; - add.s32 %r18, %r14, %r17; - cvt.s64.s32 %rd12, %r18; - mul.wide.s32 %rd13, %r18, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r19, %r12, %r11; - cvt.s64.s32 %rd15, %r19; - div.s32 %r20, %r11, %r1; - mul.lo.s32 %r21, %r15, %r20; - cvt.s64.s32 %rd16, %r21; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_19202; -$Lt_0_19458: - add.u64 %rd21, %rd3, %rd8; - ld.global.s32 %r22, [%rd21+0]; - cvt.s64.s32 %rd22, %r22; - mul.wide.s32 %rd23, %r22, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r11; - mul.wide.s32 %rd26, %r11, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r16, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_19202: - .loc 16 54 0 - ld.global.s32 %r23, [%rd7+0]; - mov.u32 %r24, %r23; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f21, %f17; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_27906; - cvt.rzi.ftz.s32.f32 %r31, %f24; - cvt.s64.s32 %rd27, %r16; - ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r33, %r32, %r31; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92; -$Lt_0_20226: - // Loop body line 54, nesting depth: 1, estimated iterations: unknown - .loc 16 60 0 - ld.global.s32 %r34, [%rd20+0]; - .loc 16 61 0 - shr.s32 %r35, %r34, 30; - and.b32 %r36, %r35, 3; - cvt.s64.s32 %rd30, %r36; - mul.wide.s32 %rd31, %r36, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f29, [%rd32+0]; - .loc 16 64 0 - and.b32 %r37, %r34, 1073741823; - mov.u32 %r38, %r37; - mov.s32 %r39, 0; - mov.u32 %r40, %r39; - mov.s32 %r41, 0; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}]; - mov.f32 %f34, %f30; - mov.f32 %f35, %f31; - mov.f32 %f36, %f32; - mov.f32 %f37, %f33; - cvt.rzi.ftz.s32.f32 %r45, %f37; - sub.ftz.f32 %f38, %f22, %f35; - sub.ftz.f32 %f39, %f21, %f34; - sub.ftz.f32 %f40, %f23, %f36; - mul.ftz.f32 %f41, %f38, %f38; - fma.rn.ftz.f32 %f42, %f39, %f39, %f41; - fma.rn.ftz.f32 %f43, %f40, %f40, %f42; - add.s32 %r46, %r45, %r33; - cvt.s64.s32 %rd33, %r46; - mul.wide.s32 %rd34, %r46, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f44, [%rd35+8]; - setp.gt.ftz.f32 %p4, %f44, %f43; - @!%p4 bra $Lt_0_21506; - .loc 16 79 0 - rcp.approx.ftz.f32 %f45, %f43; - mul.ftz.f32 %f46, %f45, %f45; - mul.ftz.f32 %f47, %f45, %f46; - sqrt.approx.ftz.f32 %f48, %f47; - mul.ftz.f32 %f49, %f45, %f47; - ld.global.v2.f32 {%f50,%f51}, [%rd35+0]; - mul.ftz.f32 %f52, %f50, %f48; - sub.ftz.f32 %f53, %f52, %f51; - mul.ftz.f32 %f54, %f49, %f53; - mul.ftz.f32 %f55, %f29, %f54; - .loc 16 81 0 - fma.rn.ftz.f32 %f27, %f39, %f55, %f27; - .loc 16 82 0 - fma.rn.ftz.f32 %f26, %f38, %f55, %f26; - .loc 16 83 0 - fma.rn.ftz.f32 %f25, %f40, %f55, %f25; - ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r48, 0; - setp.le.s32 %p5, %r47, %r48; - @%p5 bra $Lt_0_20994; - .loc 16 87 0 - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - ld.global.v4.f32 {%f56,%f57,%f58,_}, [%rd37+0]; - mul.ftz.f32 %f59, %f56, %f48; - sub.ftz.f32 %f60, %f59, %f57; - mul.ftz.f32 %f61, %f47, %f60; - sub.ftz.f32 %f62, %f61, %f58; - fma.rn.ftz.f32 %f28, %f29, %f62, %f28; -$Lt_0_20994: - ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r50, 0; - setp.le.s32 %p6, %r49, %r50; - @%p6 bra $Lt_0_21506; - .loc 16 90 0 - mov.f32 %f63, %f6; - mul.ftz.f32 %f64, %f39, %f39; - fma.rn.ftz.f32 %f65, %f55, %f64, %f63; - mov.f32 %f6, %f65; - .loc 16 91 0 - mov.f32 %f66, %f8; - fma.rn.ftz.f32 %f67, %f55, %f41, %f66; - mov.f32 %f8, %f67; - .loc 16 92 0 - mov.f32 %f68, %f10; - mul.ftz.f32 %f69, %f40, %f40; - fma.rn.ftz.f32 %f70, %f55, %f69, %f68; - mov.f32 %f10, %f70; - .loc 16 93 0 - mov.f32 %f71, %f12; - mul.ftz.f32 %f72, %f38, %f39; - fma.rn.ftz.f32 %f73, %f55, %f72, %f71; - mov.f32 %f12, %f73; - .loc 16 94 0 - mov.f32 %f74, %f14; - mul.ftz.f32 %f75, %f39, %f40; - fma.rn.ftz.f32 %f76, %f55, %f75, %f74; - mov.f32 %f14, %f76; - .loc 16 95 0 - mul.ftz.f32 %f77, %f38, %f40; - fma.rn.ftz.f32 %f15, %f55, %f77, %f15; - mov.f32 %f16, %f15; -$Lt_0_21506: -$Lt_0_20482: - .loc 16 58 0 - mul.lo.u64 %rd38, %rd27, 4; - add.u64 %rd20, %rd20, %rd38; - setp.lt.u64 %p7, %rd20, %rd19; - @%p7 bra $Lt_0_20226; - bra.uni $Lt_0_19714; -$Lt_0_27906: - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 -$Lt_0_19714: - mov.u32 %r51, 1; - setp.le.s32 %p8, %r1, %r51; - @%p8 bra $Lt_0_24322; - .loc 16 100 0 - mov.u64 %rd39, __cuda___cuda_local_var_32601_55_non_const_red_acc108; - cvt.s64.s32 %rd40, %r2; - mul.wide.s32 %rd41, %r2, 4; - add.u64 %rd42, %rd39, %rd41; - mov.f32 %f78, %f27; - st.shared.f32 [%rd42+0], %f78; - mov.f32 %f79, %f26; - st.shared.f32 [%rd42+512], %f79; - mov.f32 %f80, %f25; - st.shared.f32 [%rd42+1024], %f80; - mov.f32 %f81, %f28; - st.shared.f32 [%rd42+1536], %f81; - shr.s32 %r52, %r1, 31; - mov.s32 %r53, 1; - and.b32 %r54, %r52, %r53; - add.s32 %r55, %r54, %r1; - shr.s32 %r56, %r55, 1; - mov.s32 %r57, %r56; - mov.u32 %r58, 0; - setp.ne.u32 %p9, %r56, %r58; - @!%p9 bra $Lt_0_22786; -$Lt_0_23298: - setp.ge.u32 %p10, %r13, %r57; - @%p10 bra $Lt_0_23554; - add.u32 %r59, %r2, %r57; - cvt.u64.u32 %rd43, %r59; - mul.wide.u32 %rd44, %r59, 4; - add.u64 %rd45, %rd39, %rd44; - ld.shared.f32 %f82, [%rd45+0]; - add.ftz.f32 %f78, %f82, %f78; - st.shared.f32 [%rd42+0], %f78; - ld.shared.f32 %f83, [%rd45+512]; - add.ftz.f32 %f79, %f83, %f79; - st.shared.f32 [%rd42+512], %f79; - ld.shared.f32 %f84, [%rd45+1024]; - add.ftz.f32 %f80, %f84, %f80; - st.shared.f32 [%rd42+1024], %f80; - ld.shared.f32 %f85, [%rd45+1536]; - add.ftz.f32 %f81, %f85, %f81; - st.shared.f32 [%rd42+1536], %f81; -$Lt_0_23554: - shr.u32 %r57, %r57, 1; - mov.u32 %r60, 0; - setp.ne.u32 %p11, %r57, %r60; - @%p11 bra $Lt_0_23298; -$Lt_0_22786: - mov.f32 %f27, %f78; - mov.f32 %f26, %f79; - mov.f32 %f25, %f80; - mov.f32 %f28, %f81; - ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r62, 0; - setp.le.s32 %p12, %r61, %r62; - @%p12 bra $Lt_0_24322; - mov.f32 %f78, %f6; - st.shared.f32 [%rd42+0], %f78; - mov.f32 %f79, %f8; - st.shared.f32 [%rd42+512], %f79; - mov.f32 %f80, %f10; - st.shared.f32 [%rd42+1024], %f80; - mov.f32 %f81, %f12; - st.shared.f32 [%rd42+1536], %f81; - mov.f32 %f86, %f14; - st.shared.f32 [%rd42+2048], %f86; - mov.f32 %f87, %f15; - st.shared.f32 [%rd42+2560], %f87; - mov.s32 %r63, %r56; - @!%p9 bra $Lt_0_24834; -$Lt_0_25346: - setp.ge.u32 %p13, %r13, %r63; - @%p13 bra $Lt_0_25602; - add.u32 %r64, %r2, %r63; - cvt.u64.u32 %rd46, %r64; - mul.wide.u32 %rd47, %r64, 4; - add.u64 %rd48, %rd39, %rd47; - ld.shared.f32 %f88, [%rd48+0]; - add.ftz.f32 %f78, %f88, %f78; - st.shared.f32 [%rd42+0], %f78; - ld.shared.f32 %f89, [%rd48+512]; - add.ftz.f32 %f79, %f89, %f79; - st.shared.f32 [%rd42+512], %f79; - ld.shared.f32 %f90, [%rd48+1024]; - add.ftz.f32 %f80, %f90, %f80; - st.shared.f32 [%rd42+1024], %f80; - ld.shared.f32 %f91, [%rd48+1536]; - add.ftz.f32 %f81, %f91, %f81; - st.shared.f32 [%rd42+1536], %f81; - ld.shared.f32 %f92, [%rd48+2048]; - add.ftz.f32 %f86, %f92, %f86; - st.shared.f32 [%rd42+2048], %f86; - ld.shared.f32 %f93, [%rd48+2560]; - add.ftz.f32 %f87, %f93, %f87; - st.shared.f32 [%rd42+2560], %f87; -$Lt_0_25602: - shr.u32 %r63, %r63, 1; - mov.u32 %r65, 0; - setp.ne.u32 %p14, %r63, %r65; - @%p14 bra $Lt_0_25346; -$Lt_0_24834: - mov.f32 %f6, %f78; - mov.f32 %f8, %f79; - mov.f32 %f10, %f80; - mov.f32 %f12, %f81; - mov.f32 %f14, %f86; - mov.f32 %f16, %f87; -$Lt_0_24322: -$Lt_0_22274: - mov.u32 %r66, 0; - setp.ne.s32 %p15, %r13, %r66; - @%p15 bra $Lt_0_26370; - ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd50, %rd49, %rd5; - ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r68, 0; - setp.le.s32 %p16, %r67, %r68; - @%p16 bra $Lt_0_26882; - st.global.f32 [%rd50+0], %f28; - cvt.s64.s32 %rd51, %r9; - mul.wide.s32 %rd52, %r9, 4; - add.u64 %rd50, %rd50, %rd52; -$Lt_0_26882: - ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r70, 0; - setp.le.s32 %p17, %r69, %r70; - @%p17 bra $Lt_0_27394; - mov.f32 %f94, %f6; - st.global.f32 [%rd50+0], %f94; - cvt.s64.s32 %rd53, %r9; - mul.wide.s32 %rd54, %r9, 4; - add.u64 %rd55, %rd54, %rd50; - mov.f32 %f95, %f8; - st.global.f32 [%rd55+0], %f95; - add.u64 %rd56, %rd54, %rd55; - mov.f32 %f96, %f10; - st.global.f32 [%rd56+0], %f96; - add.u64 %rd57, %rd54, %rd56; - mov.f32 %f97, %f12; - st.global.f32 [%rd57+0], %f97; - add.u64 %rd50, %rd54, %rd57; - mov.f32 %f98, %f14; - st.global.f32 [%rd50+0], %f98; - mov.f32 %f99, %f16; - add.u64 %rd58, %rd54, %rd50; - st.global.f32 [%rd58+0], %f99; -$Lt_0_27394: - ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd60, %rd4, 16; - add.u64 %rd61, %rd59, %rd60; - mov.f32 %f100, %f101; - st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f100}; -$Lt_0_26370: -$Lt_0_18690: - .loc 16 103 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<74>; - .reg .u64 %rd<75>; - .reg .f32 %f<109>; - .reg .pred %p<22>; - .shared .align 4 .b8 __cuda___cuda_local_var_32618_33_non_const_sp_lj3268[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_32616_34_non_const_lj13296[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32617_34_non_const_lj35232[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32687_55_non_const_red_acc7168[3072]; - // __cuda_local_var_32628_10_non_const_f = 48 - // __cuda_local_var_32630_9_non_const_virial = 16 - .loc 16 111 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_20994; - .loc 16 119 0 - mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_20994: - mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_21506; - .loc 16 121 0 - mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_lj13296; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_22018; - .loc 16 123 0 - mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_lj35232; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_22018: - mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_lj35232; -$Lt_1_21506: - mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_lj35232; - mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_lj13296; - .loc 16 131 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 133 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_30210; - .loc 16 138 0 - ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd17, %r14; - mul.wide.s32 %rd18, %r14, 4; - cvt.s64.s32 %rd19, %r12; - mul.wide.s32 %rd20, %r12, 4; - ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd22, %rd20, %rd21; - add.u64 %rd23, %rd18, %rd22; - ld.global.s32 %r15, [%rd23+0]; - sub.s32 %r16, %r6, 1; - and.b32 %r17, %r16, %r1; - cvt.s64.s32 %rd24, %r17; - mul.wide.s32 %rd25, %r17, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd26, %rd21; - @%p5 bra $Lt_1_23298; - cvt.s32.s64 %r18, %rd17; - mul.lo.s32 %r19, %r18, %r6; - mov.s32 %r20, %r19; - mul.lo.s32 %r21, %r16, %r12; - add.s32 %r22, %r18, %r21; - cvt.s64.s32 %rd27, %r22; - mul.wide.s32 %rd28, %r22, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r23, %r16, %r15; - cvt.s64.s32 %rd30, %r23; - div.s32 %r24, %r15, %r6; - mul.lo.s32 %r25, %r19, %r24; - cvt.s64.s32 %rd31, %r25; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_23042; -$Lt_1_23298: - add.u64 %rd36, %rd18, %rd23; - ld.global.s32 %r26, [%rd36+0]; - cvt.s64.s32 %rd37, %r26; - mul.wide.s32 %rd38, %r26, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r15; - mul.wide.s32 %rd41, %r15, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r20, %r6; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_23042: - .loc 16 141 0 - ld.global.s32 %r27, [%rd22+0]; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - setp.ge.u64 %p6, %rd35, %rd34; - @%p6 bra $Lt_1_31746; - cvt.rzi.ftz.s32.f32 %r35, %f29; - cvt.s64.s32 %rd42, %r20; - mul.lo.s32 %r36, %r35, 11; - cvt.rn.f32.s32 %f30, %r36; - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_24066: - // Loop body line 141, nesting depth: 1, estimated iterations: unknown - .loc 16 148 0 - ld.global.s32 %r37, [%rd35+0]; - .loc 16 152 0 - and.b32 %r38, %r37, 1073741823; - mov.u32 %r39, %r38; - mov.s32 %r40, 0; - mov.u32 %r41, %r40; - mov.s32 %r42, 0; - mov.u32 %r43, %r42; - mov.s32 %r44, 0; - mov.u32 %r45, %r44; - tex.1d.v4.f32.s32 {%f35,%f36,%f37,%f38},[pos_tex,{%r39,%r41,%r43,%r45}]; - mov.f32 %f39, %f35; - mov.f32 %f40, %f36; - mov.f32 %f41, %f37; - mov.f32 %f42, %f38; - sub.ftz.f32 %f43, %f27, %f40; - sub.ftz.f32 %f44, %f26, %f39; - sub.ftz.f32 %f45, %f28, %f41; - mul.ftz.f32 %f46, %f43, %f43; - fma.rn.ftz.f32 %f47, %f44, %f44, %f46; - fma.rn.ftz.f32 %f48, %f45, %f45, %f47; - add.ftz.f32 %f49, %f30, %f42; - cvt.rzi.ftz.s32.f32 %r46, %f49; - cvt.s64.s32 %rd43, %r46; - mul.wide.s32 %rd44, %r46, 16; - add.u64 %rd45, %rd44, %rd7; - ld.shared.f32 %f50, [%rd45+8]; - setp.gt.ftz.f32 %p7, %f50, %f48; - @!%p7 bra $Lt_1_25346; - .loc 16 165 0 - rcp.approx.ftz.f32 %f51, %f48; - mul.ftz.f32 %f52, %f51, %f51; - mul.ftz.f32 %f53, %f51, %f52; - sqrt.approx.ftz.f32 %f54, %f53; - mul.ftz.f32 %f55, %f51, %f53; - ld.shared.v2.f32 {%f56,%f57}, [%rd45+0]; - mul.ftz.f32 %f58, %f56, %f54; - sub.ftz.f32 %f59, %f58, %f57; - mul.ftz.f32 %f60, %f55, %f59; - .loc 16 167 0 - fma.rn.ftz.f32 %f33, %f44, %f60, %f33; - .loc 16 168 0 - fma.rn.ftz.f32 %f32, %f43, %f60, %f32; - .loc 16 169 0 - fma.rn.ftz.f32 %f31, %f45, %f60, %f31; - ld.param.s32 %r47, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r48, 0; - setp.le.s32 %p8, %r47, %r48; - @%p8 bra $Lt_1_24834; - .loc 16 172 0 - add.u64 %rd46, %rd44, %rd13; - ld.shared.v4.f32 {%f61,%f62,%f63,_}, [%rd46+0]; - mul.ftz.f32 %f64, %f61, %f54; - sub.ftz.f32 %f65, %f64, %f62; - mul.ftz.f32 %f66, %f53, %f65; - .loc 16 173 0 - shr.s32 %r49, %r37, 30; - and.b32 %r50, %r49, 3; - cvt.s64.s32 %rd47, %r50; - mul.wide.s32 %rd48, %r50, 4; - add.u64 %rd49, %rd1, %rd48; - ld.shared.f32 %f67, [%rd49+0]; - sub.ftz.f32 %f68, %f66, %f63; - fma.rn.ftz.f32 %f34, %f67, %f68, %f34; -$Lt_1_24834: - ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r52, 0; - setp.le.s32 %p9, %r51, %r52; - @%p9 bra $Lt_1_25346; - .loc 16 176 0 - mov.f32 %f69, %f11; - mul.ftz.f32 %f70, %f44, %f44; - fma.rn.ftz.f32 %f71, %f60, %f70, %f69; - mov.f32 %f11, %f71; - .loc 16 177 0 - mov.f32 %f72, %f13; - fma.rn.ftz.f32 %f73, %f60, %f46, %f72; - mov.f32 %f13, %f73; - .loc 16 178 0 - mov.f32 %f74, %f15; - mul.ftz.f32 %f75, %f45, %f45; - fma.rn.ftz.f32 %f76, %f60, %f75, %f74; - mov.f32 %f15, %f76; - .loc 16 179 0 - mov.f32 %f77, %f17; - mul.ftz.f32 %f78, %f43, %f44; - fma.rn.ftz.f32 %f79, %f60, %f78, %f77; - mov.f32 %f17, %f79; - .loc 16 180 0 - mov.f32 %f80, %f19; - mul.ftz.f32 %f81, %f44, %f45; - fma.rn.ftz.f32 %f82, %f60, %f81, %f80; - mov.f32 %f19, %f82; - .loc 16 181 0 - mul.ftz.f32 %f83, %f43, %f45; - fma.rn.ftz.f32 %f20, %f60, %f83, %f20; - mov.f32 %f21, %f20; -$Lt_1_25346: -$Lt_1_24322: - .loc 16 146 0 - mul.lo.u64 %rd50, %rd42, 4; - add.u64 %rd35, %rd35, %rd50; - setp.lt.u64 %p10, %rd35, %rd34; - @%p10 bra $Lt_1_24066; - bra.uni $Lt_1_23554; -$Lt_1_31746: - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_23554: - mov.u32 %r53, 1; - setp.le.s32 %p11, %r6, %r53; - @%p11 bra $Lt_1_28162; - .loc 16 186 0 - mov.u64 %rd51, __cuda___cuda_local_var_32687_55_non_const_red_acc7168; - cvt.s64.s32 %rd52, %r1; - mul.wide.s32 %rd53, %r1, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f84, %f33; - st.shared.f32 [%rd54+0], %f84; - mov.f32 %f85, %f32; - st.shared.f32 [%rd54+512], %f85; - mov.f32 %f86, %f31; - st.shared.f32 [%rd54+1024], %f86; - mov.f32 %f87, %f34; - st.shared.f32 [%rd54+1536], %f87; - shr.s32 %r54, %r6, 31; - mov.s32 %r55, 1; - and.b32 %r56, %r54, %r55; - add.s32 %r57, %r56, %r6; - shr.s32 %r58, %r57, 1; - mov.s32 %r59, %r58; - mov.u32 %r60, 0; - setp.ne.u32 %p12, %r58, %r60; - @!%p12 bra $Lt_1_26626; -$Lt_1_27138: - setp.ge.u32 %p13, %r17, %r59; - @%p13 bra $Lt_1_27394; - add.u32 %r61, %r1, %r59; - cvt.u64.u32 %rd55, %r61; - mul.wide.u32 %rd56, %r61, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f88, [%rd57+0]; - add.ftz.f32 %f84, %f88, %f84; - st.shared.f32 [%rd54+0], %f84; - ld.shared.f32 %f89, [%rd57+512]; - add.ftz.f32 %f85, %f89, %f85; - st.shared.f32 [%rd54+512], %f85; - ld.shared.f32 %f90, [%rd57+1024]; - add.ftz.f32 %f86, %f90, %f86; - st.shared.f32 [%rd54+1024], %f86; - ld.shared.f32 %f91, [%rd57+1536]; - add.ftz.f32 %f87, %f91, %f87; - st.shared.f32 [%rd54+1536], %f87; -$Lt_1_27394: - shr.u32 %r59, %r59, 1; - mov.u32 %r62, 0; - setp.ne.u32 %p14, %r59, %r62; - @%p14 bra $Lt_1_27138; -$Lt_1_26626: - mov.f32 %f33, %f84; - mov.f32 %f32, %f85; - mov.f32 %f31, %f86; - mov.f32 %f34, %f87; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p15, %r63, %r64; - @%p15 bra $Lt_1_28162; - mov.f32 %f84, %f11; - st.shared.f32 [%rd54+0], %f84; - mov.f32 %f85, %f13; - st.shared.f32 [%rd54+512], %f85; - mov.f32 %f86, %f15; - st.shared.f32 [%rd54+1024], %f86; - mov.f32 %f87, %f17; - st.shared.f32 [%rd54+1536], %f87; - mov.f32 %f92, %f19; - st.shared.f32 [%rd54+2048], %f92; - mov.f32 %f93, %f20; - st.shared.f32 [%rd54+2560], %f93; - mov.s32 %r65, %r58; - @!%p12 bra $Lt_1_28674; -$Lt_1_29186: - setp.ge.u32 %p16, %r17, %r65; - @%p16 bra $Lt_1_29442; - add.u32 %r66, %r1, %r65; - cvt.u64.u32 %rd58, %r66; - mul.wide.u32 %rd59, %r66, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f94, [%rd60+0]; - add.ftz.f32 %f84, %f94, %f84; - st.shared.f32 [%rd54+0], %f84; - ld.shared.f32 %f95, [%rd60+512]; - add.ftz.f32 %f85, %f95, %f85; - st.shared.f32 [%rd54+512], %f85; - ld.shared.f32 %f96, [%rd60+1024]; - add.ftz.f32 %f86, %f96, %f86; - st.shared.f32 [%rd54+1024], %f86; - ld.shared.f32 %f97, [%rd60+1536]; - add.ftz.f32 %f87, %f97, %f87; - st.shared.f32 [%rd54+1536], %f87; - ld.shared.f32 %f98, [%rd60+2048]; - add.ftz.f32 %f92, %f98, %f92; - st.shared.f32 [%rd54+2048], %f92; - ld.shared.f32 %f99, [%rd60+2560]; - add.ftz.f32 %f93, %f99, %f93; - st.shared.f32 [%rd54+2560], %f93; -$Lt_1_29442: - shr.u32 %r65, %r65, 1; - mov.u32 %r67, 0; - setp.ne.u32 %p17, %r65, %r67; - @%p17 bra $Lt_1_29186; -$Lt_1_28674: - mov.f32 %f11, %f84; - mov.f32 %f13, %f85; - mov.f32 %f15, %f86; - mov.f32 %f17, %f87; - mov.f32 %f19, %f92; - mov.f32 %f21, %f93; -$Lt_1_28162: -$Lt_1_26114: - mov.u32 %r68, 0; - setp.ne.s32 %p18, %r17, %r68; - @%p18 bra $Lt_1_30210; - ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd62, %rd61, %rd20; - ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r70, 0; - setp.le.s32 %p19, %r69, %r70; - @%p19 bra $Lt_1_30722; - st.global.f32 [%rd62+0], %f34; - cvt.s64.s32 %rd63, %r13; - mul.wide.s32 %rd64, %r13, 4; - add.u64 %rd62, %rd62, %rd64; -$Lt_1_30722: - ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r72, 0; - setp.le.s32 %p20, %r71, %r72; - @%p20 bra $Lt_1_31234; - mov.f32 %f100, %f11; - st.global.f32 [%rd62+0], %f100; - cvt.s64.s32 %rd65, %r13; - mul.wide.s32 %rd66, %r13, 4; - add.u64 %rd67, %rd66, %rd62; - mov.f32 %f101, %f13; - st.global.f32 [%rd67+0], %f101; - add.u64 %rd68, %rd66, %rd67; - mov.f32 %f102, %f15; - st.global.f32 [%rd68+0], %f102; - add.u64 %rd69, %rd66, %rd68; - mov.f32 %f103, %f17; - st.global.f32 [%rd69+0], %f103; - add.u64 %rd62, %rd66, %rd69; - mov.f32 %f104, %f19; - st.global.f32 [%rd62+0], %f104; - mov.f32 %f105, %f21; - add.u64 %rd70, %rd66, %rd62; - st.global.f32 [%rd70+0], %f105; -$Lt_1_31234: - ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd72, %rd19, 16; - add.u64 %rd73, %rd71, %rd72; - mov.f32 %f106, %f107; - st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f106}; -$Lt_1_30210: -$Lt_1_22530: - .loc 16 189 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/lj96_ptx.h b/lib/gpu/lj96_ptx.h deleted file mode 100644 index 7a942605dc..0000000000 --- a/lib/gpu/lj96_ptx.h +++ /dev/null @@ -1,849 +0,0 @@ -const char * lj96 = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref 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_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<72>;\n" -" .reg .u64 %rd<63>;\n" -" .reg .f32 %f<103>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32601_55_non_const_red_acc108[3072];\n" -" .loc 16 31 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 36 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 37 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 38 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 39 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 46 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" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_26370;\n" -" .loc 16 51 0\n" -" ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" cvt.s64.s32 %rd4, %r8;\n" -" mul.wide.s32 %rd5, %r8, 4;\n" -" ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd7, %rd5, %rd6;\n" -" add.u64 %rd8, %rd3, %rd7;\n" -" ld.global.s32 %r11, [%rd8+0];\n" -" sub.s32 %r12, %r1, 1;\n" -" and.b32 %r13, %r12, %r2;\n" -" cvt.s64.s32 %rd9, %r13;\n" -" mul.wide.s32 %rd10, %r13, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd6;\n" -" @%p2 bra $Lt_0_19458;\n" -" cvt.s32.s64 %r14, %rd2;\n" -" mul.lo.s32 %r15, %r14, %r1;\n" -" mov.s32 %r16, %r15;\n" -" mul.lo.s32 %r17, %r12, %r8;\n" -" add.s32 %r18, %r14, %r17;\n" -" cvt.s64.s32 %rd12, %r18;\n" -" mul.wide.s32 %rd13, %r18, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r19, %r12, %r11;\n" -" cvt.s64.s32 %rd15, %r19;\n" -" div.s32 %r20, %r11, %r1;\n" -" mul.lo.s32 %r21, %r15, %r20;\n" -" cvt.s64.s32 %rd16, %r21;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_19202;\n" -"$Lt_0_19458:\n" -" add.u64 %rd21, %rd3, %rd8;\n" -" ld.global.s32 %r22, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r22;\n" -" mul.wide.s32 %rd23, %r22, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r11;\n" -" mul.wide.s32 %rd26, %r11, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r16, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_19202:\n" -" .loc 16 54 0\n" -" ld.global.s32 %r23, [%rd7+0];\n" -" mov.u32 %r24, %r23;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f21, %f17;\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_27906;\n" -" cvt.rzi.ftz.s32.f32 %r31, %f24;\n" -" cvt.s64.s32 %rd27, %r16;\n" -" ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r33, %r32, %r31;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92;\n" -"$Lt_0_20226:\n" -" .loc 16 60 0\n" -" ld.global.s32 %r34, [%rd20+0];\n" -" .loc 16 61 0\n" -" shr.s32 %r35, %r34, 30;\n" -" and.b32 %r36, %r35, 3;\n" -" cvt.s64.s32 %rd30, %r36;\n" -" mul.wide.s32 %rd31, %r36, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f29, [%rd32+0];\n" -" .loc 16 64 0\n" -" and.b32 %r37, %r34, 1073741823;\n" -" mov.u32 %r38, %r37;\n" -" mov.s32 %r39, 0;\n" -" mov.u32 %r40, %r39;\n" -" mov.s32 %r41, 0;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}];\n" -" mov.f32 %f34, %f30;\n" -" mov.f32 %f35, %f31;\n" -" mov.f32 %f36, %f32;\n" -" mov.f32 %f37, %f33;\n" -" cvt.rzi.ftz.s32.f32 %r45, %f37;\n" -" sub.ftz.f32 %f38, %f22, %f35;\n" -" sub.ftz.f32 %f39, %f21, %f34;\n" -" sub.ftz.f32 %f40, %f23, %f36;\n" -" mul.ftz.f32 %f41, %f38, %f38;\n" -" fma.rn.ftz.f32 %f42, %f39, %f39, %f41;\n" -" fma.rn.ftz.f32 %f43, %f40, %f40, %f42;\n" -" add.s32 %r46, %r45, %r33;\n" -" cvt.s64.s32 %rd33, %r46;\n" -" mul.wide.s32 %rd34, %r46, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f44, [%rd35+8];\n" -" setp.gt.ftz.f32 %p4, %f44, %f43;\n" -" @!%p4 bra $Lt_0_21506;\n" -" .loc 16 79 0\n" -" rcp.approx.ftz.f32 %f45, %f43;\n" -" mul.ftz.f32 %f46, %f45, %f45;\n" -" mul.ftz.f32 %f47, %f45, %f46;\n" -" sqrt.approx.ftz.f32 %f48, %f47;\n" -" mul.ftz.f32 %f49, %f45, %f47;\n" -" ld.global.v2.f32 {%f50,%f51}, [%rd35+0];\n" -" mul.ftz.f32 %f52, %f50, %f48;\n" -" sub.ftz.f32 %f53, %f52, %f51;\n" -" mul.ftz.f32 %f54, %f49, %f53;\n" -" mul.ftz.f32 %f55, %f29, %f54;\n" -" .loc 16 81 0\n" -" fma.rn.ftz.f32 %f27, %f39, %f55, %f27;\n" -" .loc 16 82 0\n" -" fma.rn.ftz.f32 %f26, %f38, %f55, %f26;\n" -" .loc 16 83 0\n" -" fma.rn.ftz.f32 %f25, %f40, %f55, %f25;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p5, %r47, %r48;\n" -" @%p5 bra $Lt_0_20994;\n" -" .loc 16 87 0\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" ld.global.v4.f32 {%f56,%f57,%f58,_}, [%rd37+0];\n" -" mul.ftz.f32 %f59, %f56, %f48;\n" -" sub.ftz.f32 %f60, %f59, %f57;\n" -" mul.ftz.f32 %f61, %f47, %f60;\n" -" sub.ftz.f32 %f62, %f61, %f58;\n" -" fma.rn.ftz.f32 %f28, %f29, %f62, %f28;\n" -"$Lt_0_20994:\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p6, %r49, %r50;\n" -" @%p6 bra $Lt_0_21506;\n" -" .loc 16 90 0\n" -" mov.f32 %f63, %f6;\n" -" mul.ftz.f32 %f64, %f39, %f39;\n" -" fma.rn.ftz.f32 %f65, %f55, %f64, %f63;\n" -" mov.f32 %f6, %f65;\n" -" .loc 16 91 0\n" -" mov.f32 %f66, %f8;\n" -" fma.rn.ftz.f32 %f67, %f55, %f41, %f66;\n" -" mov.f32 %f8, %f67;\n" -" .loc 16 92 0\n" -" mov.f32 %f68, %f10;\n" -" mul.ftz.f32 %f69, %f40, %f40;\n" -" fma.rn.ftz.f32 %f70, %f55, %f69, %f68;\n" -" mov.f32 %f10, %f70;\n" -" .loc 16 93 0\n" -" mov.f32 %f71, %f12;\n" -" mul.ftz.f32 %f72, %f38, %f39;\n" -" fma.rn.ftz.f32 %f73, %f55, %f72, %f71;\n" -" mov.f32 %f12, %f73;\n" -" .loc 16 94 0\n" -" mov.f32 %f74, %f14;\n" -" mul.ftz.f32 %f75, %f39, %f40;\n" -" fma.rn.ftz.f32 %f76, %f55, %f75, %f74;\n" -" mov.f32 %f14, %f76;\n" -" .loc 16 95 0\n" -" mul.ftz.f32 %f77, %f38, %f40;\n" -" fma.rn.ftz.f32 %f15, %f55, %f77, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_0_21506:\n" -"$Lt_0_20482:\n" -" .loc 16 58 0\n" -" mul.lo.u64 %rd38, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd38;\n" -" setp.lt.u64 %p7, %rd20, %rd19;\n" -" @%p7 bra $Lt_0_20226;\n" -" bra.uni $Lt_0_19714;\n" -"$Lt_0_27906:\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -"$Lt_0_19714:\n" -" mov.u32 %r51, 1;\n" -" setp.le.s32 %p8, %r1, %r51;\n" -" @%p8 bra $Lt_0_24322;\n" -" .loc 16 100 0\n" -" mov.u64 %rd39, __cuda___cuda_local_var_32601_55_non_const_red_acc108;\n" -" cvt.s64.s32 %rd40, %r2;\n" -" mul.wide.s32 %rd41, %r2, 4;\n" -" add.u64 %rd42, %rd39, %rd41;\n" -" mov.f32 %f78, %f27;\n" -" st.shared.f32 [%rd42+0], %f78;\n" -" mov.f32 %f79, %f26;\n" -" st.shared.f32 [%rd42+512], %f79;\n" -" mov.f32 %f80, %f25;\n" -" st.shared.f32 [%rd42+1024], %f80;\n" -" mov.f32 %f81, %f28;\n" -" st.shared.f32 [%rd42+1536], %f81;\n" -" shr.s32 %r52, %r1, 31;\n" -" mov.s32 %r53, 1;\n" -" and.b32 %r54, %r52, %r53;\n" -" add.s32 %r55, %r54, %r1;\n" -" shr.s32 %r56, %r55, 1;\n" -" mov.s32 %r57, %r56;\n" -" mov.u32 %r58, 0;\n" -" setp.ne.u32 %p9, %r56, %r58;\n" -" @!%p9 bra $Lt_0_22786;\n" -"$Lt_0_23298:\n" -" setp.ge.u32 %p10, %r13, %r57;\n" -" @%p10 bra $Lt_0_23554;\n" -" add.u32 %r59, %r2, %r57;\n" -" cvt.u64.u32 %rd43, %r59;\n" -" mul.wide.u32 %rd44, %r59, 4;\n" -" add.u64 %rd45, %rd39, %rd44;\n" -" ld.shared.f32 %f82, [%rd45+0];\n" -" add.ftz.f32 %f78, %f82, %f78;\n" -" st.shared.f32 [%rd42+0], %f78;\n" -" ld.shared.f32 %f83, [%rd45+512];\n" -" add.ftz.f32 %f79, %f83, %f79;\n" -" st.shared.f32 [%rd42+512], %f79;\n" -" ld.shared.f32 %f84, [%rd45+1024];\n" -" add.ftz.f32 %f80, %f84, %f80;\n" -" st.shared.f32 [%rd42+1024], %f80;\n" -" ld.shared.f32 %f85, [%rd45+1536];\n" -" add.ftz.f32 %f81, %f85, %f81;\n" -" st.shared.f32 [%rd42+1536], %f81;\n" -"$Lt_0_23554:\n" -" shr.u32 %r57, %r57, 1;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p11, %r57, %r60;\n" -" @%p11 bra $Lt_0_23298;\n" -"$Lt_0_22786:\n" -" mov.f32 %f27, %f78;\n" -" mov.f32 %f26, %f79;\n" -" mov.f32 %f25, %f80;\n" -" mov.f32 %f28, %f81;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p12, %r61, %r62;\n" -" @%p12 bra $Lt_0_24322;\n" -" mov.f32 %f78, %f6;\n" -" st.shared.f32 [%rd42+0], %f78;\n" -" mov.f32 %f79, %f8;\n" -" st.shared.f32 [%rd42+512], %f79;\n" -" mov.f32 %f80, %f10;\n" -" st.shared.f32 [%rd42+1024], %f80;\n" -" mov.f32 %f81, %f12;\n" -" st.shared.f32 [%rd42+1536], %f81;\n" -" mov.f32 %f86, %f14;\n" -" st.shared.f32 [%rd42+2048], %f86;\n" -" mov.f32 %f87, %f15;\n" -" st.shared.f32 [%rd42+2560], %f87;\n" -" mov.s32 %r63, %r56;\n" -" @!%p9 bra $Lt_0_24834;\n" -"$Lt_0_25346:\n" -" setp.ge.u32 %p13, %r13, %r63;\n" -" @%p13 bra $Lt_0_25602;\n" -" add.u32 %r64, %r2, %r63;\n" -" cvt.u64.u32 %rd46, %r64;\n" -" mul.wide.u32 %rd47, %r64, 4;\n" -" add.u64 %rd48, %rd39, %rd47;\n" -" ld.shared.f32 %f88, [%rd48+0];\n" -" add.ftz.f32 %f78, %f88, %f78;\n" -" st.shared.f32 [%rd42+0], %f78;\n" -" ld.shared.f32 %f89, [%rd48+512];\n" -" add.ftz.f32 %f79, %f89, %f79;\n" -" st.shared.f32 [%rd42+512], %f79;\n" -" ld.shared.f32 %f90, [%rd48+1024];\n" -" add.ftz.f32 %f80, %f90, %f80;\n" -" st.shared.f32 [%rd42+1024], %f80;\n" -" ld.shared.f32 %f91, [%rd48+1536];\n" -" add.ftz.f32 %f81, %f91, %f81;\n" -" st.shared.f32 [%rd42+1536], %f81;\n" -" ld.shared.f32 %f92, [%rd48+2048];\n" -" add.ftz.f32 %f86, %f92, %f86;\n" -" st.shared.f32 [%rd42+2048], %f86;\n" -" ld.shared.f32 %f93, [%rd48+2560];\n" -" add.ftz.f32 %f87, %f93, %f87;\n" -" st.shared.f32 [%rd42+2560], %f87;\n" -"$Lt_0_25602:\n" -" shr.u32 %r63, %r63, 1;\n" -" mov.u32 %r65, 0;\n" -" setp.ne.u32 %p14, %r63, %r65;\n" -" @%p14 bra $Lt_0_25346;\n" -"$Lt_0_24834:\n" -" mov.f32 %f6, %f78;\n" -" mov.f32 %f8, %f79;\n" -" mov.f32 %f10, %f80;\n" -" mov.f32 %f12, %f81;\n" -" mov.f32 %f14, %f86;\n" -" mov.f32 %f16, %f87;\n" -"$Lt_0_24322:\n" -"$Lt_0_22274:\n" -" mov.u32 %r66, 0;\n" -" setp.ne.s32 %p15, %r13, %r66;\n" -" @%p15 bra $Lt_0_26370;\n" -" ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd50, %rd49, %rd5;\n" -" ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r68, 0;\n" -" setp.le.s32 %p16, %r67, %r68;\n" -" @%p16 bra $Lt_0_26882;\n" -" st.global.f32 [%rd50+0], %f28;\n" -" cvt.s64.s32 %rd51, %r9;\n" -" mul.wide.s32 %rd52, %r9, 4;\n" -" add.u64 %rd50, %rd50, %rd52;\n" -"$Lt_0_26882:\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p17, %r69, %r70;\n" -" @%p17 bra $Lt_0_27394;\n" -" mov.f32 %f94, %f6;\n" -" st.global.f32 [%rd50+0], %f94;\n" -" cvt.s64.s32 %rd53, %r9;\n" -" mul.wide.s32 %rd54, %r9, 4;\n" -" add.u64 %rd55, %rd54, %rd50;\n" -" mov.f32 %f95, %f8;\n" -" st.global.f32 [%rd55+0], %f95;\n" -" add.u64 %rd56, %rd54, %rd55;\n" -" mov.f32 %f96, %f10;\n" -" st.global.f32 [%rd56+0], %f96;\n" -" add.u64 %rd57, %rd54, %rd56;\n" -" mov.f32 %f97, %f12;\n" -" st.global.f32 [%rd57+0], %f97;\n" -" add.u64 %rd50, %rd54, %rd57;\n" -" mov.f32 %f98, %f14;\n" -" st.global.f32 [%rd50+0], %f98;\n" -" mov.f32 %f99, %f16;\n" -" add.u64 %rd58, %rd54, %rd50;\n" -" st.global.f32 [%rd58+0], %f99;\n" -"$Lt_0_27394:\n" -" ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd60, %rd4, 16;\n" -" add.u64 %rd61, %rd59, %rd60;\n" -" mov.f32 %f100, %f101;\n" -" st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f100};\n" -"$Lt_0_26370:\n" -"$Lt_0_18690:\n" -" .loc 16 103 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<74>;\n" -" .reg .u64 %rd<75>;\n" -" .reg .f32 %f<109>;\n" -" .reg .pred %p<22>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32618_33_non_const_sp_lj3268[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32616_34_non_const_lj13296[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32617_34_non_const_lj35232[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32687_55_non_const_red_acc7168[3072];\n" -" .loc 16 111 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_20994;\n" -" .loc 16 119 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_20994:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_21506;\n" -" .loc 16 121 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_lj13296;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_22018;\n" -" .loc 16 123 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_lj35232;\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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_22018:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_lj35232;\n" -"$Lt_1_21506:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_lj35232;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_lj13296;\n" -" .loc 16 131 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 133 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_30210;\n" -" .loc 16 138 0\n" -" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd17, %r14;\n" -" mul.wide.s32 %rd18, %r14, 4;\n" -" cvt.s64.s32 %rd19, %r12;\n" -" mul.wide.s32 %rd20, %r12, 4;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd22, %rd20, %rd21;\n" -" add.u64 %rd23, %rd18, %rd22;\n" -" ld.global.s32 %r15, [%rd23+0];\n" -" sub.s32 %r16, %r6, 1;\n" -" and.b32 %r17, %r16, %r1;\n" -" cvt.s64.s32 %rd24, %r17;\n" -" mul.wide.s32 %rd25, %r17, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd26, %rd21;\n" -" @%p5 bra $Lt_1_23298;\n" -" cvt.s32.s64 %r18, %rd17;\n" -" mul.lo.s32 %r19, %r18, %r6;\n" -" mov.s32 %r20, %r19;\n" -" mul.lo.s32 %r21, %r16, %r12;\n" -" add.s32 %r22, %r18, %r21;\n" -" cvt.s64.s32 %rd27, %r22;\n" -" mul.wide.s32 %rd28, %r22, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r23, %r16, %r15;\n" -" cvt.s64.s32 %rd30, %r23;\n" -" div.s32 %r24, %r15, %r6;\n" -" mul.lo.s32 %r25, %r19, %r24;\n" -" cvt.s64.s32 %rd31, %r25;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_23042;\n" -"$Lt_1_23298:\n" -" add.u64 %rd36, %rd18, %rd23;\n" -" ld.global.s32 %r26, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r26;\n" -" mul.wide.s32 %rd38, %r26, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r15;\n" -" mul.wide.s32 %rd41, %r15, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r20, %r6;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_23042:\n" -" .loc 16 141 0\n" -" ld.global.s32 %r27, [%rd22+0];\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" setp.ge.u64 %p6, %rd35, %rd34;\n" -" @%p6 bra $Lt_1_31746;\n" -" cvt.rzi.ftz.s32.f32 %r35, %f29;\n" -" cvt.s64.s32 %rd42, %r20;\n" -" mul.lo.s32 %r36, %r35, 11;\n" -" cvt.rn.f32.s32 %f30, %r36;\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_24066:\n" -" .loc 16 148 0\n" -" ld.global.s32 %r37, [%rd35+0];\n" -" .loc 16 152 0\n" -" and.b32 %r38, %r37, 1073741823;\n" -" mov.u32 %r39, %r38;\n" -" mov.s32 %r40, 0;\n" -" mov.u32 %r41, %r40;\n" -" mov.s32 %r42, 0;\n" -" mov.u32 %r43, %r42;\n" -" mov.s32 %r44, 0;\n" -" mov.u32 %r45, %r44;\n" -" tex.1d.v4.f32.s32 {%f35,%f36,%f37,%f38},[pos_tex,{%r39,%r41,%r43,%r45}];\n" -" mov.f32 %f39, %f35;\n" -" mov.f32 %f40, %f36;\n" -" mov.f32 %f41, %f37;\n" -" mov.f32 %f42, %f38;\n" -" sub.ftz.f32 %f43, %f27, %f40;\n" -" sub.ftz.f32 %f44, %f26, %f39;\n" -" sub.ftz.f32 %f45, %f28, %f41;\n" -" mul.ftz.f32 %f46, %f43, %f43;\n" -" fma.rn.ftz.f32 %f47, %f44, %f44, %f46;\n" -" fma.rn.ftz.f32 %f48, %f45, %f45, %f47;\n" -" add.ftz.f32 %f49, %f30, %f42;\n" -" cvt.rzi.ftz.s32.f32 %r46, %f49;\n" -" cvt.s64.s32 %rd43, %r46;\n" -" mul.wide.s32 %rd44, %r46, 16;\n" -" add.u64 %rd45, %rd44, %rd7;\n" -" ld.shared.f32 %f50, [%rd45+8];\n" -" setp.gt.ftz.f32 %p7, %f50, %f48;\n" -" @!%p7 bra $Lt_1_25346;\n" -" .loc 16 165 0\n" -" rcp.approx.ftz.f32 %f51, %f48;\n" -" mul.ftz.f32 %f52, %f51, %f51;\n" -" mul.ftz.f32 %f53, %f51, %f52;\n" -" sqrt.approx.ftz.f32 %f54, %f53;\n" -" mul.ftz.f32 %f55, %f51, %f53;\n" -" ld.shared.v2.f32 {%f56,%f57}, [%rd45+0];\n" -" mul.ftz.f32 %f58, %f56, %f54;\n" -" sub.ftz.f32 %f59, %f58, %f57;\n" -" mul.ftz.f32 %f60, %f55, %f59;\n" -" .loc 16 167 0\n" -" fma.rn.ftz.f32 %f33, %f44, %f60, %f33;\n" -" .loc 16 168 0\n" -" fma.rn.ftz.f32 %f32, %f43, %f60, %f32;\n" -" .loc 16 169 0\n" -" fma.rn.ftz.f32 %f31, %f45, %f60, %f31;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p8, %r47, %r48;\n" -" @%p8 bra $Lt_1_24834;\n" -" .loc 16 172 0\n" -" add.u64 %rd46, %rd44, %rd13;\n" -" ld.shared.v4.f32 {%f61,%f62,%f63,_}, [%rd46+0];\n" -" mul.ftz.f32 %f64, %f61, %f54;\n" -" sub.ftz.f32 %f65, %f64, %f62;\n" -" mul.ftz.f32 %f66, %f53, %f65;\n" -" .loc 16 173 0\n" -" shr.s32 %r49, %r37, 30;\n" -" and.b32 %r50, %r49, 3;\n" -" cvt.s64.s32 %rd47, %r50;\n" -" mul.wide.s32 %rd48, %r50, 4;\n" -" add.u64 %rd49, %rd1, %rd48;\n" -" ld.shared.f32 %f67, [%rd49+0];\n" -" sub.ftz.f32 %f68, %f66, %f63;\n" -" fma.rn.ftz.f32 %f34, %f67, %f68, %f34;\n" -"$Lt_1_24834:\n" -" ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r52, 0;\n" -" setp.le.s32 %p9, %r51, %r52;\n" -" @%p9 bra $Lt_1_25346;\n" -" .loc 16 176 0\n" -" mov.f32 %f69, %f11;\n" -" mul.ftz.f32 %f70, %f44, %f44;\n" -" fma.rn.ftz.f32 %f71, %f60, %f70, %f69;\n" -" mov.f32 %f11, %f71;\n" -" .loc 16 177 0\n" -" mov.f32 %f72, %f13;\n" -" fma.rn.ftz.f32 %f73, %f60, %f46, %f72;\n" -" mov.f32 %f13, %f73;\n" -" .loc 16 178 0\n" -" mov.f32 %f74, %f15;\n" -" mul.ftz.f32 %f75, %f45, %f45;\n" -" fma.rn.ftz.f32 %f76, %f60, %f75, %f74;\n" -" mov.f32 %f15, %f76;\n" -" .loc 16 179 0\n" -" mov.f32 %f77, %f17;\n" -" mul.ftz.f32 %f78, %f43, %f44;\n" -" fma.rn.ftz.f32 %f79, %f60, %f78, %f77;\n" -" mov.f32 %f17, %f79;\n" -" .loc 16 180 0\n" -" mov.f32 %f80, %f19;\n" -" mul.ftz.f32 %f81, %f44, %f45;\n" -" fma.rn.ftz.f32 %f82, %f60, %f81, %f80;\n" -" mov.f32 %f19, %f82;\n" -" .loc 16 181 0\n" -" mul.ftz.f32 %f83, %f43, %f45;\n" -" fma.rn.ftz.f32 %f20, %f60, %f83, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_25346:\n" -"$Lt_1_24322:\n" -" .loc 16 146 0\n" -" mul.lo.u64 %rd50, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd50;\n" -" setp.lt.u64 %p10, %rd35, %rd34;\n" -" @%p10 bra $Lt_1_24066;\n" -" bra.uni $Lt_1_23554;\n" -"$Lt_1_31746:\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_23554:\n" -" mov.u32 %r53, 1;\n" -" setp.le.s32 %p11, %r6, %r53;\n" -" @%p11 bra $Lt_1_28162;\n" -" .loc 16 186 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_32687_55_non_const_red_acc7168;\n" -" cvt.s64.s32 %rd52, %r1;\n" -" mul.wide.s32 %rd53, %r1, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f84, %f33;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" mov.f32 %f85, %f32;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" mov.f32 %f86, %f31;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" mov.f32 %f87, %f34;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -" shr.s32 %r54, %r6, 31;\n" -" mov.s32 %r55, 1;\n" -" and.b32 %r56, %r54, %r55;\n" -" add.s32 %r57, %r56, %r6;\n" -" shr.s32 %r58, %r57, 1;\n" -" mov.s32 %r59, %r58;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p12, %r58, %r60;\n" -" @!%p12 bra $Lt_1_26626;\n" -"$Lt_1_27138:\n" -" setp.ge.u32 %p13, %r17, %r59;\n" -" @%p13 bra $Lt_1_27394;\n" -" add.u32 %r61, %r1, %r59;\n" -" cvt.u64.u32 %rd55, %r61;\n" -" mul.wide.u32 %rd56, %r61, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f88, [%rd57+0];\n" -" add.ftz.f32 %f84, %f88, %f84;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" ld.shared.f32 %f89, [%rd57+512];\n" -" add.ftz.f32 %f85, %f89, %f85;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" ld.shared.f32 %f90, [%rd57+1024];\n" -" add.ftz.f32 %f86, %f90, %f86;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" ld.shared.f32 %f91, [%rd57+1536];\n" -" add.ftz.f32 %f87, %f91, %f87;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -"$Lt_1_27394:\n" -" shr.u32 %r59, %r59, 1;\n" -" mov.u32 %r62, 0;\n" -" setp.ne.u32 %p14, %r59, %r62;\n" -" @%p14 bra $Lt_1_27138;\n" -"$Lt_1_26626:\n" -" mov.f32 %f33, %f84;\n" -" mov.f32 %f32, %f85;\n" -" mov.f32 %f31, %f86;\n" -" mov.f32 %f34, %f87;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p15, %r63, %r64;\n" -" @%p15 bra $Lt_1_28162;\n" -" mov.f32 %f84, %f11;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" mov.f32 %f85, %f13;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" mov.f32 %f86, %f15;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" mov.f32 %f87, %f17;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -" mov.f32 %f92, %f19;\n" -" st.shared.f32 [%rd54+2048], %f92;\n" -" mov.f32 %f93, %f20;\n" -" st.shared.f32 [%rd54+2560], %f93;\n" -" mov.s32 %r65, %r58;\n" -" @!%p12 bra $Lt_1_28674;\n" -"$Lt_1_29186:\n" -" setp.ge.u32 %p16, %r17, %r65;\n" -" @%p16 bra $Lt_1_29442;\n" -" add.u32 %r66, %r1, %r65;\n" -" cvt.u64.u32 %rd58, %r66;\n" -" mul.wide.u32 %rd59, %r66, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f94, [%rd60+0];\n" -" add.ftz.f32 %f84, %f94, %f84;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" ld.shared.f32 %f95, [%rd60+512];\n" -" add.ftz.f32 %f85, %f95, %f85;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" ld.shared.f32 %f96, [%rd60+1024];\n" -" add.ftz.f32 %f86, %f96, %f86;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" ld.shared.f32 %f97, [%rd60+1536];\n" -" add.ftz.f32 %f87, %f97, %f87;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -" ld.shared.f32 %f98, [%rd60+2048];\n" -" add.ftz.f32 %f92, %f98, %f92;\n" -" st.shared.f32 [%rd54+2048], %f92;\n" -" ld.shared.f32 %f99, [%rd60+2560];\n" -" add.ftz.f32 %f93, %f99, %f93;\n" -" st.shared.f32 [%rd54+2560], %f93;\n" -"$Lt_1_29442:\n" -" shr.u32 %r65, %r65, 1;\n" -" mov.u32 %r67, 0;\n" -" setp.ne.u32 %p17, %r65, %r67;\n" -" @%p17 bra $Lt_1_29186;\n" -"$Lt_1_28674:\n" -" mov.f32 %f11, %f84;\n" -" mov.f32 %f13, %f85;\n" -" mov.f32 %f15, %f86;\n" -" mov.f32 %f17, %f87;\n" -" mov.f32 %f19, %f92;\n" -" mov.f32 %f21, %f93;\n" -"$Lt_1_28162:\n" -"$Lt_1_26114:\n" -" mov.u32 %r68, 0;\n" -" setp.ne.s32 %p18, %r17, %r68;\n" -" @%p18 bra $Lt_1_30210;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd62, %rd61, %rd20;\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p19, %r69, %r70;\n" -" @%p19 bra $Lt_1_30722;\n" -" st.global.f32 [%rd62+0], %f34;\n" -" cvt.s64.s32 %rd63, %r13;\n" -" mul.wide.s32 %rd64, %r13, 4;\n" -" add.u64 %rd62, %rd62, %rd64;\n" -"$Lt_1_30722:\n" -" ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r72, 0;\n" -" setp.le.s32 %p20, %r71, %r72;\n" -" @%p20 bra $Lt_1_31234;\n" -" mov.f32 %f100, %f11;\n" -" st.global.f32 [%rd62+0], %f100;\n" -" cvt.s64.s32 %rd65, %r13;\n" -" mul.wide.s32 %rd66, %r13, 4;\n" -" add.u64 %rd67, %rd66, %rd62;\n" -" mov.f32 %f101, %f13;\n" -" st.global.f32 [%rd67+0], %f101;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" mov.f32 %f102, %f15;\n" -" st.global.f32 [%rd68+0], %f102;\n" -" add.u64 %rd69, %rd66, %rd68;\n" -" mov.f32 %f103, %f17;\n" -" st.global.f32 [%rd69+0], %f103;\n" -" add.u64 %rd62, %rd66, %rd69;\n" -" mov.f32 %f104, %f19;\n" -" st.global.f32 [%rd62+0], %f104;\n" -" mov.f32 %f105, %f21;\n" -" add.u64 %rd70, %rd66, %rd62;\n" -" st.global.f32 [%rd70+0], %f105;\n" -"$Lt_1_31234:\n" -" ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd72, %rd19, 16;\n" -" add.u64 %rd73, %rd71, %rd72;\n" -" mov.f32 %f106, %f107;\n" -" st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f106};\n" -"$Lt_1_30210:\n" -"$Lt_1_22530:\n" -" .loc 16 189 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/lj_class2_long.ptx b/lib/gpu/lj_class2_long.ptx deleted file mode 100644 index 3ffb43ace8..0000000000 --- a/lib/gpu/lj_class2_long.ptx +++ /dev/null @@ -1,1133 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009d9c_00000000-9_lal_lj_class2_long.cpp3.i (/home/sjplimp/ccBI#.JI7tD2) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009d9c_00000000-8_lal_lj_class2_long.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_lj_class2_long.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_q_, - .param .f32 __cudaparm_kernel_pair_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_qqrd2e, - .param .f32 __cudaparm_kernel_pair_g_ewald, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<86>; - .reg .u64 %rd<64>; - .reg .f32 %f<167>; - .reg .pred %p<21>; - .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32]; - .shared .align 4 .b8 __cuda___cuda_local_var_32635_55_non_const_red_acc144[3072]; - // __cuda_local_var_32553_10_non_const_f = 64 - // __cuda_local_var_32555_9_non_const_virial = 16 - // __cuda_local_var_32589_43_non_const_r6inv = 44 - // __cuda_local_var_32589_50_non_const_r3inv = 40 - // __cuda_local_var_32589_57_non_const_prefactor = 52 - // __cuda_local_var_32589_68_non_const__erfc = 48 - .loc 16 36 0 -$LDWbegin_kernel_pair: - .loc 16 41 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 42 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 43 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 44 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4}; - .loc 16 45 0 - ld.global.f32 %f5, [%rd1+16]; - .loc 16 46 0 - ld.global.f32 %f6, [%rd1+20]; - .loc 16 47 0 - ld.global.f32 %f7, [%rd1+24]; - .loc 16 48 0 - ld.global.f32 %f8, [%rd1+28]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8}; - .loc 16 56 0 - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - mov.f32 %f17, 0f00000000; // 0 - mov.f32 %f18, %f17; - mov.f32 %f19, 0f00000000; // 0 - mov.f32 %f20, %f19; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_30978; - .loc 16 61 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd5, %rd3, %rd4; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - sub.s32 %r13, %r1, 1; - and.b32 %r14, %r13, %r2; - cvt.s64.s32 %rd9, %r14; - mul.wide.s32 %rd10, %r14, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd4; - @%p2 bra $Lt_0_22530; - cvt.s32.s64 %r15, %rd6; - mul.lo.s32 %r16, %r15, %r1; - mov.s32 %r17, %r16; - mul.lo.s32 %r18, %r13, %r8; - add.s32 %r19, %r15, %r18; - cvt.s64.s32 %rd12, %r19; - mul.wide.s32 %rd13, %r19, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r20, %r13, %r12; - cvt.s64.s32 %rd15, %r20; - div.s32 %r21, %r12, %r1; - mul.lo.s32 %r22, %r16, %r21; - cvt.s64.s32 %rd16, %r22; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_22274; -$Lt_0_22530: - add.u64 %rd21, %rd7, %rd8; - ld.global.s32 %r23, [%rd21+0]; - cvt.s64.s32 %rd22, %r23; - mul.wide.s32 %rd23, %r23, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r12; - mul.wide.s32 %rd26, %r12, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r17, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_22274: - .loc 16 64 0 - mov.u32 %r24, %r10; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f25, %f21; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - .loc 16 65 0 - mov.u32 %r31, %r10; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}]; - mov.f32 %f33, %f29; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_32514; - cvt.rzi.ftz.s32.f32 %r38, %f28; - cvt.s64.s32 %rd27, %r17; - ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r40, %r39, %r38; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112; -$Lt_0_23298: - // Loop body line 65, nesting depth: 1, estimated iterations: unknown - .loc 16 69 0 - ld.global.s32 %r41, [%rd20+0]; - .loc 16 72 0 - shr.s32 %r42, %r41, 30; - and.b32 %r43, %r42, 3; - cvt.s64.s32 %rd30, %r43; - mul.wide.s32 %rd31, %r43, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f39, [%rd32+0]; - .loc 16 73 0 - mov.f32 %f40, 0f3f800000; // 1 - ld.shared.f32 %f41, [%rd32+16]; - sub.ftz.f32 %f42, %f40, %f41; - .loc 16 76 0 - and.b32 %r44, %r41, 1073741823; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - mov.s32 %r48, 0; - mov.u32 %r49, %r48; - mov.s32 %r50, 0; - mov.u32 %r51, %r50; - tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r45,%r47,%r49,%r51}]; - mov.f32 %f47, %f43; - mov.f32 %f48, %f44; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - cvt.rzi.ftz.s32.f32 %r52, %f50; - sub.ftz.f32 %f51, %f26, %f48; - sub.ftz.f32 %f52, %f25, %f47; - sub.ftz.f32 %f53, %f27, %f49; - mul.ftz.f32 %f54, %f51, %f51; - fma.rn.ftz.f32 %f55, %f52, %f52, %f54; - fma.rn.ftz.f32 %f56, %f53, %f53, %f55; - add.s32 %r53, %r52, %r40; - cvt.s64.s32 %rd33, %r53; - mul.wide.s32 %rd34, %r53, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f57, [%rd35+8]; - setp.gt.ftz.f32 %p4, %f57, %f56; - @!%p4 bra $Lt_0_26114; - rcp.approx.ftz.f32 %f58, %f56; - ld.global.f32 %f59, [%rd35+12]; - setp.lt.ftz.f32 %p5, %f56, %f59; - @!%p5 bra $Lt_0_24322; - .loc 16 92 0 - rsqrt.approx.ftz.f32 %f60, %f56; - mul.ftz.f32 %f61, %f58, %f60; - mov.f32 %f62, %f61; - .loc 16 93 0 - mul.ftz.f32 %f63, %f61, %f61; - mov.f32 %f64, %f63; - .loc 16 94 0 - mul.ftz.f32 %f65, %f63, %f39; - ld.global.v2.f32 {%f66,%f67}, [%rd35+0]; - mul.ftz.f32 %f68, %f66, %f61; - sub.ftz.f32 %f69, %f68, %f67; - mul.ftz.f32 %f70, %f65, %f69; - bra.uni $Lt_0_24066; -$Lt_0_24322: - .loc 16 96 0 - mov.f32 %f70, 0f00000000; // 0 -$Lt_0_24066: - ld.param.f32 %f71, [__cudaparm_kernel_pair_cut_coulsq]; - setp.gt.ftz.f32 %p6, %f71, %f56; - @!%p6 bra $Lt_0_24834; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f72, %f58; - ld.param.f32 %f73, [__cudaparm_kernel_pair_g_ewald]; - mul.ftz.f32 %f74, %f73, %f72; - mul.ftz.f32 %f75, %f74, %f74; - neg.ftz.f32 %f76, %f75; - mov.f32 %f77, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f78, %f76, %f77; - ex2.approx.ftz.f32 %f79, %f78; - .loc 16 103 0 - mov.f32 %f80, 0f3f800000; // 1 - mov.f32 %f81, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f82, %f81, %f74, %f80; - rcp.approx.ftz.f32 %f83, %f82; - mov.f32 %f84, 0f3e827906; // 0.25483 - mov.f32 %f85, 0fbe91a98e; // -0.284497 - mov.f32 %f86, 0f3fb5f0e3; // 1.42141 - mov.f32 %f87, 0fbfba00e3; // -1.45315 - mov.f32 %f88, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f89, %f88, %f83, %f87; - fma.rn.ftz.f32 %f90, %f83, %f89, %f86; - fma.rn.ftz.f32 %f91, %f83, %f90, %f85; - fma.rn.ftz.f32 %f92, %f83, %f91, %f84; - mul.ftz.f32 %f93, %f83, %f92; - mul.ftz.f32 %f94, %f79, %f93; - mov.f32 %f95, %f94; - .loc 16 104 0 - mov.u32 %r54, %r44; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f96,%f97,%f98,%f99},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f100, %f96; - ld.param.f32 %f101, [__cudaparm_kernel_pair_qqrd2e]; - mul.ftz.f32 %f102, %f101, %f33; - mul.ftz.f32 %f103, %f102, %f100; - div.approx.ftz.f32 %f104, %f103, %f72; - mov.f32 %f105, %f104; - .loc 16 105 0 - mov.f32 %f106, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f107, %f74, %f106; - fma.rn.ftz.f32 %f108, %f79, %f107, %f94; - sub.ftz.f32 %f109, %f108, %f42; - mul.ftz.f32 %f110, %f104, %f109; - bra.uni $Lt_0_24578; -$Lt_0_24834: - .loc 16 107 0 - mov.f32 %f110, 0f00000000; // 0 -$Lt_0_24578: - .loc 16 111 0 - add.ftz.f32 %f111, %f110, %f70; - mul.ftz.f32 %f112, %f111, %f58; - fma.rn.ftz.f32 %f36, %f52, %f112, %f36; - .loc 16 112 0 - fma.rn.ftz.f32 %f35, %f51, %f112, %f35; - .loc 16 113 0 - fma.rn.ftz.f32 %f34, %f53, %f112, %f34; - ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p7, %r61, %r62; - @%p7 bra $Lt_0_25602; - .loc 16 116 0 - mov.f32 %f113, %f105; - mov.f32 %f114, %f95; - sub.ftz.f32 %f115, %f114, %f42; - fma.rn.ftz.f32 %f116, %f113, %f115, %f37; - selp.f32 %f37, %f116, %f37, %p6; - @!%p5 bra $Lt_0_25602; - .loc 16 120 0 - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - ld.global.v4.f32 {%f117,%f118,%f119,_}, [%rd37+0]; - mov.f32 %f120, %f64; - mov.f32 %f121, %f62; - mul.ftz.f32 %f122, %f117, %f121; - sub.ftz.f32 %f123, %f122, %f118; - mul.ftz.f32 %f124, %f120, %f123; - sub.ftz.f32 %f125, %f124, %f119; - fma.rn.ftz.f32 %f38, %f39, %f125, %f38; -$Lt_0_25602: -$Lt_0_25090: - ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p8, %r63, %r64; - @%p8 bra $Lt_0_26114; - .loc 16 124 0 - mov.f32 %f126, %f10; - mul.ftz.f32 %f127, %f52, %f52; - fma.rn.ftz.f32 %f128, %f112, %f127, %f126; - mov.f32 %f10, %f128; - .loc 16 125 0 - mov.f32 %f129, %f12; - fma.rn.ftz.f32 %f130, %f112, %f54, %f129; - mov.f32 %f12, %f130; - .loc 16 126 0 - mov.f32 %f131, %f14; - mul.ftz.f32 %f132, %f53, %f53; - fma.rn.ftz.f32 %f133, %f112, %f132, %f131; - mov.f32 %f14, %f133; - .loc 16 127 0 - mov.f32 %f134, %f16; - mul.ftz.f32 %f135, %f51, %f52; - fma.rn.ftz.f32 %f136, %f112, %f135, %f134; - mov.f32 %f16, %f136; - .loc 16 128 0 - mov.f32 %f137, %f18; - mul.ftz.f32 %f138, %f52, %f53; - fma.rn.ftz.f32 %f139, %f112, %f138, %f137; - mov.f32 %f18, %f139; - .loc 16 129 0 - mul.ftz.f32 %f140, %f51, %f53; - fma.rn.ftz.f32 %f19, %f112, %f140, %f19; - mov.f32 %f20, %f19; -$Lt_0_26114: -$Lt_0_23554: - .loc 16 68 0 - mul.lo.u64 %rd38, %rd27, 4; - add.u64 %rd20, %rd20, %rd38; - setp.lt.u64 %p9, %rd20, %rd19; - @%p9 bra $Lt_0_23298; - bra.uni $Lt_0_22786; -$Lt_0_32514: - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 -$Lt_0_22786: - mov.u32 %r65, 1; - setp.le.s32 %p10, %r1, %r65; - @%p10 bra $Lt_0_28930; - .loc 16 134 0 - mov.u64 %rd39, __cuda___cuda_local_var_32635_55_non_const_red_acc144; - cvt.s64.s32 %rd40, %r2; - mul.wide.s32 %rd41, %r2, 4; - add.u64 %rd42, %rd39, %rd41; - mov.f32 %f141, %f36; - st.shared.f32 [%rd42+0], %f141; - mov.f32 %f142, %f35; - st.shared.f32 [%rd42+512], %f142; - mov.f32 %f143, %f34; - st.shared.f32 [%rd42+1024], %f143; - mov.f32 %f144, %f38; - st.shared.f32 [%rd42+1536], %f144; - mov.f32 %f145, %f37; - st.shared.f32 [%rd42+2048], %f145; - shr.s32 %r66, %r1, 31; - mov.s32 %r67, 1; - and.b32 %r68, %r66, %r67; - add.s32 %r69, %r68, %r1; - shr.s32 %r70, %r69, 1; - mov.s32 %r71, %r70; - mov.u32 %r72, 0; - setp.ne.u32 %p11, %r70, %r72; - @!%p11 bra $Lt_0_27394; -$Lt_0_27906: - setp.ge.u32 %p12, %r14, %r71; - @%p12 bra $Lt_0_28162; - add.u32 %r73, %r2, %r71; - cvt.u64.u32 %rd43, %r73; - mul.wide.u32 %rd44, %r73, 4; - add.u64 %rd45, %rd39, %rd44; - ld.shared.f32 %f146, [%rd45+0]; - add.ftz.f32 %f141, %f146, %f141; - st.shared.f32 [%rd42+0], %f141; - ld.shared.f32 %f147, [%rd45+512]; - add.ftz.f32 %f142, %f147, %f142; - st.shared.f32 [%rd42+512], %f142; - ld.shared.f32 %f148, [%rd45+1024]; - add.ftz.f32 %f143, %f148, %f143; - st.shared.f32 [%rd42+1024], %f143; - ld.shared.f32 %f149, [%rd45+1536]; - add.ftz.f32 %f144, %f149, %f144; - st.shared.f32 [%rd42+1536], %f144; - ld.shared.f32 %f150, [%rd45+2048]; - add.ftz.f32 %f145, %f150, %f145; - st.shared.f32 [%rd42+2048], %f145; -$Lt_0_28162: - shr.u32 %r71, %r71, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p13, %r71, %r74; - @%p13 bra $Lt_0_27906; -$Lt_0_27394: - mov.f32 %f36, %f141; - mov.f32 %f35, %f142; - mov.f32 %f34, %f143; - mov.f32 %f38, %f144; - mov.f32 %f37, %f145; - ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r76, 0; - setp.le.s32 %p14, %r75, %r76; - @%p14 bra $Lt_0_28930; - mov.f32 %f141, %f10; - st.shared.f32 [%rd42+0], %f141; - mov.f32 %f142, %f12; - st.shared.f32 [%rd42+512], %f142; - mov.f32 %f143, %f14; - st.shared.f32 [%rd42+1024], %f143; - mov.f32 %f144, %f16; - st.shared.f32 [%rd42+1536], %f144; - mov.f32 %f145, %f18; - st.shared.f32 [%rd42+2048], %f145; - mov.f32 %f151, %f19; - st.shared.f32 [%rd42+2560], %f151; - mov.s32 %r77, %r70; - @!%p11 bra $Lt_0_29442; -$Lt_0_29954: - setp.ge.u32 %p15, %r14, %r77; - @%p15 bra $Lt_0_30210; - add.u32 %r78, %r2, %r77; - cvt.u64.u32 %rd46, %r78; - mul.wide.u32 %rd47, %r78, 4; - add.u64 %rd48, %rd39, %rd47; - ld.shared.f32 %f152, [%rd48+0]; - add.ftz.f32 %f141, %f152, %f141; - st.shared.f32 [%rd42+0], %f141; - ld.shared.f32 %f153, [%rd48+512]; - add.ftz.f32 %f142, %f153, %f142; - st.shared.f32 [%rd42+512], %f142; - ld.shared.f32 %f154, [%rd48+1024]; - add.ftz.f32 %f143, %f154, %f143; - st.shared.f32 [%rd42+1024], %f143; - ld.shared.f32 %f155, [%rd48+1536]; - add.ftz.f32 %f144, %f155, %f144; - st.shared.f32 [%rd42+1536], %f144; - ld.shared.f32 %f156, [%rd48+2048]; - add.ftz.f32 %f145, %f156, %f145; - st.shared.f32 [%rd42+2048], %f145; - ld.shared.f32 %f157, [%rd48+2560]; - add.ftz.f32 %f151, %f157, %f151; - st.shared.f32 [%rd42+2560], %f151; -$Lt_0_30210: - shr.u32 %r77, %r77, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p16, %r77, %r79; - @%p16 bra $Lt_0_29954; -$Lt_0_29442: - mov.f32 %f10, %f141; - mov.f32 %f12, %f142; - mov.f32 %f14, %f143; - mov.f32 %f16, %f144; - mov.f32 %f18, %f145; - mov.f32 %f20, %f151; -$Lt_0_28930: -$Lt_0_26882: - mov.u32 %r80, 0; - setp.ne.s32 %p17, %r14, %r80; - @%p17 bra $Lt_0_30978; - ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd50, %rd49, %rd3; - ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r82, 0; - setp.le.s32 %p18, %r81, %r82; - @%p18 bra $Lt_0_31490; - st.global.f32 [%rd50+0], %f38; - cvt.s64.s32 %rd51, %r9; - mul.wide.s32 %rd52, %r9, 4; - add.u64 %rd53, %rd52, %rd50; - st.global.f32 [%rd53+0], %f37; - add.u64 %rd50, %rd52, %rd53; -$Lt_0_31490: - ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r84, 0; - setp.le.s32 %p19, %r83, %r84; - @%p19 bra $Lt_0_32002; - mov.f32 %f158, %f10; - st.global.f32 [%rd50+0], %f158; - cvt.s64.s32 %rd54, %r9; - mul.wide.s32 %rd55, %r9, 4; - add.u64 %rd56, %rd55, %rd50; - mov.f32 %f159, %f12; - st.global.f32 [%rd56+0], %f159; - add.u64 %rd57, %rd55, %rd56; - mov.f32 %f160, %f14; - st.global.f32 [%rd57+0], %f160; - add.u64 %rd58, %rd55, %rd57; - mov.f32 %f161, %f16; - st.global.f32 [%rd58+0], %f161; - add.u64 %rd50, %rd55, %rd58; - mov.f32 %f162, %f18; - st.global.f32 [%rd50+0], %f162; - mov.f32 %f163, %f20; - add.u64 %rd59, %rd55, %rd50; - st.global.f32 [%rd59+0], %f163; -$Lt_0_32002: - ld.param.u64 %rd60, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd61, %rd2, 16; - add.u64 %rd62, %rd60, %rd61; - mov.f32 %f164, %f165; - st.global.v4.f32 [%rd62+0], {%f36,%f35,%f34,%f164}; -$Lt_0_30978: -$Lt_0_21762: - .loc 16 137 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_fast_q_, - .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_fast_qqrd2e, - .param .f32 __cudaparm_kernel_pair_fast_g_ewald, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<88>; - .reg .u64 %rd<76>; - .reg .f32 %f<170>; - .reg .pred %p<24>; - .shared .align 4 .b8 __cuda___cuda_local_var_32654_33_non_const_sp_lj3320[32]; - .shared .align 16 .b8 __cuda___cuda_local_var_32652_34_non_const_lj13360[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32653_34_non_const_lj35296[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32749_55_non_const_red_acc7232[3072]; - // __cuda_local_var_32665_10_non_const_f = 64 - // __cuda_local_var_32667_9_non_const_virial = 16 - // __cuda_local_var_32703_43_non_const_r6inv = 44 - // __cuda_local_var_32703_50_non_const_r3inv = 40 - // __cuda_local_var_32703_57_non_const_prefactor = 52 - // __cuda_local_var_32703_68_non_const__erfc = 48 - .loc 16 147 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 7; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_24066; - .loc 16 155 0 - mov.u64 %rd1, __cuda___cuda_local_var_32654_33_non_const_sp_lj3320; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_24066: - mov.u64 %rd1, __cuda___cuda_local_var_32654_33_non_const_sp_lj3320; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_24578; - .loc 16 157 0 - mov.u64 %rd7, __cuda___cuda_local_var_32652_34_non_const_lj13360; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_25090; - .loc 16 159 0 - mov.u64 %rd13, __cuda___cuda_local_var_32653_34_non_const_lj35296; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_25090: - mov.u64 %rd13, __cuda___cuda_local_var_32653_34_non_const_lj35296; -$Lt_1_24578: - mov.u64 %rd13, __cuda___cuda_local_var_32653_34_non_const_lj35296; - mov.u64 %rd7, __cuda___cuda_local_var_32652_34_non_const_lj13360; - .loc 16 168 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 170 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_34818; - .loc 16 175 0 - cvt.s64.s32 %rd17, %r12; - mul.wide.s32 %rd18, %r12, 4; - ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd20, %rd18, %rd19; - ld.global.s32 %r14, [%rd20+0]; - ld.param.s32 %r15, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd21, %r15; - mul.wide.s32 %rd22, %r15, 4; - add.u64 %rd23, %rd22, %rd20; - ld.global.s32 %r16, [%rd23+0]; - sub.s32 %r17, %r6, 1; - and.b32 %r18, %r17, %r1; - cvt.s64.s32 %rd24, %r18; - mul.wide.s32 %rd25, %r18, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd26, %rd19; - @%p5 bra $Lt_1_26370; - cvt.s32.s64 %r19, %rd21; - mul.lo.s32 %r20, %r19, %r6; - mov.s32 %r21, %r20; - mul.lo.s32 %r22, %r17, %r12; - add.s32 %r23, %r19, %r22; - cvt.s64.s32 %rd27, %r23; - mul.wide.s32 %rd28, %r23, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r24, %r17, %r16; - cvt.s64.s32 %rd30, %r24; - div.s32 %r25, %r16, %r6; - mul.lo.s32 %r26, %r20, %r25; - cvt.s64.s32 %rd31, %r26; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_26114; -$Lt_1_26370: - add.u64 %rd36, %rd22, %rd23; - ld.global.s32 %r27, [%rd36+0]; - cvt.s64.s32 %rd37, %r27; - mul.wide.s32 %rd38, %r27, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r16; - mul.wide.s32 %rd41, %r16, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r21, %r6; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_26114: - .loc 16 178 0 - mov.u32 %r28, %r14; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - .loc 16 179 0 - mov.u32 %r35, %r14; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - mov.s32 %r38, 0; - mov.u32 %r39, %r38; - mov.s32 %r40, 0; - mov.u32 %r41, %r40; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r35,%r37,%r39,%r41}]; - mov.f32 %f34, %f30; - setp.ge.u64 %p6, %rd35, %rd34; - @%p6 bra $Lt_1_36354; - cvt.rzi.ftz.s32.f32 %r42, %f29; - cvt.s64.s32 %rd42, %r21; - mul.lo.s32 %r43, %r42, 11; - cvt.rn.f32.s32 %f35, %r43; - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 -$Lt_1_27138: - // Loop body line 179, nesting depth: 1, estimated iterations: unknown - .loc 16 184 0 - ld.global.s32 %r44, [%rd35+0]; - .loc 16 187 0 - shr.s32 %r45, %r44, 30; - and.b32 %r46, %r45, 3; - cvt.s64.s32 %rd43, %r46; - mul.wide.s32 %rd44, %r46, 4; - add.u64 %rd45, %rd1, %rd44; - ld.shared.f32 %f41, [%rd45+0]; - .loc 16 188 0 - mov.f32 %f42, 0f3f800000; // 1 - ld.shared.f32 %f43, [%rd45+16]; - sub.ftz.f32 %f44, %f42, %f43; - .loc 16 191 0 - and.b32 %r47, %r44, 1073741823; - mov.u32 %r48, %r47; - mov.s32 %r49, 0; - mov.u32 %r50, %r49; - mov.s32 %r51, 0; - mov.u32 %r52, %r51; - mov.s32 %r53, 0; - mov.u32 %r54, %r53; - tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r48,%r50,%r52,%r54}]; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - mov.f32 %f51, %f47; - mov.f32 %f52, %f48; - sub.ftz.f32 %f53, %f27, %f50; - sub.ftz.f32 %f54, %f26, %f49; - sub.ftz.f32 %f55, %f28, %f51; - mul.ftz.f32 %f56, %f53, %f53; - fma.rn.ftz.f32 %f57, %f54, %f54, %f56; - fma.rn.ftz.f32 %f58, %f55, %f55, %f57; - add.ftz.f32 %f59, %f35, %f52; - cvt.rzi.ftz.s32.f32 %r55, %f59; - cvt.s64.s32 %rd46, %r55; - mul.wide.s32 %rd47, %r55, 16; - add.u64 %rd48, %rd47, %rd7; - ld.shared.f32 %f60, [%rd48+8]; - setp.gt.ftz.f32 %p7, %f60, %f58; - @!%p7 bra $Lt_1_29954; - rcp.approx.ftz.f32 %f61, %f58; - ld.shared.f32 %f62, [%rd48+12]; - setp.lt.ftz.f32 %p8, %f58, %f62; - @!%p8 bra $Lt_1_28162; - .loc 16 206 0 - rsqrt.approx.ftz.f32 %f63, %f58; - mul.ftz.f32 %f64, %f61, %f63; - mov.f32 %f65, %f64; - .loc 16 207 0 - mul.ftz.f32 %f66, %f64, %f64; - mov.f32 %f67, %f66; - .loc 16 208 0 - mul.ftz.f32 %f68, %f66, %f41; - ld.shared.v2.f32 {%f69,%f70}, [%rd48+0]; - mul.ftz.f32 %f71, %f69, %f64; - sub.ftz.f32 %f72, %f71, %f70; - mul.ftz.f32 %f73, %f68, %f72; - bra.uni $Lt_1_27906; -$Lt_1_28162: - .loc 16 210 0 - mov.f32 %f73, 0f00000000; // 0 -$Lt_1_27906: - ld.param.f32 %f74, [__cudaparm_kernel_pair_fast_cut_coulsq]; - setp.gt.ftz.f32 %p9, %f74, %f58; - @!%p9 bra $Lt_1_28674; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f75, %f61; - ld.param.f32 %f76, [__cudaparm_kernel_pair_fast_g_ewald]; - mul.ftz.f32 %f77, %f76, %f75; - mul.ftz.f32 %f78, %f77, %f77; - neg.ftz.f32 %f79, %f78; - mov.f32 %f80, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f81, %f79, %f80; - ex2.approx.ftz.f32 %f82, %f81; - .loc 16 217 0 - mov.f32 %f83, 0f3f800000; // 1 - mov.f32 %f84, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f85, %f84, %f77, %f83; - rcp.approx.ftz.f32 %f86, %f85; - mov.f32 %f87, 0f3e827906; // 0.25483 - mov.f32 %f88, 0fbe91a98e; // -0.284497 - mov.f32 %f89, 0f3fb5f0e3; // 1.42141 - mov.f32 %f90, 0fbfba00e3; // -1.45315 - mov.f32 %f91, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f92, %f91, %f86, %f90; - fma.rn.ftz.f32 %f93, %f86, %f92, %f89; - fma.rn.ftz.f32 %f94, %f86, %f93, %f88; - fma.rn.ftz.f32 %f95, %f86, %f94, %f87; - mul.ftz.f32 %f96, %f86, %f95; - mul.ftz.f32 %f97, %f82, %f96; - mov.f32 %f98, %f97; - .loc 16 218 0 - mov.u32 %r56, %r47; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - mov.s32 %r61, 0; - mov.u32 %r62, %r61; - tex.1d.v4.f32.s32 {%f99,%f100,%f101,%f102},[q_tex,{%r56,%r58,%r60,%r62}]; - mov.f32 %f103, %f99; - ld.param.f32 %f104, [__cudaparm_kernel_pair_fast_qqrd2e]; - mul.ftz.f32 %f105, %f104, %f34; - mul.ftz.f32 %f106, %f105, %f103; - div.approx.ftz.f32 %f107, %f106, %f75; - mov.f32 %f108, %f107; - .loc 16 219 0 - mov.f32 %f109, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f110, %f77, %f109; - fma.rn.ftz.f32 %f111, %f82, %f110, %f97; - sub.ftz.f32 %f112, %f111, %f44; - mul.ftz.f32 %f113, %f107, %f112; - bra.uni $Lt_1_28418; -$Lt_1_28674: - .loc 16 221 0 - mov.f32 %f113, 0f00000000; // 0 -$Lt_1_28418: - .loc 16 225 0 - add.ftz.f32 %f114, %f113, %f73; - mul.ftz.f32 %f115, %f114, %f61; - fma.rn.ftz.f32 %f38, %f54, %f115, %f38; - .loc 16 226 0 - fma.rn.ftz.f32 %f37, %f53, %f115, %f37; - .loc 16 227 0 - fma.rn.ftz.f32 %f36, %f55, %f115, %f36; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r64, 0; - setp.le.s32 %p10, %r63, %r64; - @%p10 bra $Lt_1_29442; - .loc 16 230 0 - mov.f32 %f116, %f108; - mov.f32 %f117, %f98; - sub.ftz.f32 %f118, %f117, %f44; - fma.rn.ftz.f32 %f119, %f116, %f118, %f39; - selp.f32 %f39, %f119, %f39, %p9; - @!%p8 bra $Lt_1_29442; - .loc 16 233 0 - add.u64 %rd49, %rd47, %rd13; - mov.f32 %f120, %f67; - ld.shared.v4.f32 {%f121,%f122,%f123,_}, [%rd49+0]; - mov.f32 %f124, %f65; - mul.ftz.f32 %f125, %f121, %f124; - sub.ftz.f32 %f126, %f125, %f122; - mul.ftz.f32 %f127, %f120, %f126; - .loc 16 234 0 - sub.ftz.f32 %f128, %f127, %f123; - fma.rn.ftz.f32 %f40, %f41, %f128, %f40; -$Lt_1_29442: -$Lt_1_28930: - ld.param.s32 %r65, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r66, 0; - setp.le.s32 %p11, %r65, %r66; - @%p11 bra $Lt_1_29954; - .loc 16 238 0 - mov.f32 %f129, %f11; - mul.ftz.f32 %f130, %f54, %f54; - fma.rn.ftz.f32 %f131, %f115, %f130, %f129; - mov.f32 %f11, %f131; - .loc 16 239 0 - mov.f32 %f132, %f13; - fma.rn.ftz.f32 %f133, %f115, %f56, %f132; - mov.f32 %f13, %f133; - .loc 16 240 0 - mov.f32 %f134, %f15; - mul.ftz.f32 %f135, %f55, %f55; - fma.rn.ftz.f32 %f136, %f115, %f135, %f134; - mov.f32 %f15, %f136; - .loc 16 241 0 - mov.f32 %f137, %f17; - mul.ftz.f32 %f138, %f53, %f54; - fma.rn.ftz.f32 %f139, %f115, %f138, %f137; - mov.f32 %f17, %f139; - .loc 16 242 0 - mov.f32 %f140, %f19; - mul.ftz.f32 %f141, %f54, %f55; - fma.rn.ftz.f32 %f142, %f115, %f141, %f140; - mov.f32 %f19, %f142; - .loc 16 243 0 - mul.ftz.f32 %f143, %f53, %f55; - fma.rn.ftz.f32 %f20, %f115, %f143, %f20; - mov.f32 %f21, %f20; -$Lt_1_29954: -$Lt_1_27394: - .loc 16 183 0 - mul.lo.u64 %rd50, %rd42, 4; - add.u64 %rd35, %rd35, %rd50; - setp.lt.u64 %p12, %rd35, %rd34; - @%p12 bra $Lt_1_27138; - bra.uni $Lt_1_26626; -$Lt_1_36354: - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 -$Lt_1_26626: - mov.u32 %r67, 1; - setp.le.s32 %p13, %r6, %r67; - @%p13 bra $Lt_1_32770; - .loc 16 248 0 - mov.u64 %rd51, __cuda___cuda_local_var_32749_55_non_const_red_acc7232; - cvt.s64.s32 %rd52, %r1; - mul.wide.s32 %rd53, %r1, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f144, %f38; - st.shared.f32 [%rd54+0], %f144; - mov.f32 %f145, %f37; - st.shared.f32 [%rd54+512], %f145; - mov.f32 %f146, %f36; - st.shared.f32 [%rd54+1024], %f146; - mov.f32 %f147, %f40; - st.shared.f32 [%rd54+1536], %f147; - mov.f32 %f148, %f39; - st.shared.f32 [%rd54+2048], %f148; - shr.s32 %r68, %r6, 31; - mov.s32 %r69, 1; - and.b32 %r70, %r68, %r69; - add.s32 %r71, %r70, %r6; - shr.s32 %r72, %r71, 1; - mov.s32 %r73, %r72; - mov.u32 %r74, 0; - setp.ne.u32 %p14, %r72, %r74; - @!%p14 bra $Lt_1_31234; -$Lt_1_31746: - setp.ge.u32 %p15, %r18, %r73; - @%p15 bra $Lt_1_32002; - add.u32 %r75, %r1, %r73; - cvt.u64.u32 %rd55, %r75; - mul.wide.u32 %rd56, %r75, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f149, [%rd57+0]; - add.ftz.f32 %f144, %f149, %f144; - st.shared.f32 [%rd54+0], %f144; - ld.shared.f32 %f150, [%rd57+512]; - add.ftz.f32 %f145, %f150, %f145; - st.shared.f32 [%rd54+512], %f145; - ld.shared.f32 %f151, [%rd57+1024]; - add.ftz.f32 %f146, %f151, %f146; - st.shared.f32 [%rd54+1024], %f146; - ld.shared.f32 %f152, [%rd57+1536]; - add.ftz.f32 %f147, %f152, %f147; - st.shared.f32 [%rd54+1536], %f147; - ld.shared.f32 %f153, [%rd57+2048]; - add.ftz.f32 %f148, %f153, %f148; - st.shared.f32 [%rd54+2048], %f148; -$Lt_1_32002: - shr.u32 %r73, %r73, 1; - mov.u32 %r76, 0; - setp.ne.u32 %p16, %r73, %r76; - @%p16 bra $Lt_1_31746; -$Lt_1_31234: - mov.f32 %f38, %f144; - mov.f32 %f37, %f145; - mov.f32 %f36, %f146; - mov.f32 %f40, %f147; - mov.f32 %f39, %f148; - ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r78, 0; - setp.le.s32 %p17, %r77, %r78; - @%p17 bra $Lt_1_32770; - mov.f32 %f144, %f11; - st.shared.f32 [%rd54+0], %f144; - mov.f32 %f145, %f13; - st.shared.f32 [%rd54+512], %f145; - mov.f32 %f146, %f15; - st.shared.f32 [%rd54+1024], %f146; - mov.f32 %f147, %f17; - st.shared.f32 [%rd54+1536], %f147; - mov.f32 %f148, %f19; - st.shared.f32 [%rd54+2048], %f148; - mov.f32 %f154, %f20; - st.shared.f32 [%rd54+2560], %f154; - mov.s32 %r79, %r72; - @!%p14 bra $Lt_1_33282; -$Lt_1_33794: - setp.ge.u32 %p18, %r18, %r79; - @%p18 bra $Lt_1_34050; - add.u32 %r80, %r1, %r79; - cvt.u64.u32 %rd58, %r80; - mul.wide.u32 %rd59, %r80, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f155, [%rd60+0]; - add.ftz.f32 %f144, %f155, %f144; - st.shared.f32 [%rd54+0], %f144; - ld.shared.f32 %f156, [%rd60+512]; - add.ftz.f32 %f145, %f156, %f145; - st.shared.f32 [%rd54+512], %f145; - ld.shared.f32 %f157, [%rd60+1024]; - add.ftz.f32 %f146, %f157, %f146; - st.shared.f32 [%rd54+1024], %f146; - ld.shared.f32 %f158, [%rd60+1536]; - add.ftz.f32 %f147, %f158, %f147; - st.shared.f32 [%rd54+1536], %f147; - ld.shared.f32 %f159, [%rd60+2048]; - add.ftz.f32 %f148, %f159, %f148; - st.shared.f32 [%rd54+2048], %f148; - ld.shared.f32 %f160, [%rd60+2560]; - add.ftz.f32 %f154, %f160, %f154; - st.shared.f32 [%rd54+2560], %f154; -$Lt_1_34050: - shr.u32 %r79, %r79, 1; - mov.u32 %r81, 0; - setp.ne.u32 %p19, %r79, %r81; - @%p19 bra $Lt_1_33794; -$Lt_1_33282: - mov.f32 %f11, %f144; - mov.f32 %f13, %f145; - mov.f32 %f15, %f146; - mov.f32 %f17, %f147; - mov.f32 %f19, %f148; - mov.f32 %f21, %f154; -$Lt_1_32770: -$Lt_1_30722: - mov.u32 %r82, 0; - setp.ne.s32 %p20, %r18, %r82; - @%p20 bra $Lt_1_34818; - ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd62, %rd61, %rd18; - ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r84, 0; - setp.le.s32 %p21, %r83, %r84; - @%p21 bra $Lt_1_35330; - st.global.f32 [%rd62+0], %f40; - cvt.s64.s32 %rd63, %r13; - mul.wide.s32 %rd64, %r13, 4; - add.u64 %rd65, %rd64, %rd62; - st.global.f32 [%rd65+0], %f39; - add.u64 %rd62, %rd64, %rd65; -$Lt_1_35330: - ld.param.s32 %r85, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r86, 0; - setp.le.s32 %p22, %r85, %r86; - @%p22 bra $Lt_1_35842; - mov.f32 %f161, %f11; - st.global.f32 [%rd62+0], %f161; - cvt.s64.s32 %rd66, %r13; - mul.wide.s32 %rd67, %r13, 4; - add.u64 %rd68, %rd67, %rd62; - mov.f32 %f162, %f13; - st.global.f32 [%rd68+0], %f162; - add.u64 %rd69, %rd67, %rd68; - mov.f32 %f163, %f15; - st.global.f32 [%rd69+0], %f163; - add.u64 %rd70, %rd67, %rd69; - mov.f32 %f164, %f17; - st.global.f32 [%rd70+0], %f164; - add.u64 %rd62, %rd67, %rd70; - mov.f32 %f165, %f19; - st.global.f32 [%rd62+0], %f165; - mov.f32 %f166, %f21; - add.u64 %rd71, %rd67, %rd62; - st.global.f32 [%rd71+0], %f166; -$Lt_1_35842: - ld.param.u64 %rd72, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd73, %rd17, 16; - add.u64 %rd74, %rd72, %rd73; - mov.f32 %f167, %f168; - st.global.v4.f32 [%rd74+0], {%f38,%f37,%f36,%f167}; -$Lt_1_34818: -$Lt_1_25602: - .loc 16 251 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/lj_class2_long_ptx.h b/lib/gpu/lj_class2_long_ptx.h deleted file mode 100644 index 2876e0c3e3..0000000000 --- a/lib/gpu/lj_class2_long_ptx.h +++ /dev/null @@ -1,1073 +0,0 @@ -const char * lj_class2_long = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .global .texref q_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_lj1,\n" -" .param .u64 __cudaparm_kernel_pair_lj3,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_q_,\n" -" .param .f32 __cudaparm_kernel_pair_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<86>;\n" -" .reg .u64 %rd<64>;\n" -" .reg .f32 %f<167>;\n" -" .reg .pred %p<21>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32635_55_non_const_red_acc144[3072];\n" -" .loc 16 36 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 41 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 42 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 43 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 44 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 45 0\n" -" ld.global.f32 %f5, [%rd1+16];\n" -" .loc 16 46 0\n" -" ld.global.f32 %f6, [%rd1+20];\n" -" .loc 16 47 0\n" -" ld.global.f32 %f7, [%rd1+24];\n" -" .loc 16 48 0\n" -" ld.global.f32 %f8, [%rd1+28];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8};\n" -" .loc 16 56 0\n" -" mov.f32 %f9, 0f00000000; \n" -" mov.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f00000000; \n" -" mov.f32 %f12, %f11;\n" -" mov.f32 %f13, 0f00000000; \n" -" mov.f32 %f14, %f13;\n" -" mov.f32 %f15, 0f00000000; \n" -" mov.f32 %f16, %f15;\n" -" mov.f32 %f17, 0f00000000; \n" -" mov.f32 %f18, %f17;\n" -" mov.f32 %f19, 0f00000000; \n" -" mov.f32 %f20, %f19;\n" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_30978;\n" -" .loc 16 61 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd5, %rd3, %rd4;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" sub.s32 %r13, %r1, 1;\n" -" and.b32 %r14, %r13, %r2;\n" -" cvt.s64.s32 %rd9, %r14;\n" -" mul.wide.s32 %rd10, %r14, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd4;\n" -" @%p2 bra $Lt_0_22530;\n" -" cvt.s32.s64 %r15, %rd6;\n" -" mul.lo.s32 %r16, %r15, %r1;\n" -" mov.s32 %r17, %r16;\n" -" mul.lo.s32 %r18, %r13, %r8;\n" -" add.s32 %r19, %r15, %r18;\n" -" cvt.s64.s32 %rd12, %r19;\n" -" mul.wide.s32 %rd13, %r19, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r20, %r13, %r12;\n" -" cvt.s64.s32 %rd15, %r20;\n" -" div.s32 %r21, %r12, %r1;\n" -" mul.lo.s32 %r22, %r16, %r21;\n" -" cvt.s64.s32 %rd16, %r22;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_22274;\n" -"$Lt_0_22530:\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" ld.global.s32 %r23, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r23;\n" -" mul.wide.s32 %rd23, %r23, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r12;\n" -" mul.wide.s32 %rd26, %r12, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r17, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_22274:\n" -" .loc 16 64 0\n" -" mov.u32 %r24, %r10;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f25, %f21;\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" .loc 16 65 0\n" -" mov.u32 %r31, %r10;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}];\n" -" mov.f32 %f33, %f29;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_32514;\n" -" cvt.rzi.ftz.s32.f32 %r38, %f28;\n" -" cvt.s64.s32 %rd27, %r17;\n" -" ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r40, %r39, %r38;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112;\n" -"$Lt_0_23298:\n" -" .loc 16 69 0\n" -" ld.global.s32 %r41, [%rd20+0];\n" -" .loc 16 72 0\n" -" shr.s32 %r42, %r41, 30;\n" -" and.b32 %r43, %r42, 3;\n" -" cvt.s64.s32 %rd30, %r43;\n" -" mul.wide.s32 %rd31, %r43, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f39, [%rd32+0];\n" -" .loc 16 73 0\n" -" mov.f32 %f40, 0f3f800000; \n" -" ld.shared.f32 %f41, [%rd32+16];\n" -" sub.ftz.f32 %f42, %f40, %f41;\n" -" .loc 16 76 0\n" -" and.b32 %r44, %r41, 1073741823;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" mov.s32 %r48, 0;\n" -" mov.u32 %r49, %r48;\n" -" mov.s32 %r50, 0;\n" -" mov.u32 %r51, %r50;\n" -" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r45,%r47,%r49,%r51}];\n" -" mov.f32 %f47, %f43;\n" -" mov.f32 %f48, %f44;\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" cvt.rzi.ftz.s32.f32 %r52, %f50;\n" -" sub.ftz.f32 %f51, %f26, %f48;\n" -" sub.ftz.f32 %f52, %f25, %f47;\n" -" sub.ftz.f32 %f53, %f27, %f49;\n" -" mul.ftz.f32 %f54, %f51, %f51;\n" -" fma.rn.ftz.f32 %f55, %f52, %f52, %f54;\n" -" fma.rn.ftz.f32 %f56, %f53, %f53, %f55;\n" -" add.s32 %r53, %r52, %r40;\n" -" cvt.s64.s32 %rd33, %r53;\n" -" mul.wide.s32 %rd34, %r53, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f57, [%rd35+8];\n" -" setp.gt.ftz.f32 %p4, %f57, %f56;\n" -" @!%p4 bra $Lt_0_26114;\n" -" rcp.approx.ftz.f32 %f58, %f56;\n" -" ld.global.f32 %f59, [%rd35+12];\n" -" setp.lt.ftz.f32 %p5, %f56, %f59;\n" -" @!%p5 bra $Lt_0_24322;\n" -" .loc 16 92 0\n" -" rsqrt.approx.ftz.f32 %f60, %f56;\n" -" mul.ftz.f32 %f61, %f58, %f60;\n" -" mov.f32 %f62, %f61;\n" -" .loc 16 93 0\n" -" mul.ftz.f32 %f63, %f61, %f61;\n" -" mov.f32 %f64, %f63;\n" -" .loc 16 94 0\n" -" mul.ftz.f32 %f65, %f63, %f39;\n" -" ld.global.v2.f32 {%f66,%f67}, [%rd35+0];\n" -" mul.ftz.f32 %f68, %f66, %f61;\n" -" sub.ftz.f32 %f69, %f68, %f67;\n" -" mul.ftz.f32 %f70, %f65, %f69;\n" -" bra.uni $Lt_0_24066;\n" -"$Lt_0_24322:\n" -" .loc 16 96 0\n" -" mov.f32 %f70, 0f00000000; \n" -"$Lt_0_24066:\n" -" ld.param.f32 %f71, [__cudaparm_kernel_pair_cut_coulsq];\n" -" setp.gt.ftz.f32 %p6, %f71, %f56;\n" -" @!%p6 bra $Lt_0_24834;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f72, %f58;\n" -" ld.param.f32 %f73, [__cudaparm_kernel_pair_g_ewald];\n" -" mul.ftz.f32 %f74, %f73, %f72;\n" -" mul.ftz.f32 %f75, %f74, %f74;\n" -" neg.ftz.f32 %f76, %f75;\n" -" mov.f32 %f77, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f78, %f76, %f77;\n" -" ex2.approx.ftz.f32 %f79, %f78;\n" -" .loc 16 103 0\n" -" mov.f32 %f80, 0f3f800000; \n" -" mov.f32 %f81, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f82, %f81, %f74, %f80;\n" -" rcp.approx.ftz.f32 %f83, %f82;\n" -" mov.f32 %f84, 0f3e827906; \n" -" mov.f32 %f85, 0fbe91a98e; \n" -" mov.f32 %f86, 0f3fb5f0e3; \n" -" mov.f32 %f87, 0fbfba00e3; \n" -" mov.f32 %f88, 0f3f87dc22; \n" -" fma.rn.ftz.f32 %f89, %f88, %f83, %f87;\n" -" fma.rn.ftz.f32 %f90, %f83, %f89, %f86;\n" -" fma.rn.ftz.f32 %f91, %f83, %f90, %f85;\n" -" fma.rn.ftz.f32 %f92, %f83, %f91, %f84;\n" -" mul.ftz.f32 %f93, %f83, %f92;\n" -" mul.ftz.f32 %f94, %f79, %f93;\n" -" mov.f32 %f95, %f94;\n" -" .loc 16 104 0\n" -" mov.u32 %r54, %r44;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f96,%f97,%f98,%f99},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f100, %f96;\n" -" ld.param.f32 %f101, [__cudaparm_kernel_pair_qqrd2e];\n" -" mul.ftz.f32 %f102, %f101, %f33;\n" -" mul.ftz.f32 %f103, %f102, %f100;\n" -" div.approx.ftz.f32 %f104, %f103, %f72;\n" -" mov.f32 %f105, %f104;\n" -" .loc 16 105 0\n" -" mov.f32 %f106, 0f3f906ebb; \n" -" mul.ftz.f32 %f107, %f74, %f106;\n" -" fma.rn.ftz.f32 %f108, %f79, %f107, %f94;\n" -" sub.ftz.f32 %f109, %f108, %f42;\n" -" mul.ftz.f32 %f110, %f104, %f109;\n" -" bra.uni $Lt_0_24578;\n" -"$Lt_0_24834:\n" -" .loc 16 107 0\n" -" mov.f32 %f110, 0f00000000; \n" -"$Lt_0_24578:\n" -" .loc 16 111 0\n" -" add.ftz.f32 %f111, %f110, %f70;\n" -" mul.ftz.f32 %f112, %f111, %f58;\n" -" fma.rn.ftz.f32 %f36, %f52, %f112, %f36;\n" -" .loc 16 112 0\n" -" fma.rn.ftz.f32 %f35, %f51, %f112, %f35;\n" -" .loc 16 113 0\n" -" fma.rn.ftz.f32 %f34, %f53, %f112, %f34;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p7, %r61, %r62;\n" -" @%p7 bra $Lt_0_25602;\n" -" .loc 16 116 0\n" -" mov.f32 %f113, %f105;\n" -" mov.f32 %f114, %f95;\n" -" sub.ftz.f32 %f115, %f114, %f42;\n" -" fma.rn.ftz.f32 %f116, %f113, %f115, %f37;\n" -" selp.f32 %f37, %f116, %f37, %p6;\n" -" @!%p5 bra $Lt_0_25602;\n" -" .loc 16 120 0\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" ld.global.v4.f32 {%f117,%f118,%f119,_}, [%rd37+0];\n" -" mov.f32 %f120, %f64;\n" -" mov.f32 %f121, %f62;\n" -" mul.ftz.f32 %f122, %f117, %f121;\n" -" sub.ftz.f32 %f123, %f122, %f118;\n" -" mul.ftz.f32 %f124, %f120, %f123;\n" -" sub.ftz.f32 %f125, %f124, %f119;\n" -" fma.rn.ftz.f32 %f38, %f39, %f125, %f38;\n" -"$Lt_0_25602:\n" -"$Lt_0_25090:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p8, %r63, %r64;\n" -" @%p8 bra $Lt_0_26114;\n" -" .loc 16 124 0\n" -" mov.f32 %f126, %f10;\n" -" mul.ftz.f32 %f127, %f52, %f52;\n" -" fma.rn.ftz.f32 %f128, %f112, %f127, %f126;\n" -" mov.f32 %f10, %f128;\n" -" .loc 16 125 0\n" -" mov.f32 %f129, %f12;\n" -" fma.rn.ftz.f32 %f130, %f112, %f54, %f129;\n" -" mov.f32 %f12, %f130;\n" -" .loc 16 126 0\n" -" mov.f32 %f131, %f14;\n" -" mul.ftz.f32 %f132, %f53, %f53;\n" -" fma.rn.ftz.f32 %f133, %f112, %f132, %f131;\n" -" mov.f32 %f14, %f133;\n" -" .loc 16 127 0\n" -" mov.f32 %f134, %f16;\n" -" mul.ftz.f32 %f135, %f51, %f52;\n" -" fma.rn.ftz.f32 %f136, %f112, %f135, %f134;\n" -" mov.f32 %f16, %f136;\n" -" .loc 16 128 0\n" -" mov.f32 %f137, %f18;\n" -" mul.ftz.f32 %f138, %f52, %f53;\n" -" fma.rn.ftz.f32 %f139, %f112, %f138, %f137;\n" -" mov.f32 %f18, %f139;\n" -" .loc 16 129 0\n" -" mul.ftz.f32 %f140, %f51, %f53;\n" -" fma.rn.ftz.f32 %f19, %f112, %f140, %f19;\n" -" mov.f32 %f20, %f19;\n" -"$Lt_0_26114:\n" -"$Lt_0_23554:\n" -" .loc 16 68 0\n" -" mul.lo.u64 %rd38, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd38;\n" -" setp.lt.u64 %p9, %rd20, %rd19;\n" -" @%p9 bra $Lt_0_23298;\n" -" bra.uni $Lt_0_22786;\n" -"$Lt_0_32514:\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -"$Lt_0_22786:\n" -" mov.u32 %r65, 1;\n" -" setp.le.s32 %p10, %r1, %r65;\n" -" @%p10 bra $Lt_0_28930;\n" -" .loc 16 134 0\n" -" mov.u64 %rd39, __cuda___cuda_local_var_32635_55_non_const_red_acc144;\n" -" cvt.s64.s32 %rd40, %r2;\n" -" mul.wide.s32 %rd41, %r2, 4;\n" -" add.u64 %rd42, %rd39, %rd41;\n" -" mov.f32 %f141, %f36;\n" -" st.shared.f32 [%rd42+0], %f141;\n" -" mov.f32 %f142, %f35;\n" -" st.shared.f32 [%rd42+512], %f142;\n" -" mov.f32 %f143, %f34;\n" -" st.shared.f32 [%rd42+1024], %f143;\n" -" mov.f32 %f144, %f38;\n" -" st.shared.f32 [%rd42+1536], %f144;\n" -" mov.f32 %f145, %f37;\n" -" st.shared.f32 [%rd42+2048], %f145;\n" -" shr.s32 %r66, %r1, 31;\n" -" mov.s32 %r67, 1;\n" -" and.b32 %r68, %r66, %r67;\n" -" add.s32 %r69, %r68, %r1;\n" -" shr.s32 %r70, %r69, 1;\n" -" mov.s32 %r71, %r70;\n" -" mov.u32 %r72, 0;\n" -" setp.ne.u32 %p11, %r70, %r72;\n" -" @!%p11 bra $Lt_0_27394;\n" -"$Lt_0_27906:\n" -" setp.ge.u32 %p12, %r14, %r71;\n" -" @%p12 bra $Lt_0_28162;\n" -" add.u32 %r73, %r2, %r71;\n" -" cvt.u64.u32 %rd43, %r73;\n" -" mul.wide.u32 %rd44, %r73, 4;\n" -" add.u64 %rd45, %rd39, %rd44;\n" -" ld.shared.f32 %f146, [%rd45+0];\n" -" add.ftz.f32 %f141, %f146, %f141;\n" -" st.shared.f32 [%rd42+0], %f141;\n" -" ld.shared.f32 %f147, [%rd45+512];\n" -" add.ftz.f32 %f142, %f147, %f142;\n" -" st.shared.f32 [%rd42+512], %f142;\n" -" ld.shared.f32 %f148, [%rd45+1024];\n" -" add.ftz.f32 %f143, %f148, %f143;\n" -" st.shared.f32 [%rd42+1024], %f143;\n" -" ld.shared.f32 %f149, [%rd45+1536];\n" -" add.ftz.f32 %f144, %f149, %f144;\n" -" st.shared.f32 [%rd42+1536], %f144;\n" -" ld.shared.f32 %f150, [%rd45+2048];\n" -" add.ftz.f32 %f145, %f150, %f145;\n" -" st.shared.f32 [%rd42+2048], %f145;\n" -"$Lt_0_28162:\n" -" shr.u32 %r71, %r71, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p13, %r71, %r74;\n" -" @%p13 bra $Lt_0_27906;\n" -"$Lt_0_27394:\n" -" mov.f32 %f36, %f141;\n" -" mov.f32 %f35, %f142;\n" -" mov.f32 %f34, %f143;\n" -" mov.f32 %f38, %f144;\n" -" mov.f32 %f37, %f145;\n" -" ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r76, 0;\n" -" setp.le.s32 %p14, %r75, %r76;\n" -" @%p14 bra $Lt_0_28930;\n" -" mov.f32 %f141, %f10;\n" -" st.shared.f32 [%rd42+0], %f141;\n" -" mov.f32 %f142, %f12;\n" -" st.shared.f32 [%rd42+512], %f142;\n" -" mov.f32 %f143, %f14;\n" -" st.shared.f32 [%rd42+1024], %f143;\n" -" mov.f32 %f144, %f16;\n" -" st.shared.f32 [%rd42+1536], %f144;\n" -" mov.f32 %f145, %f18;\n" -" st.shared.f32 [%rd42+2048], %f145;\n" -" mov.f32 %f151, %f19;\n" -" st.shared.f32 [%rd42+2560], %f151;\n" -" mov.s32 %r77, %r70;\n" -" @!%p11 bra $Lt_0_29442;\n" -"$Lt_0_29954:\n" -" setp.ge.u32 %p15, %r14, %r77;\n" -" @%p15 bra $Lt_0_30210;\n" -" add.u32 %r78, %r2, %r77;\n" -" cvt.u64.u32 %rd46, %r78;\n" -" mul.wide.u32 %rd47, %r78, 4;\n" -" add.u64 %rd48, %rd39, %rd47;\n" -" ld.shared.f32 %f152, [%rd48+0];\n" -" add.ftz.f32 %f141, %f152, %f141;\n" -" st.shared.f32 [%rd42+0], %f141;\n" -" ld.shared.f32 %f153, [%rd48+512];\n" -" add.ftz.f32 %f142, %f153, %f142;\n" -" st.shared.f32 [%rd42+512], %f142;\n" -" ld.shared.f32 %f154, [%rd48+1024];\n" -" add.ftz.f32 %f143, %f154, %f143;\n" -" st.shared.f32 [%rd42+1024], %f143;\n" -" ld.shared.f32 %f155, [%rd48+1536];\n" -" add.ftz.f32 %f144, %f155, %f144;\n" -" st.shared.f32 [%rd42+1536], %f144;\n" -" ld.shared.f32 %f156, [%rd48+2048];\n" -" add.ftz.f32 %f145, %f156, %f145;\n" -" st.shared.f32 [%rd42+2048], %f145;\n" -" ld.shared.f32 %f157, [%rd48+2560];\n" -" add.ftz.f32 %f151, %f157, %f151;\n" -" st.shared.f32 [%rd42+2560], %f151;\n" -"$Lt_0_30210:\n" -" shr.u32 %r77, %r77, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p16, %r77, %r79;\n" -" @%p16 bra $Lt_0_29954;\n" -"$Lt_0_29442:\n" -" mov.f32 %f10, %f141;\n" -" mov.f32 %f12, %f142;\n" -" mov.f32 %f14, %f143;\n" -" mov.f32 %f16, %f144;\n" -" mov.f32 %f18, %f145;\n" -" mov.f32 %f20, %f151;\n" -"$Lt_0_28930:\n" -"$Lt_0_26882:\n" -" mov.u32 %r80, 0;\n" -" setp.ne.s32 %p17, %r14, %r80;\n" -" @%p17 bra $Lt_0_30978;\n" -" ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd50, %rd49, %rd3;\n" -" ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r82, 0;\n" -" setp.le.s32 %p18, %r81, %r82;\n" -" @%p18 bra $Lt_0_31490;\n" -" st.global.f32 [%rd50+0], %f38;\n" -" cvt.s64.s32 %rd51, %r9;\n" -" mul.wide.s32 %rd52, %r9, 4;\n" -" add.u64 %rd53, %rd52, %rd50;\n" -" st.global.f32 [%rd53+0], %f37;\n" -" add.u64 %rd50, %rd52, %rd53;\n" -"$Lt_0_31490:\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p19, %r83, %r84;\n" -" @%p19 bra $Lt_0_32002;\n" -" mov.f32 %f158, %f10;\n" -" st.global.f32 [%rd50+0], %f158;\n" -" cvt.s64.s32 %rd54, %r9;\n" -" mul.wide.s32 %rd55, %r9, 4;\n" -" add.u64 %rd56, %rd55, %rd50;\n" -" mov.f32 %f159, %f12;\n" -" st.global.f32 [%rd56+0], %f159;\n" -" add.u64 %rd57, %rd55, %rd56;\n" -" mov.f32 %f160, %f14;\n" -" st.global.f32 [%rd57+0], %f160;\n" -" add.u64 %rd58, %rd55, %rd57;\n" -" mov.f32 %f161, %f16;\n" -" st.global.f32 [%rd58+0], %f161;\n" -" add.u64 %rd50, %rd55, %rd58;\n" -" mov.f32 %f162, %f18;\n" -" st.global.f32 [%rd50+0], %f162;\n" -" mov.f32 %f163, %f20;\n" -" add.u64 %rd59, %rd55, %rd50;\n" -" st.global.f32 [%rd59+0], %f163;\n" -"$Lt_0_32002:\n" -" ld.param.u64 %rd60, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd61, %rd2, 16;\n" -" add.u64 %rd62, %rd60, %rd61;\n" -" mov.f32 %f164, %f165;\n" -" st.global.v4.f32 [%rd62+0], {%f36,%f35,%f34,%f164};\n" -"$Lt_0_30978:\n" -"$Lt_0_21762:\n" -" .loc 16 137 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_fast_q_,\n" -" .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_fast_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<88>;\n" -" .reg .u64 %rd<76>;\n" -" .reg .f32 %f<170>;\n" -" .reg .pred %p<24>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32654_33_non_const_sp_lj3320[32];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32652_34_non_const_lj13360[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32653_34_non_const_lj35296[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32749_55_non_const_red_acc7232[3072];\n" -" .loc 16 147 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 7;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_24066;\n" -" .loc 16 155 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32654_33_non_const_sp_lj3320;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_24066:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32654_33_non_const_sp_lj3320;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_24578;\n" -" .loc 16 157 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32652_34_non_const_lj13360;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_25090;\n" -" .loc 16 159 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32653_34_non_const_lj35296;\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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_25090:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32653_34_non_const_lj35296;\n" -"$Lt_1_24578:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32653_34_non_const_lj35296;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32652_34_non_const_lj13360;\n" -" .loc 16 168 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 170 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_34818;\n" -" .loc 16 175 0\n" -" cvt.s64.s32 %rd17, %r12;\n" -" mul.wide.s32 %rd18, %r12, 4;\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd20, %rd18, %rd19;\n" -" ld.global.s32 %r14, [%rd20+0];\n" -" ld.param.s32 %r15, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd21, %r15;\n" -" mul.wide.s32 %rd22, %r15, 4;\n" -" add.u64 %rd23, %rd22, %rd20;\n" -" ld.global.s32 %r16, [%rd23+0];\n" -" sub.s32 %r17, %r6, 1;\n" -" and.b32 %r18, %r17, %r1;\n" -" cvt.s64.s32 %rd24, %r18;\n" -" mul.wide.s32 %rd25, %r18, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd26, %rd19;\n" -" @%p5 bra $Lt_1_26370;\n" -" cvt.s32.s64 %r19, %rd21;\n" -" mul.lo.s32 %r20, %r19, %r6;\n" -" mov.s32 %r21, %r20;\n" -" mul.lo.s32 %r22, %r17, %r12;\n" -" add.s32 %r23, %r19, %r22;\n" -" cvt.s64.s32 %rd27, %r23;\n" -" mul.wide.s32 %rd28, %r23, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r24, %r17, %r16;\n" -" cvt.s64.s32 %rd30, %r24;\n" -" div.s32 %r25, %r16, %r6;\n" -" mul.lo.s32 %r26, %r20, %r25;\n" -" cvt.s64.s32 %rd31, %r26;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_26114;\n" -"$Lt_1_26370:\n" -" add.u64 %rd36, %rd22, %rd23;\n" -" ld.global.s32 %r27, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r27;\n" -" mul.wide.s32 %rd38, %r27, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r16;\n" -" mul.wide.s32 %rd41, %r16, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r21, %r6;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_26114:\n" -" .loc 16 178 0\n" -" mov.u32 %r28, %r14;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" .loc 16 179 0\n" -" mov.u32 %r35, %r14;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" mov.s32 %r38, 0;\n" -" mov.u32 %r39, %r38;\n" -" mov.s32 %r40, 0;\n" -" mov.u32 %r41, %r40;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r35,%r37,%r39,%r41}];\n" -" mov.f32 %f34, %f30;\n" -" setp.ge.u64 %p6, %rd35, %rd34;\n" -" @%p6 bra $Lt_1_36354;\n" -" cvt.rzi.ftz.s32.f32 %r42, %f29;\n" -" cvt.s64.s32 %rd42, %r21;\n" -" mul.lo.s32 %r43, %r42, 11;\n" -" cvt.rn.f32.s32 %f35, %r43;\n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -"$Lt_1_27138:\n" -" .loc 16 184 0\n" -" ld.global.s32 %r44, [%rd35+0];\n" -" .loc 16 187 0\n" -" shr.s32 %r45, %r44, 30;\n" -" and.b32 %r46, %r45, 3;\n" -" cvt.s64.s32 %rd43, %r46;\n" -" mul.wide.s32 %rd44, %r46, 4;\n" -" add.u64 %rd45, %rd1, %rd44;\n" -" ld.shared.f32 %f41, [%rd45+0];\n" -" .loc 16 188 0\n" -" mov.f32 %f42, 0f3f800000; \n" -" ld.shared.f32 %f43, [%rd45+16];\n" -" sub.ftz.f32 %f44, %f42, %f43;\n" -" .loc 16 191 0\n" -" and.b32 %r47, %r44, 1073741823;\n" -" mov.u32 %r48, %r47;\n" -" mov.s32 %r49, 0;\n" -" mov.u32 %r50, %r49;\n" -" mov.s32 %r51, 0;\n" -" mov.u32 %r52, %r51;\n" -" mov.s32 %r53, 0;\n" -" mov.u32 %r54, %r53;\n" -" tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r48,%r50,%r52,%r54}];\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" mov.f32 %f51, %f47;\n" -" mov.f32 %f52, %f48;\n" -" sub.ftz.f32 %f53, %f27, %f50;\n" -" sub.ftz.f32 %f54, %f26, %f49;\n" -" sub.ftz.f32 %f55, %f28, %f51;\n" -" mul.ftz.f32 %f56, %f53, %f53;\n" -" fma.rn.ftz.f32 %f57, %f54, %f54, %f56;\n" -" fma.rn.ftz.f32 %f58, %f55, %f55, %f57;\n" -" add.ftz.f32 %f59, %f35, %f52;\n" -" cvt.rzi.ftz.s32.f32 %r55, %f59;\n" -" cvt.s64.s32 %rd46, %r55;\n" -" mul.wide.s32 %rd47, %r55, 16;\n" -" add.u64 %rd48, %rd47, %rd7;\n" -" ld.shared.f32 %f60, [%rd48+8];\n" -" setp.gt.ftz.f32 %p7, %f60, %f58;\n" -" @!%p7 bra $Lt_1_29954;\n" -" rcp.approx.ftz.f32 %f61, %f58;\n" -" ld.shared.f32 %f62, [%rd48+12];\n" -" setp.lt.ftz.f32 %p8, %f58, %f62;\n" -" @!%p8 bra $Lt_1_28162;\n" -" .loc 16 206 0\n" -" rsqrt.approx.ftz.f32 %f63, %f58;\n" -" mul.ftz.f32 %f64, %f61, %f63;\n" -" mov.f32 %f65, %f64;\n" -" .loc 16 207 0\n" -" mul.ftz.f32 %f66, %f64, %f64;\n" -" mov.f32 %f67, %f66;\n" -" .loc 16 208 0\n" -" mul.ftz.f32 %f68, %f66, %f41;\n" -" ld.shared.v2.f32 {%f69,%f70}, [%rd48+0];\n" -" mul.ftz.f32 %f71, %f69, %f64;\n" -" sub.ftz.f32 %f72, %f71, %f70;\n" -" mul.ftz.f32 %f73, %f68, %f72;\n" -" bra.uni $Lt_1_27906;\n" -"$Lt_1_28162:\n" -" .loc 16 210 0\n" -" mov.f32 %f73, 0f00000000; \n" -"$Lt_1_27906:\n" -" ld.param.f32 %f74, [__cudaparm_kernel_pair_fast_cut_coulsq];\n" -" setp.gt.ftz.f32 %p9, %f74, %f58;\n" -" @!%p9 bra $Lt_1_28674;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f75, %f61;\n" -" ld.param.f32 %f76, [__cudaparm_kernel_pair_fast_g_ewald];\n" -" mul.ftz.f32 %f77, %f76, %f75;\n" -" mul.ftz.f32 %f78, %f77, %f77;\n" -" neg.ftz.f32 %f79, %f78;\n" -" mov.f32 %f80, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f81, %f79, %f80;\n" -" ex2.approx.ftz.f32 %f82, %f81;\n" -" .loc 16 217 0\n" -" mov.f32 %f83, 0f3f800000; \n" -" mov.f32 %f84, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f85, %f84, %f77, %f83;\n" -" rcp.approx.ftz.f32 %f86, %f85;\n" -" mov.f32 %f87, 0f3e827906; \n" -" mov.f32 %f88, 0fbe91a98e; \n" -" mov.f32 %f89, 0f3fb5f0e3; \n" -" mov.f32 %f90, 0fbfba00e3; \n" -" mov.f32 %f91, 0f3f87dc22; \n" -" fma.rn.ftz.f32 %f92, %f91, %f86, %f90;\n" -" fma.rn.ftz.f32 %f93, %f86, %f92, %f89;\n" -" fma.rn.ftz.f32 %f94, %f86, %f93, %f88;\n" -" fma.rn.ftz.f32 %f95, %f86, %f94, %f87;\n" -" mul.ftz.f32 %f96, %f86, %f95;\n" -" mul.ftz.f32 %f97, %f82, %f96;\n" -" mov.f32 %f98, %f97;\n" -" .loc 16 218 0\n" -" mov.u32 %r56, %r47;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" mov.s32 %r61, 0;\n" -" mov.u32 %r62, %r61;\n" -" tex.1d.v4.f32.s32 {%f99,%f100,%f101,%f102},[q_tex,{%r56,%r58,%r60,%r62}];\n" -" mov.f32 %f103, %f99;\n" -" ld.param.f32 %f104, [__cudaparm_kernel_pair_fast_qqrd2e];\n" -" mul.ftz.f32 %f105, %f104, %f34;\n" -" mul.ftz.f32 %f106, %f105, %f103;\n" -" div.approx.ftz.f32 %f107, %f106, %f75;\n" -" mov.f32 %f108, %f107;\n" -" .loc 16 219 0\n" -" mov.f32 %f109, 0f3f906ebb; \n" -" mul.ftz.f32 %f110, %f77, %f109;\n" -" fma.rn.ftz.f32 %f111, %f82, %f110, %f97;\n" -" sub.ftz.f32 %f112, %f111, %f44;\n" -" mul.ftz.f32 %f113, %f107, %f112;\n" -" bra.uni $Lt_1_28418;\n" -"$Lt_1_28674:\n" -" .loc 16 221 0\n" -" mov.f32 %f113, 0f00000000; \n" -"$Lt_1_28418:\n" -" .loc 16 225 0\n" -" add.ftz.f32 %f114, %f113, %f73;\n" -" mul.ftz.f32 %f115, %f114, %f61;\n" -" fma.rn.ftz.f32 %f38, %f54, %f115, %f38;\n" -" .loc 16 226 0\n" -" fma.rn.ftz.f32 %f37, %f53, %f115, %f37;\n" -" .loc 16 227 0\n" -" fma.rn.ftz.f32 %f36, %f55, %f115, %f36;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p10, %r63, %r64;\n" -" @%p10 bra $Lt_1_29442;\n" -" .loc 16 230 0\n" -" mov.f32 %f116, %f108;\n" -" mov.f32 %f117, %f98;\n" -" sub.ftz.f32 %f118, %f117, %f44;\n" -" fma.rn.ftz.f32 %f119, %f116, %f118, %f39;\n" -" selp.f32 %f39, %f119, %f39, %p9;\n" -" @!%p8 bra $Lt_1_29442;\n" -" .loc 16 233 0\n" -" add.u64 %rd49, %rd47, %rd13;\n" -" mov.f32 %f120, %f67;\n" -" ld.shared.v4.f32 {%f121,%f122,%f123,_}, [%rd49+0];\n" -" mov.f32 %f124, %f65;\n" -" mul.ftz.f32 %f125, %f121, %f124;\n" -" sub.ftz.f32 %f126, %f125, %f122;\n" -" mul.ftz.f32 %f127, %f120, %f126;\n" -" .loc 16 234 0\n" -" sub.ftz.f32 %f128, %f127, %f123;\n" -" fma.rn.ftz.f32 %f40, %f41, %f128, %f40;\n" -"$Lt_1_29442:\n" -"$Lt_1_28930:\n" -" ld.param.s32 %r65, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r66, 0;\n" -" setp.le.s32 %p11, %r65, %r66;\n" -" @%p11 bra $Lt_1_29954;\n" -" .loc 16 238 0\n" -" mov.f32 %f129, %f11;\n" -" mul.ftz.f32 %f130, %f54, %f54;\n" -" fma.rn.ftz.f32 %f131, %f115, %f130, %f129;\n" -" mov.f32 %f11, %f131;\n" -" .loc 16 239 0\n" -" mov.f32 %f132, %f13;\n" -" fma.rn.ftz.f32 %f133, %f115, %f56, %f132;\n" -" mov.f32 %f13, %f133;\n" -" .loc 16 240 0\n" -" mov.f32 %f134, %f15;\n" -" mul.ftz.f32 %f135, %f55, %f55;\n" -" fma.rn.ftz.f32 %f136, %f115, %f135, %f134;\n" -" mov.f32 %f15, %f136;\n" -" .loc 16 241 0\n" -" mov.f32 %f137, %f17;\n" -" mul.ftz.f32 %f138, %f53, %f54;\n" -" fma.rn.ftz.f32 %f139, %f115, %f138, %f137;\n" -" mov.f32 %f17, %f139;\n" -" .loc 16 242 0\n" -" mov.f32 %f140, %f19;\n" -" mul.ftz.f32 %f141, %f54, %f55;\n" -" fma.rn.ftz.f32 %f142, %f115, %f141, %f140;\n" -" mov.f32 %f19, %f142;\n" -" .loc 16 243 0\n" -" mul.ftz.f32 %f143, %f53, %f55;\n" -" fma.rn.ftz.f32 %f20, %f115, %f143, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_29954:\n" -"$Lt_1_27394:\n" -" .loc 16 183 0\n" -" mul.lo.u64 %rd50, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd50;\n" -" setp.lt.u64 %p12, %rd35, %rd34;\n" -" @%p12 bra $Lt_1_27138;\n" -" bra.uni $Lt_1_26626;\n" -"$Lt_1_36354:\n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -"$Lt_1_26626:\n" -" mov.u32 %r67, 1;\n" -" setp.le.s32 %p13, %r6, %r67;\n" -" @%p13 bra $Lt_1_32770;\n" -" .loc 16 248 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_32749_55_non_const_red_acc7232;\n" -" cvt.s64.s32 %rd52, %r1;\n" -" mul.wide.s32 %rd53, %r1, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f144, %f38;\n" -" st.shared.f32 [%rd54+0], %f144;\n" -" mov.f32 %f145, %f37;\n" -" st.shared.f32 [%rd54+512], %f145;\n" -" mov.f32 %f146, %f36;\n" -" st.shared.f32 [%rd54+1024], %f146;\n" -" mov.f32 %f147, %f40;\n" -" st.shared.f32 [%rd54+1536], %f147;\n" -" mov.f32 %f148, %f39;\n" -" st.shared.f32 [%rd54+2048], %f148;\n" -" shr.s32 %r68, %r6, 31;\n" -" mov.s32 %r69, 1;\n" -" and.b32 %r70, %r68, %r69;\n" -" add.s32 %r71, %r70, %r6;\n" -" shr.s32 %r72, %r71, 1;\n" -" mov.s32 %r73, %r72;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p14, %r72, %r74;\n" -" @!%p14 bra $Lt_1_31234;\n" -"$Lt_1_31746:\n" -" setp.ge.u32 %p15, %r18, %r73;\n" -" @%p15 bra $Lt_1_32002;\n" -" add.u32 %r75, %r1, %r73;\n" -" cvt.u64.u32 %rd55, %r75;\n" -" mul.wide.u32 %rd56, %r75, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f149, [%rd57+0];\n" -" add.ftz.f32 %f144, %f149, %f144;\n" -" st.shared.f32 [%rd54+0], %f144;\n" -" ld.shared.f32 %f150, [%rd57+512];\n" -" add.ftz.f32 %f145, %f150, %f145;\n" -" st.shared.f32 [%rd54+512], %f145;\n" -" ld.shared.f32 %f151, [%rd57+1024];\n" -" add.ftz.f32 %f146, %f151, %f146;\n" -" st.shared.f32 [%rd54+1024], %f146;\n" -" ld.shared.f32 %f152, [%rd57+1536];\n" -" add.ftz.f32 %f147, %f152, %f147;\n" -" st.shared.f32 [%rd54+1536], %f147;\n" -" ld.shared.f32 %f153, [%rd57+2048];\n" -" add.ftz.f32 %f148, %f153, %f148;\n" -" st.shared.f32 [%rd54+2048], %f148;\n" -"$Lt_1_32002:\n" -" shr.u32 %r73, %r73, 1;\n" -" mov.u32 %r76, 0;\n" -" setp.ne.u32 %p16, %r73, %r76;\n" -" @%p16 bra $Lt_1_31746;\n" -"$Lt_1_31234:\n" -" mov.f32 %f38, %f144;\n" -" mov.f32 %f37, %f145;\n" -" mov.f32 %f36, %f146;\n" -" mov.f32 %f40, %f147;\n" -" mov.f32 %f39, %f148;\n" -" ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r78, 0;\n" -" setp.le.s32 %p17, %r77, %r78;\n" -" @%p17 bra $Lt_1_32770;\n" -" mov.f32 %f144, %f11;\n" -" st.shared.f32 [%rd54+0], %f144;\n" -" mov.f32 %f145, %f13;\n" -" st.shared.f32 [%rd54+512], %f145;\n" -" mov.f32 %f146, %f15;\n" -" st.shared.f32 [%rd54+1024], %f146;\n" -" mov.f32 %f147, %f17;\n" -" st.shared.f32 [%rd54+1536], %f147;\n" -" mov.f32 %f148, %f19;\n" -" st.shared.f32 [%rd54+2048], %f148;\n" -" mov.f32 %f154, %f20;\n" -" st.shared.f32 [%rd54+2560], %f154;\n" -" mov.s32 %r79, %r72;\n" -" @!%p14 bra $Lt_1_33282;\n" -"$Lt_1_33794:\n" -" setp.ge.u32 %p18, %r18, %r79;\n" -" @%p18 bra $Lt_1_34050;\n" -" add.u32 %r80, %r1, %r79;\n" -" cvt.u64.u32 %rd58, %r80;\n" -" mul.wide.u32 %rd59, %r80, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f155, [%rd60+0];\n" -" add.ftz.f32 %f144, %f155, %f144;\n" -" st.shared.f32 [%rd54+0], %f144;\n" -" ld.shared.f32 %f156, [%rd60+512];\n" -" add.ftz.f32 %f145, %f156, %f145;\n" -" st.shared.f32 [%rd54+512], %f145;\n" -" ld.shared.f32 %f157, [%rd60+1024];\n" -" add.ftz.f32 %f146, %f157, %f146;\n" -" st.shared.f32 [%rd54+1024], %f146;\n" -" ld.shared.f32 %f158, [%rd60+1536];\n" -" add.ftz.f32 %f147, %f158, %f147;\n" -" st.shared.f32 [%rd54+1536], %f147;\n" -" ld.shared.f32 %f159, [%rd60+2048];\n" -" add.ftz.f32 %f148, %f159, %f148;\n" -" st.shared.f32 [%rd54+2048], %f148;\n" -" ld.shared.f32 %f160, [%rd60+2560];\n" -" add.ftz.f32 %f154, %f160, %f154;\n" -" st.shared.f32 [%rd54+2560], %f154;\n" -"$Lt_1_34050:\n" -" shr.u32 %r79, %r79, 1;\n" -" mov.u32 %r81, 0;\n" -" setp.ne.u32 %p19, %r79, %r81;\n" -" @%p19 bra $Lt_1_33794;\n" -"$Lt_1_33282:\n" -" mov.f32 %f11, %f144;\n" -" mov.f32 %f13, %f145;\n" -" mov.f32 %f15, %f146;\n" -" mov.f32 %f17, %f147;\n" -" mov.f32 %f19, %f148;\n" -" mov.f32 %f21, %f154;\n" -"$Lt_1_32770:\n" -"$Lt_1_30722:\n" -" mov.u32 %r82, 0;\n" -" setp.ne.s32 %p20, %r18, %r82;\n" -" @%p20 bra $Lt_1_34818;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd62, %rd61, %rd18;\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p21, %r83, %r84;\n" -" @%p21 bra $Lt_1_35330;\n" -" st.global.f32 [%rd62+0], %f40;\n" -" cvt.s64.s32 %rd63, %r13;\n" -" mul.wide.s32 %rd64, %r13, 4;\n" -" add.u64 %rd65, %rd64, %rd62;\n" -" st.global.f32 [%rd65+0], %f39;\n" -" add.u64 %rd62, %rd64, %rd65;\n" -"$Lt_1_35330:\n" -" ld.param.s32 %r85, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r86, 0;\n" -" setp.le.s32 %p22, %r85, %r86;\n" -" @%p22 bra $Lt_1_35842;\n" -" mov.f32 %f161, %f11;\n" -" st.global.f32 [%rd62+0], %f161;\n" -" cvt.s64.s32 %rd66, %r13;\n" -" mul.wide.s32 %rd67, %r13, 4;\n" -" add.u64 %rd68, %rd67, %rd62;\n" -" mov.f32 %f162, %f13;\n" -" st.global.f32 [%rd68+0], %f162;\n" -" add.u64 %rd69, %rd67, %rd68;\n" -" mov.f32 %f163, %f15;\n" -" st.global.f32 [%rd69+0], %f163;\n" -" add.u64 %rd70, %rd67, %rd69;\n" -" mov.f32 %f164, %f17;\n" -" st.global.f32 [%rd70+0], %f164;\n" -" add.u64 %rd62, %rd67, %rd70;\n" -" mov.f32 %f165, %f19;\n" -" st.global.f32 [%rd62+0], %f165;\n" -" mov.f32 %f166, %f21;\n" -" add.u64 %rd71, %rd67, %rd62;\n" -" st.global.f32 [%rd71+0], %f166;\n" -"$Lt_1_35842:\n" -" ld.param.u64 %rd72, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd73, %rd17, 16;\n" -" add.u64 %rd74, %rd72, %rd73;\n" -" mov.f32 %f167, %f168;\n" -" st.global.v4.f32 [%rd74+0], {%f38,%f37,%f36,%f167};\n" -"$Lt_1_34818:\n" -"$Lt_1_25602:\n" -" .loc 16 251 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/lj_coul.ptx b/lib/gpu/lj_coul.ptx deleted file mode 100644 index d1135ffe03..0000000000 --- a/lib/gpu/lj_coul.ptx +++ /dev/null @@ -1,1056 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009d12_00000000-9_lal_lj_coul.cpp3.i (/home/sjplimp/ccBI#.MygJKm) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009d12_00000000-8_lal_lj_coul.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_lj_coul.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_q_, - .param .u64 __cudaparm_kernel_pair_cutsq, - .param .f32 __cudaparm_kernel_pair_qqrd2e, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<86>; - .reg .u64 %rd<67>; - .reg .f32 %f<130>; - .reg .pred %p<21>; - .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32]; - .shared .align 4 .b8 __cuda___cuda_local_var_32626_55_non_const_red_acc144[3072]; - // __cuda_local_var_32553_10_non_const_f = 48 - // __cuda_local_var_32555_9_non_const_virial = 16 - // __cuda_local_var_32589_43_non_const_r6inv = 40 - .loc 16 36 0 -$LDWbegin_kernel_pair: - .loc 16 41 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 42 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 43 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 44 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4}; - .loc 16 45 0 - ld.global.f32 %f5, [%rd1+16]; - .loc 16 46 0 - ld.global.f32 %f6, [%rd1+20]; - .loc 16 47 0 - ld.global.f32 %f7, [%rd1+24]; - .loc 16 48 0 - ld.global.f32 %f8, [%rd1+28]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8}; - .loc 16 56 0 - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - mov.f32 %f17, 0f00000000; // 0 - mov.f32 %f18, %f17; - mov.f32 %f19, 0f00000000; // 0 - mov.f32 %f20, %f19; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_30210; - .loc 16 61 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd5, %rd3, %rd4; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - sub.s32 %r13, %r1, 1; - and.b32 %r14, %r13, %r2; - cvt.s64.s32 %rd9, %r14; - mul.wide.s32 %rd10, %r14, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd4; - @%p2 bra $Lt_0_21762; - cvt.s32.s64 %r15, %rd6; - mul.lo.s32 %r16, %r15, %r1; - mov.s32 %r17, %r16; - mul.lo.s32 %r18, %r13, %r8; - add.s32 %r19, %r15, %r18; - cvt.s64.s32 %rd12, %r19; - mul.wide.s32 %rd13, %r19, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r20, %r13, %r12; - cvt.s64.s32 %rd15, %r20; - div.s32 %r21, %r12, %r1; - mul.lo.s32 %r22, %r16, %r21; - cvt.s64.s32 %rd16, %r22; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_21506; -$Lt_0_21762: - add.u64 %rd21, %rd7, %rd8; - ld.global.s32 %r23, [%rd21+0]; - cvt.s64.s32 %rd22, %r23; - mul.wide.s32 %rd23, %r23, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r12; - mul.wide.s32 %rd26, %r12, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r17, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_21506: - .loc 16 64 0 - mov.u32 %r24, %r10; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f25, %f21; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - .loc 16 65 0 - mov.u32 %r31, %r10; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}]; - mov.f32 %f33, %f29; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_31746; - cvt.rzi.ftz.s32.f32 %r38, %f28; - cvt.s64.s32 %rd27, %r17; - ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r40, %r39, %r38; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_cutsq]; - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112; -$Lt_0_22530: - // Loop body line 65, nesting depth: 1, estimated iterations: unknown - .loc 16 69 0 - ld.global.s32 %r41, [%rd20+0]; - .loc 16 72 0 - shr.s32 %r42, %r41, 30; - and.b32 %r43, %r42, 3; - cvt.s64.s32 %rd30, %r43; - mul.wide.s32 %rd31, %r43, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f39, [%rd32+0]; - .loc 16 76 0 - and.b32 %r44, %r41, 1073741823; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - mov.s32 %r48, 0; - mov.u32 %r49, %r48; - mov.s32 %r50, 0; - mov.u32 %r51, %r50; - tex.1d.v4.f32.s32 {%f40,%f41,%f42,%f43},[pos_tex,{%r45,%r47,%r49,%r51}]; - mov.f32 %f44, %f40; - mov.f32 %f45, %f41; - mov.f32 %f46, %f42; - mov.f32 %f47, %f43; - cvt.rzi.ftz.s32.f32 %r52, %f47; - sub.ftz.f32 %f48, %f26, %f45; - sub.ftz.f32 %f49, %f25, %f44; - sub.ftz.f32 %f50, %f27, %f46; - mul.ftz.f32 %f51, %f48, %f48; - fma.rn.ftz.f32 %f52, %f49, %f49, %f51; - add.s32 %r53, %r52, %r40; - cvt.s64.s32 %rd33, %r53; - fma.rn.ftz.f32 %f53, %f50, %f50, %f52; - mul.wide.s32 %rd34, %r53, 4; - add.u64 %rd35, %rd28, %rd34; - ld.global.f32 %f54, [%rd35+0]; - setp.gt.ftz.f32 %p4, %f54, %f53; - @!%p4 bra $Lt_0_25346; - mul.lo.u64 %rd36, %rd33, 16; - rcp.approx.ftz.f32 %f55, %f53; - ld.param.u64 %rd37, [__cudaparm_kernel_pair_lj1]; - add.u64 %rd38, %rd37, %rd36; - ld.global.f32 %f56, [%rd38+8]; - setp.lt.ftz.f32 %p5, %f53, %f56; - @!%p5 bra $Lt_0_23554; - .loc 16 91 0 - mul.ftz.f32 %f57, %f55, %f55; - mul.ftz.f32 %f58, %f55, %f57; - mov.f32 %f59, %f58; - .loc 16 92 0 - mul.ftz.f32 %f60, %f58, %f39; - ld.global.v2.f32 {%f61,%f62}, [%rd38+0]; - mul.ftz.f32 %f63, %f61, %f58; - sub.ftz.f32 %f64, %f63, %f62; - mul.ftz.f32 %f65, %f60, %f64; - bra.uni $Lt_0_23298; -$Lt_0_23554: - .loc 16 94 0 - mov.f32 %f65, 0f00000000; // 0 -$Lt_0_23298: - ld.global.f32 %f66, [%rd38+12]; - setp.gt.ftz.f32 %p6, %f66, %f53; - @!%p6 bra $Lt_0_24066; - .loc 16 97 0 - mov.u32 %r54, %r44; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f67,%f68,%f69,%f70},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f71, %f67; - ld.shared.f32 %f72, [%rd32+16]; - ld.param.f32 %f73, [__cudaparm_kernel_pair_qqrd2e]; - mul.ftz.f32 %f74, %f73, %f33; - mul.ftz.f32 %f75, %f71, %f74; - rsqrt.approx.ftz.f32 %f76, %f53; - mul.ftz.f32 %f77, %f75, %f76; - mul.ftz.f32 %f78, %f72, %f77; - bra.uni $Lt_0_23810; -$Lt_0_24066: - .loc 16 99 0 - mov.f32 %f78, 0f00000000; // 0 -$Lt_0_23810: - .loc 16 103 0 - add.ftz.f32 %f79, %f78, %f65; - mul.ftz.f32 %f80, %f79, %f55; - fma.rn.ftz.f32 %f36, %f49, %f80, %f36; - .loc 16 104 0 - fma.rn.ftz.f32 %f35, %f48, %f80, %f35; - .loc 16 105 0 - fma.rn.ftz.f32 %f34, %f50, %f80, %f34; - ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p7, %r61, %r62; - @%p7 bra $Lt_0_24834; - .loc 16 108 0 - add.ftz.f32 %f37, %f78, %f37; - @!%p5 bra $Lt_0_24834; - .loc 16 111 0 - ld.param.u64 %rd39, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd40, %rd39, %rd36; - mov.f32 %f81, %f59; - ld.global.v4.f32 {%f82,%f83,%f84,_}, [%rd40+0]; - mul.ftz.f32 %f85, %f82, %f81; - sub.ftz.f32 %f86, %f85, %f83; - mul.ftz.f32 %f87, %f81, %f86; - sub.ftz.f32 %f88, %f87, %f84; - fma.rn.ftz.f32 %f38, %f39, %f88, %f38; -$Lt_0_24834: -$Lt_0_24322: - ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p8, %r63, %r64; - @%p8 bra $Lt_0_25346; - .loc 16 115 0 - mov.f32 %f89, %f10; - mul.ftz.f32 %f90, %f49, %f49; - fma.rn.ftz.f32 %f91, %f80, %f90, %f89; - mov.f32 %f10, %f91; - .loc 16 116 0 - mov.f32 %f92, %f12; - fma.rn.ftz.f32 %f93, %f80, %f51, %f92; - mov.f32 %f12, %f93; - .loc 16 117 0 - mov.f32 %f94, %f14; - mul.ftz.f32 %f95, %f50, %f50; - fma.rn.ftz.f32 %f96, %f80, %f95, %f94; - mov.f32 %f14, %f96; - .loc 16 118 0 - mov.f32 %f97, %f16; - mul.ftz.f32 %f98, %f48, %f49; - fma.rn.ftz.f32 %f99, %f80, %f98, %f97; - mov.f32 %f16, %f99; - .loc 16 119 0 - mov.f32 %f100, %f18; - mul.ftz.f32 %f101, %f49, %f50; - fma.rn.ftz.f32 %f102, %f80, %f101, %f100; - mov.f32 %f18, %f102; - .loc 16 120 0 - mul.ftz.f32 %f103, %f48, %f50; - fma.rn.ftz.f32 %f19, %f80, %f103, %f19; - mov.f32 %f20, %f19; -$Lt_0_25346: -$Lt_0_22786: - .loc 16 68 0 - mul.lo.u64 %rd41, %rd27, 4; - add.u64 %rd20, %rd20, %rd41; - setp.lt.u64 %p9, %rd20, %rd19; - @%p9 bra $Lt_0_22530; - bra.uni $Lt_0_22018; -$Lt_0_31746: - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 -$Lt_0_22018: - mov.u32 %r65, 1; - setp.le.s32 %p10, %r1, %r65; - @%p10 bra $Lt_0_28162; - .loc 16 125 0 - mov.u64 %rd42, __cuda___cuda_local_var_32626_55_non_const_red_acc144; - cvt.s64.s32 %rd43, %r2; - mul.wide.s32 %rd44, %r2, 4; - add.u64 %rd45, %rd42, %rd44; - mov.f32 %f104, %f36; - st.shared.f32 [%rd45+0], %f104; - mov.f32 %f105, %f35; - st.shared.f32 [%rd45+512], %f105; - mov.f32 %f106, %f34; - st.shared.f32 [%rd45+1024], %f106; - mov.f32 %f107, %f38; - st.shared.f32 [%rd45+1536], %f107; - mov.f32 %f108, %f37; - st.shared.f32 [%rd45+2048], %f108; - shr.s32 %r66, %r1, 31; - mov.s32 %r67, 1; - and.b32 %r68, %r66, %r67; - add.s32 %r69, %r68, %r1; - shr.s32 %r70, %r69, 1; - mov.s32 %r71, %r70; - mov.u32 %r72, 0; - setp.ne.u32 %p11, %r70, %r72; - @!%p11 bra $Lt_0_26626; -$Lt_0_27138: - setp.ge.u32 %p12, %r14, %r71; - @%p12 bra $Lt_0_27394; - add.u32 %r73, %r2, %r71; - cvt.u64.u32 %rd46, %r73; - mul.wide.u32 %rd47, %r73, 4; - add.u64 %rd48, %rd42, %rd47; - ld.shared.f32 %f109, [%rd48+0]; - add.ftz.f32 %f104, %f109, %f104; - st.shared.f32 [%rd45+0], %f104; - ld.shared.f32 %f110, [%rd48+512]; - add.ftz.f32 %f105, %f110, %f105; - st.shared.f32 [%rd45+512], %f105; - ld.shared.f32 %f111, [%rd48+1024]; - add.ftz.f32 %f106, %f111, %f106; - st.shared.f32 [%rd45+1024], %f106; - ld.shared.f32 %f112, [%rd48+1536]; - add.ftz.f32 %f107, %f112, %f107; - st.shared.f32 [%rd45+1536], %f107; - ld.shared.f32 %f113, [%rd48+2048]; - add.ftz.f32 %f108, %f113, %f108; - st.shared.f32 [%rd45+2048], %f108; -$Lt_0_27394: - shr.u32 %r71, %r71, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p13, %r71, %r74; - @%p13 bra $Lt_0_27138; -$Lt_0_26626: - mov.f32 %f36, %f104; - mov.f32 %f35, %f105; - mov.f32 %f34, %f106; - mov.f32 %f38, %f107; - mov.f32 %f37, %f108; - ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r76, 0; - setp.le.s32 %p14, %r75, %r76; - @%p14 bra $Lt_0_28162; - mov.f32 %f104, %f10; - st.shared.f32 [%rd45+0], %f104; - mov.f32 %f105, %f12; - st.shared.f32 [%rd45+512], %f105; - mov.f32 %f106, %f14; - st.shared.f32 [%rd45+1024], %f106; - mov.f32 %f107, %f16; - st.shared.f32 [%rd45+1536], %f107; - mov.f32 %f108, %f18; - st.shared.f32 [%rd45+2048], %f108; - mov.f32 %f114, %f19; - st.shared.f32 [%rd45+2560], %f114; - mov.s32 %r77, %r70; - @!%p11 bra $Lt_0_28674; -$Lt_0_29186: - setp.ge.u32 %p15, %r14, %r77; - @%p15 bra $Lt_0_29442; - add.u32 %r78, %r2, %r77; - cvt.u64.u32 %rd49, %r78; - mul.wide.u32 %rd50, %r78, 4; - add.u64 %rd51, %rd42, %rd50; - ld.shared.f32 %f115, [%rd51+0]; - add.ftz.f32 %f104, %f115, %f104; - st.shared.f32 [%rd45+0], %f104; - ld.shared.f32 %f116, [%rd51+512]; - add.ftz.f32 %f105, %f116, %f105; - st.shared.f32 [%rd45+512], %f105; - ld.shared.f32 %f117, [%rd51+1024]; - add.ftz.f32 %f106, %f117, %f106; - st.shared.f32 [%rd45+1024], %f106; - ld.shared.f32 %f118, [%rd51+1536]; - add.ftz.f32 %f107, %f118, %f107; - st.shared.f32 [%rd45+1536], %f107; - ld.shared.f32 %f119, [%rd51+2048]; - add.ftz.f32 %f108, %f119, %f108; - st.shared.f32 [%rd45+2048], %f108; - ld.shared.f32 %f120, [%rd51+2560]; - add.ftz.f32 %f114, %f120, %f114; - st.shared.f32 [%rd45+2560], %f114; -$Lt_0_29442: - shr.u32 %r77, %r77, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p16, %r77, %r79; - @%p16 bra $Lt_0_29186; -$Lt_0_28674: - mov.f32 %f10, %f104; - mov.f32 %f12, %f105; - mov.f32 %f14, %f106; - mov.f32 %f16, %f107; - mov.f32 %f18, %f108; - mov.f32 %f20, %f114; -$Lt_0_28162: -$Lt_0_26114: - mov.u32 %r80, 0; - setp.ne.s32 %p17, %r14, %r80; - @%p17 bra $Lt_0_30210; - ld.param.u64 %rd52, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd53, %rd52, %rd3; - ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r82, 0; - setp.le.s32 %p18, %r81, %r82; - @%p18 bra $Lt_0_30722; - st.global.f32 [%rd53+0], %f38; - cvt.s64.s32 %rd54, %r9; - mul.wide.s32 %rd55, %r9, 4; - add.u64 %rd56, %rd55, %rd53; - st.global.f32 [%rd56+0], %f37; - add.u64 %rd53, %rd55, %rd56; -$Lt_0_30722: - ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r84, 0; - setp.le.s32 %p19, %r83, %r84; - @%p19 bra $Lt_0_31234; - mov.f32 %f121, %f10; - st.global.f32 [%rd53+0], %f121; - cvt.s64.s32 %rd57, %r9; - mul.wide.s32 %rd58, %r9, 4; - add.u64 %rd59, %rd58, %rd53; - mov.f32 %f122, %f12; - st.global.f32 [%rd59+0], %f122; - add.u64 %rd60, %rd58, %rd59; - mov.f32 %f123, %f14; - st.global.f32 [%rd60+0], %f123; - add.u64 %rd61, %rd58, %rd60; - mov.f32 %f124, %f16; - st.global.f32 [%rd61+0], %f124; - add.u64 %rd53, %rd58, %rd61; - mov.f32 %f125, %f18; - st.global.f32 [%rd53+0], %f125; - mov.f32 %f126, %f20; - add.u64 %rd62, %rd58, %rd53; - st.global.f32 [%rd62+0], %f126; -$Lt_0_31234: - ld.param.u64 %rd63, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd64, %rd2, 16; - add.u64 %rd65, %rd63, %rd64; - mov.f32 %f127, %f128; - st.global.v4.f32 [%rd65+0], {%f36,%f35,%f34,%f127}; -$Lt_0_30210: -$Lt_0_20994: - .loc 16 128 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_fast_q_, - .param .u64 __cudaparm_kernel_pair_fast__cutsq, - .param .f32 __cudaparm_kernel_pair_fast_qqrd2e, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<88>; - .reg .u64 %rd<83>; - .reg .f32 %f<134>; - .reg .pred %p<24>; - .shared .align 4 .b8 __cuda___cuda_local_var_32646_33_non_const_sp_lj3320[32]; - .shared .align 16 .b8 __cuda___cuda_local_var_32643_34_non_const_lj13360[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32645_33_non_const_cutsq5296[484]; - .shared .align 16 .b8 __cuda___cuda_local_var_32644_34_non_const_lj35792[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32733_55_non_const_red_acc7728[3072]; - // __cuda_local_var_32658_10_non_const_f = 48 - // __cuda_local_var_32660_9_non_const_virial = 16 - // __cuda_local_var_32696_43_non_const_r6inv = 40 - .loc 16 138 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 7; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_23298; - .loc 16 147 0 - mov.u64 %rd1, __cuda___cuda_local_var_32646_33_non_const_sp_lj3320; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_23298: - mov.u64 %rd1, __cuda___cuda_local_var_32646_33_non_const_sp_lj3320; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_23810; - .loc 16 149 0 - mov.u64 %rd7, __cuda___cuda_local_var_32643_34_non_const_lj13360; - mov.u64 %rd8, __cuda___cuda_local_var_32645_33_non_const_cutsq5296; - cvt.s64.s32 %rd9, %r1; - mul.wide.s32 %rd10, %r1, 16; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd12, %rd11, %rd10; - add.u64 %rd13, %rd10, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd12+0]; - st.shared.v4.f32 [%rd13+0], {%f2,%f3,%f4,%f5}; - .loc 16 150 0 - mul.wide.s32 %rd14, %r1, 4; - ld.param.u64 %rd15, [__cudaparm_kernel_pair_fast__cutsq]; - add.u64 %rd16, %rd15, %rd14; - ld.global.f32 %f6, [%rd16+0]; - add.u64 %rd17, %rd14, %rd8; - st.shared.f32 [%rd17+0], %f6; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_24322; - .loc 16 152 0 - mov.u64 %rd18, __cuda___cuda_local_var_32644_34_non_const_lj35792; - ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd20, %rd19, %rd10; - add.u64 %rd21, %rd10, %rd18; - ld.global.v4.f32 {%f7,%f8,%f9,%f10}, [%rd20+0]; - st.shared.v4.f32 [%rd21+0], {%f7,%f8,%f9,%f10}; -$Lt_1_24322: - mov.u64 %rd18, __cuda___cuda_local_var_32644_34_non_const_lj35792; -$Lt_1_23810: - mov.u64 %rd7, __cuda___cuda_local_var_32643_34_non_const_lj13360; - mov.u64 %rd8, __cuda___cuda_local_var_32645_33_non_const_cutsq5296; - mov.u64 %rd18, __cuda___cuda_local_var_32644_34_non_const_lj35792; - .loc 16 161 0 - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - mov.f32 %f17, 0f00000000; // 0 - mov.f32 %f18, %f17; - mov.f32 %f19, 0f00000000; // 0 - mov.f32 %f20, %f19; - mov.f32 %f21, 0f00000000; // 0 - mov.f32 %f22, %f21; - .loc 16 163 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_34050; - .loc 16 168 0 - cvt.s64.s32 %rd22, %r12; - mul.wide.s32 %rd23, %r12, 4; - ld.param.u64 %rd24, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd25, %rd23, %rd24; - ld.global.s32 %r14, [%rd25+0]; - ld.param.s32 %r15, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd26, %r15; - mul.wide.s32 %rd27, %r15, 4; - add.u64 %rd28, %rd27, %rd25; - ld.global.s32 %r16, [%rd28+0]; - sub.s32 %r17, %r6, 1; - and.b32 %r18, %r17, %r1; - cvt.s64.s32 %rd29, %r18; - mul.wide.s32 %rd30, %r18, 4; - ld.param.u64 %rd31, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd31, %rd24; - @%p5 bra $Lt_1_25602; - cvt.s32.s64 %r19, %rd26; - mul.lo.s32 %r20, %r19, %r6; - mov.s32 %r21, %r20; - mul.lo.s32 %r22, %r17, %r12; - add.s32 %r23, %r19, %r22; - cvt.s64.s32 %rd32, %r23; - mul.wide.s32 %rd33, %r23, 4; - add.u64 %rd34, %rd28, %rd33; - and.b32 %r24, %r17, %r16; - cvt.s64.s32 %rd35, %r24; - div.s32 %r25, %r16, %r6; - mul.lo.s32 %r26, %r20, %r25; - cvt.s64.s32 %rd36, %r26; - add.u64 %rd37, %rd35, %rd36; - mul.lo.u64 %rd38, %rd37, 4; - add.u64 %rd39, %rd34, %rd38; - add.u64 %rd40, %rd30, %rd34; - bra.uni $Lt_1_25346; -$Lt_1_25602: - add.u64 %rd41, %rd27, %rd28; - ld.global.s32 %r27, [%rd41+0]; - cvt.s64.s32 %rd42, %r27; - mul.wide.s32 %rd43, %r27, 4; - add.u64 %rd44, %rd31, %rd43; - cvt.s64.s32 %rd45, %r16; - mul.wide.s32 %rd46, %r16, 4; - add.u64 %rd39, %rd44, %rd46; - mov.s32 %r21, %r6; - add.u64 %rd40, %rd30, %rd44; -$Lt_1_25346: - .loc 16 171 0 - mov.u32 %r28, %r14; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f23,%f24,%f25,%f26},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - mov.f32 %f30, %f26; - .loc 16 172 0 - mov.u32 %r35, %r14; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - mov.s32 %r38, 0; - mov.u32 %r39, %r38; - mov.s32 %r40, 0; - mov.u32 %r41, %r40; - tex.1d.v4.f32.s32 {%f31,%f32,%f33,%f34},[q_tex,{%r35,%r37,%r39,%r41}]; - mov.f32 %f35, %f31; - setp.ge.u64 %p6, %rd40, %rd39; - @%p6 bra $Lt_1_35586; - cvt.rzi.ftz.s32.f32 %r42, %f30; - cvt.s64.s32 %rd47, %r21; - mul.lo.s32 %r43, %r42, 11; - cvt.rn.f32.s32 %f36, %r43; - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 - mov.f32 %f41, 0f00000000; // 0 -$Lt_1_26370: - // Loop body line 172, nesting depth: 1, estimated iterations: unknown - .loc 16 177 0 - ld.global.s32 %r44, [%rd40+0]; - .loc 16 180 0 - shr.s32 %r45, %r44, 30; - and.b32 %r46, %r45, 3; - cvt.s64.s32 %rd48, %r46; - mul.wide.s32 %rd49, %r46, 4; - add.u64 %rd50, %rd1, %rd49; - ld.shared.f32 %f42, [%rd50+0]; - .loc 16 184 0 - and.b32 %r47, %r44, 1073741823; - mov.u32 %r48, %r47; - mov.s32 %r49, 0; - mov.u32 %r50, %r49; - mov.s32 %r51, 0; - mov.u32 %r52, %r51; - mov.s32 %r53, 0; - mov.u32 %r54, %r53; - tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r48,%r50,%r52,%r54}]; - mov.f32 %f47, %f43; - mov.f32 %f48, %f44; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - sub.ftz.f32 %f51, %f28, %f48; - sub.ftz.f32 %f52, %f27, %f47; - sub.ftz.f32 %f53, %f29, %f49; - mul.ftz.f32 %f54, %f51, %f51; - fma.rn.ftz.f32 %f55, %f52, %f52, %f54; - fma.rn.ftz.f32 %f56, %f53, %f53, %f55; - add.ftz.f32 %f57, %f36, %f50; - cvt.rzi.ftz.s32.f32 %r55, %f57; - cvt.s64.s32 %rd51, %r55; - mul.wide.s32 %rd52, %r55, 4; - add.u64 %rd53, %rd8, %rd52; - ld.shared.f32 %f58, [%rd53+0]; - setp.gt.ftz.f32 %p7, %f58, %f56; - @!%p7 bra $Lt_1_29186; - rcp.approx.ftz.f32 %f59, %f56; - mul.lo.u64 %rd54, %rd51, 16; - add.u64 %rd55, %rd54, %rd7; - ld.shared.f32 %f60, [%rd55+8]; - setp.lt.ftz.f32 %p8, %f56, %f60; - @!%p8 bra $Lt_1_27394; - .loc 16 198 0 - mul.ftz.f32 %f61, %f59, %f59; - mul.ftz.f32 %f62, %f59, %f61; - mov.f32 %f63, %f62; - .loc 16 199 0 - mul.ftz.f32 %f64, %f62, %f42; - ld.shared.v2.f32 {%f65,%f66}, [%rd55+0]; - mul.ftz.f32 %f67, %f65, %f62; - sub.ftz.f32 %f68, %f67, %f66; - mul.ftz.f32 %f69, %f64, %f68; - bra.uni $Lt_1_27138; -$Lt_1_27394: - .loc 16 201 0 - mov.f32 %f69, 0f00000000; // 0 -$Lt_1_27138: - ld.shared.f32 %f70, [%rd55+12]; - setp.gt.ftz.f32 %p9, %f70, %f56; - @!%p9 bra $Lt_1_27906; - .loc 16 204 0 - mov.u32 %r56, %r47; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - mov.s32 %r61, 0; - mov.u32 %r62, %r61; - tex.1d.v4.f32.s32 {%f71,%f72,%f73,%f74},[q_tex,{%r56,%r58,%r60,%r62}]; - mov.f32 %f75, %f71; - ld.shared.f32 %f76, [%rd50+16]; - ld.param.f32 %f77, [__cudaparm_kernel_pair_fast_qqrd2e]; - mul.ftz.f32 %f78, %f77, %f35; - mul.ftz.f32 %f79, %f75, %f78; - rsqrt.approx.ftz.f32 %f80, %f56; - mul.ftz.f32 %f81, %f79, %f80; - mul.ftz.f32 %f82, %f76, %f81; - bra.uni $Lt_1_27650; -$Lt_1_27906: - .loc 16 206 0 - mov.f32 %f82, 0f00000000; // 0 -$Lt_1_27650: - .loc 16 210 0 - add.ftz.f32 %f83, %f82, %f69; - mul.ftz.f32 %f84, %f83, %f59; - fma.rn.ftz.f32 %f39, %f52, %f84, %f39; - .loc 16 211 0 - fma.rn.ftz.f32 %f38, %f51, %f84, %f38; - .loc 16 212 0 - fma.rn.ftz.f32 %f37, %f53, %f84, %f37; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r64, 0; - setp.le.s32 %p10, %r63, %r64; - @%p10 bra $Lt_1_28674; - .loc 16 215 0 - add.ftz.f32 %f40, %f82, %f40; - @!%p8 bra $Lt_1_28674; - .loc 16 217 0 - add.u64 %rd56, %rd54, %rd18; - mov.f32 %f85, %f63; - ld.shared.v4.f32 {%f86,%f87,%f88,_}, [%rd56+0]; - mul.ftz.f32 %f89, %f86, %f85; - sub.ftz.f32 %f90, %f89, %f87; - mul.ftz.f32 %f91, %f85, %f90; - .loc 16 218 0 - sub.ftz.f32 %f92, %f91, %f88; - fma.rn.ftz.f32 %f41, %f42, %f92, %f41; -$Lt_1_28674: -$Lt_1_28162: - ld.param.s32 %r65, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r66, 0; - setp.le.s32 %p11, %r65, %r66; - @%p11 bra $Lt_1_29186; - .loc 16 222 0 - mov.f32 %f93, %f12; - mul.ftz.f32 %f94, %f52, %f52; - fma.rn.ftz.f32 %f95, %f84, %f94, %f93; - mov.f32 %f12, %f95; - .loc 16 223 0 - mov.f32 %f96, %f14; - fma.rn.ftz.f32 %f97, %f84, %f54, %f96; - mov.f32 %f14, %f97; - .loc 16 224 0 - mov.f32 %f98, %f16; - mul.ftz.f32 %f99, %f53, %f53; - fma.rn.ftz.f32 %f100, %f84, %f99, %f98; - mov.f32 %f16, %f100; - .loc 16 225 0 - mov.f32 %f101, %f18; - mul.ftz.f32 %f102, %f51, %f52; - fma.rn.ftz.f32 %f103, %f84, %f102, %f101; - mov.f32 %f18, %f103; - .loc 16 226 0 - mov.f32 %f104, %f20; - mul.ftz.f32 %f105, %f52, %f53; - fma.rn.ftz.f32 %f106, %f84, %f105, %f104; - mov.f32 %f20, %f106; - .loc 16 227 0 - mul.ftz.f32 %f107, %f51, %f53; - fma.rn.ftz.f32 %f21, %f84, %f107, %f21; - mov.f32 %f22, %f21; -$Lt_1_29186: -$Lt_1_26626: - .loc 16 176 0 - mul.lo.u64 %rd57, %rd47, 4; - add.u64 %rd40, %rd40, %rd57; - setp.lt.u64 %p12, %rd40, %rd39; - @%p12 bra $Lt_1_26370; - bra.uni $Lt_1_25858; -$Lt_1_35586: - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 - mov.f32 %f41, 0f00000000; // 0 -$Lt_1_25858: - mov.u32 %r67, 1; - setp.le.s32 %p13, %r6, %r67; - @%p13 bra $Lt_1_32002; - .loc 16 232 0 - mov.u64 %rd58, __cuda___cuda_local_var_32733_55_non_const_red_acc7728; - cvt.s64.s32 %rd59, %r1; - mul.wide.s32 %rd60, %r1, 4; - add.u64 %rd61, %rd58, %rd60; - mov.f32 %f108, %f39; - st.shared.f32 [%rd61+0], %f108; - mov.f32 %f109, %f38; - st.shared.f32 [%rd61+512], %f109; - mov.f32 %f110, %f37; - st.shared.f32 [%rd61+1024], %f110; - mov.f32 %f111, %f41; - st.shared.f32 [%rd61+1536], %f111; - mov.f32 %f112, %f40; - st.shared.f32 [%rd61+2048], %f112; - shr.s32 %r68, %r6, 31; - mov.s32 %r69, 1; - and.b32 %r70, %r68, %r69; - add.s32 %r71, %r70, %r6; - shr.s32 %r72, %r71, 1; - mov.s32 %r73, %r72; - mov.u32 %r74, 0; - setp.ne.u32 %p14, %r72, %r74; - @!%p14 bra $Lt_1_30466; -$Lt_1_30978: - setp.ge.u32 %p15, %r18, %r73; - @%p15 bra $Lt_1_31234; - add.u32 %r75, %r1, %r73; - cvt.u64.u32 %rd62, %r75; - mul.wide.u32 %rd63, %r75, 4; - add.u64 %rd64, %rd58, %rd63; - ld.shared.f32 %f113, [%rd64+0]; - add.ftz.f32 %f108, %f113, %f108; - st.shared.f32 [%rd61+0], %f108; - ld.shared.f32 %f114, [%rd64+512]; - add.ftz.f32 %f109, %f114, %f109; - st.shared.f32 [%rd61+512], %f109; - ld.shared.f32 %f115, [%rd64+1024]; - add.ftz.f32 %f110, %f115, %f110; - st.shared.f32 [%rd61+1024], %f110; - ld.shared.f32 %f116, [%rd64+1536]; - add.ftz.f32 %f111, %f116, %f111; - st.shared.f32 [%rd61+1536], %f111; - ld.shared.f32 %f117, [%rd64+2048]; - add.ftz.f32 %f112, %f117, %f112; - st.shared.f32 [%rd61+2048], %f112; -$Lt_1_31234: - shr.u32 %r73, %r73, 1; - mov.u32 %r76, 0; - setp.ne.u32 %p16, %r73, %r76; - @%p16 bra $Lt_1_30978; -$Lt_1_30466: - mov.f32 %f39, %f108; - mov.f32 %f38, %f109; - mov.f32 %f37, %f110; - mov.f32 %f41, %f111; - mov.f32 %f40, %f112; - ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r78, 0; - setp.le.s32 %p17, %r77, %r78; - @%p17 bra $Lt_1_32002; - mov.f32 %f108, %f12; - st.shared.f32 [%rd61+0], %f108; - mov.f32 %f109, %f14; - st.shared.f32 [%rd61+512], %f109; - mov.f32 %f110, %f16; - st.shared.f32 [%rd61+1024], %f110; - mov.f32 %f111, %f18; - st.shared.f32 [%rd61+1536], %f111; - mov.f32 %f112, %f20; - st.shared.f32 [%rd61+2048], %f112; - mov.f32 %f118, %f21; - st.shared.f32 [%rd61+2560], %f118; - mov.s32 %r79, %r72; - @!%p14 bra $Lt_1_32514; -$Lt_1_33026: - setp.ge.u32 %p18, %r18, %r79; - @%p18 bra $Lt_1_33282; - add.u32 %r80, %r1, %r79; - cvt.u64.u32 %rd65, %r80; - mul.wide.u32 %rd66, %r80, 4; - add.u64 %rd67, %rd58, %rd66; - ld.shared.f32 %f119, [%rd67+0]; - add.ftz.f32 %f108, %f119, %f108; - st.shared.f32 [%rd61+0], %f108; - ld.shared.f32 %f120, [%rd67+512]; - add.ftz.f32 %f109, %f120, %f109; - st.shared.f32 [%rd61+512], %f109; - ld.shared.f32 %f121, [%rd67+1024]; - add.ftz.f32 %f110, %f121, %f110; - st.shared.f32 [%rd61+1024], %f110; - ld.shared.f32 %f122, [%rd67+1536]; - add.ftz.f32 %f111, %f122, %f111; - st.shared.f32 [%rd61+1536], %f111; - ld.shared.f32 %f123, [%rd67+2048]; - add.ftz.f32 %f112, %f123, %f112; - st.shared.f32 [%rd61+2048], %f112; - ld.shared.f32 %f124, [%rd67+2560]; - add.ftz.f32 %f118, %f124, %f118; - st.shared.f32 [%rd61+2560], %f118; -$Lt_1_33282: - shr.u32 %r79, %r79, 1; - mov.u32 %r81, 0; - setp.ne.u32 %p19, %r79, %r81; - @%p19 bra $Lt_1_33026; -$Lt_1_32514: - mov.f32 %f12, %f108; - mov.f32 %f14, %f109; - mov.f32 %f16, %f110; - mov.f32 %f18, %f111; - mov.f32 %f20, %f112; - mov.f32 %f22, %f118; -$Lt_1_32002: -$Lt_1_29954: - mov.u32 %r82, 0; - setp.ne.s32 %p20, %r18, %r82; - @%p20 bra $Lt_1_34050; - ld.param.u64 %rd68, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd69, %rd68, %rd23; - ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r84, 0; - setp.le.s32 %p21, %r83, %r84; - @%p21 bra $Lt_1_34562; - st.global.f32 [%rd69+0], %f41; - cvt.s64.s32 %rd70, %r13; - mul.wide.s32 %rd71, %r13, 4; - add.u64 %rd72, %rd71, %rd69; - st.global.f32 [%rd72+0], %f40; - add.u64 %rd69, %rd71, %rd72; -$Lt_1_34562: - ld.param.s32 %r85, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r86, 0; - setp.le.s32 %p22, %r85, %r86; - @%p22 bra $Lt_1_35074; - mov.f32 %f125, %f12; - st.global.f32 [%rd69+0], %f125; - cvt.s64.s32 %rd73, %r13; - mul.wide.s32 %rd74, %r13, 4; - add.u64 %rd75, %rd74, %rd69; - mov.f32 %f126, %f14; - st.global.f32 [%rd75+0], %f126; - add.u64 %rd76, %rd74, %rd75; - mov.f32 %f127, %f16; - st.global.f32 [%rd76+0], %f127; - add.u64 %rd77, %rd74, %rd76; - mov.f32 %f128, %f18; - st.global.f32 [%rd77+0], %f128; - add.u64 %rd69, %rd74, %rd77; - mov.f32 %f129, %f20; - st.global.f32 [%rd69+0], %f129; - mov.f32 %f130, %f22; - add.u64 %rd78, %rd74, %rd69; - st.global.f32 [%rd78+0], %f130; -$Lt_1_35074: - ld.param.u64 %rd79, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd80, %rd22, 16; - add.u64 %rd81, %rd79, %rd80; - mov.f32 %f131, %f132; - st.global.v4.f32 [%rd81+0], {%f39,%f38,%f37,%f131}; -$Lt_1_34050: -$Lt_1_24834: - .loc 16 235 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/lj_coul_long.ptx b/lib/gpu/lj_coul_long.ptx deleted file mode 100644 index d824a1a1cf..0000000000 --- a/lib/gpu/lj_coul_long.ptx +++ /dev/null @@ -1,1123 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009d58_00000000-9_lal_lj_coul_long.cpp3.i (/home/sjplimp/ccBI#.SRe06h) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009d58_00000000-8_lal_lj_coul_long.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_lj_coul_long.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_q_, - .param .f32 __cudaparm_kernel_pair_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_qqrd2e, - .param .f32 __cudaparm_kernel_pair_g_ewald, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<86>; - .reg .u64 %rd<64>; - .reg .f32 %f<164>; - .reg .pred %p<21>; - .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32]; - .shared .align 4 .b8 __cuda___cuda_local_var_32633_55_non_const_red_acc144[3072]; - // __cuda_local_var_32553_10_non_const_f = 64 - // __cuda_local_var_32555_9_non_const_virial = 16 - // __cuda_local_var_32589_43_non_const_r6inv = 40 - // __cuda_local_var_32589_50_non_const_prefactor = 48 - // __cuda_local_var_32589_61_non_const__erfc = 44 - .loc 16 36 0 -$LDWbegin_kernel_pair: - .loc 16 41 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 42 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 43 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 44 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4}; - .loc 16 45 0 - ld.global.f32 %f5, [%rd1+16]; - .loc 16 46 0 - ld.global.f32 %f6, [%rd1+20]; - .loc 16 47 0 - ld.global.f32 %f7, [%rd1+24]; - .loc 16 48 0 - ld.global.f32 %f8, [%rd1+28]; - st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8}; - .loc 16 56 0 - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - mov.f32 %f17, 0f00000000; // 0 - mov.f32 %f18, %f17; - mov.f32 %f19, 0f00000000; // 0 - mov.f32 %f20, %f19; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_30978; - .loc 16 61 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd5, %rd3, %rd4; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - sub.s32 %r13, %r1, 1; - and.b32 %r14, %r13, %r2; - cvt.s64.s32 %rd9, %r14; - mul.wide.s32 %rd10, %r14, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd4; - @%p2 bra $Lt_0_22530; - cvt.s32.s64 %r15, %rd6; - mul.lo.s32 %r16, %r15, %r1; - mov.s32 %r17, %r16; - mul.lo.s32 %r18, %r13, %r8; - add.s32 %r19, %r15, %r18; - cvt.s64.s32 %rd12, %r19; - mul.wide.s32 %rd13, %r19, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r20, %r13, %r12; - cvt.s64.s32 %rd15, %r20; - div.s32 %r21, %r12, %r1; - mul.lo.s32 %r22, %r16, %r21; - cvt.s64.s32 %rd16, %r22; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_22274; -$Lt_0_22530: - add.u64 %rd21, %rd7, %rd8; - ld.global.s32 %r23, [%rd21+0]; - cvt.s64.s32 %rd22, %r23; - mul.wide.s32 %rd23, %r23, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r12; - mul.wide.s32 %rd26, %r12, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r17, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_22274: - .loc 16 64 0 - mov.u32 %r24, %r10; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f25, %f21; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - .loc 16 65 0 - mov.u32 %r31, %r10; - mov.s32 %r32, 0; - mov.u32 %r33, %r32; - mov.s32 %r34, 0; - mov.u32 %r35, %r34; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}]; - mov.f32 %f33, %f29; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_32514; - cvt.rzi.ftz.s32.f32 %r38, %f28; - cvt.s64.s32 %rd27, %r17; - ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r40, %r39, %r38; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112; -$Lt_0_23298: - // Loop body line 65, nesting depth: 1, estimated iterations: unknown - .loc 16 69 0 - ld.global.s32 %r41, [%rd20+0]; - .loc 16 72 0 - shr.s32 %r42, %r41, 30; - and.b32 %r43, %r42, 3; - cvt.s64.s32 %rd30, %r43; - mul.wide.s32 %rd31, %r43, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f39, [%rd32+0]; - .loc 16 73 0 - mov.f32 %f40, 0f3f800000; // 1 - ld.shared.f32 %f41, [%rd32+16]; - sub.ftz.f32 %f42, %f40, %f41; - .loc 16 76 0 - and.b32 %r44, %r41, 1073741823; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - mov.s32 %r48, 0; - mov.u32 %r49, %r48; - mov.s32 %r50, 0; - mov.u32 %r51, %r50; - tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r45,%r47,%r49,%r51}]; - mov.f32 %f47, %f43; - mov.f32 %f48, %f44; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - cvt.rzi.ftz.s32.f32 %r52, %f50; - sub.ftz.f32 %f51, %f26, %f48; - sub.ftz.f32 %f52, %f25, %f47; - sub.ftz.f32 %f53, %f27, %f49; - mul.ftz.f32 %f54, %f51, %f51; - fma.rn.ftz.f32 %f55, %f52, %f52, %f54; - fma.rn.ftz.f32 %f56, %f53, %f53, %f55; - add.s32 %r53, %r52, %r40; - cvt.s64.s32 %rd33, %r53; - mul.wide.s32 %rd34, %r53, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f57, [%rd35+8]; - setp.gt.ftz.f32 %p4, %f57, %f56; - @!%p4 bra $Lt_0_26114; - rcp.approx.ftz.f32 %f58, %f56; - ld.global.f32 %f59, [%rd35+12]; - setp.lt.ftz.f32 %p5, %f56, %f59; - @!%p5 bra $Lt_0_24322; - .loc 16 91 0 - mul.ftz.f32 %f60, %f58, %f58; - mul.ftz.f32 %f61, %f58, %f60; - mov.f32 %f62, %f61; - .loc 16 92 0 - mul.ftz.f32 %f63, %f61, %f39; - ld.global.v2.f32 {%f64,%f65}, [%rd35+0]; - mul.ftz.f32 %f66, %f64, %f61; - sub.ftz.f32 %f67, %f66, %f65; - mul.ftz.f32 %f68, %f63, %f67; - bra.uni $Lt_0_24066; -$Lt_0_24322: - .loc 16 94 0 - mov.f32 %f68, 0f00000000; // 0 -$Lt_0_24066: - ld.param.f32 %f69, [__cudaparm_kernel_pair_cut_coulsq]; - setp.gt.ftz.f32 %p6, %f69, %f56; - @!%p6 bra $Lt_0_24834; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f70, %f58; - ld.param.f32 %f71, [__cudaparm_kernel_pair_g_ewald]; - mul.ftz.f32 %f72, %f71, %f70; - mul.ftz.f32 %f73, %f72, %f72; - neg.ftz.f32 %f74, %f73; - mov.f32 %f75, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f76, %f74, %f75; - ex2.approx.ftz.f32 %f77, %f76; - .loc 16 101 0 - mov.f32 %f78, 0f3f800000; // 1 - mov.f32 %f79, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f80, %f79, %f72, %f78; - rcp.approx.ftz.f32 %f81, %f80; - mov.f32 %f82, 0f3e827906; // 0.25483 - mov.f32 %f83, 0fbe91a98e; // -0.284497 - mov.f32 %f84, 0f3fb5f0e3; // 1.42141 - mov.f32 %f85, 0fbfba00e3; // -1.45315 - mov.f32 %f86, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f87, %f86, %f81, %f85; - fma.rn.ftz.f32 %f88, %f81, %f87, %f84; - fma.rn.ftz.f32 %f89, %f81, %f88, %f83; - fma.rn.ftz.f32 %f90, %f81, %f89, %f82; - mul.ftz.f32 %f91, %f81, %f90; - mul.ftz.f32 %f92, %f77, %f91; - mov.f32 %f93, %f92; - .loc 16 102 0 - mov.u32 %r54, %r44; - mov.s32 %r55, 0; - mov.u32 %r56, %r55; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - tex.1d.v4.f32.s32 {%f94,%f95,%f96,%f97},[q_tex,{%r54,%r56,%r58,%r60}]; - mov.f32 %f98, %f94; - ld.param.f32 %f99, [__cudaparm_kernel_pair_qqrd2e]; - mul.ftz.f32 %f100, %f99, %f33; - mul.ftz.f32 %f101, %f100, %f98; - div.approx.ftz.f32 %f102, %f101, %f70; - mov.f32 %f103, %f102; - .loc 16 103 0 - mov.f32 %f104, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f105, %f72, %f104; - fma.rn.ftz.f32 %f106, %f77, %f105, %f92; - sub.ftz.f32 %f107, %f106, %f42; - mul.ftz.f32 %f108, %f102, %f107; - bra.uni $Lt_0_24578; -$Lt_0_24834: - .loc 16 105 0 - mov.f32 %f108, 0f00000000; // 0 -$Lt_0_24578: - .loc 16 109 0 - add.ftz.f32 %f109, %f108, %f68; - mul.ftz.f32 %f110, %f109, %f58; - fma.rn.ftz.f32 %f36, %f52, %f110, %f36; - .loc 16 110 0 - fma.rn.ftz.f32 %f35, %f51, %f110, %f35; - .loc 16 111 0 - fma.rn.ftz.f32 %f34, %f53, %f110, %f34; - ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r62, 0; - setp.le.s32 %p7, %r61, %r62; - @%p7 bra $Lt_0_25602; - .loc 16 114 0 - mov.f32 %f111, %f103; - mov.f32 %f112, %f93; - sub.ftz.f32 %f113, %f112, %f42; - fma.rn.ftz.f32 %f114, %f111, %f113, %f37; - selp.f32 %f37, %f114, %f37, %p6; - @!%p5 bra $Lt_0_25602; - .loc 16 118 0 - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - mov.f32 %f115, %f62; - ld.global.v4.f32 {%f116,%f117,%f118,_}, [%rd37+0]; - mul.ftz.f32 %f119, %f116, %f115; - sub.ftz.f32 %f120, %f119, %f117; - mul.ftz.f32 %f121, %f115, %f120; - sub.ftz.f32 %f122, %f121, %f118; - fma.rn.ftz.f32 %f38, %f39, %f122, %f38; -$Lt_0_25602: -$Lt_0_25090: - ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p8, %r63, %r64; - @%p8 bra $Lt_0_26114; - .loc 16 122 0 - mov.f32 %f123, %f10; - mul.ftz.f32 %f124, %f52, %f52; - fma.rn.ftz.f32 %f125, %f110, %f124, %f123; - mov.f32 %f10, %f125; - .loc 16 123 0 - mov.f32 %f126, %f12; - fma.rn.ftz.f32 %f127, %f110, %f54, %f126; - mov.f32 %f12, %f127; - .loc 16 124 0 - mov.f32 %f128, %f14; - mul.ftz.f32 %f129, %f53, %f53; - fma.rn.ftz.f32 %f130, %f110, %f129, %f128; - mov.f32 %f14, %f130; - .loc 16 125 0 - mov.f32 %f131, %f16; - mul.ftz.f32 %f132, %f51, %f52; - fma.rn.ftz.f32 %f133, %f110, %f132, %f131; - mov.f32 %f16, %f133; - .loc 16 126 0 - mov.f32 %f134, %f18; - mul.ftz.f32 %f135, %f52, %f53; - fma.rn.ftz.f32 %f136, %f110, %f135, %f134; - mov.f32 %f18, %f136; - .loc 16 127 0 - mul.ftz.f32 %f137, %f51, %f53; - fma.rn.ftz.f32 %f19, %f110, %f137, %f19; - mov.f32 %f20, %f19; -$Lt_0_26114: -$Lt_0_23554: - .loc 16 68 0 - mul.lo.u64 %rd38, %rd27, 4; - add.u64 %rd20, %rd20, %rd38; - setp.lt.u64 %p9, %rd20, %rd19; - @%p9 bra $Lt_0_23298; - bra.uni $Lt_0_22786; -$Lt_0_32514: - mov.f32 %f34, 0f00000000; // 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 -$Lt_0_22786: - mov.u32 %r65, 1; - setp.le.s32 %p10, %r1, %r65; - @%p10 bra $Lt_0_28930; - .loc 16 132 0 - mov.u64 %rd39, __cuda___cuda_local_var_32633_55_non_const_red_acc144; - cvt.s64.s32 %rd40, %r2; - mul.wide.s32 %rd41, %r2, 4; - add.u64 %rd42, %rd39, %rd41; - mov.f32 %f138, %f36; - st.shared.f32 [%rd42+0], %f138; - mov.f32 %f139, %f35; - st.shared.f32 [%rd42+512], %f139; - mov.f32 %f140, %f34; - st.shared.f32 [%rd42+1024], %f140; - mov.f32 %f141, %f38; - st.shared.f32 [%rd42+1536], %f141; - mov.f32 %f142, %f37; - st.shared.f32 [%rd42+2048], %f142; - shr.s32 %r66, %r1, 31; - mov.s32 %r67, 1; - and.b32 %r68, %r66, %r67; - add.s32 %r69, %r68, %r1; - shr.s32 %r70, %r69, 1; - mov.s32 %r71, %r70; - mov.u32 %r72, 0; - setp.ne.u32 %p11, %r70, %r72; - @!%p11 bra $Lt_0_27394; -$Lt_0_27906: - setp.ge.u32 %p12, %r14, %r71; - @%p12 bra $Lt_0_28162; - add.u32 %r73, %r2, %r71; - cvt.u64.u32 %rd43, %r73; - mul.wide.u32 %rd44, %r73, 4; - add.u64 %rd45, %rd39, %rd44; - ld.shared.f32 %f143, [%rd45+0]; - add.ftz.f32 %f138, %f143, %f138; - st.shared.f32 [%rd42+0], %f138; - ld.shared.f32 %f144, [%rd45+512]; - add.ftz.f32 %f139, %f144, %f139; - st.shared.f32 [%rd42+512], %f139; - ld.shared.f32 %f145, [%rd45+1024]; - add.ftz.f32 %f140, %f145, %f140; - st.shared.f32 [%rd42+1024], %f140; - ld.shared.f32 %f146, [%rd45+1536]; - add.ftz.f32 %f141, %f146, %f141; - st.shared.f32 [%rd42+1536], %f141; - ld.shared.f32 %f147, [%rd45+2048]; - add.ftz.f32 %f142, %f147, %f142; - st.shared.f32 [%rd42+2048], %f142; -$Lt_0_28162: - shr.u32 %r71, %r71, 1; - mov.u32 %r74, 0; - setp.ne.u32 %p13, %r71, %r74; - @%p13 bra $Lt_0_27906; -$Lt_0_27394: - mov.f32 %f36, %f138; - mov.f32 %f35, %f139; - mov.f32 %f34, %f140; - mov.f32 %f38, %f141; - mov.f32 %f37, %f142; - ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r76, 0; - setp.le.s32 %p14, %r75, %r76; - @%p14 bra $Lt_0_28930; - mov.f32 %f138, %f10; - st.shared.f32 [%rd42+0], %f138; - mov.f32 %f139, %f12; - st.shared.f32 [%rd42+512], %f139; - mov.f32 %f140, %f14; - st.shared.f32 [%rd42+1024], %f140; - mov.f32 %f141, %f16; - st.shared.f32 [%rd42+1536], %f141; - mov.f32 %f142, %f18; - st.shared.f32 [%rd42+2048], %f142; - mov.f32 %f148, %f19; - st.shared.f32 [%rd42+2560], %f148; - mov.s32 %r77, %r70; - @!%p11 bra $Lt_0_29442; -$Lt_0_29954: - setp.ge.u32 %p15, %r14, %r77; - @%p15 bra $Lt_0_30210; - add.u32 %r78, %r2, %r77; - cvt.u64.u32 %rd46, %r78; - mul.wide.u32 %rd47, %r78, 4; - add.u64 %rd48, %rd39, %rd47; - ld.shared.f32 %f149, [%rd48+0]; - add.ftz.f32 %f138, %f149, %f138; - st.shared.f32 [%rd42+0], %f138; - ld.shared.f32 %f150, [%rd48+512]; - add.ftz.f32 %f139, %f150, %f139; - st.shared.f32 [%rd42+512], %f139; - ld.shared.f32 %f151, [%rd48+1024]; - add.ftz.f32 %f140, %f151, %f140; - st.shared.f32 [%rd42+1024], %f140; - ld.shared.f32 %f152, [%rd48+1536]; - add.ftz.f32 %f141, %f152, %f141; - st.shared.f32 [%rd42+1536], %f141; - ld.shared.f32 %f153, [%rd48+2048]; - add.ftz.f32 %f142, %f153, %f142; - st.shared.f32 [%rd42+2048], %f142; - ld.shared.f32 %f154, [%rd48+2560]; - add.ftz.f32 %f148, %f154, %f148; - st.shared.f32 [%rd42+2560], %f148; -$Lt_0_30210: - shr.u32 %r77, %r77, 1; - mov.u32 %r79, 0; - setp.ne.u32 %p16, %r77, %r79; - @%p16 bra $Lt_0_29954; -$Lt_0_29442: - mov.f32 %f10, %f138; - mov.f32 %f12, %f139; - mov.f32 %f14, %f140; - mov.f32 %f16, %f141; - mov.f32 %f18, %f142; - mov.f32 %f20, %f148; -$Lt_0_28930: -$Lt_0_26882: - mov.u32 %r80, 0; - setp.ne.s32 %p17, %r14, %r80; - @%p17 bra $Lt_0_30978; - ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd50, %rd49, %rd3; - ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r82, 0; - setp.le.s32 %p18, %r81, %r82; - @%p18 bra $Lt_0_31490; - st.global.f32 [%rd50+0], %f38; - cvt.s64.s32 %rd51, %r9; - mul.wide.s32 %rd52, %r9, 4; - add.u64 %rd53, %rd52, %rd50; - st.global.f32 [%rd53+0], %f37; - add.u64 %rd50, %rd52, %rd53; -$Lt_0_31490: - ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r84, 0; - setp.le.s32 %p19, %r83, %r84; - @%p19 bra $Lt_0_32002; - mov.f32 %f155, %f10; - st.global.f32 [%rd50+0], %f155; - cvt.s64.s32 %rd54, %r9; - mul.wide.s32 %rd55, %r9, 4; - add.u64 %rd56, %rd55, %rd50; - mov.f32 %f156, %f12; - st.global.f32 [%rd56+0], %f156; - add.u64 %rd57, %rd55, %rd56; - mov.f32 %f157, %f14; - st.global.f32 [%rd57+0], %f157; - add.u64 %rd58, %rd55, %rd57; - mov.f32 %f158, %f16; - st.global.f32 [%rd58+0], %f158; - add.u64 %rd50, %rd55, %rd58; - mov.f32 %f159, %f18; - st.global.f32 [%rd50+0], %f159; - mov.f32 %f160, %f20; - add.u64 %rd59, %rd55, %rd50; - st.global.f32 [%rd59+0], %f160; -$Lt_0_32002: - ld.param.u64 %rd60, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd61, %rd2, 16; - add.u64 %rd62, %rd60, %rd61; - mov.f32 %f161, %f162; - st.global.v4.f32 [%rd62+0], {%f36,%f35,%f34,%f161}; -$Lt_0_30978: -$Lt_0_21762: - .loc 16 135 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .u64 __cudaparm_kernel_pair_fast_q_, - .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq, - .param .f32 __cudaparm_kernel_pair_fast_qqrd2e, - .param .f32 __cudaparm_kernel_pair_fast_g_ewald, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<88>; - .reg .u64 %rd<76>; - .reg .f32 %f<167>; - .reg .pred %p<24>; - .shared .align 4 .b8 __cuda___cuda_local_var_32652_33_non_const_sp_lj3320[32]; - .shared .align 16 .b8 __cuda___cuda_local_var_32650_34_non_const_lj13360[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32651_34_non_const_lj35296[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32745_55_non_const_red_acc7232[3072]; - // __cuda_local_var_32663_10_non_const_f = 64 - // __cuda_local_var_32665_9_non_const_virial = 16 - // __cuda_local_var_32701_43_non_const_r6inv = 40 - // __cuda_local_var_32701_50_non_const_prefactor = 48 - // __cuda_local_var_32701_61_non_const__erfc = 44 - .loc 16 145 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 7; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_24066; - .loc 16 153 0 - mov.u64 %rd1, __cuda___cuda_local_var_32652_33_non_const_sp_lj3320; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_24066: - mov.u64 %rd1, __cuda___cuda_local_var_32652_33_non_const_sp_lj3320; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_24578; - .loc 16 155 0 - mov.u64 %rd7, __cuda___cuda_local_var_32650_34_non_const_lj13360; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_25090; - .loc 16 157 0 - mov.u64 %rd13, __cuda___cuda_local_var_32651_34_non_const_lj35296; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_25090: - mov.u64 %rd13, __cuda___cuda_local_var_32651_34_non_const_lj35296; -$Lt_1_24578: - mov.u64 %rd13, __cuda___cuda_local_var_32651_34_non_const_lj35296; - mov.u64 %rd7, __cuda___cuda_local_var_32650_34_non_const_lj13360; - .loc 16 166 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 168 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_34818; - .loc 16 173 0 - cvt.s64.s32 %rd17, %r12; - mul.wide.s32 %rd18, %r12, 4; - ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd20, %rd18, %rd19; - ld.global.s32 %r14, [%rd20+0]; - ld.param.s32 %r15, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd21, %r15; - mul.wide.s32 %rd22, %r15, 4; - add.u64 %rd23, %rd22, %rd20; - ld.global.s32 %r16, [%rd23+0]; - sub.s32 %r17, %r6, 1; - and.b32 %r18, %r17, %r1; - cvt.s64.s32 %rd24, %r18; - mul.wide.s32 %rd25, %r18, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd26, %rd19; - @%p5 bra $Lt_1_26370; - cvt.s32.s64 %r19, %rd21; - mul.lo.s32 %r20, %r19, %r6; - mov.s32 %r21, %r20; - mul.lo.s32 %r22, %r17, %r12; - add.s32 %r23, %r19, %r22; - cvt.s64.s32 %rd27, %r23; - mul.wide.s32 %rd28, %r23, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r24, %r17, %r16; - cvt.s64.s32 %rd30, %r24; - div.s32 %r25, %r16, %r6; - mul.lo.s32 %r26, %r20, %r25; - cvt.s64.s32 %rd31, %r26; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_26114; -$Lt_1_26370: - add.u64 %rd36, %rd22, %rd23; - ld.global.s32 %r27, [%rd36+0]; - cvt.s64.s32 %rd37, %r27; - mul.wide.s32 %rd38, %r27, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r16; - mul.wide.s32 %rd41, %r16, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r21, %r6; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_26114: - .loc 16 176 0 - mov.u32 %r28, %r14; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - .loc 16 177 0 - mov.u32 %r35, %r14; - mov.s32 %r36, 0; - mov.u32 %r37, %r36; - mov.s32 %r38, 0; - mov.u32 %r39, %r38; - mov.s32 %r40, 0; - mov.u32 %r41, %r40; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r35,%r37,%r39,%r41}]; - mov.f32 %f34, %f30; - setp.ge.u64 %p6, %rd35, %rd34; - @%p6 bra $Lt_1_36354; - cvt.rzi.ftz.s32.f32 %r42, %f29; - cvt.s64.s32 %rd42, %r21; - mul.lo.s32 %r43, %r42, 11; - cvt.rn.f32.s32 %f35, %r43; - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 -$Lt_1_27138: - // Loop body line 177, nesting depth: 1, estimated iterations: unknown - .loc 16 182 0 - ld.global.s32 %r44, [%rd35+0]; - .loc 16 185 0 - shr.s32 %r45, %r44, 30; - and.b32 %r46, %r45, 3; - cvt.s64.s32 %rd43, %r46; - mul.wide.s32 %rd44, %r46, 4; - add.u64 %rd45, %rd1, %rd44; - ld.shared.f32 %f41, [%rd45+0]; - .loc 16 186 0 - mov.f32 %f42, 0f3f800000; // 1 - ld.shared.f32 %f43, [%rd45+16]; - sub.ftz.f32 %f44, %f42, %f43; - .loc 16 189 0 - and.b32 %r47, %r44, 1073741823; - mov.u32 %r48, %r47; - mov.s32 %r49, 0; - mov.u32 %r50, %r49; - mov.s32 %r51, 0; - mov.u32 %r52, %r51; - mov.s32 %r53, 0; - mov.u32 %r54, %r53; - tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r48,%r50,%r52,%r54}]; - mov.f32 %f49, %f45; - mov.f32 %f50, %f46; - mov.f32 %f51, %f47; - mov.f32 %f52, %f48; - sub.ftz.f32 %f53, %f27, %f50; - sub.ftz.f32 %f54, %f26, %f49; - sub.ftz.f32 %f55, %f28, %f51; - mul.ftz.f32 %f56, %f53, %f53; - fma.rn.ftz.f32 %f57, %f54, %f54, %f56; - fma.rn.ftz.f32 %f58, %f55, %f55, %f57; - add.ftz.f32 %f59, %f35, %f52; - cvt.rzi.ftz.s32.f32 %r55, %f59; - cvt.s64.s32 %rd46, %r55; - mul.wide.s32 %rd47, %r55, 16; - add.u64 %rd48, %rd47, %rd7; - ld.shared.f32 %f60, [%rd48+8]; - setp.gt.ftz.f32 %p7, %f60, %f58; - @!%p7 bra $Lt_1_29954; - rcp.approx.ftz.f32 %f61, %f58; - ld.shared.f32 %f62, [%rd48+12]; - setp.lt.ftz.f32 %p8, %f58, %f62; - @!%p8 bra $Lt_1_28162; - .loc 16 203 0 - mul.ftz.f32 %f63, %f61, %f61; - mul.ftz.f32 %f64, %f61, %f63; - mov.f32 %f65, %f64; - .loc 16 204 0 - mul.ftz.f32 %f66, %f64, %f41; - ld.shared.v2.f32 {%f67,%f68}, [%rd48+0]; - mul.ftz.f32 %f69, %f67, %f64; - sub.ftz.f32 %f70, %f69, %f68; - mul.ftz.f32 %f71, %f66, %f70; - bra.uni $Lt_1_27906; -$Lt_1_28162: - .loc 16 206 0 - mov.f32 %f71, 0f00000000; // 0 -$Lt_1_27906: - ld.param.f32 %f72, [__cudaparm_kernel_pair_fast_cut_coulsq]; - setp.gt.ftz.f32 %p9, %f72, %f58; - @!%p9 bra $Lt_1_28674; - .loc 20 518 0 - rsqrt.approx.ftz.f32 %f73, %f61; - ld.param.f32 %f74, [__cudaparm_kernel_pair_fast_g_ewald]; - mul.ftz.f32 %f75, %f74, %f73; - mul.ftz.f32 %f76, %f75, %f75; - neg.ftz.f32 %f77, %f76; - mov.f32 %f78, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f79, %f77, %f78; - ex2.approx.ftz.f32 %f80, %f79; - .loc 16 213 0 - mov.f32 %f81, 0f3f800000; // 1 - mov.f32 %f82, 0f3ea7ba05; // 0.327591 - fma.rn.ftz.f32 %f83, %f82, %f75, %f81; - rcp.approx.ftz.f32 %f84, %f83; - mov.f32 %f85, 0f3e827906; // 0.25483 - mov.f32 %f86, 0fbe91a98e; // -0.284497 - mov.f32 %f87, 0f3fb5f0e3; // 1.42141 - mov.f32 %f88, 0fbfba00e3; // -1.45315 - mov.f32 %f89, 0f3f87dc22; // 1.06141 - fma.rn.ftz.f32 %f90, %f89, %f84, %f88; - fma.rn.ftz.f32 %f91, %f84, %f90, %f87; - fma.rn.ftz.f32 %f92, %f84, %f91, %f86; - fma.rn.ftz.f32 %f93, %f84, %f92, %f85; - mul.ftz.f32 %f94, %f84, %f93; - mul.ftz.f32 %f95, %f80, %f94; - mov.f32 %f96, %f95; - .loc 16 214 0 - mov.u32 %r56, %r47; - mov.s32 %r57, 0; - mov.u32 %r58, %r57; - mov.s32 %r59, 0; - mov.u32 %r60, %r59; - mov.s32 %r61, 0; - mov.u32 %r62, %r61; - tex.1d.v4.f32.s32 {%f97,%f98,%f99,%f100},[q_tex,{%r56,%r58,%r60,%r62}]; - mov.f32 %f101, %f97; - ld.param.f32 %f102, [__cudaparm_kernel_pair_fast_qqrd2e]; - mul.ftz.f32 %f103, %f102, %f34; - mul.ftz.f32 %f104, %f103, %f101; - div.approx.ftz.f32 %f105, %f104, %f73; - mov.f32 %f106, %f105; - .loc 16 215 0 - mov.f32 %f107, 0f3f906ebb; // 1.12838 - mul.ftz.f32 %f108, %f75, %f107; - fma.rn.ftz.f32 %f109, %f80, %f108, %f95; - sub.ftz.f32 %f110, %f109, %f44; - mul.ftz.f32 %f111, %f105, %f110; - bra.uni $Lt_1_28418; -$Lt_1_28674: - .loc 16 217 0 - mov.f32 %f111, 0f00000000; // 0 -$Lt_1_28418: - .loc 16 221 0 - add.ftz.f32 %f112, %f111, %f71; - mul.ftz.f32 %f113, %f112, %f61; - fma.rn.ftz.f32 %f38, %f54, %f113, %f38; - .loc 16 222 0 - fma.rn.ftz.f32 %f37, %f53, %f113, %f37; - .loc 16 223 0 - fma.rn.ftz.f32 %f36, %f55, %f113, %f36; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r64, 0; - setp.le.s32 %p10, %r63, %r64; - @%p10 bra $Lt_1_29442; - .loc 16 226 0 - mov.f32 %f114, %f106; - mov.f32 %f115, %f96; - sub.ftz.f32 %f116, %f115, %f44; - fma.rn.ftz.f32 %f117, %f114, %f116, %f39; - selp.f32 %f39, %f117, %f39, %p9; - @!%p8 bra $Lt_1_29442; - .loc 16 229 0 - add.u64 %rd49, %rd47, %rd13; - mov.f32 %f118, %f65; - ld.shared.v4.f32 {%f119,%f120,%f121,_}, [%rd49+0]; - mul.ftz.f32 %f122, %f119, %f118; - sub.ftz.f32 %f123, %f122, %f120; - mul.ftz.f32 %f124, %f118, %f123; - .loc 16 230 0 - sub.ftz.f32 %f125, %f124, %f121; - fma.rn.ftz.f32 %f40, %f41, %f125, %f40; -$Lt_1_29442: -$Lt_1_28930: - ld.param.s32 %r65, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r66, 0; - setp.le.s32 %p11, %r65, %r66; - @%p11 bra $Lt_1_29954; - .loc 16 234 0 - mov.f32 %f126, %f11; - mul.ftz.f32 %f127, %f54, %f54; - fma.rn.ftz.f32 %f128, %f113, %f127, %f126; - mov.f32 %f11, %f128; - .loc 16 235 0 - mov.f32 %f129, %f13; - fma.rn.ftz.f32 %f130, %f113, %f56, %f129; - mov.f32 %f13, %f130; - .loc 16 236 0 - mov.f32 %f131, %f15; - mul.ftz.f32 %f132, %f55, %f55; - fma.rn.ftz.f32 %f133, %f113, %f132, %f131; - mov.f32 %f15, %f133; - .loc 16 237 0 - mov.f32 %f134, %f17; - mul.ftz.f32 %f135, %f53, %f54; - fma.rn.ftz.f32 %f136, %f113, %f135, %f134; - mov.f32 %f17, %f136; - .loc 16 238 0 - mov.f32 %f137, %f19; - mul.ftz.f32 %f138, %f54, %f55; - fma.rn.ftz.f32 %f139, %f113, %f138, %f137; - mov.f32 %f19, %f139; - .loc 16 239 0 - mul.ftz.f32 %f140, %f53, %f55; - fma.rn.ftz.f32 %f20, %f113, %f140, %f20; - mov.f32 %f21, %f20; -$Lt_1_29954: -$Lt_1_27394: - .loc 16 181 0 - mul.lo.u64 %rd50, %rd42, 4; - add.u64 %rd35, %rd35, %rd50; - setp.lt.u64 %p12, %rd35, %rd34; - @%p12 bra $Lt_1_27138; - bra.uni $Lt_1_26626; -$Lt_1_36354: - mov.f32 %f36, 0f00000000; // 0 - mov.f32 %f37, 0f00000000; // 0 - mov.f32 %f38, 0f00000000; // 0 - mov.f32 %f39, 0f00000000; // 0 - mov.f32 %f40, 0f00000000; // 0 -$Lt_1_26626: - mov.u32 %r67, 1; - setp.le.s32 %p13, %r6, %r67; - @%p13 bra $Lt_1_32770; - .loc 16 244 0 - mov.u64 %rd51, __cuda___cuda_local_var_32745_55_non_const_red_acc7232; - cvt.s64.s32 %rd52, %r1; - mul.wide.s32 %rd53, %r1, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f141, %f38; - st.shared.f32 [%rd54+0], %f141; - mov.f32 %f142, %f37; - st.shared.f32 [%rd54+512], %f142; - mov.f32 %f143, %f36; - st.shared.f32 [%rd54+1024], %f143; - mov.f32 %f144, %f40; - st.shared.f32 [%rd54+1536], %f144; - mov.f32 %f145, %f39; - st.shared.f32 [%rd54+2048], %f145; - shr.s32 %r68, %r6, 31; - mov.s32 %r69, 1; - and.b32 %r70, %r68, %r69; - add.s32 %r71, %r70, %r6; - shr.s32 %r72, %r71, 1; - mov.s32 %r73, %r72; - mov.u32 %r74, 0; - setp.ne.u32 %p14, %r72, %r74; - @!%p14 bra $Lt_1_31234; -$Lt_1_31746: - setp.ge.u32 %p15, %r18, %r73; - @%p15 bra $Lt_1_32002; - add.u32 %r75, %r1, %r73; - cvt.u64.u32 %rd55, %r75; - mul.wide.u32 %rd56, %r75, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f146, [%rd57+0]; - add.ftz.f32 %f141, %f146, %f141; - st.shared.f32 [%rd54+0], %f141; - ld.shared.f32 %f147, [%rd57+512]; - add.ftz.f32 %f142, %f147, %f142; - st.shared.f32 [%rd54+512], %f142; - ld.shared.f32 %f148, [%rd57+1024]; - add.ftz.f32 %f143, %f148, %f143; - st.shared.f32 [%rd54+1024], %f143; - ld.shared.f32 %f149, [%rd57+1536]; - add.ftz.f32 %f144, %f149, %f144; - st.shared.f32 [%rd54+1536], %f144; - ld.shared.f32 %f150, [%rd57+2048]; - add.ftz.f32 %f145, %f150, %f145; - st.shared.f32 [%rd54+2048], %f145; -$Lt_1_32002: - shr.u32 %r73, %r73, 1; - mov.u32 %r76, 0; - setp.ne.u32 %p16, %r73, %r76; - @%p16 bra $Lt_1_31746; -$Lt_1_31234: - mov.f32 %f38, %f141; - mov.f32 %f37, %f142; - mov.f32 %f36, %f143; - mov.f32 %f40, %f144; - mov.f32 %f39, %f145; - ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r78, 0; - setp.le.s32 %p17, %r77, %r78; - @%p17 bra $Lt_1_32770; - mov.f32 %f141, %f11; - st.shared.f32 [%rd54+0], %f141; - mov.f32 %f142, %f13; - st.shared.f32 [%rd54+512], %f142; - mov.f32 %f143, %f15; - st.shared.f32 [%rd54+1024], %f143; - mov.f32 %f144, %f17; - st.shared.f32 [%rd54+1536], %f144; - mov.f32 %f145, %f19; - st.shared.f32 [%rd54+2048], %f145; - mov.f32 %f151, %f20; - st.shared.f32 [%rd54+2560], %f151; - mov.s32 %r79, %r72; - @!%p14 bra $Lt_1_33282; -$Lt_1_33794: - setp.ge.u32 %p18, %r18, %r79; - @%p18 bra $Lt_1_34050; - add.u32 %r80, %r1, %r79; - cvt.u64.u32 %rd58, %r80; - mul.wide.u32 %rd59, %r80, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f152, [%rd60+0]; - add.ftz.f32 %f141, %f152, %f141; - st.shared.f32 [%rd54+0], %f141; - ld.shared.f32 %f153, [%rd60+512]; - add.ftz.f32 %f142, %f153, %f142; - st.shared.f32 [%rd54+512], %f142; - ld.shared.f32 %f154, [%rd60+1024]; - add.ftz.f32 %f143, %f154, %f143; - st.shared.f32 [%rd54+1024], %f143; - ld.shared.f32 %f155, [%rd60+1536]; - add.ftz.f32 %f144, %f155, %f144; - st.shared.f32 [%rd54+1536], %f144; - ld.shared.f32 %f156, [%rd60+2048]; - add.ftz.f32 %f145, %f156, %f145; - st.shared.f32 [%rd54+2048], %f145; - ld.shared.f32 %f157, [%rd60+2560]; - add.ftz.f32 %f151, %f157, %f151; - st.shared.f32 [%rd54+2560], %f151; -$Lt_1_34050: - shr.u32 %r79, %r79, 1; - mov.u32 %r81, 0; - setp.ne.u32 %p19, %r79, %r81; - @%p19 bra $Lt_1_33794; -$Lt_1_33282: - mov.f32 %f11, %f141; - mov.f32 %f13, %f142; - mov.f32 %f15, %f143; - mov.f32 %f17, %f144; - mov.f32 %f19, %f145; - mov.f32 %f21, %f151; -$Lt_1_32770: -$Lt_1_30722: - mov.u32 %r82, 0; - setp.ne.s32 %p20, %r18, %r82; - @%p20 bra $Lt_1_34818; - ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd62, %rd61, %rd18; - ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r84, 0; - setp.le.s32 %p21, %r83, %r84; - @%p21 bra $Lt_1_35330; - st.global.f32 [%rd62+0], %f40; - cvt.s64.s32 %rd63, %r13; - mul.wide.s32 %rd64, %r13, 4; - add.u64 %rd65, %rd64, %rd62; - st.global.f32 [%rd65+0], %f39; - add.u64 %rd62, %rd64, %rd65; -$Lt_1_35330: - ld.param.s32 %r85, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r86, 0; - setp.le.s32 %p22, %r85, %r86; - @%p22 bra $Lt_1_35842; - mov.f32 %f158, %f11; - st.global.f32 [%rd62+0], %f158; - cvt.s64.s32 %rd66, %r13; - mul.wide.s32 %rd67, %r13, 4; - add.u64 %rd68, %rd67, %rd62; - mov.f32 %f159, %f13; - st.global.f32 [%rd68+0], %f159; - add.u64 %rd69, %rd67, %rd68; - mov.f32 %f160, %f15; - st.global.f32 [%rd69+0], %f160; - add.u64 %rd70, %rd67, %rd69; - mov.f32 %f161, %f17; - st.global.f32 [%rd70+0], %f161; - add.u64 %rd62, %rd67, %rd70; - mov.f32 %f162, %f19; - st.global.f32 [%rd62+0], %f162; - mov.f32 %f163, %f21; - add.u64 %rd71, %rd67, %rd62; - st.global.f32 [%rd71+0], %f163; -$Lt_1_35842: - ld.param.u64 %rd72, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd73, %rd17, 16; - add.u64 %rd74, %rd72, %rd73; - mov.f32 %f164, %f165; - st.global.v4.f32 [%rd74+0], {%f38,%f37,%f36,%f164}; -$Lt_1_34818: -$Lt_1_25602: - .loc 16 247 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/lj_coul_long_ptx.h b/lib/gpu/lj_coul_long_ptx.h deleted file mode 100644 index 9e7a32c872..0000000000 --- a/lib/gpu/lj_coul_long_ptx.h +++ /dev/null @@ -1,1065 +0,0 @@ -const char * lj_coul_long = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .global .texref q_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_lj1,\n" -" .param .u64 __cudaparm_kernel_pair_lj3,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_q_,\n" -" .param .f32 __cudaparm_kernel_pair_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<86>;\n" -" .reg .u64 %rd<64>;\n" -" .reg .f32 %f<164>;\n" -" .reg .pred %p<21>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32633_55_non_const_red_acc144[3072];\n" -" .loc 16 36 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 41 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 42 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 43 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 44 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 45 0\n" -" ld.global.f32 %f5, [%rd1+16];\n" -" .loc 16 46 0\n" -" ld.global.f32 %f6, [%rd1+20];\n" -" .loc 16 47 0\n" -" ld.global.f32 %f7, [%rd1+24];\n" -" .loc 16 48 0\n" -" ld.global.f32 %f8, [%rd1+28];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8};\n" -" .loc 16 56 0\n" -" mov.f32 %f9, 0f00000000; \n" -" mov.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f00000000; \n" -" mov.f32 %f12, %f11;\n" -" mov.f32 %f13, 0f00000000; \n" -" mov.f32 %f14, %f13;\n" -" mov.f32 %f15, 0f00000000; \n" -" mov.f32 %f16, %f15;\n" -" mov.f32 %f17, 0f00000000; \n" -" mov.f32 %f18, %f17;\n" -" mov.f32 %f19, 0f00000000; \n" -" mov.f32 %f20, %f19;\n" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_30978;\n" -" .loc 16 61 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd5, %rd3, %rd4;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" sub.s32 %r13, %r1, 1;\n" -" and.b32 %r14, %r13, %r2;\n" -" cvt.s64.s32 %rd9, %r14;\n" -" mul.wide.s32 %rd10, %r14, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd4;\n" -" @%p2 bra $Lt_0_22530;\n" -" cvt.s32.s64 %r15, %rd6;\n" -" mul.lo.s32 %r16, %r15, %r1;\n" -" mov.s32 %r17, %r16;\n" -" mul.lo.s32 %r18, %r13, %r8;\n" -" add.s32 %r19, %r15, %r18;\n" -" cvt.s64.s32 %rd12, %r19;\n" -" mul.wide.s32 %rd13, %r19, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r20, %r13, %r12;\n" -" cvt.s64.s32 %rd15, %r20;\n" -" div.s32 %r21, %r12, %r1;\n" -" mul.lo.s32 %r22, %r16, %r21;\n" -" cvt.s64.s32 %rd16, %r22;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_22274;\n" -"$Lt_0_22530:\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" ld.global.s32 %r23, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r23;\n" -" mul.wide.s32 %rd23, %r23, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r12;\n" -" mul.wide.s32 %rd26, %r12, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r17, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_22274:\n" -" .loc 16 64 0\n" -" mov.u32 %r24, %r10;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f25, %f21;\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" .loc 16 65 0\n" -" mov.u32 %r31, %r10;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}];\n" -" mov.f32 %f33, %f29;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_32514;\n" -" cvt.rzi.ftz.s32.f32 %r38, %f28;\n" -" cvt.s64.s32 %rd27, %r17;\n" -" ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r40, %r39, %r38;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112;\n" -"$Lt_0_23298:\n" -" .loc 16 69 0\n" -" ld.global.s32 %r41, [%rd20+0];\n" -" .loc 16 72 0\n" -" shr.s32 %r42, %r41, 30;\n" -" and.b32 %r43, %r42, 3;\n" -" cvt.s64.s32 %rd30, %r43;\n" -" mul.wide.s32 %rd31, %r43, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f39, [%rd32+0];\n" -" .loc 16 73 0\n" -" mov.f32 %f40, 0f3f800000; \n" -" ld.shared.f32 %f41, [%rd32+16];\n" -" sub.ftz.f32 %f42, %f40, %f41;\n" -" .loc 16 76 0\n" -" and.b32 %r44, %r41, 1073741823;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" mov.s32 %r48, 0;\n" -" mov.u32 %r49, %r48;\n" -" mov.s32 %r50, 0;\n" -" mov.u32 %r51, %r50;\n" -" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r45,%r47,%r49,%r51}];\n" -" mov.f32 %f47, %f43;\n" -" mov.f32 %f48, %f44;\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" cvt.rzi.ftz.s32.f32 %r52, %f50;\n" -" sub.ftz.f32 %f51, %f26, %f48;\n" -" sub.ftz.f32 %f52, %f25, %f47;\n" -" sub.ftz.f32 %f53, %f27, %f49;\n" -" mul.ftz.f32 %f54, %f51, %f51;\n" -" fma.rn.ftz.f32 %f55, %f52, %f52, %f54;\n" -" fma.rn.ftz.f32 %f56, %f53, %f53, %f55;\n" -" add.s32 %r53, %r52, %r40;\n" -" cvt.s64.s32 %rd33, %r53;\n" -" mul.wide.s32 %rd34, %r53, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f57, [%rd35+8];\n" -" setp.gt.ftz.f32 %p4, %f57, %f56;\n" -" @!%p4 bra $Lt_0_26114;\n" -" rcp.approx.ftz.f32 %f58, %f56;\n" -" ld.global.f32 %f59, [%rd35+12];\n" -" setp.lt.ftz.f32 %p5, %f56, %f59;\n" -" @!%p5 bra $Lt_0_24322;\n" -" .loc 16 91 0\n" -" mul.ftz.f32 %f60, %f58, %f58;\n" -" mul.ftz.f32 %f61, %f58, %f60;\n" -" mov.f32 %f62, %f61;\n" -" .loc 16 92 0\n" -" mul.ftz.f32 %f63, %f61, %f39;\n" -" ld.global.v2.f32 {%f64,%f65}, [%rd35+0];\n" -" mul.ftz.f32 %f66, %f64, %f61;\n" -" sub.ftz.f32 %f67, %f66, %f65;\n" -" mul.ftz.f32 %f68, %f63, %f67;\n" -" bra.uni $Lt_0_24066;\n" -"$Lt_0_24322:\n" -" .loc 16 94 0\n" -" mov.f32 %f68, 0f00000000; \n" -"$Lt_0_24066:\n" -" ld.param.f32 %f69, [__cudaparm_kernel_pair_cut_coulsq];\n" -" setp.gt.ftz.f32 %p6, %f69, %f56;\n" -" @!%p6 bra $Lt_0_24834;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f70, %f58;\n" -" ld.param.f32 %f71, [__cudaparm_kernel_pair_g_ewald];\n" -" mul.ftz.f32 %f72, %f71, %f70;\n" -" mul.ftz.f32 %f73, %f72, %f72;\n" -" neg.ftz.f32 %f74, %f73;\n" -" mov.f32 %f75, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f76, %f74, %f75;\n" -" ex2.approx.ftz.f32 %f77, %f76;\n" -" .loc 16 101 0\n" -" mov.f32 %f78, 0f3f800000; \n" -" mov.f32 %f79, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f80, %f79, %f72, %f78;\n" -" rcp.approx.ftz.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" -" fma.rn.ftz.f32 %f87, %f86, %f81, %f85;\n" -" fma.rn.ftz.f32 %f88, %f81, %f87, %f84;\n" -" fma.rn.ftz.f32 %f89, %f81, %f88, %f83;\n" -" fma.rn.ftz.f32 %f90, %f81, %f89, %f82;\n" -" mul.ftz.f32 %f91, %f81, %f90;\n" -" mul.ftz.f32 %f92, %f77, %f91;\n" -" mov.f32 %f93, %f92;\n" -" .loc 16 102 0\n" -" mov.u32 %r54, %r44;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f94,%f95,%f96,%f97},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f98, %f94;\n" -" ld.param.f32 %f99, [__cudaparm_kernel_pair_qqrd2e];\n" -" mul.ftz.f32 %f100, %f99, %f33;\n" -" mul.ftz.f32 %f101, %f100, %f98;\n" -" div.approx.ftz.f32 %f102, %f101, %f70;\n" -" mov.f32 %f103, %f102;\n" -" .loc 16 103 0\n" -" mov.f32 %f104, 0f3f906ebb; \n" -" mul.ftz.f32 %f105, %f72, %f104;\n" -" fma.rn.ftz.f32 %f106, %f77, %f105, %f92;\n" -" sub.ftz.f32 %f107, %f106, %f42;\n" -" mul.ftz.f32 %f108, %f102, %f107;\n" -" bra.uni $Lt_0_24578;\n" -"$Lt_0_24834:\n" -" .loc 16 105 0\n" -" mov.f32 %f108, 0f00000000; \n" -"$Lt_0_24578:\n" -" .loc 16 109 0\n" -" add.ftz.f32 %f109, %f108, %f68;\n" -" mul.ftz.f32 %f110, %f109, %f58;\n" -" fma.rn.ftz.f32 %f36, %f52, %f110, %f36;\n" -" .loc 16 110 0\n" -" fma.rn.ftz.f32 %f35, %f51, %f110, %f35;\n" -" .loc 16 111 0\n" -" fma.rn.ftz.f32 %f34, %f53, %f110, %f34;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p7, %r61, %r62;\n" -" @%p7 bra $Lt_0_25602;\n" -" .loc 16 114 0\n" -" mov.f32 %f111, %f103;\n" -" mov.f32 %f112, %f93;\n" -" sub.ftz.f32 %f113, %f112, %f42;\n" -" fma.rn.ftz.f32 %f114, %f111, %f113, %f37;\n" -" selp.f32 %f37, %f114, %f37, %p6;\n" -" @!%p5 bra $Lt_0_25602;\n" -" .loc 16 118 0\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" mov.f32 %f115, %f62;\n" -" ld.global.v4.f32 {%f116,%f117,%f118,_}, [%rd37+0];\n" -" mul.ftz.f32 %f119, %f116, %f115;\n" -" sub.ftz.f32 %f120, %f119, %f117;\n" -" mul.ftz.f32 %f121, %f115, %f120;\n" -" sub.ftz.f32 %f122, %f121, %f118;\n" -" fma.rn.ftz.f32 %f38, %f39, %f122, %f38;\n" -"$Lt_0_25602:\n" -"$Lt_0_25090:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p8, %r63, %r64;\n" -" @%p8 bra $Lt_0_26114;\n" -" .loc 16 122 0\n" -" mov.f32 %f123, %f10;\n" -" mul.ftz.f32 %f124, %f52, %f52;\n" -" fma.rn.ftz.f32 %f125, %f110, %f124, %f123;\n" -" mov.f32 %f10, %f125;\n" -" .loc 16 123 0\n" -" mov.f32 %f126, %f12;\n" -" fma.rn.ftz.f32 %f127, %f110, %f54, %f126;\n" -" mov.f32 %f12, %f127;\n" -" .loc 16 124 0\n" -" mov.f32 %f128, %f14;\n" -" mul.ftz.f32 %f129, %f53, %f53;\n" -" fma.rn.ftz.f32 %f130, %f110, %f129, %f128;\n" -" mov.f32 %f14, %f130;\n" -" .loc 16 125 0\n" -" mov.f32 %f131, %f16;\n" -" mul.ftz.f32 %f132, %f51, %f52;\n" -" fma.rn.ftz.f32 %f133, %f110, %f132, %f131;\n" -" mov.f32 %f16, %f133;\n" -" .loc 16 126 0\n" -" mov.f32 %f134, %f18;\n" -" mul.ftz.f32 %f135, %f52, %f53;\n" -" fma.rn.ftz.f32 %f136, %f110, %f135, %f134;\n" -" mov.f32 %f18, %f136;\n" -" .loc 16 127 0\n" -" mul.ftz.f32 %f137, %f51, %f53;\n" -" fma.rn.ftz.f32 %f19, %f110, %f137, %f19;\n" -" mov.f32 %f20, %f19;\n" -"$Lt_0_26114:\n" -"$Lt_0_23554:\n" -" .loc 16 68 0\n" -" mul.lo.u64 %rd38, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd38;\n" -" setp.lt.u64 %p9, %rd20, %rd19;\n" -" @%p9 bra $Lt_0_23298;\n" -" bra.uni $Lt_0_22786;\n" -"$Lt_0_32514:\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -"$Lt_0_22786:\n" -" mov.u32 %r65, 1;\n" -" setp.le.s32 %p10, %r1, %r65;\n" -" @%p10 bra $Lt_0_28930;\n" -" .loc 16 132 0\n" -" mov.u64 %rd39, __cuda___cuda_local_var_32633_55_non_const_red_acc144;\n" -" cvt.s64.s32 %rd40, %r2;\n" -" mul.wide.s32 %rd41, %r2, 4;\n" -" add.u64 %rd42, %rd39, %rd41;\n" -" mov.f32 %f138, %f36;\n" -" st.shared.f32 [%rd42+0], %f138;\n" -" mov.f32 %f139, %f35;\n" -" st.shared.f32 [%rd42+512], %f139;\n" -" mov.f32 %f140, %f34;\n" -" st.shared.f32 [%rd42+1024], %f140;\n" -" mov.f32 %f141, %f38;\n" -" st.shared.f32 [%rd42+1536], %f141;\n" -" mov.f32 %f142, %f37;\n" -" st.shared.f32 [%rd42+2048], %f142;\n" -" shr.s32 %r66, %r1, 31;\n" -" mov.s32 %r67, 1;\n" -" and.b32 %r68, %r66, %r67;\n" -" add.s32 %r69, %r68, %r1;\n" -" shr.s32 %r70, %r69, 1;\n" -" mov.s32 %r71, %r70;\n" -" mov.u32 %r72, 0;\n" -" setp.ne.u32 %p11, %r70, %r72;\n" -" @!%p11 bra $Lt_0_27394;\n" -"$Lt_0_27906:\n" -" setp.ge.u32 %p12, %r14, %r71;\n" -" @%p12 bra $Lt_0_28162;\n" -" add.u32 %r73, %r2, %r71;\n" -" cvt.u64.u32 %rd43, %r73;\n" -" mul.wide.u32 %rd44, %r73, 4;\n" -" add.u64 %rd45, %rd39, %rd44;\n" -" ld.shared.f32 %f143, [%rd45+0];\n" -" add.ftz.f32 %f138, %f143, %f138;\n" -" st.shared.f32 [%rd42+0], %f138;\n" -" ld.shared.f32 %f144, [%rd45+512];\n" -" add.ftz.f32 %f139, %f144, %f139;\n" -" st.shared.f32 [%rd42+512], %f139;\n" -" ld.shared.f32 %f145, [%rd45+1024];\n" -" add.ftz.f32 %f140, %f145, %f140;\n" -" st.shared.f32 [%rd42+1024], %f140;\n" -" ld.shared.f32 %f146, [%rd45+1536];\n" -" add.ftz.f32 %f141, %f146, %f141;\n" -" st.shared.f32 [%rd42+1536], %f141;\n" -" ld.shared.f32 %f147, [%rd45+2048];\n" -" add.ftz.f32 %f142, %f147, %f142;\n" -" st.shared.f32 [%rd42+2048], %f142;\n" -"$Lt_0_28162:\n" -" shr.u32 %r71, %r71, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p13, %r71, %r74;\n" -" @%p13 bra $Lt_0_27906;\n" -"$Lt_0_27394:\n" -" mov.f32 %f36, %f138;\n" -" mov.f32 %f35, %f139;\n" -" mov.f32 %f34, %f140;\n" -" mov.f32 %f38, %f141;\n" -" mov.f32 %f37, %f142;\n" -" ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r76, 0;\n" -" setp.le.s32 %p14, %r75, %r76;\n" -" @%p14 bra $Lt_0_28930;\n" -" mov.f32 %f138, %f10;\n" -" st.shared.f32 [%rd42+0], %f138;\n" -" mov.f32 %f139, %f12;\n" -" st.shared.f32 [%rd42+512], %f139;\n" -" mov.f32 %f140, %f14;\n" -" st.shared.f32 [%rd42+1024], %f140;\n" -" mov.f32 %f141, %f16;\n" -" st.shared.f32 [%rd42+1536], %f141;\n" -" mov.f32 %f142, %f18;\n" -" st.shared.f32 [%rd42+2048], %f142;\n" -" mov.f32 %f148, %f19;\n" -" st.shared.f32 [%rd42+2560], %f148;\n" -" mov.s32 %r77, %r70;\n" -" @!%p11 bra $Lt_0_29442;\n" -"$Lt_0_29954:\n" -" setp.ge.u32 %p15, %r14, %r77;\n" -" @%p15 bra $Lt_0_30210;\n" -" add.u32 %r78, %r2, %r77;\n" -" cvt.u64.u32 %rd46, %r78;\n" -" mul.wide.u32 %rd47, %r78, 4;\n" -" add.u64 %rd48, %rd39, %rd47;\n" -" ld.shared.f32 %f149, [%rd48+0];\n" -" add.ftz.f32 %f138, %f149, %f138;\n" -" st.shared.f32 [%rd42+0], %f138;\n" -" ld.shared.f32 %f150, [%rd48+512];\n" -" add.ftz.f32 %f139, %f150, %f139;\n" -" st.shared.f32 [%rd42+512], %f139;\n" -" ld.shared.f32 %f151, [%rd48+1024];\n" -" add.ftz.f32 %f140, %f151, %f140;\n" -" st.shared.f32 [%rd42+1024], %f140;\n" -" ld.shared.f32 %f152, [%rd48+1536];\n" -" add.ftz.f32 %f141, %f152, %f141;\n" -" st.shared.f32 [%rd42+1536], %f141;\n" -" ld.shared.f32 %f153, [%rd48+2048];\n" -" add.ftz.f32 %f142, %f153, %f142;\n" -" st.shared.f32 [%rd42+2048], %f142;\n" -" ld.shared.f32 %f154, [%rd48+2560];\n" -" add.ftz.f32 %f148, %f154, %f148;\n" -" st.shared.f32 [%rd42+2560], %f148;\n" -"$Lt_0_30210:\n" -" shr.u32 %r77, %r77, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p16, %r77, %r79;\n" -" @%p16 bra $Lt_0_29954;\n" -"$Lt_0_29442:\n" -" mov.f32 %f10, %f138;\n" -" mov.f32 %f12, %f139;\n" -" mov.f32 %f14, %f140;\n" -" mov.f32 %f16, %f141;\n" -" mov.f32 %f18, %f142;\n" -" mov.f32 %f20, %f148;\n" -"$Lt_0_28930:\n" -"$Lt_0_26882:\n" -" mov.u32 %r80, 0;\n" -" setp.ne.s32 %p17, %r14, %r80;\n" -" @%p17 bra $Lt_0_30978;\n" -" ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd50, %rd49, %rd3;\n" -" ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r82, 0;\n" -" setp.le.s32 %p18, %r81, %r82;\n" -" @%p18 bra $Lt_0_31490;\n" -" st.global.f32 [%rd50+0], %f38;\n" -" cvt.s64.s32 %rd51, %r9;\n" -" mul.wide.s32 %rd52, %r9, 4;\n" -" add.u64 %rd53, %rd52, %rd50;\n" -" st.global.f32 [%rd53+0], %f37;\n" -" add.u64 %rd50, %rd52, %rd53;\n" -"$Lt_0_31490:\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p19, %r83, %r84;\n" -" @%p19 bra $Lt_0_32002;\n" -" mov.f32 %f155, %f10;\n" -" st.global.f32 [%rd50+0], %f155;\n" -" cvt.s64.s32 %rd54, %r9;\n" -" mul.wide.s32 %rd55, %r9, 4;\n" -" add.u64 %rd56, %rd55, %rd50;\n" -" mov.f32 %f156, %f12;\n" -" st.global.f32 [%rd56+0], %f156;\n" -" add.u64 %rd57, %rd55, %rd56;\n" -" mov.f32 %f157, %f14;\n" -" st.global.f32 [%rd57+0], %f157;\n" -" add.u64 %rd58, %rd55, %rd57;\n" -" mov.f32 %f158, %f16;\n" -" st.global.f32 [%rd58+0], %f158;\n" -" add.u64 %rd50, %rd55, %rd58;\n" -" mov.f32 %f159, %f18;\n" -" st.global.f32 [%rd50+0], %f159;\n" -" mov.f32 %f160, %f20;\n" -" add.u64 %rd59, %rd55, %rd50;\n" -" st.global.f32 [%rd59+0], %f160;\n" -"$Lt_0_32002:\n" -" ld.param.u64 %rd60, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd61, %rd2, 16;\n" -" add.u64 %rd62, %rd60, %rd61;\n" -" mov.f32 %f161, %f162;\n" -" st.global.v4.f32 [%rd62+0], {%f36,%f35,%f34,%f161};\n" -"$Lt_0_30978:\n" -"$Lt_0_21762:\n" -" .loc 16 135 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_fast_q_,\n" -" .param .f32 __cudaparm_kernel_pair_fast_cut_coulsq,\n" -" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n" -" .param .f32 __cudaparm_kernel_pair_fast_g_ewald,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<88>;\n" -" .reg .u64 %rd<76>;\n" -" .reg .f32 %f<167>;\n" -" .reg .pred %p<24>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32652_33_non_const_sp_lj3320[32];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32650_34_non_const_lj13360[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32651_34_non_const_lj35296[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32745_55_non_const_red_acc7232[3072];\n" -" .loc 16 145 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 7;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_24066;\n" -" .loc 16 153 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32652_33_non_const_sp_lj3320;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_24066:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32652_33_non_const_sp_lj3320;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_24578;\n" -" .loc 16 155 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32650_34_non_const_lj13360;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_25090;\n" -" .loc 16 157 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32651_34_non_const_lj35296;\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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_25090:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32651_34_non_const_lj35296;\n" -"$Lt_1_24578:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32651_34_non_const_lj35296;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32650_34_non_const_lj13360;\n" -" .loc 16 166 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 168 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_34818;\n" -" .loc 16 173 0\n" -" cvt.s64.s32 %rd17, %r12;\n" -" mul.wide.s32 %rd18, %r12, 4;\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd20, %rd18, %rd19;\n" -" ld.global.s32 %r14, [%rd20+0];\n" -" ld.param.s32 %r15, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd21, %r15;\n" -" mul.wide.s32 %rd22, %r15, 4;\n" -" add.u64 %rd23, %rd22, %rd20;\n" -" ld.global.s32 %r16, [%rd23+0];\n" -" sub.s32 %r17, %r6, 1;\n" -" and.b32 %r18, %r17, %r1;\n" -" cvt.s64.s32 %rd24, %r18;\n" -" mul.wide.s32 %rd25, %r18, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd26, %rd19;\n" -" @%p5 bra $Lt_1_26370;\n" -" cvt.s32.s64 %r19, %rd21;\n" -" mul.lo.s32 %r20, %r19, %r6;\n" -" mov.s32 %r21, %r20;\n" -" mul.lo.s32 %r22, %r17, %r12;\n" -" add.s32 %r23, %r19, %r22;\n" -" cvt.s64.s32 %rd27, %r23;\n" -" mul.wide.s32 %rd28, %r23, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r24, %r17, %r16;\n" -" cvt.s64.s32 %rd30, %r24;\n" -" div.s32 %r25, %r16, %r6;\n" -" mul.lo.s32 %r26, %r20, %r25;\n" -" cvt.s64.s32 %rd31, %r26;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_26114;\n" -"$Lt_1_26370:\n" -" add.u64 %rd36, %rd22, %rd23;\n" -" ld.global.s32 %r27, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r27;\n" -" mul.wide.s32 %rd38, %r27, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r16;\n" -" mul.wide.s32 %rd41, %r16, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r21, %r6;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_26114:\n" -" .loc 16 176 0\n" -" mov.u32 %r28, %r14;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" .loc 16 177 0\n" -" mov.u32 %r35, %r14;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" mov.s32 %r38, 0;\n" -" mov.u32 %r39, %r38;\n" -" mov.s32 %r40, 0;\n" -" mov.u32 %r41, %r40;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[q_tex,{%r35,%r37,%r39,%r41}];\n" -" mov.f32 %f34, %f30;\n" -" setp.ge.u64 %p6, %rd35, %rd34;\n" -" @%p6 bra $Lt_1_36354;\n" -" cvt.rzi.ftz.s32.f32 %r42, %f29;\n" -" cvt.s64.s32 %rd42, %r21;\n" -" mul.lo.s32 %r43, %r42, 11;\n" -" cvt.rn.f32.s32 %f35, %r43;\n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -"$Lt_1_27138:\n" -" .loc 16 182 0\n" -" ld.global.s32 %r44, [%rd35+0];\n" -" .loc 16 185 0\n" -" shr.s32 %r45, %r44, 30;\n" -" and.b32 %r46, %r45, 3;\n" -" cvt.s64.s32 %rd43, %r46;\n" -" mul.wide.s32 %rd44, %r46, 4;\n" -" add.u64 %rd45, %rd1, %rd44;\n" -" ld.shared.f32 %f41, [%rd45+0];\n" -" .loc 16 186 0\n" -" mov.f32 %f42, 0f3f800000; \n" -" ld.shared.f32 %f43, [%rd45+16];\n" -" sub.ftz.f32 %f44, %f42, %f43;\n" -" .loc 16 189 0\n" -" and.b32 %r47, %r44, 1073741823;\n" -" mov.u32 %r48, %r47;\n" -" mov.s32 %r49, 0;\n" -" mov.u32 %r50, %r49;\n" -" mov.s32 %r51, 0;\n" -" mov.u32 %r52, %r51;\n" -" mov.s32 %r53, 0;\n" -" mov.u32 %r54, %r53;\n" -" tex.1d.v4.f32.s32 {%f45,%f46,%f47,%f48},[pos_tex,{%r48,%r50,%r52,%r54}];\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" mov.f32 %f51, %f47;\n" -" mov.f32 %f52, %f48;\n" -" sub.ftz.f32 %f53, %f27, %f50;\n" -" sub.ftz.f32 %f54, %f26, %f49;\n" -" sub.ftz.f32 %f55, %f28, %f51;\n" -" mul.ftz.f32 %f56, %f53, %f53;\n" -" fma.rn.ftz.f32 %f57, %f54, %f54, %f56;\n" -" fma.rn.ftz.f32 %f58, %f55, %f55, %f57;\n" -" add.ftz.f32 %f59, %f35, %f52;\n" -" cvt.rzi.ftz.s32.f32 %r55, %f59;\n" -" cvt.s64.s32 %rd46, %r55;\n" -" mul.wide.s32 %rd47, %r55, 16;\n" -" add.u64 %rd48, %rd47, %rd7;\n" -" ld.shared.f32 %f60, [%rd48+8];\n" -" setp.gt.ftz.f32 %p7, %f60, %f58;\n" -" @!%p7 bra $Lt_1_29954;\n" -" rcp.approx.ftz.f32 %f61, %f58;\n" -" ld.shared.f32 %f62, [%rd48+12];\n" -" setp.lt.ftz.f32 %p8, %f58, %f62;\n" -" @!%p8 bra $Lt_1_28162;\n" -" .loc 16 203 0\n" -" mul.ftz.f32 %f63, %f61, %f61;\n" -" mul.ftz.f32 %f64, %f61, %f63;\n" -" mov.f32 %f65, %f64;\n" -" .loc 16 204 0\n" -" mul.ftz.f32 %f66, %f64, %f41;\n" -" ld.shared.v2.f32 {%f67,%f68}, [%rd48+0];\n" -" mul.ftz.f32 %f69, %f67, %f64;\n" -" sub.ftz.f32 %f70, %f69, %f68;\n" -" mul.ftz.f32 %f71, %f66, %f70;\n" -" bra.uni $Lt_1_27906;\n" -"$Lt_1_28162:\n" -" .loc 16 206 0\n" -" mov.f32 %f71, 0f00000000; \n" -"$Lt_1_27906:\n" -" ld.param.f32 %f72, [__cudaparm_kernel_pair_fast_cut_coulsq];\n" -" setp.gt.ftz.f32 %p9, %f72, %f58;\n" -" @!%p9 bra $Lt_1_28674;\n" -" .loc 20 518 0\n" -" rsqrt.approx.ftz.f32 %f73, %f61;\n" -" ld.param.f32 %f74, [__cudaparm_kernel_pair_fast_g_ewald];\n" -" mul.ftz.f32 %f75, %f74, %f73;\n" -" mul.ftz.f32 %f76, %f75, %f75;\n" -" neg.ftz.f32 %f77, %f76;\n" -" mov.f32 %f78, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f79, %f77, %f78;\n" -" ex2.approx.ftz.f32 %f80, %f79;\n" -" .loc 16 213 0\n" -" mov.f32 %f81, 0f3f800000; \n" -" mov.f32 %f82, 0f3ea7ba05; \n" -" fma.rn.ftz.f32 %f83, %f82, %f75, %f81;\n" -" rcp.approx.ftz.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" -" fma.rn.ftz.f32 %f90, %f89, %f84, %f88;\n" -" fma.rn.ftz.f32 %f91, %f84, %f90, %f87;\n" -" fma.rn.ftz.f32 %f92, %f84, %f91, %f86;\n" -" fma.rn.ftz.f32 %f93, %f84, %f92, %f85;\n" -" mul.ftz.f32 %f94, %f84, %f93;\n" -" mul.ftz.f32 %f95, %f80, %f94;\n" -" mov.f32 %f96, %f95;\n" -" .loc 16 214 0\n" -" mov.u32 %r56, %r47;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" mov.s32 %r61, 0;\n" -" mov.u32 %r62, %r61;\n" -" tex.1d.v4.f32.s32 {%f97,%f98,%f99,%f100},[q_tex,{%r56,%r58,%r60,%r62}];\n" -" mov.f32 %f101, %f97;\n" -" ld.param.f32 %f102, [__cudaparm_kernel_pair_fast_qqrd2e];\n" -" mul.ftz.f32 %f103, %f102, %f34;\n" -" mul.ftz.f32 %f104, %f103, %f101;\n" -" div.approx.ftz.f32 %f105, %f104, %f73;\n" -" mov.f32 %f106, %f105;\n" -" .loc 16 215 0\n" -" mov.f32 %f107, 0f3f906ebb; \n" -" mul.ftz.f32 %f108, %f75, %f107;\n" -" fma.rn.ftz.f32 %f109, %f80, %f108, %f95;\n" -" sub.ftz.f32 %f110, %f109, %f44;\n" -" mul.ftz.f32 %f111, %f105, %f110;\n" -" bra.uni $Lt_1_28418;\n" -"$Lt_1_28674:\n" -" .loc 16 217 0\n" -" mov.f32 %f111, 0f00000000; \n" -"$Lt_1_28418:\n" -" .loc 16 221 0\n" -" add.ftz.f32 %f112, %f111, %f71;\n" -" mul.ftz.f32 %f113, %f112, %f61;\n" -" fma.rn.ftz.f32 %f38, %f54, %f113, %f38;\n" -" .loc 16 222 0\n" -" fma.rn.ftz.f32 %f37, %f53, %f113, %f37;\n" -" .loc 16 223 0\n" -" fma.rn.ftz.f32 %f36, %f55, %f113, %f36;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p10, %r63, %r64;\n" -" @%p10 bra $Lt_1_29442;\n" -" .loc 16 226 0\n" -" mov.f32 %f114, %f106;\n" -" mov.f32 %f115, %f96;\n" -" sub.ftz.f32 %f116, %f115, %f44;\n" -" fma.rn.ftz.f32 %f117, %f114, %f116, %f39;\n" -" selp.f32 %f39, %f117, %f39, %p9;\n" -" @!%p8 bra $Lt_1_29442;\n" -" .loc 16 229 0\n" -" add.u64 %rd49, %rd47, %rd13;\n" -" mov.f32 %f118, %f65;\n" -" ld.shared.v4.f32 {%f119,%f120,%f121,_}, [%rd49+0];\n" -" mul.ftz.f32 %f122, %f119, %f118;\n" -" sub.ftz.f32 %f123, %f122, %f120;\n" -" mul.ftz.f32 %f124, %f118, %f123;\n" -" .loc 16 230 0\n" -" sub.ftz.f32 %f125, %f124, %f121;\n" -" fma.rn.ftz.f32 %f40, %f41, %f125, %f40;\n" -"$Lt_1_29442:\n" -"$Lt_1_28930:\n" -" ld.param.s32 %r65, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r66, 0;\n" -" setp.le.s32 %p11, %r65, %r66;\n" -" @%p11 bra $Lt_1_29954;\n" -" .loc 16 234 0\n" -" mov.f32 %f126, %f11;\n" -" mul.ftz.f32 %f127, %f54, %f54;\n" -" fma.rn.ftz.f32 %f128, %f113, %f127, %f126;\n" -" mov.f32 %f11, %f128;\n" -" .loc 16 235 0\n" -" mov.f32 %f129, %f13;\n" -" fma.rn.ftz.f32 %f130, %f113, %f56, %f129;\n" -" mov.f32 %f13, %f130;\n" -" .loc 16 236 0\n" -" mov.f32 %f131, %f15;\n" -" mul.ftz.f32 %f132, %f55, %f55;\n" -" fma.rn.ftz.f32 %f133, %f113, %f132, %f131;\n" -" mov.f32 %f15, %f133;\n" -" .loc 16 237 0\n" -" mov.f32 %f134, %f17;\n" -" mul.ftz.f32 %f135, %f53, %f54;\n" -" fma.rn.ftz.f32 %f136, %f113, %f135, %f134;\n" -" mov.f32 %f17, %f136;\n" -" .loc 16 238 0\n" -" mov.f32 %f137, %f19;\n" -" mul.ftz.f32 %f138, %f54, %f55;\n" -" fma.rn.ftz.f32 %f139, %f113, %f138, %f137;\n" -" mov.f32 %f19, %f139;\n" -" .loc 16 239 0\n" -" mul.ftz.f32 %f140, %f53, %f55;\n" -" fma.rn.ftz.f32 %f20, %f113, %f140, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_29954:\n" -"$Lt_1_27394:\n" -" .loc 16 181 0\n" -" mul.lo.u64 %rd50, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd50;\n" -" setp.lt.u64 %p12, %rd35, %rd34;\n" -" @%p12 bra $Lt_1_27138;\n" -" bra.uni $Lt_1_26626;\n" -"$Lt_1_36354:\n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -"$Lt_1_26626:\n" -" mov.u32 %r67, 1;\n" -" setp.le.s32 %p13, %r6, %r67;\n" -" @%p13 bra $Lt_1_32770;\n" -" .loc 16 244 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_32745_55_non_const_red_acc7232;\n" -" cvt.s64.s32 %rd52, %r1;\n" -" mul.wide.s32 %rd53, %r1, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f141, %f38;\n" -" st.shared.f32 [%rd54+0], %f141;\n" -" mov.f32 %f142, %f37;\n" -" st.shared.f32 [%rd54+512], %f142;\n" -" mov.f32 %f143, %f36;\n" -" st.shared.f32 [%rd54+1024], %f143;\n" -" mov.f32 %f144, %f40;\n" -" st.shared.f32 [%rd54+1536], %f144;\n" -" mov.f32 %f145, %f39;\n" -" st.shared.f32 [%rd54+2048], %f145;\n" -" shr.s32 %r68, %r6, 31;\n" -" mov.s32 %r69, 1;\n" -" and.b32 %r70, %r68, %r69;\n" -" add.s32 %r71, %r70, %r6;\n" -" shr.s32 %r72, %r71, 1;\n" -" mov.s32 %r73, %r72;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p14, %r72, %r74;\n" -" @!%p14 bra $Lt_1_31234;\n" -"$Lt_1_31746:\n" -" setp.ge.u32 %p15, %r18, %r73;\n" -" @%p15 bra $Lt_1_32002;\n" -" add.u32 %r75, %r1, %r73;\n" -" cvt.u64.u32 %rd55, %r75;\n" -" mul.wide.u32 %rd56, %r75, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f146, [%rd57+0];\n" -" add.ftz.f32 %f141, %f146, %f141;\n" -" st.shared.f32 [%rd54+0], %f141;\n" -" ld.shared.f32 %f147, [%rd57+512];\n" -" add.ftz.f32 %f142, %f147, %f142;\n" -" st.shared.f32 [%rd54+512], %f142;\n" -" ld.shared.f32 %f148, [%rd57+1024];\n" -" add.ftz.f32 %f143, %f148, %f143;\n" -" st.shared.f32 [%rd54+1024], %f143;\n" -" ld.shared.f32 %f149, [%rd57+1536];\n" -" add.ftz.f32 %f144, %f149, %f144;\n" -" st.shared.f32 [%rd54+1536], %f144;\n" -" ld.shared.f32 %f150, [%rd57+2048];\n" -" add.ftz.f32 %f145, %f150, %f145;\n" -" st.shared.f32 [%rd54+2048], %f145;\n" -"$Lt_1_32002:\n" -" shr.u32 %r73, %r73, 1;\n" -" mov.u32 %r76, 0;\n" -" setp.ne.u32 %p16, %r73, %r76;\n" -" @%p16 bra $Lt_1_31746;\n" -"$Lt_1_31234:\n" -" mov.f32 %f38, %f141;\n" -" mov.f32 %f37, %f142;\n" -" mov.f32 %f36, %f143;\n" -" mov.f32 %f40, %f144;\n" -" mov.f32 %f39, %f145;\n" -" ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r78, 0;\n" -" setp.le.s32 %p17, %r77, %r78;\n" -" @%p17 bra $Lt_1_32770;\n" -" mov.f32 %f141, %f11;\n" -" st.shared.f32 [%rd54+0], %f141;\n" -" mov.f32 %f142, %f13;\n" -" st.shared.f32 [%rd54+512], %f142;\n" -" mov.f32 %f143, %f15;\n" -" st.shared.f32 [%rd54+1024], %f143;\n" -" mov.f32 %f144, %f17;\n" -" st.shared.f32 [%rd54+1536], %f144;\n" -" mov.f32 %f145, %f19;\n" -" st.shared.f32 [%rd54+2048], %f145;\n" -" mov.f32 %f151, %f20;\n" -" st.shared.f32 [%rd54+2560], %f151;\n" -" mov.s32 %r79, %r72;\n" -" @!%p14 bra $Lt_1_33282;\n" -"$Lt_1_33794:\n" -" setp.ge.u32 %p18, %r18, %r79;\n" -" @%p18 bra $Lt_1_34050;\n" -" add.u32 %r80, %r1, %r79;\n" -" cvt.u64.u32 %rd58, %r80;\n" -" mul.wide.u32 %rd59, %r80, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f152, [%rd60+0];\n" -" add.ftz.f32 %f141, %f152, %f141;\n" -" st.shared.f32 [%rd54+0], %f141;\n" -" ld.shared.f32 %f153, [%rd60+512];\n" -" add.ftz.f32 %f142, %f153, %f142;\n" -" st.shared.f32 [%rd54+512], %f142;\n" -" ld.shared.f32 %f154, [%rd60+1024];\n" -" add.ftz.f32 %f143, %f154, %f143;\n" -" st.shared.f32 [%rd54+1024], %f143;\n" -" ld.shared.f32 %f155, [%rd60+1536];\n" -" add.ftz.f32 %f144, %f155, %f144;\n" -" st.shared.f32 [%rd54+1536], %f144;\n" -" ld.shared.f32 %f156, [%rd60+2048];\n" -" add.ftz.f32 %f145, %f156, %f145;\n" -" st.shared.f32 [%rd54+2048], %f145;\n" -" ld.shared.f32 %f157, [%rd60+2560];\n" -" add.ftz.f32 %f151, %f157, %f151;\n" -" st.shared.f32 [%rd54+2560], %f151;\n" -"$Lt_1_34050:\n" -" shr.u32 %r79, %r79, 1;\n" -" mov.u32 %r81, 0;\n" -" setp.ne.u32 %p19, %r79, %r81;\n" -" @%p19 bra $Lt_1_33794;\n" -"$Lt_1_33282:\n" -" mov.f32 %f11, %f141;\n" -" mov.f32 %f13, %f142;\n" -" mov.f32 %f15, %f143;\n" -" mov.f32 %f17, %f144;\n" -" mov.f32 %f19, %f145;\n" -" mov.f32 %f21, %f151;\n" -"$Lt_1_32770:\n" -"$Lt_1_30722:\n" -" mov.u32 %r82, 0;\n" -" setp.ne.s32 %p20, %r18, %r82;\n" -" @%p20 bra $Lt_1_34818;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd62, %rd61, %rd18;\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p21, %r83, %r84;\n" -" @%p21 bra $Lt_1_35330;\n" -" st.global.f32 [%rd62+0], %f40;\n" -" cvt.s64.s32 %rd63, %r13;\n" -" mul.wide.s32 %rd64, %r13, 4;\n" -" add.u64 %rd65, %rd64, %rd62;\n" -" st.global.f32 [%rd65+0], %f39;\n" -" add.u64 %rd62, %rd64, %rd65;\n" -"$Lt_1_35330:\n" -" ld.param.s32 %r85, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r86, 0;\n" -" setp.le.s32 %p22, %r85, %r86;\n" -" @%p22 bra $Lt_1_35842;\n" -" mov.f32 %f158, %f11;\n" -" st.global.f32 [%rd62+0], %f158;\n" -" cvt.s64.s32 %rd66, %r13;\n" -" mul.wide.s32 %rd67, %r13, 4;\n" -" add.u64 %rd68, %rd67, %rd62;\n" -" mov.f32 %f159, %f13;\n" -" st.global.f32 [%rd68+0], %f159;\n" -" add.u64 %rd69, %rd67, %rd68;\n" -" mov.f32 %f160, %f15;\n" -" st.global.f32 [%rd69+0], %f160;\n" -" add.u64 %rd70, %rd67, %rd69;\n" -" mov.f32 %f161, %f17;\n" -" st.global.f32 [%rd70+0], %f161;\n" -" add.u64 %rd62, %rd67, %rd70;\n" -" mov.f32 %f162, %f19;\n" -" st.global.f32 [%rd62+0], %f162;\n" -" mov.f32 %f163, %f21;\n" -" add.u64 %rd71, %rd67, %rd62;\n" -" st.global.f32 [%rd71+0], %f163;\n" -"$Lt_1_35842:\n" -" ld.param.u64 %rd72, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd73, %rd17, 16;\n" -" add.u64 %rd74, %rd72, %rd73;\n" -" mov.f32 %f164, %f165;\n" -" st.global.v4.f32 [%rd74+0], {%f38,%f37,%f36,%f164};\n" -"$Lt_1_34818:\n" -"$Lt_1_25602:\n" -" .loc 16 247 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/lj_coul_ptx.h b/lib/gpu/lj_coul_ptx.h deleted file mode 100644 index 1241877c42..0000000000 --- a/lib/gpu/lj_coul_ptx.h +++ /dev/null @@ -1,1002 +0,0 @@ -const char * lj_coul = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .global .texref q_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_lj1,\n" -" .param .u64 __cudaparm_kernel_pair_lj3,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_q_,\n" -" .param .u64 __cudaparm_kernel_pair_cutsq,\n" -" .param .f32 __cudaparm_kernel_pair_qqrd2e,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<86>;\n" -" .reg .u64 %rd<67>;\n" -" .reg .f32 %f<130>;\n" -" .reg .pred %p<21>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32541_33_non_const_sp_lj112[32];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32626_55_non_const_red_acc144[3072];\n" -" .loc 16 36 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 41 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 42 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 43 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 44 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 45 0\n" -" ld.global.f32 %f5, [%rd1+16];\n" -" .loc 16 46 0\n" -" ld.global.f32 %f6, [%rd1+20];\n" -" .loc 16 47 0\n" -" ld.global.f32 %f7, [%rd1+24];\n" -" .loc 16 48 0\n" -" ld.global.f32 %f8, [%rd1+28];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32541_33_non_const_sp_lj112+16], {%f5,%f6,%f7,%f8};\n" -" .loc 16 56 0\n" -" mov.f32 %f9, 0f00000000; \n" -" mov.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f00000000; \n" -" mov.f32 %f12, %f11;\n" -" mov.f32 %f13, 0f00000000; \n" -" mov.f32 %f14, %f13;\n" -" mov.f32 %f15, 0f00000000; \n" -" mov.f32 %f16, %f15;\n" -" mov.f32 %f17, 0f00000000; \n" -" mov.f32 %f18, %f17;\n" -" mov.f32 %f19, 0f00000000; \n" -" mov.f32 %f20, %f19;\n" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_30210;\n" -" .loc 16 61 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd5, %rd3, %rd4;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" sub.s32 %r13, %r1, 1;\n" -" and.b32 %r14, %r13, %r2;\n" -" cvt.s64.s32 %rd9, %r14;\n" -" mul.wide.s32 %rd10, %r14, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd4;\n" -" @%p2 bra $Lt_0_21762;\n" -" cvt.s32.s64 %r15, %rd6;\n" -" mul.lo.s32 %r16, %r15, %r1;\n" -" mov.s32 %r17, %r16;\n" -" mul.lo.s32 %r18, %r13, %r8;\n" -" add.s32 %r19, %r15, %r18;\n" -" cvt.s64.s32 %rd12, %r19;\n" -" mul.wide.s32 %rd13, %r19, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r20, %r13, %r12;\n" -" cvt.s64.s32 %rd15, %r20;\n" -" div.s32 %r21, %r12, %r1;\n" -" mul.lo.s32 %r22, %r16, %r21;\n" -" cvt.s64.s32 %rd16, %r22;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_21506;\n" -"$Lt_0_21762:\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" ld.global.s32 %r23, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r23;\n" -" mul.wide.s32 %rd23, %r23, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r12;\n" -" mul.wide.s32 %rd26, %r12, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r17, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_21506:\n" -" .loc 16 64 0\n" -" mov.u32 %r24, %r10;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f21,%f22,%f23,%f24},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f25, %f21;\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" .loc 16 65 0\n" -" mov.u32 %r31, %r10;\n" -" mov.s32 %r32, 0;\n" -" mov.u32 %r33, %r32;\n" -" mov.s32 %r34, 0;\n" -" mov.u32 %r35, %r34;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" tex.1d.v4.f32.s32 {%f29,%f30,%f31,%f32},[q_tex,{%r31,%r33,%r35,%r37}];\n" -" mov.f32 %f33, %f29;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_31746;\n" -" cvt.rzi.ftz.s32.f32 %r38, %f28;\n" -" cvt.s64.s32 %rd27, %r17;\n" -" ld.param.s32 %r39, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r40, %r39, %r38;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_cutsq];\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32541_33_non_const_sp_lj112;\n" -"$Lt_0_22530:\n" -" .loc 16 69 0\n" -" ld.global.s32 %r41, [%rd20+0];\n" -" .loc 16 72 0\n" -" shr.s32 %r42, %r41, 30;\n" -" and.b32 %r43, %r42, 3;\n" -" cvt.s64.s32 %rd30, %r43;\n" -" mul.wide.s32 %rd31, %r43, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f39, [%rd32+0];\n" -" .loc 16 76 0\n" -" and.b32 %r44, %r41, 1073741823;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" mov.s32 %r48, 0;\n" -" mov.u32 %r49, %r48;\n" -" mov.s32 %r50, 0;\n" -" mov.u32 %r51, %r50;\n" -" tex.1d.v4.f32.s32 {%f40,%f41,%f42,%f43},[pos_tex,{%r45,%r47,%r49,%r51}];\n" -" mov.f32 %f44, %f40;\n" -" mov.f32 %f45, %f41;\n" -" mov.f32 %f46, %f42;\n" -" mov.f32 %f47, %f43;\n" -" cvt.rzi.ftz.s32.f32 %r52, %f47;\n" -" sub.ftz.f32 %f48, %f26, %f45;\n" -" sub.ftz.f32 %f49, %f25, %f44;\n" -" sub.ftz.f32 %f50, %f27, %f46;\n" -" mul.ftz.f32 %f51, %f48, %f48;\n" -" fma.rn.ftz.f32 %f52, %f49, %f49, %f51;\n" -" add.s32 %r53, %r52, %r40;\n" -" cvt.s64.s32 %rd33, %r53;\n" -" fma.rn.ftz.f32 %f53, %f50, %f50, %f52;\n" -" mul.wide.s32 %rd34, %r53, 4;\n" -" add.u64 %rd35, %rd28, %rd34;\n" -" ld.global.f32 %f54, [%rd35+0];\n" -" setp.gt.ftz.f32 %p4, %f54, %f53;\n" -" @!%p4 bra $Lt_0_25346;\n" -" mul.lo.u64 %rd36, %rd33, 16;\n" -" rcp.approx.ftz.f32 %f55, %f53;\n" -" ld.param.u64 %rd37, [__cudaparm_kernel_pair_lj1];\n" -" add.u64 %rd38, %rd37, %rd36;\n" -" ld.global.f32 %f56, [%rd38+8];\n" -" setp.lt.ftz.f32 %p5, %f53, %f56;\n" -" @!%p5 bra $Lt_0_23554;\n" -" .loc 16 91 0\n" -" mul.ftz.f32 %f57, %f55, %f55;\n" -" mul.ftz.f32 %f58, %f55, %f57;\n" -" mov.f32 %f59, %f58;\n" -" .loc 16 92 0\n" -" mul.ftz.f32 %f60, %f58, %f39;\n" -" ld.global.v2.f32 {%f61,%f62}, [%rd38+0];\n" -" mul.ftz.f32 %f63, %f61, %f58;\n" -" sub.ftz.f32 %f64, %f63, %f62;\n" -" mul.ftz.f32 %f65, %f60, %f64;\n" -" bra.uni $Lt_0_23298;\n" -"$Lt_0_23554:\n" -" .loc 16 94 0\n" -" mov.f32 %f65, 0f00000000; \n" -"$Lt_0_23298:\n" -" ld.global.f32 %f66, [%rd38+12];\n" -" setp.gt.ftz.f32 %p6, %f66, %f53;\n" -" @!%p6 bra $Lt_0_24066;\n" -" .loc 16 97 0\n" -" mov.u32 %r54, %r44;\n" -" mov.s32 %r55, 0;\n" -" mov.u32 %r56, %r55;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" tex.1d.v4.f32.s32 {%f67,%f68,%f69,%f70},[q_tex,{%r54,%r56,%r58,%r60}];\n" -" mov.f32 %f71, %f67;\n" -" ld.shared.f32 %f72, [%rd32+16];\n" -" ld.param.f32 %f73, [__cudaparm_kernel_pair_qqrd2e];\n" -" mul.ftz.f32 %f74, %f73, %f33;\n" -" mul.ftz.f32 %f75, %f71, %f74;\n" -" rsqrt.approx.ftz.f32 %f76, %f53;\n" -" mul.ftz.f32 %f77, %f75, %f76;\n" -" mul.ftz.f32 %f78, %f72, %f77;\n" -" bra.uni $Lt_0_23810;\n" -"$Lt_0_24066:\n" -" .loc 16 99 0\n" -" mov.f32 %f78, 0f00000000; \n" -"$Lt_0_23810:\n" -" .loc 16 103 0\n" -" add.ftz.f32 %f79, %f78, %f65;\n" -" mul.ftz.f32 %f80, %f79, %f55;\n" -" fma.rn.ftz.f32 %f36, %f49, %f80, %f36;\n" -" .loc 16 104 0\n" -" fma.rn.ftz.f32 %f35, %f48, %f80, %f35;\n" -" .loc 16 105 0\n" -" fma.rn.ftz.f32 %f34, %f50, %f80, %f34;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p7, %r61, %r62;\n" -" @%p7 bra $Lt_0_24834;\n" -" .loc 16 108 0\n" -" add.ftz.f32 %f37, %f78, %f37;\n" -" @!%p5 bra $Lt_0_24834;\n" -" .loc 16 111 0\n" -" ld.param.u64 %rd39, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd40, %rd39, %rd36;\n" -" mov.f32 %f81, %f59;\n" -" ld.global.v4.f32 {%f82,%f83,%f84,_}, [%rd40+0];\n" -" mul.ftz.f32 %f85, %f82, %f81;\n" -" sub.ftz.f32 %f86, %f85, %f83;\n" -" mul.ftz.f32 %f87, %f81, %f86;\n" -" sub.ftz.f32 %f88, %f87, %f84;\n" -" fma.rn.ftz.f32 %f38, %f39, %f88, %f38;\n" -"$Lt_0_24834:\n" -"$Lt_0_24322:\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p8, %r63, %r64;\n" -" @%p8 bra $Lt_0_25346;\n" -" .loc 16 115 0\n" -" mov.f32 %f89, %f10;\n" -" mul.ftz.f32 %f90, %f49, %f49;\n" -" fma.rn.ftz.f32 %f91, %f80, %f90, %f89;\n" -" mov.f32 %f10, %f91;\n" -" .loc 16 116 0\n" -" mov.f32 %f92, %f12;\n" -" fma.rn.ftz.f32 %f93, %f80, %f51, %f92;\n" -" mov.f32 %f12, %f93;\n" -" .loc 16 117 0\n" -" mov.f32 %f94, %f14;\n" -" mul.ftz.f32 %f95, %f50, %f50;\n" -" fma.rn.ftz.f32 %f96, %f80, %f95, %f94;\n" -" mov.f32 %f14, %f96;\n" -" .loc 16 118 0\n" -" mov.f32 %f97, %f16;\n" -" mul.ftz.f32 %f98, %f48, %f49;\n" -" fma.rn.ftz.f32 %f99, %f80, %f98, %f97;\n" -" mov.f32 %f16, %f99;\n" -" .loc 16 119 0\n" -" mov.f32 %f100, %f18;\n" -" mul.ftz.f32 %f101, %f49, %f50;\n" -" fma.rn.ftz.f32 %f102, %f80, %f101, %f100;\n" -" mov.f32 %f18, %f102;\n" -" .loc 16 120 0\n" -" mul.ftz.f32 %f103, %f48, %f50;\n" -" fma.rn.ftz.f32 %f19, %f80, %f103, %f19;\n" -" mov.f32 %f20, %f19;\n" -"$Lt_0_25346:\n" -"$Lt_0_22786:\n" -" .loc 16 68 0\n" -" mul.lo.u64 %rd41, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd41;\n" -" setp.lt.u64 %p9, %rd20, %rd19;\n" -" @%p9 bra $Lt_0_22530;\n" -" bra.uni $Lt_0_22018;\n" -"$Lt_0_31746:\n" -" mov.f32 %f34, 0f00000000; \n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -"$Lt_0_22018:\n" -" mov.u32 %r65, 1;\n" -" setp.le.s32 %p10, %r1, %r65;\n" -" @%p10 bra $Lt_0_28162;\n" -" .loc 16 125 0\n" -" mov.u64 %rd42, __cuda___cuda_local_var_32626_55_non_const_red_acc144;\n" -" cvt.s64.s32 %rd43, %r2;\n" -" mul.wide.s32 %rd44, %r2, 4;\n" -" add.u64 %rd45, %rd42, %rd44;\n" -" mov.f32 %f104, %f36;\n" -" st.shared.f32 [%rd45+0], %f104;\n" -" mov.f32 %f105, %f35;\n" -" st.shared.f32 [%rd45+512], %f105;\n" -" mov.f32 %f106, %f34;\n" -" st.shared.f32 [%rd45+1024], %f106;\n" -" mov.f32 %f107, %f38;\n" -" st.shared.f32 [%rd45+1536], %f107;\n" -" mov.f32 %f108, %f37;\n" -" st.shared.f32 [%rd45+2048], %f108;\n" -" shr.s32 %r66, %r1, 31;\n" -" mov.s32 %r67, 1;\n" -" and.b32 %r68, %r66, %r67;\n" -" add.s32 %r69, %r68, %r1;\n" -" shr.s32 %r70, %r69, 1;\n" -" mov.s32 %r71, %r70;\n" -" mov.u32 %r72, 0;\n" -" setp.ne.u32 %p11, %r70, %r72;\n" -" @!%p11 bra $Lt_0_26626;\n" -"$Lt_0_27138:\n" -" setp.ge.u32 %p12, %r14, %r71;\n" -" @%p12 bra $Lt_0_27394;\n" -" add.u32 %r73, %r2, %r71;\n" -" cvt.u64.u32 %rd46, %r73;\n" -" mul.wide.u32 %rd47, %r73, 4;\n" -" add.u64 %rd48, %rd42, %rd47;\n" -" ld.shared.f32 %f109, [%rd48+0];\n" -" add.ftz.f32 %f104, %f109, %f104;\n" -" st.shared.f32 [%rd45+0], %f104;\n" -" ld.shared.f32 %f110, [%rd48+512];\n" -" add.ftz.f32 %f105, %f110, %f105;\n" -" st.shared.f32 [%rd45+512], %f105;\n" -" ld.shared.f32 %f111, [%rd48+1024];\n" -" add.ftz.f32 %f106, %f111, %f106;\n" -" st.shared.f32 [%rd45+1024], %f106;\n" -" ld.shared.f32 %f112, [%rd48+1536];\n" -" add.ftz.f32 %f107, %f112, %f107;\n" -" st.shared.f32 [%rd45+1536], %f107;\n" -" ld.shared.f32 %f113, [%rd48+2048];\n" -" add.ftz.f32 %f108, %f113, %f108;\n" -" st.shared.f32 [%rd45+2048], %f108;\n" -"$Lt_0_27394:\n" -" shr.u32 %r71, %r71, 1;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p13, %r71, %r74;\n" -" @%p13 bra $Lt_0_27138;\n" -"$Lt_0_26626:\n" -" mov.f32 %f36, %f104;\n" -" mov.f32 %f35, %f105;\n" -" mov.f32 %f34, %f106;\n" -" mov.f32 %f38, %f107;\n" -" mov.f32 %f37, %f108;\n" -" ld.param.s32 %r75, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r76, 0;\n" -" setp.le.s32 %p14, %r75, %r76;\n" -" @%p14 bra $Lt_0_28162;\n" -" mov.f32 %f104, %f10;\n" -" st.shared.f32 [%rd45+0], %f104;\n" -" mov.f32 %f105, %f12;\n" -" st.shared.f32 [%rd45+512], %f105;\n" -" mov.f32 %f106, %f14;\n" -" st.shared.f32 [%rd45+1024], %f106;\n" -" mov.f32 %f107, %f16;\n" -" st.shared.f32 [%rd45+1536], %f107;\n" -" mov.f32 %f108, %f18;\n" -" st.shared.f32 [%rd45+2048], %f108;\n" -" mov.f32 %f114, %f19;\n" -" st.shared.f32 [%rd45+2560], %f114;\n" -" mov.s32 %r77, %r70;\n" -" @!%p11 bra $Lt_0_28674;\n" -"$Lt_0_29186:\n" -" setp.ge.u32 %p15, %r14, %r77;\n" -" @%p15 bra $Lt_0_29442;\n" -" add.u32 %r78, %r2, %r77;\n" -" cvt.u64.u32 %rd49, %r78;\n" -" mul.wide.u32 %rd50, %r78, 4;\n" -" add.u64 %rd51, %rd42, %rd50;\n" -" ld.shared.f32 %f115, [%rd51+0];\n" -" add.ftz.f32 %f104, %f115, %f104;\n" -" st.shared.f32 [%rd45+0], %f104;\n" -" ld.shared.f32 %f116, [%rd51+512];\n" -" add.ftz.f32 %f105, %f116, %f105;\n" -" st.shared.f32 [%rd45+512], %f105;\n" -" ld.shared.f32 %f117, [%rd51+1024];\n" -" add.ftz.f32 %f106, %f117, %f106;\n" -" st.shared.f32 [%rd45+1024], %f106;\n" -" ld.shared.f32 %f118, [%rd51+1536];\n" -" add.ftz.f32 %f107, %f118, %f107;\n" -" st.shared.f32 [%rd45+1536], %f107;\n" -" ld.shared.f32 %f119, [%rd51+2048];\n" -" add.ftz.f32 %f108, %f119, %f108;\n" -" st.shared.f32 [%rd45+2048], %f108;\n" -" ld.shared.f32 %f120, [%rd51+2560];\n" -" add.ftz.f32 %f114, %f120, %f114;\n" -" st.shared.f32 [%rd45+2560], %f114;\n" -"$Lt_0_29442:\n" -" shr.u32 %r77, %r77, 1;\n" -" mov.u32 %r79, 0;\n" -" setp.ne.u32 %p16, %r77, %r79;\n" -" @%p16 bra $Lt_0_29186;\n" -"$Lt_0_28674:\n" -" mov.f32 %f10, %f104;\n" -" mov.f32 %f12, %f105;\n" -" mov.f32 %f14, %f106;\n" -" mov.f32 %f16, %f107;\n" -" mov.f32 %f18, %f108;\n" -" mov.f32 %f20, %f114;\n" -"$Lt_0_28162:\n" -"$Lt_0_26114:\n" -" mov.u32 %r80, 0;\n" -" setp.ne.s32 %p17, %r14, %r80;\n" -" @%p17 bra $Lt_0_30210;\n" -" ld.param.u64 %rd52, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd53, %rd52, %rd3;\n" -" ld.param.s32 %r81, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r82, 0;\n" -" setp.le.s32 %p18, %r81, %r82;\n" -" @%p18 bra $Lt_0_30722;\n" -" st.global.f32 [%rd53+0], %f38;\n" -" cvt.s64.s32 %rd54, %r9;\n" -" mul.wide.s32 %rd55, %r9, 4;\n" -" add.u64 %rd56, %rd55, %rd53;\n" -" st.global.f32 [%rd56+0], %f37;\n" -" add.u64 %rd53, %rd55, %rd56;\n" -"$Lt_0_30722:\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p19, %r83, %r84;\n" -" @%p19 bra $Lt_0_31234;\n" -" mov.f32 %f121, %f10;\n" -" st.global.f32 [%rd53+0], %f121;\n" -" cvt.s64.s32 %rd57, %r9;\n" -" mul.wide.s32 %rd58, %r9, 4;\n" -" add.u64 %rd59, %rd58, %rd53;\n" -" mov.f32 %f122, %f12;\n" -" st.global.f32 [%rd59+0], %f122;\n" -" add.u64 %rd60, %rd58, %rd59;\n" -" mov.f32 %f123, %f14;\n" -" st.global.f32 [%rd60+0], %f123;\n" -" add.u64 %rd61, %rd58, %rd60;\n" -" mov.f32 %f124, %f16;\n" -" st.global.f32 [%rd61+0], %f124;\n" -" add.u64 %rd53, %rd58, %rd61;\n" -" mov.f32 %f125, %f18;\n" -" st.global.f32 [%rd53+0], %f125;\n" -" mov.f32 %f126, %f20;\n" -" add.u64 %rd62, %rd58, %rd53;\n" -" st.global.f32 [%rd62+0], %f126;\n" -"$Lt_0_31234:\n" -" ld.param.u64 %rd63, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd64, %rd2, 16;\n" -" add.u64 %rd65, %rd63, %rd64;\n" -" mov.f32 %f127, %f128;\n" -" st.global.v4.f32 [%rd65+0], {%f36,%f35,%f34,%f127};\n" -"$Lt_0_30210:\n" -"$Lt_0_20994:\n" -" .loc 16 128 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .u64 __cudaparm_kernel_pair_fast_q_,\n" -" .param .u64 __cudaparm_kernel_pair_fast__cutsq,\n" -" .param .f32 __cudaparm_kernel_pair_fast_qqrd2e,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<88>;\n" -" .reg .u64 %rd<83>;\n" -" .reg .f32 %f<134>;\n" -" .reg .pred %p<24>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32646_33_non_const_sp_lj3320[32];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32643_34_non_const_lj13360[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32645_33_non_const_cutsq5296[484];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32644_34_non_const_lj35792[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32733_55_non_const_red_acc7728[3072];\n" -" .loc 16 138 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 7;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_23298;\n" -" .loc 16 147 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32646_33_non_const_sp_lj3320;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_23298:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32646_33_non_const_sp_lj3320;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_23810;\n" -" .loc 16 149 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32643_34_non_const_lj13360;\n" -" mov.u64 %rd8, __cuda___cuda_local_var_32645_33_non_const_cutsq5296;\n" -" cvt.s64.s32 %rd9, %r1;\n" -" mul.wide.s32 %rd10, %r1, 16;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_fast_lj1_in];\n" -" add.u64 %rd12, %rd11, %rd10;\n" -" add.u64 %rd13, %rd10, %rd7;\n" -" ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd12+0];\n" -" st.shared.v4.f32 [%rd13+0], {%f2,%f3,%f4,%f5};\n" -" .loc 16 150 0\n" -" mul.wide.s32 %rd14, %r1, 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_24322;\n" -" .loc 16 152 0\n" -" mov.u64 %rd18, __cuda___cuda_local_var_32644_34_non_const_lj35792;\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.v4.f32 [%rd21+0], {%f7,%f8,%f9,%f10};\n" -"$Lt_1_24322:\n" -" mov.u64 %rd18, __cuda___cuda_local_var_32644_34_non_const_lj35792;\n" -"$Lt_1_23810:\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32643_34_non_const_lj13360;\n" -" mov.u64 %rd8, __cuda___cuda_local_var_32645_33_non_const_cutsq5296;\n" -" mov.u64 %rd18, __cuda___cuda_local_var_32644_34_non_const_lj35792;\n" -" .loc 16 161 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 16 163 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_34050;\n" -" .loc 16 168 0\n" -" cvt.s64.s32 %rd22, %r12;\n" -" mul.wide.s32 %rd23, %r12, 4;\n" -" ld.param.u64 %rd24, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd25, %rd23, %rd24;\n" -" ld.global.s32 %r14, [%rd25+0];\n" -" ld.param.s32 %r15, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd26, %r15;\n" -" mul.wide.s32 %rd27, %r15, 4;\n" -" add.u64 %rd28, %rd27, %rd25;\n" -" ld.global.s32 %r16, [%rd28+0];\n" -" sub.s32 %r17, %r6, 1;\n" -" and.b32 %r18, %r17, %r1;\n" -" cvt.s64.s32 %rd29, %r18;\n" -" mul.wide.s32 %rd30, %r18, 4;\n" -" ld.param.u64 %rd31, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd31, %rd24;\n" -" @%p5 bra $Lt_1_25602;\n" -" cvt.s32.s64 %r19, %rd26;\n" -" mul.lo.s32 %r20, %r19, %r6;\n" -" mov.s32 %r21, %r20;\n" -" mul.lo.s32 %r22, %r17, %r12;\n" -" add.s32 %r23, %r19, %r22;\n" -" cvt.s64.s32 %rd32, %r23;\n" -" mul.wide.s32 %rd33, %r23, 4;\n" -" add.u64 %rd34, %rd28, %rd33;\n" -" and.b32 %r24, %r17, %r16;\n" -" cvt.s64.s32 %rd35, %r24;\n" -" div.s32 %r25, %r16, %r6;\n" -" mul.lo.s32 %r26, %r20, %r25;\n" -" cvt.s64.s32 %rd36, %r26;\n" -" add.u64 %rd37, %rd35, %rd36;\n" -" mul.lo.u64 %rd38, %rd37, 4;\n" -" add.u64 %rd39, %rd34, %rd38;\n" -" add.u64 %rd40, %rd30, %rd34;\n" -" bra.uni $Lt_1_25346;\n" -"$Lt_1_25602:\n" -" add.u64 %rd41, %rd27, %rd28;\n" -" ld.global.s32 %r27, [%rd41+0];\n" -" cvt.s64.s32 %rd42, %r27;\n" -" mul.wide.s32 %rd43, %r27, 4;\n" -" add.u64 %rd44, %rd31, %rd43;\n" -" cvt.s64.s32 %rd45, %r16;\n" -" mul.wide.s32 %rd46, %r16, 4;\n" -" add.u64 %rd39, %rd44, %rd46;\n" -" mov.s32 %r21, %r6;\n" -" add.u64 %rd40, %rd30, %rd44;\n" -"$Lt_1_25346:\n" -" .loc 16 171 0\n" -" mov.u32 %r28, %r14;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f23,%f24,%f25,%f26},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" mov.f32 %f30, %f26;\n" -" .loc 16 172 0\n" -" mov.u32 %r35, %r14;\n" -" mov.s32 %r36, 0;\n" -" mov.u32 %r37, %r36;\n" -" mov.s32 %r38, 0;\n" -" mov.u32 %r39, %r38;\n" -" mov.s32 %r40, 0;\n" -" mov.u32 %r41, %r40;\n" -" tex.1d.v4.f32.s32 {%f31,%f32,%f33,%f34},[q_tex,{%r35,%r37,%r39,%r41}];\n" -" mov.f32 %f35, %f31;\n" -" setp.ge.u64 %p6, %rd40, %rd39;\n" -" @%p6 bra $Lt_1_35586;\n" -" cvt.rzi.ftz.s32.f32 %r42, %f30;\n" -" cvt.s64.s32 %rd47, %r21;\n" -" mul.lo.s32 %r43, %r42, 11;\n" -" cvt.rn.f32.s32 %f36, %r43;\n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -" mov.f32 %f41, 0f00000000; \n" -"$Lt_1_26370:\n" -" .loc 16 177 0\n" -" ld.global.s32 %r44, [%rd40+0];\n" -" .loc 16 180 0\n" -" shr.s32 %r45, %r44, 30;\n" -" and.b32 %r46, %r45, 3;\n" -" cvt.s64.s32 %rd48, %r46;\n" -" mul.wide.s32 %rd49, %r46, 4;\n" -" add.u64 %rd50, %rd1, %rd49;\n" -" ld.shared.f32 %f42, [%rd50+0];\n" -" .loc 16 184 0\n" -" and.b32 %r47, %r44, 1073741823;\n" -" mov.u32 %r48, %r47;\n" -" mov.s32 %r49, 0;\n" -" mov.u32 %r50, %r49;\n" -" mov.s32 %r51, 0;\n" -" mov.u32 %r52, %r51;\n" -" mov.s32 %r53, 0;\n" -" mov.u32 %r54, %r53;\n" -" tex.1d.v4.f32.s32 {%f43,%f44,%f45,%f46},[pos_tex,{%r48,%r50,%r52,%r54}];\n" -" mov.f32 %f47, %f43;\n" -" mov.f32 %f48, %f44;\n" -" mov.f32 %f49, %f45;\n" -" mov.f32 %f50, %f46;\n" -" sub.ftz.f32 %f51, %f28, %f48;\n" -" sub.ftz.f32 %f52, %f27, %f47;\n" -" sub.ftz.f32 %f53, %f29, %f49;\n" -" mul.ftz.f32 %f54, %f51, %f51;\n" -" fma.rn.ftz.f32 %f55, %f52, %f52, %f54;\n" -" fma.rn.ftz.f32 %f56, %f53, %f53, %f55;\n" -" add.ftz.f32 %f57, %f36, %f50;\n" -" cvt.rzi.ftz.s32.f32 %r55, %f57;\n" -" cvt.s64.s32 %rd51, %r55;\n" -" mul.wide.s32 %rd52, %r55, 4;\n" -" add.u64 %rd53, %rd8, %rd52;\n" -" ld.shared.f32 %f58, [%rd53+0];\n" -" setp.gt.ftz.f32 %p7, %f58, %f56;\n" -" @!%p7 bra $Lt_1_29186;\n" -" rcp.approx.ftz.f32 %f59, %f56;\n" -" mul.lo.u64 %rd54, %rd51, 16;\n" -" add.u64 %rd55, %rd54, %rd7;\n" -" ld.shared.f32 %f60, [%rd55+8];\n" -" setp.lt.ftz.f32 %p8, %f56, %f60;\n" -" @!%p8 bra $Lt_1_27394;\n" -" .loc 16 198 0\n" -" mul.ftz.f32 %f61, %f59, %f59;\n" -" mul.ftz.f32 %f62, %f59, %f61;\n" -" mov.f32 %f63, %f62;\n" -" .loc 16 199 0\n" -" mul.ftz.f32 %f64, %f62, %f42;\n" -" ld.shared.v2.f32 {%f65,%f66}, [%rd55+0];\n" -" mul.ftz.f32 %f67, %f65, %f62;\n" -" sub.ftz.f32 %f68, %f67, %f66;\n" -" mul.ftz.f32 %f69, %f64, %f68;\n" -" bra.uni $Lt_1_27138;\n" -"$Lt_1_27394:\n" -" .loc 16 201 0\n" -" mov.f32 %f69, 0f00000000; \n" -"$Lt_1_27138:\n" -" ld.shared.f32 %f70, [%rd55+12];\n" -" setp.gt.ftz.f32 %p9, %f70, %f56;\n" -" @!%p9 bra $Lt_1_27906;\n" -" .loc 16 204 0\n" -" mov.u32 %r56, %r47;\n" -" mov.s32 %r57, 0;\n" -" mov.u32 %r58, %r57;\n" -" mov.s32 %r59, 0;\n" -" mov.u32 %r60, %r59;\n" -" mov.s32 %r61, 0;\n" -" mov.u32 %r62, %r61;\n" -" tex.1d.v4.f32.s32 {%f71,%f72,%f73,%f74},[q_tex,{%r56,%r58,%r60,%r62}];\n" -" mov.f32 %f75, %f71;\n" -" ld.shared.f32 %f76, [%rd50+16];\n" -" ld.param.f32 %f77, [__cudaparm_kernel_pair_fast_qqrd2e];\n" -" mul.ftz.f32 %f78, %f77, %f35;\n" -" mul.ftz.f32 %f79, %f75, %f78;\n" -" rsqrt.approx.ftz.f32 %f80, %f56;\n" -" mul.ftz.f32 %f81, %f79, %f80;\n" -" mul.ftz.f32 %f82, %f76, %f81;\n" -" bra.uni $Lt_1_27650;\n" -"$Lt_1_27906:\n" -" .loc 16 206 0\n" -" mov.f32 %f82, 0f00000000; \n" -"$Lt_1_27650:\n" -" .loc 16 210 0\n" -" add.ftz.f32 %f83, %f82, %f69;\n" -" mul.ftz.f32 %f84, %f83, %f59;\n" -" fma.rn.ftz.f32 %f39, %f52, %f84, %f39;\n" -" .loc 16 211 0\n" -" fma.rn.ftz.f32 %f38, %f51, %f84, %f38;\n" -" .loc 16 212 0\n" -" fma.rn.ftz.f32 %f37, %f53, %f84, %f37;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p10, %r63, %r64;\n" -" @%p10 bra $Lt_1_28674;\n" -" .loc 16 215 0\n" -" add.ftz.f32 %f40, %f82, %f40;\n" -" @!%p8 bra $Lt_1_28674;\n" -" .loc 16 217 0\n" -" add.u64 %rd56, %rd54, %rd18;\n" -" mov.f32 %f85, %f63;\n" -" ld.shared.v4.f32 {%f86,%f87,%f88,_}, [%rd56+0];\n" -" mul.ftz.f32 %f89, %f86, %f85;\n" -" sub.ftz.f32 %f90, %f89, %f87;\n" -" mul.ftz.f32 %f91, %f85, %f90;\n" -" .loc 16 218 0\n" -" sub.ftz.f32 %f92, %f91, %f88;\n" -" fma.rn.ftz.f32 %f41, %f42, %f92, %f41;\n" -"$Lt_1_28674:\n" -"$Lt_1_28162:\n" -" ld.param.s32 %r65, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r66, 0;\n" -" setp.le.s32 %p11, %r65, %r66;\n" -" @%p11 bra $Lt_1_29186;\n" -" .loc 16 222 0\n" -" mov.f32 %f93, %f12;\n" -" mul.ftz.f32 %f94, %f52, %f52;\n" -" fma.rn.ftz.f32 %f95, %f84, %f94, %f93;\n" -" mov.f32 %f12, %f95;\n" -" .loc 16 223 0\n" -" mov.f32 %f96, %f14;\n" -" fma.rn.ftz.f32 %f97, %f84, %f54, %f96;\n" -" mov.f32 %f14, %f97;\n" -" .loc 16 224 0\n" -" mov.f32 %f98, %f16;\n" -" mul.ftz.f32 %f99, %f53, %f53;\n" -" fma.rn.ftz.f32 %f100, %f84, %f99, %f98;\n" -" mov.f32 %f16, %f100;\n" -" .loc 16 225 0\n" -" mov.f32 %f101, %f18;\n" -" mul.ftz.f32 %f102, %f51, %f52;\n" -" fma.rn.ftz.f32 %f103, %f84, %f102, %f101;\n" -" mov.f32 %f18, %f103;\n" -" .loc 16 226 0\n" -" mov.f32 %f104, %f20;\n" -" mul.ftz.f32 %f105, %f52, %f53;\n" -" fma.rn.ftz.f32 %f106, %f84, %f105, %f104;\n" -" mov.f32 %f20, %f106;\n" -" .loc 16 227 0\n" -" mul.ftz.f32 %f107, %f51, %f53;\n" -" fma.rn.ftz.f32 %f21, %f84, %f107, %f21;\n" -" mov.f32 %f22, %f21;\n" -"$Lt_1_29186:\n" -"$Lt_1_26626:\n" -" .loc 16 176 0\n" -" mul.lo.u64 %rd57, %rd47, 4;\n" -" add.u64 %rd40, %rd40, %rd57;\n" -" setp.lt.u64 %p12, %rd40, %rd39;\n" -" @%p12 bra $Lt_1_26370;\n" -" bra.uni $Lt_1_25858;\n" -"$Lt_1_35586:\n" -" mov.f32 %f37, 0f00000000; \n" -" mov.f32 %f38, 0f00000000; \n" -" mov.f32 %f39, 0f00000000; \n" -" mov.f32 %f40, 0f00000000; \n" -" mov.f32 %f41, 0f00000000; \n" -"$Lt_1_25858:\n" -" mov.u32 %r67, 1;\n" -" setp.le.s32 %p13, %r6, %r67;\n" -" @%p13 bra $Lt_1_32002;\n" -" .loc 16 232 0\n" -" mov.u64 %rd58, __cuda___cuda_local_var_32733_55_non_const_red_acc7728;\n" -" cvt.s64.s32 %rd59, %r1;\n" -" mul.wide.s32 %rd60, %r1, 4;\n" -" add.u64 %rd61, %rd58, %rd60;\n" -" mov.f32 %f108, %f39;\n" -" st.shared.f32 [%rd61+0], %f108;\n" -" mov.f32 %f109, %f38;\n" -" st.shared.f32 [%rd61+512], %f109;\n" -" mov.f32 %f110, %f37;\n" -" st.shared.f32 [%rd61+1024], %f110;\n" -" mov.f32 %f111, %f41;\n" -" st.shared.f32 [%rd61+1536], %f111;\n" -" mov.f32 %f112, %f40;\n" -" st.shared.f32 [%rd61+2048], %f112;\n" -" shr.s32 %r68, %r6, 31;\n" -" mov.s32 %r69, 1;\n" -" and.b32 %r70, %r68, %r69;\n" -" add.s32 %r71, %r70, %r6;\n" -" shr.s32 %r72, %r71, 1;\n" -" mov.s32 %r73, %r72;\n" -" mov.u32 %r74, 0;\n" -" setp.ne.u32 %p14, %r72, %r74;\n" -" @!%p14 bra $Lt_1_30466;\n" -"$Lt_1_30978:\n" -" setp.ge.u32 %p15, %r18, %r73;\n" -" @%p15 bra $Lt_1_31234;\n" -" add.u32 %r75, %r1, %r73;\n" -" cvt.u64.u32 %rd62, %r75;\n" -" mul.wide.u32 %rd63, %r75, 4;\n" -" add.u64 %rd64, %rd58, %rd63;\n" -" ld.shared.f32 %f113, [%rd64+0];\n" -" add.ftz.f32 %f108, %f113, %f108;\n" -" st.shared.f32 [%rd61+0], %f108;\n" -" ld.shared.f32 %f114, [%rd64+512];\n" -" add.ftz.f32 %f109, %f114, %f109;\n" -" st.shared.f32 [%rd61+512], %f109;\n" -" ld.shared.f32 %f115, [%rd64+1024];\n" -" add.ftz.f32 %f110, %f115, %f110;\n" -" st.shared.f32 [%rd61+1024], %f110;\n" -" ld.shared.f32 %f116, [%rd64+1536];\n" -" add.ftz.f32 %f111, %f116, %f111;\n" -" st.shared.f32 [%rd61+1536], %f111;\n" -" ld.shared.f32 %f117, [%rd64+2048];\n" -" add.ftz.f32 %f112, %f117, %f112;\n" -" st.shared.f32 [%rd61+2048], %f112;\n" -"$Lt_1_31234:\n" -" shr.u32 %r73, %r73, 1;\n" -" mov.u32 %r76, 0;\n" -" setp.ne.u32 %p16, %r73, %r76;\n" -" @%p16 bra $Lt_1_30978;\n" -"$Lt_1_30466:\n" -" mov.f32 %f39, %f108;\n" -" mov.f32 %f38, %f109;\n" -" mov.f32 %f37, %f110;\n" -" mov.f32 %f41, %f111;\n" -" mov.f32 %f40, %f112;\n" -" ld.param.s32 %r77, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r78, 0;\n" -" setp.le.s32 %p17, %r77, %r78;\n" -" @%p17 bra $Lt_1_32002;\n" -" mov.f32 %f108, %f12;\n" -" st.shared.f32 [%rd61+0], %f108;\n" -" mov.f32 %f109, %f14;\n" -" st.shared.f32 [%rd61+512], %f109;\n" -" mov.f32 %f110, %f16;\n" -" st.shared.f32 [%rd61+1024], %f110;\n" -" mov.f32 %f111, %f18;\n" -" st.shared.f32 [%rd61+1536], %f111;\n" -" mov.f32 %f112, %f20;\n" -" st.shared.f32 [%rd61+2048], %f112;\n" -" mov.f32 %f118, %f21;\n" -" st.shared.f32 [%rd61+2560], %f118;\n" -" mov.s32 %r79, %r72;\n" -" @!%p14 bra $Lt_1_32514;\n" -"$Lt_1_33026:\n" -" setp.ge.u32 %p18, %r18, %r79;\n" -" @%p18 bra $Lt_1_33282;\n" -" add.u32 %r80, %r1, %r79;\n" -" cvt.u64.u32 %rd65, %r80;\n" -" mul.wide.u32 %rd66, %r80, 4;\n" -" add.u64 %rd67, %rd58, %rd66;\n" -" ld.shared.f32 %f119, [%rd67+0];\n" -" add.ftz.f32 %f108, %f119, %f108;\n" -" st.shared.f32 [%rd61+0], %f108;\n" -" ld.shared.f32 %f120, [%rd67+512];\n" -" add.ftz.f32 %f109, %f120, %f109;\n" -" st.shared.f32 [%rd61+512], %f109;\n" -" ld.shared.f32 %f121, [%rd67+1024];\n" -" add.ftz.f32 %f110, %f121, %f110;\n" -" st.shared.f32 [%rd61+1024], %f110;\n" -" ld.shared.f32 %f122, [%rd67+1536];\n" -" add.ftz.f32 %f111, %f122, %f111;\n" -" st.shared.f32 [%rd61+1536], %f111;\n" -" ld.shared.f32 %f123, [%rd67+2048];\n" -" add.ftz.f32 %f112, %f123, %f112;\n" -" st.shared.f32 [%rd61+2048], %f112;\n" -" ld.shared.f32 %f124, [%rd67+2560];\n" -" add.ftz.f32 %f118, %f124, %f118;\n" -" st.shared.f32 [%rd61+2560], %f118;\n" -"$Lt_1_33282:\n" -" shr.u32 %r79, %r79, 1;\n" -" mov.u32 %r81, 0;\n" -" setp.ne.u32 %p19, %r79, %r81;\n" -" @%p19 bra $Lt_1_33026;\n" -"$Lt_1_32514:\n" -" mov.f32 %f12, %f108;\n" -" mov.f32 %f14, %f109;\n" -" mov.f32 %f16, %f110;\n" -" mov.f32 %f18, %f111;\n" -" mov.f32 %f20, %f112;\n" -" mov.f32 %f22, %f118;\n" -"$Lt_1_32002:\n" -"$Lt_1_29954:\n" -" mov.u32 %r82, 0;\n" -" setp.ne.s32 %p20, %r18, %r82;\n" -" @%p20 bra $Lt_1_34050;\n" -" ld.param.u64 %rd68, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd69, %rd68, %rd23;\n" -" ld.param.s32 %r83, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r84, 0;\n" -" setp.le.s32 %p21, %r83, %r84;\n" -" @%p21 bra $Lt_1_34562;\n" -" st.global.f32 [%rd69+0], %f41;\n" -" cvt.s64.s32 %rd70, %r13;\n" -" mul.wide.s32 %rd71, %r13, 4;\n" -" add.u64 %rd72, %rd71, %rd69;\n" -" st.global.f32 [%rd72+0], %f40;\n" -" add.u64 %rd69, %rd71, %rd72;\n" -"$Lt_1_34562:\n" -" ld.param.s32 %r85, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r86, 0;\n" -" setp.le.s32 %p22, %r85, %r86;\n" -" @%p22 bra $Lt_1_35074;\n" -" mov.f32 %f125, %f12;\n" -" st.global.f32 [%rd69+0], %f125;\n" -" cvt.s64.s32 %rd73, %r13;\n" -" mul.wide.s32 %rd74, %r13, 4;\n" -" add.u64 %rd75, %rd74, %rd69;\n" -" mov.f32 %f126, %f14;\n" -" st.global.f32 [%rd75+0], %f126;\n" -" add.u64 %rd76, %rd74, %rd75;\n" -" mov.f32 %f127, %f16;\n" -" st.global.f32 [%rd76+0], %f127;\n" -" add.u64 %rd77, %rd74, %rd76;\n" -" mov.f32 %f128, %f18;\n" -" st.global.f32 [%rd77+0], %f128;\n" -" add.u64 %rd69, %rd74, %rd77;\n" -" mov.f32 %f129, %f20;\n" -" st.global.f32 [%rd69+0], %f129;\n" -" mov.f32 %f130, %f22;\n" -" add.u64 %rd78, %rd74, %rd69;\n" -" st.global.f32 [%rd78+0], %f130;\n" -"$Lt_1_35074:\n" -" ld.param.u64 %rd79, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd80, %rd22, 16;\n" -" add.u64 %rd81, %rd79, %rd80;\n" -" mov.f32 %f131, %f132;\n" -" st.global.v4.f32 [%rd81+0], {%f39,%f38,%f37,%f131};\n" -"$Lt_1_34050:\n" -"$Lt_1_24834:\n" -" .loc 16 235 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/lj_expand.ptx b/lib/gpu/lj_expand.ptx deleted file mode 100644 index 919bd9187d..0000000000 --- a/lib/gpu/lj_expand.ptx +++ /dev/null @@ -1,912 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009ccd_00000000-9_lal_lj_expand.cpp3.i (/home/sjplimp/ccBI#.06ur5E) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009ccd_00000000-8_lal_lj_expand.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_lj_expand.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_lj1, - .param .u64 __cudaparm_kernel_pair_lj3, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<72>; - .reg .u64 %rd<63>; - .reg .f32 %f<107>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32603_55_non_const_red_acc108[3072]; - // __cuda_local_var_32543_10_non_const_f = 48 - // __cuda_local_var_32545_9_non_const_virial = 16 - .loc 16 31 0 -$LDWbegin_kernel_pair: - .loc 16 36 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 37 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 38 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 39 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4}; - .loc 16 46 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_26370; - .loc 16 51 0 - ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - cvt.s64.s32 %rd4, %r8; - mul.wide.s32 %rd5, %r8, 4; - ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd7, %rd5, %rd6; - add.u64 %rd8, %rd3, %rd7; - ld.global.s32 %r11, [%rd8+0]; - sub.s32 %r12, %r1, 1; - and.b32 %r13, %r12, %r2; - cvt.s64.s32 %rd9, %r13; - mul.wide.s32 %rd10, %r13, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd6; - @%p2 bra $Lt_0_19458; - cvt.s32.s64 %r14, %rd2; - mul.lo.s32 %r15, %r14, %r1; - mov.s32 %r16, %r15; - mul.lo.s32 %r17, %r12, %r8; - add.s32 %r18, %r14, %r17; - cvt.s64.s32 %rd12, %r18; - mul.wide.s32 %rd13, %r18, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r19, %r12, %r11; - cvt.s64.s32 %rd15, %r19; - div.s32 %r20, %r11, %r1; - mul.lo.s32 %r21, %r15, %r20; - cvt.s64.s32 %rd16, %r21; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_19202; -$Lt_0_19458: - add.u64 %rd21, %rd3, %rd8; - ld.global.s32 %r22, [%rd21+0]; - cvt.s64.s32 %rd22, %r22; - mul.wide.s32 %rd23, %r22, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r11; - mul.wide.s32 %rd26, %r11, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r16, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_19202: - .loc 16 54 0 - ld.global.s32 %r23, [%rd7+0]; - mov.u32 %r24, %r23; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f21, %f17; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_27906; - cvt.rzi.ftz.s32.f32 %r31, %f24; - cvt.s64.s32 %rd27, %r16; - ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r33, %r32, %r31; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1]; - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92; -$Lt_0_20226: - // Loop body line 54, nesting depth: 1, estimated iterations: unknown - .loc 16 60 0 - ld.global.s32 %r34, [%rd20+0]; - .loc 16 61 0 - shr.s32 %r35, %r34, 30; - and.b32 %r36, %r35, 3; - cvt.s64.s32 %rd30, %r36; - mul.wide.s32 %rd31, %r36, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f29, [%rd32+0]; - .loc 16 64 0 - and.b32 %r37, %r34, 1073741823; - mov.u32 %r38, %r37; - mov.s32 %r39, 0; - mov.u32 %r40, %r39; - mov.s32 %r41, 0; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}]; - mov.f32 %f34, %f30; - mov.f32 %f35, %f31; - mov.f32 %f36, %f32; - mov.f32 %f37, %f33; - cvt.rzi.ftz.s32.f32 %r45, %f37; - sub.ftz.f32 %f38, %f22, %f35; - sub.ftz.f32 %f39, %f21, %f34; - sub.ftz.f32 %f40, %f23, %f36; - mul.ftz.f32 %f41, %f38, %f38; - fma.rn.ftz.f32 %f42, %f39, %f39, %f41; - fma.rn.ftz.f32 %f43, %f40, %f40, %f42; - add.s32 %r46, %r45, %r33; - cvt.s64.s32 %rd33, %r46; - mul.wide.s32 %rd34, %r46, 16; - add.u64 %rd35, %rd34, %rd28; - ld.global.f32 %f44, [%rd35+8]; - setp.gt.ftz.f32 %p4, %f44, %f43; - @!%p4 bra $Lt_0_21506; - .loc 16 76 0 - sqrt.approx.ftz.f32 %f45, %f43; - ld.global.v4.f32 {%f46,%f47,_,%f48}, [%rd35+0]; - sub.ftz.f32 %f49, %f45, %f48; - .loc 16 81 0 - mul.ftz.f32 %f50, %f49, %f49; - rcp.approx.ftz.f32 %f51, %f50; - mul.ftz.f32 %f52, %f51, %f51; - mul.ftz.f32 %f53, %f51, %f52; - div.approx.ftz.f32 %f54, %f29, %f49; - div.approx.ftz.f32 %f55, %f54, %f45; - mul.ftz.f32 %f56, %f46, %f53; - sub.ftz.f32 %f57, %f56, %f47; - mul.ftz.f32 %f58, %f53, %f57; - mul.ftz.f32 %f59, %f55, %f58; - .loc 16 83 0 - fma.rn.ftz.f32 %f27, %f39, %f59, %f27; - .loc 16 84 0 - fma.rn.ftz.f32 %f26, %f38, %f59, %f26; - .loc 16 85 0 - fma.rn.ftz.f32 %f25, %f40, %f59, %f25; - ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r48, 0; - setp.le.s32 %p5, %r47, %r48; - @%p5 bra $Lt_0_20994; - .loc 16 89 0 - ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3]; - add.u64 %rd37, %rd36, %rd34; - ld.global.v4.f32 {%f60,%f61,%f62,_}, [%rd37+0]; - mul.ftz.f32 %f63, %f60, %f53; - sub.ftz.f32 %f64, %f63, %f61; - mul.ftz.f32 %f65, %f53, %f64; - sub.ftz.f32 %f66, %f65, %f62; - fma.rn.ftz.f32 %f28, %f29, %f66, %f28; -$Lt_0_20994: - ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r50, 0; - setp.le.s32 %p6, %r49, %r50; - @%p6 bra $Lt_0_21506; - .loc 16 92 0 - mov.f32 %f67, %f6; - mul.ftz.f32 %f68, %f39, %f39; - fma.rn.ftz.f32 %f69, %f59, %f68, %f67; - mov.f32 %f6, %f69; - .loc 16 93 0 - mov.f32 %f70, %f8; - fma.rn.ftz.f32 %f71, %f59, %f41, %f70; - mov.f32 %f8, %f71; - .loc 16 94 0 - mov.f32 %f72, %f10; - mul.ftz.f32 %f73, %f40, %f40; - fma.rn.ftz.f32 %f74, %f59, %f73, %f72; - mov.f32 %f10, %f74; - .loc 16 95 0 - mov.f32 %f75, %f12; - mul.ftz.f32 %f76, %f38, %f39; - fma.rn.ftz.f32 %f77, %f59, %f76, %f75; - mov.f32 %f12, %f77; - .loc 16 96 0 - mov.f32 %f78, %f14; - mul.ftz.f32 %f79, %f39, %f40; - fma.rn.ftz.f32 %f80, %f59, %f79, %f78; - mov.f32 %f14, %f80; - .loc 16 97 0 - mul.ftz.f32 %f81, %f38, %f40; - fma.rn.ftz.f32 %f15, %f59, %f81, %f15; - mov.f32 %f16, %f15; -$Lt_0_21506: -$Lt_0_20482: - .loc 16 58 0 - mul.lo.u64 %rd38, %rd27, 4; - add.u64 %rd20, %rd20, %rd38; - setp.lt.u64 %p7, %rd20, %rd19; - @%p7 bra $Lt_0_20226; - bra.uni $Lt_0_19714; -$Lt_0_27906: - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 -$Lt_0_19714: - mov.u32 %r51, 1; - setp.le.s32 %p8, %r1, %r51; - @%p8 bra $Lt_0_24322; - .loc 16 102 0 - mov.u64 %rd39, __cuda___cuda_local_var_32603_55_non_const_red_acc108; - cvt.s64.s32 %rd40, %r2; - mul.wide.s32 %rd41, %r2, 4; - add.u64 %rd42, %rd39, %rd41; - mov.f32 %f82, %f27; - st.shared.f32 [%rd42+0], %f82; - mov.f32 %f83, %f26; - st.shared.f32 [%rd42+512], %f83; - mov.f32 %f84, %f25; - st.shared.f32 [%rd42+1024], %f84; - mov.f32 %f85, %f28; - st.shared.f32 [%rd42+1536], %f85; - shr.s32 %r52, %r1, 31; - mov.s32 %r53, 1; - and.b32 %r54, %r52, %r53; - add.s32 %r55, %r54, %r1; - shr.s32 %r56, %r55, 1; - mov.s32 %r57, %r56; - mov.u32 %r58, 0; - setp.ne.u32 %p9, %r56, %r58; - @!%p9 bra $Lt_0_22786; -$Lt_0_23298: - setp.ge.u32 %p10, %r13, %r57; - @%p10 bra $Lt_0_23554; - add.u32 %r59, %r2, %r57; - cvt.u64.u32 %rd43, %r59; - mul.wide.u32 %rd44, %r59, 4; - add.u64 %rd45, %rd39, %rd44; - ld.shared.f32 %f86, [%rd45+0]; - add.ftz.f32 %f82, %f86, %f82; - st.shared.f32 [%rd42+0], %f82; - ld.shared.f32 %f87, [%rd45+512]; - add.ftz.f32 %f83, %f87, %f83; - st.shared.f32 [%rd42+512], %f83; - ld.shared.f32 %f88, [%rd45+1024]; - add.ftz.f32 %f84, %f88, %f84; - st.shared.f32 [%rd42+1024], %f84; - ld.shared.f32 %f89, [%rd45+1536]; - add.ftz.f32 %f85, %f89, %f85; - st.shared.f32 [%rd42+1536], %f85; -$Lt_0_23554: - shr.u32 %r57, %r57, 1; - mov.u32 %r60, 0; - setp.ne.u32 %p11, %r57, %r60; - @%p11 bra $Lt_0_23298; -$Lt_0_22786: - mov.f32 %f27, %f82; - mov.f32 %f26, %f83; - mov.f32 %f25, %f84; - mov.f32 %f28, %f85; - ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r62, 0; - setp.le.s32 %p12, %r61, %r62; - @%p12 bra $Lt_0_24322; - mov.f32 %f82, %f6; - st.shared.f32 [%rd42+0], %f82; - mov.f32 %f83, %f8; - st.shared.f32 [%rd42+512], %f83; - mov.f32 %f84, %f10; - st.shared.f32 [%rd42+1024], %f84; - mov.f32 %f85, %f12; - st.shared.f32 [%rd42+1536], %f85; - mov.f32 %f90, %f14; - st.shared.f32 [%rd42+2048], %f90; - mov.f32 %f91, %f15; - st.shared.f32 [%rd42+2560], %f91; - mov.s32 %r63, %r56; - @!%p9 bra $Lt_0_24834; -$Lt_0_25346: - setp.ge.u32 %p13, %r13, %r63; - @%p13 bra $Lt_0_25602; - add.u32 %r64, %r2, %r63; - cvt.u64.u32 %rd46, %r64; - mul.wide.u32 %rd47, %r64, 4; - add.u64 %rd48, %rd39, %rd47; - ld.shared.f32 %f92, [%rd48+0]; - add.ftz.f32 %f82, %f92, %f82; - st.shared.f32 [%rd42+0], %f82; - ld.shared.f32 %f93, [%rd48+512]; - add.ftz.f32 %f83, %f93, %f83; - st.shared.f32 [%rd42+512], %f83; - ld.shared.f32 %f94, [%rd48+1024]; - add.ftz.f32 %f84, %f94, %f84; - st.shared.f32 [%rd42+1024], %f84; - ld.shared.f32 %f95, [%rd48+1536]; - add.ftz.f32 %f85, %f95, %f85; - st.shared.f32 [%rd42+1536], %f85; - ld.shared.f32 %f96, [%rd48+2048]; - add.ftz.f32 %f90, %f96, %f90; - st.shared.f32 [%rd42+2048], %f90; - ld.shared.f32 %f97, [%rd48+2560]; - add.ftz.f32 %f91, %f97, %f91; - st.shared.f32 [%rd42+2560], %f91; -$Lt_0_25602: - shr.u32 %r63, %r63, 1; - mov.u32 %r65, 0; - setp.ne.u32 %p14, %r63, %r65; - @%p14 bra $Lt_0_25346; -$Lt_0_24834: - mov.f32 %f6, %f82; - mov.f32 %f8, %f83; - mov.f32 %f10, %f84; - mov.f32 %f12, %f85; - mov.f32 %f14, %f90; - mov.f32 %f16, %f91; -$Lt_0_24322: -$Lt_0_22274: - mov.u32 %r66, 0; - setp.ne.s32 %p15, %r13, %r66; - @%p15 bra $Lt_0_26370; - ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd50, %rd49, %rd5; - ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r68, 0; - setp.le.s32 %p16, %r67, %r68; - @%p16 bra $Lt_0_26882; - st.global.f32 [%rd50+0], %f28; - cvt.s64.s32 %rd51, %r9; - mul.wide.s32 %rd52, %r9, 4; - add.u64 %rd50, %rd50, %rd52; -$Lt_0_26882: - ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r70, 0; - setp.le.s32 %p17, %r69, %r70; - @%p17 bra $Lt_0_27394; - mov.f32 %f98, %f6; - st.global.f32 [%rd50+0], %f98; - cvt.s64.s32 %rd53, %r9; - mul.wide.s32 %rd54, %r9, 4; - add.u64 %rd55, %rd54, %rd50; - mov.f32 %f99, %f8; - st.global.f32 [%rd55+0], %f99; - add.u64 %rd56, %rd54, %rd55; - mov.f32 %f100, %f10; - st.global.f32 [%rd56+0], %f100; - add.u64 %rd57, %rd54, %rd56; - mov.f32 %f101, %f12; - st.global.f32 [%rd57+0], %f101; - add.u64 %rd50, %rd54, %rd57; - mov.f32 %f102, %f14; - st.global.f32 [%rd50+0], %f102; - mov.f32 %f103, %f16; - add.u64 %rd58, %rd54, %rd50; - st.global.f32 [%rd58+0], %f103; -$Lt_0_27394: - ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd60, %rd4, 16; - add.u64 %rd61, %rd59, %rd60; - mov.f32 %f104, %f105; - st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f104}; -$Lt_0_26370: -$Lt_0_18690: - .loc 16 105 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_lj1_in, - .param .u64 __cudaparm_kernel_pair_fast_lj3_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<74>; - .reg .u64 %rd<75>; - .reg .f32 %f<114>; - .reg .pred %p<22>; - .shared .align 4 .b8 __cuda___cuda_local_var_32620_33_non_const_sp_lj3268[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_32618_34_non_const_lj13296[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_32619_34_non_const_lj35232[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_32692_55_non_const_red_acc7168[3072]; - // __cuda_local_var_32630_10_non_const_f = 48 - // __cuda_local_var_32632_9_non_const_virial = 16 - .loc 16 113 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_20994; - .loc 16 121 0 - mov.u64 %rd1, __cuda___cuda_local_var_32620_33_non_const_sp_lj3268; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_20994: - mov.u64 %rd1, __cuda___cuda_local_var_32620_33_non_const_sp_lj3268; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_21506; - .loc 16 123 0 - mov.u64 %rd7, __cuda___cuda_local_var_32618_34_non_const_lj13296; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_22018; - .loc 16 125 0 - mov.u64 %rd13, __cuda___cuda_local_var_32619_34_non_const_lj35232; - ld.param.u64 %rd14, [__cudaparm_kernel_pair_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_1_22018: - mov.u64 %rd13, __cuda___cuda_local_var_32619_34_non_const_lj35232; -$Lt_1_21506: - mov.u64 %rd13, __cuda___cuda_local_var_32619_34_non_const_lj35232; - mov.u64 %rd7, __cuda___cuda_local_var_32618_34_non_const_lj13296; - .loc 16 133 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 16 135 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_30210; - .loc 16 140 0 - ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd17, %r14; - mul.wide.s32 %rd18, %r14, 4; - cvt.s64.s32 %rd19, %r12; - mul.wide.s32 %rd20, %r12, 4; - ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd22, %rd20, %rd21; - add.u64 %rd23, %rd18, %rd22; - ld.global.s32 %r15, [%rd23+0]; - sub.s32 %r16, %r6, 1; - and.b32 %r17, %r16, %r1; - cvt.s64.s32 %rd24, %r17; - mul.wide.s32 %rd25, %r17, 4; - ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd26, %rd21; - @%p5 bra $Lt_1_23298; - cvt.s32.s64 %r18, %rd17; - mul.lo.s32 %r19, %r18, %r6; - mov.s32 %r20, %r19; - mul.lo.s32 %r21, %r16, %r12; - add.s32 %r22, %r18, %r21; - cvt.s64.s32 %rd27, %r22; - mul.wide.s32 %rd28, %r22, 4; - add.u64 %rd29, %rd23, %rd28; - and.b32 %r23, %r16, %r15; - cvt.s64.s32 %rd30, %r23; - div.s32 %r24, %r15, %r6; - mul.lo.s32 %r25, %r19, %r24; - cvt.s64.s32 %rd31, %r25; - add.u64 %rd32, %rd30, %rd31; - mul.lo.u64 %rd33, %rd32, 4; - add.u64 %rd34, %rd29, %rd33; - add.u64 %rd35, %rd25, %rd29; - bra.uni $Lt_1_23042; -$Lt_1_23298: - add.u64 %rd36, %rd18, %rd23; - ld.global.s32 %r26, [%rd36+0]; - cvt.s64.s32 %rd37, %r26; - mul.wide.s32 %rd38, %r26, 4; - add.u64 %rd39, %rd26, %rd38; - cvt.s64.s32 %rd40, %r15; - mul.wide.s32 %rd41, %r15, 4; - add.u64 %rd34, %rd39, %rd41; - mov.s32 %r20, %r6; - add.u64 %rd35, %rd25, %rd39; -$Lt_1_23042: - .loc 16 143 0 - ld.global.s32 %r27, [%rd22+0]; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - mov.f32 %f28, %f24; - mov.f32 %f29, %f25; - setp.ge.u64 %p6, %rd35, %rd34; - @%p6 bra $Lt_1_31746; - cvt.rzi.ftz.s32.f32 %r35, %f29; - cvt.s64.s32 %rd42, %r20; - mul.lo.s32 %r36, %r35, 11; - cvt.rn.f32.s32 %f30, %r36; - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_24066: - // Loop body line 143, nesting depth: 1, estimated iterations: unknown - .loc 16 150 0 - ld.global.s32 %r37, [%rd35+0]; - .loc 16 151 0 - shr.s32 %r38, %r37, 30; - and.b32 %r39, %r38, 3; - cvt.s64.s32 %rd43, %r39; - mul.wide.s32 %rd44, %r39, 4; - add.u64 %rd45, %rd1, %rd44; - ld.shared.f32 %f35, [%rd45+0]; - .loc 16 154 0 - and.b32 %r40, %r37, 1073741823; - mov.u32 %r41, %r40; - mov.s32 %r42, 0; - mov.u32 %r43, %r42; - mov.s32 %r44, 0; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r41,%r43,%r45,%r47}]; - mov.f32 %f40, %f36; - mov.f32 %f41, %f37; - mov.f32 %f42, %f38; - mov.f32 %f43, %f39; - sub.ftz.f32 %f44, %f27, %f41; - sub.ftz.f32 %f45, %f26, %f40; - sub.ftz.f32 %f46, %f28, %f42; - mul.ftz.f32 %f47, %f44, %f44; - fma.rn.ftz.f32 %f48, %f45, %f45, %f47; - fma.rn.ftz.f32 %f49, %f46, %f46, %f48; - add.ftz.f32 %f50, %f30, %f43; - cvt.rzi.ftz.s32.f32 %r48, %f50; - cvt.s64.s32 %rd46, %r48; - mul.wide.s32 %rd47, %r48, 16; - add.u64 %rd48, %rd47, %rd7; - ld.shared.f32 %f51, [%rd48+8]; - setp.gt.ftz.f32 %p7, %f51, %f49; - @!%p7 bra $Lt_1_25346; - .loc 16 165 0 - sqrt.approx.ftz.f32 %f52, %f49; - ld.shared.v4.f32 {%f53,%f54,_,%f55}, [%rd48+0]; - sub.ftz.f32 %f56, %f52, %f55; - .loc 16 169 0 - mul.ftz.f32 %f57, %f56, %f56; - rcp.approx.ftz.f32 %f58, %f57; - mul.ftz.f32 %f59, %f58, %f58; - mul.ftz.f32 %f60, %f58, %f59; - mul.ftz.f32 %f61, %f53, %f60; - sub.ftz.f32 %f62, %f61, %f54; - mul.ftz.f32 %f63, %f60, %f62; - .loc 16 170 0 - div.approx.ftz.f32 %f64, %f35, %f56; - div.approx.ftz.f32 %f65, %f64, %f52; - mul.ftz.f32 %f66, %f63, %f65; - .loc 16 172 0 - fma.rn.ftz.f32 %f33, %f45, %f66, %f33; - .loc 16 173 0 - fma.rn.ftz.f32 %f32, %f44, %f66, %f32; - .loc 16 174 0 - fma.rn.ftz.f32 %f31, %f46, %f66, %f31; - ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r50, 0; - setp.le.s32 %p8, %r49, %r50; - @%p8 bra $Lt_1_24834; - .loc 16 177 0 - add.u64 %rd49, %rd47, %rd13; - ld.shared.v4.f32 {%f67,%f68,%f69,_}, [%rd49+0]; - mul.ftz.f32 %f70, %f67, %f60; - sub.ftz.f32 %f71, %f70, %f68; - mul.ftz.f32 %f72, %f60, %f71; - .loc 16 178 0 - sub.ftz.f32 %f73, %f72, %f69; - fma.rn.ftz.f32 %f34, %f35, %f73, %f34; -$Lt_1_24834: - ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r52, 0; - setp.le.s32 %p9, %r51, %r52; - @%p9 bra $Lt_1_25346; - .loc 16 181 0 - mov.f32 %f74, %f11; - mul.ftz.f32 %f75, %f45, %f45; - fma.rn.ftz.f32 %f76, %f66, %f75, %f74; - mov.f32 %f11, %f76; - .loc 16 182 0 - mov.f32 %f77, %f13; - fma.rn.ftz.f32 %f78, %f66, %f47, %f77; - mov.f32 %f13, %f78; - .loc 16 183 0 - mov.f32 %f79, %f15; - mul.ftz.f32 %f80, %f46, %f46; - fma.rn.ftz.f32 %f81, %f66, %f80, %f79; - mov.f32 %f15, %f81; - .loc 16 184 0 - mov.f32 %f82, %f17; - mul.ftz.f32 %f83, %f44, %f45; - fma.rn.ftz.f32 %f84, %f66, %f83, %f82; - mov.f32 %f17, %f84; - .loc 16 185 0 - mov.f32 %f85, %f19; - mul.ftz.f32 %f86, %f45, %f46; - fma.rn.ftz.f32 %f87, %f66, %f86, %f85; - mov.f32 %f19, %f87; - .loc 16 186 0 - mul.ftz.f32 %f88, %f44, %f46; - fma.rn.ftz.f32 %f20, %f66, %f88, %f20; - mov.f32 %f21, %f20; -$Lt_1_25346: -$Lt_1_24322: - .loc 16 148 0 - mul.lo.u64 %rd50, %rd42, 4; - add.u64 %rd35, %rd35, %rd50; - setp.lt.u64 %p10, %rd35, %rd34; - @%p10 bra $Lt_1_24066; - bra.uni $Lt_1_23554; -$Lt_1_31746: - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 -$Lt_1_23554: - mov.u32 %r53, 1; - setp.le.s32 %p11, %r6, %r53; - @%p11 bra $Lt_1_28162; - .loc 16 191 0 - mov.u64 %rd51, __cuda___cuda_local_var_32692_55_non_const_red_acc7168; - cvt.s64.s32 %rd52, %r1; - mul.wide.s32 %rd53, %r1, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f89, %f33; - st.shared.f32 [%rd54+0], %f89; - mov.f32 %f90, %f32; - st.shared.f32 [%rd54+512], %f90; - mov.f32 %f91, %f31; - st.shared.f32 [%rd54+1024], %f91; - mov.f32 %f92, %f34; - st.shared.f32 [%rd54+1536], %f92; - shr.s32 %r54, %r6, 31; - mov.s32 %r55, 1; - and.b32 %r56, %r54, %r55; - add.s32 %r57, %r56, %r6; - shr.s32 %r58, %r57, 1; - mov.s32 %r59, %r58; - mov.u32 %r60, 0; - setp.ne.u32 %p12, %r58, %r60; - @!%p12 bra $Lt_1_26626; -$Lt_1_27138: - setp.ge.u32 %p13, %r17, %r59; - @%p13 bra $Lt_1_27394; - add.u32 %r61, %r1, %r59; - cvt.u64.u32 %rd55, %r61; - mul.wide.u32 %rd56, %r61, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f93, [%rd57+0]; - add.ftz.f32 %f89, %f93, %f89; - st.shared.f32 [%rd54+0], %f89; - ld.shared.f32 %f94, [%rd57+512]; - add.ftz.f32 %f90, %f94, %f90; - st.shared.f32 [%rd54+512], %f90; - ld.shared.f32 %f95, [%rd57+1024]; - add.ftz.f32 %f91, %f95, %f91; - st.shared.f32 [%rd54+1024], %f91; - ld.shared.f32 %f96, [%rd57+1536]; - add.ftz.f32 %f92, %f96, %f92; - st.shared.f32 [%rd54+1536], %f92; -$Lt_1_27394: - shr.u32 %r59, %r59, 1; - mov.u32 %r62, 0; - setp.ne.u32 %p14, %r59, %r62; - @%p14 bra $Lt_1_27138; -$Lt_1_26626: - mov.f32 %f33, %f89; - mov.f32 %f32, %f90; - mov.f32 %f31, %f91; - mov.f32 %f34, %f92; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p15, %r63, %r64; - @%p15 bra $Lt_1_28162; - mov.f32 %f89, %f11; - st.shared.f32 [%rd54+0], %f89; - mov.f32 %f90, %f13; - st.shared.f32 [%rd54+512], %f90; - mov.f32 %f91, %f15; - st.shared.f32 [%rd54+1024], %f91; - mov.f32 %f92, %f17; - st.shared.f32 [%rd54+1536], %f92; - mov.f32 %f97, %f19; - st.shared.f32 [%rd54+2048], %f97; - mov.f32 %f98, %f20; - st.shared.f32 [%rd54+2560], %f98; - mov.s32 %r65, %r58; - @!%p12 bra $Lt_1_28674; -$Lt_1_29186: - setp.ge.u32 %p16, %r17, %r65; - @%p16 bra $Lt_1_29442; - add.u32 %r66, %r1, %r65; - cvt.u64.u32 %rd58, %r66; - mul.wide.u32 %rd59, %r66, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f99, [%rd60+0]; - add.ftz.f32 %f89, %f99, %f89; - st.shared.f32 [%rd54+0], %f89; - ld.shared.f32 %f100, [%rd60+512]; - add.ftz.f32 %f90, %f100, %f90; - st.shared.f32 [%rd54+512], %f90; - ld.shared.f32 %f101, [%rd60+1024]; - add.ftz.f32 %f91, %f101, %f91; - st.shared.f32 [%rd54+1024], %f91; - ld.shared.f32 %f102, [%rd60+1536]; - add.ftz.f32 %f92, %f102, %f92; - st.shared.f32 [%rd54+1536], %f92; - ld.shared.f32 %f103, [%rd60+2048]; - add.ftz.f32 %f97, %f103, %f97; - st.shared.f32 [%rd54+2048], %f97; - ld.shared.f32 %f104, [%rd60+2560]; - add.ftz.f32 %f98, %f104, %f98; - st.shared.f32 [%rd54+2560], %f98; -$Lt_1_29442: - shr.u32 %r65, %r65, 1; - mov.u32 %r67, 0; - setp.ne.u32 %p17, %r65, %r67; - @%p17 bra $Lt_1_29186; -$Lt_1_28674: - mov.f32 %f11, %f89; - mov.f32 %f13, %f90; - mov.f32 %f15, %f91; - mov.f32 %f17, %f92; - mov.f32 %f19, %f97; - mov.f32 %f21, %f98; -$Lt_1_28162: -$Lt_1_26114: - mov.u32 %r68, 0; - setp.ne.s32 %p18, %r17, %r68; - @%p18 bra $Lt_1_30210; - ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd62, %rd61, %rd20; - ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r70, 0; - setp.le.s32 %p19, %r69, %r70; - @%p19 bra $Lt_1_30722; - st.global.f32 [%rd62+0], %f34; - cvt.s64.s32 %rd63, %r13; - mul.wide.s32 %rd64, %r13, 4; - add.u64 %rd62, %rd62, %rd64; -$Lt_1_30722: - ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r72, 0; - setp.le.s32 %p20, %r71, %r72; - @%p20 bra $Lt_1_31234; - mov.f32 %f105, %f11; - st.global.f32 [%rd62+0], %f105; - cvt.s64.s32 %rd65, %r13; - mul.wide.s32 %rd66, %r13, 4; - add.u64 %rd67, %rd66, %rd62; - mov.f32 %f106, %f13; - st.global.f32 [%rd67+0], %f106; - add.u64 %rd68, %rd66, %rd67; - mov.f32 %f107, %f15; - st.global.f32 [%rd68+0], %f107; - add.u64 %rd69, %rd66, %rd68; - mov.f32 %f108, %f17; - st.global.f32 [%rd69+0], %f108; - add.u64 %rd62, %rd66, %rd69; - mov.f32 %f109, %f19; - st.global.f32 [%rd62+0], %f109; - mov.f32 %f110, %f21; - add.u64 %rd70, %rd66, %rd62; - st.global.f32 [%rd70+0], %f110; -$Lt_1_31234: - ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd72, %rd19, 16; - add.u64 %rd73, %rd71, %rd72; - mov.f32 %f111, %f112; - st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f111}; -$Lt_1_30210: -$Lt_1_22530: - .loc 16 194 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/lj_expand_ptx.h b/lib/gpu/lj_expand_ptx.h deleted file mode 100644 index fa9b5450df..0000000000 --- a/lib/gpu/lj_expand_ptx.h +++ /dev/null @@ -1,860 +0,0 @@ -const char * lj_expand = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref 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_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<72>;\n" -" .reg .u64 %rd<63>;\n" -" .reg .f32 %f<107>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32603_55_non_const_red_acc108[3072];\n" -" .loc 16 31 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 36 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 37 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 38 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 39 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 46 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" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_26370;\n" -" .loc 16 51 0\n" -" ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" cvt.s64.s32 %rd4, %r8;\n" -" mul.wide.s32 %rd5, %r8, 4;\n" -" ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd7, %rd5, %rd6;\n" -" add.u64 %rd8, %rd3, %rd7;\n" -" ld.global.s32 %r11, [%rd8+0];\n" -" sub.s32 %r12, %r1, 1;\n" -" and.b32 %r13, %r12, %r2;\n" -" cvt.s64.s32 %rd9, %r13;\n" -" mul.wide.s32 %rd10, %r13, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd6;\n" -" @%p2 bra $Lt_0_19458;\n" -" cvt.s32.s64 %r14, %rd2;\n" -" mul.lo.s32 %r15, %r14, %r1;\n" -" mov.s32 %r16, %r15;\n" -" mul.lo.s32 %r17, %r12, %r8;\n" -" add.s32 %r18, %r14, %r17;\n" -" cvt.s64.s32 %rd12, %r18;\n" -" mul.wide.s32 %rd13, %r18, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r19, %r12, %r11;\n" -" cvt.s64.s32 %rd15, %r19;\n" -" div.s32 %r20, %r11, %r1;\n" -" mul.lo.s32 %r21, %r15, %r20;\n" -" cvt.s64.s32 %rd16, %r21;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_19202;\n" -"$Lt_0_19458:\n" -" add.u64 %rd21, %rd3, %rd8;\n" -" ld.global.s32 %r22, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r22;\n" -" mul.wide.s32 %rd23, %r22, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r11;\n" -" mul.wide.s32 %rd26, %r11, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r16, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_19202:\n" -" .loc 16 54 0\n" -" ld.global.s32 %r23, [%rd7+0];\n" -" mov.u32 %r24, %r23;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f21, %f17;\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_27906;\n" -" cvt.rzi.ftz.s32.f32 %r31, %f24;\n" -" cvt.s64.s32 %rd27, %r16;\n" -" ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r33, %r32, %r31;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92;\n" -"$Lt_0_20226:\n" -" .loc 16 60 0\n" -" ld.global.s32 %r34, [%rd20+0];\n" -" .loc 16 61 0\n" -" shr.s32 %r35, %r34, 30;\n" -" and.b32 %r36, %r35, 3;\n" -" cvt.s64.s32 %rd30, %r36;\n" -" mul.wide.s32 %rd31, %r36, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f29, [%rd32+0];\n" -" .loc 16 64 0\n" -" and.b32 %r37, %r34, 1073741823;\n" -" mov.u32 %r38, %r37;\n" -" mov.s32 %r39, 0;\n" -" mov.u32 %r40, %r39;\n" -" mov.s32 %r41, 0;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}];\n" -" mov.f32 %f34, %f30;\n" -" mov.f32 %f35, %f31;\n" -" mov.f32 %f36, %f32;\n" -" mov.f32 %f37, %f33;\n" -" cvt.rzi.ftz.s32.f32 %r45, %f37;\n" -" sub.ftz.f32 %f38, %f22, %f35;\n" -" sub.ftz.f32 %f39, %f21, %f34;\n" -" sub.ftz.f32 %f40, %f23, %f36;\n" -" mul.ftz.f32 %f41, %f38, %f38;\n" -" fma.rn.ftz.f32 %f42, %f39, %f39, %f41;\n" -" fma.rn.ftz.f32 %f43, %f40, %f40, %f42;\n" -" add.s32 %r46, %r45, %r33;\n" -" cvt.s64.s32 %rd33, %r46;\n" -" mul.wide.s32 %rd34, %r46, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f44, [%rd35+8];\n" -" setp.gt.ftz.f32 %p4, %f44, %f43;\n" -" @!%p4 bra $Lt_0_21506;\n" -" .loc 16 76 0\n" -" sqrt.approx.ftz.f32 %f45, %f43;\n" -" ld.global.v4.f32 {%f46,%f47,_,%f48}, [%rd35+0];\n" -" sub.ftz.f32 %f49, %f45, %f48;\n" -" .loc 16 81 0\n" -" mul.ftz.f32 %f50, %f49, %f49;\n" -" rcp.approx.ftz.f32 %f51, %f50;\n" -" mul.ftz.f32 %f52, %f51, %f51;\n" -" mul.ftz.f32 %f53, %f51, %f52;\n" -" div.approx.ftz.f32 %f54, %f29, %f49;\n" -" div.approx.ftz.f32 %f55, %f54, %f45;\n" -" mul.ftz.f32 %f56, %f46, %f53;\n" -" sub.ftz.f32 %f57, %f56, %f47;\n" -" mul.ftz.f32 %f58, %f53, %f57;\n" -" mul.ftz.f32 %f59, %f55, %f58;\n" -" .loc 16 83 0\n" -" fma.rn.ftz.f32 %f27, %f39, %f59, %f27;\n" -" .loc 16 84 0\n" -" fma.rn.ftz.f32 %f26, %f38, %f59, %f26;\n" -" .loc 16 85 0\n" -" fma.rn.ftz.f32 %f25, %f40, %f59, %f25;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p5, %r47, %r48;\n" -" @%p5 bra $Lt_0_20994;\n" -" .loc 16 89 0\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" ld.global.v4.f32 {%f60,%f61,%f62,_}, [%rd37+0];\n" -" mul.ftz.f32 %f63, %f60, %f53;\n" -" sub.ftz.f32 %f64, %f63, %f61;\n" -" mul.ftz.f32 %f65, %f53, %f64;\n" -" sub.ftz.f32 %f66, %f65, %f62;\n" -" fma.rn.ftz.f32 %f28, %f29, %f66, %f28;\n" -"$Lt_0_20994:\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p6, %r49, %r50;\n" -" @%p6 bra $Lt_0_21506;\n" -" .loc 16 92 0\n" -" mov.f32 %f67, %f6;\n" -" mul.ftz.f32 %f68, %f39, %f39;\n" -" fma.rn.ftz.f32 %f69, %f59, %f68, %f67;\n" -" mov.f32 %f6, %f69;\n" -" .loc 16 93 0\n" -" mov.f32 %f70, %f8;\n" -" fma.rn.ftz.f32 %f71, %f59, %f41, %f70;\n" -" mov.f32 %f8, %f71;\n" -" .loc 16 94 0\n" -" mov.f32 %f72, %f10;\n" -" mul.ftz.f32 %f73, %f40, %f40;\n" -" fma.rn.ftz.f32 %f74, %f59, %f73, %f72;\n" -" mov.f32 %f10, %f74;\n" -" .loc 16 95 0\n" -" mov.f32 %f75, %f12;\n" -" mul.ftz.f32 %f76, %f38, %f39;\n" -" fma.rn.ftz.f32 %f77, %f59, %f76, %f75;\n" -" mov.f32 %f12, %f77;\n" -" .loc 16 96 0\n" -" mov.f32 %f78, %f14;\n" -" mul.ftz.f32 %f79, %f39, %f40;\n" -" fma.rn.ftz.f32 %f80, %f59, %f79, %f78;\n" -" mov.f32 %f14, %f80;\n" -" .loc 16 97 0\n" -" mul.ftz.f32 %f81, %f38, %f40;\n" -" fma.rn.ftz.f32 %f15, %f59, %f81, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_0_21506:\n" -"$Lt_0_20482:\n" -" .loc 16 58 0\n" -" mul.lo.u64 %rd38, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd38;\n" -" setp.lt.u64 %p7, %rd20, %rd19;\n" -" @%p7 bra $Lt_0_20226;\n" -" bra.uni $Lt_0_19714;\n" -"$Lt_0_27906:\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -"$Lt_0_19714:\n" -" mov.u32 %r51, 1;\n" -" setp.le.s32 %p8, %r1, %r51;\n" -" @%p8 bra $Lt_0_24322;\n" -" .loc 16 102 0\n" -" mov.u64 %rd39, __cuda___cuda_local_var_32603_55_non_const_red_acc108;\n" -" cvt.s64.s32 %rd40, %r2;\n" -" mul.wide.s32 %rd41, %r2, 4;\n" -" add.u64 %rd42, %rd39, %rd41;\n" -" mov.f32 %f82, %f27;\n" -" st.shared.f32 [%rd42+0], %f82;\n" -" mov.f32 %f83, %f26;\n" -" st.shared.f32 [%rd42+512], %f83;\n" -" mov.f32 %f84, %f25;\n" -" st.shared.f32 [%rd42+1024], %f84;\n" -" mov.f32 %f85, %f28;\n" -" st.shared.f32 [%rd42+1536], %f85;\n" -" shr.s32 %r52, %r1, 31;\n" -" mov.s32 %r53, 1;\n" -" and.b32 %r54, %r52, %r53;\n" -" add.s32 %r55, %r54, %r1;\n" -" shr.s32 %r56, %r55, 1;\n" -" mov.s32 %r57, %r56;\n" -" mov.u32 %r58, 0;\n" -" setp.ne.u32 %p9, %r56, %r58;\n" -" @!%p9 bra $Lt_0_22786;\n" -"$Lt_0_23298:\n" -" setp.ge.u32 %p10, %r13, %r57;\n" -" @%p10 bra $Lt_0_23554;\n" -" add.u32 %r59, %r2, %r57;\n" -" cvt.u64.u32 %rd43, %r59;\n" -" mul.wide.u32 %rd44, %r59, 4;\n" -" add.u64 %rd45, %rd39, %rd44;\n" -" ld.shared.f32 %f86, [%rd45+0];\n" -" add.ftz.f32 %f82, %f86, %f82;\n" -" st.shared.f32 [%rd42+0], %f82;\n" -" ld.shared.f32 %f87, [%rd45+512];\n" -" add.ftz.f32 %f83, %f87, %f83;\n" -" st.shared.f32 [%rd42+512], %f83;\n" -" ld.shared.f32 %f88, [%rd45+1024];\n" -" add.ftz.f32 %f84, %f88, %f84;\n" -" st.shared.f32 [%rd42+1024], %f84;\n" -" ld.shared.f32 %f89, [%rd45+1536];\n" -" add.ftz.f32 %f85, %f89, %f85;\n" -" st.shared.f32 [%rd42+1536], %f85;\n" -"$Lt_0_23554:\n" -" shr.u32 %r57, %r57, 1;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p11, %r57, %r60;\n" -" @%p11 bra $Lt_0_23298;\n" -"$Lt_0_22786:\n" -" mov.f32 %f27, %f82;\n" -" mov.f32 %f26, %f83;\n" -" mov.f32 %f25, %f84;\n" -" mov.f32 %f28, %f85;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p12, %r61, %r62;\n" -" @%p12 bra $Lt_0_24322;\n" -" mov.f32 %f82, %f6;\n" -" st.shared.f32 [%rd42+0], %f82;\n" -" mov.f32 %f83, %f8;\n" -" st.shared.f32 [%rd42+512], %f83;\n" -" mov.f32 %f84, %f10;\n" -" st.shared.f32 [%rd42+1024], %f84;\n" -" mov.f32 %f85, %f12;\n" -" st.shared.f32 [%rd42+1536], %f85;\n" -" mov.f32 %f90, %f14;\n" -" st.shared.f32 [%rd42+2048], %f90;\n" -" mov.f32 %f91, %f15;\n" -" st.shared.f32 [%rd42+2560], %f91;\n" -" mov.s32 %r63, %r56;\n" -" @!%p9 bra $Lt_0_24834;\n" -"$Lt_0_25346:\n" -" setp.ge.u32 %p13, %r13, %r63;\n" -" @%p13 bra $Lt_0_25602;\n" -" add.u32 %r64, %r2, %r63;\n" -" cvt.u64.u32 %rd46, %r64;\n" -" mul.wide.u32 %rd47, %r64, 4;\n" -" add.u64 %rd48, %rd39, %rd47;\n" -" ld.shared.f32 %f92, [%rd48+0];\n" -" add.ftz.f32 %f82, %f92, %f82;\n" -" st.shared.f32 [%rd42+0], %f82;\n" -" ld.shared.f32 %f93, [%rd48+512];\n" -" add.ftz.f32 %f83, %f93, %f83;\n" -" st.shared.f32 [%rd42+512], %f83;\n" -" ld.shared.f32 %f94, [%rd48+1024];\n" -" add.ftz.f32 %f84, %f94, %f84;\n" -" st.shared.f32 [%rd42+1024], %f84;\n" -" ld.shared.f32 %f95, [%rd48+1536];\n" -" add.ftz.f32 %f85, %f95, %f85;\n" -" st.shared.f32 [%rd42+1536], %f85;\n" -" ld.shared.f32 %f96, [%rd48+2048];\n" -" add.ftz.f32 %f90, %f96, %f90;\n" -" st.shared.f32 [%rd42+2048], %f90;\n" -" ld.shared.f32 %f97, [%rd48+2560];\n" -" add.ftz.f32 %f91, %f97, %f91;\n" -" st.shared.f32 [%rd42+2560], %f91;\n" -"$Lt_0_25602:\n" -" shr.u32 %r63, %r63, 1;\n" -" mov.u32 %r65, 0;\n" -" setp.ne.u32 %p14, %r63, %r65;\n" -" @%p14 bra $Lt_0_25346;\n" -"$Lt_0_24834:\n" -" mov.f32 %f6, %f82;\n" -" mov.f32 %f8, %f83;\n" -" mov.f32 %f10, %f84;\n" -" mov.f32 %f12, %f85;\n" -" mov.f32 %f14, %f90;\n" -" mov.f32 %f16, %f91;\n" -"$Lt_0_24322:\n" -"$Lt_0_22274:\n" -" mov.u32 %r66, 0;\n" -" setp.ne.s32 %p15, %r13, %r66;\n" -" @%p15 bra $Lt_0_26370;\n" -" ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd50, %rd49, %rd5;\n" -" ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r68, 0;\n" -" setp.le.s32 %p16, %r67, %r68;\n" -" @%p16 bra $Lt_0_26882;\n" -" st.global.f32 [%rd50+0], %f28;\n" -" cvt.s64.s32 %rd51, %r9;\n" -" mul.wide.s32 %rd52, %r9, 4;\n" -" add.u64 %rd50, %rd50, %rd52;\n" -"$Lt_0_26882:\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p17, %r69, %r70;\n" -" @%p17 bra $Lt_0_27394;\n" -" mov.f32 %f98, %f6;\n" -" st.global.f32 [%rd50+0], %f98;\n" -" cvt.s64.s32 %rd53, %r9;\n" -" mul.wide.s32 %rd54, %r9, 4;\n" -" add.u64 %rd55, %rd54, %rd50;\n" -" mov.f32 %f99, %f8;\n" -" st.global.f32 [%rd55+0], %f99;\n" -" add.u64 %rd56, %rd54, %rd55;\n" -" mov.f32 %f100, %f10;\n" -" st.global.f32 [%rd56+0], %f100;\n" -" add.u64 %rd57, %rd54, %rd56;\n" -" mov.f32 %f101, %f12;\n" -" st.global.f32 [%rd57+0], %f101;\n" -" add.u64 %rd50, %rd54, %rd57;\n" -" mov.f32 %f102, %f14;\n" -" st.global.f32 [%rd50+0], %f102;\n" -" mov.f32 %f103, %f16;\n" -" add.u64 %rd58, %rd54, %rd50;\n" -" st.global.f32 [%rd58+0], %f103;\n" -"$Lt_0_27394:\n" -" ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd60, %rd4, 16;\n" -" add.u64 %rd61, %rd59, %rd60;\n" -" mov.f32 %f104, %f105;\n" -" st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f104};\n" -"$Lt_0_26370:\n" -"$Lt_0_18690:\n" -" .loc 16 105 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<74>;\n" -" .reg .u64 %rd<75>;\n" -" .reg .f32 %f<114>;\n" -" .reg .pred %p<22>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32620_33_non_const_sp_lj3268[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32618_34_non_const_lj13296[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32619_34_non_const_lj35232[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32692_55_non_const_red_acc7168[3072];\n" -" .loc 16 113 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_20994;\n" -" .loc 16 121 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32620_33_non_const_sp_lj3268;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_20994:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32620_33_non_const_sp_lj3268;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_21506;\n" -" .loc 16 123 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32618_34_non_const_lj13296;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_22018;\n" -" .loc 16 125 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32619_34_non_const_lj35232;\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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_22018:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32619_34_non_const_lj35232;\n" -"$Lt_1_21506:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32619_34_non_const_lj35232;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32618_34_non_const_lj13296;\n" -" .loc 16 133 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 135 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_30210;\n" -" .loc 16 140 0\n" -" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd17, %r14;\n" -" mul.wide.s32 %rd18, %r14, 4;\n" -" cvt.s64.s32 %rd19, %r12;\n" -" mul.wide.s32 %rd20, %r12, 4;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd22, %rd20, %rd21;\n" -" add.u64 %rd23, %rd18, %rd22;\n" -" ld.global.s32 %r15, [%rd23+0];\n" -" sub.s32 %r16, %r6, 1;\n" -" and.b32 %r17, %r16, %r1;\n" -" cvt.s64.s32 %rd24, %r17;\n" -" mul.wide.s32 %rd25, %r17, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd26, %rd21;\n" -" @%p5 bra $Lt_1_23298;\n" -" cvt.s32.s64 %r18, %rd17;\n" -" mul.lo.s32 %r19, %r18, %r6;\n" -" mov.s32 %r20, %r19;\n" -" mul.lo.s32 %r21, %r16, %r12;\n" -" add.s32 %r22, %r18, %r21;\n" -" cvt.s64.s32 %rd27, %r22;\n" -" mul.wide.s32 %rd28, %r22, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r23, %r16, %r15;\n" -" cvt.s64.s32 %rd30, %r23;\n" -" div.s32 %r24, %r15, %r6;\n" -" mul.lo.s32 %r25, %r19, %r24;\n" -" cvt.s64.s32 %rd31, %r25;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_23042;\n" -"$Lt_1_23298:\n" -" add.u64 %rd36, %rd18, %rd23;\n" -" ld.global.s32 %r26, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r26;\n" -" mul.wide.s32 %rd38, %r26, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r15;\n" -" mul.wide.s32 %rd41, %r15, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r20, %r6;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_23042:\n" -" .loc 16 143 0\n" -" ld.global.s32 %r27, [%rd22+0];\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" setp.ge.u64 %p6, %rd35, %rd34;\n" -" @%p6 bra $Lt_1_31746;\n" -" cvt.rzi.ftz.s32.f32 %r35, %f29;\n" -" cvt.s64.s32 %rd42, %r20;\n" -" mul.lo.s32 %r36, %r35, 11;\n" -" cvt.rn.f32.s32 %f30, %r36;\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_24066:\n" -" .loc 16 150 0\n" -" ld.global.s32 %r37, [%rd35+0];\n" -" .loc 16 151 0\n" -" shr.s32 %r38, %r37, 30;\n" -" and.b32 %r39, %r38, 3;\n" -" cvt.s64.s32 %rd43, %r39;\n" -" mul.wide.s32 %rd44, %r39, 4;\n" -" add.u64 %rd45, %rd1, %rd44;\n" -" ld.shared.f32 %f35, [%rd45+0];\n" -" .loc 16 154 0\n" -" and.b32 %r40, %r37, 1073741823;\n" -" mov.u32 %r41, %r40;\n" -" mov.s32 %r42, 0;\n" -" mov.u32 %r43, %r42;\n" -" mov.s32 %r44, 0;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r41,%r43,%r45,%r47}];\n" -" mov.f32 %f40, %f36;\n" -" mov.f32 %f41, %f37;\n" -" mov.f32 %f42, %f38;\n" -" mov.f32 %f43, %f39;\n" -" sub.ftz.f32 %f44, %f27, %f41;\n" -" sub.ftz.f32 %f45, %f26, %f40;\n" -" sub.ftz.f32 %f46, %f28, %f42;\n" -" mul.ftz.f32 %f47, %f44, %f44;\n" -" fma.rn.ftz.f32 %f48, %f45, %f45, %f47;\n" -" fma.rn.ftz.f32 %f49, %f46, %f46, %f48;\n" -" add.ftz.f32 %f50, %f30, %f43;\n" -" cvt.rzi.ftz.s32.f32 %r48, %f50;\n" -" cvt.s64.s32 %rd46, %r48;\n" -" mul.wide.s32 %rd47, %r48, 16;\n" -" add.u64 %rd48, %rd47, %rd7;\n" -" ld.shared.f32 %f51, [%rd48+8];\n" -" setp.gt.ftz.f32 %p7, %f51, %f49;\n" -" @!%p7 bra $Lt_1_25346;\n" -" .loc 16 165 0\n" -" sqrt.approx.ftz.f32 %f52, %f49;\n" -" ld.shared.v4.f32 {%f53,%f54,_,%f55}, [%rd48+0];\n" -" sub.ftz.f32 %f56, %f52, %f55;\n" -" .loc 16 169 0\n" -" mul.ftz.f32 %f57, %f56, %f56;\n" -" rcp.approx.ftz.f32 %f58, %f57;\n" -" mul.ftz.f32 %f59, %f58, %f58;\n" -" mul.ftz.f32 %f60, %f58, %f59;\n" -" mul.ftz.f32 %f61, %f53, %f60;\n" -" sub.ftz.f32 %f62, %f61, %f54;\n" -" mul.ftz.f32 %f63, %f60, %f62;\n" -" .loc 16 170 0\n" -" div.approx.ftz.f32 %f64, %f35, %f56;\n" -" div.approx.ftz.f32 %f65, %f64, %f52;\n" -" mul.ftz.f32 %f66, %f63, %f65;\n" -" .loc 16 172 0\n" -" fma.rn.ftz.f32 %f33, %f45, %f66, %f33;\n" -" .loc 16 173 0\n" -" fma.rn.ftz.f32 %f32, %f44, %f66, %f32;\n" -" .loc 16 174 0\n" -" fma.rn.ftz.f32 %f31, %f46, %f66, %f31;\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p8, %r49, %r50;\n" -" @%p8 bra $Lt_1_24834;\n" -" .loc 16 177 0\n" -" add.u64 %rd49, %rd47, %rd13;\n" -" ld.shared.v4.f32 {%f67,%f68,%f69,_}, [%rd49+0];\n" -" mul.ftz.f32 %f70, %f67, %f60;\n" -" sub.ftz.f32 %f71, %f70, %f68;\n" -" mul.ftz.f32 %f72, %f60, %f71;\n" -" .loc 16 178 0\n" -" sub.ftz.f32 %f73, %f72, %f69;\n" -" fma.rn.ftz.f32 %f34, %f35, %f73, %f34;\n" -"$Lt_1_24834:\n" -" ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r52, 0;\n" -" setp.le.s32 %p9, %r51, %r52;\n" -" @%p9 bra $Lt_1_25346;\n" -" .loc 16 181 0\n" -" mov.f32 %f74, %f11;\n" -" mul.ftz.f32 %f75, %f45, %f45;\n" -" fma.rn.ftz.f32 %f76, %f66, %f75, %f74;\n" -" mov.f32 %f11, %f76;\n" -" .loc 16 182 0\n" -" mov.f32 %f77, %f13;\n" -" fma.rn.ftz.f32 %f78, %f66, %f47, %f77;\n" -" mov.f32 %f13, %f78;\n" -" .loc 16 183 0\n" -" mov.f32 %f79, %f15;\n" -" mul.ftz.f32 %f80, %f46, %f46;\n" -" fma.rn.ftz.f32 %f81, %f66, %f80, %f79;\n" -" mov.f32 %f15, %f81;\n" -" .loc 16 184 0\n" -" mov.f32 %f82, %f17;\n" -" mul.ftz.f32 %f83, %f44, %f45;\n" -" fma.rn.ftz.f32 %f84, %f66, %f83, %f82;\n" -" mov.f32 %f17, %f84;\n" -" .loc 16 185 0\n" -" mov.f32 %f85, %f19;\n" -" mul.ftz.f32 %f86, %f45, %f46;\n" -" fma.rn.ftz.f32 %f87, %f66, %f86, %f85;\n" -" mov.f32 %f19, %f87;\n" -" .loc 16 186 0\n" -" mul.ftz.f32 %f88, %f44, %f46;\n" -" fma.rn.ftz.f32 %f20, %f66, %f88, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_25346:\n" -"$Lt_1_24322:\n" -" .loc 16 148 0\n" -" mul.lo.u64 %rd50, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd50;\n" -" setp.lt.u64 %p10, %rd35, %rd34;\n" -" @%p10 bra $Lt_1_24066;\n" -" bra.uni $Lt_1_23554;\n" -"$Lt_1_31746:\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_23554:\n" -" mov.u32 %r53, 1;\n" -" setp.le.s32 %p11, %r6, %r53;\n" -" @%p11 bra $Lt_1_28162;\n" -" .loc 16 191 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_32692_55_non_const_red_acc7168;\n" -" cvt.s64.s32 %rd52, %r1;\n" -" mul.wide.s32 %rd53, %r1, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f89, %f33;\n" -" st.shared.f32 [%rd54+0], %f89;\n" -" mov.f32 %f90, %f32;\n" -" st.shared.f32 [%rd54+512], %f90;\n" -" mov.f32 %f91, %f31;\n" -" st.shared.f32 [%rd54+1024], %f91;\n" -" mov.f32 %f92, %f34;\n" -" st.shared.f32 [%rd54+1536], %f92;\n" -" shr.s32 %r54, %r6, 31;\n" -" mov.s32 %r55, 1;\n" -" and.b32 %r56, %r54, %r55;\n" -" add.s32 %r57, %r56, %r6;\n" -" shr.s32 %r58, %r57, 1;\n" -" mov.s32 %r59, %r58;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p12, %r58, %r60;\n" -" @!%p12 bra $Lt_1_26626;\n" -"$Lt_1_27138:\n" -" setp.ge.u32 %p13, %r17, %r59;\n" -" @%p13 bra $Lt_1_27394;\n" -" add.u32 %r61, %r1, %r59;\n" -" cvt.u64.u32 %rd55, %r61;\n" -" mul.wide.u32 %rd56, %r61, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f93, [%rd57+0];\n" -" add.ftz.f32 %f89, %f93, %f89;\n" -" st.shared.f32 [%rd54+0], %f89;\n" -" ld.shared.f32 %f94, [%rd57+512];\n" -" add.ftz.f32 %f90, %f94, %f90;\n" -" st.shared.f32 [%rd54+512], %f90;\n" -" ld.shared.f32 %f95, [%rd57+1024];\n" -" add.ftz.f32 %f91, %f95, %f91;\n" -" st.shared.f32 [%rd54+1024], %f91;\n" -" ld.shared.f32 %f96, [%rd57+1536];\n" -" add.ftz.f32 %f92, %f96, %f92;\n" -" st.shared.f32 [%rd54+1536], %f92;\n" -"$Lt_1_27394:\n" -" shr.u32 %r59, %r59, 1;\n" -" mov.u32 %r62, 0;\n" -" setp.ne.u32 %p14, %r59, %r62;\n" -" @%p14 bra $Lt_1_27138;\n" -"$Lt_1_26626:\n" -" mov.f32 %f33, %f89;\n" -" mov.f32 %f32, %f90;\n" -" mov.f32 %f31, %f91;\n" -" mov.f32 %f34, %f92;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p15, %r63, %r64;\n" -" @%p15 bra $Lt_1_28162;\n" -" mov.f32 %f89, %f11;\n" -" st.shared.f32 [%rd54+0], %f89;\n" -" mov.f32 %f90, %f13;\n" -" st.shared.f32 [%rd54+512], %f90;\n" -" mov.f32 %f91, %f15;\n" -" st.shared.f32 [%rd54+1024], %f91;\n" -" mov.f32 %f92, %f17;\n" -" st.shared.f32 [%rd54+1536], %f92;\n" -" mov.f32 %f97, %f19;\n" -" st.shared.f32 [%rd54+2048], %f97;\n" -" mov.f32 %f98, %f20;\n" -" st.shared.f32 [%rd54+2560], %f98;\n" -" mov.s32 %r65, %r58;\n" -" @!%p12 bra $Lt_1_28674;\n" -"$Lt_1_29186:\n" -" setp.ge.u32 %p16, %r17, %r65;\n" -" @%p16 bra $Lt_1_29442;\n" -" add.u32 %r66, %r1, %r65;\n" -" cvt.u64.u32 %rd58, %r66;\n" -" mul.wide.u32 %rd59, %r66, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f99, [%rd60+0];\n" -" add.ftz.f32 %f89, %f99, %f89;\n" -" st.shared.f32 [%rd54+0], %f89;\n" -" ld.shared.f32 %f100, [%rd60+512];\n" -" add.ftz.f32 %f90, %f100, %f90;\n" -" st.shared.f32 [%rd54+512], %f90;\n" -" ld.shared.f32 %f101, [%rd60+1024];\n" -" add.ftz.f32 %f91, %f101, %f91;\n" -" st.shared.f32 [%rd54+1024], %f91;\n" -" ld.shared.f32 %f102, [%rd60+1536];\n" -" add.ftz.f32 %f92, %f102, %f92;\n" -" st.shared.f32 [%rd54+1536], %f92;\n" -" ld.shared.f32 %f103, [%rd60+2048];\n" -" add.ftz.f32 %f97, %f103, %f97;\n" -" st.shared.f32 [%rd54+2048], %f97;\n" -" ld.shared.f32 %f104, [%rd60+2560];\n" -" add.ftz.f32 %f98, %f104, %f98;\n" -" st.shared.f32 [%rd54+2560], %f98;\n" -"$Lt_1_29442:\n" -" shr.u32 %r65, %r65, 1;\n" -" mov.u32 %r67, 0;\n" -" setp.ne.u32 %p17, %r65, %r67;\n" -" @%p17 bra $Lt_1_29186;\n" -"$Lt_1_28674:\n" -" mov.f32 %f11, %f89;\n" -" mov.f32 %f13, %f90;\n" -" mov.f32 %f15, %f91;\n" -" mov.f32 %f17, %f92;\n" -" mov.f32 %f19, %f97;\n" -" mov.f32 %f21, %f98;\n" -"$Lt_1_28162:\n" -"$Lt_1_26114:\n" -" mov.u32 %r68, 0;\n" -" setp.ne.s32 %p18, %r17, %r68;\n" -" @%p18 bra $Lt_1_30210;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd62, %rd61, %rd20;\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p19, %r69, %r70;\n" -" @%p19 bra $Lt_1_30722;\n" -" st.global.f32 [%rd62+0], %f34;\n" -" cvt.s64.s32 %rd63, %r13;\n" -" mul.wide.s32 %rd64, %r13, 4;\n" -" add.u64 %rd62, %rd62, %rd64;\n" -"$Lt_1_30722:\n" -" ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r72, 0;\n" -" setp.le.s32 %p20, %r71, %r72;\n" -" @%p20 bra $Lt_1_31234;\n" -" mov.f32 %f105, %f11;\n" -" st.global.f32 [%rd62+0], %f105;\n" -" cvt.s64.s32 %rd65, %r13;\n" -" mul.wide.s32 %rd66, %r13, 4;\n" -" add.u64 %rd67, %rd66, %rd62;\n" -" mov.f32 %f106, %f13;\n" -" st.global.f32 [%rd67+0], %f106;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" mov.f32 %f107, %f15;\n" -" st.global.f32 [%rd68+0], %f107;\n" -" add.u64 %rd69, %rd66, %rd68;\n" -" mov.f32 %f108, %f17;\n" -" st.global.f32 [%rd69+0], %f108;\n" -" add.u64 %rd62, %rd66, %rd69;\n" -" mov.f32 %f109, %f19;\n" -" st.global.f32 [%rd62+0], %f109;\n" -" mov.f32 %f110, %f21;\n" -" add.u64 %rd70, %rd66, %rd62;\n" -" st.global.f32 [%rd70+0], %f110;\n" -"$Lt_1_31234:\n" -" ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd72, %rd19, 16;\n" -" add.u64 %rd73, %rd71, %rd72;\n" -" mov.f32 %f111, %f112;\n" -" st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f111};\n" -"$Lt_1_30210:\n" -"$Lt_1_22530:\n" -" .loc 16 194 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/lj_ptx.h b/lib/gpu/lj_ptx.h deleted file mode 100644 index 3d9df759d8..0000000000 --- a/lib/gpu/lj_ptx.h +++ /dev/null @@ -1,849 +0,0 @@ -const char * lj = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref 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_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<72>;\n" -" .reg .u64 %rd<63>;\n" -" .reg .f32 %f<102>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32600_55_non_const_red_acc108[3072];\n" -" .loc 16 31 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 36 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 37 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 38 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 39 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 46 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" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_26370;\n" -" .loc 16 51 0\n" -" ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" cvt.s64.s32 %rd4, %r8;\n" -" mul.wide.s32 %rd5, %r8, 4;\n" -" ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd7, %rd5, %rd6;\n" -" add.u64 %rd8, %rd3, %rd7;\n" -" ld.global.s32 %r11, [%rd8+0];\n" -" sub.s32 %r12, %r1, 1;\n" -" and.b32 %r13, %r12, %r2;\n" -" cvt.s64.s32 %rd9, %r13;\n" -" mul.wide.s32 %rd10, %r13, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd6;\n" -" @%p2 bra $Lt_0_19458;\n" -" cvt.s32.s64 %r14, %rd2;\n" -" mul.lo.s32 %r15, %r14, %r1;\n" -" mov.s32 %r16, %r15;\n" -" mul.lo.s32 %r17, %r12, %r8;\n" -" add.s32 %r18, %r14, %r17;\n" -" cvt.s64.s32 %rd12, %r18;\n" -" mul.wide.s32 %rd13, %r18, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r19, %r12, %r11;\n" -" cvt.s64.s32 %rd15, %r19;\n" -" div.s32 %r20, %r11, %r1;\n" -" mul.lo.s32 %r21, %r15, %r20;\n" -" cvt.s64.s32 %rd16, %r21;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_19202;\n" -"$Lt_0_19458:\n" -" add.u64 %rd21, %rd3, %rd8;\n" -" ld.global.s32 %r22, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r22;\n" -" mul.wide.s32 %rd23, %r22, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r11;\n" -" mul.wide.s32 %rd26, %r11, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r16, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_19202:\n" -" .loc 16 54 0\n" -" ld.global.s32 %r23, [%rd7+0];\n" -" mov.u32 %r24, %r23;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f21, %f17;\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_27906;\n" -" cvt.rzi.ftz.s32.f32 %r31, %f24;\n" -" cvt.s64.s32 %rd27, %r16;\n" -" ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r33, %r32, %r31;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_lj1];\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92;\n" -"$Lt_0_20226:\n" -" .loc 16 60 0\n" -" ld.global.s32 %r34, [%rd20+0];\n" -" .loc 16 61 0\n" -" shr.s32 %r35, %r34, 30;\n" -" and.b32 %r36, %r35, 3;\n" -" cvt.s64.s32 %rd30, %r36;\n" -" mul.wide.s32 %rd31, %r36, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f29, [%rd32+0];\n" -" .loc 16 64 0\n" -" and.b32 %r37, %r34, 1073741823;\n" -" mov.u32 %r38, %r37;\n" -" mov.s32 %r39, 0;\n" -" mov.u32 %r40, %r39;\n" -" mov.s32 %r41, 0;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}];\n" -" mov.f32 %f34, %f30;\n" -" mov.f32 %f35, %f31;\n" -" mov.f32 %f36, %f32;\n" -" mov.f32 %f37, %f33;\n" -" cvt.rzi.ftz.s32.f32 %r45, %f37;\n" -" sub.ftz.f32 %f38, %f22, %f35;\n" -" sub.ftz.f32 %f39, %f21, %f34;\n" -" sub.ftz.f32 %f40, %f23, %f36;\n" -" mul.ftz.f32 %f41, %f38, %f38;\n" -" fma.rn.ftz.f32 %f42, %f39, %f39, %f41;\n" -" fma.rn.ftz.f32 %f43, %f40, %f40, %f42;\n" -" add.s32 %r46, %r45, %r33;\n" -" cvt.s64.s32 %rd33, %r46;\n" -" mul.wide.s32 %rd34, %r46, 16;\n" -" add.u64 %rd35, %rd34, %rd28;\n" -" ld.global.f32 %f44, [%rd35+8];\n" -" setp.gt.ftz.f32 %p4, %f44, %f43;\n" -" @!%p4 bra $Lt_0_21506;\n" -" .loc 16 78 0\n" -" rcp.approx.ftz.f32 %f45, %f43;\n" -" mul.ftz.f32 %f46, %f45, %f45;\n" -" mul.ftz.f32 %f47, %f45, %f46;\n" -" mul.ftz.f32 %f48, %f45, %f47;\n" -" ld.global.v2.f32 {%f49,%f50}, [%rd35+0];\n" -" mul.ftz.f32 %f51, %f49, %f47;\n" -" sub.ftz.f32 %f52, %f51, %f50;\n" -" mul.ftz.f32 %f53, %f48, %f52;\n" -" mul.ftz.f32 %f54, %f29, %f53;\n" -" .loc 16 80 0\n" -" fma.rn.ftz.f32 %f27, %f39, %f54, %f27;\n" -" .loc 16 81 0\n" -" fma.rn.ftz.f32 %f26, %f38, %f54, %f26;\n" -" .loc 16 82 0\n" -" fma.rn.ftz.f32 %f25, %f40, %f54, %f25;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p5, %r47, %r48;\n" -" @%p5 bra $Lt_0_20994;\n" -" .loc 16 86 0\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_lj3];\n" -" add.u64 %rd37, %rd36, %rd34;\n" -" ld.global.v4.f32 {%f55,%f56,%f57,_}, [%rd37+0];\n" -" mul.ftz.f32 %f58, %f55, %f47;\n" -" sub.ftz.f32 %f59, %f58, %f56;\n" -" mul.ftz.f32 %f60, %f47, %f59;\n" -" sub.ftz.f32 %f61, %f60, %f57;\n" -" fma.rn.ftz.f32 %f28, %f29, %f61, %f28;\n" -"$Lt_0_20994:\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p6, %r49, %r50;\n" -" @%p6 bra $Lt_0_21506;\n" -" .loc 16 89 0\n" -" mov.f32 %f62, %f6;\n" -" mul.ftz.f32 %f63, %f39, %f39;\n" -" fma.rn.ftz.f32 %f64, %f54, %f63, %f62;\n" -" mov.f32 %f6, %f64;\n" -" .loc 16 90 0\n" -" mov.f32 %f65, %f8;\n" -" fma.rn.ftz.f32 %f66, %f54, %f41, %f65;\n" -" mov.f32 %f8, %f66;\n" -" .loc 16 91 0\n" -" mov.f32 %f67, %f10;\n" -" mul.ftz.f32 %f68, %f40, %f40;\n" -" fma.rn.ftz.f32 %f69, %f54, %f68, %f67;\n" -" mov.f32 %f10, %f69;\n" -" .loc 16 92 0\n" -" mov.f32 %f70, %f12;\n" -" mul.ftz.f32 %f71, %f38, %f39;\n" -" fma.rn.ftz.f32 %f72, %f54, %f71, %f70;\n" -" mov.f32 %f12, %f72;\n" -" .loc 16 93 0\n" -" mov.f32 %f73, %f14;\n" -" mul.ftz.f32 %f74, %f39, %f40;\n" -" fma.rn.ftz.f32 %f75, %f54, %f74, %f73;\n" -" mov.f32 %f14, %f75;\n" -" .loc 16 94 0\n" -" mul.ftz.f32 %f76, %f38, %f40;\n" -" fma.rn.ftz.f32 %f15, %f54, %f76, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_0_21506:\n" -"$Lt_0_20482:\n" -" .loc 16 58 0\n" -" mul.lo.u64 %rd38, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd38;\n" -" setp.lt.u64 %p7, %rd20, %rd19;\n" -" @%p7 bra $Lt_0_20226;\n" -" bra.uni $Lt_0_19714;\n" -"$Lt_0_27906:\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -"$Lt_0_19714:\n" -" mov.u32 %r51, 1;\n" -" setp.le.s32 %p8, %r1, %r51;\n" -" @%p8 bra $Lt_0_24322;\n" -" .loc 16 99 0\n" -" mov.u64 %rd39, __cuda___cuda_local_var_32600_55_non_const_red_acc108;\n" -" cvt.s64.s32 %rd40, %r2;\n" -" mul.wide.s32 %rd41, %r2, 4;\n" -" add.u64 %rd42, %rd39, %rd41;\n" -" mov.f32 %f77, %f27;\n" -" st.shared.f32 [%rd42+0], %f77;\n" -" mov.f32 %f78, %f26;\n" -" st.shared.f32 [%rd42+512], %f78;\n" -" mov.f32 %f79, %f25;\n" -" st.shared.f32 [%rd42+1024], %f79;\n" -" mov.f32 %f80, %f28;\n" -" st.shared.f32 [%rd42+1536], %f80;\n" -" shr.s32 %r52, %r1, 31;\n" -" mov.s32 %r53, 1;\n" -" and.b32 %r54, %r52, %r53;\n" -" add.s32 %r55, %r54, %r1;\n" -" shr.s32 %r56, %r55, 1;\n" -" mov.s32 %r57, %r56;\n" -" mov.u32 %r58, 0;\n" -" setp.ne.u32 %p9, %r56, %r58;\n" -" @!%p9 bra $Lt_0_22786;\n" -"$Lt_0_23298:\n" -" setp.ge.u32 %p10, %r13, %r57;\n" -" @%p10 bra $Lt_0_23554;\n" -" add.u32 %r59, %r2, %r57;\n" -" cvt.u64.u32 %rd43, %r59;\n" -" mul.wide.u32 %rd44, %r59, 4;\n" -" add.u64 %rd45, %rd39, %rd44;\n" -" ld.shared.f32 %f81, [%rd45+0];\n" -" add.ftz.f32 %f77, %f81, %f77;\n" -" st.shared.f32 [%rd42+0], %f77;\n" -" ld.shared.f32 %f82, [%rd45+512];\n" -" add.ftz.f32 %f78, %f82, %f78;\n" -" st.shared.f32 [%rd42+512], %f78;\n" -" ld.shared.f32 %f83, [%rd45+1024];\n" -" add.ftz.f32 %f79, %f83, %f79;\n" -" st.shared.f32 [%rd42+1024], %f79;\n" -" ld.shared.f32 %f84, [%rd45+1536];\n" -" add.ftz.f32 %f80, %f84, %f80;\n" -" st.shared.f32 [%rd42+1536], %f80;\n" -"$Lt_0_23554:\n" -" shr.u32 %r57, %r57, 1;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p11, %r57, %r60;\n" -" @%p11 bra $Lt_0_23298;\n" -"$Lt_0_22786:\n" -" mov.f32 %f27, %f77;\n" -" mov.f32 %f26, %f78;\n" -" mov.f32 %f25, %f79;\n" -" mov.f32 %f28, %f80;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p12, %r61, %r62;\n" -" @%p12 bra $Lt_0_24322;\n" -" mov.f32 %f77, %f6;\n" -" st.shared.f32 [%rd42+0], %f77;\n" -" mov.f32 %f78, %f8;\n" -" st.shared.f32 [%rd42+512], %f78;\n" -" mov.f32 %f79, %f10;\n" -" st.shared.f32 [%rd42+1024], %f79;\n" -" mov.f32 %f80, %f12;\n" -" st.shared.f32 [%rd42+1536], %f80;\n" -" mov.f32 %f85, %f14;\n" -" st.shared.f32 [%rd42+2048], %f85;\n" -" mov.f32 %f86, %f15;\n" -" st.shared.f32 [%rd42+2560], %f86;\n" -" mov.s32 %r63, %r56;\n" -" @!%p9 bra $Lt_0_24834;\n" -"$Lt_0_25346:\n" -" setp.ge.u32 %p13, %r13, %r63;\n" -" @%p13 bra $Lt_0_25602;\n" -" add.u32 %r64, %r2, %r63;\n" -" cvt.u64.u32 %rd46, %r64;\n" -" mul.wide.u32 %rd47, %r64, 4;\n" -" add.u64 %rd48, %rd39, %rd47;\n" -" ld.shared.f32 %f87, [%rd48+0];\n" -" add.ftz.f32 %f77, %f87, %f77;\n" -" st.shared.f32 [%rd42+0], %f77;\n" -" ld.shared.f32 %f88, [%rd48+512];\n" -" add.ftz.f32 %f78, %f88, %f78;\n" -" st.shared.f32 [%rd42+512], %f78;\n" -" ld.shared.f32 %f89, [%rd48+1024];\n" -" add.ftz.f32 %f79, %f89, %f79;\n" -" st.shared.f32 [%rd42+1024], %f79;\n" -" ld.shared.f32 %f90, [%rd48+1536];\n" -" add.ftz.f32 %f80, %f90, %f80;\n" -" st.shared.f32 [%rd42+1536], %f80;\n" -" ld.shared.f32 %f91, [%rd48+2048];\n" -" add.ftz.f32 %f85, %f91, %f85;\n" -" st.shared.f32 [%rd42+2048], %f85;\n" -" ld.shared.f32 %f92, [%rd48+2560];\n" -" add.ftz.f32 %f86, %f92, %f86;\n" -" st.shared.f32 [%rd42+2560], %f86;\n" -"$Lt_0_25602:\n" -" shr.u32 %r63, %r63, 1;\n" -" mov.u32 %r65, 0;\n" -" setp.ne.u32 %p14, %r63, %r65;\n" -" @%p14 bra $Lt_0_25346;\n" -"$Lt_0_24834:\n" -" mov.f32 %f6, %f77;\n" -" mov.f32 %f8, %f78;\n" -" mov.f32 %f10, %f79;\n" -" mov.f32 %f12, %f80;\n" -" mov.f32 %f14, %f85;\n" -" mov.f32 %f16, %f86;\n" -"$Lt_0_24322:\n" -"$Lt_0_22274:\n" -" mov.u32 %r66, 0;\n" -" setp.ne.s32 %p15, %r13, %r66;\n" -" @%p15 bra $Lt_0_26370;\n" -" ld.param.u64 %rd49, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd50, %rd49, %rd5;\n" -" ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r68, 0;\n" -" setp.le.s32 %p16, %r67, %r68;\n" -" @%p16 bra $Lt_0_26882;\n" -" st.global.f32 [%rd50+0], %f28;\n" -" cvt.s64.s32 %rd51, %r9;\n" -" mul.wide.s32 %rd52, %r9, 4;\n" -" add.u64 %rd50, %rd50, %rd52;\n" -"$Lt_0_26882:\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p17, %r69, %r70;\n" -" @%p17 bra $Lt_0_27394;\n" -" mov.f32 %f93, %f6;\n" -" st.global.f32 [%rd50+0], %f93;\n" -" cvt.s64.s32 %rd53, %r9;\n" -" mul.wide.s32 %rd54, %r9, 4;\n" -" add.u64 %rd55, %rd54, %rd50;\n" -" mov.f32 %f94, %f8;\n" -" st.global.f32 [%rd55+0], %f94;\n" -" add.u64 %rd56, %rd54, %rd55;\n" -" mov.f32 %f95, %f10;\n" -" st.global.f32 [%rd56+0], %f95;\n" -" add.u64 %rd57, %rd54, %rd56;\n" -" mov.f32 %f96, %f12;\n" -" st.global.f32 [%rd57+0], %f96;\n" -" add.u64 %rd50, %rd54, %rd57;\n" -" mov.f32 %f97, %f14;\n" -" st.global.f32 [%rd50+0], %f97;\n" -" mov.f32 %f98, %f16;\n" -" add.u64 %rd58, %rd54, %rd50;\n" -" st.global.f32 [%rd58+0], %f98;\n" -"$Lt_0_27394:\n" -" ld.param.u64 %rd59, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd60, %rd4, 16;\n" -" add.u64 %rd61, %rd59, %rd60;\n" -" mov.f32 %f99, %f100;\n" -" st.global.v4.f32 [%rd61+0], {%f27,%f26,%f25,%f99};\n" -"$Lt_0_26370:\n" -"$Lt_0_18690:\n" -" .loc 16 102 0\n" -" exit;\n" -"$LDWend_kernel_pair:\n" -" }\n" -" .entry kernel_pair_fast (\n" -" .param .u64 __cudaparm_kernel_pair_fast_x_,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<74>;\n" -" .reg .u64 %rd<75>;\n" -" .reg .f32 %f<109>;\n" -" .reg .pred %p<22>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32617_33_non_const_sp_lj3268[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32615_34_non_const_lj13296[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32616_34_non_const_lj35232[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32685_55_non_const_red_acc7168[3072];\n" -" .loc 16 110 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_20994;\n" -" .loc 16 118 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32617_33_non_const_sp_lj3268;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_20994:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32617_33_non_const_sp_lj3268;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_21506;\n" -" .loc 16 120 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32615_34_non_const_lj13296;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_22018;\n" -" .loc 16 122 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32616_34_non_const_lj35232;\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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_1_22018:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32616_34_non_const_lj35232;\n" -"$Lt_1_21506:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32616_34_non_const_lj35232;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32615_34_non_const_lj13296;\n" -" .loc 16 130 0\n" -" mov.f32 %f10, 0f00000000; \n" -" mov.f32 %f11, %f10;\n" -" mov.f32 %f12, 0f00000000; \n" -" mov.f32 %f13, %f12;\n" -" mov.f32 %f14, 0f00000000; \n" -" mov.f32 %f15, %f14;\n" -" mov.f32 %f16, 0f00000000; \n" -" mov.f32 %f17, %f16;\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" .loc 16 132 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_30210;\n" -" .loc 16 137 0\n" -" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd17, %r14;\n" -" mul.wide.s32 %rd18, %r14, 4;\n" -" cvt.s64.s32 %rd19, %r12;\n" -" mul.wide.s32 %rd20, %r12, 4;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd22, %rd20, %rd21;\n" -" add.u64 %rd23, %rd18, %rd22;\n" -" ld.global.s32 %r15, [%rd23+0];\n" -" sub.s32 %r16, %r6, 1;\n" -" and.b32 %r17, %r16, %r1;\n" -" cvt.s64.s32 %rd24, %r17;\n" -" mul.wide.s32 %rd25, %r17, 4;\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd26, %rd21;\n" -" @%p5 bra $Lt_1_23298;\n" -" cvt.s32.s64 %r18, %rd17;\n" -" mul.lo.s32 %r19, %r18, %r6;\n" -" mov.s32 %r20, %r19;\n" -" mul.lo.s32 %r21, %r16, %r12;\n" -" add.s32 %r22, %r18, %r21;\n" -" cvt.s64.s32 %rd27, %r22;\n" -" mul.wide.s32 %rd28, %r22, 4;\n" -" add.u64 %rd29, %rd23, %rd28;\n" -" and.b32 %r23, %r16, %r15;\n" -" cvt.s64.s32 %rd30, %r23;\n" -" div.s32 %r24, %r15, %r6;\n" -" mul.lo.s32 %r25, %r19, %r24;\n" -" cvt.s64.s32 %rd31, %r25;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -" mul.lo.u64 %rd33, %rd32, 4;\n" -" add.u64 %rd34, %rd29, %rd33;\n" -" add.u64 %rd35, %rd25, %rd29;\n" -" bra.uni $Lt_1_23042;\n" -"$Lt_1_23298:\n" -" add.u64 %rd36, %rd18, %rd23;\n" -" ld.global.s32 %r26, [%rd36+0];\n" -" cvt.s64.s32 %rd37, %r26;\n" -" mul.wide.s32 %rd38, %r26, 4;\n" -" add.u64 %rd39, %rd26, %rd38;\n" -" cvt.s64.s32 %rd40, %r15;\n" -" mul.wide.s32 %rd41, %r15, 4;\n" -" add.u64 %rd34, %rd39, %rd41;\n" -" mov.s32 %r20, %r6;\n" -" add.u64 %rd35, %rd25, %rd39;\n" -"$Lt_1_23042:\n" -" .loc 16 140 0\n" -" ld.global.s32 %r27, [%rd22+0];\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f22,%f23,%f24,%f25},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" mov.f32 %f28, %f24;\n" -" mov.f32 %f29, %f25;\n" -" setp.ge.u64 %p6, %rd35, %rd34;\n" -" @%p6 bra $Lt_1_31746;\n" -" cvt.rzi.ftz.s32.f32 %r35, %f29;\n" -" cvt.s64.s32 %rd42, %r20;\n" -" mul.lo.s32 %r36, %r35, 11;\n" -" cvt.rn.f32.s32 %f30, %r36;\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_24066:\n" -" .loc 16 147 0\n" -" ld.global.s32 %r37, [%rd35+0];\n" -" .loc 16 148 0\n" -" shr.s32 %r38, %r37, 30;\n" -" and.b32 %r39, %r38, 3;\n" -" cvt.s64.s32 %rd43, %r39;\n" -" mul.wide.s32 %rd44, %r39, 4;\n" -" add.u64 %rd45, %rd1, %rd44;\n" -" ld.shared.f32 %f35, [%rd45+0];\n" -" .loc 16 151 0\n" -" and.b32 %r40, %r37, 1073741823;\n" -" mov.u32 %r41, %r40;\n" -" mov.s32 %r42, 0;\n" -" mov.u32 %r43, %r42;\n" -" mov.s32 %r44, 0;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" tex.1d.v4.f32.s32 {%f36,%f37,%f38,%f39},[pos_tex,{%r41,%r43,%r45,%r47}];\n" -" mov.f32 %f40, %f36;\n" -" mov.f32 %f41, %f37;\n" -" mov.f32 %f42, %f38;\n" -" mov.f32 %f43, %f39;\n" -" sub.ftz.f32 %f44, %f27, %f41;\n" -" sub.ftz.f32 %f45, %f26, %f40;\n" -" sub.ftz.f32 %f46, %f28, %f42;\n" -" mul.ftz.f32 %f47, %f44, %f44;\n" -" fma.rn.ftz.f32 %f48, %f45, %f45, %f47;\n" -" fma.rn.ftz.f32 %f49, %f46, %f46, %f48;\n" -" add.ftz.f32 %f50, %f30, %f43;\n" -" cvt.rzi.ftz.s32.f32 %r48, %f50;\n" -" cvt.s64.s32 %rd46, %r48;\n" -" mul.wide.s32 %rd47, %r48, 16;\n" -" add.u64 %rd48, %rd47, %rd7;\n" -" ld.shared.f32 %f51, [%rd48+8];\n" -" setp.gt.ftz.f32 %p7, %f51, %f49;\n" -" @!%p7 bra $Lt_1_25346;\n" -" .loc 16 163 0\n" -" rcp.approx.ftz.f32 %f52, %f49;\n" -" mul.ftz.f32 %f53, %f52, %f52;\n" -" mul.ftz.f32 %f54, %f52, %f53;\n" -" mul.ftz.f32 %f55, %f52, %f35;\n" -" mul.ftz.f32 %f56, %f54, %f55;\n" -" ld.shared.v2.f32 {%f57,%f58}, [%rd48+0];\n" -" mul.ftz.f32 %f59, %f57, %f54;\n" -" sub.ftz.f32 %f60, %f59, %f58;\n" -" mul.ftz.f32 %f61, %f56, %f60;\n" -" .loc 16 165 0\n" -" fma.rn.ftz.f32 %f33, %f45, %f61, %f33;\n" -" .loc 16 166 0\n" -" fma.rn.ftz.f32 %f32, %f44, %f61, %f32;\n" -" .loc 16 167 0\n" -" fma.rn.ftz.f32 %f31, %f46, %f61, %f31;\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p8, %r49, %r50;\n" -" @%p8 bra $Lt_1_24834;\n" -" .loc 16 170 0\n" -" add.u64 %rd49, %rd47, %rd13;\n" -" ld.shared.v4.f32 {%f62,%f63,%f64,_}, [%rd49+0];\n" -" mul.ftz.f32 %f65, %f62, %f54;\n" -" sub.ftz.f32 %f66, %f65, %f63;\n" -" mul.ftz.f32 %f67, %f54, %f66;\n" -" .loc 16 171 0\n" -" sub.ftz.f32 %f68, %f67, %f64;\n" -" fma.rn.ftz.f32 %f34, %f35, %f68, %f34;\n" -"$Lt_1_24834:\n" -" ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r52, 0;\n" -" setp.le.s32 %p9, %r51, %r52;\n" -" @%p9 bra $Lt_1_25346;\n" -" .loc 16 174 0\n" -" mov.f32 %f69, %f11;\n" -" mul.ftz.f32 %f70, %f45, %f45;\n" -" fma.rn.ftz.f32 %f71, %f61, %f70, %f69;\n" -" mov.f32 %f11, %f71;\n" -" .loc 16 175 0\n" -" mov.f32 %f72, %f13;\n" -" fma.rn.ftz.f32 %f73, %f61, %f47, %f72;\n" -" mov.f32 %f13, %f73;\n" -" .loc 16 176 0\n" -" mov.f32 %f74, %f15;\n" -" mul.ftz.f32 %f75, %f46, %f46;\n" -" fma.rn.ftz.f32 %f76, %f61, %f75, %f74;\n" -" mov.f32 %f15, %f76;\n" -" .loc 16 177 0\n" -" mov.f32 %f77, %f17;\n" -" mul.ftz.f32 %f78, %f44, %f45;\n" -" fma.rn.ftz.f32 %f79, %f61, %f78, %f77;\n" -" mov.f32 %f17, %f79;\n" -" .loc 16 178 0\n" -" mov.f32 %f80, %f19;\n" -" mul.ftz.f32 %f81, %f45, %f46;\n" -" fma.rn.ftz.f32 %f82, %f61, %f81, %f80;\n" -" mov.f32 %f19, %f82;\n" -" .loc 16 179 0\n" -" mul.ftz.f32 %f83, %f44, %f46;\n" -" fma.rn.ftz.f32 %f20, %f61, %f83, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_1_25346:\n" -"$Lt_1_24322:\n" -" .loc 16 145 0\n" -" mul.lo.u64 %rd50, %rd42, 4;\n" -" add.u64 %rd35, %rd35, %rd50;\n" -" setp.lt.u64 %p10, %rd35, %rd34;\n" -" @%p10 bra $Lt_1_24066;\n" -" bra.uni $Lt_1_23554;\n" -"$Lt_1_31746:\n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -" mov.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -"$Lt_1_23554:\n" -" mov.u32 %r53, 1;\n" -" setp.le.s32 %p11, %r6, %r53;\n" -" @%p11 bra $Lt_1_28162;\n" -" .loc 16 184 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_32685_55_non_const_red_acc7168;\n" -" cvt.s64.s32 %rd52, %r1;\n" -" mul.wide.s32 %rd53, %r1, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f84, %f33;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" mov.f32 %f85, %f32;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" mov.f32 %f86, %f31;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" mov.f32 %f87, %f34;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -" shr.s32 %r54, %r6, 31;\n" -" mov.s32 %r55, 1;\n" -" and.b32 %r56, %r54, %r55;\n" -" add.s32 %r57, %r56, %r6;\n" -" shr.s32 %r58, %r57, 1;\n" -" mov.s32 %r59, %r58;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p12, %r58, %r60;\n" -" @!%p12 bra $Lt_1_26626;\n" -"$Lt_1_27138:\n" -" setp.ge.u32 %p13, %r17, %r59;\n" -" @%p13 bra $Lt_1_27394;\n" -" add.u32 %r61, %r1, %r59;\n" -" cvt.u64.u32 %rd55, %r61;\n" -" mul.wide.u32 %rd56, %r61, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f88, [%rd57+0];\n" -" add.ftz.f32 %f84, %f88, %f84;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" ld.shared.f32 %f89, [%rd57+512];\n" -" add.ftz.f32 %f85, %f89, %f85;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" ld.shared.f32 %f90, [%rd57+1024];\n" -" add.ftz.f32 %f86, %f90, %f86;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" ld.shared.f32 %f91, [%rd57+1536];\n" -" add.ftz.f32 %f87, %f91, %f87;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -"$Lt_1_27394:\n" -" shr.u32 %r59, %r59, 1;\n" -" mov.u32 %r62, 0;\n" -" setp.ne.u32 %p14, %r59, %r62;\n" -" @%p14 bra $Lt_1_27138;\n" -"$Lt_1_26626:\n" -" mov.f32 %f33, %f84;\n" -" mov.f32 %f32, %f85;\n" -" mov.f32 %f31, %f86;\n" -" mov.f32 %f34, %f87;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p15, %r63, %r64;\n" -" @%p15 bra $Lt_1_28162;\n" -" mov.f32 %f84, %f11;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" mov.f32 %f85, %f13;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" mov.f32 %f86, %f15;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" mov.f32 %f87, %f17;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -" mov.f32 %f92, %f19;\n" -" st.shared.f32 [%rd54+2048], %f92;\n" -" mov.f32 %f93, %f20;\n" -" st.shared.f32 [%rd54+2560], %f93;\n" -" mov.s32 %r65, %r58;\n" -" @!%p12 bra $Lt_1_28674;\n" -"$Lt_1_29186:\n" -" setp.ge.u32 %p16, %r17, %r65;\n" -" @%p16 bra $Lt_1_29442;\n" -" add.u32 %r66, %r1, %r65;\n" -" cvt.u64.u32 %rd58, %r66;\n" -" mul.wide.u32 %rd59, %r66, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f94, [%rd60+0];\n" -" add.ftz.f32 %f84, %f94, %f84;\n" -" st.shared.f32 [%rd54+0], %f84;\n" -" ld.shared.f32 %f95, [%rd60+512];\n" -" add.ftz.f32 %f85, %f95, %f85;\n" -" st.shared.f32 [%rd54+512], %f85;\n" -" ld.shared.f32 %f96, [%rd60+1024];\n" -" add.ftz.f32 %f86, %f96, %f86;\n" -" st.shared.f32 [%rd54+1024], %f86;\n" -" ld.shared.f32 %f97, [%rd60+1536];\n" -" add.ftz.f32 %f87, %f97, %f87;\n" -" st.shared.f32 [%rd54+1536], %f87;\n" -" ld.shared.f32 %f98, [%rd60+2048];\n" -" add.ftz.f32 %f92, %f98, %f92;\n" -" st.shared.f32 [%rd54+2048], %f92;\n" -" ld.shared.f32 %f99, [%rd60+2560];\n" -" add.ftz.f32 %f93, %f99, %f93;\n" -" st.shared.f32 [%rd54+2560], %f93;\n" -"$Lt_1_29442:\n" -" shr.u32 %r65, %r65, 1;\n" -" mov.u32 %r67, 0;\n" -" setp.ne.u32 %p17, %r65, %r67;\n" -" @%p17 bra $Lt_1_29186;\n" -"$Lt_1_28674:\n" -" mov.f32 %f11, %f84;\n" -" mov.f32 %f13, %f85;\n" -" mov.f32 %f15, %f86;\n" -" mov.f32 %f17, %f87;\n" -" mov.f32 %f19, %f92;\n" -" mov.f32 %f21, %f93;\n" -"$Lt_1_28162:\n" -"$Lt_1_26114:\n" -" mov.u32 %r68, 0;\n" -" setp.ne.s32 %p18, %r17, %r68;\n" -" @%p18 bra $Lt_1_30210;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd62, %rd61, %rd20;\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p19, %r69, %r70;\n" -" @%p19 bra $Lt_1_30722;\n" -" st.global.f32 [%rd62+0], %f34;\n" -" cvt.s64.s32 %rd63, %r13;\n" -" mul.wide.s32 %rd64, %r13, 4;\n" -" add.u64 %rd62, %rd62, %rd64;\n" -"$Lt_1_30722:\n" -" ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r72, 0;\n" -" setp.le.s32 %p20, %r71, %r72;\n" -" @%p20 bra $Lt_1_31234;\n" -" mov.f32 %f100, %f11;\n" -" st.global.f32 [%rd62+0], %f100;\n" -" cvt.s64.s32 %rd65, %r13;\n" -" mul.wide.s32 %rd66, %r13, 4;\n" -" add.u64 %rd67, %rd66, %rd62;\n" -" mov.f32 %f101, %f13;\n" -" st.global.f32 [%rd67+0], %f101;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" mov.f32 %f102, %f15;\n" -" st.global.f32 [%rd68+0], %f102;\n" -" add.u64 %rd69, %rd66, %rd68;\n" -" mov.f32 %f103, %f17;\n" -" st.global.f32 [%rd69+0], %f103;\n" -" add.u64 %rd62, %rd66, %rd69;\n" -" mov.f32 %f104, %f19;\n" -" st.global.f32 [%rd62+0], %f104;\n" -" mov.f32 %f105, %f21;\n" -" add.u64 %rd70, %rd66, %rd62;\n" -" st.global.f32 [%rd70+0], %f105;\n" -"$Lt_1_31234:\n" -" ld.param.u64 %rd71, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd72, %rd19, 16;\n" -" add.u64 %rd73, %rd71, %rd72;\n" -" mov.f32 %f106, %f107;\n" -" st.global.v4.f32 [%rd73+0], {%f33,%f32,%f31,%f106};\n" -"$Lt_1_30210:\n" -"$Lt_1_22530:\n" -" .loc 16 187 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/morse.ptx b/lib/gpu/morse.ptx deleted file mode 100644 index 4075a7371d..0000000000 --- a/lib/gpu/morse.ptx +++ /dev/null @@ -1,921 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009e26_00000000-9_lal_morse.cpp3.i (/home/sjplimp/ccBI#.ffCTdB) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009e26_00000000-8_lal_morse.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_morse.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - - .entry kernel_pair ( - .param .u64 __cudaparm_kernel_pair_x_, - .param .u64 __cudaparm_kernel_pair_mor1, - .param .u64 __cudaparm_kernel_pair_mor2, - .param .s32 __cudaparm_kernel_pair_lj_types, - .param .u64 __cudaparm_kernel_pair_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_dev_nbor, - .param .u64 __cudaparm_kernel_pair_dev_packed, - .param .u64 __cudaparm_kernel_pair_ans, - .param .u64 __cudaparm_kernel_pair___val_paramengv, - .param .s32 __cudaparm_kernel_pair_eflag, - .param .s32 __cudaparm_kernel_pair_vflag, - .param .s32 __cudaparm_kernel_pair_inum, - .param .s32 __cudaparm_kernel_pair_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_t_per_atom) - { - .reg .u32 %r<72>; - .reg .u64 %rd<64>; - .reg .f32 %f<104>; - .reg .f64 %fd<10>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_32601_55_non_const_red_acc108[3072]; - // __cuda_local_var_32543_10_non_const_f = 48 - // __cuda_local_var_32545_9_non_const_virial = 16 - .loc 16 31 0 -$LDWbegin_kernel_pair: - .loc 16 36 0 - ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 16 37 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 16 38 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 16 39 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4}; - .loc 16 46 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_pair_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_26370; - .loc 16 51 0 - ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch]; - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - cvt.s64.s32 %rd4, %r8; - mul.wide.s32 %rd5, %r8, 4; - ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor]; - add.u64 %rd7, %rd5, %rd6; - add.u64 %rd8, %rd3, %rd7; - ld.global.s32 %r11, [%rd8+0]; - sub.s32 %r12, %r1, 1; - and.b32 %r13, %r12, %r2; - cvt.s64.s32 %rd9, %r13; - mul.wide.s32 %rd10, %r13, 4; - ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed]; - setp.ne.u64 %p2, %rd11, %rd6; - @%p2 bra $Lt_0_19458; - cvt.s32.s64 %r14, %rd2; - mul.lo.s32 %r15, %r14, %r1; - mov.s32 %r16, %r15; - mul.lo.s32 %r17, %r12, %r8; - add.s32 %r18, %r14, %r17; - cvt.s64.s32 %rd12, %r18; - mul.wide.s32 %rd13, %r18, 4; - add.u64 %rd14, %rd8, %rd13; - and.b32 %r19, %r12, %r11; - cvt.s64.s32 %rd15, %r19; - div.s32 %r20, %r11, %r1; - mul.lo.s32 %r21, %r15, %r20; - cvt.s64.s32 %rd16, %r21; - add.u64 %rd17, %rd15, %rd16; - mul.lo.u64 %rd18, %rd17, 4; - add.u64 %rd19, %rd14, %rd18; - add.u64 %rd20, %rd10, %rd14; - bra.uni $Lt_0_19202; -$Lt_0_19458: - add.u64 %rd21, %rd3, %rd8; - ld.global.s32 %r22, [%rd21+0]; - cvt.s64.s32 %rd22, %r22; - mul.wide.s32 %rd23, %r22, 4; - add.u64 %rd24, %rd11, %rd23; - cvt.s64.s32 %rd25, %r11; - mul.wide.s32 %rd26, %r11, 4; - add.u64 %rd19, %rd24, %rd26; - mov.s32 %r16, %r1; - add.u64 %rd20, %rd10, %rd24; -$Lt_0_19202: - .loc 16 54 0 - ld.global.s32 %r23, [%rd7+0]; - mov.u32 %r24, %r23; - mov.s32 %r25, 0; - mov.u32 %r26, %r25; - mov.s32 %r27, 0; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}]; - mov.f32 %f21, %f17; - mov.f32 %f22, %f18; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - setp.ge.u64 %p3, %rd20, %rd19; - @%p3 bra $Lt_0_27906; - cvt.rzi.ftz.s32.f32 %r31, %f24; - cvt.s64.s32 %rd27, %r16; - ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types]; - mul.lo.s32 %r33, %r32, %r31; - ld.param.u64 %rd28, [__cudaparm_kernel_pair_mor1]; - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92; -$Lt_0_20226: - // Loop body line 54, nesting depth: 1, estimated iterations: unknown - .loc 16 60 0 - ld.global.s32 %r34, [%rd20+0]; - .loc 16 61 0 - shr.s32 %r35, %r34, 30; - and.b32 %r36, %r35, 3; - cvt.s64.s32 %rd30, %r36; - mul.wide.s32 %rd31, %r36, 4; - add.u64 %rd32, %rd29, %rd31; - ld.shared.f32 %f29, [%rd32+0]; - .loc 16 64 0 - and.b32 %r37, %r34, 1073741823; - mov.u32 %r38, %r37; - mov.s32 %r39, 0; - mov.u32 %r40, %r39; - mov.s32 %r41, 0; - mov.u32 %r42, %r41; - mov.s32 %r43, 0; - mov.u32 %r44, %r43; - tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}]; - mov.f32 %f34, %f30; - mov.f32 %f35, %f31; - mov.f32 %f36, %f32; - mov.f32 %f37, %f33; - cvt.rzi.ftz.s32.f32 %r45, %f37; - sub.ftz.f32 %f38, %f22, %f35; - sub.ftz.f32 %f39, %f21, %f34; - sub.ftz.f32 %f40, %f23, %f36; - mul.ftz.f32 %f41, %f38, %f38; - fma.rn.ftz.f32 %f42, %f39, %f39, %f41; - add.s32 %r46, %r45, %r33; - cvt.s64.s32 %rd33, %r46; - fma.rn.ftz.f32 %f43, %f40, %f40, %f42; - mul.wide.s32 %rd34, %r46, 16; - add.u64 %rd35, %rd28, %rd34; - ld.global.f32 %f44, [%rd35+0]; - setp.gt.ftz.f32 %p4, %f44, %f43; - @!%p4 bra $Lt_0_21506; - .loc 16 77 0 - sqrt.approx.ftz.f32 %f45, %f43; - ld.global.v4.f32 {_,%f46,%f47,%f48}, [%rd35+0]; - sub.ftz.f32 %f49, %f45, %f47; - mul.ftz.f32 %f50, %f48, %f49; - neg.ftz.f32 %f51, %f50; - .loc 16 79 0 - mov.f32 %f52, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f53, %f51, %f52; - ex2.approx.ftz.f32 %f54, %f53; - mul.ftz.f32 %f55, %f54, %f54; - sub.ftz.f32 %f56, %f55, %f54; - mul.ftz.f32 %f57, %f46, %f56; - .loc 16 81 0 - div.approx.ftz.f32 %f58, %f57, %f45; - mul.ftz.f32 %f59, %f58, %f29; - fma.rn.ftz.f32 %f27, %f39, %f59, %f27; - .loc 16 82 0 - fma.rn.ftz.f32 %f26, %f38, %f59, %f26; - .loc 16 83 0 - fma.rn.ftz.f32 %f25, %f40, %f59, %f25; - ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r48, 0; - setp.le.s32 %p5, %r47, %r48; - @%p5 bra $Lt_0_20994; - .loc 16 87 0 - cvt.ftz.f64.f32 %fd1, %f54; - ld.param.u64 %rd36, [__cudaparm_kernel_pair_mor2]; - mul.lo.u64 %rd37, %rd33, 8; - add.u64 %rd38, %rd36, %rd37; - ld.global.v2.f32 {%f60,%f61}, [%rd38+0]; - cvt.ftz.f64.f32 %fd2, %f61; - cvt.ftz.f64.f32 %fd3, %f60; - mul.ftz.f32 %f62, %f54, %f54; - cvt.ftz.f64.f32 %fd4, %f62; - add.f64 %fd5, %fd1, %fd1; - sub.f64 %fd6, %fd4, %fd5; - mul.f64 %fd7, %fd3, %fd6; - sub.f64 %fd8, %fd7, %fd2; - cvt.rn.ftz.f32.f64 %f63, %fd8; - fma.rn.ftz.f32 %f28, %f29, %f63, %f28; -$Lt_0_20994: - ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r50, 0; - setp.le.s32 %p6, %r49, %r50; - @%p6 bra $Lt_0_21506; - .loc 16 90 0 - mov.f32 %f64, %f6; - mul.ftz.f32 %f65, %f39, %f39; - fma.rn.ftz.f32 %f66, %f59, %f65, %f64; - mov.f32 %f6, %f66; - .loc 16 91 0 - mov.f32 %f67, %f8; - fma.rn.ftz.f32 %f68, %f59, %f41, %f67; - mov.f32 %f8, %f68; - .loc 16 92 0 - mov.f32 %f69, %f10; - mul.ftz.f32 %f70, %f40, %f40; - fma.rn.ftz.f32 %f71, %f59, %f70, %f69; - mov.f32 %f10, %f71; - .loc 16 93 0 - mov.f32 %f72, %f12; - mul.ftz.f32 %f73, %f38, %f39; - fma.rn.ftz.f32 %f74, %f59, %f73, %f72; - mov.f32 %f12, %f74; - .loc 16 94 0 - mov.f32 %f75, %f14; - mul.ftz.f32 %f76, %f39, %f40; - fma.rn.ftz.f32 %f77, %f59, %f76, %f75; - mov.f32 %f14, %f77; - .loc 16 95 0 - mul.ftz.f32 %f78, %f38, %f40; - fma.rn.ftz.f32 %f15, %f59, %f78, %f15; - mov.f32 %f16, %f15; -$Lt_0_21506: -$Lt_0_20482: - .loc 16 58 0 - mul.lo.u64 %rd39, %rd27, 4; - add.u64 %rd20, %rd20, %rd39; - setp.lt.u64 %p7, %rd20, %rd19; - @%p7 bra $Lt_0_20226; - bra.uni $Lt_0_19714; -$Lt_0_27906: - mov.f32 %f25, 0f00000000; // 0 - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 -$Lt_0_19714: - mov.u32 %r51, 1; - setp.le.s32 %p8, %r1, %r51; - @%p8 bra $Lt_0_24322; - .loc 16 100 0 - mov.u64 %rd40, __cuda___cuda_local_var_32601_55_non_const_red_acc108; - cvt.s64.s32 %rd41, %r2; - mul.wide.s32 %rd42, %r2, 4; - add.u64 %rd43, %rd40, %rd42; - mov.f32 %f79, %f27; - st.shared.f32 [%rd43+0], %f79; - mov.f32 %f80, %f26; - st.shared.f32 [%rd43+512], %f80; - mov.f32 %f81, %f25; - st.shared.f32 [%rd43+1024], %f81; - mov.f32 %f82, %f28; - st.shared.f32 [%rd43+1536], %f82; - shr.s32 %r52, %r1, 31; - mov.s32 %r53, 1; - and.b32 %r54, %r52, %r53; - add.s32 %r55, %r54, %r1; - shr.s32 %r56, %r55, 1; - mov.s32 %r57, %r56; - mov.u32 %r58, 0; - setp.ne.u32 %p9, %r56, %r58; - @!%p9 bra $Lt_0_22786; -$Lt_0_23298: - setp.ge.u32 %p10, %r13, %r57; - @%p10 bra $Lt_0_23554; - add.u32 %r59, %r2, %r57; - cvt.u64.u32 %rd44, %r59; - mul.wide.u32 %rd45, %r59, 4; - add.u64 %rd46, %rd40, %rd45; - ld.shared.f32 %f83, [%rd46+0]; - add.ftz.f32 %f79, %f83, %f79; - st.shared.f32 [%rd43+0], %f79; - ld.shared.f32 %f84, [%rd46+512]; - add.ftz.f32 %f80, %f84, %f80; - st.shared.f32 [%rd43+512], %f80; - ld.shared.f32 %f85, [%rd46+1024]; - add.ftz.f32 %f81, %f85, %f81; - st.shared.f32 [%rd43+1024], %f81; - ld.shared.f32 %f86, [%rd46+1536]; - add.ftz.f32 %f82, %f86, %f82; - st.shared.f32 [%rd43+1536], %f82; -$Lt_0_23554: - shr.u32 %r57, %r57, 1; - mov.u32 %r60, 0; - setp.ne.u32 %p11, %r57, %r60; - @%p11 bra $Lt_0_23298; -$Lt_0_22786: - mov.f32 %f27, %f79; - mov.f32 %f26, %f80; - mov.f32 %f25, %f81; - mov.f32 %f28, %f82; - ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r62, 0; - setp.le.s32 %p12, %r61, %r62; - @%p12 bra $Lt_0_24322; - mov.f32 %f79, %f6; - st.shared.f32 [%rd43+0], %f79; - mov.f32 %f80, %f8; - st.shared.f32 [%rd43+512], %f80; - mov.f32 %f81, %f10; - st.shared.f32 [%rd43+1024], %f81; - mov.f32 %f82, %f12; - st.shared.f32 [%rd43+1536], %f82; - mov.f32 %f87, %f14; - st.shared.f32 [%rd43+2048], %f87; - mov.f32 %f88, %f15; - st.shared.f32 [%rd43+2560], %f88; - mov.s32 %r63, %r56; - @!%p9 bra $Lt_0_24834; -$Lt_0_25346: - setp.ge.u32 %p13, %r13, %r63; - @%p13 bra $Lt_0_25602; - add.u32 %r64, %r2, %r63; - cvt.u64.u32 %rd47, %r64; - mul.wide.u32 %rd48, %r64, 4; - add.u64 %rd49, %rd40, %rd48; - ld.shared.f32 %f89, [%rd49+0]; - add.ftz.f32 %f79, %f89, %f79; - st.shared.f32 [%rd43+0], %f79; - ld.shared.f32 %f90, [%rd49+512]; - add.ftz.f32 %f80, %f90, %f80; - st.shared.f32 [%rd43+512], %f80; - ld.shared.f32 %f91, [%rd49+1024]; - add.ftz.f32 %f81, %f91, %f81; - st.shared.f32 [%rd43+1024], %f81; - ld.shared.f32 %f92, [%rd49+1536]; - add.ftz.f32 %f82, %f92, %f82; - st.shared.f32 [%rd43+1536], %f82; - ld.shared.f32 %f93, [%rd49+2048]; - add.ftz.f32 %f87, %f93, %f87; - st.shared.f32 [%rd43+2048], %f87; - ld.shared.f32 %f94, [%rd49+2560]; - add.ftz.f32 %f88, %f94, %f88; - st.shared.f32 [%rd43+2560], %f88; -$Lt_0_25602: - shr.u32 %r63, %r63, 1; - mov.u32 %r65, 0; - setp.ne.u32 %p14, %r63, %r65; - @%p14 bra $Lt_0_25346; -$Lt_0_24834: - mov.f32 %f6, %f79; - mov.f32 %f8, %f80; - mov.f32 %f10, %f81; - mov.f32 %f12, %f82; - mov.f32 %f14, %f87; - mov.f32 %f16, %f88; -$Lt_0_24322: -$Lt_0_22274: - mov.u32 %r66, 0; - setp.ne.s32 %p15, %r13, %r66; - @%p15 bra $Lt_0_26370; - ld.param.u64 %rd50, [__cudaparm_kernel_pair___val_paramengv]; - add.u64 %rd51, %rd50, %rd5; - ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag]; - mov.u32 %r68, 0; - setp.le.s32 %p16, %r67, %r68; - @%p16 bra $Lt_0_26882; - st.global.f32 [%rd51+0], %f28; - cvt.s64.s32 %rd52, %r9; - mul.wide.s32 %rd53, %r9, 4; - add.u64 %rd51, %rd51, %rd53; -$Lt_0_26882: - ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag]; - mov.u32 %r70, 0; - setp.le.s32 %p17, %r69, %r70; - @%p17 bra $Lt_0_27394; - mov.f32 %f95, %f6; - st.global.f32 [%rd51+0], %f95; - cvt.s64.s32 %rd54, %r9; - mul.wide.s32 %rd55, %r9, 4; - add.u64 %rd56, %rd55, %rd51; - mov.f32 %f96, %f8; - st.global.f32 [%rd56+0], %f96; - add.u64 %rd57, %rd55, %rd56; - mov.f32 %f97, %f10; - st.global.f32 [%rd57+0], %f97; - add.u64 %rd58, %rd55, %rd57; - mov.f32 %f98, %f12; - st.global.f32 [%rd58+0], %f98; - add.u64 %rd51, %rd55, %rd58; - mov.f32 %f99, %f14; - st.global.f32 [%rd51+0], %f99; - mov.f32 %f100, %f16; - add.u64 %rd59, %rd55, %rd51; - st.global.f32 [%rd59+0], %f100; -$Lt_0_27394: - ld.param.u64 %rd60, [__cudaparm_kernel_pair_ans]; - mul.lo.u64 %rd61, %rd4, 16; - add.u64 %rd62, %rd60, %rd61; - mov.f32 %f101, %f102; - st.global.v4.f32 [%rd62+0], {%f27,%f26,%f25,%f101}; -$Lt_0_26370: -$Lt_0_18690: - .loc 16 103 0 - exit; -$LDWend_kernel_pair: - } // kernel_pair - - .entry kernel_pair_fast ( - .param .u64 __cudaparm_kernel_pair_fast_x_, - .param .u64 __cudaparm_kernel_pair_fast_mor1_in, - .param .u64 __cudaparm_kernel_pair_fast_mor2_in, - .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in, - .param .u64 __cudaparm_kernel_pair_fast_dev_nbor, - .param .u64 __cudaparm_kernel_pair_fast_dev_packed, - .param .u64 __cudaparm_kernel_pair_fast_ans, - .param .u64 __cudaparm_kernel_pair_fast___val_paramengv, - .param .s32 __cudaparm_kernel_pair_fast_eflag, - .param .s32 __cudaparm_kernel_pair_fast_vflag, - .param .s32 __cudaparm_kernel_pair_fast_inum, - .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch, - .param .s32 __cudaparm_kernel_pair_fast_t_per_atom) - { - .reg .u32 %r<74>; - .reg .u64 %rd<77>; - .reg .f32 %f<110>; - .reg .pred %p<22>; - .shared .align 4 .b8 __cuda___cuda_local_var_32618_33_non_const_sp_lj3268[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_32616_34_non_const_mor13296[1936]; - .shared .align 8 .b8 __cuda___cuda_local_var_32617_34_non_const_mor25232[968]; - .shared .align 4 .b8 __cuda___cuda_local_var_32688_55_non_const_red_acc6200[3072]; - // __cuda_local_var_32628_10_non_const_f = 48 - // __cuda_local_var_32630_9_non_const_virial = 16 - .loc 16 111 0 -$LDWbegin_kernel_pair_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_1_20994; - .loc 16 119 0 - mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_20994: - mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_1_21506; - .loc 16 121 0 - mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_mor13296; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_mor1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_1_22018; - .loc 16 123 0 - mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_mor25232; - mul.lo.u64 %rd14, %rd8, 8; - ld.param.u64 %rd15, [__cudaparm_kernel_pair_fast_mor2_in]; - add.u64 %rd16, %rd15, %rd14; - add.u64 %rd17, %rd14, %rd13; - ld.global.v2.f32 {%f6,%f7}, [%rd16+0]; - st.shared.v2.f32 [%rd17+0], {%f6,%f7}; -$Lt_1_22018: - mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_mor25232; -$Lt_1_21506: - mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_mor25232; - mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_mor13296; - .loc 16 131 0 - mov.f32 %f8, 0f00000000; // 0 - mov.f32 %f9, %f8; - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - .loc 16 133 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum]; - setp.ge.s32 %p4, %r12, %r13; - @%p4 bra $Lt_1_30210; - .loc 16 138 0 - ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch]; - cvt.s64.s32 %rd18, %r14; - mul.wide.s32 %rd19, %r14, 4; - cvt.s64.s32 %rd20, %r12; - mul.wide.s32 %rd21, %r12, 4; - ld.param.u64 %rd22, [__cudaparm_kernel_pair_fast_dev_nbor]; - add.u64 %rd23, %rd21, %rd22; - add.u64 %rd24, %rd19, %rd23; - ld.global.s32 %r15, [%rd24+0]; - sub.s32 %r16, %r6, 1; - and.b32 %r17, %r16, %r1; - cvt.s64.s32 %rd25, %r17; - mul.wide.s32 %rd26, %r17, 4; - ld.param.u64 %rd27, [__cudaparm_kernel_pair_fast_dev_packed]; - setp.ne.u64 %p5, %rd27, %rd22; - @%p5 bra $Lt_1_23298; - cvt.s32.s64 %r18, %rd18; - mul.lo.s32 %r19, %r18, %r6; - mov.s32 %r20, %r19; - mul.lo.s32 %r21, %r16, %r12; - add.s32 %r22, %r18, %r21; - cvt.s64.s32 %rd28, %r22; - mul.wide.s32 %rd29, %r22, 4; - add.u64 %rd30, %rd24, %rd29; - and.b32 %r23, %r16, %r15; - cvt.s64.s32 %rd31, %r23; - div.s32 %r24, %r15, %r6; - mul.lo.s32 %r25, %r19, %r24; - cvt.s64.s32 %rd32, %r25; - add.u64 %rd33, %rd31, %rd32; - mul.lo.u64 %rd34, %rd33, 4; - add.u64 %rd35, %rd30, %rd34; - add.u64 %rd36, %rd26, %rd30; - bra.uni $Lt_1_23042; -$Lt_1_23298: - add.u64 %rd37, %rd19, %rd24; - ld.global.s32 %r26, [%rd37+0]; - cvt.s64.s32 %rd38, %r26; - mul.wide.s32 %rd39, %r26, 4; - add.u64 %rd40, %rd27, %rd39; - cvt.s64.s32 %rd41, %r15; - mul.wide.s32 %rd42, %r15, 4; - add.u64 %rd35, %rd40, %rd42; - mov.s32 %r20, %r6; - add.u64 %rd36, %rd26, %rd40; -$Lt_1_23042: - .loc 16 141 0 - ld.global.s32 %r27, [%rd23+0]; - mov.u32 %r28, %r27; - mov.s32 %r29, 0; - mov.u32 %r30, %r29; - mov.s32 %r31, 0; - mov.u32 %r32, %r31; - mov.s32 %r33, 0; - mov.u32 %r34, %r33; - tex.1d.v4.f32.s32 {%f20,%f21,%f22,%f23},[pos_tex,{%r28,%r30,%r32,%r34}]; - mov.f32 %f24, %f20; - mov.f32 %f25, %f21; - mov.f32 %f26, %f22; - mov.f32 %f27, %f23; - setp.ge.u64 %p6, %rd36, %rd35; - @%p6 bra $Lt_1_31746; - cvt.rzi.ftz.s32.f32 %r35, %f27; - cvt.s64.s32 %rd43, %r20; - mul.lo.s32 %r36, %r35, 11; - cvt.rn.f32.s32 %f28, %r36; - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 -$Lt_1_24066: - // Loop body line 141, nesting depth: 1, estimated iterations: unknown - .loc 16 148 0 - ld.global.s32 %r37, [%rd36+0]; - .loc 16 149 0 - shr.s32 %r38, %r37, 30; - and.b32 %r39, %r38, 3; - cvt.s64.s32 %rd44, %r39; - mul.wide.s32 %rd45, %r39, 4; - add.u64 %rd46, %rd1, %rd45; - ld.shared.f32 %f33, [%rd46+0]; - .loc 16 152 0 - and.b32 %r40, %r37, 1073741823; - mov.u32 %r41, %r40; - mov.s32 %r42, 0; - mov.u32 %r43, %r42; - mov.s32 %r44, 0; - mov.u32 %r45, %r44; - mov.s32 %r46, 0; - mov.u32 %r47, %r46; - tex.1d.v4.f32.s32 {%f34,%f35,%f36,%f37},[pos_tex,{%r41,%r43,%r45,%r47}]; - mov.f32 %f38, %f34; - mov.f32 %f39, %f35; - mov.f32 %f40, %f36; - mov.f32 %f41, %f37; - sub.ftz.f32 %f42, %f25, %f39; - sub.ftz.f32 %f43, %f24, %f38; - sub.ftz.f32 %f44, %f26, %f40; - mul.ftz.f32 %f45, %f42, %f42; - fma.rn.ftz.f32 %f46, %f43, %f43, %f45; - fma.rn.ftz.f32 %f47, %f44, %f44, %f46; - add.ftz.f32 %f48, %f28, %f41; - cvt.rzi.ftz.s32.f32 %r48, %f48; - cvt.s64.s32 %rd47, %r48; - mul.wide.s32 %rd48, %r48, 16; - add.u64 %rd49, %rd7, %rd48; - ld.shared.f32 %f49, [%rd49+0]; - setp.gt.ftz.f32 %p7, %f49, %f47; - @!%p7 bra $Lt_1_25346; - .loc 16 163 0 - sqrt.approx.ftz.f32 %f50, %f47; - ld.shared.v4.f32 {_,%f51,%f52,%f53}, [%rd49+0]; - sub.ftz.f32 %f54, %f50, %f52; - .loc 16 164 0 - mul.ftz.f32 %f55, %f53, %f54; - neg.ftz.f32 %f56, %f55; - .loc 16 166 0 - mov.f32 %f57, 0f3fb8aa3b; // 1.4427 - mul.ftz.f32 %f58, %f56, %f57; - ex2.approx.ftz.f32 %f59, %f58; - mul.ftz.f32 %f60, %f59, %f59; - sub.ftz.f32 %f61, %f60, %f59; - mul.ftz.f32 %f62, %f51, %f61; - .loc 16 168 0 - div.approx.ftz.f32 %f63, %f62, %f50; - mul.ftz.f32 %f64, %f63, %f33; - fma.rn.ftz.f32 %f31, %f43, %f64, %f31; - .loc 16 169 0 - fma.rn.ftz.f32 %f30, %f42, %f64, %f30; - .loc 16 170 0 - fma.rn.ftz.f32 %f29, %f44, %f64, %f29; - ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r50, 0; - setp.le.s32 %p8, %r49, %r50; - @%p8 bra $Lt_1_24834; - .loc 16 173 0 - mul.lo.u64 %rd50, %rd47, 8; - add.u64 %rd51, %rd13, %rd50; - ld.shared.v2.f32 {%f65,%f66}, [%rd51+0]; - sub.ftz.f32 %f67, %f61, %f59; - mul.ftz.f32 %f68, %f65, %f67; - sub.ftz.f32 %f69, %f68, %f66; - .loc 16 174 0 - fma.rn.ftz.f32 %f32, %f33, %f69, %f32; -$Lt_1_24834: - ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r52, 0; - setp.le.s32 %p9, %r51, %r52; - @%p9 bra $Lt_1_25346; - .loc 16 177 0 - mov.f32 %f70, %f9; - mul.ftz.f32 %f71, %f43, %f43; - fma.rn.ftz.f32 %f72, %f64, %f71, %f70; - mov.f32 %f9, %f72; - .loc 16 178 0 - mov.f32 %f73, %f11; - fma.rn.ftz.f32 %f74, %f64, %f45, %f73; - mov.f32 %f11, %f74; - .loc 16 179 0 - mov.f32 %f75, %f13; - mul.ftz.f32 %f76, %f44, %f44; - fma.rn.ftz.f32 %f77, %f64, %f76, %f75; - mov.f32 %f13, %f77; - .loc 16 180 0 - mov.f32 %f78, %f15; - mul.ftz.f32 %f79, %f42, %f43; - fma.rn.ftz.f32 %f80, %f64, %f79, %f78; - mov.f32 %f15, %f80; - .loc 16 181 0 - mov.f32 %f81, %f17; - mul.ftz.f32 %f82, %f43, %f44; - fma.rn.ftz.f32 %f83, %f64, %f82, %f81; - mov.f32 %f17, %f83; - .loc 16 182 0 - mul.ftz.f32 %f84, %f42, %f44; - fma.rn.ftz.f32 %f18, %f64, %f84, %f18; - mov.f32 %f19, %f18; -$Lt_1_25346: -$Lt_1_24322: - .loc 16 146 0 - mul.lo.u64 %rd52, %rd43, 4; - add.u64 %rd36, %rd36, %rd52; - setp.lt.u64 %p10, %rd36, %rd35; - @%p10 bra $Lt_1_24066; - bra.uni $Lt_1_23554; -$Lt_1_31746: - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 - mov.f32 %f31, 0f00000000; // 0 - mov.f32 %f32, 0f00000000; // 0 -$Lt_1_23554: - mov.u32 %r53, 1; - setp.le.s32 %p11, %r6, %r53; - @%p11 bra $Lt_1_28162; - .loc 16 187 0 - mov.u64 %rd53, __cuda___cuda_local_var_32688_55_non_const_red_acc6200; - cvt.s64.s32 %rd54, %r1; - mul.wide.s32 %rd55, %r1, 4; - add.u64 %rd56, %rd53, %rd55; - mov.f32 %f85, %f31; - st.shared.f32 [%rd56+0], %f85; - mov.f32 %f86, %f30; - st.shared.f32 [%rd56+512], %f86; - mov.f32 %f87, %f29; - st.shared.f32 [%rd56+1024], %f87; - mov.f32 %f88, %f32; - st.shared.f32 [%rd56+1536], %f88; - shr.s32 %r54, %r6, 31; - mov.s32 %r55, 1; - and.b32 %r56, %r54, %r55; - add.s32 %r57, %r56, %r6; - shr.s32 %r58, %r57, 1; - mov.s32 %r59, %r58; - mov.u32 %r60, 0; - setp.ne.u32 %p12, %r58, %r60; - @!%p12 bra $Lt_1_26626; -$Lt_1_27138: - setp.ge.u32 %p13, %r17, %r59; - @%p13 bra $Lt_1_27394; - add.u32 %r61, %r1, %r59; - cvt.u64.u32 %rd57, %r61; - mul.wide.u32 %rd58, %r61, 4; - add.u64 %rd59, %rd53, %rd58; - ld.shared.f32 %f89, [%rd59+0]; - add.ftz.f32 %f85, %f89, %f85; - st.shared.f32 [%rd56+0], %f85; - ld.shared.f32 %f90, [%rd59+512]; - add.ftz.f32 %f86, %f90, %f86; - st.shared.f32 [%rd56+512], %f86; - ld.shared.f32 %f91, [%rd59+1024]; - add.ftz.f32 %f87, %f91, %f87; - st.shared.f32 [%rd56+1024], %f87; - ld.shared.f32 %f92, [%rd59+1536]; - add.ftz.f32 %f88, %f92, %f88; - st.shared.f32 [%rd56+1536], %f88; -$Lt_1_27394: - shr.u32 %r59, %r59, 1; - mov.u32 %r62, 0; - setp.ne.u32 %p14, %r59, %r62; - @%p14 bra $Lt_1_27138; -$Lt_1_26626: - mov.f32 %f31, %f85; - mov.f32 %f30, %f86; - mov.f32 %f29, %f87; - mov.f32 %f32, %f88; - ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r64, 0; - setp.le.s32 %p15, %r63, %r64; - @%p15 bra $Lt_1_28162; - mov.f32 %f85, %f9; - st.shared.f32 [%rd56+0], %f85; - mov.f32 %f86, %f11; - st.shared.f32 [%rd56+512], %f86; - mov.f32 %f87, %f13; - st.shared.f32 [%rd56+1024], %f87; - mov.f32 %f88, %f15; - st.shared.f32 [%rd56+1536], %f88; - mov.f32 %f93, %f17; - st.shared.f32 [%rd56+2048], %f93; - mov.f32 %f94, %f18; - st.shared.f32 [%rd56+2560], %f94; - mov.s32 %r65, %r58; - @!%p12 bra $Lt_1_28674; -$Lt_1_29186: - setp.ge.u32 %p16, %r17, %r65; - @%p16 bra $Lt_1_29442; - add.u32 %r66, %r1, %r65; - cvt.u64.u32 %rd60, %r66; - mul.wide.u32 %rd61, %r66, 4; - add.u64 %rd62, %rd53, %rd61; - ld.shared.f32 %f95, [%rd62+0]; - add.ftz.f32 %f85, %f95, %f85; - st.shared.f32 [%rd56+0], %f85; - ld.shared.f32 %f96, [%rd62+512]; - add.ftz.f32 %f86, %f96, %f86; - st.shared.f32 [%rd56+512], %f86; - ld.shared.f32 %f97, [%rd62+1024]; - add.ftz.f32 %f87, %f97, %f87; - st.shared.f32 [%rd56+1024], %f87; - ld.shared.f32 %f98, [%rd62+1536]; - add.ftz.f32 %f88, %f98, %f88; - st.shared.f32 [%rd56+1536], %f88; - ld.shared.f32 %f99, [%rd62+2048]; - add.ftz.f32 %f93, %f99, %f93; - st.shared.f32 [%rd56+2048], %f93; - ld.shared.f32 %f100, [%rd62+2560]; - add.ftz.f32 %f94, %f100, %f94; - st.shared.f32 [%rd56+2560], %f94; -$Lt_1_29442: - shr.u32 %r65, %r65, 1; - mov.u32 %r67, 0; - setp.ne.u32 %p17, %r65, %r67; - @%p17 bra $Lt_1_29186; -$Lt_1_28674: - mov.f32 %f9, %f85; - mov.f32 %f11, %f86; - mov.f32 %f13, %f87; - mov.f32 %f15, %f88; - mov.f32 %f17, %f93; - mov.f32 %f19, %f94; -$Lt_1_28162: -$Lt_1_26114: - mov.u32 %r68, 0; - setp.ne.s32 %p18, %r17, %r68; - @%p18 bra $Lt_1_30210; - ld.param.u64 %rd63, [__cudaparm_kernel_pair_fast___val_paramengv]; - add.u64 %rd64, %rd63, %rd21; - ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag]; - mov.u32 %r70, 0; - setp.le.s32 %p19, %r69, %r70; - @%p19 bra $Lt_1_30722; - st.global.f32 [%rd64+0], %f32; - cvt.s64.s32 %rd65, %r13; - mul.wide.s32 %rd66, %r13, 4; - add.u64 %rd64, %rd64, %rd66; -$Lt_1_30722: - ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag]; - mov.u32 %r72, 0; - setp.le.s32 %p20, %r71, %r72; - @%p20 bra $Lt_1_31234; - mov.f32 %f101, %f9; - st.global.f32 [%rd64+0], %f101; - cvt.s64.s32 %rd67, %r13; - mul.wide.s32 %rd68, %r13, 4; - add.u64 %rd69, %rd68, %rd64; - mov.f32 %f102, %f11; - st.global.f32 [%rd69+0], %f102; - add.u64 %rd70, %rd68, %rd69; - mov.f32 %f103, %f13; - st.global.f32 [%rd70+0], %f103; - add.u64 %rd71, %rd68, %rd70; - mov.f32 %f104, %f15; - st.global.f32 [%rd71+0], %f104; - add.u64 %rd64, %rd68, %rd71; - mov.f32 %f105, %f17; - st.global.f32 [%rd64+0], %f105; - mov.f32 %f106, %f19; - add.u64 %rd72, %rd68, %rd64; - st.global.f32 [%rd72+0], %f106; -$Lt_1_31234: - ld.param.u64 %rd73, [__cudaparm_kernel_pair_fast_ans]; - mul.lo.u64 %rd74, %rd20, 16; - add.u64 %rd75, %rd73, %rd74; - mov.f32 %f107, %f108; - st.global.v4.f32 [%rd75+0], {%f31,%f30,%f29,%f107}; -$Lt_1_30210: -$Lt_1_22530: - .loc 16 190 0 - exit; -$LDWend_kernel_pair_fast: - } // kernel_pair_fast - diff --git a/lib/gpu/morse_ptx.h b/lib/gpu/morse_ptx.h deleted file mode 100644 index d860de3076..0000000000 --- a/lib/gpu/morse_ptx.h +++ /dev/null @@ -1,869 +0,0 @@ -const char * morse = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref pos_tex;\n" -" .entry kernel_pair (\n" -" .param .u64 __cudaparm_kernel_pair_x_,\n" -" .param .u64 __cudaparm_kernel_pair_mor1,\n" -" .param .u64 __cudaparm_kernel_pair_mor2,\n" -" .param .s32 __cudaparm_kernel_pair_lj_types,\n" -" .param .u64 __cudaparm_kernel_pair_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_ans,\n" -" .param .u64 __cudaparm_kernel_pair___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_inum,\n" -" .param .s32 __cudaparm_kernel_pair_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_t_per_atom)\n" -" {\n" -" .reg .u32 %r<72>;\n" -" .reg .u64 %rd<64>;\n" -" .reg .f32 %f<104>;\n" -" .reg .f64 %fd<10>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32536_33_non_const_sp_lj92[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32601_55_non_const_red_acc108[3072];\n" -" .loc 16 31 0\n" -"$LDWbegin_kernel_pair:\n" -" .loc 16 36 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_pair_sp_lj_in];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 16 37 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 16 38 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 16 39 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32536_33_non_const_sp_lj92+0], {%f1,%f2,%f3,%f4};\n" -" .loc 16 46 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" -" ld.param.s32 %r1, [__cudaparm_kernel_pair_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_pair_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_26370;\n" -" .loc 16 51 0\n" -" ld.param.s32 %r10, [__cudaparm_kernel_pair_nbor_pitch];\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" cvt.s64.s32 %rd4, %r8;\n" -" mul.wide.s32 %rd5, %r8, 4;\n" -" ld.param.u64 %rd6, [__cudaparm_kernel_pair_dev_nbor];\n" -" add.u64 %rd7, %rd5, %rd6;\n" -" add.u64 %rd8, %rd3, %rd7;\n" -" ld.global.s32 %r11, [%rd8+0];\n" -" sub.s32 %r12, %r1, 1;\n" -" and.b32 %r13, %r12, %r2;\n" -" cvt.s64.s32 %rd9, %r13;\n" -" mul.wide.s32 %rd10, %r13, 4;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_pair_dev_packed];\n" -" setp.ne.u64 %p2, %rd11, %rd6;\n" -" @%p2 bra $Lt_0_19458;\n" -" cvt.s32.s64 %r14, %rd2;\n" -" mul.lo.s32 %r15, %r14, %r1;\n" -" mov.s32 %r16, %r15;\n" -" mul.lo.s32 %r17, %r12, %r8;\n" -" add.s32 %r18, %r14, %r17;\n" -" cvt.s64.s32 %rd12, %r18;\n" -" mul.wide.s32 %rd13, %r18, 4;\n" -" add.u64 %rd14, %rd8, %rd13;\n" -" and.b32 %r19, %r12, %r11;\n" -" cvt.s64.s32 %rd15, %r19;\n" -" div.s32 %r20, %r11, %r1;\n" -" mul.lo.s32 %r21, %r15, %r20;\n" -" cvt.s64.s32 %rd16, %r21;\n" -" add.u64 %rd17, %rd15, %rd16;\n" -" mul.lo.u64 %rd18, %rd17, 4;\n" -" add.u64 %rd19, %rd14, %rd18;\n" -" add.u64 %rd20, %rd10, %rd14;\n" -" bra.uni $Lt_0_19202;\n" -"$Lt_0_19458:\n" -" add.u64 %rd21, %rd3, %rd8;\n" -" ld.global.s32 %r22, [%rd21+0];\n" -" cvt.s64.s32 %rd22, %r22;\n" -" mul.wide.s32 %rd23, %r22, 4;\n" -" add.u64 %rd24, %rd11, %rd23;\n" -" cvt.s64.s32 %rd25, %r11;\n" -" mul.wide.s32 %rd26, %r11, 4;\n" -" add.u64 %rd19, %rd24, %rd26;\n" -" mov.s32 %r16, %r1;\n" -" add.u64 %rd20, %rd10, %rd24;\n" -"$Lt_0_19202:\n" -" .loc 16 54 0\n" -" ld.global.s32 %r23, [%rd7+0];\n" -" mov.u32 %r24, %r23;\n" -" mov.s32 %r25, 0;\n" -" mov.u32 %r26, %r25;\n" -" mov.s32 %r27, 0;\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" tex.1d.v4.f32.s32 {%f17,%f18,%f19,%f20},[pos_tex,{%r24,%r26,%r28,%r30}];\n" -" mov.f32 %f21, %f17;\n" -" mov.f32 %f22, %f18;\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" setp.ge.u64 %p3, %rd20, %rd19;\n" -" @%p3 bra $Lt_0_27906;\n" -" cvt.rzi.ftz.s32.f32 %r31, %f24;\n" -" cvt.s64.s32 %rd27, %r16;\n" -" ld.param.s32 %r32, [__cudaparm_kernel_pair_lj_types];\n" -" mul.lo.s32 %r33, %r32, %r31;\n" -" ld.param.u64 %rd28, [__cudaparm_kernel_pair_mor1];\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.u64 %rd29, __cuda___cuda_local_var_32536_33_non_const_sp_lj92;\n" -"$Lt_0_20226:\n" -" .loc 16 60 0\n" -" ld.global.s32 %r34, [%rd20+0];\n" -" .loc 16 61 0\n" -" shr.s32 %r35, %r34, 30;\n" -" and.b32 %r36, %r35, 3;\n" -" cvt.s64.s32 %rd30, %r36;\n" -" mul.wide.s32 %rd31, %r36, 4;\n" -" add.u64 %rd32, %rd29, %rd31;\n" -" ld.shared.f32 %f29, [%rd32+0];\n" -" .loc 16 64 0\n" -" and.b32 %r37, %r34, 1073741823;\n" -" mov.u32 %r38, %r37;\n" -" mov.s32 %r39, 0;\n" -" mov.u32 %r40, %r39;\n" -" mov.s32 %r41, 0;\n" -" mov.u32 %r42, %r41;\n" -" mov.s32 %r43, 0;\n" -" mov.u32 %r44, %r43;\n" -" tex.1d.v4.f32.s32 {%f30,%f31,%f32,%f33},[pos_tex,{%r38,%r40,%r42,%r44}];\n" -" mov.f32 %f34, %f30;\n" -" mov.f32 %f35, %f31;\n" -" mov.f32 %f36, %f32;\n" -" mov.f32 %f37, %f33;\n" -" cvt.rzi.ftz.s32.f32 %r45, %f37;\n" -" sub.ftz.f32 %f38, %f22, %f35;\n" -" sub.ftz.f32 %f39, %f21, %f34;\n" -" sub.ftz.f32 %f40, %f23, %f36;\n" -" mul.ftz.f32 %f41, %f38, %f38;\n" -" fma.rn.ftz.f32 %f42, %f39, %f39, %f41;\n" -" add.s32 %r46, %r45, %r33;\n" -" cvt.s64.s32 %rd33, %r46;\n" -" fma.rn.ftz.f32 %f43, %f40, %f40, %f42;\n" -" mul.wide.s32 %rd34, %r46, 16;\n" -" add.u64 %rd35, %rd28, %rd34;\n" -" ld.global.f32 %f44, [%rd35+0];\n" -" setp.gt.ftz.f32 %p4, %f44, %f43;\n" -" @!%p4 bra $Lt_0_21506;\n" -" .loc 16 77 0\n" -" sqrt.approx.ftz.f32 %f45, %f43;\n" -" ld.global.v4.f32 {_,%f46,%f47,%f48}, [%rd35+0];\n" -" sub.ftz.f32 %f49, %f45, %f47;\n" -" mul.ftz.f32 %f50, %f48, %f49;\n" -" neg.ftz.f32 %f51, %f50;\n" -" .loc 16 79 0\n" -" mov.f32 %f52, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f53, %f51, %f52;\n" -" ex2.approx.ftz.f32 %f54, %f53;\n" -" mul.ftz.f32 %f55, %f54, %f54;\n" -" sub.ftz.f32 %f56, %f55, %f54;\n" -" mul.ftz.f32 %f57, %f46, %f56;\n" -" .loc 16 81 0\n" -" div.approx.ftz.f32 %f58, %f57, %f45;\n" -" mul.ftz.f32 %f59, %f58, %f29;\n" -" fma.rn.ftz.f32 %f27, %f39, %f59, %f27;\n" -" .loc 16 82 0\n" -" fma.rn.ftz.f32 %f26, %f38, %f59, %f26;\n" -" .loc 16 83 0\n" -" fma.rn.ftz.f32 %f25, %f40, %f59, %f25;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p5, %r47, %r48;\n" -" @%p5 bra $Lt_0_20994;\n" -" .loc 16 87 0\n" -" cvt.ftz.f64.f32 %fd1, %f54;\n" -" ld.param.u64 %rd36, [__cudaparm_kernel_pair_mor2];\n" -" mul.lo.u64 %rd37, %rd33, 8;\n" -" add.u64 %rd38, %rd36, %rd37;\n" -" ld.global.v2.f32 {%f60,%f61}, [%rd38+0];\n" -" cvt.ftz.f64.f32 %fd2, %f61;\n" -" cvt.ftz.f64.f32 %fd3, %f60;\n" -" mul.ftz.f32 %f62, %f54, %f54;\n" -" cvt.ftz.f64.f32 %fd4, %f62;\n" -" add.f64 %fd5, %fd1, %fd1;\n" -" sub.f64 %fd6, %fd4, %fd5;\n" -" mul.f64 %fd7, %fd3, %fd6;\n" -" sub.f64 %fd8, %fd7, %fd2;\n" -" cvt.rn.ftz.f32.f64 %f63, %fd8;\n" -" fma.rn.ftz.f32 %f28, %f29, %f63, %f28;\n" -"$Lt_0_20994:\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p6, %r49, %r50;\n" -" @%p6 bra $Lt_0_21506;\n" -" .loc 16 90 0\n" -" mov.f32 %f64, %f6;\n" -" mul.ftz.f32 %f65, %f39, %f39;\n" -" fma.rn.ftz.f32 %f66, %f59, %f65, %f64;\n" -" mov.f32 %f6, %f66;\n" -" .loc 16 91 0\n" -" mov.f32 %f67, %f8;\n" -" fma.rn.ftz.f32 %f68, %f59, %f41, %f67;\n" -" mov.f32 %f8, %f68;\n" -" .loc 16 92 0\n" -" mov.f32 %f69, %f10;\n" -" mul.ftz.f32 %f70, %f40, %f40;\n" -" fma.rn.ftz.f32 %f71, %f59, %f70, %f69;\n" -" mov.f32 %f10, %f71;\n" -" .loc 16 93 0\n" -" mov.f32 %f72, %f12;\n" -" mul.ftz.f32 %f73, %f38, %f39;\n" -" fma.rn.ftz.f32 %f74, %f59, %f73, %f72;\n" -" mov.f32 %f12, %f74;\n" -" .loc 16 94 0\n" -" mov.f32 %f75, %f14;\n" -" mul.ftz.f32 %f76, %f39, %f40;\n" -" fma.rn.ftz.f32 %f77, %f59, %f76, %f75;\n" -" mov.f32 %f14, %f77;\n" -" .loc 16 95 0\n" -" mul.ftz.f32 %f78, %f38, %f40;\n" -" fma.rn.ftz.f32 %f15, %f59, %f78, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_0_21506:\n" -"$Lt_0_20482:\n" -" .loc 16 58 0\n" -" mul.lo.u64 %rd39, %rd27, 4;\n" -" add.u64 %rd20, %rd20, %rd39;\n" -" setp.lt.u64 %p7, %rd20, %rd19;\n" -" @%p7 bra $Lt_0_20226;\n" -" bra.uni $Lt_0_19714;\n" -"$Lt_0_27906:\n" -" mov.f32 %f25, 0f00000000; \n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -"$Lt_0_19714:\n" -" mov.u32 %r51, 1;\n" -" setp.le.s32 %p8, %r1, %r51;\n" -" @%p8 bra $Lt_0_24322;\n" -" .loc 16 100 0\n" -" mov.u64 %rd40, __cuda___cuda_local_var_32601_55_non_const_red_acc108;\n" -" cvt.s64.s32 %rd41, %r2;\n" -" mul.wide.s32 %rd42, %r2, 4;\n" -" add.u64 %rd43, %rd40, %rd42;\n" -" mov.f32 %f79, %f27;\n" -" st.shared.f32 [%rd43+0], %f79;\n" -" mov.f32 %f80, %f26;\n" -" st.shared.f32 [%rd43+512], %f80;\n" -" mov.f32 %f81, %f25;\n" -" st.shared.f32 [%rd43+1024], %f81;\n" -" mov.f32 %f82, %f28;\n" -" st.shared.f32 [%rd43+1536], %f82;\n" -" shr.s32 %r52, %r1, 31;\n" -" mov.s32 %r53, 1;\n" -" and.b32 %r54, %r52, %r53;\n" -" add.s32 %r55, %r54, %r1;\n" -" shr.s32 %r56, %r55, 1;\n" -" mov.s32 %r57, %r56;\n" -" mov.u32 %r58, 0;\n" -" setp.ne.u32 %p9, %r56, %r58;\n" -" @!%p9 bra $Lt_0_22786;\n" -"$Lt_0_23298:\n" -" setp.ge.u32 %p10, %r13, %r57;\n" -" @%p10 bra $Lt_0_23554;\n" -" add.u32 %r59, %r2, %r57;\n" -" cvt.u64.u32 %rd44, %r59;\n" -" mul.wide.u32 %rd45, %r59, 4;\n" -" add.u64 %rd46, %rd40, %rd45;\n" -" ld.shared.f32 %f83, [%rd46+0];\n" -" add.ftz.f32 %f79, %f83, %f79;\n" -" st.shared.f32 [%rd43+0], %f79;\n" -" ld.shared.f32 %f84, [%rd46+512];\n" -" add.ftz.f32 %f80, %f84, %f80;\n" -" st.shared.f32 [%rd43+512], %f80;\n" -" ld.shared.f32 %f85, [%rd46+1024];\n" -" add.ftz.f32 %f81, %f85, %f81;\n" -" st.shared.f32 [%rd43+1024], %f81;\n" -" ld.shared.f32 %f86, [%rd46+1536];\n" -" add.ftz.f32 %f82, %f86, %f82;\n" -" st.shared.f32 [%rd43+1536], %f82;\n" -"$Lt_0_23554:\n" -" shr.u32 %r57, %r57, 1;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p11, %r57, %r60;\n" -" @%p11 bra $Lt_0_23298;\n" -"$Lt_0_22786:\n" -" mov.f32 %f27, %f79;\n" -" mov.f32 %f26, %f80;\n" -" mov.f32 %f25, %f81;\n" -" mov.f32 %f28, %f82;\n" -" ld.param.s32 %r61, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p12, %r61, %r62;\n" -" @%p12 bra $Lt_0_24322;\n" -" mov.f32 %f79, %f6;\n" -" st.shared.f32 [%rd43+0], %f79;\n" -" mov.f32 %f80, %f8;\n" -" st.shared.f32 [%rd43+512], %f80;\n" -" mov.f32 %f81, %f10;\n" -" st.shared.f32 [%rd43+1024], %f81;\n" -" mov.f32 %f82, %f12;\n" -" st.shared.f32 [%rd43+1536], %f82;\n" -" mov.f32 %f87, %f14;\n" -" st.shared.f32 [%rd43+2048], %f87;\n" -" mov.f32 %f88, %f15;\n" -" st.shared.f32 [%rd43+2560], %f88;\n" -" mov.s32 %r63, %r56;\n" -" @!%p9 bra $Lt_0_24834;\n" -"$Lt_0_25346:\n" -" setp.ge.u32 %p13, %r13, %r63;\n" -" @%p13 bra $Lt_0_25602;\n" -" add.u32 %r64, %r2, %r63;\n" -" cvt.u64.u32 %rd47, %r64;\n" -" mul.wide.u32 %rd48, %r64, 4;\n" -" add.u64 %rd49, %rd40, %rd48;\n" -" ld.shared.f32 %f89, [%rd49+0];\n" -" add.ftz.f32 %f79, %f89, %f79;\n" -" st.shared.f32 [%rd43+0], %f79;\n" -" ld.shared.f32 %f90, [%rd49+512];\n" -" add.ftz.f32 %f80, %f90, %f80;\n" -" st.shared.f32 [%rd43+512], %f80;\n" -" ld.shared.f32 %f91, [%rd49+1024];\n" -" add.ftz.f32 %f81, %f91, %f81;\n" -" st.shared.f32 [%rd43+1024], %f81;\n" -" ld.shared.f32 %f92, [%rd49+1536];\n" -" add.ftz.f32 %f82, %f92, %f82;\n" -" st.shared.f32 [%rd43+1536], %f82;\n" -" ld.shared.f32 %f93, [%rd49+2048];\n" -" add.ftz.f32 %f87, %f93, %f87;\n" -" st.shared.f32 [%rd43+2048], %f87;\n" -" ld.shared.f32 %f94, [%rd49+2560];\n" -" add.ftz.f32 %f88, %f94, %f88;\n" -" st.shared.f32 [%rd43+2560], %f88;\n" -"$Lt_0_25602:\n" -" shr.u32 %r63, %r63, 1;\n" -" mov.u32 %r65, 0;\n" -" setp.ne.u32 %p14, %r63, %r65;\n" -" @%p14 bra $Lt_0_25346;\n" -"$Lt_0_24834:\n" -" mov.f32 %f6, %f79;\n" -" mov.f32 %f8, %f80;\n" -" mov.f32 %f10, %f81;\n" -" mov.f32 %f12, %f82;\n" -" mov.f32 %f14, %f87;\n" -" mov.f32 %f16, %f88;\n" -"$Lt_0_24322:\n" -"$Lt_0_22274:\n" -" mov.u32 %r66, 0;\n" -" setp.ne.s32 %p15, %r13, %r66;\n" -" @%p15 bra $Lt_0_26370;\n" -" ld.param.u64 %rd50, [__cudaparm_kernel_pair___val_paramengv];\n" -" add.u64 %rd51, %rd50, %rd5;\n" -" ld.param.s32 %r67, [__cudaparm_kernel_pair_eflag];\n" -" mov.u32 %r68, 0;\n" -" setp.le.s32 %p16, %r67, %r68;\n" -" @%p16 bra $Lt_0_26882;\n" -" st.global.f32 [%rd51+0], %f28;\n" -" cvt.s64.s32 %rd52, %r9;\n" -" mul.wide.s32 %rd53, %r9, 4;\n" -" add.u64 %rd51, %rd51, %rd53;\n" -"$Lt_0_26882:\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_vflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p17, %r69, %r70;\n" -" @%p17 bra $Lt_0_27394;\n" -" mov.f32 %f95, %f6;\n" -" st.global.f32 [%rd51+0], %f95;\n" -" cvt.s64.s32 %rd54, %r9;\n" -" mul.wide.s32 %rd55, %r9, 4;\n" -" add.u64 %rd56, %rd55, %rd51;\n" -" mov.f32 %f96, %f8;\n" -" st.global.f32 [%rd56+0], %f96;\n" -" add.u64 %rd57, %rd55, %rd56;\n" -" mov.f32 %f97, %f10;\n" -" st.global.f32 [%rd57+0], %f97;\n" -" add.u64 %rd58, %rd55, %rd57;\n" -" mov.f32 %f98, %f12;\n" -" st.global.f32 [%rd58+0], %f98;\n" -" add.u64 %rd51, %rd55, %rd58;\n" -" mov.f32 %f99, %f14;\n" -" st.global.f32 [%rd51+0], %f99;\n" -" mov.f32 %f100, %f16;\n" -" add.u64 %rd59, %rd55, %rd51;\n" -" st.global.f32 [%rd59+0], %f100;\n" -"$Lt_0_27394:\n" -" ld.param.u64 %rd60, [__cudaparm_kernel_pair_ans];\n" -" mul.lo.u64 %rd61, %rd4, 16;\n" -" add.u64 %rd62, %rd60, %rd61;\n" -" mov.f32 %f101, %f102;\n" -" st.global.v4.f32 [%rd62+0], {%f27,%f26,%f25,%f101};\n" -"$Lt_0_26370:\n" -"$Lt_0_18690:\n" -" .loc 16 103 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_mor1_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_mor2_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_sp_lj_in,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_nbor,\n" -" .param .u64 __cudaparm_kernel_pair_fast_dev_packed,\n" -" .param .u64 __cudaparm_kernel_pair_fast_ans,\n" -" .param .u64 __cudaparm_kernel_pair_fast___val_paramengv,\n" -" .param .s32 __cudaparm_kernel_pair_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_pair_fast_inum,\n" -" .param .s32 __cudaparm_kernel_pair_fast_nbor_pitch,\n" -" .param .s32 __cudaparm_kernel_pair_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<74>;\n" -" .reg .u64 %rd<77>;\n" -" .reg .f32 %f<110>;\n" -" .reg .pred %p<22>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32618_33_non_const_sp_lj3268[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32616_34_non_const_mor13296[1936];\n" -" .shared .align 8 .b8 __cuda___cuda_local_var_32617_34_non_const_mor25232[968];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32688_55_non_const_red_acc6200[3072];\n" -" .loc 16 111 0\n" -"$LDWbegin_kernel_pair_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_1_20994;\n" -" .loc 16 119 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_pair_fast_sp_lj_in];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.f32 %f1, [%rd5+0];\n" -" add.u64 %rd6, %rd3, %rd1;\n" -" st.shared.f32 [%rd6+0], %f1;\n" -"$Lt_1_20994:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32618_33_non_const_sp_lj3268;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_1_21506;\n" -" .loc 16 121 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_mor13296;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 16;\n" -" ld.param.u64 %rd10, [__cudaparm_kernel_pair_fast_mor1_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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%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_22018;\n" -" .loc 16 123 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_mor25232;\n" -" mul.lo.u64 %rd14, %rd8, 8;\n" -" ld.param.u64 %rd15, [__cudaparm_kernel_pair_fast_mor2_in];\n" -" add.u64 %rd16, %rd15, %rd14;\n" -" add.u64 %rd17, %rd14, %rd13;\n" -" ld.global.v2.f32 {%f6,%f7}, [%rd16+0];\n" -" st.shared.v2.f32 [%rd17+0], {%f6,%f7};\n" -"$Lt_1_22018:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_mor25232;\n" -"$Lt_1_21506:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_32617_34_non_const_mor25232;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32616_34_non_const_mor13296;\n" -" .loc 16 131 0\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" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" .loc 16 133 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_pair_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_pair_fast_inum];\n" -" setp.ge.s32 %p4, %r12, %r13;\n" -" @%p4 bra $Lt_1_30210;\n" -" .loc 16 138 0\n" -" ld.param.s32 %r14, [__cudaparm_kernel_pair_fast_nbor_pitch];\n" -" cvt.s64.s32 %rd18, %r14;\n" -" mul.wide.s32 %rd19, %r14, 4;\n" -" cvt.s64.s32 %rd20, %r12;\n" -" mul.wide.s32 %rd21, %r12, 4;\n" -" ld.param.u64 %rd22, [__cudaparm_kernel_pair_fast_dev_nbor];\n" -" add.u64 %rd23, %rd21, %rd22;\n" -" add.u64 %rd24, %rd19, %rd23;\n" -" ld.global.s32 %r15, [%rd24+0];\n" -" sub.s32 %r16, %r6, 1;\n" -" and.b32 %r17, %r16, %r1;\n" -" cvt.s64.s32 %rd25, %r17;\n" -" mul.wide.s32 %rd26, %r17, 4;\n" -" ld.param.u64 %rd27, [__cudaparm_kernel_pair_fast_dev_packed];\n" -" setp.ne.u64 %p5, %rd27, %rd22;\n" -" @%p5 bra $Lt_1_23298;\n" -" cvt.s32.s64 %r18, %rd18;\n" -" mul.lo.s32 %r19, %r18, %r6;\n" -" mov.s32 %r20, %r19;\n" -" mul.lo.s32 %r21, %r16, %r12;\n" -" add.s32 %r22, %r18, %r21;\n" -" cvt.s64.s32 %rd28, %r22;\n" -" mul.wide.s32 %rd29, %r22, 4;\n" -" add.u64 %rd30, %rd24, %rd29;\n" -" and.b32 %r23, %r16, %r15;\n" -" cvt.s64.s32 %rd31, %r23;\n" -" div.s32 %r24, %r15, %r6;\n" -" mul.lo.s32 %r25, %r19, %r24;\n" -" cvt.s64.s32 %rd32, %r25;\n" -" add.u64 %rd33, %rd31, %rd32;\n" -" mul.lo.u64 %rd34, %rd33, 4;\n" -" add.u64 %rd35, %rd30, %rd34;\n" -" add.u64 %rd36, %rd26, %rd30;\n" -" bra.uni $Lt_1_23042;\n" -"$Lt_1_23298:\n" -" add.u64 %rd37, %rd19, %rd24;\n" -" ld.global.s32 %r26, [%rd37+0];\n" -" cvt.s64.s32 %rd38, %r26;\n" -" mul.wide.s32 %rd39, %r26, 4;\n" -" add.u64 %rd40, %rd27, %rd39;\n" -" cvt.s64.s32 %rd41, %r15;\n" -" mul.wide.s32 %rd42, %r15, 4;\n" -" add.u64 %rd35, %rd40, %rd42;\n" -" mov.s32 %r20, %r6;\n" -" add.u64 %rd36, %rd26, %rd40;\n" -"$Lt_1_23042:\n" -" .loc 16 141 0\n" -" ld.global.s32 %r27, [%rd23+0];\n" -" mov.u32 %r28, %r27;\n" -" mov.s32 %r29, 0;\n" -" mov.u32 %r30, %r29;\n" -" mov.s32 %r31, 0;\n" -" mov.u32 %r32, %r31;\n" -" mov.s32 %r33, 0;\n" -" mov.u32 %r34, %r33;\n" -" tex.1d.v4.f32.s32 {%f20,%f21,%f22,%f23},[pos_tex,{%r28,%r30,%r32,%r34}];\n" -" mov.f32 %f24, %f20;\n" -" mov.f32 %f25, %f21;\n" -" mov.f32 %f26, %f22;\n" -" mov.f32 %f27, %f23;\n" -" setp.ge.u64 %p6, %rd36, %rd35;\n" -" @%p6 bra $Lt_1_31746;\n" -" cvt.rzi.ftz.s32.f32 %r35, %f27;\n" -" cvt.s64.s32 %rd43, %r20;\n" -" mul.lo.s32 %r36, %r35, 11;\n" -" cvt.rn.f32.s32 %f28, %r36;\n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -"$Lt_1_24066:\n" -" .loc 16 148 0\n" -" ld.global.s32 %r37, [%rd36+0];\n" -" .loc 16 149 0\n" -" shr.s32 %r38, %r37, 30;\n" -" and.b32 %r39, %r38, 3;\n" -" cvt.s64.s32 %rd44, %r39;\n" -" mul.wide.s32 %rd45, %r39, 4;\n" -" add.u64 %rd46, %rd1, %rd45;\n" -" ld.shared.f32 %f33, [%rd46+0];\n" -" .loc 16 152 0\n" -" and.b32 %r40, %r37, 1073741823;\n" -" mov.u32 %r41, %r40;\n" -" mov.s32 %r42, 0;\n" -" mov.u32 %r43, %r42;\n" -" mov.s32 %r44, 0;\n" -" mov.u32 %r45, %r44;\n" -" mov.s32 %r46, 0;\n" -" mov.u32 %r47, %r46;\n" -" tex.1d.v4.f32.s32 {%f34,%f35,%f36,%f37},[pos_tex,{%r41,%r43,%r45,%r47}];\n" -" mov.f32 %f38, %f34;\n" -" mov.f32 %f39, %f35;\n" -" mov.f32 %f40, %f36;\n" -" mov.f32 %f41, %f37;\n" -" sub.ftz.f32 %f42, %f25, %f39;\n" -" sub.ftz.f32 %f43, %f24, %f38;\n" -" sub.ftz.f32 %f44, %f26, %f40;\n" -" mul.ftz.f32 %f45, %f42, %f42;\n" -" fma.rn.ftz.f32 %f46, %f43, %f43, %f45;\n" -" fma.rn.ftz.f32 %f47, %f44, %f44, %f46;\n" -" add.ftz.f32 %f48, %f28, %f41;\n" -" cvt.rzi.ftz.s32.f32 %r48, %f48;\n" -" cvt.s64.s32 %rd47, %r48;\n" -" mul.wide.s32 %rd48, %r48, 16;\n" -" add.u64 %rd49, %rd7, %rd48;\n" -" ld.shared.f32 %f49, [%rd49+0];\n" -" setp.gt.ftz.f32 %p7, %f49, %f47;\n" -" @!%p7 bra $Lt_1_25346;\n" -" .loc 16 163 0\n" -" sqrt.approx.ftz.f32 %f50, %f47;\n" -" ld.shared.v4.f32 {_,%f51,%f52,%f53}, [%rd49+0];\n" -" sub.ftz.f32 %f54, %f50, %f52;\n" -" .loc 16 164 0\n" -" mul.ftz.f32 %f55, %f53, %f54;\n" -" neg.ftz.f32 %f56, %f55;\n" -" .loc 16 166 0\n" -" mov.f32 %f57, 0f3fb8aa3b; \n" -" mul.ftz.f32 %f58, %f56, %f57;\n" -" ex2.approx.ftz.f32 %f59, %f58;\n" -" mul.ftz.f32 %f60, %f59, %f59;\n" -" sub.ftz.f32 %f61, %f60, %f59;\n" -" mul.ftz.f32 %f62, %f51, %f61;\n" -" .loc 16 168 0\n" -" div.approx.ftz.f32 %f63, %f62, %f50;\n" -" mul.ftz.f32 %f64, %f63, %f33;\n" -" fma.rn.ftz.f32 %f31, %f43, %f64, %f31;\n" -" .loc 16 169 0\n" -" fma.rn.ftz.f32 %f30, %f42, %f64, %f30;\n" -" .loc 16 170 0\n" -" fma.rn.ftz.f32 %f29, %f44, %f64, %f29;\n" -" ld.param.s32 %r49, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r50, 0;\n" -" setp.le.s32 %p8, %r49, %r50;\n" -" @%p8 bra $Lt_1_24834;\n" -" .loc 16 173 0\n" -" mul.lo.u64 %rd50, %rd47, 8;\n" -" add.u64 %rd51, %rd13, %rd50;\n" -" ld.shared.v2.f32 {%f65,%f66}, [%rd51+0];\n" -" sub.ftz.f32 %f67, %f61, %f59;\n" -" mul.ftz.f32 %f68, %f65, %f67;\n" -" sub.ftz.f32 %f69, %f68, %f66;\n" -" .loc 16 174 0\n" -" fma.rn.ftz.f32 %f32, %f33, %f69, %f32;\n" -"$Lt_1_24834:\n" -" ld.param.s32 %r51, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r52, 0;\n" -" setp.le.s32 %p9, %r51, %r52;\n" -" @%p9 bra $Lt_1_25346;\n" -" .loc 16 177 0\n" -" mov.f32 %f70, %f9;\n" -" mul.ftz.f32 %f71, %f43, %f43;\n" -" fma.rn.ftz.f32 %f72, %f64, %f71, %f70;\n" -" mov.f32 %f9, %f72;\n" -" .loc 16 178 0\n" -" mov.f32 %f73, %f11;\n" -" fma.rn.ftz.f32 %f74, %f64, %f45, %f73;\n" -" mov.f32 %f11, %f74;\n" -" .loc 16 179 0\n" -" mov.f32 %f75, %f13;\n" -" mul.ftz.f32 %f76, %f44, %f44;\n" -" fma.rn.ftz.f32 %f77, %f64, %f76, %f75;\n" -" mov.f32 %f13, %f77;\n" -" .loc 16 180 0\n" -" mov.f32 %f78, %f15;\n" -" mul.ftz.f32 %f79, %f42, %f43;\n" -" fma.rn.ftz.f32 %f80, %f64, %f79, %f78;\n" -" mov.f32 %f15, %f80;\n" -" .loc 16 181 0\n" -" mov.f32 %f81, %f17;\n" -" mul.ftz.f32 %f82, %f43, %f44;\n" -" fma.rn.ftz.f32 %f83, %f64, %f82, %f81;\n" -" mov.f32 %f17, %f83;\n" -" .loc 16 182 0\n" -" mul.ftz.f32 %f84, %f42, %f44;\n" -" fma.rn.ftz.f32 %f18, %f64, %f84, %f18;\n" -" mov.f32 %f19, %f18;\n" -"$Lt_1_25346:\n" -"$Lt_1_24322:\n" -" .loc 16 146 0\n" -" mul.lo.u64 %rd52, %rd43, 4;\n" -" add.u64 %rd36, %rd36, %rd52;\n" -" setp.lt.u64 %p10, %rd36, %rd35;\n" -" @%p10 bra $Lt_1_24066;\n" -" bra.uni $Lt_1_23554;\n" -"$Lt_1_31746:\n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -" mov.f32 %f31, 0f00000000; \n" -" mov.f32 %f32, 0f00000000; \n" -"$Lt_1_23554:\n" -" mov.u32 %r53, 1;\n" -" setp.le.s32 %p11, %r6, %r53;\n" -" @%p11 bra $Lt_1_28162;\n" -" .loc 16 187 0\n" -" mov.u64 %rd53, __cuda___cuda_local_var_32688_55_non_const_red_acc6200;\n" -" cvt.s64.s32 %rd54, %r1;\n" -" mul.wide.s32 %rd55, %r1, 4;\n" -" add.u64 %rd56, %rd53, %rd55;\n" -" mov.f32 %f85, %f31;\n" -" st.shared.f32 [%rd56+0], %f85;\n" -" mov.f32 %f86, %f30;\n" -" st.shared.f32 [%rd56+512], %f86;\n" -" mov.f32 %f87, %f29;\n" -" st.shared.f32 [%rd56+1024], %f87;\n" -" mov.f32 %f88, %f32;\n" -" st.shared.f32 [%rd56+1536], %f88;\n" -" shr.s32 %r54, %r6, 31;\n" -" mov.s32 %r55, 1;\n" -" and.b32 %r56, %r54, %r55;\n" -" add.s32 %r57, %r56, %r6;\n" -" shr.s32 %r58, %r57, 1;\n" -" mov.s32 %r59, %r58;\n" -" mov.u32 %r60, 0;\n" -" setp.ne.u32 %p12, %r58, %r60;\n" -" @!%p12 bra $Lt_1_26626;\n" -"$Lt_1_27138:\n" -" setp.ge.u32 %p13, %r17, %r59;\n" -" @%p13 bra $Lt_1_27394;\n" -" add.u32 %r61, %r1, %r59;\n" -" cvt.u64.u32 %rd57, %r61;\n" -" mul.wide.u32 %rd58, %r61, 4;\n" -" add.u64 %rd59, %rd53, %rd58;\n" -" ld.shared.f32 %f89, [%rd59+0];\n" -" add.ftz.f32 %f85, %f89, %f85;\n" -" st.shared.f32 [%rd56+0], %f85;\n" -" ld.shared.f32 %f90, [%rd59+512];\n" -" add.ftz.f32 %f86, %f90, %f86;\n" -" st.shared.f32 [%rd56+512], %f86;\n" -" ld.shared.f32 %f91, [%rd59+1024];\n" -" add.ftz.f32 %f87, %f91, %f87;\n" -" st.shared.f32 [%rd56+1024], %f87;\n" -" ld.shared.f32 %f92, [%rd59+1536];\n" -" add.ftz.f32 %f88, %f92, %f88;\n" -" st.shared.f32 [%rd56+1536], %f88;\n" -"$Lt_1_27394:\n" -" shr.u32 %r59, %r59, 1;\n" -" mov.u32 %r62, 0;\n" -" setp.ne.u32 %p14, %r59, %r62;\n" -" @%p14 bra $Lt_1_27138;\n" -"$Lt_1_26626:\n" -" mov.f32 %f31, %f85;\n" -" mov.f32 %f30, %f86;\n" -" mov.f32 %f29, %f87;\n" -" mov.f32 %f32, %f88;\n" -" ld.param.s32 %r63, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r64, 0;\n" -" setp.le.s32 %p15, %r63, %r64;\n" -" @%p15 bra $Lt_1_28162;\n" -" mov.f32 %f85, %f9;\n" -" st.shared.f32 [%rd56+0], %f85;\n" -" mov.f32 %f86, %f11;\n" -" st.shared.f32 [%rd56+512], %f86;\n" -" mov.f32 %f87, %f13;\n" -" st.shared.f32 [%rd56+1024], %f87;\n" -" mov.f32 %f88, %f15;\n" -" st.shared.f32 [%rd56+1536], %f88;\n" -" mov.f32 %f93, %f17;\n" -" st.shared.f32 [%rd56+2048], %f93;\n" -" mov.f32 %f94, %f18;\n" -" st.shared.f32 [%rd56+2560], %f94;\n" -" mov.s32 %r65, %r58;\n" -" @!%p12 bra $Lt_1_28674;\n" -"$Lt_1_29186:\n" -" setp.ge.u32 %p16, %r17, %r65;\n" -" @%p16 bra $Lt_1_29442;\n" -" add.u32 %r66, %r1, %r65;\n" -" cvt.u64.u32 %rd60, %r66;\n" -" mul.wide.u32 %rd61, %r66, 4;\n" -" add.u64 %rd62, %rd53, %rd61;\n" -" ld.shared.f32 %f95, [%rd62+0];\n" -" add.ftz.f32 %f85, %f95, %f85;\n" -" st.shared.f32 [%rd56+0], %f85;\n" -" ld.shared.f32 %f96, [%rd62+512];\n" -" add.ftz.f32 %f86, %f96, %f86;\n" -" st.shared.f32 [%rd56+512], %f86;\n" -" ld.shared.f32 %f97, [%rd62+1024];\n" -" add.ftz.f32 %f87, %f97, %f87;\n" -" st.shared.f32 [%rd56+1024], %f87;\n" -" ld.shared.f32 %f98, [%rd62+1536];\n" -" add.ftz.f32 %f88, %f98, %f88;\n" -" st.shared.f32 [%rd56+1536], %f88;\n" -" ld.shared.f32 %f99, [%rd62+2048];\n" -" add.ftz.f32 %f93, %f99, %f93;\n" -" st.shared.f32 [%rd56+2048], %f93;\n" -" ld.shared.f32 %f100, [%rd62+2560];\n" -" add.ftz.f32 %f94, %f100, %f94;\n" -" st.shared.f32 [%rd56+2560], %f94;\n" -"$Lt_1_29442:\n" -" shr.u32 %r65, %r65, 1;\n" -" mov.u32 %r67, 0;\n" -" setp.ne.u32 %p17, %r65, %r67;\n" -" @%p17 bra $Lt_1_29186;\n" -"$Lt_1_28674:\n" -" mov.f32 %f9, %f85;\n" -" mov.f32 %f11, %f86;\n" -" mov.f32 %f13, %f87;\n" -" mov.f32 %f15, %f88;\n" -" mov.f32 %f17, %f93;\n" -" mov.f32 %f19, %f94;\n" -"$Lt_1_28162:\n" -"$Lt_1_26114:\n" -" mov.u32 %r68, 0;\n" -" setp.ne.s32 %p18, %r17, %r68;\n" -" @%p18 bra $Lt_1_30210;\n" -" ld.param.u64 %rd63, [__cudaparm_kernel_pair_fast___val_paramengv];\n" -" add.u64 %rd64, %rd63, %rd21;\n" -" ld.param.s32 %r69, [__cudaparm_kernel_pair_fast_eflag];\n" -" mov.u32 %r70, 0;\n" -" setp.le.s32 %p19, %r69, %r70;\n" -" @%p19 bra $Lt_1_30722;\n" -" st.global.f32 [%rd64+0], %f32;\n" -" cvt.s64.s32 %rd65, %r13;\n" -" mul.wide.s32 %rd66, %r13, 4;\n" -" add.u64 %rd64, %rd64, %rd66;\n" -"$Lt_1_30722:\n" -" ld.param.s32 %r71, [__cudaparm_kernel_pair_fast_vflag];\n" -" mov.u32 %r72, 0;\n" -" setp.le.s32 %p20, %r71, %r72;\n" -" @%p20 bra $Lt_1_31234;\n" -" mov.f32 %f101, %f9;\n" -" st.global.f32 [%rd64+0], %f101;\n" -" cvt.s64.s32 %rd67, %r13;\n" -" mul.wide.s32 %rd68, %r13, 4;\n" -" add.u64 %rd69, %rd68, %rd64;\n" -" mov.f32 %f102, %f11;\n" -" st.global.f32 [%rd69+0], %f102;\n" -" add.u64 %rd70, %rd68, %rd69;\n" -" mov.f32 %f103, %f13;\n" -" st.global.f32 [%rd70+0], %f103;\n" -" add.u64 %rd71, %rd68, %rd70;\n" -" mov.f32 %f104, %f15;\n" -" st.global.f32 [%rd71+0], %f104;\n" -" add.u64 %rd64, %rd68, %rd71;\n" -" mov.f32 %f105, %f17;\n" -" st.global.f32 [%rd64+0], %f105;\n" -" mov.f32 %f106, %f19;\n" -" add.u64 %rd72, %rd68, %rd64;\n" -" st.global.f32 [%rd72+0], %f106;\n" -"$Lt_1_31234:\n" -" ld.param.u64 %rd73, [__cudaparm_kernel_pair_fast_ans];\n" -" mul.lo.u64 %rd74, %rd20, 16;\n" -" add.u64 %rd75, %rd73, %rd74;\n" -" mov.f32 %f107, %f108;\n" -" st.global.v4.f32 [%rd75+0], {%f31,%f30,%f29,%f107};\n" -"$Lt_1_30210:\n" -"$Lt_1_22530:\n" -" .loc 16 190 0\n" -" exit;\n" -"$LDWend_kernel_pair_fast:\n" -" }\n" -; diff --git a/lib/gpu/neighbor_cpu.ptx b/lib/gpu/neighbor_cpu.ptx deleted file mode 100644 index 354ea985b1..0000000000 --- a/lib/gpu/neighbor_cpu.ptx +++ /dev/null @@ -1,132 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009a34_00000000-9_lal_neighbor_cpu.cpp3.i (/home/sjplimp/ccBI#.V8lyjI) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009a34_00000000-8_lal_neighbor_cpu.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_neighbor_cpu.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_unpack ( - .param .u64 __cudaparm_kernel_unpack_dev_nbor, - .param .u64 __cudaparm_kernel_unpack_dev_ij, - .param .s32 __cudaparm_kernel_unpack_inum, - .param .s32 __cudaparm_kernel_unpack_t_per_atom) - { - .reg .u32 %r<19>; - .reg .u64 %rd<33>; - .reg .pred %p<5>; - .loc 16 21 0 -$LDWbegin_kernel_unpack: - ld.param.s32 %r1, [__cudaparm_kernel_unpack_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_unpack_inum]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_0_2050; - .loc 16 30 0 - cvt.s64.s32 %rd1, %r9; - ld.param.u64 %rd2, [__cudaparm_kernel_unpack_dev_nbor]; - cvt.s64.s32 %rd3, %r8; - add.u64 %rd4, %rd3, %rd1; - mul.lo.u64 %rd5, %rd4, 4; - add.u64 %rd6, %rd2, %rd5; - mul.wide.s32 %rd7, %r9, 4; - add.u64 %rd8, %rd6, %rd7; - ld.param.u64 %rd9, [__cudaparm_kernel_unpack_dev_ij]; - ld.global.s32 %r10, [%rd8+0]; - cvt.s64.s32 %rd10, %r10; - mul.wide.s32 %rd11, %r10, 4; - add.u64 %rd12, %rd9, %rd11; - .loc 16 31 0 - ld.global.s32 %r11, [%rd6+0]; - cvt.s64.s32 %rd13, %r11; - mul.wide.s32 %rd14, %r11, 4; - add.u64 %rd15, %rd12, %rd14; - .loc 16 33 0 - sub.s32 %r12, %r1, 1; - and.b32 %r13, %r12, %r2; - mul.lo.s32 %r14, %r12, %r8; - add.s32 %r15, %r13, %r14; - cvt.s64.s32 %rd16, %r15; - mul.wide.s32 %rd17, %r15, 4; - add.u64 %rd18, %rd8, %rd17; - .loc 16 34 0 - cvt.s64.s32 %rd19, %r13; - mul.wide.s32 %rd20, %r13, 4; - add.u64 %rd21, %rd12, %rd20; - setp.ge.u64 %p2, %rd21, %rd15; - @%p2 bra $Lt_0_2562; - sub.u64 %rd22, %rd15, %rd21; - add.u64 %rd23, %rd22, 3; - shr.s64 %rd24, %rd23, 63; - mov.s64 %rd25, 3; - and.b64 %rd26, %rd24, %rd25; - add.s64 %rd27, %rd26, %rd23; - shr.s64 %rd28, %rd27, 2; - mul.lo.s32 %r16, %r9, %r1; - mov.s64 %rd29, %rd28; -$Lt_0_3074: - // Loop body line 34, nesting depth: 1, estimated iterations: unknown - .loc 16 37 0 - ld.global.s32 %r17, [%rd21+0]; - st.global.s32 [%rd18+0], %r17; - .loc 16 38 0 - cvt.s64.s32 %rd30, %r16; - mul.wide.s32 %rd31, %r16, 4; - add.u64 %rd18, %rd18, %rd31; - add.u64 %rd21, %rd21, 4; - setp.ne.u64 %p3, %rd21, %rd15; - @%p3 bra $Lt_0_3074; -$Lt_0_2562: -$Lt_0_2050: - .loc 16 41 0 - exit; -$LDWend_kernel_unpack: - } // kernel_unpack - diff --git a/lib/gpu/neighbor_cpu_ptx.h b/lib/gpu/neighbor_cpu_ptx.h deleted file mode 100644 index ac438d1abb..0000000000 --- a/lib/gpu/neighbor_cpu_ptx.h +++ /dev/null @@ -1,86 +0,0 @@ -const char * neighbor_cpu = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\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" -" .param .s32 __cudaparm_kernel_unpack_t_per_atom)\n" -" {\n" -" .reg .u32 %r<19>;\n" -" .reg .u64 %rd<33>;\n" -" .reg .pred %p<5>;\n" -" .loc 16 21 0\n" -"$LDWbegin_kernel_unpack:\n" -" ld.param.s32 %r1, [__cudaparm_kernel_unpack_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_unpack_inum];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_0_2050;\n" -" .loc 16 30 0\n" -" cvt.s64.s32 %rd1, %r9;\n" -" ld.param.u64 %rd2, [__cudaparm_kernel_unpack_dev_nbor];\n" -" cvt.s64.s32 %rd3, %r8;\n" -" add.u64 %rd4, %rd3, %rd1;\n" -" mul.lo.u64 %rd5, %rd4, 4;\n" -" add.u64 %rd6, %rd2, %rd5;\n" -" mul.wide.s32 %rd7, %r9, 4;\n" -" add.u64 %rd8, %rd6, %rd7;\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_unpack_dev_ij];\n" -" ld.global.s32 %r10, [%rd8+0];\n" -" cvt.s64.s32 %rd10, %r10;\n" -" mul.wide.s32 %rd11, %r10, 4;\n" -" add.u64 %rd12, %rd9, %rd11;\n" -" .loc 16 31 0\n" -" ld.global.s32 %r11, [%rd6+0];\n" -" cvt.s64.s32 %rd13, %r11;\n" -" mul.wide.s32 %rd14, %r11, 4;\n" -" add.u64 %rd15, %rd12, %rd14;\n" -" .loc 16 33 0\n" -" sub.s32 %r12, %r1, 1;\n" -" and.b32 %r13, %r12, %r2;\n" -" mul.lo.s32 %r14, %r12, %r8;\n" -" add.s32 %r15, %r13, %r14;\n" -" cvt.s64.s32 %rd16, %r15;\n" -" mul.wide.s32 %rd17, %r15, 4;\n" -" add.u64 %rd18, %rd8, %rd17;\n" -" .loc 16 34 0\n" -" cvt.s64.s32 %rd19, %r13;\n" -" mul.wide.s32 %rd20, %r13, 4;\n" -" add.u64 %rd21, %rd12, %rd20;\n" -" setp.ge.u64 %p2, %rd21, %rd15;\n" -" @%p2 bra $Lt_0_2562;\n" -" sub.u64 %rd22, %rd15, %rd21;\n" -" add.u64 %rd23, %rd22, 3;\n" -" shr.s64 %rd24, %rd23, 63;\n" -" mov.s64 %rd25, 3;\n" -" and.b64 %rd26, %rd24, %rd25;\n" -" add.s64 %rd27, %rd26, %rd23;\n" -" shr.s64 %rd28, %rd27, 2;\n" -" mul.lo.s32 %r16, %r9, %r1;\n" -" mov.s64 %rd29, %rd28;\n" -"$Lt_0_3074:\n" -" .loc 16 37 0\n" -" ld.global.s32 %r17, [%rd21+0];\n" -" st.global.s32 [%rd18+0], %r17;\n" -" .loc 16 38 0\n" -" cvt.s64.s32 %rd30, %r16;\n" -" mul.wide.s32 %rd31, %r16, 4;\n" -" add.u64 %rd18, %rd18, %rd31;\n" -" add.u64 %rd21, %rd21, 4;\n" -" setp.ne.u64 %p3, %rd21, %rd15;\n" -" @%p3 bra $Lt_0_3074;\n" -"$Lt_0_2562:\n" -"$Lt_0_2050:\n" -" .loc 16 41 0\n" -" exit;\n" -"$LDWend_kernel_unpack:\n" -" }\n" -; diff --git a/lib/gpu/neighbor_gpu.ptx b/lib/gpu/neighbor_gpu.ptx deleted file mode 100644 index c43102765a..0000000000 --- a/lib/gpu/neighbor_gpu.ptx +++ /dev/null @@ -1,870 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009a53_00000000-9_lal_neighbor_gpu.cpp3.i (/home/sjplimp/ccBI#.a5G2Mh) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009a53_00000000-8_lal_neighbor_gpu.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_neighbor_gpu.cu" - .file 17 "/usr/local/cuda/include/common_functions.h" - .file 18 "/usr/local/cuda/include/math_functions.h" - .file 19 "/usr/local/cuda/include/math_constants.h" - .file 20 "/usr/local/cuda/include/device_functions.h" - .file 21 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref neigh_tex; - - .entry calc_cell_id ( - .param .u64 __cudaparm_calc_cell_id_pos, - .param .u64 __cudaparm_calc_cell_id_cell_id, - .param .u64 __cudaparm_calc_cell_id_particle_id, - .param .f32 __cudaparm_calc_cell_id_boxlo0, - .param .f32 __cudaparm_calc_cell_id_boxlo1, - .param .f32 __cudaparm_calc_cell_id_boxlo2, - .param .f32 __cudaparm_calc_cell_id_boxhi0, - .param .f32 __cudaparm_calc_cell_id_boxhi1, - .param .f32 __cudaparm_calc_cell_id_boxhi2, - .param .f32 __cudaparm_calc_cell_id_cell_size, - .param .s32 __cudaparm_calc_cell_id_ncellx, - .param .s32 __cudaparm_calc_cell_id_ncelly, - .param .s32 __cudaparm_calc_cell_id_nall) - { - .reg .u32 %r<25>; - .reg .u64 %rd<8>; - .reg .f32 %f<35>; - .reg .f64 %fd<11>; - .reg .pred %p<3>; - .loc 16 29 0 -$LDWbegin_calc_cell_id: - mov.u32 %r1, %tid.x; - mov.u32 %r2, %ctaid.x; - mov.u32 %r3, %ntid.x; - mul.lo.u32 %r4, %r2, %r3; - add.u32 %r5, %r1, %r4; - ld.param.s32 %r6, [__cudaparm_calc_cell_id_nall]; - setp.le.s32 %p1, %r6, %r5; - @%p1 bra $Lt_0_1026; - .loc 16 33 0 - mov.u32 %r7, %r5; - mov.s32 %r8, 0; - mov.u32 %r9, %r8; - mov.s32 %r10, 0; - mov.u32 %r11, %r10; - mov.s32 %r12, 0; - mov.u32 %r13, %r12; - tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[neigh_tex,{%r7,%r9,%r11,%r13}]; - mov.f32 %f5, %f1; - mov.f32 %f6, %f2; - mov.f32 %f7, %f3; - .loc 16 46 0 - ld.param.f32 %f8, [__cudaparm_calc_cell_id_cell_size]; - neg.ftz.f32 %f9, %f8; - ld.param.f32 %f10, [__cudaparm_calc_cell_id_boxlo0]; - ld.param.f32 %f11, [__cudaparm_calc_cell_id_boxlo2]; - ld.param.f32 %f12, [__cudaparm_calc_cell_id_boxlo1]; - ld.param.s32 %r14, [__cudaparm_calc_cell_id_ncellx]; - ld.param.s32 %r15, [__cudaparm_calc_cell_id_ncelly]; - ld.param.f32 %f13, [__cudaparm_calc_cell_id_boxhi2]; - sub.ftz.f32 %f14, %f13, %f11; - add.ftz.f32 %f15, %f8, %f14; - sub.ftz.f32 %f16, %f7, %f11; - max.ftz.f32 %f17, %f9, %f16; - min.ftz.f32 %f18, %f15, %f17; - div.approx.ftz.f32 %f19, %f18, %f8; - cvt.ftz.f64.f32 %fd1, %f19; - mov.f64 %fd2, 0d3ff0000000000000; // 1 - add.f64 %fd3, %fd1, %fd2; - cvt.rzi.u32.f64 %r16, %fd3; - mul.lo.u32 %r17, %r14, %r16; - mul.lo.u32 %r18, %r15, %r17; - ld.param.f32 %f20, [__cudaparm_calc_cell_id_boxhi1]; - sub.ftz.f32 %f21, %f20, %f12; - add.ftz.f32 %f22, %f8, %f21; - sub.ftz.f32 %f23, %f6, %f12; - max.ftz.f32 %f24, %f9, %f23; - min.ftz.f32 %f25, %f22, %f24; - div.approx.ftz.f32 %f26, %f25, %f8; - cvt.ftz.f64.f32 %fd4, %f26; - mov.f64 %fd5, 0d3ff0000000000000; // 1 - add.f64 %fd6, %fd4, %fd5; - cvt.rzi.u32.f64 %r19, %fd6; - mul.lo.u32 %r20, %r14, %r19; - add.u32 %r21, %r18, %r20; - ld.param.f32 %f27, [__cudaparm_calc_cell_id_boxhi0]; - sub.ftz.f32 %f28, %f27, %f10; - add.ftz.f32 %f29, %f8, %f28; - sub.ftz.f32 %f30, %f5, %f10; - max.ftz.f32 %f31, %f9, %f30; - min.ftz.f32 %f32, %f29, %f31; - div.approx.ftz.f32 %f33, %f32, %f8; - cvt.ftz.f64.f32 %fd7, %f33; - mov.f64 %fd8, 0d3ff0000000000000; // 1 - add.f64 %fd9, %fd7, %fd8; - cvt.rzi.u32.f64 %r22, %fd9; - add.u32 %r23, %r21, %r22; - .loc 16 50 0 - cvt.s64.s32 %rd1, %r5; - mul.wide.s32 %rd2, %r5, 4; - ld.param.u64 %rd3, [__cudaparm_calc_cell_id_cell_id]; - add.u64 %rd4, %rd3, %rd2; - st.global.u32 [%rd4+0], %r23; - .loc 16 51 0 - ld.param.u64 %rd5, [__cudaparm_calc_cell_id_particle_id]; - add.u64 %rd6, %rd5, %rd2; - st.global.s32 [%rd6+0], %r5; -$Lt_0_1026: - .loc 16 53 0 - exit; -$LDWend_calc_cell_id: - } // calc_cell_id - - .entry kernel_calc_cell_counts ( - .param .u64 __cudaparm_kernel_calc_cell_counts_cell_id, - .param .u64 __cudaparm_kernel_calc_cell_counts_cell_counts, - .param .s32 __cudaparm_kernel_calc_cell_counts_nall, - .param .s32 __cudaparm_kernel_calc_cell_counts_ncell) - { - .reg .u32 %r<33>; - .reg .u64 %rd<15>; - .reg .pred %p<13>; - .loc 16 56 0 -$LDWbegin_kernel_calc_cell_counts: - mov.u32 %r1, %ctaid.x; - mov.u32 %r2, %ntid.x; - mul.lo.u32 %r3, %r1, %r2; - mov.u32 %r4, %tid.x; - add.u32 %r5, %r4, %r3; - ld.param.s32 %r6, [__cudaparm_kernel_calc_cell_counts_nall]; - setp.gt.s32 %p1, %r6, %r5; - @!%p1 bra $Lt_1_7426; - .loc 16 59 0 - ld.param.u64 %rd1, [__cudaparm_kernel_calc_cell_counts_cell_id]; - cvt.s64.s32 %rd2, %r5; - mul.wide.s32 %rd3, %r5, 4; - add.u64 %rd4, %rd1, %rd3; - ld.global.u32 %r7, [%rd4+0]; - mov.u32 %r8, 0; - setp.ne.s32 %p2, %r5, %r8; - @%p2 bra $Lt_1_7938; - add.s32 %r9, %r7, 1; - mov.u32 %r10, 0; - setp.le.s32 %p3, %r9, %r10; - @%p3 bra $Lt_1_8450; - mov.s32 %r11, %r9; - ld.param.u64 %rd5, [__cudaparm_kernel_calc_cell_counts_cell_counts]; - mov.s32 %r12, 0; - mov.s32 %r13, %r11; -$Lt_1_8962: - // Loop body line 59, nesting depth: 1, estimated iterations: unknown - .loc 16 64 0 - mov.s32 %r14, 0; - st.global.s32 [%rd5+0], %r14; - add.s32 %r12, %r12, 1; - add.u64 %rd5, %rd5, 4; - setp.ne.s32 %p4, %r9, %r12; - @%p4 bra $Lt_1_8962; -$Lt_1_8450: -$Lt_1_7938: - sub.s32 %r15, %r6, 1; - setp.ne.s32 %p5, %r5, %r15; - @%p5 bra $Lt_1_9474; - .loc 16 67 0 - add.s32 %r9, %r7, 1; - mov.s32 %r16, %r9; - ld.param.s32 %r17, [__cudaparm_kernel_calc_cell_counts_ncell]; - setp.gt.s32 %p6, %r9, %r17; - @%p6 bra $Lt_1_9986; - sub.s32 %r18, %r17, %r7; - add.s32 %r19, %r17, 1; - ld.param.u64 %rd6, [__cudaparm_kernel_calc_cell_counts_cell_counts]; - cvt.s64.s32 %rd7, %r9; - mul.wide.s32 %rd8, %r9, 4; - add.u64 %rd9, %rd6, %rd8; - mov.s32 %r20, %r18; -$Lt_1_10498: - // Loop body line 67, nesting depth: 1, estimated iterations: unknown - .loc 16 68 0 - st.global.s32 [%rd9+0], %r6; - add.s32 %r16, %r16, 1; - add.u64 %rd9, %rd9, 4; - setp.ne.s32 %p7, %r19, %r16; - @%p7 bra $Lt_1_10498; -$Lt_1_9986: -$Lt_1_9474: - selp.s32 %r21, 1, 0, %p1; - mov.s32 %r22, 0; - set.gt.u32.s32 %r23, %r5, %r22; - neg.s32 %r24, %r23; - and.b32 %r25, %r21, %r24; - mov.u32 %r26, 0; - setp.eq.s32 %p8, %r25, %r26; - @%p8 bra $Lt_1_11010; - .loc 16 72 0 - ld.global.u32 %r27, [%rd4+-4]; - setp.eq.s32 %p9, %r7, %r27; - @%p9 bra $Lt_1_11522; - .loc 16 74 0 - add.s32 %r28, %r27, 1; - mov.s32 %r29, %r28; - setp.gt.s32 %p10, %r28, %r7; - @%p10 bra $Lt_1_12034; - sub.s32 %r30, %r7, %r27; - add.s32 %r9, %r7, 1; - ld.param.u64 %rd10, [__cudaparm_kernel_calc_cell_counts_cell_counts]; - cvt.s64.s32 %rd11, %r28; - mul.wide.s32 %rd12, %r28, 4; - add.u64 %rd13, %rd10, %rd12; - mov.s32 %r31, %r30; -$Lt_1_12546: - // Loop body line 74, nesting depth: 1, estimated iterations: unknown - .loc 16 75 0 - st.global.s32 [%rd13+0], %r5; - add.s32 %r29, %r29, 1; - add.u64 %rd13, %rd13, 4; - setp.ne.s32 %p11, %r9, %r29; - @%p11 bra $Lt_1_12546; -$Lt_1_12034: -$Lt_1_11522: -$Lt_1_11010: -$Lt_1_7426: - .loc 16 79 0 - exit; -$LDWend_kernel_calc_cell_counts: - } // kernel_calc_cell_counts - - .entry transpose ( - .param .u64 __cudaparm_transpose_out, - .param .u64 __cudaparm_transpose_in, - .param .s32 __cudaparm_transpose_columns_in, - .param .s32 __cudaparm_transpose_rows_in) - { - .reg .u32 %r<32>; - .reg .u64 %rd<23>; - .reg .f32 %f<4>; - .reg .pred %p<4>; - .shared .align 4 .b8 __cuda___cuda_local_var_32571_32_non_const_block112[288]; - .loc 16 86 0 -$LDWbegin_transpose: - mov.u32 %r1, %ctaid.x; - mul.lo.u32 %r2, %r1, 8; - mov.u32 %r3, %ctaid.y; - mul.lo.u32 %r4, %r3, 8; - mov.u32 %r5, %tid.x; - add.u32 %r6, %r2, %r5; - mov.u32 %r7, %tid.y; - add.u32 %r8, %r4, %r7; - ld.param.s32 %r9, [__cudaparm_transpose_rows_in]; - ld.param.s32 %r10, [__cudaparm_transpose_columns_in]; - set.gt.u32.u32 %r11, %r9, %r8; - neg.s32 %r12, %r11; - set.gt.u32.u32 %r13, %r10, %r6; - neg.s32 %r14, %r13; - and.b32 %r15, %r12, %r14; - mov.u32 %r16, 0; - setp.eq.s32 %p1, %r15, %r16; - @%p1 bra $Lt_2_2306; - .loc 16 98 0 - mov.u64 %rd1, __cuda___cuda_local_var_32571_32_non_const_block112; - ld.param.u64 %rd2, [__cudaparm_transpose_in]; - mul.lo.u32 %r17, %r10, %r8; - add.u32 %r18, %r6, %r17; - cvt.u64.u32 %rd3, %r18; - mul.wide.u32 %rd4, %r18, 4; - add.u64 %rd5, %rd2, %rd4; - ld.global.s32 %r19, [%rd5+0]; - cvt.rn.f32.s32 %f1, %r19; - cvt.u64.u32 %rd6, %r5; - cvt.u64.u32 %rd7, %r7; - mul.wide.u32 %rd8, %r7, 9; - add.u64 %rd9, %rd6, %rd8; - mul.lo.u64 %rd10, %rd9, 4; - add.u64 %rd11, %rd1, %rd10; - st.shared.f32 [%rd11+0], %f1; -$Lt_2_2306: - mov.u64 %rd1, __cuda___cuda_local_var_32571_32_non_const_block112; - .loc 16 100 0 - bar.sync 0; - add.u32 %r20, %r2, %r7; - add.u32 %r21, %r4, %r5; - set.gt.u32.u32 %r22, %r9, %r21; - neg.s32 %r23, %r22; - set.gt.u32.u32 %r24, %r10, %r20; - neg.s32 %r25, %r24; - and.b32 %r26, %r23, %r25; - mov.u32 %r27, 0; - setp.eq.s32 %p2, %r26, %r27; - @%p2 bra $Lt_2_2818; - .loc 16 105 0 - cvt.u64.u32 %rd12, %r7; - cvt.u64.u32 %rd13, %r5; - mul.wide.u32 %rd14, %r5, 9; - add.u64 %rd15, %rd12, %rd14; - mul.lo.u64 %rd16, %rd15, 4; - add.u64 %rd17, %rd1, %rd16; - ld.shared.f32 %f2, [%rd17+0]; - cvt.rzi.ftz.s32.f32 %r28, %f2; - ld.param.u64 %rd18, [__cudaparm_transpose_out]; - mul.lo.u32 %r29, %r9, %r20; - add.u32 %r30, %r21, %r29; - cvt.u64.u32 %rd19, %r30; - mul.wide.u32 %rd20, %r30, 4; - add.u64 %rd21, %rd18, %rd20; - st.global.s32 [%rd21+0], %r28; -$Lt_2_2818: - .loc 16 106 0 - exit; -$LDWend_transpose: - } // transpose - - .entry calc_neigh_list_cell ( - .param .u64 __cudaparm_calc_neigh_list_cell_x_, - .param .u64 __cudaparm_calc_neigh_list_cell_cell_particle_id, - .param .u64 __cudaparm_calc_neigh_list_cell_cell_counts, - .param .u64 __cudaparm_calc_neigh_list_cell_nbor_list, - .param .u64 __cudaparm_calc_neigh_list_cell_host_nbor_list, - .param .u64 __cudaparm_calc_neigh_list_cell_host_numj, - .param .s32 __cudaparm_calc_neigh_list_cell_neigh_bin_size, - .param .f32 __cudaparm_calc_neigh_list_cell_cell_size, - .param .s32 __cudaparm_calc_neigh_list_cell_ncellx, - .param .s32 __cudaparm_calc_neigh_list_cell_ncelly, - .param .s32 __cudaparm_calc_neigh_list_cell_ncellz, - .param .s32 __cudaparm_calc_neigh_list_cell_inum, - .param .s32 __cudaparm_calc_neigh_list_cell_nt, - .param .s32 __cudaparm_calc_neigh_list_cell_nall, - .param .s32 __cudaparm_calc_neigh_list_cell_t_per_atom) - { - .reg .u32 %r<118>; - .reg .u64 %rd<52>; - .reg .f32 %f<41>; - .reg .f64 %fd<4>; - .reg .pred %p<23>; - .shared .align 16 .b8 __cuda___cuda_local_var_32609_34_non_const_pos_sh496[2048]; - .shared .align 4 .b8 __cuda___cuda_local_var_32608_31_non_const_cell_list_sh2544[512]; - // __cuda_local_var_32624_12_non_const_atom_i = 16 - .loc 16 116 0 -$LDWbegin_calc_neigh_list_cell: - .loc 16 128 0 - ld.param.s32 %r1, [__cudaparm_calc_neigh_list_cell_ncelly]; - mov.u32 %r2, %ctaid.y; - rem.u32 %r3, %r2, %r1; - div.u32 %r4, %r2, %r1; - ld.param.s32 %r5, [__cudaparm_calc_neigh_list_cell_ncellx]; - mul.lo.s32 %r6, %r5, %r3; - mul.lo.s32 %r7, %r5, %r4; - mul.lo.s32 %r8, %r7, %r1; - cvt.s32.u32 %r9, %ctaid.x; - ld.param.u64 %rd1, [__cudaparm_calc_neigh_list_cell_cell_counts]; - add.s32 %r10, %r6, %r8; - add.s32 %r11, %r9, %r10; - cvt.s64.s32 %rd2, %r11; - mul.wide.s32 %rd3, %r11, 4; - add.u64 %rd4, %rd1, %rd3; - ldu.global.s32 %r12, [%rd4+0]; - .loc 16 129 0 - ldu.global.s32 %r13, [%rd4+4]; - .loc 16 137 0 - sub.s32 %r14, %r13, %r12; - mov.u32 %r15, %ntid.x; - cvt.rn.f32.u32 %f1, %r15; - cvt.rn.f32.s32 %f2, %r14; - div.approx.ftz.f32 %f3, %f2, %f1; - cvt.rpi.ftz.f32.f32 %f4, %f3; - cvt.rzi.ftz.s32.f32 %r16, %f4; - mov.u32 %r17, 0; - setp.le.s32 %p1, %r16, %r17; - @%p1 bra $Lt_3_14082; - sub.s32 %r18, %r3, 1; - mov.s32 %r19, 0; - max.s32 %r20, %r18, %r19; - sub.s32 %r21, %r1, 1; - add.s32 %r22, %r3, 1; - min.s32 %r23, %r21, %r22; - ld.param.s32 %r24, [__cudaparm_calc_neigh_list_cell_ncellz]; - sub.s32 %r25, %r24, 1; - add.s32 %r26, %r4, 1; - min.s32 %r27, %r25, %r26; - sub.s32 %r28, %r9, 1; - mov.s32 %r29, 0; - max.s32 %r30, %r28, %r29; - add.s32 %r31, %r9, 1; - sub.s32 %r32, %r5, 1; - min.s32 %r33, %r31, %r32; - mov.s32 %r34, %r16; - cvt.s32.u32 %r35, %tid.x; - add.s32 %r36, %r12, %r35; - mov.u32 %r37, 0; - ld.param.s32 %r38, [__cudaparm_calc_neigh_list_cell_inum]; - cvt.s64.s32 %rd5, %r38; - sub.s32 %r39, %r4, 1; - mov.s32 %r40, %r36; - mov.s32 %r41, 0; - max.s32 %r42, %r39, %r41; - setp.ge.s32 %p2, %r27, %r42; - ld.param.s32 %r43, [__cudaparm_calc_neigh_list_cell_nt]; - ld.param.s32 %r44, [__cudaparm_calc_neigh_list_cell_nall]; - mov.s32 %r45, 0; - mov.u64 %rd6, __cuda___cuda_local_var_32609_34_non_const_pos_sh496; - mov.u64 %rd7, __cuda___cuda_local_var_32608_31_non_const_cell_list_sh2544; - mov.s32 %r46, %r34; -$Lt_3_14594: - // Loop body line 137, nesting depth: 1, estimated iterations: unknown - .loc 16 140 0 - mov.s32 %r47, %r44; - setp.ge.s32 %p3, %r40, %r13; - @%p3 bra $Lt_3_14850; - .loc 16 146 0 - ld.param.u64 %rd8, [__cudaparm_calc_neigh_list_cell_cell_particle_id]; - add.u32 %r48, %r36, %r37; - cvt.s64.s32 %rd9, %r48; - mul.wide.s32 %rd10, %r48, 4; - add.u64 %rd11, %rd8, %rd10; - ld.global.s32 %r47, [%rd11+0]; -$Lt_3_14850: - setp.lt.s32 %p4, %r47, %r43; - @!%p4 bra $Lt_3_15362; - .loc 16 149 0 - mov.u32 %r49, %r47; - mov.s32 %r50, 0; - mov.u32 %r51, %r50; - mov.s32 %r52, 0; - mov.u32 %r53, %r52; - mov.s32 %r54, 0; - mov.u32 %r55, %r54; - tex.1d.v4.f32.s32 {%f5,%f6,%f7,%f8},[neigh_tex,{%r49,%r51,%r53,%r55}]; - mov.f32 %f9, %f5; - mov.f32 %f10, %f6; - mov.f32 %f11, %f7; - mov.f32 %f12, %f9; - mov.f32 %f13, %f10; - mov.f32 %f14, %f11; -$Lt_3_15362: - cvt.s64.s32 %rd12, %r47; - mul.wide.s32 %rd13, %r47, 4; - setp.ge.s32 %p5, %r47, %r38; - @%p5 bra $Lt_3_16130; - .loc 16 153 0 - ld.param.u64 %rd14, [__cudaparm_calc_neigh_list_cell_nbor_list]; - add.u64 %rd15, %rd12, %rd5; - mul.lo.u64 %rd16, %rd15, 4; - add.u64 %rd17, %rd14, %rd16; - mov.s64 %rd18, %rd17; - .loc 16 154 0 - ld.param.s32 %r56, [__cudaparm_calc_neigh_list_cell_t_per_atom]; - sub.s32 %r57, %r56, 1; - mul.lo.s32 %r58, %r47, %r57; - cvt.s64.s32 %rd19, %r58; - add.u64 %rd20, %rd19, %rd5; - mul.lo.u64 %rd21, %rd20, 4; - add.u64 %rd22, %rd17, %rd21; - .loc 16 155 0 - mul.lo.s32 %r59, %r56, %r38; - sub.s32 %r60, %r59, %r56; - .loc 16 156 0 - add.u64 %rd23, %rd13, %rd14; - st.global.s32 [%rd23+0], %r47; - bra.uni $Lt_3_15874; -$Lt_3_16130: - .loc 16 159 0 - ld.param.u64 %rd24, [__cudaparm_calc_neigh_list_cell_host_numj]; - add.u64 %rd25, %rd24, %rd13; - mul.lo.u64 %rd26, %rd5, 4; - sub.u64 %rd18, %rd25, %rd26; - .loc 16 160 0 - ld.param.u64 %rd27, [__cudaparm_calc_neigh_list_cell_host_nbor_list]; - ld.param.s32 %r61, [__cudaparm_calc_neigh_list_cell_neigh_bin_size]; - sub.s32 %r62, %r47, %r38; - mul.lo.s32 %r63, %r61, %r62; - cvt.s64.s32 %rd28, %r63; - mul.wide.s32 %rd29, %r63, 4; - add.u64 %rd22, %rd27, %rd29; - mov.s32 %r60, 0; -$Lt_3_15874: - .loc 16 165 0 - mov.s32 %r64, %r42; - @!%p2 bra $Lt_3_24066; - sub.s32 %r65, %r27, %r42; - add.s32 %r66, %r65, 1; - setp.le.s32 %p6, %r20, %r23; - add.s32 %r67, %r27, 1; - mov.s32 %r68, 0; - mov.s32 %r69, %r66; -$Lt_3_16898: - // Loop body line 165, nesting depth: 2, estimated iterations: unknown - .loc 16 166 0 - mov.s32 %r70, %r20; - @!%p6 bra $Lt_3_17154; - sub.s32 %r71, %r23, %r20; - add.s32 %r72, %r71, 1; - setp.ge.s32 %p7, %r33, %r30; - add.s32 %r73, %r23, 1; - mov.s32 %r74, %r72; -$Lt_3_17666: - // Loop body line 166, nesting depth: 3, estimated iterations: unknown - @!%p7 bra $Lt_3_17922; - sub.s32 %r75, %r33, %r30; - add.s32 %r76, %r75, 1; - mul.lo.s32 %r77, %r70, %r5; - mul.lo.s32 %r78, %r64, %r5; - mul.lo.s32 %r79, %r78, %r1; - add.s32 %r80, %r33, 1; - add.s32 %r81, %r77, %r79; - add.s32 %r82, %r81, %r30; - add.s32 %r83, %r80, %r81; - cvt.s64.s32 %rd30, %r82; - mul.wide.s32 %rd31, %r82, 4; - add.u64 %rd32, %rd1, %rd31; - mov.s32 %r84, %r76; -$Lt_3_18434: - // Loop body line 166, nesting depth: 4, estimated iterations: unknown - .loc 16 171 0 - ld.global.s32 %r85, [%rd32+0]; - .loc 16 172 0 - ld.global.s32 %r86, [%rd32+4]; - .loc 16 176 0 - sub.s32 %r87, %r86, %r85; - cvt.rn.f32.s32 %f15, %r87; - mov.f32 %f16, 0f43000000; // 128 - div.approx.ftz.f32 %f17, %f15, %f16; - cvt.rpi.ftz.f32.f32 %f18, %f17; - cvt.rzi.ftz.s32.f32 %r88, %f18; - mov.u32 %r89, 0; - setp.le.s32 %p8, %r88, %r89; - @%p8 bra $Lt_3_18690; - mov.s32 %r90, %r88; - mov.s32 %r91, 0; - setp.lt.s32 %p9, %r47, %r43; - mul.lo.s32 %r92, %r88, 128; - mov.s32 %r93, %r90; -$Lt_3_19202: - // Loop body line 176, nesting depth: 5, estimated iterations: unknown - sub.s32 %r94, %r87, %r91; - mov.s32 %r95, 128; - min.s32 %r96, %r94, %r95; - setp.le.s32 %p10, %r96, %r35; - @%p10 bra $Lt_3_19458; - .loc 16 183 0 - ld.param.u64 %rd33, [__cudaparm_calc_neigh_list_cell_cell_particle_id]; - add.s32 %r97, %r91, %r35; - add.s32 %r98, %r85, %r97; - cvt.s64.s32 %rd34, %r98; - mul.wide.s32 %rd35, %r98, 4; - add.u64 %rd36, %rd33, %rd35; - ld.global.s32 %r99, [%rd36+0]; - .loc 16 184 0 - cvt.s64.s32 %rd37, %r35; - mul.wide.s32 %rd38, %r35, 4; - add.u64 %rd39, %rd7, %rd38; - st.shared.s32 [%rd39+0], %r99; - .loc 16 185 0 - mov.u32 %r100, %r99; - mov.s32 %r101, 0; - mov.u32 %r102, %r101; - mov.s32 %r103, 0; - mov.u32 %r104, %r103; - mov.s32 %r105, 0; - mov.u32 %r106, %r105; - tex.1d.v4.f32.s32 {%f19,%f20,%f21,%f22},[neigh_tex,{%r100,%r102,%r104,%r106}]; - mov.f32 %f23, %f19; - mov.f32 %f24, %f20; - mov.f32 %f25, %f21; - .loc 16 186 0 - mul.lo.u64 %rd40, %rd37, 16; - add.u64 %rd41, %rd6, %rd40; - st.shared.v2.f32 [%rd41+0], {%f23,%f24}; - .loc 16 188 0 - st.shared.f32 [%rd41+8], %f25; -$Lt_3_19458: - .loc 16 190 0 - bar.sync 0; - @!%p9 bra $Lt_3_20482; - mov.u32 %r107, 0; - setp.le.s32 %p11, %r96, %r107; - @%p11 bra $Lt_3_20482; - mov.s32 %r108, %r96; - mov.s64 %rd42, 0; - ld.param.f32 %f26, [__cudaparm_calc_neigh_list_cell_cell_size]; - mul.ftz.f32 %f27, %f26, %f26; - mov.s64 %rd43, %rd6; - mov.f32 %f28, %f14; - mov.f32 %f29, %f13; - mov.f32 %f30, %f12; - mov.s32 %r109, 0; - mov.s32 %r110, %r108; -$Lt_3_20994: - // Loop body line 190, nesting depth: 6, estimated iterations: unknown - ld.shared.v4.f32 {%f31,%f32,%f33,_}, [%rd43+0]; - .loc 16 196 0 - sub.ftz.f32 %f34, %f30, %f31; - .loc 16 197 0 - sub.ftz.f32 %f35, %f29, %f32; - .loc 16 198 0 - sub.ftz.f32 %f36, %f28, %f33; - .loc 16 195 0 - mul.ftz.f32 %f37, %f35, %f35; - fma.rn.ftz.f32 %f38, %f34, %f34, %f37; - fma.rn.ftz.f32 %f39, %f36, %f36, %f38; - setp.gt.ftz.f32 %p12, %f27, %f39; - @!%p12 bra $Lt_3_25346; - cvt.ftz.f64.f32 %fd1, %f39; - mov.f64 %fd2, 0d3ee4f8b588e368f1; // 1e-05 - setp.gt.f64 %p13, %fd1, %fd2; - @!%p13 bra $Lt_3_25346; - .loc 16 202 0 - add.s32 %r68, %r68, 1; - ld.param.s32 %r111, [__cudaparm_calc_neigh_list_cell_neigh_bin_size]; - setp.lt.s32 %p14, %r111, %r68; - @%p14 bra $Lt_3_25346; - .loc 16 204 0 - mul.lo.u64 %rd44, %rd42, 4; - add.u64 %rd45, %rd7, %rd44; - ld.shared.s32 %r112, [%rd45+0]; - st.global.s32 [%rd22+0], %r112; - cvt.s64.s32 %rd46, %r60; - mul.wide.s32 %rd47, %r60, 4; - add.u64 %rd48, %rd22, %rd47; - add.u64 %rd49, %rd48, 4; - add.u64 %rd50, %rd22, 4; - ld.param.s32 %r113, [__cudaparm_calc_neigh_list_cell_t_per_atom]; - sub.s32 %r114, %r113, 1; - and.b32 %r115, %r68, %r114; - mov.s32 %r116, 0; - setp.eq.s32 %p15, %r115, %r116; - selp.u64 %rd22, %rd49, %rd50, %p15; -$Lt_3_25346: -$L_3_13570: - .loc 16 202 0 - add.s32 %r109, %r109, 1; - add.s64 %rd42, %rd42, 1; - add.u64 %rd43, %rd43, 16; - setp.ne.s32 %p16, %r96, %r109; - @%p16 bra $Lt_3_20994; -$Lt_3_20482: -$Lt_3_19970: - .loc 16 212 0 - bar.sync 0; - add.s32 %r91, %r91, 128; - setp.ne.s32 %p17, %r91, %r92; - @%p17 bra $Lt_3_19202; -$Lt_3_18690: - add.s32 %r82, %r82, 1; - add.u64 %rd32, %rd32, 4; - setp.ne.s32 %p18, %r82, %r83; - @%p18 bra $Lt_3_18434; -$Lt_3_17922: - add.s32 %r70, %r70, 1; - setp.ne.s32 %p19, %r73, %r70; - @%p19 bra $Lt_3_17666; -$Lt_3_17154: - add.s32 %r64, %r64, 1; - setp.ne.s32 %p20, %r67, %r64; - @%p20 bra $Lt_3_16898; - bra.uni $Lt_3_16386; -$Lt_3_24066: - mov.s32 %r68, 0; -$Lt_3_16386: - @!%p4 bra $Lt_3_23042; - .loc 16 218 0 - st.global.s32 [%rd18+0], %r68; -$Lt_3_23042: - add.s32 %r45, %r45, 1; - add.u32 %r37, %r37, %r15; - add.s32 %r40, %r40, %r15; - setp.ne.s32 %p21, %r16, %r45; - @%p21 bra $Lt_3_14594; -$Lt_3_14082: - .loc 16 220 0 - exit; -$LDWend_calc_neigh_list_cell: - } // calc_neigh_list_cell - - .entry kernel_special ( - .param .u64 __cudaparm_kernel_special_dev_nbor, - .param .u64 __cudaparm_kernel_special_host_nbor_list, - .param .u64 __cudaparm_kernel_special_host_numj, - .param .u64 __cudaparm_kernel_special_tag, - .param .u64 __cudaparm_kernel_special_nspecial, - .param .u64 __cudaparm_kernel_special_special, - .param .s32 __cudaparm_kernel_special_inum, - .param .s32 __cudaparm_kernel_special_nt, - .param .s32 __cudaparm_kernel_special_max_nbors, - .param .s32 __cudaparm_kernel_special_t_per_atom) - { - .reg .u32 %r<45>; - .reg .u64 %rd<45>; - .reg .pred %p<11>; - .loc 16 226 0 -$LDWbegin_kernel_special: - ld.param.s32 %r1, [__cudaparm_kernel_special_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_special_nt]; - setp.ge.s32 %p1, %r8, %r9; - @%p1 bra $Lt_4_6146; - .loc 16 236 0 - ld.param.u64 %rd1, [__cudaparm_kernel_special_nspecial]; - mul.lo.s32 %r10, %r8, 3; - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - add.u64 %rd4, %rd1, %rd3; - ld.global.s32 %r11, [%rd4+0]; - .loc 16 237 0 - ld.global.s32 %r12, [%rd4+4]; - .loc 16 238 0 - ld.global.s32 %r13, [%rd4+8]; - ld.param.s32 %r14, [__cudaparm_kernel_special_inum]; - setp.ge.s32 %p2, %r8, %r14; - @%p2 bra $Lt_4_6914; - .loc 16 244 0 - ld.param.u64 %rd5, [__cudaparm_kernel_special_dev_nbor]; - cvt.s64.s32 %rd6, %r8; - cvt.s64.s32 %rd7, %r14; - add.u64 %rd8, %rd6, %rd7; - mul.lo.u64 %rd9, %rd8, 4; - add.u64 %rd10, %rd5, %rd9; - ld.global.s32 %r15, [%rd10+0]; - .loc 16 246 0 - mul.lo.s32 %r16, %r14, %r1; - mov.s32 %r17, %r16; - .loc 16 248 0 - sub.s32 %r18, %r1, 1; - mul.lo.s32 %r19, %r18, %r8; - add.s32 %r20, %r14, %r19; - cvt.s64.s32 %rd11, %r20; - mul.wide.s32 %rd12, %r20, 4; - add.u64 %rd13, %rd10, %rd12; - and.b32 %r21, %r18, %r15; - cvt.s64.s32 %rd14, %r21; - div.s32 %r22, %r15, %r1; - mul.lo.s32 %r23, %r16, %r22; - cvt.s64.s32 %rd15, %r23; - add.u64 %rd16, %rd14, %rd15; - mul.lo.u64 %rd17, %rd16, 4; - add.u64 %rd18, %rd13, %rd17; - .loc 16 249 0 - and.b32 %r24, %r18, %r2; - cvt.s64.s32 %rd19, %r24; - mul.wide.s32 %rd20, %r24, 4; - add.u64 %rd21, %rd13, %rd20; - bra.uni $Lt_4_6658; -$Lt_4_6914: - .loc 16 252 0 - sub.s32 %r25, %r8, %r14; - ld.param.u64 %rd22, [__cudaparm_kernel_special_host_nbor_list]; - ld.param.s32 %r26, [__cudaparm_kernel_special_max_nbors]; - mul.lo.s32 %r27, %r26, %r25; - cvt.s64.s32 %rd23, %r27; - mul.wide.s32 %rd24, %r27, 4; - add.u64 %rd25, %rd22, %rd24; - mov.s64 %rd21, %rd25; - .loc 16 254 0 - ld.param.u64 %rd26, [__cudaparm_kernel_special_host_numj]; - cvt.s64.s32 %rd27, %r25; - mul.wide.s32 %rd28, %r25, 4; - add.u64 %rd29, %rd26, %rd28; - ld.global.s32 %r28, [%rd29+0]; - cvt.s64.s32 %rd30, %r28; - mul.wide.s32 %rd31, %r28, 4; - add.u64 %rd18, %rd25, %rd31; - mov.s32 %r17, 1; -$Lt_4_6658: - setp.ge.u64 %p3, %rd21, %rd18; - @%p3 bra $Lt_4_7170; - mov.s32 %r29, 0; - setp.gt.s32 %p4, %r13, %r29; - cvt.s64.s32 %rd32, %r17; - ld.param.u64 %rd33, [__cudaparm_kernel_special_tag]; -$Lt_4_7682: - // Loop body line 254, nesting depth: 1, estimated iterations: unknown - .loc 16 258 0 - ld.global.s32 %r30, [%rd21+0]; - .loc 16 259 0 - cvt.s64.s32 %rd34, %r30; - mul.wide.s32 %rd35, %r30, 4; - add.u64 %rd36, %rd33, %rd35; - ld.global.s32 %r31, [%rd36+0]; - @!%p4 bra $Lt_4_7938; - mov.s32 %r32, %r13; - cvt.s64.s32 %rd37, %r8; - cvt.s64.s32 %rd38, %r9; - mul.wide.s32 %rd39, %r9, 4; - ld.param.u64 %rd40, [__cudaparm_kernel_special_special]; - mul.wide.s32 %rd41, %r8, 4; - add.u64 %rd42, %rd40, %rd41; - mov.s32 %r33, 0; - mov.s32 %r34, %r32; -$Lt_4_8450: - // Loop body line 259, nesting depth: 1, estimated iterations: unknown - ld.global.s32 %r35, [%rd42+0]; - setp.ne.s32 %p5, %r35, %r31; - @%p5 bra $Lt_4_8706; - .loc 16 269 0 - setp.le.s32 %p6, %r11, %r33; - mov.s32 %r36, 3; - mov.s32 %r37, 2; - selp.s32 %r38, %r36, %r37, %p6; - mov.s32 %r39, 2; - mov.s32 %r40, 1; - selp.s32 %r41, %r39, %r40, %p6; - setp.le.s32 %p7, %r12, %r33; - selp.s32 %r42, %r38, %r41, %p7; - shl.b32 %r43, %r42, 30; - xor.b32 %r30, %r30, %r43; - .loc 16 270 0 - st.global.s32 [%rd21+0], %r30; -$Lt_4_8706: - add.s32 %r33, %r33, 1; - add.u64 %rd42, %rd39, %rd42; - setp.ne.s32 %p8, %r13, %r33; - @%p8 bra $Lt_4_8450; -$Lt_4_7938: - .loc 16 257 0 - mul.lo.u64 %rd43, %rd32, 4; - add.u64 %rd21, %rd21, %rd43; - setp.lt.u64 %p9, %rd21, %rd18; - @%p9 bra $Lt_4_7682; -$Lt_4_7170: -$Lt_4_6146: - .loc 16 276 0 - exit; -$LDWend_kernel_special: - } // kernel_special - diff --git a/lib/gpu/neighbor_gpu_ptx.h b/lib/gpu/neighbor_gpu_ptx.h deleted file mode 100644 index 5080ff7426..0000000000 --- a/lib/gpu/neighbor_gpu_ptx.h +++ /dev/null @@ -1,809 +0,0 @@ -const char * neighbor_gpu = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .global .texref neigh_tex;\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 .u32 %r<25>;\n" -" .reg .u64 %rd<8>;\n" -" .reg .f32 %f<35>;\n" -" .reg .f64 %fd<11>;\n" -" .reg .pred %p<3>;\n" -" .loc 16 29 0\n" -"$LDWbegin_calc_cell_id:\n" -" mov.u32 %r1, %tid.x;\n" -" mov.u32 %r2, %ctaid.x;\n" -" mov.u32 %r3, %ntid.x;\n" -" mul.lo.u32 %r4, %r2, %r3;\n" -" add.u32 %r5, %r1, %r4;\n" -" ld.param.s32 %r6, [__cudaparm_calc_cell_id_nall];\n" -" setp.le.s32 %p1, %r6, %r5;\n" -" @%p1 bra $Lt_0_1026;\n" -" .loc 16 33 0\n" -" mov.u32 %r7, %r5;\n" -" mov.s32 %r8, 0;\n" -" mov.u32 %r9, %r8;\n" -" mov.s32 %r10, 0;\n" -" mov.u32 %r11, %r10;\n" -" mov.s32 %r12, 0;\n" -" mov.u32 %r13, %r12;\n" -" tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[neigh_tex,{%r7,%r9,%r11,%r13}];\n" -" mov.f32 %f5, %f1;\n" -" mov.f32 %f6, %f2;\n" -" mov.f32 %f7, %f3;\n" -" .loc 16 46 0\n" -" ld.param.f32 %f8, [__cudaparm_calc_cell_id_cell_size];\n" -" neg.ftz.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.s32 %r14, [__cudaparm_calc_cell_id_ncellx];\n" -" ld.param.s32 %r15, [__cudaparm_calc_cell_id_ncelly];\n" -" ld.param.f32 %f13, [__cudaparm_calc_cell_id_boxhi2];\n" -" sub.ftz.f32 %f14, %f13, %f11;\n" -" add.ftz.f32 %f15, %f8, %f14;\n" -" sub.ftz.f32 %f16, %f7, %f11;\n" -" max.ftz.f32 %f17, %f9, %f16;\n" -" min.ftz.f32 %f18, %f15, %f17;\n" -" div.approx.ftz.f32 %f19, %f18, %f8;\n" -" cvt.ftz.f64.f32 %fd1, %f19;\n" -" mov.f64 %fd2, 0d3ff0000000000000; \n" -" add.f64 %fd3, %fd1, %fd2;\n" -" cvt.rzi.u32.f64 %r16, %fd3;\n" -" mul.lo.u32 %r17, %r14, %r16;\n" -" mul.lo.u32 %r18, %r15, %r17;\n" -" ld.param.f32 %f20, [__cudaparm_calc_cell_id_boxhi1];\n" -" sub.ftz.f32 %f21, %f20, %f12;\n" -" add.ftz.f32 %f22, %f8, %f21;\n" -" sub.ftz.f32 %f23, %f6, %f12;\n" -" max.ftz.f32 %f24, %f9, %f23;\n" -" min.ftz.f32 %f25, %f22, %f24;\n" -" div.approx.ftz.f32 %f26, %f25, %f8;\n" -" cvt.ftz.f64.f32 %fd4, %f26;\n" -" mov.f64 %fd5, 0d3ff0000000000000; \n" -" add.f64 %fd6, %fd4, %fd5;\n" -" cvt.rzi.u32.f64 %r19, %fd6;\n" -" mul.lo.u32 %r20, %r14, %r19;\n" -" add.u32 %r21, %r18, %r20;\n" -" ld.param.f32 %f27, [__cudaparm_calc_cell_id_boxhi0];\n" -" sub.ftz.f32 %f28, %f27, %f10;\n" -" add.ftz.f32 %f29, %f8, %f28;\n" -" sub.ftz.f32 %f30, %f5, %f10;\n" -" max.ftz.f32 %f31, %f9, %f30;\n" -" min.ftz.f32 %f32, %f29, %f31;\n" -" div.approx.ftz.f32 %f33, %f32, %f8;\n" -" cvt.ftz.f64.f32 %fd7, %f33;\n" -" mov.f64 %fd8, 0d3ff0000000000000; \n" -" add.f64 %fd9, %fd7, %fd8;\n" -" cvt.rzi.u32.f64 %r22, %fd9;\n" -" add.u32 %r23, %r21, %r22;\n" -" .loc 16 50 0\n" -" cvt.s64.s32 %rd1, %r5;\n" -" mul.wide.s32 %rd2, %r5, 4;\n" -" ld.param.u64 %rd3, [__cudaparm_calc_cell_id_cell_id];\n" -" add.u64 %rd4, %rd3, %rd2;\n" -" st.global.u32 [%rd4+0], %r23;\n" -" .loc 16 51 0\n" -" ld.param.u64 %rd5, [__cudaparm_calc_cell_id_particle_id];\n" -" add.u64 %rd6, %rd5, %rd2;\n" -" st.global.s32 [%rd6+0], %r5;\n" -"$Lt_0_1026:\n" -" .loc 16 53 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 .u32 %r<33>;\n" -" .reg .u64 %rd<15>;\n" -" .reg .pred %p<13>;\n" -" .loc 16 56 0\n" -"$LDWbegin_kernel_calc_cell_counts:\n" -" mov.u32 %r1, %ctaid.x;\n" -" mov.u32 %r2, %ntid.x;\n" -" mul.lo.u32 %r3, %r1, %r2;\n" -" mov.u32 %r4, %tid.x;\n" -" add.u32 %r5, %r4, %r3;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_calc_cell_counts_nall];\n" -" setp.gt.s32 %p1, %r6, %r5;\n" -" @!%p1 bra $Lt_1_7426;\n" -" .loc 16 59 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_calc_cell_counts_cell_id];\n" -" cvt.s64.s32 %rd2, %r5;\n" -" mul.wide.s32 %rd3, %r5, 4;\n" -" add.u64 %rd4, %rd1, %rd3;\n" -" ld.global.u32 %r7, [%rd4+0];\n" -" mov.u32 %r8, 0;\n" -" setp.ne.s32 %p2, %r5, %r8;\n" -" @%p2 bra $Lt_1_7938;\n" -" add.s32 %r9, %r7, 1;\n" -" mov.u32 %r10, 0;\n" -" setp.le.s32 %p3, %r9, %r10;\n" -" @%p3 bra $Lt_1_8450;\n" -" mov.s32 %r11, %r9;\n" -" ld.param.u64 %rd5, [__cudaparm_kernel_calc_cell_counts_cell_counts];\n" -" mov.s32 %r12, 0;\n" -" mov.s32 %r13, %r11;\n" -"$Lt_1_8962:\n" -" .loc 16 64 0\n" -" mov.s32 %r14, 0;\n" -" st.global.s32 [%rd5+0], %r14;\n" -" add.s32 %r12, %r12, 1;\n" -" add.u64 %rd5, %rd5, 4;\n" -" setp.ne.s32 %p4, %r9, %r12;\n" -" @%p4 bra $Lt_1_8962;\n" -"$Lt_1_8450:\n" -"$Lt_1_7938:\n" -" sub.s32 %r15, %r6, 1;\n" -" setp.ne.s32 %p5, %r5, %r15;\n" -" @%p5 bra $Lt_1_9474;\n" -" .loc 16 67 0\n" -" add.s32 %r9, %r7, 1;\n" -" mov.s32 %r16, %r9;\n" -" ld.param.s32 %r17, [__cudaparm_kernel_calc_cell_counts_ncell];\n" -" setp.gt.s32 %p6, %r9, %r17;\n" -" @%p6 bra $Lt_1_9986;\n" -" sub.s32 %r18, %r17, %r7;\n" -" add.s32 %r19, %r17, 1;\n" -" ld.param.u64 %rd6, [__cudaparm_kernel_calc_cell_counts_cell_counts];\n" -" cvt.s64.s32 %rd7, %r9;\n" -" mul.wide.s32 %rd8, %r9, 4;\n" -" add.u64 %rd9, %rd6, %rd8;\n" -" mov.s32 %r20, %r18;\n" -"$Lt_1_10498:\n" -" .loc 16 68 0\n" -" st.global.s32 [%rd9+0], %r6;\n" -" add.s32 %r16, %r16, 1;\n" -" add.u64 %rd9, %rd9, 4;\n" -" setp.ne.s32 %p7, %r19, %r16;\n" -" @%p7 bra $Lt_1_10498;\n" -"$Lt_1_9986:\n" -"$Lt_1_9474:\n" -" selp.s32 %r21, 1, 0, %p1;\n" -" mov.s32 %r22, 0;\n" -" set.gt.u32.s32 %r23, %r5, %r22;\n" -" neg.s32 %r24, %r23;\n" -" and.b32 %r25, %r21, %r24;\n" -" mov.u32 %r26, 0;\n" -" setp.eq.s32 %p8, %r25, %r26;\n" -" @%p8 bra $Lt_1_11010;\n" -" .loc 16 72 0\n" -" ld.global.u32 %r27, [%rd4+-4];\n" -" setp.eq.s32 %p9, %r7, %r27;\n" -" @%p9 bra $Lt_1_11522;\n" -" .loc 16 74 0\n" -" add.s32 %r28, %r27, 1;\n" -" mov.s32 %r29, %r28;\n" -" setp.gt.s32 %p10, %r28, %r7;\n" -" @%p10 bra $Lt_1_12034;\n" -" sub.s32 %r30, %r7, %r27;\n" -" add.s32 %r9, %r7, 1;\n" -" ld.param.u64 %rd10, [__cudaparm_kernel_calc_cell_counts_cell_counts];\n" -" cvt.s64.s32 %rd11, %r28;\n" -" mul.wide.s32 %rd12, %r28, 4;\n" -" add.u64 %rd13, %rd10, %rd12;\n" -" mov.s32 %r31, %r30;\n" -"$Lt_1_12546:\n" -" .loc 16 75 0\n" -" st.global.s32 [%rd13+0], %r5;\n" -" add.s32 %r29, %r29, 1;\n" -" add.u64 %rd13, %rd13, 4;\n" -" setp.ne.s32 %p11, %r9, %r29;\n" -" @%p11 bra $Lt_1_12546;\n" -"$Lt_1_12034:\n" -"$Lt_1_11522:\n" -"$Lt_1_11010:\n" -"$Lt_1_7426:\n" -" .loc 16 79 0\n" -" exit;\n" -"$LDWend_kernel_calc_cell_counts:\n" -" }\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 .u32 %r<32>;\n" -" .reg .u64 %rd<23>;\n" -" .reg .f32 %f<4>;\n" -" .reg .pred %p<4>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32571_32_non_const_block112[288];\n" -" .loc 16 86 0\n" -"$LDWbegin_transpose:\n" -" mov.u32 %r1, %ctaid.x;\n" -" mul.lo.u32 %r2, %r1, 8;\n" -" mov.u32 %r3, %ctaid.y;\n" -" mul.lo.u32 %r4, %r3, 8;\n" -" mov.u32 %r5, %tid.x;\n" -" add.u32 %r6, %r2, %r5;\n" -" mov.u32 %r7, %tid.y;\n" -" add.u32 %r8, %r4, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_transpose_rows_in];\n" -" ld.param.s32 %r10, [__cudaparm_transpose_columns_in];\n" -" set.gt.u32.u32 %r11, %r9, %r8;\n" -" neg.s32 %r12, %r11;\n" -" set.gt.u32.u32 %r13, %r10, %r6;\n" -" neg.s32 %r14, %r13;\n" -" and.b32 %r15, %r12, %r14;\n" -" mov.u32 %r16, 0;\n" -" setp.eq.s32 %p1, %r15, %r16;\n" -" @%p1 bra $Lt_2_2306;\n" -" .loc 16 98 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32571_32_non_const_block112;\n" -" ld.param.u64 %rd2, [__cudaparm_transpose_in];\n" -" mul.lo.u32 %r17, %r10, %r8;\n" -" add.u32 %r18, %r6, %r17;\n" -" cvt.u64.u32 %rd3, %r18;\n" -" mul.wide.u32 %rd4, %r18, 4;\n" -" add.u64 %rd5, %rd2, %rd4;\n" -" ld.global.s32 %r19, [%rd5+0];\n" -" cvt.rn.f32.s32 %f1, %r19;\n" -" cvt.u64.u32 %rd6, %r5;\n" -" cvt.u64.u32 %rd7, %r7;\n" -" mul.wide.u32 %rd8, %r7, 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_2_2306:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32571_32_non_const_block112;\n" -" .loc 16 100 0\n" -" bar.sync 0;\n" -" add.u32 %r20, %r2, %r7;\n" -" add.u32 %r21, %r4, %r5;\n" -" set.gt.u32.u32 %r22, %r9, %r21;\n" -" neg.s32 %r23, %r22;\n" -" set.gt.u32.u32 %r24, %r10, %r20;\n" -" neg.s32 %r25, %r24;\n" -" and.b32 %r26, %r23, %r25;\n" -" mov.u32 %r27, 0;\n" -" setp.eq.s32 %p2, %r26, %r27;\n" -" @%p2 bra $Lt_2_2818;\n" -" .loc 16 105 0\n" -" cvt.u64.u32 %rd12, %r7;\n" -" cvt.u64.u32 %rd13, %r5;\n" -" mul.wide.u32 %rd14, %r5, 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.ftz.s32.f32 %r28, %f2;\n" -" ld.param.u64 %rd18, [__cudaparm_transpose_out];\n" -" mul.lo.u32 %r29, %r9, %r20;\n" -" add.u32 %r30, %r21, %r29;\n" -" cvt.u64.u32 %rd19, %r30;\n" -" mul.wide.u32 %rd20, %r30, 4;\n" -" add.u64 %rd21, %rd18, %rd20;\n" -" st.global.s32 [%rd21+0], %r28;\n" -"$Lt_2_2818:\n" -" .loc 16 106 0\n" -" exit;\n" -"$LDWend_transpose:\n" -" }\n" -" .entry calc_neigh_list_cell (\n" -" .param .u64 __cudaparm_calc_neigh_list_cell_x_,\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 .u64 __cudaparm_calc_neigh_list_cell_host_numj,\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" -" .param .s32 __cudaparm_calc_neigh_list_cell_t_per_atom)\n" -" {\n" -" .reg .u32 %r<118>;\n" -" .reg .u64 %rd<52>;\n" -" .reg .f32 %f<41>;\n" -" .reg .f64 %fd<4>;\n" -" .reg .pred %p<23>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32609_34_non_const_pos_sh496[2048];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32608_31_non_const_cell_list_sh2544[512];\n" -" .loc 16 116 0\n" -"$LDWbegin_calc_neigh_list_cell:\n" -" .loc 16 128 0\n" -" ld.param.s32 %r1, [__cudaparm_calc_neigh_list_cell_ncelly];\n" -" mov.u32 %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.u32 %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.s64.s32 %rd2, %r11;\n" -" mul.wide.s32 %rd3, %r11, 4;\n" -" add.u64 %rd4, %rd1, %rd3;\n" -" ldu.global.s32 %r12, [%rd4+0];\n" -" .loc 16 129 0\n" -" ldu.global.s32 %r13, [%rd4+4];\n" -" .loc 16 137 0\n" -" sub.s32 %r14, %r13, %r12;\n" -" mov.u32 %r15, %ntid.x;\n" -" cvt.rn.f32.u32 %f1, %r15;\n" -" cvt.rn.f32.s32 %f2, %r14;\n" -" div.approx.ftz.f32 %f3, %f2, %f1;\n" -" cvt.rpi.ftz.f32.f32 %f4, %f3;\n" -" cvt.rzi.ftz.s32.f32 %r16, %f4;\n" -" mov.u32 %r17, 0;\n" -" setp.le.s32 %p1, %r16, %r17;\n" -" @%p1 bra $Lt_3_14082;\n" -" sub.s32 %r18, %r3, 1;\n" -" mov.s32 %r19, 0;\n" -" max.s32 %r20, %r18, %r19;\n" -" sub.s32 %r21, %r1, 1;\n" -" add.s32 %r22, %r3, 1;\n" -" min.s32 %r23, %r21, %r22;\n" -" ld.param.s32 %r24, [__cudaparm_calc_neigh_list_cell_ncellz];\n" -" sub.s32 %r25, %r24, 1;\n" -" add.s32 %r26, %r4, 1;\n" -" min.s32 %r27, %r25, %r26;\n" -" sub.s32 %r28, %r9, 1;\n" -" mov.s32 %r29, 0;\n" -" max.s32 %r30, %r28, %r29;\n" -" add.s32 %r31, %r9, 1;\n" -" sub.s32 %r32, %r5, 1;\n" -" min.s32 %r33, %r31, %r32;\n" -" mov.s32 %r34, %r16;\n" -" cvt.s32.u32 %r35, %tid.x;\n" -" add.s32 %r36, %r12, %r35;\n" -" mov.u32 %r37, 0;\n" -" ld.param.s32 %r38, [__cudaparm_calc_neigh_list_cell_inum];\n" -" cvt.s64.s32 %rd5, %r38;\n" -" sub.s32 %r39, %r4, 1;\n" -" mov.s32 %r40, %r36;\n" -" mov.s32 %r41, 0;\n" -" max.s32 %r42, %r39, %r41;\n" -" setp.ge.s32 %p2, %r27, %r42;\n" -" ld.param.s32 %r43, [__cudaparm_calc_neigh_list_cell_nt];\n" -" ld.param.s32 %r44, [__cudaparm_calc_neigh_list_cell_nall];\n" -" mov.s32 %r45, 0;\n" -" mov.u64 %rd6, __cuda___cuda_local_var_32609_34_non_const_pos_sh496;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32608_31_non_const_cell_list_sh2544;\n" -" mov.s32 %r46, %r34;\n" -"$Lt_3_14594:\n" -" .loc 16 140 0\n" -" mov.s32 %r47, %r44;\n" -" setp.ge.s32 %p3, %r40, %r13;\n" -" @%p3 bra $Lt_3_14850;\n" -" .loc 16 146 0\n" -" ld.param.u64 %rd8, [__cudaparm_calc_neigh_list_cell_cell_particle_id];\n" -" add.u32 %r48, %r36, %r37;\n" -" cvt.s64.s32 %rd9, %r48;\n" -" mul.wide.s32 %rd10, %r48, 4;\n" -" add.u64 %rd11, %rd8, %rd10;\n" -" ld.global.s32 %r47, [%rd11+0];\n" -"$Lt_3_14850:\n" -" setp.lt.s32 %p4, %r47, %r43;\n" -" @!%p4 bra $Lt_3_15362;\n" -" .loc 16 149 0\n" -" mov.u32 %r49, %r47;\n" -" mov.s32 %r50, 0;\n" -" mov.u32 %r51, %r50;\n" -" mov.s32 %r52, 0;\n" -" mov.u32 %r53, %r52;\n" -" mov.s32 %r54, 0;\n" -" mov.u32 %r55, %r54;\n" -" tex.1d.v4.f32.s32 {%f5,%f6,%f7,%f8},[neigh_tex,{%r49,%r51,%r53,%r55}];\n" -" mov.f32 %f9, %f5;\n" -" mov.f32 %f10, %f6;\n" -" mov.f32 %f11, %f7;\n" -" mov.f32 %f12, %f9;\n" -" mov.f32 %f13, %f10;\n" -" mov.f32 %f14, %f11;\n" -"$Lt_3_15362:\n" -" cvt.s64.s32 %rd12, %r47;\n" -" mul.wide.s32 %rd13, %r47, 4;\n" -" setp.ge.s32 %p5, %r47, %r38;\n" -" @%p5 bra $Lt_3_16130;\n" -" .loc 16 153 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" -" mov.s64 %rd18, %rd17;\n" -" .loc 16 154 0\n" -" ld.param.s32 %r56, [__cudaparm_calc_neigh_list_cell_t_per_atom];\n" -" sub.s32 %r57, %r56, 1;\n" -" mul.lo.s32 %r58, %r47, %r57;\n" -" cvt.s64.s32 %rd19, %r58;\n" -" add.u64 %rd20, %rd19, %rd5;\n" -" mul.lo.u64 %rd21, %rd20, 4;\n" -" add.u64 %rd22, %rd17, %rd21;\n" -" .loc 16 155 0\n" -" mul.lo.s32 %r59, %r56, %r38;\n" -" sub.s32 %r60, %r59, %r56;\n" -" .loc 16 156 0\n" -" add.u64 %rd23, %rd13, %rd14;\n" -" st.global.s32 [%rd23+0], %r47;\n" -" bra.uni $Lt_3_15874;\n" -"$Lt_3_16130:\n" -" .loc 16 159 0\n" -" ld.param.u64 %rd24, [__cudaparm_calc_neigh_list_cell_host_numj];\n" -" add.u64 %rd25, %rd24, %rd13;\n" -" mul.lo.u64 %rd26, %rd5, 4;\n" -" sub.u64 %rd18, %rd25, %rd26;\n" -" .loc 16 160 0\n" -" ld.param.u64 %rd27, [__cudaparm_calc_neigh_list_cell_host_nbor_list];\n" -" ld.param.s32 %r61, [__cudaparm_calc_neigh_list_cell_neigh_bin_size];\n" -" sub.s32 %r62, %r47, %r38;\n" -" mul.lo.s32 %r63, %r61, %r62;\n" -" cvt.s64.s32 %rd28, %r63;\n" -" mul.wide.s32 %rd29, %r63, 4;\n" -" add.u64 %rd22, %rd27, %rd29;\n" -" mov.s32 %r60, 0;\n" -"$Lt_3_15874:\n" -" .loc 16 165 0\n" -" mov.s32 %r64, %r42;\n" -" @!%p2 bra $Lt_3_24066;\n" -" sub.s32 %r65, %r27, %r42;\n" -" add.s32 %r66, %r65, 1;\n" -" setp.le.s32 %p6, %r20, %r23;\n" -" add.s32 %r67, %r27, 1;\n" -" mov.s32 %r68, 0;\n" -" mov.s32 %r69, %r66;\n" -"$Lt_3_16898:\n" -" .loc 16 166 0\n" -" mov.s32 %r70, %r20;\n" -" @!%p6 bra $Lt_3_17154;\n" -" sub.s32 %r71, %r23, %r20;\n" -" add.s32 %r72, %r71, 1;\n" -" setp.ge.s32 %p7, %r33, %r30;\n" -" add.s32 %r73, %r23, 1;\n" -" mov.s32 %r74, %r72;\n" -"$Lt_3_17666:\n" -" @!%p7 bra $Lt_3_17922;\n" -" sub.s32 %r75, %r33, %r30;\n" -" add.s32 %r76, %r75, 1;\n" -" mul.lo.s32 %r77, %r70, %r5;\n" -" mul.lo.s32 %r78, %r64, %r5;\n" -" mul.lo.s32 %r79, %r78, %r1;\n" -" add.s32 %r80, %r33, 1;\n" -" add.s32 %r81, %r77, %r79;\n" -" add.s32 %r82, %r81, %r30;\n" -" add.s32 %r83, %r80, %r81;\n" -" cvt.s64.s32 %rd30, %r82;\n" -" mul.wide.s32 %rd31, %r82, 4;\n" -" add.u64 %rd32, %rd1, %rd31;\n" -" mov.s32 %r84, %r76;\n" -"$Lt_3_18434:\n" -" .loc 16 171 0\n" -" ld.global.s32 %r85, [%rd32+0];\n" -" .loc 16 172 0\n" -" ld.global.s32 %r86, [%rd32+4];\n" -" .loc 16 176 0\n" -" sub.s32 %r87, %r86, %r85;\n" -" cvt.rn.f32.s32 %f15, %r87;\n" -" mov.f32 %f16, 0f43000000; \n" -" div.approx.ftz.f32 %f17, %f15, %f16;\n" -" cvt.rpi.ftz.f32.f32 %f18, %f17;\n" -" cvt.rzi.ftz.s32.f32 %r88, %f18;\n" -" mov.u32 %r89, 0;\n" -" setp.le.s32 %p8, %r88, %r89;\n" -" @%p8 bra $Lt_3_18690;\n" -" mov.s32 %r90, %r88;\n" -" mov.s32 %r91, 0;\n" -" setp.lt.s32 %p9, %r47, %r43;\n" -" mul.lo.s32 %r92, %r88, 128;\n" -" mov.s32 %r93, %r90;\n" -"$Lt_3_19202:\n" -" sub.s32 %r94, %r87, %r91;\n" -" mov.s32 %r95, 128;\n" -" min.s32 %r96, %r94, %r95;\n" -" setp.le.s32 %p10, %r96, %r35;\n" -" @%p10 bra $Lt_3_19458;\n" -" .loc 16 183 0\n" -" ld.param.u64 %rd33, [__cudaparm_calc_neigh_list_cell_cell_particle_id];\n" -" add.s32 %r97, %r91, %r35;\n" -" add.s32 %r98, %r85, %r97;\n" -" cvt.s64.s32 %rd34, %r98;\n" -" mul.wide.s32 %rd35, %r98, 4;\n" -" add.u64 %rd36, %rd33, %rd35;\n" -" ld.global.s32 %r99, [%rd36+0];\n" -" .loc 16 184 0\n" -" cvt.s64.s32 %rd37, %r35;\n" -" mul.wide.s32 %rd38, %r35, 4;\n" -" add.u64 %rd39, %rd7, %rd38;\n" -" st.shared.s32 [%rd39+0], %r99;\n" -" .loc 16 185 0\n" -" mov.u32 %r100, %r99;\n" -" mov.s32 %r101, 0;\n" -" mov.u32 %r102, %r101;\n" -" mov.s32 %r103, 0;\n" -" mov.u32 %r104, %r103;\n" -" mov.s32 %r105, 0;\n" -" mov.u32 %r106, %r105;\n" -" tex.1d.v4.f32.s32 {%f19,%f20,%f21,%f22},[neigh_tex,{%r100,%r102,%r104,%r106}];\n" -" mov.f32 %f23, %f19;\n" -" mov.f32 %f24, %f20;\n" -" mov.f32 %f25, %f21;\n" -" .loc 16 186 0\n" -" mul.lo.u64 %rd40, %rd37, 16;\n" -" add.u64 %rd41, %rd6, %rd40;\n" -" st.shared.v2.f32 [%rd41+0], {%f23,%f24};\n" -" .loc 16 188 0\n" -" st.shared.f32 [%rd41+8], %f25;\n" -"$Lt_3_19458:\n" -" .loc 16 190 0\n" -" bar.sync 0;\n" -" @!%p9 bra $Lt_3_20482;\n" -" mov.u32 %r107, 0;\n" -" setp.le.s32 %p11, %r96, %r107;\n" -" @%p11 bra $Lt_3_20482;\n" -" mov.s32 %r108, %r96;\n" -" mov.s64 %rd42, 0;\n" -" ld.param.f32 %f26, [__cudaparm_calc_neigh_list_cell_cell_size];\n" -" mul.ftz.f32 %f27, %f26, %f26;\n" -" mov.s64 %rd43, %rd6;\n" -" mov.f32 %f28, %f14;\n" -" mov.f32 %f29, %f13;\n" -" mov.f32 %f30, %f12;\n" -" mov.s32 %r109, 0;\n" -" mov.s32 %r110, %r108;\n" -"$Lt_3_20994:\n" -" ld.shared.v4.f32 {%f31,%f32,%f33,_}, [%rd43+0];\n" -" .loc 16 196 0\n" -" sub.ftz.f32 %f34, %f30, %f31;\n" -" .loc 16 197 0\n" -" sub.ftz.f32 %f35, %f29, %f32;\n" -" .loc 16 198 0\n" -" sub.ftz.f32 %f36, %f28, %f33;\n" -" .loc 16 195 0\n" -" mul.ftz.f32 %f37, %f35, %f35;\n" -" fma.rn.ftz.f32 %f38, %f34, %f34, %f37;\n" -" fma.rn.ftz.f32 %f39, %f36, %f36, %f38;\n" -" setp.gt.ftz.f32 %p12, %f27, %f39;\n" -" @!%p12 bra $Lt_3_25346;\n" -" cvt.ftz.f64.f32 %fd1, %f39;\n" -" mov.f64 %fd2, 0d3ee4f8b588e368f1; \n" -" setp.gt.f64 %p13, %fd1, %fd2;\n" -" @!%p13 bra $Lt_3_25346;\n" -" .loc 16 202 0\n" -" add.s32 %r68, %r68, 1;\n" -" ld.param.s32 %r111, [__cudaparm_calc_neigh_list_cell_neigh_bin_size];\n" -" setp.lt.s32 %p14, %r111, %r68;\n" -" @%p14 bra $Lt_3_25346;\n" -" .loc 16 204 0\n" -" mul.lo.u64 %rd44, %rd42, 4;\n" -" add.u64 %rd45, %rd7, %rd44;\n" -" ld.shared.s32 %r112, [%rd45+0];\n" -" st.global.s32 [%rd22+0], %r112;\n" -" cvt.s64.s32 %rd46, %r60;\n" -" mul.wide.s32 %rd47, %r60, 4;\n" -" add.u64 %rd48, %rd22, %rd47;\n" -" add.u64 %rd49, %rd48, 4;\n" -" add.u64 %rd50, %rd22, 4;\n" -" ld.param.s32 %r113, [__cudaparm_calc_neigh_list_cell_t_per_atom];\n" -" sub.s32 %r114, %r113, 1;\n" -" and.b32 %r115, %r68, %r114;\n" -" mov.s32 %r116, 0;\n" -" setp.eq.s32 %p15, %r115, %r116;\n" -" selp.u64 %rd22, %rd49, %rd50, %p15;\n" -"$Lt_3_25346:\n" -"$L_3_13570:\n" -" .loc 16 202 0\n" -" add.s32 %r109, %r109, 1;\n" -" add.s64 %rd42, %rd42, 1;\n" -" add.u64 %rd43, %rd43, 16;\n" -" setp.ne.s32 %p16, %r96, %r109;\n" -" @%p16 bra $Lt_3_20994;\n" -"$Lt_3_20482:\n" -"$Lt_3_19970:\n" -" .loc 16 212 0\n" -" bar.sync 0;\n" -" add.s32 %r91, %r91, 128;\n" -" setp.ne.s32 %p17, %r91, %r92;\n" -" @%p17 bra $Lt_3_19202;\n" -"$Lt_3_18690:\n" -" add.s32 %r82, %r82, 1;\n" -" add.u64 %rd32, %rd32, 4;\n" -" setp.ne.s32 %p18, %r82, %r83;\n" -" @%p18 bra $Lt_3_18434;\n" -"$Lt_3_17922:\n" -" add.s32 %r70, %r70, 1;\n" -" setp.ne.s32 %p19, %r73, %r70;\n" -" @%p19 bra $Lt_3_17666;\n" -"$Lt_3_17154:\n" -" add.s32 %r64, %r64, 1;\n" -" setp.ne.s32 %p20, %r67, %r64;\n" -" @%p20 bra $Lt_3_16898;\n" -" bra.uni $Lt_3_16386;\n" -"$Lt_3_24066:\n" -" mov.s32 %r68, 0;\n" -"$Lt_3_16386:\n" -" @!%p4 bra $Lt_3_23042;\n" -" .loc 16 218 0\n" -" st.global.s32 [%rd18+0], %r68;\n" -"$Lt_3_23042:\n" -" add.s32 %r45, %r45, 1;\n" -" add.u32 %r37, %r37, %r15;\n" -" add.s32 %r40, %r40, %r15;\n" -" setp.ne.s32 %p21, %r16, %r45;\n" -" @%p21 bra $Lt_3_14594;\n" -"$Lt_3_14082:\n" -" .loc 16 220 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_host_numj,\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_max_nbors,\n" -" .param .s32 __cudaparm_kernel_special_t_per_atom)\n" -" {\n" -" .reg .u32 %r<45>;\n" -" .reg .u64 %rd<45>;\n" -" .reg .pred %p<11>;\n" -" .loc 16 226 0\n" -"$LDWbegin_kernel_special:\n" -" ld.param.s32 %r1, [__cudaparm_kernel_special_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_special_nt];\n" -" setp.ge.s32 %p1, %r8, %r9;\n" -" @%p1 bra $Lt_4_6146;\n" -" .loc 16 236 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_special_nspecial];\n" -" mul.lo.s32 %r10, %r8, 3;\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" add.u64 %rd4, %rd1, %rd3;\n" -" ld.global.s32 %r11, [%rd4+0];\n" -" .loc 16 237 0\n" -" ld.global.s32 %r12, [%rd4+4];\n" -" .loc 16 238 0\n" -" ld.global.s32 %r13, [%rd4+8];\n" -" ld.param.s32 %r14, [__cudaparm_kernel_special_inum];\n" -" setp.ge.s32 %p2, %r8, %r14;\n" -" @%p2 bra $Lt_4_6914;\n" -" .loc 16 244 0\n" -" ld.param.u64 %rd5, [__cudaparm_kernel_special_dev_nbor];\n" -" cvt.s64.s32 %rd6, %r8;\n" -" cvt.s64.s32 %rd7, %r14;\n" -" add.u64 %rd8, %rd6, %rd7;\n" -" mul.lo.u64 %rd9, %rd8, 4;\n" -" add.u64 %rd10, %rd5, %rd9;\n" -" ld.global.s32 %r15, [%rd10+0];\n" -" .loc 16 246 0\n" -" mul.lo.s32 %r16, %r14, %r1;\n" -" mov.s32 %r17, %r16;\n" -" .loc 16 248 0\n" -" sub.s32 %r18, %r1, 1;\n" -" mul.lo.s32 %r19, %r18, %r8;\n" -" add.s32 %r20, %r14, %r19;\n" -" cvt.s64.s32 %rd11, %r20;\n" -" mul.wide.s32 %rd12, %r20, 4;\n" -" add.u64 %rd13, %rd10, %rd12;\n" -" and.b32 %r21, %r18, %r15;\n" -" cvt.s64.s32 %rd14, %r21;\n" -" div.s32 %r22, %r15, %r1;\n" -" mul.lo.s32 %r23, %r16, %r22;\n" -" cvt.s64.s32 %rd15, %r23;\n" -" add.u64 %rd16, %rd14, %rd15;\n" -" mul.lo.u64 %rd17, %rd16, 4;\n" -" add.u64 %rd18, %rd13, %rd17;\n" -" .loc 16 249 0\n" -" and.b32 %r24, %r18, %r2;\n" -" cvt.s64.s32 %rd19, %r24;\n" -" mul.wide.s32 %rd20, %r24, 4;\n" -" add.u64 %rd21, %rd13, %rd20;\n" -" bra.uni $Lt_4_6658;\n" -"$Lt_4_6914:\n" -" .loc 16 252 0\n" -" sub.s32 %r25, %r8, %r14;\n" -" ld.param.u64 %rd22, [__cudaparm_kernel_special_host_nbor_list];\n" -" ld.param.s32 %r26, [__cudaparm_kernel_special_max_nbors];\n" -" mul.lo.s32 %r27, %r26, %r25;\n" -" cvt.s64.s32 %rd23, %r27;\n" -" mul.wide.s32 %rd24, %r27, 4;\n" -" add.u64 %rd25, %rd22, %rd24;\n" -" mov.s64 %rd21, %rd25;\n" -" .loc 16 254 0\n" -" ld.param.u64 %rd26, [__cudaparm_kernel_special_host_numj];\n" -" cvt.s64.s32 %rd27, %r25;\n" -" mul.wide.s32 %rd28, %r25, 4;\n" -" add.u64 %rd29, %rd26, %rd28;\n" -" ld.global.s32 %r28, [%rd29+0];\n" -" cvt.s64.s32 %rd30, %r28;\n" -" mul.wide.s32 %rd31, %r28, 4;\n" -" add.u64 %rd18, %rd25, %rd31;\n" -" mov.s32 %r17, 1;\n" -"$Lt_4_6658:\n" -" setp.ge.u64 %p3, %rd21, %rd18;\n" -" @%p3 bra $Lt_4_7170;\n" -" mov.s32 %r29, 0;\n" -" setp.gt.s32 %p4, %r13, %r29;\n" -" cvt.s64.s32 %rd32, %r17;\n" -" ld.param.u64 %rd33, [__cudaparm_kernel_special_tag];\n" -"$Lt_4_7682:\n" -" .loc 16 258 0\n" -" ld.global.s32 %r30, [%rd21+0];\n" -" .loc 16 259 0\n" -" cvt.s64.s32 %rd34, %r30;\n" -" mul.wide.s32 %rd35, %r30, 4;\n" -" add.u64 %rd36, %rd33, %rd35;\n" -" ld.global.s32 %r31, [%rd36+0];\n" -" @!%p4 bra $Lt_4_7938;\n" -" mov.s32 %r32, %r13;\n" -" cvt.s64.s32 %rd37, %r8;\n" -" cvt.s64.s32 %rd38, %r9;\n" -" mul.wide.s32 %rd39, %r9, 4;\n" -" ld.param.u64 %rd40, [__cudaparm_kernel_special_special];\n" -" mul.wide.s32 %rd41, %r8, 4;\n" -" add.u64 %rd42, %rd40, %rd41;\n" -" mov.s32 %r33, 0;\n" -" mov.s32 %r34, %r32;\n" -"$Lt_4_8450:\n" -" ld.global.s32 %r35, [%rd42+0];\n" -" setp.ne.s32 %p5, %r35, %r31;\n" -" @%p5 bra $Lt_4_8706;\n" -" .loc 16 269 0\n" -" setp.le.s32 %p6, %r11, %r33;\n" -" mov.s32 %r36, 3;\n" -" mov.s32 %r37, 2;\n" -" selp.s32 %r38, %r36, %r37, %p6;\n" -" mov.s32 %r39, 2;\n" -" mov.s32 %r40, 1;\n" -" selp.s32 %r41, %r39, %r40, %p6;\n" -" setp.le.s32 %p7, %r12, %r33;\n" -" selp.s32 %r42, %r38, %r41, %p7;\n" -" shl.b32 %r43, %r42, 30;\n" -" xor.b32 %r30, %r30, %r43;\n" -" .loc 16 270 0\n" -" st.global.s32 [%rd21+0], %r30;\n" -"$Lt_4_8706:\n" -" add.s32 %r33, %r33, 1;\n" -" add.u64 %rd42, %rd39, %rd42;\n" -" setp.ne.s32 %p8, %r13, %r33;\n" -" @%p8 bra $Lt_4_8450;\n" -"$Lt_4_7938:\n" -" .loc 16 257 0\n" -" mul.lo.u64 %rd43, %rd32, 4;\n" -" add.u64 %rd21, %rd21, %rd43;\n" -" setp.lt.u64 %p9, %rd21, %rd18;\n" -" @%p9 bra $Lt_4_7682;\n" -"$Lt_4_7170:\n" -"$Lt_4_6146:\n" -" .loc 16 276 0\n" -" exit;\n" -"$LDWend_kernel_special:\n" -" }\n" -; diff --git a/lib/gpu/pppm_d.ptx b/lib/gpu/pppm_d.ptx deleted file mode 100644 index 9f1eb71503..0000000000 --- a/lib/gpu/pppm_d.ptx +++ /dev/null @@ -1,900 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009b29_00000000-9_lal_pppm.cpp3.i (/home/sjplimp/ccBI#.sIoydv) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009b29_00000000-8_lal_pppm.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 17 "lal_pppm.cu" - .file 18 "/usr/local/cuda/include/common_functions.h" - .file 19 "/usr/local/cuda/include/math_functions.h" - .file 20 "/usr/local/cuda/include/math_constants.h" - .file 21 "/usr/local/cuda/include/device_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry particle_map ( - .param .u64 __cudaparm_particle_map_x_, - .param .u64 __cudaparm_particle_map_q_, - .param .f64 __cudaparm_particle_map_delvolinv, - .param .s32 __cudaparm_particle_map_nlocal, - .param .u64 __cudaparm_particle_map_counts, - .param .u64 __cudaparm_particle_map_ans, - .param .f64 __cudaparm_particle_map_b_lo_x, - .param .f64 __cudaparm_particle_map_b_lo_y, - .param .f64 __cudaparm_particle_map_b_lo_z, - .param .f64 __cudaparm_particle_map_delxinv, - .param .f64 __cudaparm_particle_map_delyinv, - .param .f64 __cudaparm_particle_map_delzinv, - .param .s32 __cudaparm_particle_map_nlocal_x, - .param .s32 __cudaparm_particle_map_nlocal_y, - .param .s32 __cudaparm_particle_map_nlocal_z, - .param .s32 __cudaparm_particle_map_atom_stride, - .param .s32 __cudaparm_particle_map_max_atoms, - .param .u64 __cudaparm_particle_map_error) - { - .reg .u32 %r<50>; - .reg .u64 %rd<12>; - .reg .f32 %f<14>; - .reg .f64 %fd<36>; - .reg .pred %p<11>; - .loc 17 50 0 -$LDWbegin_particle_map: - cvt.s32.u32 %r1, %ntid.x; - cvt.s32.u32 %r2, %ctaid.x; - mul24.lo.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %nctaid.x; - mul24.lo.s32 %r5, %r4, %r1; - mov.u32 %r6, %tid.x; - add.u32 %r7, %r3, %r6; - sub.s32 %r8, %r5, 1; - mul.lo.s32 %r9, %r7, 64; - div.s32 %r10, %r9, %r5; - mul.lo.s32 %r11, %r8, %r10; - sub.s32 %r12, %r9, %r11; - ld.param.s32 %r13, [__cudaparm_particle_map_nlocal]; - setp.le.s32 %p1, %r13, %r12; - @%p1 bra $Lt_0_7426; - .loc 17 62 0 - mov.u32 %r14, %r12; - mov.s32 %r15, 0; - mov.u32 %r16, %r15; - mov.s32 %r17, 0; - mov.u32 %r18, %r17; - mov.s32 %r19, 0; - mov.u32 %r20, %r19; - tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[pos_tex,{%r14,%r16,%r18,%r20}]; - mov.f32 %f5, %f1; - mov.f32 %f6, %f2; - mov.f32 %f7, %f3; - .loc 17 64 0 - mov.u32 %r21, %r12; - mov.s32 %r22, 0; - mov.u32 %r23, %r22; - mov.s32 %r24, 0; - mov.u32 %r25, %r24; - mov.s32 %r26, 0; - mov.u32 %r27, %r26; - tex.1d.v4.f32.s32 {%f8,%f9,%f10,%f11},[q_tex,{%r21,%r23,%r25,%r27}]; - mov.f32 %f12, %f8; - cvt.ftz.f64.f32 %fd1, %f12; - ld.param.f64 %fd2, [__cudaparm_particle_map_delvolinv]; - mul.f64 %fd3, %fd1, %fd2; - mov.f64 %fd4, 0d0000000000000000; // 0 - setp.neu.f64 %p2, %fd3, %fd4; - @!%p2 bra $Lt_0_7426; - .loc 17 67 0 - ld.param.f64 %fd5, [__cudaparm_particle_map_delxinv]; - cvt.ftz.f64.f32 %fd6, %f5; - ld.param.f64 %fd7, [__cudaparm_particle_map_b_lo_x]; - sub.f64 %fd8, %fd6, %fd7; - mul.f64 %fd9, %fd5, %fd8; - mov.f64 %fd10, 0d0000000000000000; // 0 - setp.lt.f64 %p3, %fd9, %fd10; - @%p3 bra $Lt_0_8706; - ld.param.f64 %fd11, [__cudaparm_particle_map_delyinv]; - cvt.ftz.f64.f32 %fd12, %f6; - ld.param.f64 %fd13, [__cudaparm_particle_map_b_lo_y]; - sub.f64 %fd14, %fd12, %fd13; - mul.f64 %fd15, %fd11, %fd14; - mov.f64 %fd16, 0d0000000000000000; // 0 - setp.lt.f64 %p4, %fd15, %fd16; - @%p4 bra $Lt_0_8706; - ld.param.f64 %fd17, [__cudaparm_particle_map_delzinv]; - cvt.ftz.f64.f32 %fd18, %f7; - ld.param.f64 %fd19, [__cudaparm_particle_map_b_lo_z]; - sub.f64 %fd20, %fd18, %fd19; - mul.f64 %fd21, %fd17, %fd20; - mov.f64 %fd22, 0d0000000000000000; // 0 - setp.lt.f64 %p5, %fd21, %fd22; - @%p5 bra $Lt_0_8706; - cvt.rzi.s32.f64 %r28, %fd9; - ld.param.s32 %r29, [__cudaparm_particle_map_nlocal_x]; - setp.ge.s32 %p6, %r28, %r29; - @%p6 bra $Lt_0_8706; - cvt.rzi.s32.f64 %r30, %fd15; - ld.param.s32 %r31, [__cudaparm_particle_map_nlocal_y]; - setp.ge.s32 %p7, %r30, %r31; - @%p7 bra $Lt_0_8706; - cvt.rzi.s32.f64 %r32, %fd21; - ld.param.s32 %r33, [__cudaparm_particle_map_nlocal_z]; - setp.gt.s32 %p8, %r33, %r32; - @%p8 bra $L_0_4866; -$Lt_0_8706: -$L_0_5122: - .loc 17 76 0 - mov.s32 %r34, 1; - ld.param.u64 %rd1, [__cudaparm_particle_map_error]; - st.global.s32 [%rd1+0], %r34; - bra.uni $Lt_0_7426; -$L_0_4866: - .loc 17 83 0 - mul.lo.s32 %r35, %r32, %r31; - add.s32 %r36, %r30, %r35; - mul.lo.s32 %r37, %r36, %r29; - add.s32 %r38, %r28, %r37; - ld.param.u64 %rd2, [__cudaparm_particle_map_counts]; - cvt.s64.s32 %rd3, %r38; - mul.wide.s32 %rd4, %r38, 4; - add.u64 %rd5, %rd2, %rd4; - mov.s32 %r39, 1; - atom.global.add.s32 %r40, [%rd5], %r39; - mov.s32 %r41, %r40; - ld.param.s32 %r42, [__cudaparm_particle_map_max_atoms]; - setp.gt.s32 %p9, %r42, %r41; - @%p9 bra $Lt_0_7682; - .loc 17 85 0 - mov.s32 %r43, 2; - ld.param.u64 %rd6, [__cudaparm_particle_map_error]; - st.global.s32 [%rd6+0], %r43; - .loc 16 118 0 - mov.s32 %r44, -1; - atom.global.add.s32 %r45, [%rd5], %r44; - bra.uni $Lt_0_7426; -$Lt_0_7682: - .loc 17 88 0 - ld.param.u64 %rd7, [__cudaparm_particle_map_ans]; - ld.param.s32 %r46, [__cudaparm_particle_map_atom_stride]; - mul.lo.s32 %r47, %r46, %r41; - add.s32 %r48, %r38, %r47; - cvt.s64.s32 %rd8, %r48; - mul.wide.s32 %rd9, %r48, 32; - add.u64 %rd10, %rd7, %rd9; - cvt.rn.f64.s32 %fd23, %r28; - mov.f64 %fd24, 0d3fe0000000000000; // 0.5 - add.f64 %fd25, %fd23, %fd24; - sub.f64 %fd26, %fd25, %fd9; - cvt.rn.f64.s32 %fd27, %r30; - mov.f64 %fd28, 0d3fe0000000000000; // 0.5 - add.f64 %fd29, %fd27, %fd28; - sub.f64 %fd30, %fd29, %fd15; - st.global.v2.f64 [%rd10+0], {%fd26,%fd30}; - cvt.rn.f64.s32 %fd31, %r32; - mov.f64 %fd32, 0d3fe0000000000000; // 0.5 - add.f64 %fd33, %fd31, %fd32; - sub.f64 %fd34, %fd33, %fd21; - st.global.v2.f64 [%rd10+16], {%fd34,%fd3}; -$Lt_0_7426: -$L_0_4610: -$Lt_0_6914: -$Lt_0_6402: - .loc 17 92 0 - exit; -$LDWend_particle_map: - } // particle_map - - .entry make_rho ( - .param .u64 __cudaparm_make_rho_counts, - .param .u64 __cudaparm_make_rho_atoms, - .param .u64 __cudaparm_make_rho_brick, - .param .u64 __cudaparm_make_rho__rho_coeff, - .param .s32 __cudaparm_make_rho_atom_stride, - .param .s32 __cudaparm_make_rho_npts_x, - .param .s32 __cudaparm_make_rho_npts_y, - .param .s32 __cudaparm_make_rho_npts_z, - .param .s32 __cudaparm_make_rho_nlocal_x, - .param .s32 __cudaparm_make_rho_nlocal_y, - .param .s32 __cudaparm_make_rho_nlocal_z, - .param .s32 __cudaparm_make_rho_order_m_1, - .param .s32 __cudaparm_make_rho_order, - .param .s32 __cudaparm_make_rho_order2) - { - .reg .u32 %r<119>; - .reg .u64 %rd<57>; - .reg .f64 %fd<26>; - .reg .pred %p<27>; - .shared .align 8 .b8 __cuda___cuda_local_var_32578_34_non_const_rho_coeff200[512]; - .shared .align 8 .b8 __cuda___cuda_local_var_32579_34_non_const_front712[640]; - .shared .align 8 .b8 __cuda___cuda_local_var_32580_34_non_const_ans1352[4096]; - .loc 17 101 0 -$LDWbegin_make_rho: - ld.param.s32 %r1, [__cudaparm_make_rho_order2]; - ld.param.s32 %r2, [__cudaparm_make_rho_order]; - add.s32 %r3, %r1, %r2; - cvt.s32.u32 %r4, %tid.x; - setp.le.s32 %p1, %r3, %r4; - @%p1 bra $Lt_1_16898; - .loc 17 108 0 - mov.u64 %rd1, __cuda___cuda_local_var_32578_34_non_const_rho_coeff200; - cvt.s64.s32 %rd2, %r4; - mul.wide.s32 %rd3, %r4, 8; - ld.param.u64 %rd4, [__cudaparm_make_rho__rho_coeff]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f64 %fd1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f64 [%rd6+0], %fd1; -$Lt_1_16898: - mov.u64 %rd1, __cuda___cuda_local_var_32578_34_non_const_rho_coeff200; - shr.s32 %r5, %r4, 31; - mov.s32 %r6, 31; - and.b32 %r7, %r5, %r6; - add.s32 %r8, %r7, %r4; - shr.s32 %r9, %r8, 5; - mul.lo.s32 %r10, %r9, 32; - sub.s32 %r11, %r4, %r10; - setp.lt.s32 %p2, %r11, %r2; - @!%p2 bra $Lt_1_17410; - .loc 17 114 0 - mov.u64 %rd7, __cuda___cuda_local_var_32579_34_non_const_front712; - mov.f64 %fd2, 0d0000000000000000; // 0 - cvt.s64.s32 %rd8, %r11; - shr.s32 %r12, %r4, 31; - mov.s32 %r13, 31; - and.b32 %r14, %r12, %r13; - add.s32 %r15, %r14, %r4; - shr.s32 %r16, %r15, 5; - cvt.s64.s32 %rd9, %r16; - mul.wide.s32 %rd10, %r16, 40; - add.u64 %rd11, %rd8, %rd10; - mul.lo.u64 %rd12, %rd11, 8; - add.u64 %rd13, %rd7, %rd12; - st.shared.f64 [%rd13+256], %fd2; -$Lt_1_17410: - mov.u64 %rd7, __cuda___cuda_local_var_32579_34_non_const_front712; - .loc 17 116 0 - bar.sync 0; - ld.param.s32 %r17, [__cudaparm_make_rho_npts_x]; - shr.s32 %r18, %r17, 31; - mov.s32 %r19, 31; - and.b32 %r20, %r18, %r19; - add.s32 %r21, %r20, %r17; - shr.s32 %r22, %r21, 5; - add.s32 %r23, %r22, 1; - mov.u32 %r24, 0; - setp.le.s32 %p3, %r23, %r24; - @%p3 bra $Lt_1_17922; - shr.s32 %r25, %r4, 31; - mov.s32 %r26, 31; - and.b32 %r27, %r25, %r26; - add.s32 %r28, %r27, %r4; - shr.s32 %r29, %r28, 5; - add.s32 %r30, %r11, 32; - ld.param.s32 %r31, [__cudaparm_make_rho_nlocal_y]; - ld.param.s32 %r32, [__cudaparm_make_rho_nlocal_x]; - mul.lo.s32 %r33, %r31, %r32; - mov.u32 %r34, %ctaid.x; - mul.lo.u32 %r35, %r34, 2; - add.u32 %r36, %r29, %r35; - ld.param.s32 %r37, [__cudaparm_make_rho_npts_y]; - div.s32 %r38, %r36, %r37; - ld.param.s32 %r39, [__cudaparm_make_rho_order_m_1]; - setp.lt.s32 %p4, %r38, %r39; - sub.s32 %r40, %r39, %r38; - mov.s32 %r41, 0; - selp.s32 %r42, %r40, %r41, %p4; - ld.param.s32 %r43, [__cudaparm_make_rho_nlocal_z]; - setp.ge.s32 %p5, %r38, %r43; - sub.s32 %r44, %r43, %r38; - add.s32 %r45, %r44, %r2; - sub.s32 %r46, %r45, 1; - selp.s32 %r47, %r46, %r2, %p5; - rem.s32 %r48, %r36, %r37; - setp.lt.s32 %p6, %r48, %r39; - sub.s32 %r49, %r39, %r48; - mov.s32 %r50, 0; - selp.s32 %r51, %r49, %r50, %p6; - setp.ge.s32 %p7, %r48, %r31; - sub.s32 %r52, %r31, %r48; - add.s32 %r53, %r52, %r2; - sub.s32 %r54, %r53, 1; - selp.s32 %r55, %r54, %r2, %p7; - mov.s32 %r56, %r23; - mov.s32 %r57, 0; - setp.gt.s32 %p8, %r2, %r57; - mov.s32 %r58, 0; - cvt.s64.s32 %rd14, %r11; - cvt.s64.s32 %rd15, %r29; - mul.lo.s32 %r59, %r23, 32; - mul.wide.s32 %rd16, %r29, 40; - add.u64 %rd17, %rd14, %rd16; - ld.param.s32 %r60, [__cudaparm_make_rho_npts_z]; - setp.gt.s32 %p9, %r60, %r38; - mul.lo.u64 %rd18, %rd17, 8; - selp.s32 %r61, 1, 0, %p9; - add.u64 %rd19, %rd18, %rd7; - mov.u64 %rd20, __cuda___cuda_local_var_32580_34_non_const_ans1352; - mov.s32 %r62, %r56; -$Lt_1_18434: - // Loop body line 116, nesting depth: 1, estimated iterations: unknown - @!%p8 bra $Lt_1_18690; - mov.s32 %r63, %r2; - cvt.s64.s32 %rd21, %r4; - mul.wide.s32 %rd22, %r4, 8; - add.u64 %rd23, %rd20, %rd22; - mov.s32 %r64, 0; - mov.s32 %r65, %r63; -$Lt_1_19202: - // Loop body line 116, nesting depth: 2, estimated iterations: unknown - .loc 17 140 0 - mov.f64 %fd3, 0d0000000000000000; // 0 - st.shared.f64 [%rd23+0], %fd3; - add.s32 %r64, %r64, 1; - add.u64 %rd23, %rd23, 512; - setp.ne.s32 %p10, %r64, %r2; - @%p10 bra $Lt_1_19202; -$Lt_1_18690: - add.s32 %r66, %r11, %r58; - set.lt.u32.s32 %r67, %r66, %r32; - neg.s32 %r68, %r67; - and.b32 %r69, %r61, %r68; - mov.u32 %r70, 0; - setp.eq.s32 %p11, %r69, %r70; - @%p11 bra $Lt_1_20226; - .loc 17 143 0 - mov.s32 %r71, %r42; - setp.ge.s32 %p12, %r42, %r47; - @%p12 bra $Lt_1_20226; - sub.s32 %r72, %r47, %r42; - setp.lt.s32 %p13, %r51, %r55; - mov.s32 %r73, %r72; -$Lt_1_20738: - // Loop body line 143, nesting depth: 2, estimated iterations: unknown - .loc 17 145 0 - mov.s32 %r74, %r51; - @!%p13 bra $Lt_1_20994; - sub.s32 %r75, %r55, %r51; - sub.s32 %r76, %r71, %r42; - add.s32 %r77, %r38, %r42; - add.s32 %r78, %r48, %r51; - sub.s32 %r79, %r77, %r39; - sub.s32 %r80, %r78, %r39; - add.s32 %r81, %r76, %r79; - mul.lo.s32 %r82, %r33, %r81; - ld.param.s32 %r83, [__cudaparm_make_rho_atom_stride]; - ld.param.u64 %rd24, [__cudaparm_make_rho_counts]; - mov.s32 %r84, %r75; -$Lt_1_21506: - // Loop body line 145, nesting depth: 3, estimated iterations: unknown - .loc 17 147 0 - sub.s32 %r85, %r74, %r51; - add.s32 %r86, %r85, %r80; - mul.lo.s32 %r87, %r86, %r32; - add.s32 %r88, %r82, %r87; - add.s32 %r89, %r66, %r88; - cvt.s64.s32 %rd25, %r89; - mul.wide.s32 %rd26, %r89, 4; - add.u64 %rd27, %rd24, %rd26; - ld.global.s32 %r90, [%rd27+0]; - mul.lo.s32 %r91, %r90, %r83; - .loc 17 148 0 - mov.s32 %r92, %r89; - setp.ge.s32 %p14, %r89, %r91; - @%p14 bra $Lt_1_21762; - sub.s32 %r93, %r3, 1; - cvt.s64.s32 %rd28, %r83; - mul.wide.s32 %rd29, %r83, 32; - mov.s32 %r94, -1; - setp.gt.s32 %p15, %r93, %r94; - ld.param.u64 %rd30, [__cudaparm_make_rho_atoms]; - mul.lo.u64 %rd31, %rd25, 32; - add.u64 %rd32, %rd30, %rd31; -$Lt_1_22274: - // Loop body line 148, nesting depth: 4, estimated iterations: unknown - .loc 17 149 0 - ld.global.f64 %fd4, [%rd32+0]; - @!%p15 bra $Lt_1_29954; - sub.s32 %r95, %r93, %r74; - mov.s32 %r96, -1; - sub.s32 %r97, %r96, %r74; - cvt.s64.s32 %rd33, %r2; - mul.wide.s32 %rd34, %r2, 8; - ld.global.f64 %fd5, [%rd32+8]; - ld.global.f64 %fd6, [%rd32+16]; - cvt.s64.s32 %rd35, %r95; - mul.wide.s32 %rd36, %r95, 8; - add.u64 %rd37, %rd1, %rd36; - sub.s32 %r98, %r93, %r71; - cvt.s64.s32 %rd38, %r98; - mul.wide.s32 %rd39, %r98, 8; - add.u64 %rd40, %rd1, %rd39; - mov.f64 %fd7, 0d0000000000000000; // 0 - mov.f64 %fd8, 0d0000000000000000; // 0 -$Lt_1_23042: - // Loop body line 149, nesting depth: 5, estimated iterations: unknown - .loc 17 154 0 - ld.shared.f64 %fd9, [%rd37+0]; - mad.rn.f64 %fd8, %fd8, %fd5, %fd9; - .loc 17 155 0 - ld.shared.f64 %fd10, [%rd40+0]; - mad.rn.f64 %fd7, %fd7, %fd6, %fd10; - sub.u64 %rd40, %rd40, %rd34; - sub.s32 %r95, %r95, %r2; - sub.u64 %rd37, %rd37, %rd34; - setp.gt.s32 %p16, %r95, %r97; - @%p16 bra $Lt_1_23042; - bra.uni $Lt_1_22530; -$Lt_1_29954: - mov.f64 %fd7, 0d0000000000000000; // 0 - mov.f64 %fd8, 0d0000000000000000; // 0 -$Lt_1_22530: - .loc 17 157 0 - ld.global.f64 %fd11, [%rd32+24]; - mul.f64 %fd12, %fd7, %fd8; - mul.f64 %fd13, %fd11, %fd12; - @!%p8 bra $Lt_1_23554; - mov.s32 %r99, %r2; - cvt.s64.s32 %rd41, %r4; - mul.wide.s32 %rd42, %r4, 8; - add.u64 %rd43, %rd20, %rd42; - mov.s32 %r100, 0; - mov.s32 %r101, %r99; -$Lt_1_24066: - // Loop body line 157, nesting depth: 5, estimated iterations: unknown - .loc 17 161 0 - add.s32 %r102, %r100, %r1; - mov.s32 %r103, %r102; - setp.lt.s32 %p17, %r102, %r100; - @%p17 bra $Lt_1_30466; - cvt.s64.s32 %rd44, %r2; - mul.wide.s32 %rd34, %r2, 8; - cvt.s64.s32 %rd45, %r102; - mul.wide.s32 %rd46, %r102, 8; - add.u64 %rd47, %rd1, %rd46; - mov.f64 %fd14, 0d0000000000000000; // 0 -$Lt_1_24834: - // Loop body line 161, nesting depth: 6, estimated iterations: unknown - .loc 17 162 0 - ld.shared.f64 %fd15, [%rd47+0]; - mad.rn.f64 %fd14, %fd4, %fd14, %fd15; - sub.s32 %r103, %r103, %r2; - sub.u64 %rd47, %rd47, %rd34; - setp.ge.s32 %p18, %r103, %r100; - @%p18 bra $Lt_1_24834; - bra.uni $Lt_1_24322; -$Lt_1_30466: - mov.f64 %fd14, 0d0000000000000000; // 0 -$Lt_1_24322: - .loc 17 163 0 - ld.shared.f64 %fd16, [%rd43+0]; - mad.rn.f64 %fd17, %fd14, %fd13, %fd16; - st.shared.f64 [%rd43+0], %fd17; - add.s32 %r100, %r100, 1; - add.u64 %rd43, %rd43, 512; - setp.ne.s32 %p19, %r100, %r2; - @%p19 bra $Lt_1_24066; -$Lt_1_23554: - add.s32 %r92, %r92, %r83; - add.u64 %rd32, %rd29, %rd32; - setp.gt.s32 %p20, %r91, %r92; - @%p20 bra $Lt_1_22274; -$Lt_1_21762: - add.s32 %r74, %r74, 1; - setp.ne.s32 %p21, %r55, %r74; - @%p21 bra $Lt_1_21506; -$Lt_1_20994: - add.s32 %r71, %r71, 1; - setp.ne.s32 %p22, %r47, %r71; - @%p22 bra $Lt_1_20738; -$Lt_1_20226: -$Lt_1_19714: - .loc 17 172 0 - bar.sync 0; - @!%p2 bra $Lt_1_26626; - .loc 17 174 0 - ld.shared.f64 %fd18, [%rd19+256]; - st.shared.f64 [%rd19+0], %fd18; - .loc 17 175 0 - mov.f64 %fd19, 0d0000000000000000; // 0 - st.shared.f64 [%rd19+256], %fd19; - bra.uni $Lt_1_26370; -$Lt_1_26626: - .loc 17 177 0 - mov.f64 %fd20, 0d0000000000000000; // 0 - st.shared.f64 [%rd19+0], %fd20; -$Lt_1_26370: - @!%p8 bra $Lt_1_26882; - mov.s32 %r104, %r2; - cvt.s64.s32 %rd48, %r4; - mov.s32 %r105, %r11; - add.s32 %r106, %r11, %r2; - mul.wide.s32 %rd49, %r4, 8; - add.u64 %rd50, %rd20, %rd49; - mov.s64 %rd51, %rd19; - mov.s32 %r107, %r104; -$Lt_1_27394: - // Loop body line 177, nesting depth: 2, estimated iterations: unknown - .loc 17 180 0 - ld.shared.f64 %fd21, [%rd50+0]; - ld.shared.f64 %fd22, [%rd51+0]; - add.f64 %fd23, %fd21, %fd22; - st.shared.f64 [%rd51+0], %fd23; - .loc 17 181 0 - bar.sync 0; - add.s32 %r105, %r105, 1; - add.u64 %rd51, %rd51, 8; - add.u64 %rd50, %rd50, 512; - setp.ne.s32 %p23, %r105, %r106; - @%p23 bra $Lt_1_27394; -$Lt_1_26882: - set.lt.u32.s32 %r108, %r66, %r17; - neg.s32 %r109, %r108; - and.b32 %r110, %r61, %r109; - mov.u32 %r111, 0; - setp.eq.s32 %p24, %r110, %r111; - @%p24 bra $Lt_1_27906; - .loc 17 185 0 - ld.shared.f64 %fd24, [%rd19+0]; - ld.param.u64 %rd52, [__cudaparm_make_rho_brick]; - add.s32 %r112, %r11, %r58; - mul.lo.s32 %r113, %r37, %r17; - mul.lo.s32 %r114, %r38, %r113; - mul.lo.s32 %r115, %r48, %r17; - add.s32 %r116, %r114, %r115; - add.s32 %r117, %r112, %r116; - cvt.s64.s32 %rd53, %r117; - mul.wide.s32 %rd54, %r117, 8; - add.u64 %rd55, %rd52, %rd54; - st.global.f64 [%rd55+0], %fd24; -$Lt_1_27906: - add.s32 %r58, %r58, 32; - setp.ne.s32 %p25, %r58, %r59; - @%p25 bra $Lt_1_18434; -$Lt_1_17922: - .loc 17 189 0 - exit; -$LDWend_make_rho: - } // make_rho - - .entry interp ( - .param .u64 __cudaparm_interp_x_, - .param .u64 __cudaparm_interp_q_, - .param .s32 __cudaparm_interp_nlocal, - .param .u64 __cudaparm_interp_brick, - .param .u64 __cudaparm_interp__rho_coeff, - .param .s32 __cudaparm_interp_npts_x, - .param .s32 __cudaparm_interp_npts_yx, - .param .f64 __cudaparm_interp_b_lo_x, - .param .f64 __cudaparm_interp_b_lo_y, - .param .f64 __cudaparm_interp_b_lo_z, - .param .f64 __cudaparm_interp_delxinv, - .param .f64 __cudaparm_interp_delyinv, - .param .f64 __cudaparm_interp_delzinv, - .param .s32 __cudaparm_interp_order, - .param .s32 __cudaparm_interp_order2, - .param .f64 __cudaparm_interp_qqrd2e_scale, - .param .u64 __cudaparm_interp_ans) - { - .reg .u32 %r<56>; - .reg .u64 %rd<37>; - .reg .f32 %f<19>; - .reg .f64 %fd<63>; - .reg .pred %p<14>; - .shared .align 8 .b8 __cuda___cuda_local_var_32676_34_non_const_rho_coeff5568[512]; - .shared .align 8 .b8 __cuda___cuda_local_var_32677_34_non_const_rho1d_06080[4096]; - .shared .align 8 .b8 __cuda___cuda_local_var_32678_34_non_const_rho1d_110176[4096]; - // __cuda_local_var_32694_12_non_const_ek = 16 - .loc 17 199 0 -$LDWbegin_interp: - ld.param.s32 %r1, [__cudaparm_interp_order2]; - ld.param.s32 %r2, [__cudaparm_interp_order]; - add.s32 %r3, %r1, %r2; - cvt.s32.u32 %r4, %tid.x; - setp.le.s32 %p1, %r3, %r4; - @%p1 bra $Lt_2_8706; - .loc 17 206 0 - mov.u64 %rd1, __cuda___cuda_local_var_32676_34_non_const_rho_coeff5568; - cvt.s64.s32 %rd2, %r4; - mul.wide.s32 %rd3, %r4, 8; - ld.param.u64 %rd4, [__cudaparm_interp__rho_coeff]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f64 %fd1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f64 [%rd6+0], %fd1; -$Lt_2_8706: - mov.u64 %rd1, __cuda___cuda_local_var_32676_34_non_const_rho_coeff5568; - .loc 17 207 0 - bar.sync 0; - mov.u32 %r5, %ctaid.x; - mov.u32 %r6, %ntid.x; - mul.lo.u32 %r7, %r5, %r6; - add.u32 %r8, %r4, %r7; - ld.param.s32 %r9, [__cudaparm_interp_nlocal]; - setp.le.s32 %p2, %r9, %r8; - @%p2 bra $Lt_2_9218; - .loc 17 215 0 - mov.u32 %r10, %r8; - mov.s32 %r11, 0; - mov.u32 %r12, %r11; - mov.s32 %r13, 0; - mov.u32 %r14, %r13; - mov.s32 %r15, 0; - mov.u32 %r16, %r15; - tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[pos_tex,{%r10,%r12,%r14,%r16}]; - mov.f32 %f5, %f1; - mov.f32 %f6, %f2; - mov.f32 %f7, %f3; - .loc 17 216 0 - mov.u32 %r17, %r8; - mov.s32 %r18, 0; - mov.u32 %r19, %r18; - mov.s32 %r20, 0; - mov.u32 %r21, %r20; - mov.s32 %r22, 0; - mov.u32 %r23, %r22; - tex.1d.v4.f32.s32 {%f8,%f9,%f10,%f11},[q_tex,{%r17,%r19,%r21,%r23}]; - mov.f32 %f12, %f8; - cvt.ftz.f64.f32 %fd2, %f12; - ld.param.f64 %fd3, [__cudaparm_interp_qqrd2e_scale]; - mul.f64 %fd4, %fd2, %fd3; - mov.f64 %fd5, 0d0000000000000000; // 0 - setp.neu.f64 %p3, %fd4, %fd5; - @!%p3 bra $Lt_2_9986; - mov.s32 %r24, 0; - setp.gt.s32 %p4, %r2, %r24; - ld.param.f64 %fd6, [__cudaparm_interp_delxinv]; - cvt.ftz.f64.f32 %fd7, %f5; - ld.param.f64 %fd8, [__cudaparm_interp_b_lo_x]; - sub.f64 %fd9, %fd7, %fd8; - mul.f64 %fd10, %fd6, %fd9; - @!%p4 bra $Lt_2_16386; - mov.u64 %rd7, __cuda___cuda_local_var_32677_34_non_const_rho1d_06080; - mov.u64 %rd8, __cuda___cuda_local_var_32678_34_non_const_rho1d_110176; - cvt.rzi.s32.f64 %r25, %fd10; - cvt.rn.f64.s32 %fd11, %r25; - mov.f64 %fd12, 0d3fe0000000000000; // 0.5 - add.f64 %fd13, %fd11, %fd12; - sub.f64 %fd14, %fd13, %fd10; - ld.param.f64 %fd15, [__cudaparm_interp_delyinv]; - cvt.ftz.f64.f32 %fd16, %f6; - ld.param.f64 %fd17, [__cudaparm_interp_b_lo_y]; - sub.f64 %fd18, %fd16, %fd17; - mul.f64 %fd19, %fd15, %fd18; - cvt.rzi.s32.f64 %r26, %fd19; - cvt.rn.f64.s32 %fd20, %r26; - mov.f64 %fd21, 0d3fe0000000000000; // 0.5 - add.f64 %fd22, %fd20, %fd21; - sub.f64 %fd23, %fd22, %fd19; - mov.s32 %r27, %r2; - cvt.s64.s32 %rd9, %r4; - mov.s32 %r28, %r1; - mul.wide.s32 %rd3, %r4, 8; - add.u64 %rd10, %rd3, %rd7; - add.u64 %rd11, %rd3, %rd8; - mov.s32 %r29, 0; - mov.s32 %r30, %r27; -$Lt_2_10754: - // Loop body line 216, nesting depth: 1, estimated iterations: unknown - .loc 17 235 0 - mov.f64 %fd24, 0d0000000000000000; // 0 - mov.f64 %fd25, 0d0000000000000000; // 0 - st.shared.f64 [%rd10+0], %fd25; - .loc 17 236 0 - mov.f64 %fd26, 0d0000000000000000; // 0 - mov.f64 %fd27, 0d0000000000000000; // 0 - st.shared.f64 [%rd11+0], %fd27; - .loc 17 237 0 - mov.s32 %r31, %r28; - setp.lt.s32 %p5, %r28, %r29; - @%p5 bra $Lt_2_11010; - cvt.s64.s32 %rd12, %r2; - mul.wide.s32 %rd13, %r2, 8; - cvt.s64.s32 %rd14, %r28; - mul.wide.s32 %rd15, %r28, 8; - add.u64 %rd16, %rd1, %rd15; -$Lt_2_11522: - // Loop body line 237, nesting depth: 2, estimated iterations: unknown - .loc 17 238 0 - ld.shared.f64 %fd28, [%rd16+0]; - mad.rn.f64 %fd24, %fd24, %fd14, %fd28; - st.shared.f64 [%rd10+0], %fd24; - .loc 17 239 0 - mad.rn.f64 %fd26, %fd26, %fd23, %fd28; - st.shared.f64 [%rd11+0], %fd26; - sub.s32 %r31, %r31, %r2; - sub.u64 %rd16, %rd16, %rd13; - setp.ge.s32 %p6, %r31, %r29; - @%p6 bra $Lt_2_11522; -$Lt_2_11010: - add.s32 %r29, %r29, 1; - add.s32 %r28, %r28, 1; - add.u64 %rd11, %rd11, 512; - add.u64 %rd10, %rd10, 512; - setp.ne.s32 %p7, %r28, %r3; - @%p7 bra $Lt_2_10754; - bra.uni $Lt_2_10242; -$Lt_2_16386: - cvt.rzi.s32.f64 %r25, %fd10; - mov.u64 %rd8, __cuda___cuda_local_var_32678_34_non_const_rho1d_110176; - mov.u64 %rd7, __cuda___cuda_local_var_32677_34_non_const_rho1d_06080; -$Lt_2_10242: - .loc 17 243 0 - ld.param.f64 %fd29, [__cudaparm_interp_delzinv]; - cvt.ftz.f64.f32 %fd30, %f7; - ld.param.f64 %fd31, [__cudaparm_interp_b_lo_z]; - sub.f64 %fd32, %fd30, %fd31; - mul.f64 %fd33, %fd29, %fd32; - cvt.rzi.s32.f64 %r32, %fd33; - ld.param.s32 %r33, [__cudaparm_interp_npts_yx]; - mul.lo.s32 %r34, %r32, %r33; - add.s32 %r35, %r25, %r34; - @!%p4 bra $Lt_2_16898; - cvt.rn.f64.s32 %fd34, %r32; - mov.f64 %fd35, 0d3fe0000000000000; // 0.5 - add.f64 %fd36, %fd34, %fd35; - sub.f64 %fd37, %fd36, %fd33; - mov.s32 %r36, %r2; - cvt.ftz.f64.f32 %fd38, %f6; - cvt.s64.s32 %rd17, %r4; - ld.param.f64 %fd39, [__cudaparm_interp_delyinv]; - ld.param.f64 %fd40, [__cudaparm_interp_b_lo_y]; - sub.f64 %fd41, %fd38, %fd40; - mul.f64 %fd42, %fd39, %fd41; - cvt.rzi.s32.f64 %r37, %fd42; - mul.wide.s32 %rd3, %r4, 8; - ld.param.s32 %r38, [__cudaparm_interp_npts_x]; - mul.lo.s32 %r39, %r37, %r38; - add.u64 %rd18, %rd3, %rd7; - add.u64 %rd19, %rd3, %rd8; - cvt.s64.s32 %rd20, %r38; - mul.wide.s32 %rd21, %r38, 32; - add.s32 %r40, %r39, %r35; - mov.s32 %r41, %r40; - ld.param.u64 %rd22, [__cudaparm_interp_brick]; - mov.s32 %r42, 0; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, 0f00000000; // 0 - mov.s32 %r43, %r36; -$Lt_2_12802: - // Loop body line 243, nesting depth: 1, estimated iterations: unknown - .loc 17 246 0 - add.s32 %r44, %r42, %r1; - mov.s32 %r45, %r44; - setp.lt.s32 %p8, %r44, %r42; - @%p8 bra $Lt_2_17154; - cvt.s64.s32 %rd23, %r2; - mul.wide.s32 %rd13, %r2, 8; - cvt.s64.s32 %rd24, %r44; - mul.wide.s32 %rd25, %r44, 8; - add.u64 %rd26, %rd1, %rd25; - mov.f64 %fd43, 0d0000000000000000; // 0 -$Lt_2_13570: - // Loop body line 246, nesting depth: 2, estimated iterations: unknown - .loc 17 247 0 - ld.shared.f64 %fd44, [%rd26+0]; - mad.rn.f64 %fd43, %fd37, %fd43, %fd44; - sub.s32 %r45, %r45, %r2; - sub.u64 %rd26, %rd26, %rd13; - setp.ge.s32 %p9, %r45, %r42; - @%p9 bra $Lt_2_13570; - bra.uni $Lt_2_13058; -$Lt_2_17154: - mov.f64 %fd43, 0d0000000000000000; // 0 -$Lt_2_13058: - .loc 17 249 0 - mov.s32 %r46, %r41; - mov.s32 %r47, %r2; - mov.s32 %r48, %r46; - mul.f64 %fd45, %fd4, %fd43; - mov.s64 %rd27, %rd19; - cvt.s64.s32 %rd28, %r46; - mul.wide.s32 %rd29, %r46, 32; - mov.s32 %r49, 0; - mov.s32 %r50, %r47; -$Lt_2_14594: - // Loop body line 249, nesting depth: 2, estimated iterations: unknown - mov.s32 %r51, %r2; - mov.s32 %r52, %r48; - add.s32 %r53, %r48, %r2; - mov.s64 %rd30, %rd18; - ld.shared.f64 %fd46, [%rd27+0]; - add.u64 %rd31, %rd29, %rd22; - mul.f64 %fd47, %fd45, %fd46; - mov.s32 %r54, %r51; -$Lt_2_15362: - // Loop body line 249, nesting depth: 3, estimated iterations: unknown - .loc 17 253 0 - ld.shared.f64 %fd48, [%rd30+0]; - mul.f64 %fd49, %fd48, %fd47; - .loc 17 255 0 - cvt.ftz.f64.f32 %fd50, %f15; - ld.global.v2.f64 {%fd51,%fd52}, [%rd31+0]; - mul.f64 %fd53, %fd49, %fd51; - sub.f64 %fd54, %fd50, %fd53; - cvt.rn.ftz.f32.f64 %f15, %fd54; - .loc 17 256 0 - cvt.ftz.f64.f32 %fd55, %f14; - mul.f64 %fd56, %fd49, %fd52; - sub.f64 %fd57, %fd55, %fd56; - cvt.rn.ftz.f32.f64 %f14, %fd57; - .loc 17 257 0 - cvt.ftz.f64.f32 %fd58, %f13; - ld.global.f64 %fd59, [%rd31+16]; - mul.f64 %fd60, %fd49, %fd59; - sub.f64 %fd61, %fd58, %fd60; - cvt.rn.ftz.f32.f64 %f13, %fd61; - add.s32 %r52, %r52, 1; - add.u64 %rd31, %rd31, 32; - add.u64 %rd30, %rd30, 512; - setp.ne.s32 %p10, %r52, %r53; - @%p10 bra $Lt_2_15362; - add.s32 %r49, %r49, 1; - add.s32 %r48, %r48, %r38; - add.u64 %rd29, %rd29, %rd21; - add.u64 %rd27, %rd27, 512; - setp.ne.s32 %p11, %r49, %r2; - @%p11 bra $Lt_2_14594; - add.s32 %r42, %r42, 1; - add.s32 %r41, %r46, %r33; - setp.ne.s32 %p12, %r42, %r2; - @%p12 bra $Lt_2_12802; - bra.uni $Lt_2_9730; -$Lt_2_16898: - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, 0f00000000; // 0 - bra.uni $Lt_2_9730; -$Lt_2_9986: - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, 0f00000000; // 0 -$Lt_2_9730: - .loc 17 264 0 - ld.param.u64 %rd32, [__cudaparm_interp_ans]; - cvt.s64.s32 %rd33, %r8; - mul.wide.s32 %rd34, %r8, 16; - add.u64 %rd35, %rd32, %rd34; - mov.f32 %f16, %f17; - st.global.v4.f32 [%rd35+0], {%f15,%f14,%f13,%f16}; -$Lt_2_9218: - .loc 17 266 0 - exit; -$LDWend_interp: - } // interp - diff --git a/lib/gpu/pppm_d_ptx.h b/lib/gpu/pppm_d_ptx.h deleted file mode 100644 index b7b2d2f1d0..0000000000 --- a/lib/gpu/pppm_d_ptx.h +++ /dev/null @@ -1,837 +0,0 @@ -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" -; diff --git a/lib/gpu/pppm_f.ptx b/lib/gpu/pppm_f.ptx deleted file mode 100644 index 85e890e5c3..0000000000 --- a/lib/gpu/pppm_f.ptx +++ /dev/null @@ -1,881 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009b0b_00000000-9_lal_pppm.cpp3.i (/home/sjplimp/ccBI#.wCkpTI) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009b0b_00000000-8_lal_pppm.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 17 "lal_pppm.cu" - .file 18 "/usr/local/cuda/include/common_functions.h" - .file 19 "/usr/local/cuda/include/math_functions.h" - .file 20 "/usr/local/cuda/include/math_constants.h" - .file 21 "/usr/local/cuda/include/device_functions.h" - .file 22 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 24 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 26 "/usr/local/cuda/include/surface_functions.h" - .file 27 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 28 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - .global .texref pos_tex; - .global .texref q_tex; - - .entry particle_map ( - .param .u64 __cudaparm_particle_map_x_, - .param .u64 __cudaparm_particle_map_q_, - .param .f32 __cudaparm_particle_map_delvolinv, - .param .s32 __cudaparm_particle_map_nlocal, - .param .u64 __cudaparm_particle_map_counts, - .param .u64 __cudaparm_particle_map_ans, - .param .f32 __cudaparm_particle_map_b_lo_x, - .param .f32 __cudaparm_particle_map_b_lo_y, - .param .f32 __cudaparm_particle_map_b_lo_z, - .param .f32 __cudaparm_particle_map_delxinv, - .param .f32 __cudaparm_particle_map_delyinv, - .param .f32 __cudaparm_particle_map_delzinv, - .param .s32 __cudaparm_particle_map_nlocal_x, - .param .s32 __cudaparm_particle_map_nlocal_y, - .param .s32 __cudaparm_particle_map_nlocal_z, - .param .s32 __cudaparm_particle_map_atom_stride, - .param .s32 __cudaparm_particle_map_max_atoms, - .param .u64 __cudaparm_particle_map_error) - { - .reg .u32 %r<50>; - .reg .u64 %rd<12>; - .reg .f32 %f<44>; - .reg .pred %p<11>; - .loc 17 50 0 -$LDWbegin_particle_map: - cvt.s32.u32 %r1, %ntid.x; - cvt.s32.u32 %r2, %ctaid.x; - mul24.lo.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %nctaid.x; - mul24.lo.s32 %r5, %r4, %r1; - mov.u32 %r6, %tid.x; - add.u32 %r7, %r3, %r6; - sub.s32 %r8, %r5, 1; - mul.lo.s32 %r9, %r7, 64; - div.s32 %r10, %r9, %r5; - mul.lo.s32 %r11, %r8, %r10; - sub.s32 %r12, %r9, %r11; - ld.param.s32 %r13, [__cudaparm_particle_map_nlocal]; - setp.le.s32 %p1, %r13, %r12; - @%p1 bra $Lt_0_7426; - .loc 17 62 0 - mov.u32 %r14, %r12; - mov.s32 %r15, 0; - mov.u32 %r16, %r15; - mov.s32 %r17, 0; - mov.u32 %r18, %r17; - mov.s32 %r19, 0; - mov.u32 %r20, %r19; - tex.1d.v4.f32.s32 {%f1,%f2,%f3,%f4},[pos_tex,{%r14,%r16,%r18,%r20}]; - mov.f32 %f5, %f1; - mov.f32 %f6, %f2; - mov.f32 %f7, %f3; - .loc 17 64 0 - mov.u32 %r21, %r12; - mov.s32 %r22, 0; - mov.u32 %r23, %r22; - mov.s32 %r24, 0; - mov.u32 %r25, %r24; - mov.s32 %r26, 0; - mov.u32 %r27, %r26; - tex.1d.v4.f32.s32 {%f8,%f9,%f10,%f11},[q_tex,{%r21,%r23,%r25,%r27}]; - mov.f32 %f12, %f8; - ld.param.f32 %f13, [__cudaparm_particle_map_delvolinv]; - mul.ftz.f32 %f14, %f13, %f12; - mov.f32 %f15, 0f00000000; // 0 - setp.neu.ftz.f32 %p2, %f14, %f15; - @!%p2 bra $Lt_0_7426; - .loc 17 67 0 - ld.param.f32 %f16, [__cudaparm_particle_map_b_lo_x]; - sub.ftz.f32 %f17, %f5, %f16; - ld.param.f32 %f18, [__cudaparm_particle_map_delxinv]; - mul.ftz.f32 %f19, %f18, %f17; - mov.f32 %f20, 0f00000000; // 0 - setp.lt.ftz.f32 %p3, %f19, %f20; - @%p3 bra $Lt_0_8706; - ld.param.f32 %f21, [__cudaparm_particle_map_b_lo_y]; - sub.ftz.f32 %f22, %f6, %f21; - ld.param.f32 %f23, [__cudaparm_particle_map_delyinv]; - mul.ftz.f32 %f24, %f23, %f22; - mov.f32 %f25, 0f00000000; // 0 - setp.lt.ftz.f32 %p4, %f24, %f25; - @%p4 bra $Lt_0_8706; - ld.param.f32 %f26, [__cudaparm_particle_map_b_lo_z]; - sub.ftz.f32 %f27, %f7, %f26; - ld.param.f32 %f28, [__cudaparm_particle_map_delzinv]; - mul.ftz.f32 %f29, %f28, %f27; - mov.f32 %f30, 0f00000000; // 0 - setp.lt.ftz.f32 %p5, %f29, %f30; - @%p5 bra $Lt_0_8706; - cvt.rzi.ftz.s32.f32 %r28, %f19; - ld.param.s32 %r29, [__cudaparm_particle_map_nlocal_x]; - setp.ge.s32 %p6, %r28, %r29; - @%p6 bra $Lt_0_8706; - cvt.rzi.ftz.s32.f32 %r30, %f24; - ld.param.s32 %r31, [__cudaparm_particle_map_nlocal_y]; - setp.ge.s32 %p7, %r30, %r31; - @%p7 bra $Lt_0_8706; - cvt.rzi.ftz.s32.f32 %r32, %f29; - ld.param.s32 %r33, [__cudaparm_particle_map_nlocal_z]; - setp.gt.s32 %p8, %r33, %r32; - @%p8 bra $L_0_4866; -$Lt_0_8706: -$L_0_5122: - .loc 17 76 0 - mov.s32 %r34, 1; - ld.param.u64 %rd1, [__cudaparm_particle_map_error]; - st.global.s32 [%rd1+0], %r34; - bra.uni $Lt_0_7426; -$L_0_4866: - .loc 17 83 0 - mul.lo.s32 %r35, %r32, %r31; - add.s32 %r36, %r30, %r35; - mul.lo.s32 %r37, %r36, %r29; - add.s32 %r38, %r28, %r37; - ld.param.u64 %rd2, [__cudaparm_particle_map_counts]; - cvt.s64.s32 %rd3, %r38; - mul.wide.s32 %rd4, %r38, 4; - add.u64 %rd5, %rd2, %rd4; - mov.s32 %r39, 1; - atom.global.add.s32 %r40, [%rd5], %r39; - mov.s32 %r41, %r40; - ld.param.s32 %r42, [__cudaparm_particle_map_max_atoms]; - setp.gt.s32 %p9, %r42, %r41; - @%p9 bra $Lt_0_7682; - .loc 17 85 0 - mov.s32 %r43, 2; - ld.param.u64 %rd6, [__cudaparm_particle_map_error]; - st.global.s32 [%rd6+0], %r43; - .loc 16 118 0 - mov.s32 %r44, -1; - atom.global.add.s32 %r45, [%rd5], %r44; - bra.uni $Lt_0_7426; -$Lt_0_7682: - .loc 17 88 0 - ld.param.u64 %rd7, [__cudaparm_particle_map_ans]; - ld.param.s32 %r46, [__cudaparm_particle_map_atom_stride]; - mul.lo.s32 %r47, %r46, %r41; - add.s32 %r48, %r38, %r47; - cvt.s64.s32 %rd8, %r48; - mul.wide.s32 %rd9, %r48, 16; - add.u64 %rd10, %rd7, %rd9; - cvt.rn.f32.s32 %f31, %r28; - mov.f32 %f32, 0f3f000000; // 0.5 - add.ftz.f32 %f33, %f31, %f32; - sub.ftz.f32 %f34, %f33, %f19; - cvt.rn.f32.s32 %f35, %r30; - mov.f32 %f36, 0f3f000000; // 0.5 - add.ftz.f32 %f37, %f35, %f36; - sub.ftz.f32 %f38, %f37, %f24; - cvt.rn.f32.s32 %f39, %r32; - mov.f32 %f40, 0f3f000000; // 0.5 - add.ftz.f32 %f41, %f39, %f40; - sub.ftz.f32 %f42, %f41, %f29; - st.global.v4.f32 [%rd10+0], {%f34,%f38,%f42,%f14}; -$Lt_0_7426: -$L_0_4610: -$Lt_0_6914: -$Lt_0_6402: - .loc 17 92 0 - exit; -$LDWend_particle_map: - } // particle_map - - .entry make_rho ( - .param .u64 __cudaparm_make_rho_counts, - .param .u64 __cudaparm_make_rho_atoms, - .param .u64 __cudaparm_make_rho_brick, - .param .u64 __cudaparm_make_rho__rho_coeff, - .param .s32 __cudaparm_make_rho_atom_stride, - .param .s32 __cudaparm_make_rho_npts_x, - .param .s32 __cudaparm_make_rho_npts_y, - .param .s32 __cudaparm_make_rho_npts_z, - .param .s32 __cudaparm_make_rho_nlocal_x, - .param .s32 __cudaparm_make_rho_nlocal_y, - .param .s32 __cudaparm_make_rho_nlocal_z, - .param .s32 __cudaparm_make_rho_order_m_1, - .param .s32 __cudaparm_make_rho_order, - .param .s32 __cudaparm_make_rho_order2) - { - .reg .u32 %r<119>; - .reg .u64 %rd<57>; - .reg .f32 %f<26>; - .reg .pred %p<27>; - .shared .align 4 .b8 __cuda___cuda_local_var_32578_33_non_const_rho_coeff168[256]; - .shared .align 4 .b8 __cuda___cuda_local_var_32579_33_non_const_front424[320]; - .shared .align 4 .b8 __cuda___cuda_local_var_32580_33_non_const_ans744[2048]; - .loc 17 101 0 -$LDWbegin_make_rho: - ld.param.s32 %r1, [__cudaparm_make_rho_order2]; - ld.param.s32 %r2, [__cudaparm_make_rho_order]; - add.s32 %r3, %r1, %r2; - cvt.s32.u32 %r4, %tid.x; - setp.le.s32 %p1, %r3, %r4; - @%p1 bra $Lt_1_16898; - .loc 17 108 0 - mov.u64 %rd1, __cuda___cuda_local_var_32578_33_non_const_rho_coeff168; - cvt.s64.s32 %rd2, %r4; - mul.wide.s32 %rd3, %r4, 4; - ld.param.u64 %rd4, [__cudaparm_make_rho__rho_coeff]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_1_16898: - mov.u64 %rd1, __cuda___cuda_local_var_32578_33_non_const_rho_coeff168; - shr.s32 %r5, %r4, 31; - mov.s32 %r6, 31; - and.b32 %r7, %r5, %r6; - add.s32 %r8, %r7, %r4; - shr.s32 %r9, %r8, 5; - mul.lo.s32 %r10, %r9, 32; - sub.s32 %r11, %r4, %r10; - setp.lt.s32 %p2, %r11, %r2; - @!%p2 bra $Lt_1_17410; - .loc 17 114 0 - mov.u64 %rd7, __cuda___cuda_local_var_32579_33_non_const_front424; - mov.f32 %f2, 0f00000000; // 0 - cvt.s64.s32 %rd8, %r11; - shr.s32 %r12, %r4, 31; - mov.s32 %r13, 31; - and.b32 %r14, %r12, %r13; - add.s32 %r15, %r14, %r4; - shr.s32 %r16, %r15, 5; - cvt.s64.s32 %rd9, %r16; - mul.wide.s32 %rd10, %r16, 40; - add.u64 %rd11, %rd8, %rd10; - mul.lo.u64 %rd12, %rd11, 4; - add.u64 %rd13, %rd7, %rd12; - st.shared.f32 [%rd13+128], %f2; -$Lt_1_17410: - mov.u64 %rd7, __cuda___cuda_local_var_32579_33_non_const_front424; - .loc 17 116 0 - bar.sync 0; - ld.param.s32 %r17, [__cudaparm_make_rho_npts_x]; - shr.s32 %r18, %r17, 31; - mov.s32 %r19, 31; - and.b32 %r20, %r18, %r19; - add.s32 %r21, %r20, %r17; - shr.s32 %r22, %r21, 5; - add.s32 %r23, %r22, 1; - mov.u32 %r24, 0; - setp.le.s32 %p3, %r23, %r24; - @%p3 bra $Lt_1_17922; - shr.s32 %r25, %r4, 31; - mov.s32 %r26, 31; - and.b32 %r27, %r25, %r26; - add.s32 %r28, %r27, %r4; - shr.s32 %r29, %r28, 5; - add.s32 %r30, %r11, 32; - ld.param.s32 %r31, [__cudaparm_make_rho_nlocal_y]; - ld.param.s32 %r32, [__cudaparm_make_rho_nlocal_x]; - mul.lo.s32 %r33, %r31, %r32; - mov.u32 %r34, %ctaid.x; - mul.lo.u32 %r35, %r34, 2; - add.u32 %r36, %r29, %r35; - ld.param.s32 %r37, [__cudaparm_make_rho_npts_y]; - div.s32 %r38, %r36, %r37; - ld.param.s32 %r39, [__cudaparm_make_rho_order_m_1]; - setp.lt.s32 %p4, %r38, %r39; - sub.s32 %r40, %r39, %r38; - mov.s32 %r41, 0; - selp.s32 %r42, %r40, %r41, %p4; - ld.param.s32 %r43, [__cudaparm_make_rho_nlocal_z]; - setp.ge.s32 %p5, %r38, %r43; - sub.s32 %r44, %r43, %r38; - add.s32 %r45, %r44, %r2; - sub.s32 %r46, %r45, 1; - selp.s32 %r47, %r46, %r2, %p5; - rem.s32 %r48, %r36, %r37; - setp.lt.s32 %p6, %r48, %r39; - sub.s32 %r49, %r39, %r48; - mov.s32 %r50, 0; - selp.s32 %r51, %r49, %r50, %p6; - setp.ge.s32 %p7, %r48, %r31; - sub.s32 %r52, %r31, %r48; - add.s32 %r53, %r52, %r2; - sub.s32 %r54, %r53, 1; - selp.s32 %r55, %r54, %r2, %p7; - mov.s32 %r56, %r23; - mov.s32 %r57, 0; - setp.gt.s32 %p8, %r2, %r57; - mov.s32 %r58, 0; - cvt.s64.s32 %rd14, %r11; - cvt.s64.s32 %rd15, %r29; - mul.lo.s32 %r59, %r23, 32; - mul.wide.s32 %rd16, %r29, 40; - add.u64 %rd17, %rd14, %rd16; - ld.param.s32 %r60, [__cudaparm_make_rho_npts_z]; - setp.gt.s32 %p9, %r60, %r38; - mul.lo.u64 %rd18, %rd17, 4; - selp.s32 %r61, 1, 0, %p9; - add.u64 %rd19, %rd18, %rd7; - mov.u64 %rd20, __cuda___cuda_local_var_32580_33_non_const_ans744; - mov.s32 %r62, %r56; -$Lt_1_18434: - // Loop body line 116, nesting depth: 1, estimated iterations: unknown - @!%p8 bra $Lt_1_18690; - mov.s32 %r63, %r2; - cvt.s64.s32 %rd21, %r4; - mul.wide.s32 %rd22, %r4, 4; - add.u64 %rd23, %rd20, %rd22; - mov.s32 %r64, 0; - mov.s32 %r65, %r63; -$Lt_1_19202: - // Loop body line 116, nesting depth: 2, estimated iterations: unknown - .loc 17 140 0 - mov.f32 %f3, 0f00000000; // 0 - st.shared.f32 [%rd23+0], %f3; - add.s32 %r64, %r64, 1; - add.u64 %rd23, %rd23, 256; - setp.ne.s32 %p10, %r64, %r2; - @%p10 bra $Lt_1_19202; -$Lt_1_18690: - add.s32 %r66, %r11, %r58; - set.lt.u32.s32 %r67, %r66, %r32; - neg.s32 %r68, %r67; - and.b32 %r69, %r61, %r68; - mov.u32 %r70, 0; - setp.eq.s32 %p11, %r69, %r70; - @%p11 bra $Lt_1_20226; - .loc 17 143 0 - mov.s32 %r71, %r42; - setp.ge.s32 %p12, %r42, %r47; - @%p12 bra $Lt_1_20226; - sub.s32 %r72, %r47, %r42; - setp.lt.s32 %p13, %r51, %r55; - mov.s32 %r73, %r72; -$Lt_1_20738: - // Loop body line 143, nesting depth: 2, estimated iterations: unknown - .loc 17 145 0 - mov.s32 %r74, %r51; - @!%p13 bra $Lt_1_20994; - sub.s32 %r75, %r55, %r51; - sub.s32 %r76, %r71, %r42; - add.s32 %r77, %r38, %r42; - add.s32 %r78, %r48, %r51; - sub.s32 %r79, %r77, %r39; - sub.s32 %r80, %r78, %r39; - add.s32 %r81, %r76, %r79; - mul.lo.s32 %r82, %r33, %r81; - ld.param.s32 %r83, [__cudaparm_make_rho_atom_stride]; - ld.param.u64 %rd24, [__cudaparm_make_rho_counts]; - mov.s32 %r84, %r75; -$Lt_1_21506: - // Loop body line 145, nesting depth: 3, estimated iterations: unknown - .loc 17 147 0 - sub.s32 %r85, %r74, %r51; - add.s32 %r86, %r85, %r80; - mul.lo.s32 %r87, %r86, %r32; - add.s32 %r88, %r82, %r87; - add.s32 %r89, %r66, %r88; - cvt.s64.s32 %rd25, %r89; - mul.wide.s32 %rd26, %r89, 4; - add.u64 %rd27, %rd24, %rd26; - ld.global.s32 %r90, [%rd27+0]; - mul.lo.s32 %r91, %r90, %r83; - .loc 17 148 0 - mov.s32 %r92, %r89; - setp.ge.s32 %p14, %r89, %r91; - @%p14 bra $Lt_1_21762; - sub.s32 %r93, %r3, 1; - cvt.s64.s32 %rd28, %r83; - mul.wide.s32 %rd29, %r83, 16; - mov.s32 %r94, -1; - setp.gt.s32 %p15, %r93, %r94; - ld.param.u64 %rd30, [__cudaparm_make_rho_atoms]; - mul.lo.u64 %rd31, %rd25, 16; - add.u64 %rd32, %rd30, %rd31; -$Lt_1_22274: - // Loop body line 148, nesting depth: 4, estimated iterations: unknown - .loc 17 149 0 - ld.global.f32 %f4, [%rd32+0]; - @!%p15 bra $Lt_1_29954; - sub.s32 %r95, %r93, %r74; - mov.s32 %r96, -1; - sub.s32 %r97, %r96, %r74; - cvt.s64.s32 %rd33, %r2; - mul.wide.s32 %rd34, %r2, 4; - ld.global.f32 %f5, [%rd32+4]; - ld.global.f32 %f6, [%rd32+8]; - cvt.s64.s32 %rd35, %r95; - mul.wide.s32 %rd36, %r95, 4; - add.u64 %rd37, %rd1, %rd36; - sub.s32 %r98, %r93, %r71; - cvt.s64.s32 %rd38, %r98; - mul.wide.s32 %rd39, %r98, 4; - add.u64 %rd40, %rd1, %rd39; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, 0f00000000; // 0 -$Lt_1_23042: - // Loop body line 149, nesting depth: 5, estimated iterations: unknown - .loc 17 154 0 - ld.shared.f32 %f9, [%rd37+0]; - fma.rn.ftz.f32 %f8, %f8, %f5, %f9; - .loc 17 155 0 - ld.shared.f32 %f10, [%rd40+0]; - fma.rn.ftz.f32 %f7, %f7, %f6, %f10; - sub.u64 %rd40, %rd40, %rd34; - sub.s32 %r95, %r95, %r2; - sub.u64 %rd37, %rd37, %rd34; - setp.gt.s32 %p16, %r95, %r97; - @%p16 bra $Lt_1_23042; - bra.uni $Lt_1_22530; -$Lt_1_29954: - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, 0f00000000; // 0 -$Lt_1_22530: - .loc 17 157 0 - ld.global.f32 %f11, [%rd32+12]; - mul.ftz.f32 %f12, %f7, %f8; - mul.ftz.f32 %f13, %f11, %f12; - @!%p8 bra $Lt_1_23554; - mov.s32 %r99, %r2; - cvt.s64.s32 %rd41, %r4; - mul.wide.s32 %rd42, %r4, 4; - add.u64 %rd43, %rd20, %rd42; - mov.s32 %r100, 0; - mov.s32 %r101, %r99; -$Lt_1_24066: - // Loop body line 157, nesting depth: 5, estimated iterations: unknown - .loc 17 161 0 - add.s32 %r102, %r100, %r1; - mov.s32 %r103, %r102; - setp.lt.s32 %p17, %r102, %r100; - @%p17 bra $Lt_1_30466; - cvt.s64.s32 %rd44, %r2; - mul.wide.s32 %rd34, %r2, 4; - cvt.s64.s32 %rd45, %r102; - mul.wide.s32 %rd46, %r102, 4; - add.u64 %rd47, %rd1, %rd46; - mov.f32 %f14, 0f00000000; // 0 -$Lt_1_24834: - // Loop body line 161, nesting depth: 6, estimated iterations: unknown - .loc 17 162 0 - ld.shared.f32 %f15, [%rd47+0]; - fma.rn.ftz.f32 %f14, %f4, %f14, %f15; - sub.s32 %r103, %r103, %r2; - sub.u64 %rd47, %rd47, %rd34; - setp.ge.s32 %p18, %r103, %r100; - @%p18 bra $Lt_1_24834; - bra.uni $Lt_1_24322; -$Lt_1_30466: - mov.f32 %f14, 0f00000000; // 0 -$Lt_1_24322: - .loc 17 163 0 - ld.shared.f32 %f16, [%rd43+0]; - fma.rn.ftz.f32 %f17, %f14, %f13, %f16; - st.shared.f32 [%rd43+0], %f17; - add.s32 %r100, %r100, 1; - add.u64 %rd43, %rd43, 256; - setp.ne.s32 %p19, %r100, %r2; - @%p19 bra $Lt_1_24066; -$Lt_1_23554: - add.s32 %r92, %r92, %r83; - add.u64 %rd32, %rd29, %rd32; - setp.gt.s32 %p20, %r91, %r92; - @%p20 bra $Lt_1_22274; -$Lt_1_21762: - add.s32 %r74, %r74, 1; - setp.ne.s32 %p21, %r55, %r74; - @%p21 bra $Lt_1_21506; -$Lt_1_20994: - add.s32 %r71, %r71, 1; - setp.ne.s32 %p22, %r47, %r71; - @%p22 bra $Lt_1_20738; -$Lt_1_20226: -$Lt_1_19714: - .loc 17 172 0 - bar.sync 0; - @!%p2 bra $Lt_1_26626; - .loc 17 174 0 - ld.shared.f32 %f18, [%rd19+128]; - st.shared.f32 [%rd19+0], %f18; - .loc 17 175 0 - mov.f32 %f19, 0f00000000; // 0 - st.shared.f32 [%rd19+128], %f19; - bra.uni $Lt_1_26370; -$Lt_1_26626: - .loc 17 177 0 - mov.f32 %f20, 0f00000000; // 0 - st.shared.f32 [%rd19+0], %f20; -$Lt_1_26370: - @!%p8 bra $Lt_1_26882; - mov.s32 %r104, %r2; - cvt.s64.s32 %rd48, %r4; - mov.s32 %r105, %r11; - add.s32 %r106, %r11, %r2; - mul.wide.s32 %rd49, %r4, 4; - add.u64 %rd50, %rd20, %rd49; - mov.s64 %rd51, %rd19; - mov.s32 %r107, %r104; -$Lt_1_27394: - // Loop body line 177, nesting depth: 2, estimated iterations: unknown - .loc 17 180 0 - ld.shared.f32 %f21, [%rd50+0]; - ld.shared.f32 %f22, [%rd51+0]; - add.ftz.f32 %f23, %f21, %f22; - st.shared.f32 [%rd51+0], %f23; - .loc 17 181 0 - bar.sync 0; - add.s32 %r105, %r105, 1; - add.u64 %rd51, %rd51, 4; - add.u64 %rd50, %rd50, 256; - setp.ne.s32 %p23, %r105, %r106; - @%p23 bra $Lt_1_27394; -$Lt_1_26882: - set.lt.u32.s32 %r108, %r66, %r17; - neg.s32 %r109, %r108; - and.b32 %r110, %r61, %r109; - mov.u32 %r111, 0; - setp.eq.s32 %p24, %r110, %r111; - @%p24 bra $Lt_1_27906; - .loc 17 185 0 - ld.shared.f32 %f24, [%rd19+0]; - ld.param.u64 %rd52, [__cudaparm_make_rho_brick]; - add.s32 %r112, %r11, %r58; - mul.lo.s32 %r113, %r37, %r17; - mul.lo.s32 %r114, %r38, %r113; - mul.lo.s32 %r115, %r48, %r17; - add.s32 %r116, %r114, %r115; - add.s32 %r117, %r112, %r116; - cvt.s64.s32 %rd53, %r117; - mul.wide.s32 %rd54, %r117, 4; - add.u64 %rd55, %rd52, %rd54; - st.global.f32 [%rd55+0], %f24; -$Lt_1_27906: - add.s32 %r58, %r58, 32; - setp.ne.s32 %p25, %r58, %r59; - @%p25 bra $Lt_1_18434; -$Lt_1_17922: - .loc 17 189 0 - exit; -$LDWend_make_rho: - } // make_rho - - .entry interp ( - .param .u64 __cudaparm_interp_x_, - .param .u64 __cudaparm_interp_q_, - .param .s32 __cudaparm_interp_nlocal, - .param .u64 __cudaparm_interp_brick, - .param .u64 __cudaparm_interp__rho_coeff, - .param .s32 __cudaparm_interp_npts_x, - .param .s32 __cudaparm_interp_npts_yx, - .param .f32 __cudaparm_interp_b_lo_x, - .param .f32 __cudaparm_interp_b_lo_y, - .param .f32 __cudaparm_interp_b_lo_z, - .param .f32 __cudaparm_interp_delxinv, - .param .f32 __cudaparm_interp_delyinv, - .param .f32 __cudaparm_interp_delzinv, - .param .s32 __cudaparm_interp_order, - .param .s32 __cudaparm_interp_order2, - .param .f32 __cudaparm_interp_qqrd2e_scale, - .param .u64 __cudaparm_interp_ans) - { - .reg .u32 %r<56>; - .reg .u64 %rd<37>; - .reg .f32 %f<69>; - .reg .pred %p<14>; - .shared .align 4 .b8 __cuda___cuda_local_var_32676_33_non_const_rho_coeff2888[256]; - .shared .align 4 .b8 __cuda___cuda_local_var_32677_33_non_const_rho1d_03144[2048]; - .shared .align 4 .b8 __cuda___cuda_local_var_32678_33_non_const_rho1d_15192[2048]; - // __cuda_local_var_32694_12_non_const_ek = 16 - .loc 17 199 0 -$LDWbegin_interp: - ld.param.s32 %r1, [__cudaparm_interp_order2]; - ld.param.s32 %r2, [__cudaparm_interp_order]; - add.s32 %r3, %r1, %r2; - cvt.s32.u32 %r4, %tid.x; - setp.le.s32 %p1, %r3, %r4; - @%p1 bra $Lt_2_8706; - .loc 17 206 0 - mov.u64 %rd1, __cuda___cuda_local_var_32676_33_non_const_rho_coeff2888; - cvt.s64.s32 %rd2, %r4; - mul.wide.s32 %rd3, %r4, 4; - ld.param.u64 %rd4, [__cudaparm_interp__rho_coeff]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_2_8706: - mov.u64 %rd1, __cuda___cuda_local_var_32676_33_non_const_rho_coeff2888; - .loc 17 207 0 - bar.sync 0; - mov.u32 %r5, %ctaid.x; - mov.u32 %r6, %ntid.x; - mul.lo.u32 %r7, %r5, %r6; - add.u32 %r8, %r4, %r7; - ld.param.s32 %r9, [__cudaparm_interp_nlocal]; - setp.le.s32 %p2, %r9, %r8; - @%p2 bra $Lt_2_9218; - .loc 17 215 0 - mov.u32 %r10, %r8; - mov.s32 %r11, 0; - mov.u32 %r12, %r11; - mov.s32 %r13, 0; - mov.u32 %r14, %r13; - mov.s32 %r15, 0; - mov.u32 %r16, %r15; - tex.1d.v4.f32.s32 {%f2,%f3,%f4,%f5},[pos_tex,{%r10,%r12,%r14,%r16}]; - mov.f32 %f6, %f2; - mov.f32 %f7, %f3; - mov.f32 %f8, %f4; - .loc 17 216 0 - mov.u32 %r17, %r8; - mov.s32 %r18, 0; - mov.u32 %r19, %r18; - mov.s32 %r20, 0; - mov.u32 %r21, %r20; - mov.s32 %r22, 0; - mov.u32 %r23, %r22; - tex.1d.v4.f32.s32 {%f9,%f10,%f11,%f12},[q_tex,{%r17,%r19,%r21,%r23}]; - mov.f32 %f13, %f9; - ld.param.f32 %f14, [__cudaparm_interp_qqrd2e_scale]; - mul.ftz.f32 %f15, %f14, %f13; - mov.f32 %f16, 0f00000000; // 0 - setp.neu.ftz.f32 %p3, %f15, %f16; - @!%p3 bra $Lt_2_9986; - mov.s32 %r24, 0; - setp.gt.s32 %p4, %r2, %r24; - ld.param.f32 %f17, [__cudaparm_interp_b_lo_x]; - sub.ftz.f32 %f18, %f6, %f17; - ld.param.f32 %f19, [__cudaparm_interp_delxinv]; - mul.ftz.f32 %f20, %f19, %f18; - @!%p4 bra $Lt_2_16386; - mov.u64 %rd7, __cuda___cuda_local_var_32677_33_non_const_rho1d_03144; - mov.u64 %rd8, __cuda___cuda_local_var_32678_33_non_const_rho1d_15192; - cvt.rzi.ftz.s32.f32 %r25, %f20; - cvt.rn.f32.s32 %f21, %r25; - mov.f32 %f22, 0f3f000000; // 0.5 - add.ftz.f32 %f23, %f21, %f22; - sub.ftz.f32 %f24, %f23, %f20; - ld.param.f32 %f25, [__cudaparm_interp_b_lo_y]; - sub.ftz.f32 %f26, %f7, %f25; - ld.param.f32 %f27, [__cudaparm_interp_delyinv]; - mul.ftz.f32 %f28, %f27, %f26; - cvt.rzi.ftz.s32.f32 %r26, %f28; - cvt.rn.f32.s32 %f29, %r26; - mov.f32 %f30, 0f3f000000; // 0.5 - add.ftz.f32 %f31, %f29, %f30; - sub.ftz.f32 %f32, %f31, %f28; - mov.s32 %r27, %r2; - cvt.s64.s32 %rd9, %r4; - mov.s32 %r28, %r1; - mul.wide.s32 %rd3, %r4, 4; - add.u64 %rd10, %rd3, %rd7; - add.u64 %rd11, %rd3, %rd8; - mov.s32 %r29, 0; - mov.s32 %r30, %r27; -$Lt_2_10754: - // Loop body line 216, nesting depth: 1, estimated iterations: unknown - .loc 17 235 0 - mov.f32 %f33, 0f00000000; // 0 - mov.f32 %f34, 0f00000000; // 0 - st.shared.f32 [%rd10+0], %f34; - .loc 17 236 0 - mov.f32 %f35, 0f00000000; // 0 - mov.f32 %f36, 0f00000000; // 0 - st.shared.f32 [%rd11+0], %f36; - .loc 17 237 0 - mov.s32 %r31, %r28; - setp.lt.s32 %p5, %r28, %r29; - @%p5 bra $Lt_2_11010; - cvt.s64.s32 %rd12, %r2; - mul.wide.s32 %rd13, %r2, 4; - cvt.s64.s32 %rd14, %r28; - mul.wide.s32 %rd15, %r28, 4; - add.u64 %rd16, %rd1, %rd15; -$Lt_2_11522: - // Loop body line 237, nesting depth: 2, estimated iterations: unknown - .loc 17 238 0 - ld.shared.f32 %f37, [%rd16+0]; - fma.rn.ftz.f32 %f33, %f33, %f24, %f37; - st.shared.f32 [%rd10+0], %f33; - .loc 17 239 0 - fma.rn.ftz.f32 %f35, %f35, %f32, %f37; - st.shared.f32 [%rd11+0], %f35; - sub.s32 %r31, %r31, %r2; - sub.u64 %rd16, %rd16, %rd13; - setp.ge.s32 %p6, %r31, %r29; - @%p6 bra $Lt_2_11522; -$Lt_2_11010: - add.s32 %r29, %r29, 1; - add.s32 %r28, %r28, 1; - add.u64 %rd11, %rd11, 256; - add.u64 %rd10, %rd10, 256; - setp.ne.s32 %p7, %r28, %r3; - @%p7 bra $Lt_2_10754; - bra.uni $Lt_2_10242; -$Lt_2_16386: - cvt.rzi.ftz.s32.f32 %r25, %f20; - mov.u64 %rd8, __cuda___cuda_local_var_32678_33_non_const_rho1d_15192; - mov.u64 %rd7, __cuda___cuda_local_var_32677_33_non_const_rho1d_03144; -$Lt_2_10242: - .loc 17 243 0 - ld.param.f32 %f38, [__cudaparm_interp_b_lo_z]; - sub.ftz.f32 %f39, %f8, %f38; - ld.param.f32 %f40, [__cudaparm_interp_delzinv]; - mul.ftz.f32 %f41, %f40, %f39; - cvt.rzi.ftz.s32.f32 %r32, %f41; - ld.param.s32 %r33, [__cudaparm_interp_npts_yx]; - mul.lo.s32 %r34, %r32, %r33; - add.s32 %r35, %r25, %r34; - @!%p4 bra $Lt_2_16898; - cvt.rn.f32.s32 %f42, %r32; - mov.f32 %f43, 0f3f000000; // 0.5 - add.ftz.f32 %f44, %f42, %f43; - sub.ftz.f32 %f45, %f44, %f41; - mov.s32 %r36, %r2; - ld.param.f32 %f46, [__cudaparm_interp_b_lo_y]; - sub.ftz.f32 %f47, %f7, %f46; - cvt.s64.s32 %rd17, %r4; - ld.param.f32 %f48, [__cudaparm_interp_delyinv]; - mul.ftz.f32 %f49, %f48, %f47; - cvt.rzi.ftz.s32.f32 %r37, %f49; - ld.param.s32 %r38, [__cudaparm_interp_npts_x]; - mul.lo.s32 %r39, %r37, %r38; - mul.wide.s32 %rd3, %r4, 4; - add.s32 %r40, %r39, %r35; - add.u64 %rd18, %rd3, %rd7; - add.u64 %rd19, %rd3, %rd8; - cvt.s64.s32 %rd20, %r38; - mul.wide.s32 %rd21, %r38, 16; - mov.s32 %r41, %r40; - ld.param.u64 %rd22, [__cudaparm_interp_brick]; - mov.s32 %r42, 0; - mov.f32 %f50, 0f00000000; // 0 - mov.f32 %f51, 0f00000000; // 0 - mov.f32 %f52, 0f00000000; // 0 - mov.s32 %r43, %r36; -$Lt_2_12802: - // Loop body line 243, nesting depth: 1, estimated iterations: unknown - .loc 17 246 0 - add.s32 %r44, %r42, %r1; - mov.s32 %r45, %r44; - setp.lt.s32 %p8, %r44, %r42; - @%p8 bra $Lt_2_17154; - cvt.s64.s32 %rd23, %r2; - mul.wide.s32 %rd13, %r2, 4; - cvt.s64.s32 %rd24, %r44; - mul.wide.s32 %rd25, %r44, 4; - add.u64 %rd26, %rd1, %rd25; - mov.f32 %f53, 0f00000000; // 0 -$Lt_2_13570: - // Loop body line 246, nesting depth: 2, estimated iterations: unknown - .loc 17 247 0 - ld.shared.f32 %f54, [%rd26+0]; - fma.rn.ftz.f32 %f53, %f45, %f53, %f54; - sub.s32 %r45, %r45, %r2; - sub.u64 %rd26, %rd26, %rd13; - setp.ge.s32 %p9, %r45, %r42; - @%p9 bra $Lt_2_13570; - bra.uni $Lt_2_13058; -$Lt_2_17154: - mov.f32 %f53, 0f00000000; // 0 -$Lt_2_13058: - .loc 17 249 0 - mov.s32 %r46, %r41; - mov.s32 %r47, %r2; - mul.ftz.f32 %f55, %f15, %f53; - mov.s32 %r48, %r46; - mov.s64 %rd27, %rd19; - cvt.s64.s32 %rd28, %r46; - mul.wide.s32 %rd29, %r46, 16; - mov.s32 %r49, 0; - mov.s32 %r50, %r47; -$Lt_2_14594: - // Loop body line 249, nesting depth: 2, estimated iterations: unknown - mov.s32 %r51, %r2; - mov.s32 %r52, %r48; - add.s32 %r53, %r48, %r2; - mov.s64 %rd30, %rd18; - ld.shared.f32 %f56, [%rd27+0]; - add.u64 %rd31, %rd29, %rd22; - mul.ftz.f32 %f57, %f55, %f56; - mov.s32 %r54, %r51; -$Lt_2_15362: - // Loop body line 249, nesting depth: 3, estimated iterations: unknown - .loc 17 253 0 - ld.shared.f32 %f58, [%rd30+0]; - mul.ftz.f32 %f59, %f58, %f57; - ld.global.v4.f32 {%f60,%f61,%f62,_}, [%rd31+0]; - .loc 17 255 0 - mul.ftz.f32 %f63, %f59, %f60; - sub.ftz.f32 %f52, %f52, %f63; - .loc 17 256 0 - mul.ftz.f32 %f64, %f59, %f61; - sub.ftz.f32 %f51, %f51, %f64; - .loc 17 257 0 - mul.ftz.f32 %f65, %f59, %f62; - sub.ftz.f32 %f50, %f50, %f65; - add.s32 %r52, %r52, 1; - add.u64 %rd31, %rd31, 16; - add.u64 %rd30, %rd30, 256; - setp.ne.s32 %p10, %r52, %r53; - @%p10 bra $Lt_2_15362; - add.s32 %r49, %r49, 1; - add.s32 %r48, %r48, %r38; - add.u64 %rd29, %rd29, %rd21; - add.u64 %rd27, %rd27, 256; - setp.ne.s32 %p11, %r49, %r2; - @%p11 bra $Lt_2_14594; - add.s32 %r42, %r42, 1; - add.s32 %r41, %r46, %r33; - setp.ne.s32 %p12, %r42, %r2; - @%p12 bra $Lt_2_12802; - bra.uni $Lt_2_9730; -$Lt_2_16898: - mov.f32 %f50, 0f00000000; // 0 - mov.f32 %f51, 0f00000000; // 0 - mov.f32 %f52, 0f00000000; // 0 - bra.uni $Lt_2_9730; -$Lt_2_9986: - mov.f32 %f50, 0f00000000; // 0 - mov.f32 %f51, 0f00000000; // 0 - mov.f32 %f52, 0f00000000; // 0 -$Lt_2_9730: - .loc 17 264 0 - ld.param.u64 %rd32, [__cudaparm_interp_ans]; - cvt.s64.s32 %rd33, %r8; - mul.wide.s32 %rd34, %r8, 16; - add.u64 %rd35, %rd32, %rd34; - mov.f32 %f66, %f67; - st.global.v4.f32 [%rd35+0], {%f52,%f51,%f50,%f66}; -$Lt_2_9218: - .loc 17 266 0 - exit; -$LDWend_interp: - } // interp - diff --git a/lib/gpu/pppm_f_ptx.h b/lib/gpu/pppm_f_ptx.h deleted file mode 100644 index 388926ff11..0000000000 --- a/lib/gpu/pppm_f_ptx.h +++ /dev/null @@ -1,818 +0,0 @@ -const char * pppm_f = -" .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 .f32 __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 .f32 __cudaparm_particle_map_b_lo_x,\n" -" .param .f32 __cudaparm_particle_map_b_lo_y,\n" -" .param .f32 __cudaparm_particle_map_b_lo_z,\n" -" .param .f32 __cudaparm_particle_map_delxinv,\n" -" .param .f32 __cudaparm_particle_map_delyinv,\n" -" .param .f32 __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<44>;\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" -" ld.param.f32 %f13, [__cudaparm_particle_map_delvolinv];\n" -" mul.ftz.f32 %f14, %f13, %f12;\n" -" mov.f32 %f15, 0f00000000; \n" -" setp.neu.ftz.f32 %p2, %f14, %f15;\n" -" @!%p2 bra $Lt_0_7426;\n" -" .loc 17 67 0\n" -" ld.param.f32 %f16, [__cudaparm_particle_map_b_lo_x];\n" -" sub.ftz.f32 %f17, %f5, %f16;\n" -" ld.param.f32 %f18, [__cudaparm_particle_map_delxinv];\n" -" mul.ftz.f32 %f19, %f18, %f17;\n" -" mov.f32 %f20, 0f00000000; \n" -" setp.lt.ftz.f32 %p3, %f19, %f20;\n" -" @%p3 bra $Lt_0_8706;\n" -" ld.param.f32 %f21, [__cudaparm_particle_map_b_lo_y];\n" -" sub.ftz.f32 %f22, %f6, %f21;\n" -" ld.param.f32 %f23, [__cudaparm_particle_map_delyinv];\n" -" mul.ftz.f32 %f24, %f23, %f22;\n" -" mov.f32 %f25, 0f00000000; \n" -" setp.lt.ftz.f32 %p4, %f24, %f25;\n" -" @%p4 bra $Lt_0_8706;\n" -" ld.param.f32 %f26, [__cudaparm_particle_map_b_lo_z];\n" -" sub.ftz.f32 %f27, %f7, %f26;\n" -" ld.param.f32 %f28, [__cudaparm_particle_map_delzinv];\n" -" mul.ftz.f32 %f29, %f28, %f27;\n" -" mov.f32 %f30, 0f00000000; \n" -" setp.lt.ftz.f32 %p5, %f29, %f30;\n" -" @%p5 bra $Lt_0_8706;\n" -" cvt.rzi.ftz.s32.f32 %r28, %f19;\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.ftz.s32.f32 %r30, %f24;\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.ftz.s32.f32 %r32, %f29;\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, 16;\n" -" add.u64 %rd10, %rd7, %rd9;\n" -" cvt.rn.f32.s32 %f31, %r28;\n" -" mov.f32 %f32, 0f3f000000; \n" -" add.ftz.f32 %f33, %f31, %f32;\n" -" sub.ftz.f32 %f34, %f33, %f19;\n" -" cvt.rn.f32.s32 %f35, %r30;\n" -" mov.f32 %f36, 0f3f000000; \n" -" add.ftz.f32 %f37, %f35, %f36;\n" -" sub.ftz.f32 %f38, %f37, %f24;\n" -" cvt.rn.f32.s32 %f39, %r32;\n" -" mov.f32 %f40, 0f3f000000; \n" -" add.ftz.f32 %f41, %f39, %f40;\n" -" sub.ftz.f32 %f42, %f41, %f29;\n" -" st.global.v4.f32 [%rd10+0], {%f34,%f38,%f42,%f14};\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 .f32 %f<26>;\n" -" .reg .pred %p<27>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32578_33_non_const_rho_coeff168[256];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32579_33_non_const_front424[320];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32580_33_non_const_ans744[2048];\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_33_non_const_rho_coeff168;\n" -" cvt.s64.s32 %rd2, %r4;\n" -" mul.wide.s32 %rd3, %r4, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_make_rho__rho_coeff];\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_16898:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32578_33_non_const_rho_coeff168;\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_33_non_const_front424;\n" -" mov.f32 %f2, 0f00000000; \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, 4;\n" -" add.u64 %rd13, %rd7, %rd12;\n" -" st.shared.f32 [%rd13+128], %f2;\n" -"$Lt_1_17410:\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32579_33_non_const_front424;\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, 4;\n" -" selp.s32 %r61, 1, 0, %p9;\n" -" add.u64 %rd19, %rd18, %rd7;\n" -" mov.u64 %rd20, __cuda___cuda_local_var_32580_33_non_const_ans744;\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, 4;\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.f32 %f3, 0f00000000; \n" -" st.shared.f32 [%rd23+0], %f3;\n" -" add.s32 %r64, %r64, 1;\n" -" add.u64 %rd23, %rd23, 256;\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, 16;\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, 16;\n" -" add.u64 %rd32, %rd30, %rd31;\n" -"$Lt_1_22274:\n" -" .loc 17 149 0\n" -" ld.global.f32 %f4, [%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, 4;\n" -" ld.global.f32 %f5, [%rd32+4];\n" -" ld.global.f32 %f6, [%rd32+8];\n" -" cvt.s64.s32 %rd35, %r95;\n" -" mul.wide.s32 %rd36, %r95, 4;\n" -" add.u64 %rd37, %rd1, %rd36;\n" -" sub.s32 %r98, %r93, %r71;\n" -" cvt.s64.s32 %rd38, %r98;\n" -" mul.wide.s32 %rd39, %r98, 4;\n" -" add.u64 %rd40, %rd1, %rd39;\n" -" mov.f32 %f7, 0f00000000; \n" -" mov.f32 %f8, 0f00000000; \n" -"$Lt_1_23042:\n" -" .loc 17 154 0\n" -" ld.shared.f32 %f9, [%rd37+0];\n" -" fma.rn.ftz.f32 %f8, %f8, %f5, %f9;\n" -" .loc 17 155 0\n" -" ld.shared.f32 %f10, [%rd40+0];\n" -" fma.rn.ftz.f32 %f7, %f7, %f6, %f10;\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.f32 %f7, 0f00000000; \n" -" mov.f32 %f8, 0f00000000; \n" -"$Lt_1_22530:\n" -" .loc 17 157 0\n" -" ld.global.f32 %f11, [%rd32+12];\n" -" mul.ftz.f32 %f12, %f7, %f8;\n" -" mul.ftz.f32 %f13, %f11, %f12;\n" -" @!%p8 bra $Lt_1_23554;\n" -" mov.s32 %r99, %r2;\n" -" cvt.s64.s32 %rd41, %r4;\n" -" mul.wide.s32 %rd42, %r4, 4;\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, 4;\n" -" cvt.s64.s32 %rd45, %r102;\n" -" mul.wide.s32 %rd46, %r102, 4;\n" -" add.u64 %rd47, %rd1, %rd46;\n" -" mov.f32 %f14, 0f00000000; \n" -"$Lt_1_24834:\n" -" .loc 17 162 0\n" -" ld.shared.f32 %f15, [%rd47+0];\n" -" fma.rn.ftz.f32 %f14, %f4, %f14, %f15;\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.f32 %f14, 0f00000000; \n" -"$Lt_1_24322:\n" -" .loc 17 163 0\n" -" ld.shared.f32 %f16, [%rd43+0];\n" -" fma.rn.ftz.f32 %f17, %f14, %f13, %f16;\n" -" st.shared.f32 [%rd43+0], %f17;\n" -" add.s32 %r100, %r100, 1;\n" -" add.u64 %rd43, %rd43, 256;\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.f32 %f18, [%rd19+128];\n" -" st.shared.f32 [%rd19+0], %f18;\n" -" .loc 17 175 0\n" -" mov.f32 %f19, 0f00000000; \n" -" st.shared.f32 [%rd19+128], %f19;\n" -" bra.uni $Lt_1_26370;\n" -"$Lt_1_26626:\n" -" .loc 17 177 0\n" -" mov.f32 %f20, 0f00000000; \n" -" st.shared.f32 [%rd19+0], %f20;\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, 4;\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.f32 %f21, [%rd50+0];\n" -" ld.shared.f32 %f22, [%rd51+0];\n" -" add.ftz.f32 %f23, %f21, %f22;\n" -" st.shared.f32 [%rd51+0], %f23;\n" -" .loc 17 181 0\n" -" bar.sync 0;\n" -" add.s32 %r105, %r105, 1;\n" -" add.u64 %rd51, %rd51, 4;\n" -" add.u64 %rd50, %rd50, 256;\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.f32 %f24, [%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, 4;\n" -" add.u64 %rd55, %rd52, %rd54;\n" -" st.global.f32 [%rd55+0], %f24;\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 .f32 __cudaparm_interp_b_lo_x,\n" -" .param .f32 __cudaparm_interp_b_lo_y,\n" -" .param .f32 __cudaparm_interp_b_lo_z,\n" -" .param .f32 __cudaparm_interp_delxinv,\n" -" .param .f32 __cudaparm_interp_delyinv,\n" -" .param .f32 __cudaparm_interp_delzinv,\n" -" .param .s32 __cudaparm_interp_order,\n" -" .param .s32 __cudaparm_interp_order2,\n" -" .param .f32 __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<69>;\n" -" .reg .pred %p<14>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32676_33_non_const_rho_coeff2888[256];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32677_33_non_const_rho1d_03144[2048];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_32678_33_non_const_rho1d_15192[2048];\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_33_non_const_rho_coeff2888;\n" -" cvt.s64.s32 %rd2, %r4;\n" -" mul.wide.s32 %rd3, %r4, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_interp__rho_coeff];\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_2_8706:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_32676_33_non_const_rho_coeff2888;\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 {%f2,%f3,%f4,%f5},[pos_tex,{%r10,%r12,%r14,%r16}];\n" -" mov.f32 %f6, %f2;\n" -" mov.f32 %f7, %f3;\n" -" mov.f32 %f8, %f4;\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 {%f9,%f10,%f11,%f12},[q_tex,{%r17,%r19,%r21,%r23}];\n" -" mov.f32 %f13, %f9;\n" -" ld.param.f32 %f14, [__cudaparm_interp_qqrd2e_scale];\n" -" mul.ftz.f32 %f15, %f14, %f13;\n" -" mov.f32 %f16, 0f00000000; \n" -" setp.neu.ftz.f32 %p3, %f15, %f16;\n" -" @!%p3 bra $Lt_2_9986;\n" -" mov.s32 %r24, 0;\n" -" setp.gt.s32 %p4, %r2, %r24;\n" -" ld.param.f32 %f17, [__cudaparm_interp_b_lo_x];\n" -" sub.ftz.f32 %f18, %f6, %f17;\n" -" ld.param.f32 %f19, [__cudaparm_interp_delxinv];\n" -" mul.ftz.f32 %f20, %f19, %f18;\n" -" @!%p4 bra $Lt_2_16386;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32677_33_non_const_rho1d_03144;\n" -" mov.u64 %rd8, __cuda___cuda_local_var_32678_33_non_const_rho1d_15192;\n" -" cvt.rzi.ftz.s32.f32 %r25, %f20;\n" -" cvt.rn.f32.s32 %f21, %r25;\n" -" mov.f32 %f22, 0f3f000000; \n" -" add.ftz.f32 %f23, %f21, %f22;\n" -" sub.ftz.f32 %f24, %f23, %f20;\n" -" ld.param.f32 %f25, [__cudaparm_interp_b_lo_y];\n" -" sub.ftz.f32 %f26, %f7, %f25;\n" -" ld.param.f32 %f27, [__cudaparm_interp_delyinv];\n" -" mul.ftz.f32 %f28, %f27, %f26;\n" -" cvt.rzi.ftz.s32.f32 %r26, %f28;\n" -" cvt.rn.f32.s32 %f29, %r26;\n" -" mov.f32 %f30, 0f3f000000; \n" -" add.ftz.f32 %f31, %f29, %f30;\n" -" sub.ftz.f32 %f32, %f31, %f28;\n" -" mov.s32 %r27, %r2;\n" -" cvt.s64.s32 %rd9, %r4;\n" -" mov.s32 %r28, %r1;\n" -" mul.wide.s32 %rd3, %r4, 4;\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.f32 %f33, 0f00000000; \n" -" mov.f32 %f34, 0f00000000; \n" -" st.shared.f32 [%rd10+0], %f34;\n" -" .loc 17 236 0\n" -" mov.f32 %f35, 0f00000000; \n" -" mov.f32 %f36, 0f00000000; \n" -" st.shared.f32 [%rd11+0], %f36;\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, 4;\n" -" cvt.s64.s32 %rd14, %r28;\n" -" mul.wide.s32 %rd15, %r28, 4;\n" -" add.u64 %rd16, %rd1, %rd15;\n" -"$Lt_2_11522:\n" -" .loc 17 238 0\n" -" ld.shared.f32 %f37, [%rd16+0];\n" -" fma.rn.ftz.f32 %f33, %f33, %f24, %f37;\n" -" st.shared.f32 [%rd10+0], %f33;\n" -" .loc 17 239 0\n" -" fma.rn.ftz.f32 %f35, %f35, %f32, %f37;\n" -" st.shared.f32 [%rd11+0], %f35;\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, 256;\n" -" add.u64 %rd10, %rd10, 256;\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.ftz.s32.f32 %r25, %f20;\n" -" mov.u64 %rd8, __cuda___cuda_local_var_32678_33_non_const_rho1d_15192;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_32677_33_non_const_rho1d_03144;\n" -"$Lt_2_10242:\n" -" .loc 17 243 0\n" -" ld.param.f32 %f38, [__cudaparm_interp_b_lo_z];\n" -" sub.ftz.f32 %f39, %f8, %f38;\n" -" ld.param.f32 %f40, [__cudaparm_interp_delzinv];\n" -" mul.ftz.f32 %f41, %f40, %f39;\n" -" cvt.rzi.ftz.s32.f32 %r32, %f41;\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.f32.s32 %f42, %r32;\n" -" mov.f32 %f43, 0f3f000000; \n" -" add.ftz.f32 %f44, %f42, %f43;\n" -" sub.ftz.f32 %f45, %f44, %f41;\n" -" mov.s32 %r36, %r2;\n" -" ld.param.f32 %f46, [__cudaparm_interp_b_lo_y];\n" -" sub.ftz.f32 %f47, %f7, %f46;\n" -" cvt.s64.s32 %rd17, %r4;\n" -" ld.param.f32 %f48, [__cudaparm_interp_delyinv];\n" -" mul.ftz.f32 %f49, %f48, %f47;\n" -" cvt.rzi.ftz.s32.f32 %r37, %f49;\n" -" ld.param.s32 %r38, [__cudaparm_interp_npts_x];\n" -" mul.lo.s32 %r39, %r37, %r38;\n" -" mul.wide.s32 %rd3, %r4, 4;\n" -" add.s32 %r40, %r39, %r35;\n" -" add.u64 %rd18, %rd3, %rd7;\n" -" add.u64 %rd19, %rd3, %rd8;\n" -" cvt.s64.s32 %rd20, %r38;\n" -" mul.wide.s32 %rd21, %r38, 16;\n" -" mov.s32 %r41, %r40;\n" -" ld.param.u64 %rd22, [__cudaparm_interp_brick];\n" -" mov.s32 %r42, 0;\n" -" mov.f32 %f50, 0f00000000; \n" -" mov.f32 %f51, 0f00000000; \n" -" mov.f32 %f52, 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, 4;\n" -" cvt.s64.s32 %rd24, %r44;\n" -" mul.wide.s32 %rd25, %r44, 4;\n" -" add.u64 %rd26, %rd1, %rd25;\n" -" mov.f32 %f53, 0f00000000; \n" -"$Lt_2_13570:\n" -" .loc 17 247 0\n" -" ld.shared.f32 %f54, [%rd26+0];\n" -" fma.rn.ftz.f32 %f53, %f45, %f53, %f54;\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.f32 %f53, 0f00000000; \n" -"$Lt_2_13058:\n" -" .loc 17 249 0\n" -" mov.s32 %r46, %r41;\n" -" mov.s32 %r47, %r2;\n" -" mul.ftz.f32 %f55, %f15, %f53;\n" -" mov.s32 %r48, %r46;\n" -" mov.s64 %rd27, %rd19;\n" -" cvt.s64.s32 %rd28, %r46;\n" -" mul.wide.s32 %rd29, %r46, 16;\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.f32 %f56, [%rd27+0];\n" -" add.u64 %rd31, %rd29, %rd22;\n" -" mul.ftz.f32 %f57, %f55, %f56;\n" -" mov.s32 %r54, %r51;\n" -"$Lt_2_15362:\n" -" .loc 17 253 0\n" -" ld.shared.f32 %f58, [%rd30+0];\n" -" mul.ftz.f32 %f59, %f58, %f57;\n" -" ld.global.v4.f32 {%f60,%f61,%f62,_}, [%rd31+0];\n" -" .loc 17 255 0\n" -" mul.ftz.f32 %f63, %f59, %f60;\n" -" sub.ftz.f32 %f52, %f52, %f63;\n" -" .loc 17 256 0\n" -" mul.ftz.f32 %f64, %f59, %f61;\n" -" sub.ftz.f32 %f51, %f51, %f64;\n" -" .loc 17 257 0\n" -" mul.ftz.f32 %f65, %f59, %f62;\n" -" sub.ftz.f32 %f50, %f50, %f65;\n" -" add.s32 %r52, %r52, 1;\n" -" add.u64 %rd31, %rd31, 16;\n" -" add.u64 %rd30, %rd30, 256;\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, 256;\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 %f50, 0f00000000; \n" -" mov.f32 %f51, 0f00000000; \n" -" mov.f32 %f52, 0f00000000; \n" -" bra.uni $Lt_2_9730;\n" -"$Lt_2_9986:\n" -" mov.f32 %f50, 0f00000000; \n" -" mov.f32 %f51, 0f00000000; \n" -" mov.f32 %f52, 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 %f66, %f67;\n" -" st.global.v4.f32 [%rd35+0], {%f52,%f51,%f50,%f66};\n" -"$Lt_2_9218:\n" -" .loc 17 266 0\n" -" exit;\n" -"$LDWend_interp:\n" -" }\n" -; diff --git a/lib/gpu/radixsort_app.cu_o b/lib/gpu/radixsort_app.cu_o deleted file mode 100644 index 6be742d62390f9e604ab52ffefc1fcdea95cf1ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3128960 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

urSC{T_9 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%0DV)k zi}dwlMuon&qRyTqVE`nHjJy$muQ5vi?PC~d|^Ed9SMM# zZ7k=usb*MsiY_;2SiP4BeoBz2H9K@sX}1u%hUl&1%f+fW4A?{06AAXvwM+0q?AldO z@n$MWid{pv$Jn*aS-!8r{}Z{cvFjw)c50$*UvNt&kt<_qlx`6?0~>&06)G;qu5T^^ z$`3$Kj~hj=CyPLY1-Sq~7aM%}U*{<6Ow zum82&yU@0}R;~8=^xRde{ZFa-@8x)XK1X`vp@xr7yX(8-J`eY|l#0vo`CJkvZHwy! zKn?ze0JL2D%L!K;yng!EZu(yL7?&zv`ZB%8XO_)r%JjZTjMHLudQwH66oBEv+NOO1 zY08z68;;%;;D%vKyPc$;j)5XUHD<4cU%nd00{=eeVRq$Uux1nitXmPc+u}_pg0VJl z37+M0?CuVc?wZ3i7Mr^%$Xz>dU>DmtJfD`uw`&Jmnp^GM64_|UHyMzXg%lzB@Cbo6 zuQia#FwNVJ!t|b?0zdKtYcJS!%p$^IEN(~RABHV*^jQ&&a2P+lluEObL;SAR(oW6t z1DfU31=Z#e-|=A%W2*BPJ$>n&Q;Y7|Gg7UesBPV>f^#2M@iPUOM&GJuGVFyH2Ilg3 z0@$v3Dy7#v)t;%GQ^&W}DumX72AkRibA{T?Nc6?PfQc@4DSu#1u{T-Bs5B%OA4bJo z{Kdk`u%d4$tbE$5G{wMF@p}O-FKHnIdol8zacmvA(FA8a6`S)@2f*cbB|pUq8hEwt zeB)JyDh%KD6W;fa@Mi2@PkUvkvTStO2MX4F2qzBV+#>cDhF}#wI0XL)jdnQrEBVx7 z>i|LJj-1=TT8zoEJ0f5N+xajoyvaM{si=#YG^40}JWITJ#f_=X`{@Go$wmiFQHo(p z>2+6|9BmjQs{}MU?VKeGDr4dl5o`^4zIPC6^SulzG9mh&e68}L&-GzI$dq;}Vsegq zQd@`}L-3m_Zr;ss{w?oKG@&+q;M(RSp_rxwS^L5gWn)mmqTy_zh>Q!9g}YIx!wBxd z{1z8Mxgp)6+C(O}g~Ws4l)4GQ4}@rHbbO%_T#nr!Yl=^ADQntu^^)dgAR=%-1%yQA zEy_SN6L%4u8?hGa)m~h`JH6aN3bO7&8Pb;{SXg^_a7xf zrKzi8e;~K*E#kV)sMQk1t29Y7C?*xAjCTB?-rDKn2D#yKpZk|9z{lpr)K5&-yirP8 z>Z+zz^i>^nExBrAGKQH)pln)wRc3yeUz~^7`Qe>3R6nTzQVm0u9r6@L(HS3sY>bV- zihZOhN{@V^#b5F7q@WD0tGBeFVd%VMlxw|tZ6Pe;&VV_05*hr1#l$hjiH;VRW+y_j z(@pfvQ6S&(B;49~LTjVJR_D=Bxc*J#v*Ue zD4d-SfY}QKa*9x)Tp6FWXAh|CMso*VbDO4%ce^;XGWTn{KL|6JP5?yu*=g~CJQl1N#+oz>O z&uf!M&-*WxJG<_1Ve+QAv+M4#lsj8b^DQI|aDD4gdhGE$*KH}rN|Tc}2qu{9&Vbj; zX&`c+?k0Cs?h9f)z17k@-$IU~omlWa>YJQy20Pl!+eQbj1}9ps3g^@(3vBN>MwPXH zcroWJ_NzWPJ<`sEUU%P>?GBxo zN|3(nxGkJw$wU7d-}Pp}&kb=)GT0zbw0NU~X<&kDQ_WaPmOxf1&}Jr7dcNvLBugM9 zl=>+1o>j}UByqBe0hUP&yVO@|s?ML5vL#q}Hl2HRi6`8bZHIF9J7JrYDJ&<}v)A)o z+^G)iwTK^EC^8ePs=9lzL>jVG_O|j^8b7=O;11e#>G#YDyWF zUTp6XQ_7&tVngeuwDMXD^39x3Mu3R85OxY=FX@)VP^xo~bW4EHfb^2?=P>LAR8KNV z?=nY>H^R2WIgFH9G1J0a<}?YFCBs9W(bF{kS2B>)3=Bozn;rLqXEKGlE+U1aJ#z&+ z%~td9q{n>RCw}}47(PKRm4+jCC5Mo2=&Qo4tL3O_^2C%STF)(rQTA8`5o;TR2WEw! zUV<)k@L_9O4p0xo0T%dcr|6j$ywFe41B;@VQbB2eCM-5UF+EY!M&bk#L0?`XvhU&Y zm~wKc$X?}$=ug$$mc{$T1_jySP~`#xPJ-siTMS`z^h_dQ1@ zzgmek_7Qm}bM%ZjG`~56ra?3MO>Ie(u~e8RHc6Q@f2P7>a~6GQ+Hv{em2=fe$A@xT z7{!}%TPER}r_RBF0XeydL3uI6JWp9~&x#hNR^TJ13av3Jab-oDIbT-WtS*x&G2_;o zdJQQ!M7=;DyvuFnYEYVg%0(T`oVMFO8|dRnxRu4W^KBEcYxa#2#TnQYm!Wc&7L&Lt z4VNZhX}A-Oc1os+J2tnI+}gV9IYA-|KcS?aOp~0R^xcWJ5d6%!%F54T#uk!krfO4P z+K-L7FWoO*rmAAluy|P-iqMvR@rsO+`1mqiyO>&}<=il%w8H77WSYnu`6L}SgJYBd zI2vZjCsD5|xrbH5jt{*URTq+JR5niC9n`9f?&VGnPOYRt)~CLZOp`@_iIYtd^vUF- zeC-JaIlRJBoRs!+HJRoBC@uzFa>}h4eT43bpV9(}LdQT*{-7H<(TqXadHxu0 zcLeK|d8^xmzCUkuyPbRTR(2-L?*Q32Z*^bWZ^~QU-^Cm9R(E#t>b%vR?Y|*!b!QKG zlinm_U{P#4w1RoQv!A!*t?umN^?9p1J4micLn=5JTaqd{7I)>X4k<@fO2u8qOI}Ws zN^$EMriHxKb$2@LH_lsKkqKJNg}pu*bUGs&cGiJ@--N~KwDmS`h9gdw-Rn4^w!$#Wj zaaWVJr}T&v_~rJz?&P$Glh@wibS*EWje%O4rsweC^r3w=`s?zg`rMuK(mh0rbYtv_ z2lz7$@I|f4%g@iu_qS*CD+e!^Gr4cid8ZgRkg>5l?9{gIj)y$Cy&XFP|2FNc=H|w} zAXc096`9aRqv3_WCay}W9ReT50Wxu`sa0d`dk~r)-ATF}w)rAwuB0pr2kE3N6l_j9 zYeO8iGHudz~bFv zvB0`Eq(eZ&B5%{Yl}ta9fHI>BlUMdfrVxx_SYUrhF?QD(3#7ZHT}<9YjH0QdcseYk ztw4fJ%|_mXOen6k0(9+n`6iZns;t&PaML#~gCoIB->}s55vWL)+4{q>Y-6I3+z`QC z%d);&ydns$1-j^<_@xgcTgLNXiZi&ZXMgW-E0c7XS4X0du>&7iQR;)r0;c-GCUJbd zFNx`C84z4$H+!o337L6BP%%w5&{Nei7cZ9Dc##}JjN6n5MU`XMg&(bM)ss=ce#9e} za0>&Krb+R!X^4WFb`43vT95sU-Obg|r=x7mFn>k;Bo~8JSuTYw4)Zrh$#ZkMV{H;E zJVg4q%`jQbpK($UeNM`uLshsk5bmdI#0x&5*I4x^bStJjc0oQ35&qBSAzVLT0%=kSNpLOP8OR zh^XvTx|r8e(|(^tk}l7#$%v~Yp19=QN+$S*m0c_3Jn3L@FL)LjpPy^7XeJYO18F3# z5u{!cykjf?ir3eH#A@400;S6YFC-z$p2x9mNWg4?))U!N2%Bq~3fV=EuRo}u_0f!a zNrzb0h36+kfAN=gt4o-vcSfr=75Ideugc}IHHI~|RIaq- zP9jd)Db#}rY0u_o54dsBf#`mdcK_LfMx=e?YC(bph_-Jsca!bDM+a?ie#6Qn=w!!d zFmeiUmAr*0-_|70j^~8t3RR%bA<8GBXcs#Vs~WQ;?Y-8|s%h$u3o^@@=jz zSO$1EUKE@&q~vB}NbWNwgE=Ss2?@F&;&Zj~o8cS}`g1nO3ME2>^aV?6@d5XBZI z7sDxdkJ$`SW;H-*(OtgZhmcI#`Ft8ea=@7UpI#t5E`?x0A1Cq1q`iQ{5@zu-Ls_BA z2Ct%6ArNMuYB&{j8sbp|C?%n&!DS(QO6nNPLxh5KiP&cfA(^Op2Mk{n_ACS_E!e?P zi~&mN5nJTrYGq@jP{K{k>;iJKJ2>D$@*X)^qMnDA1)+65dWY8=r zFrQB~%OSlS@gP|a=|uy*_&cQ61E~v|1)6aDf$0@@JxVIIF{K`wmZ-l((^Ji&Vyo#f z^uK%Y=4RBsr2CGOm0nwJM04G@ZdRhq1Vk9nl)99>X zq@~LR={rVdKr!p+@|A(m+tH8v1EIIuSqp@6&#}{$x7#CM?{E9nfzZdgcx52;flgi( z2z{XaR|Y~K=pp-~4+laY=;yV8&`m(7Z2Fzds9su^H;8Q+Da!_18J)2+C35nm27GX=L7UI>hw1TA;5_Y)X&#^qKn;ad7NE7VxtwxO4G;c0z*?30F^L?7La5vW6LEv{$md#jm0SdAIzFR; zhR>>n-B?x&?Y%fx0x*>WN($}pDn`YUyK@~L4#fl~N-Ht(Hw1m^F0aOzug7MSf7(Ue z`c`QfOW%~8OG<0;&IM+g*w2`W-xvUs*+bwRvOO>};MqtjpmGp%kyC@l%oGLsEt zX4*;S1tmJ#^#NoGl_(#-C)J;iO*F@DiXD`QvA9jCzN|zBd|sftE7+(+5!E)!BKY7) zcPuChNj)vm{rrq@eW5!@)6pFbG<3)NG?tT$%N|`&5@ezV2HO=b(UH~esC$C>RXLU! zm|9v3Ai~b^X?B(ZlZ|cDHzQXj%GBTb!vDz@miHM3aj3Y5wH)jyf%6tfy-;$GrEE5x zdX8z1Id;!}!cpMTBia~u-NZ>Mm^U4`EAu}`<@+TQSQ&f&%F5upSiPQ?6C18N<9;-C zn*={ObUri8%H#yW<=l)0{}gVKYF<^Xn1dQvUT0H+Pb=YYx+fJqNoh=Pq%7VFsnI+^K z`l^t|OTX1ZXhv=e#mKBS+iN+_#8!|4qp6>C%RnWTkQOUGeHTyPUn z{CWuOWi+__9Vo)<%DuM~pJK@9%nPKh#h(~NOhlu7fCn`Zcv zS8(H1Ea(~Jb)A96?0@dtiIViQmK+(7uk$#)+wXDHa5qocV7~)It519GU-L3|jW?ID z&3qfjw9T{06S%~_hB{?uaYl25XKa?|Y=C8HD*;!iQZIZu< zhi4d(EW=*lOw{o2xSC$(5KH{bpEekkE?!u4{Nz%I`| zmfHH)5I7X(|{ohC!&0fx(xX*EUR-`+2CZHET*PfULJS5IW%>vchl`@_h|;brAD zYRB%WRS%lIGGZD0ig^k#NpkS%U{hZcat%Ej10t#oA&X{Ry`MW`MCpxnRX z!?gbug&@A3U+a5+JC6WRZbMlfKZ%z|dAsdR04VESm`c3~RSJhsdCo+%6 z>lZ*^oKL{BEZ{m;5G_dB-^3DJPnQJ{%1XnFsDkSmXAxgn(rpR+e!V;$qs>AGP<82g8jJJ%!}IoJ(b(lrWXg9erqXRIY=S$6;FrHimReE?Lgjy1U(%GS?du zEF$my-onO@e(uX_Z8-)ifAu%t-$K+s3VgJpOBul$D7*J2q|#5hCk@^=%f|j zmmG}0A8$n5>Nc8U*_vUziH{xuF{$V&BZ*KMi-9!eb%F#vZ6swcdi)Ns! z8nj|cbc2^nh#q(k(?gYd8m%>@21MU8pABLRdPt;6CAtFC)Rv1BOtp2776M69{Q$IEBRZ0HxU3fVe(DLTvDmNSj6-6?4e%K_tf`BxV?KVV!%C0><4TDI?w`18(#A7&MC;4wYbJ-|2rSuoiyXXNa2Hn+mJ^x9X~^U_lq(4V zBhyz^S3G!?l#l=a!EH-ol?#=BOn(8&qG8}wTb;`CFLU(N`MJX6C=F&P|QV5|YBU83hw#%xJv^8co`Z<0P?f0dE|R zmDi!9T{SipN)dSlol-3(W(i6GqHH?%9G#o6A5slQV7kopv}doShE-^C zV6Q<_SPY=ZOmJ4MMisv!8y;K+K?OEZDv2T&t^tB9`ojcJ&#ZG$ci-TzJyvM%KZW$LUdmKY!ljNR}eFQE=WDArHo@MNd z2uGZa%vYtTfoWVk$fz`bsvqaipP~;Gncnqp1yP0B1MfzIA@Lf4UsFXG;3yAPs4p3fn1GT<^RPf6ToogIWn;BR}uEZ;o6R1arP0VKSNX9gvnYM z)&{nF6>H-QA+?Fxo{hX&7yRv?I4qHC48Q5HHj-&aHM(+SAQ}cmBU{F+BKe9>$iWN}k1CHC2xHLRzf$ ziY+PkSC^hAfv?xY;$?y>7?I`8?e6L63Z%>{VIsG-@@V<_SimBWl3<~#!0w3yt`MAu zF(~)RU0Qp7)*>kPjqWW)P%gIqV~Lha>#hYn<6D7|WqFKt%;U%E|8G!hr1yih5#;75 zIqmdi=nZyzB72o?RqQnVK#YTf`9v)ZH8S;N^rlGxR5a9I4+=DUBEk;t+Y{X>3duk! z0GqNCaF%Z|bphgK1|g^yuIKHh*3CfI9$eU4L%XT`?j=%?zr_7?$=mhH7}y?YS6LBR zUKRt=WeK}m6Gt6muiY& z1F@;_Euk#r?(1;Wun{%IA|$2Xh#Dg2#Wp!{@FDN*kV^24=+5&cZ62O<5JFA69;Zs= z;mts?fs*j|_wh!?RcTL%L6FkDWqDhvlxh_w!S#y2p_!VncqkjQP*8*<+R`;zhIJU0 zW`WJxq)yrF48}NNDHqT*_?nyUxS(<1b1EDIE;?2wnR`|k&wO?WR^Clp>EtL*&G^-f zD^Xxp=RBU-N;Z(`exr`dvxB1q%ovo_t|u)< z84%j+URym8t`jW4;QmISaVBshtu3hGTwJW)NL#i^3&^ngSmujs5WTt~mZyXETQWY> zEgPP;?1@q$m3aZ1`3VIwcEg~8va%F86BHPlbq4*)Bx4j zsZ?9IMVE=BP3e;GBcTPZfLcc+=*$MB)raT@Oiq93E(|K5kLLIZ3+_(w6Hp6MPfPd9 z0*b&_<|x{dS?LwV&CStftH^4_tI%`PxG8i+LKiO4B?e|wTIbN)1g~Ob!#XPDN#Au-=S+6N50+{()T<*rZ33)Kvc=$LbZ6)3W(Z3R9hdSo(f0? zG@}=v=#FZy0M((kw)7~ z<}EnsE&Pk3bxgxd+CKIsVYv zzHH6H4aBtXlI}Y$xiFXszvy+d7KEAVrk8c#YCTGsG>{GSx*0iUQ&FxEg9gdsLxZBM zLt6B_9*nFdjc_JwslK2UY^s~I!=%gEV+Tn$%@BM0WzcRB#4x^LS6ohLF!#B@l7|8+R$Dp(Ju*zcnzCcTnkzptG~QtY>r^{=ZM5u?1_ z_9iLz^)5C@v9EN(U2BtVg~R#K>bTPW1}XNH9s&UMgD9R@@ix9y`zsu>OY`03*^?Q%|iW$ zhl4gN1dAYQ&r0q180jB8W<@tK)52$un26CY9&f>ia3`|^hXkXCTYRI~hO$Y|dd}DB z(TOp>FEMj}Ki=>$fLmr(-}%3wU*CL(Yn(s5J3=LI7$yujCn`;nO)PrS)D6i%8%Yy$ ztvzvUSEk1=3(=&K4Wswjhfqn7zCg%Aj*?W~a&4)h<(?2;=3yozmdu?5hcOp27}JKEiYbR+*P`% zhR#cHb{BiM4QoJP@Z*bWeI?B`R!m`(-KbxN%%Z8Apm^i^6sL=n3S8;u`Kt0A<+x z#0OGJT(W}ffkN%B``xnp?@rmPaNMdRaHtiqgRCGmDCT4#Pe9c+)2U^YRCRnz?W#}9 z+gix?`_!M|r}%uD`m-t-I^#Wxgp`mC3?gAl=*e>_(J=S|DaaKn%raCEfyHRDw6uA7 zUDGx;4dtb@%@Xr+cf12-b=t(dWRWuTt4}03Vk{ZT36bkTg*Wr^q{~1y&^KE~kN zwczo*{7OJ&o4mZFqX^h?Uf%4cb}A!ZKwa@=yUhIh+%17pVsEZpQR%{zY!Q`EGV^e9 z!{|76veF`M^lX(=Yq}}t?rEsd+7Pqo7F(d3Q{& zpKWS>K|k>|nKjGJL*113#jQya$ZZ&t%4ZD3`~>rVx=up zuDZF10#&!WU+`9Le&IyEq?>(ARrm4S{JQx5=M8f6BuA0G(_(J^mg*Kf#irT$_36*G z_tES;xK*^*Zc+?#yfP7fd*EGKYnh~h%m41KIZk!TbTC? zcEIuf=EIjAe%C(yo2|%`5=+e#HtZtp?Cv@zz1!IV=%)7nA!T+;?f<=M|9h@+f7s#r zm;dm$fBldD^!|6>et3slM_w&8P`yy?{Xt%EiZO6$YSWHh1xSmIgVCD%6t++7&dq8(3I!aZ(@dujNbLlCXKnyRzI59x=?I&4i8BQa>U9!<1Q4K#)4D+K1?*xriHmK-7l7 zruq}a`Vb@N-6eJYqNgt$U8*E!NgRB`x%NGY^j6=i@5-`)Xt?i7v|*$dUR^*Bs~lLe z!-CKXXVT&X#HrFR}Ftc$r*A&}`iKAd;h(?$iZSE* zP_?|1tzs4i=Bx1L@(lRtV*R@P6*Ab>uY;z2`}zH+Z$5wf{f8g^^6O*tcK!-rCf>}J zd&4Y+M*aNjKYsrmK0(R3yu0JRP6xKhkyJF5ZTYVEQ>;pMtj~hOI=+;wpGT~;)9j!5 znLpXH;hAiTu|&_(B4lA7_R6I$Kak;Om;D1-X7<-Vkl|(wt6Md>hZlVqSE>t#y)HjP z=Rp!hx%Z!ZAq($^W@N4F5=ix$d?ER>*p&qY(ifQ8C)j2i0SamA$;`C?&FMsQOd|>j+PY-#ES8hp2(Nf)1JRW490EyTdd(ro>fIOu zSXhQo??*OI#*1XiGdZ$ZM9`;GDJ>Wkbfs(^LR2-Leu~=@!MkW+x97T(s9<5uxcT;h zA<*rqLy&b_rh=lQW@4Vt{RpJ2UUyE;)SX12cTz_ni+5uLTv=@dRz@k)Kr&!Qlum5* zUN*GC7&xjWHe_MEk_gFNiwd1Izpad)CaX#wy9tj>l%ikhnZ*n3l#tz|3lK^!O2QQC zQ!7lTn$a*BwNpE$;jI3bg~#u?m9;<9qE0eEan_>XF1*vS<%1HP1U70{&K|kO&rYhR zSa^OOibXOV4JJ#XUN|5KL|*2Q9-z~RSN47-ZE0*+GD`{3+u~>^H&sovwq;A^?GMAG z>5xwObj_qinNKX%qe-(`nSPhBAAXriW0(WCs;okpRB6Se#jU;?LT}P6#%JX()$EVCp{_SdDeJxBevFxJr`f}^H_c7^DcvJ59b3E|J{f0KfL>AxVfK+%>Ml8 z$M^5vnc`g_xjAJGDq1VK`Gu{X4| z&{y*f(A6kmT;Piz>4pUT_GXb%M_0*{IaDHblDMl$oI1M7>#cmgio<+EHad?$eOtSF z>thy!{gZNJc?1#z%MuME5O-~=S8_LhC*oZ3hUk+=U?Wz$SHATz+alD&B@6RBGeNsv zo<+|q-mnyLrS!8XXF{yE&i6;1^TJ>FWU@s|oxL^xUXNHC7XUS&6TMM)1Ig5YX zXZCY8=HbC)&SKv)-WcaBPCcvDXLdcz+2}Qgn;OB;#4u+y=;s6WGb=(`L`8)iTd#bU zMM`r<9X(R!idl4%Mh(k&GR_*AVG)$?4D-eTC3~o*@#<{qA}QX)vytDTshSxkFPg^W zNz@s`;{<>z{glZcpQK9vz3k(6PsRXF0xcyeNBn?Opw`3)tC;Ve!~wlCnY_g%!9=w1hJ=vSS}LFoF$9BV*t)xIdV6)U%L{%U^=@1yNQC_wdbc)DmSSNoXw(B+}! z%qQdmBHN6EtVexcF5v9_P%Hub>ihE7X73kSBsc5(qWI+f%06m#eP1MRSMvIBfmRR{ zqpp0^`nvK=Po3PbIl zU@gq+VCd>YDS9AFVV~h0d<0NbF6R!1?SPnLq4MRc!%kex3rygCrPMe_gSWx7E=I~3 zsq)odeEribBHMH!#y4HaQg|%b4)QE?Q42;55m|JRi6#B#ADW-^z%oZ>p){BFY@Hn@ zl6~P*5N!99u4*R55J9j0CX;)`-vs?E7WDp4-+tyhfBlc|KfJs(D;j`=SLZJu1tSRB z@CCpK^L94_BP=vu5=c$1{WWNZg$_0XBP_HYxuRzD2+KSSMp$TnOEAJh7Y~CGo)YkY zl?Gv4{%Q(FFwnxAzzFj(CzbZ3R<^e=D=E8PWA!u}3%Ppp2W6CCR#Ia$eI@H&_iJ*# z^byT-?>5Upnr{@?1wK|b4U12kndSPnmEe@rVzV7FORj+{D~=&_O9j>k-nDwcKTO=k z&7@s@vb`nih8b}6+-e4)S|u3mTPoXKhy%-Wz(RqAj-?-w?#7>krvy7d_kNZU6#Kn1 ztVAOe1nYS~LCj~le1+^EefR94i`MuvATu!Z3W2B>OG#? zW@LtzP(0$kA;~kdwzcz`Ml%Jlre-@q`6`t4VJ~D$GQQ-~>^1}xL7S`>?S#_K#u}Vs zFbr0rjp5jxjTD~`{b}?s$r0kmbysAOXD3ODS9qG#_JX0#8Hizc5$#sWa0(Jb(#R%; z;n+ZYIAl*^0|N%22*YB}PwQ#_NopBA-k(|q&6K3P748m1cC&4mq?Scxb6qK0X{&DM z8nrdHNJnM2dAUZb{wq;PfAm#SAx~qYM}^Dk<#wLKrXi)!)d#k5WpDihX%`PqcHTL+ ztdj(;W@-KF!o|cpdfbyQWRPrNR&25AFH^^pFGLO-v5s5hKG53a3sK4T-*$j1rInc< z$0RAnA1RADJA>gwbB#Ie6zMCGTy06O8J*hR};%HtHq-9M$Hrbvb<{c&LOn<`ZcUfMEYd$fj*IWKBCYA+-6z#H4 zD7ax2tk)!#OAFRXTw1WRUm3g5iBn(w?gIW-TO@-C}dfiuo8 zv&OQ!VnXi7ezl>5FXkESi(GZ)d`0w}*OjTXq`2Pda@#{@*~CE0PCo+AZEFO}xoz2m zJOY28G_c%ulTsKn%htEelha8n5;NCm1#ei`xKdg<>raOC&|7kkLsIucW|^r*$QIh; zc+=*BX={7HF51myO>7SdH_L2WtIrgJAzY+(pE;qjzYGAjZCcp`t(oTQkqO(j`aMs| zBTm-fecTg}{YF2(lXh-De==Rx;CUV+lP|=4{4iy4KBnxRdt*f4^6$g#pdwT*_jzT@ zdjFicbP4bCJeMxveTEziQInwCI|PFxUBEL zBALuMc{Z8h$t4CZq?2`Wicy8#pAQ^d$S3OrlzlR=a4n%M8_7taR)!i*5-Mbt zP?nw<776db{2@Pjt?5y1q?8_YyI2y+LmXc z>ibQl4S`Md_)UF?5%gOPb^gnV`FxDsLN5$0-;ZioQN3g<;YTO|43+vK=e{!>zyt+C z(aD{~7kH}I!X^MH*0T7L2!Df8$+%yt+D2P&IO#;J6`A-P6(h8rwWGqS@eDsSm5kzd zeyA?If zc0V%(@dV?V2#i*pe69oBe`W&n{f@xeh-(d|1?&U?h0Z7Bfmhe8zJ@I9-|k z4MAY5-8kJA#v6RU8z*K0*hOlE@bRvdiS^|Eb-^ksM;txU)}ysD(}i*(Ql5o!BBoLp z!yEv~wPrKM;7iI;4xb&EV#*(ov&wT+7~OAQp$nc zO3_EOQ;I_iOARX$lQj9l@tqo( za6-8gI0CazWQe?U2-7h66HIRQiM4ODp*_v;H9~~YB#Z+N$aK$Gpd+3ssGUC~vZp*W zKL&Y0_X}88qdW|^IG%~#22B#&h@L|{(;yu*M7JtGlgsQCJGjBR34vgN052Dk6Q8T- zHsWrymdq*)SOH!ymEj4aDKM$D;6upyvelv~tcFn<=z$=1`Zx+^JV1qh*n6uf^IVujVoCwr+aKfwV*kg zgHNg+L9Z+oO`+F!fdqr*wYwhOX80G=@Nc)@`W8N`}rd-nAgPoT3^9HzW zpK>xB>sj#MGS(5?X3Nj5qA4tAK{hJ;ohLqE+lW<>0lsJ9ywJXtf%(FD`@=A41n1OG z*RX9w$rLf{v26{IhRxn-RaL>FjD8KCWBXi0FjGuCly+&x?<7@(}^Jr zfZdAZ!4TN&y;Nwe>WVtEqCyM-_JG|~Y@3&%kmj}gUBtE(I0j)sv6G<0XGM7pwvCV@ z4sfLesC5b()fN2^dYub=Q`A8j7Y6bYw_p0FZpqZ%`=@BFxwt z%X0*^IDka0`=D(^I{E(N?rJTVe~OS8Zpv^~ebE#{Gx-~&o4hW!&xVt7E zDB@T(#lTZ$?8Sv7a*m!-#7XF>G(xY|K_{;pf)xR=cJXXy71m`UTO=u7r!y7%Zqdtc9 z!`I{@7h(_aw!r$}RSr3AG92g=)md7An-DrUNXNPw1H{eiRCv>d^y#CewiPm5!jO}& zJ(QX$GY_1b=okex)(}vtOj#%I*R`aA8seoY!1R+hPGWT=iTlZG5UQ&&nYtDhDihF8-XTz+IoEdWeMVQLK%i7>rB1$wyzQP$iZGX+^R~&O$WA72 z2l-Hge8zbXf?Lx&DSAJ7LwLYPpH1FSAb2|4RUdFfn;80nb8M>}R0X4p5=z)&aJU?d%Poh!$fWT7*13Kqkhq&1&+w(nzFsOCd0 zm)7PrciqPG`m8$DMt*ehELILS!PXNR^uZ*!ErG43MHo_tj1F!VSYCqWX`#R+e_D6C zqB8RGCMa7eH2@e6rByi$!1iayVt=#|R9|3?z4MXUE9e zv}Y;UV<}aCB@)}aE+gIvz~RY?dKGA683f2@_u!^w8&F0oi3r=0^G75%2JP=_{Yuyo zmq;*;Pr3^qe1$RxMEMRXMwgBs1}&+b3<86;aA8_*IcV{G@;(Ob?^BV7?5Fh`8y#w0 z+2|B-YOgz1U2&dZvY0b9Xr5rwZA)8%_9k#pJJpLD8Kpd`_*)4R87485E3GOrjmahu zD@@1|xRvqxpFyEysc;kG>TGOj{R!q^$Ts~y?7dx&WXEwW`b_@{K3oI$z%tSG+1-Ml z4C%qJE-V}Z#}9fKkgAb9G}R=ALs>q=`R{kF6%m<{AG>x{S2gVe$dFo|+I#0mWMpLI zij|RRFAMXCAx=|H?w$V7G^Yn<2hC7&b?i7M7G~Cmd`hM6BFHrr6u0rWr-C}q>_M+C zVA-B8<64&OoU8l#d#R#z^K$RTvRx>?81;sy`Wlw)LIrnX*)EhGLE5JEuVL9Pl%JSm zZ&k(BEZfavWzgUbd9(f&Rn!qmV04#er6_2Yr!&u%hei0SN zL+!p5>K%iaQPtZm`YM^3YY=*#H)v=_b5fn1n-lj$`ju=abS)O6TN$G1EVSz!rgrX} zQ%ZB^q+Z%agsZp2+auI+wb#0!Yq3oAJ0}bVx+}d|&^F)ydkVEaQbL)C%UB%OCCVPR zE7Y6gg5KCA5=FF?@EB_ECZ@bmNui-Picr~Rr;81vnZ^iA&5R9etKK4`shM*PFa~He zBGCrDnfyL$K;m|KGtm!t%ZLg@Aw~nw*7PhZdN6->mtmAfi=NHjoUf^P9K?I+TDqTdzvv3COA?-A-mThas)#n8c8a$9fh+V;JI9(O=V= zPD(;OmQu4A%7DlU3n9o~;L-H7j4Y3RqR4tZEn{IJJnDQ5QqODUHH)Ei*_x~y(t7B? zRy{7~gR&b;f~tBLzN0hqamt)vDdO-MTRv2$86@WUSf5RPywO(})KpveOBTeG$WWiU zR8j!Zf<>MikKQKRlM@*l_f<^s(jGTOxSN2g$s&gKcth-eM5{@o%HR(4Ic$#cmak%c zqJWDt8J28)XV@1dVY)&_frC$2pX!kJTYgevc0#%`D3nS6Oe$_z@bFB!Y;KF5rSPh= zOi?Qf%nzg{jCJ%6G|^>dlKNf?d2!9eKBlja%39M2RKO*sph^e&zagit2E zD-R{q%Iow*bQ)bTKIl*T^zduoOoFU2KSP0_e@Is1iURFhq}f3^gCKQa{Y5?32vX#f z(rHowJweK^W>Z5B@`^8P0>`N~VI`v>Q`MCw^aQE6n~kzKu-HqbK*L#^utJau<}0Nz z5Tu;>swrsq7+)xbh9k7b`3&YOnlNxauOhx?RiH{$A;d|SsTN_ciaFuqFmgVn0~hjM zQwuuY>k3IMc&}anN4t{5GV!(5@ioq;j4tOdrxOZI8(QPC8VaqO+_?S7crX0=lZaAU8IhrYfN465O%F2p|T8o!`hV+@kL~LvhMNTssI_c9K zlX8wKw+X5MtD}}V1W%(o0_m<)e3W#mbtfTme?)sio2o-tzliUYC(Rb7zeA?kYBGbtR4AvWkv`2 zbvmOn`L(?TaGmx^rfQigIucZe<~6j>pvcDUkZB5Mf^5s8A9>a0+8dHv!~2vZY!vij&v?|jmTNM5EX!-9)m0?8r4mX909N)XXL{2F`K_J{kRDl2 zJr&fGnqU-B%Us$w!KtU(CM;7=4TP-e21n{?Hm2isdBzZRp;L=;>m*UWp^2Z_r4pT8 zPpGTw+G_y^)~B&i$y8>0)8>PmQqqmB3T_MQMzgX`N8+1Z%jP6k_ORdl2H%riD!WaG z#&G)^YZc>e*ltQ4aN9fIz>D~NwiE}EE3s{md2P5d@4t-gDzPrHU8SW{wyP69qxTf- zr1yoECKg1jw%gsv_%sEA3U|ZqSHw|Ssaoy0W3Oz(gHf7{ymw7S&*`qt_|&CV!`M6H zlec2^V;`4U+1RgAK3h)rNcnWWD|>-HCZ!jb6(Ad)OnQGa-&M_D;=7vIrhHdTiqQO3 z#%FWD=~awRY8kyRWOHsgg9|ASiEH@#m*zZVKmC(SNuR+?M5_kc;Ek-$_8h`G>$7F- zud_ZIOTSL~Y%f4OXnAb!mn&1-_A&sCvx5N(3KwKLf=fvc-QQ;Z?gzUVp;jU5F;oFt zwKRYwF4#6Ih@!IrT;qMprK0)Z%AOFU4RvqI`-FlKqm#jsIV2OPi&FPF8Y=Iz3xYrG zbs4CrMv3={y5TMI4?RLw&_zs}GeYD*YApLD(GWncXrob-QAHIri5P>HJ4saSuECZW zZA~sQNS*8^sGn#DR-POZqZ;gE3!K(n_BTRkZMz9a-mTq*9@IxJjSvWa zbS*hqV)koz&6{Mfyiz`8%WcI|mpS-dM7bOMWyU9jXAI7?Y@cO(ZsYyVFWgul1L|Vl zXWL}0Fy3UMYix3dJ`7EkzRt(n_?v01Jy7^V>p%Zi2~D@Z{pQQ`eD&>z zKfZjv|NM)upFAh*y9oyKwB=11?_R!pdH4J8UVixW?uRcwef9CvZ@>GXk-}c;usi4qRG!SMAsD|M=mBDU7cZZJvR~b;@oPmdutf=>ac!Ra_6NFJg>EZUI_5bX{|9 z$vwJzhXe~kV$=mcAc|%G2Tj_}W#r1eaNVb@we8ZluGAbj^zmMjKpHs2A_R0YXy(&b zw3=~AX!;qRlnw-T2QnmD8CtH9>3v2}1tXHVS+9xK`e)0zu$08hTt4XEoj{p3PV4^soRqI=^;S`>IF{exld2$dK4EbIr^9A3l9}`QzuO_uqf| zw_h@1%^&{s)u;EThAZ*o%fG*T_a86GeX#viFKLU-%Y_>T*3k}(JQYH!5)(_>;P)@c zYlgIaL-6OV<@zlC%pqu3##O2g&6By7mDJ-0lAt(tYe{8Y7}bW)#hIA^Uj_B6AzS!N zPuhJXCbl2Zf`ScIXnVuw%T>6K&e_SZK;BDY{B{q#&#dsS5ewAjd zF=m8aU}upx7PaECdOhp(>7b9Y8tsj$0S(*Mh8RLW_dOD78&tEbV~lnaCu%WB+Gu#A zeu;m*d&WODTjr&s;pjwz!LhCfGBUn`W|voln04}z*|NB;P8LEwIjDr%cL%ZTLq6C6 z>Du6Wn9pEy>gR#>ZIGM{pb8&nGQQI3t5I?$GnX9Iccy>Op?}zHh3MGcq<{MdZBIu1 z>n6$mAzd!`_!<6Ly6H2*S#EVkjM9cQDeZ{#;e{4m5YBXyFOuC^+5BelvIMu75!zm+ zMbt=tCT$v`evo{IP|m|3IXe*__v-EOek19D=VPPP1283@4kIHmN)&e9vLmgC+jz-hq=4XtteMhjDJTPm4Wy+_r=JU%i}>R4|!F_PT)N;WYw z6KqYB{nRzX5N=LLi>B-kN>WpVyOlBwI%)+)_~So5oC5R0jFa#fjOm5z;VBm`7qYPj zSR^Q1#i*#mHKuE~1zW`gbkdY^awM02*}aKGoQ8J>C>KSsPG_r-*Em(-ojvtQA`IP-m=07`$aruopIaLV4 zv+84YI$AqUg6nNQdte=-4Yvc~rgE*u8F(lcS7)?`F_(oAqBoAYYz#{n##~jMEDyy= z7h^+}dn3M!?13faGZhxH#t@}Rp~mSCH90-7;{<9%jfvC~UYefzj?)_!;yEQ8L`~d+ zRMp^?I;+NBY^C>q`S6MF{OVudznor$Is`U%9X@a|AXo9cI{57~`>jnm9DX$zEySsOHdK z4wjZ{$2`EJCnGYU@;oyZOGGC|T!IPQA03rwa#|5Fki$v4UfE8v+%V}gs7hh4rsa7ZR81^ka?!3Bd{;QA6nM&bP1Y>RU^?7rs#)iMZ<;)Od0TaxdsP6D1@wj z7`z#lshZ@B3die5Rz2ka4J)W2QoexFd&`0NeZhIlgh(h$Kq{#F7ElgTyXzxbGvGFo z*vVRp<9qmG;+bwrXc>K#$K^ff=lWfmTxBxZi{~-JERlw_aI$)2Lsoq75UDw=(OY!3 z$G^}ogeWMu!IdRCLpM(_*7OBvq`xo)msEK`fULXC#9FJa0yqOMY0o~Yoh%2NO0CR( ztbDG=NGp@~cAQXD6TbQa;II2Ud2%y!l`Y?@V(ek$*JsC9Df z>aJ(Rmt{_KCR;7J{)y+;TULjd=G%9DOQ5MAr)wdm z*g!(DDDb>XSb~`H29i_u>5+{XB@Yd3jKTN@rfRk)9n`9c>7`DQ4a8u6sI7x|vUnN-9mUoU=?Z_uFSUs&SXK|un9oB>Vx zPV&`h=j4hyT!R-b0GhDSh3MJaSk65XjtQ2cuQgyR-LT4i|DEAaNN&FqlvE|R08OEc z-(3hzP4(CNieh^G4WhNlcLAI72`D^?)1zWj1o8%KszP|crWV%Ef=v|+&&82V%Mv!# zxrqBGowhAfT*Ri%E&;;-2v^<-oti8GvGJ$*hZg&G%aw=|@g@WyZK%ifC6Gc+=Ar{u zv(Y7OqR>t3R~Q3p?YQ_r1~3)J$E8qrAw6a2rT7=;LCi3YXI6t(;83IRQQ##w)cD~= zI28G5^``3^aj1D=H{ehU1%^5{aM8s$)Iy=z&1nk07>8OY_+}hxq1-fW{s;WXKYjHV zq9|MxezEz*=5Idx2|wE9(dfb7e*A~S42OEE*i^}Mx7Tm?2BIFfPp=1}<|0UQ4Wtvs zXY=L}7NfOyR1Gqjfa#-(`yGLu)SrMrX7=nnmr7)CE(SPQte zO!kD5;(rHXm@RiY>vY*dyP%)R5^13&2J4!J?%x7MVRHL2NJV}NepqsVjbFnElF+Py zmxU>y2W|RDO$qcgD7};B;0E;$kcH+vX<0{_i~M!5L365HdrX2o7fDEdk;?(L zIvFrRFeS5`zwd9jmG+F_M6A=$8|Q{XFC$z}y2z!o5f*NY0m<7IRMTx+a6EoGAUY*@ z(@a|&5wpzm5it#&jfhkYxFijgA$w4w9FoOG7p|=K!_%CE?7Ij}F(i~kJ0vV14~a8! zIB2nO3V0RgZ5(iM3ZwK6YVlyup!gie3%3r}YCiM}Cp(0X_vYR;3!N#--Pf==2H;pP0Li? z^N!Gq5u@n*bmSewM$`da+SL0UhJ6Y_8~hF@qQL<5gJdJ`)V))17xOAd-P=W^lH9>i za3>zctlKX^`aAdPIxmr(i~0E7^oV_t+fqV#@z|BNkXW=`q7Zo~d3`-csTt4Q>H2oxv!4UO^d|!wN;M~R# zQPvou)I>E-f4W6zg+XeM^`VEbnv@zC*Tf;^zi#7@&i5zi${Kb*|L|h$euVvBd8nK1 z7z?`*yPp&oYT7{T*neH_$4m;%eoRyFRoMNc;DngnwcM+*`*eUiZmHSNu>0+sVE0ek z{cYI&C|XR7j0eF4wP3wF^_;*9NVm+bCb;Yq!A#qL(lH8hXtE@-SNezst6E_Dh>Oro zI+#?2COB0rPXe_IvZ`pM3^JY-BrB!sp+%Mzr3Xg;CV7uX7^{QQJ13-4i*wY`;*=7R zp3{P&u)MyZu>Lsc0!qof-%SEq!o;k7Xxiw5Q4DDLu)y&56B@+*06xT6=G6tjPjNHl zQM70k;-R4F>6Hc25esEDoF&e-}VE4){KggX4FxNI+e^l8ZLrpHqXqa|v z21qX^!G3qg`O<}#5)vB&jqaGueqAybtov+OU0R9ba-)!yG*EN12DQSY1H+OlI~V>!(^G?}@Hp*cQ1b1uUm zW_%W%cY`Rbd-?)urNzVxQ;NBabi@fz0G5$VYOGaP2}~*GH?eOmg0c=lLwRDPDG)=4 z(8MJOn&7T?KCqurf{;LcX9mA%LOJo3rU@d-VL;U1g#jli3~W-u3QSWNcz9)M_oCv_ z?l}k@!dpNt%GvA^1@Q)_wQCWD&hQUE>-dF>D0FD^^z>`QOzwq4k9&c4dH*)z7Zz~A zyc=+6m|Pi1Oe{9Nx2=vt&+$FY<5{raN*tOCMQC|X09?YMJ8SU>z>ti^s#F?SrAUhS|-S(JcH?H78dP`bh|0MTv`1u3KW zgp^vrvck#}Fj-V85S>g7yHrih0uar%b!KD~Zewa@6mxkCh9WE40r}>57v$?_jf#BF z0nrNq6WJoRcaU$axSR!cQhV$JzGgplUb~ZTxEH|jNk~Zh7>far3A>I&^ALaNza1pX z4g-4tLC%~Y z3BHDMkMOniS>CTA0295g@O9E_J33J|Fu1UjHy_`B_wn@p3&hp>BWfebs_}|@V58;N}R4PHrO+W5jO)`xa9V9qf z=2$yhfLVlP;U99=*>aG;f)=&|jtsL;D;Z{=50ALtIA@r(S+zxO+2_OdcjXR-w%E1A zwa~J^(bJhbHLk*j?eL{hB@(3$( ziv7n79me45>$5u)EU(_65sJ*1~l;# z47i@2dN);@CVxiN?>lOZ6nHT>zt&K`(U@cX( zg$3@sw1orMtC8=KV-v|OCq~A@vN=|zd+tlDiU~FFYTX0Js{}2K?Di9u0RISY#ynV$GXyKwhQI(ZgktIb+@gOZdSi_(v$TC&hD|TB05JsN9=#PSos77Qd1J z8Lo_nVdYKVp-*MH_=Go+YfxrEI8VSao%4Rw041={VWu#Sa98bhr<)_%42-N2sOd5_ z$_rZuCXN)r)^NtN|~eHeT)MWBkB9OLrTmTyNe{;plm`x^E? zhSvtsR1?#thp??r8sceqkl?$;%tm;@44ERRg4imV;`YlI-dPBKI@`)^P zBWZ`gsdW>9@5t9w>-a(ycw80R3S3C_JuRhnU%jSzR)~P`r{s``!9`YxrsJ-nb@7>X zoTo?Bag<*ybxSTi*uAnXI#*=$IKQY&^ASU$Y+R6Oy6?|JPH5iWONB~NPeK7PootH{ z94LmNIJ%L`N}Y6FG*hCU+F6L2-`3R)Z*aNK^~)9DWAkF_C#GwrYKp?7s+{Z}k@4E- znuOKbWCLa%!Il%ezA7_6^e+xaZ2TloYN{VwK>voO$_{xjqs$p^fozPmz;b`2E=pqF z(c-W8cbcFi`>VF(R}w@ovE`b9Ui%13GNJsp*iK|35Ec_B949#%Ld{ADK(?TQQ@#32KgyiiB&}fO*(UM zorxnKrkmf}7xtGRJj9z>4^_OyY#8sOcWo^qxp1CF#m9M?;Y&0OaWc-CVW;Dh867G% zCDvi7&B^peyQ{&F9WW)d47(>>6~xQn+`p@aI2PV7ogV8lQ?q<~Vl4X26(R?_Ei$j9 zaVA1i)xA1n*C8Et{hFB4ZM!RU-O$9L^U~osvaon{WGwuLhKwpi#83$>Q1(i)i9; zb{|G+u%@a0a7&jS*e+hR&oX$+((60g1T-oW56~zJOU5$L#Wr!_FY0=>s8ovYN8XcTUYt{E0x?F@>(h1(4DvJLEaj^Wj*%@d94WR z_K?>~1<8GBL5(=lbiVtl zY|AjKN{$OYCT=?T-1N!sX>PcN^)9Dv4dfJ0#Ap>jKsU%o)6>Oc=b zxrJ?9p4`+80w4}@R|(V@O5P;2ks$8u(2_A`@B}G5x2IbYAQ|G~R$^n9yF(844NA-! z9zay*LJRGab}5tvXEg_SpGttYh%_Y|jOh&(JU743vkz!Cqp49K+Ot^Ta+sFZvM&i* zzE~3Cv}cW^4N1erySr|r#h8<%Mb1q{43|^SJf;$2vi&8bU-sSxtXLS)zecIOW$@EP z+?)(%$bwibfrXBfgZtKdnun#Z3DlK3ZI(hg>Fe}}unE+JiXTy|Ji9zz66dW5wM@|L zl6I*{M}Js~n_x?K*S=@xcryAj@0g$cp4d8NbCw|Gd%;3Jehj%TDWi&+;2 zHm4D(tQ?MiMosQt5 zTa_~pVCMVLgd{yrnuSXGK$nB;7@t1S#WCJE5!qKAfV?Wug;v}Y=rRpgKNXn80OUv`8s%vc zb3bLkJw#dtwNfFasMcJ6Hwb`8Z*qu7HkvLcoo*wkwfwmCinFE(~Jc}7yh^*OEo4V6}n#|qle(|!YssS1nFN;Z$=h81; z5nj?bo~COTVDYicTigg~%Ew z8@uj4YSnRfbSLMjR$?OSU0;Z-X+=H7fhQ^Yr1O#3_5gz%j$ut(3N>7ftT`Ksi$NEu za%)B(p?l(ow=h1l$eK){6C$X8m>W6jj7Hfp|7dS_GV7H=tn-4tJcxC^oJ)dOc2w+b z&TU;*_Dw;o%d5B{h;?BluMT2eSpE$`tP5+%`}8I<1B-GI7II-dw*;{+tm5@StP3kh zu1O=ROM_S!R+Aiyi-K6Y6tF5uz$SugjiX zw)4DDksB7-SRM9j_pXk|Ke@>rE5rERwXzzg8|#8v-L3C<&L=+ z_5n(9uB>%~?RycLAKhEJ4Bx!TK`c#|h0}GKE>vw!z&sz~1eVPwU22Y@9D}L|sR4(N zOH4MAsl0?Ma#+;@7C+&A{|I%KrDi;c6%i|Mg73~JO}OGLm~9Z*gnAaNKZu2K>Jq;n zb_>UU?rsw--M~@=%g~V+DO)QnN@NhvG=wGKM;p@t81X}2P>>!NF|Zu*Kp9fqyj+Jr zf`%9v!UNk~!rFb(7@+R9b}^0{+^VgP$9G24k*fW_uA#hC<2|GY8QiOD%x+nNZREmROG=cW1dFI ztCddh4a>?_#CgzZ<6iL$BA*|2F;tU*yFoNk*8r=R6mK63fN=ZTkXUV7O`vv};)Nz; z-E%zKngj+HWIfS6LD^Jw<*JJsUw?W*>!TbLt5Mscaz;$@*Z9(Ib%8T?2dg3Ou<0v- z-^+F#>%i}2m zmeZ?%-<5jq0sO91aXaw4Qo+4|-<4{v27Zqf zPcPt_p69np0=7Lo>|d7z>SCvNf+9`hoXZ(fE3nSG!#~;Brdgccy~~NGMpsAZ2P9zLlpeFXebW z>PZtAZM_giU4&$5`DQ9l;OnkBpZN22ez~L}(!17`*4_#9q%A`|tdKTuejb547#)}H zcWalQM`*O#cd&*QEYP;05ZrxjCi{Me39WH{7s~{FvQsr^Imff=-U8frZ;@vYbRu(M z7N~Q8`y>>bO;dc;28)!S0Xi^DYkEXL1(wuE+#W*bGMNiv3VfBjWW10^%#Rp^#3@kh zcJqFjW2M6d(iP`JmC4_&^~5aiI@<|Gohxu{wpZ;~ME@v2wmV8`FW?M?=|mn=B6QYxWzCB3%|=yd6_nI? z6kw&46iK?M3@71@15!n0rCb6BO>mOa<5h_Au9e|g04ojnU@L|>;pA}WKOa{^8!g2= zysM>MU{iL72^=ub6Hu}!XKd(o)n3bFHDf0X2zjz3;AsGv)bo4y%#a5fhjBP5NDgN( z{y|-jT(Ax++E6SeY1x%%0i{zrzkt(nIi_+wm7Cw|Cp}Q>=r=wYW|k%}pHF9&(|kD^ zgJwC+7X|d{?=)WrRTpL!CNtX~JYS8jBc_@*HmQfAZN#H!E(60*aAK?IF$}PN#DZ^J z2GnXv(H$qFXtcT!a30#PH>)<9A2JT|%@_x^0y%gcT>D0*ELuLMP}sN_|k=oRI^5){3n zhU}7F4T@e-&uc-^E2?-MD0)Q&w}7HoRFgJl7qMXCeV4SLw_UdJ6$Bph;!hhlaoZAeZXV6i}yYk=?EtYp)wY!4g5G@vT7LA8OM^WY@ z()s%NDZ2>_g!@{tz$IpGJ_;_UHk{>pB-vmm{I1fH7i`d{{6xBJJ@O>)Q+VUxed-&M z414F(d{1{hQD)vznUiSGIR5#W_6Wgs!n3-Ibhr-Vy1v!AVoIdNN6=ByZOHwc3Y{@u zXm~S8AfR(4owZrUBGCMMlVtx{4{W3{2f58n>>In}nZU6gwAaULn`GN#DOO8{u!h@h zx4A?q2oN}7PRH8u!^v1%K8%youZ51F6B(C6nGRLN_0N;BF1cEZa02ml3yC7yu~r7{ z#>yI?c=C}6Mpecmh4=6(NAaJef7bcV4JukXvckQ?p|E#PGWir`yv%_Q}O7}BOCZk6$$lfQ~Xj=mBHWMR~;V65o zE&{6_7G-~YhO<{?58-sOM-i>;@dXX%BqFm#Ez|^At8tv|2AEQprTeJ6h51!G7C4yN zUBee)^!PNpP(fct(*b&N>h|`_(Bb(7KE^NQYQ}O0#UQwTSH*}a+4R6hHGq7l$d1QD zF!LbpxGE^%@H#g6go-Zn_{HZx;RF8)-K*1JNTOirWDqiu6lEeuVbEIN(>~QDCyS#c zBMZo_x*mOG$9MzLHm)rSTJnN87$P%q_*ZEjP*tJi-RT+GkLT?JUG^e4OLW*Pm|^Cj zw)KW13l2bM!O}%3!*;^Z{On5Dn&#P(q!z4xs81$XVTG|wd6O)G{>d4wb(yIeoPJ!&hnQB?r3#s~;|K_e;&!FcR zhxhO(JWM)Hl8ue78#!qO_uj+kY89}oPJPVPuc^Qi*?XUsJLhCceohA#TxX5D)|}lG z_`!MhdBE)ci4eFPozdtY!bK90QD?=R_`sYzcNO?FQ=cX4Iavar(|)RHTqD%+2?2qL zfD|p$|8TlZH0@ydWHFDSie*uwb%5chayS>_U%2Ba&OXE(sQ85+eZYL4CX~bIW)Buk z<64EDm^6mQ)a!rDKznMk&Q~^5$T##=5sfE| zW9Zh}WHZ|^8rk^zs-!q{kLMxSy*M&f1!Y-l*u9~p8rzhzCQU=jz~kH`Ma@$WB{1(N zpXKi$5%3c5hH6W|6%$Qy-YJ`Iz2Hce(35XbT5Z}KTV@``Bucf|L}x91;fL=O8R2A)z~m=+>!v|wi^Bvbx2xF zr4_RVb7uQ9_1nEu?4#9SddyBiC$`1QYB3gmkQ~~OlIc>cEgoUO%Jr)W* z3ao_4eJj~zI6G>fwCD+!O&QLP_UpoT8bqH{Y-|2d9>I~n*3@W6%?vM-L!5^32#w8p z?5WWt4*!lz8v6VEIUN7bKPyA)LM&5xo*T_oXo@FLh3xtkHmYA5c{vcCatH^<=U~GH zDe=p^w3*CLR)UnX2%)M_Cv}W{hXUQZ?-o?=$$+L^r=v7>x%aUcA2DMa-P658 zvZ&n=G^8saik1wl%@zLb{WG8Om<0V3(;)uUlRj&@rncYa#c{y|**tVJgvPHndh-m! zpFD`yAK#O4(A=3_K4hz$-k}*_!x|zrf?f6gA(Nl-I~3Krf~|5nK823|A7qgDe11vr z<>g$%Ryogmx&8=WZsqy1@4{ADufitQO&pAsN^WMWtdwu4z+3hpZ`|Ipo_nxWR)lps zTV~>ENPf_Tr*(&Fi4C_tua_MQm$@MR8zpnEUm6&Y?6_i(_Rq$uU4A>C|;pt^_&MX-A+uAxh$(^!;Hqci?RyyCbi z_qUGCN6mz z%CRoyUQC0`6n`=KgB*0@%vQVav7%Jn(1kI*{WLBK^=nv2jH3c=rT>vFjUO1b=UPgJ zQnfx&c4MiUei#atTKzHaDx;=vVj!CKyQ0~Ak0V@Tv>!$UhVt?MxaRp`<*F_b371|P zBK8wL@UPIlD*FKz3_6KBE$*+hh^Nkaz0I`E;&8@+1x3qQ(TO;Cf#D`@JuF8%ix-i_ zu`9P8f_`0Iya$ny$8&4!`sR&l zoLIUHb1fEle$UpIglVu?(izUUwrVJ=pLP}s;bg88%bXFh!tSX`2`v}{@BQ)N!3bF7 z5^`i)lNVyv$UdhdGIUT=R>y|NGBvANLMs5bEDR;y)v_$nE^Gs0kxN{OVuR6cL})o_ zH1-n~fT7|zYRiQmx18boYH=#>BEk>45wO^qCEf*ua@W3R_--=%P;1P2Oli7{d3d!f z*nDQk`r)-Ovd)DL!)rViCKo6=6C^_ylb#jaZ@Fvib$o6h#yZoz*Mrv`1e;6Fd_wcVmy zC+E!QPAzDA8&9Nj!7)FCwpXTxt@3Y{fk$hjCWd^+ntY#pm{49Ia!_JW6aMn! zL}73u4BnuXPh^S8xao-`wze77R8}$B6(_>L4(O{gSi>EOMzw(fGLlB+!c?ja8p}4- zG6vVpLf~Zt`1T+dtu`Ei30Fo71m)6q(F3BAnC|3CUG(&*TK^P%PttVujm)4LpTCnW z<{PRl`CJULW{!ceg1)!+?XPzG&Gl>A>^~W$JJ+Jsina7y8E4(#dC!%h@v>p4+UcAd z>m`>?))71w$t_qpc$T>`P(!e5@P=$yr4bqV#`S|El?1@~M*;Ass6+iGOQ+bm=l$X7 zmw&UIX8#GFyzo-Qmp^`fdjI{WfBWU|;4t{5DZrY%=hUw87^j9ptWFN9S{<&Ktjk z6>^Nx^C_uE3Ur3llejq&qxJ15t_%Htj~TeyNWS&jLg}oLJ#^nW2Cd;DRrwavvcS!e znD=x;hGoI}Nn1cY?-vxKtjG-*ztjw&nd=u6C#VEP#|E-pPe=;kdUCuUKV`+;S>ons zeg->5BLjyeJJ)JvVW-d+tl}OlIcZkxmZlmK?o9iRcT}jar7-pFE?vZ>dv2|o%Uon+ z-O(jYh|Se(JT3MQ=7YM3z@4Cm%x*SyNj@%4}siW5GYdb2S2+dpwKBbOR}W8ti_ zm6ujK7m_N7`O$FK&?=hR+T;zF8F-j6ey=3JoL4lIe<18=2p3^bvNZ! z*_FJ#8QF$|d=4a;Qx~L>SkTkX3NFBZK?0NB9hS$-T~cZp9U4KZ?Lh*2mEKisI^Eef zdV#!7mDHaGlQRUjtaqv@0id_~>i~g!jZO}Ls4v?aU8oGnMhcKk@d~v5+^8<{!Dtdf zdf|bdFKXQobmhU5J=e6e(?2{#s`6W0g_nF@PqjhF1|7&89gQ#_`@Zx0FaB5vT=q-rJp^<+&S5HCyq?yT^^zfz9rpw2&IeBQxM{_*#^kv5_q-GK@?H>0R9DD z$>XaHBHBS|_x8oLf_t5@Z#MY&eCV5oFK2h1K<<^MLt`}?<{=x+LXHxO>7Gu~GV{YI zHw#0pE$eiseUQ;k7|aFI4Zh|UJZ^*>$J%IVWvtio(O|5dua&pgmZCXEhKSZ|WFnER znwo8dI>IhaCa!vCd050Z&!xm5}1a&j_A_NHM-7xJUv1?nYtFiUAgQL zMuFpr%N}Q39?Bx+oN>`~a~DN4bC+Lm?iMye36)kZkFeB<PR`4T%-pTrB-28&e_WD%P7edwQ#h^cSwtiIGwETToku15#yD^7Zqzbw zE!|i_eBzcCI9<%>;68|@W;kKZrAL-0utnRDHM+Q6y~(y{lvb3%WLsp6ixSHnU_PDP zzvt-3yvsdkGpQ(If`<4A2EXPf@q|IWbukdPd55}u}50@`{cwT;j`c>0M==F}Vq=#l(j7y+g#! z?ATM9j$Ymtx}C@Qo$-RztoIWmZ;QrpDXE4VbKOK4O5k(U&d~Z6RCxSE-kd6wH>0*? z7Esk;@vHdHQ63g9@fCFu>f%Q&YFYgyz7~<>>wWfq5A~z}^X&an#Dx^~HZ7oQgH*L2 z3C0Z75Ei8kcG3RPZZ?D&+c8vj!gz132L z1GYT7F%qH~@}90?7Y%2_ z0A=3xxo{RPL8gh9eqV66hUZ_w7yaz4S!SlQ)6+z7$sW~AbC3n}vom7QHc6+mQ$`)~>=56un>8%#SthPoDgBL! z+t4mJaV_;sv61t;lPxX9eBxRNe{te6nZv!+_n+VY=MS7Kd8W0wBb4rBGI5U)oflD| z_FDIUG{xB@I5Tm%#%aioMVAMwb$NLHLZo$Z?snmM=aKey>lopArp2st_g+~j?Vv5W|Im)x_BK6cy-VKG?#4?v6RV)|Dan%LEEnVj2lmf~-uAfm;&mw~&QJzWXr&Ci zIs$)Q?^@uIp|m&27t!z76|?L7JlmSleQY;J<^^88K{(&v4qTk(U1L=sn{H!C6wJhdN8`HzJDhm8o_Vg&rhZHR`N z05eeldxrj} zm??@ydMBDsj^Vfp-CGjPmkJ?(~h`kLKSSzv;Ia~JW$ebcc9JZ)MbfF zp>+rC&O0wpfnX!7C{zX0Yg{e%araCmf$k3}M&@x)hMVuI8B6xVuECxf5R2%}^unfy zg~SoJp6Z3;4Y&k*76qjuq!c4Am`*QHM5`B;Vq`K}5s1@hazZv#6qc@#Yqi=-LC~LX zLRtWNDtL=OPXvEa_!;({6LKN^Oj)EH9xj?r@F=1Y{BjPD&A~&U;+>6?pIhtz0#Fy% z;;75bEknJx%Zdy|cR%2I3aKXrNSu~SoZW5RE1=U{QiqYF%3t18H8&)9;YNG_7 zL@g$LdA^7M5iay1vN>$y%Kt6$MYKMsD~f_HZ?jltas0gbA~+`uh3fRpW99CjB#!4R zlSy!*cN828^5*$-HunQIOY7S(>Ubh&GNg2FaxbwnwfnMVrJWJVL4QvrND=4?u9{y$ z3w_r$IPL!@0a$tDwki~t)EgovAFUxPVq#w`a<-5+!az}!PzsItWUIKHJhrRNhpj-Q za?l0ms5wuR$N^yp_F^iBa=f1P7aO}2^uD*qGYU45xlA|e9D?3hNw5``#A&yCi*9F` z=OhCUh@*sF;ua1^UJNZIIs-XM99tGH-+PZOHxjp%CTKJ)e&P!$T&|WQ9B2@{PyTM@ z{cktht9Go%Iy3tYG7Fk_$5pm0)1VO%_WVv)2uAW6_wsEP58Sm->4J3iq@@ zdnu#QsVH)UTN=(MbgpL}o{ia4FoWDYW{;NeF(($swb=3bbcR~kUa18}P18JN2917(wqg5)8H%sj{#o1}lO6#{6+aYhD}miCahlIi zt`;hK61bPkVC(QaqXyThY2aQK(^e{CrEp6w43VFgKocTA zeEjP4;V)l)_wmy|B6{=hKm5~gzS;l!H{WcwIHtbIN7Z#oegEa=o&9I^i2Caben$-M zUw-`5gcxCC+wIH^k|Mc?49q1~6qjNV2rNC3uiF?+Oc6k>awBBs&1a))O zz%GS;%T)tgT{Ymr$n9=}8)yEX-~8%dzkdJ64=?X<$;s~~Np%47>>BH%Zzwq^jqAveeK63XB*VdOLu;wd8q-^z#2AIs~ zx8XSy*3{1q)GdUzcP<=ocOyDYmU1SQx~Glt|AOS+S>t`Pt_mj{8W) zWeM7K&aQOY=aom?SU}$tKRaq|iL;~arig=fzu8yT6wbZDiJ>CguP$F7=QTkQ?pKrb z>YrZbRY3*rSCuW9sK|UOSft&<+4~7$fN#jT2AU1ccR#^Q4RuhvXq#IS980BUb0{ke z=374t0s0#!O&jPyoY>l1(y*WKv86%gv8@OG*?3mzIMZ4dmq#TO%_v2jOI0IIu^Aq# zKu`l0e}|~TL6K6$ldAaotB+s&@SiWg|NJw?=<7qJ2~P%#u^EPV>*zc_<3!+M zM!fA46tT;QhY9!L)BBHKefsd-%MZW&d>{24KifPA$;$PipQ5gQ`r^;ueTz@9l;yoJ zw|YAD%`r&_g;!@&nm#R@pz0`DT6n1KDp@#s^70+}0OrZ(Tp^buDf>K$5=*i4vZwU&zq=DH|E> zx)O4NP3n*a8lYtuLHYt+n|vV&`mq_B_#fVX`+eAVZp+a<4#4-e=%#1vw?C8o^LOZE zJY&0?GC4>6J1)GON4{nlw%lO>@l4V)%v$#s=kFvZC;zLR=M{6aebSjK^1FRnK{dDZ zMY%jobsEqlWb2x}*@_R4ya`XDX$?`AFKhxuU^AOdklj1e1Pozmf)2u@CV1XWY5ktX z0#~1QrIcV&(5<$$36U*%`l)5`i~=@Wu06R4Qtr5X_lhRa`>9QkeOs1-5K}WT&&R$6 znyjA0PCnIzLZFjUTOf;frUhJGtp%2lDa$}QU`Lt`EcMc1Xq7R@R!hT>mGOx}NM2iH z{G?57b^I_{S904;c{GZ`!_qT@5H0RwSNVdX(xf(lTd;p={z!^He#iRqa$M zO+E&%uT}X+SNTYsU2}9lYNGHt7K&y7ERk+91dm$J&8YCEp7HV|OwhxF9+d_?t3kOG zTW~c%kG}Hf#`+fM9q^{FzJ2%SuRgxph9=`4;GPyr}{PF#}cXrbH z5z1RUX|^EA3wL+ZNoeIY*n~$KXTy#zt{D=@{gPM4a1RpK)L3uHLoSlGQ}=1Z@+@g`eAwQ!@pv{-;sL8@ahYcclW$lAEcO3c z{j*Y^Idc7W*~yvg(6C*0b|#A8mnt<@JhjHD^XU4Ry_Z*7$L^+4tE7 z4-Y1N*6=;!jj_)fsb`h?%&Lbzo4n?XR1+AA82YRNqt7!l!UaAuF>F|R9cP)O)aT8E zsSJA2bsBeuQ)W+iGWHrd<0VkOGxU4&pi%Ln@#?JW5-HxqvvIs7Qx!9GUNVi&Q>e26 zkJAE*R+rB2A2gNzt?cGE4>kbo1WHO;4itg?)YJFYd zroj&&)qP?3Y>P5}0Uci$zN6;a_ywkweK8E*lO*2uFfAaSga|W_OLzjKHV?2CH9`DK z1TwytrLfQN4n9Jts>u)!mu&~=v55Kcv)x9+m{*u!1#4DYN`H)62bQu+N}BbH&wrXh zvrQEm`KAh)iURr46fIOyb4?ABVF0}!o;Mwdxh_5LKdR<<{ZjE!NjD(Xa-9>zHZ*+iRmMn>fVQz zlRDouunK&vwE-(p8?)tNcRgWZE+Wld3vFh*Zf0FASHK)?=++G^7QEc`5&va4FRnuE zlALWVgg117Yw6v(5c8`b)V{;A&4$Kcxf576u z6_2=fCyiz>w^m*wWi|z@sM*F)t_!t&*c#aajW78$D_hVMw4FO?W0W>JR^XhUVU!c? z6UXYTrTBcPPpv;Cw}>CtO_E{JE|LUaculC9YeWXVc zlu4`qN;1+PeU&DWN4HU<@Uwc2o`<$+OsRJDf$d}!(eEC}F7vEq=dN=PJBjP6msY>- zc1)v34}9{4Op-Osk~Y>E%!u;j3yH&8EaG>r1Eo#Akd$mgZl|qM)R7GrsKjUP^`5HD{&cS%qvak<1&`K z)YI;1v@UD{N2oSoB`#B9?vTO|m+_dpR7zpaO9z6syfz__n&}uKRtXJqDU8u(sgT|A zyB>0{s?Y{WEx|LKk%bm8p6)Feqs>yrOC#>71+6j$+_BVxtc*jnS;}Z3cinqhM7tJk zmcg+}rc8rceT|)IcV*fs8Sy=bga}-8wogqrhG?^$`mrglSbVNQliTXi<(SZ(jEqU* zk-@aydgs*^AO1|Zxnc40y9|xsyD{7xR5huUXqwQ9+$gx;p^hGXE5aV*%_v0{`255) zAYXTG*0L-_a{j}xYa#=bPgmp3RhdV-<_rKCUln`djBdmDYb=@w*~_%{c8yVbi|XUA z7W&Ji&<5wt%zL-Xiznb0=l67^lbf&8Mqj&_@@jIzofq1zRhn#z)LN zKp9^RL$1hvwWfr(=7H@R^_J9gxL4NFV&!_P3waL#XHx_%K79*3g+xGDW4R3{rO|;G6&Cdv<#CH2oy$g=(0vWy6paYV@2TjZ^QR!2pqdU+-$+{ zpEJZR<$a!q*kuf!p$9{kHSMFz+NDiKId<^bLElb-%$o6>51nR5gdI;t)xJH#t_igi zVVCkxBkZ<8j=qayJ@$PUIYt_G!TuF7W{iP+S3hfA48(pOV}`8!bqGis&HBYW#tbp| z7njDEAshc<2vY7}7h?{4pyNZO!FJMl;>efDqzv!%{lyq_Xrjnh_5H;dbBvx&r_}df z5o0DEIUT>lJjhI#a%lh;qRcv7MQma7cf$xSgqd|n%03x}a4pU(8!5z)D?8IF znKjRhqJ($w5u&C~IcQ49QbAMS#+Nwrfanuyx*w#U4tM1x%vmG`YuQP@c|d!sRqUre zMu8rh%CH{+M|8oJ>fzzRpDqmmFGN>L?6Qwd*vXN|LgU+?F2q7*t9LYwfr{Ll8)Db< zro%P9CU!k91Mw zrZs^@^(;?)h!*ra4^{rxL-zULyCE?Io3C(>99iZ*#eA?jJac|{}hG*I&ox+EH1}^D3 zAr9su&iYUHcK8k57=D9Z55J-P!*6Jre(UlVvnPr>lp$gJvKhBcLO;3ZeFYdb#*eRfB->~UN*9;=Xj21! z<;S;uM4{lb+Z)lxW{ZVBHm9%H$2cI}_L1<0_fet2Ngtm$S4s!`OjYV5i)j0ZFSn zH1Fd60BP#E-YCtASpB3??t(#yI|Vow>lkCm^BB(8L7VaejU}t3;mHp$Z%_y7>mR7mN>73>(s+=NWFg8Xk&0Su_3ss|sVF3g zOp`C17OIwsT$C$;hcNp@2FcTq=pIhd1 zL*hqDoL!=8r|Q=UG?b%BLFqQ?K!jg46(D&rr3nKi&MvwQBG2VQXtNruQR0+$*Mu-o z;yhi2)b*;Q6|FL^(Py$U_LR6tS3&C~_F56`3MI~XH$KT?a=QCQ8Vrh~IrykF6!g%V z1T0v79-+c{P7RbeW6T(3@z`@LU>8uf>M>@-7^jQ`ERV1&WesJmWeq*Uh}-5M4qJN^ zZMaBhWW?DDbS?o4Q)6&GD8!e$J`m!_ZjlW>KP^2A1WjCNn6I7ZKa9ylK2QC0&8m@C z6Z3f>`Zm-X7JH#dQ7(+q`ZYovIU=PAy;XB!4PF6fM63OUQfLk9idAEdhiJk;^sU?< zG=arlDuoj_r3V&sam>JC zj4Lzw8i%BHPPq~wCCXKTcRce4^s;z(-ULf1V&&?s?^_nbkb=dsjM&;UG(iJwoz=lkqg^N zshHC9Aje6Lk(^_VHl*a7j5&+LX}S!( z*W}ToS@)$f8{+Ka*n2`=FI=ZShwfYH0>6f_x2&TZ7Bh^!6w(#nK!(v5-9_e*#*5s( zhBOzkf(sL~a6WSdz9KOT1Yutcl&gI>CYb_C{4Ks17+0?(%>}8gIUu=RB+V5{VzZ^# z+7{-lHa08XVUaXfhL4I@wD<4|(p=57BKNhHHRsF;shkhr0%eXE>ca4q&`&pfFsAm! zFnlY7IZwt56{8#z?zCadVMds<85q-vHW+cqP4CPRnk<4wq`|<vMdX> zwZYF#zX5%E)){0Q0aWs=(HzWzEh)6=gH>>I0&`8HFhmy#6W$MHUSjlVvA~6bT6+ZT zL*a9jgF~wu1^Gr=c-iHMinJ6yqLue+c%g9haVbMNPX@&H>2>5Gvg!N4h-C|sPq(o% zXl-b;WB{_TtG^Nf@J$~&?{r}IU}?gp0^Ez%pB8U$AT7z_MBr$(zpqs+@l0GRF>HL& z-6!Gel(`{_e{g#Aar>dw(%eZaFzkk!rB#=$*04|BN2~pP&gU^aY896q4<}#Q@f2oj zKZES>?>y*a5H#n}Jm{pWo$gBY!+kx29?EmT9gvzr$|hW86HzCrBG+7{c^U&ykXKle zC1xz~`=4W4$ztK|#ntZED*F?x!VrPV`&!sZjB=WJa`p6wRysW}gJ>3$D`iJXu|Tvw zT zmhM9N#l$x(*L(M%yQ%7)#YYIYY5%KOx(gCYq_a1x<7$@f=CLwzBg51oU5`~*y7t~} zEZwJ%zYldgESk=WdyytZe-dqw)?)>X--~Z|T%cma% z>2@wHt-0DlaDuLIb7&t|dv71BEBtNA>Stz}AM3ln{l1B8;4@E6kVXNniAX2uCxQyY zZ`f!IzoEL}H>~c%Z&+*fTjyi2Jt@baH!t}Z+XW6FJIKXo@X@3Ha}WJh3-ZGF%_%MB zR6qo9WvN+}&*B)UIEeIfjd+z;Q~4!OJ%dd_6R5+g0{!YO*N0{kMaktP4y0>ETF$&V z091$y#mGq19}mgpY)mM0d3rZIY zSMSqeNYG_-Z0Bm{FoCCO8$v3Si^!10tzF{#aYI7|IxZ=YF;J^~D`PUIfLomUO68V@ z0>J=5SGf&mQ+rh~Mqz4dY;0Ry7l%zvT~Gxhl9qNP+Mzd=50uxO91(u)Ao8GM_OEb-ob(~PujH9iZcSac!nJe*` zec41`c+fJbO1I%z&6-HVI;KtJnzEiZ(fEmYwa=SKDnmW-Qu8LtoX9W>Pe}d&QReAE z9N8iJL=pLV5XWLkctrD*i-O+P%4^<4sk1d%7q#^;gDr+!<_CQ@R0UP_*nP*0=Hry3 z!BW!UGq!xFPLoJX_OU)Q0eGXYFqp0850t!%DRrVgb*ZHIszsPQ7av_wwkM}fH0rEa z=cPSvkWO|$nMDlk@rKy{2t7|j!H7_$jABJF_VZPgQ511;?!=NG@CatW#7`D+|mIq$muL^ba)Dgu=TA z28b%hAc{)kLBMoE&9n+MKXfmB{sL~v=Ri; z>x}Nf%iK<~U)dWBgl=7Fo|) z<5Zill0)%;Q7ld9sa0`F9A$A}v6o6Ahq^awxyFJvOEC`ADyPkA3fjHO7fPWa7j0Jv zqd}WR69&TQRjk>p3RI~&4smK`szunvVovxtjD%6?z=fpQ)PjyQ8&TY)7G!1Y>1CNU z+v@llVN^z!^Ow^J5=lEG+eEgPLB`V^fu*PwcxaLa8d z6gWpgCGkj&LOxn?wpnd)w$Cs|o6r)Qn`4;M9E#2uHSeUH%gU{SHo)+xZ4M6nB_Tri$fh5Sxz7-`PDTC2%?F~t;A&p8DHV%5R zr%P&e%Qe{!Q0CW4t7;d-R7s`71}k-ylf7wzyjRaYNWZM-tqS`|O)!3`rAzIb;Jj6B z7M6LdhELW6ha+z_+tcyhKBJeq(5Xhbb&@FG(A>||REf@*+`2=ry`ONPj2e}dJZH8y zZ9$x}iU+KM+rzrytd!M}HD~w3IYX8`>^H$d7G;;puG5h+Ttmlk6K4s;sj`qxTf-r1yo>CgwyexHGz_DG*e+ z8+N~|j>c$)xu;lV#QXC9RWsC-`5v>|Hhc{A2+d~ZNl+l*%zfKu#Ed4rTw7rS(HH=Zg*s~E_ zO0(!LHI2z*%7;oC?IYz+d)-Sac2Z5XW4NB?C!Io8(T7x?-P@ zRjh0RKSM!y?Y^Ox8QV>cF&Lp*do6R&$ambwUO272>~O@@I>IQm;m(nkS<|HlV1%A; zy5+8f>k$xOgc)tch4js(WI(<0MP<-!*;Ai6{(YFS8~m zg*0T%;~ze}oc`xmrw@Pmmp}Xg>%kBI^qX%s+h70Y>y7>!xm35m{pQQvJQy@~U7--55@LhdJ*ZSH4O zNK0&L&d}#yeD&>zKfZjv|NM)upPa4xZi34^Z6Cm8p>Q ze*4`A4c2B4s?fvl4DBzb;lQPqx9EQT{*NDCm`3?Z;pVAm)Tr!h!Opf!OOJ(ViRJoO zy%Xa)a$nFc@mIFzrmUyW?~u4b0F64~4ig-KA2fT};M6;=Z2t^J0M-%Aon zgOX^k%r`#L=BJvt_{P1Z>1Q}sI%L=#?~rh{UUSV%?=!qAc#)*fdX2SKLtEbkv1DJF z+jcILs-n^)vKxb^31~8+iuzCgcEEDjJ3bhlRy`Sa@~Y~jHl8#9jmXTMM&s$Y^p&X< z^CKaWGC%Ht1ILWmm=m4rs-Uh7sOv@z<+9I3QX}J~Vkmt|zjkKF5=k9?q8GGCpx7}h z&dd8BK7DxkGB}qJPKl23@8>-NrhtHR*aJQZFlM#bvlZgS`J@A6H+QDZ9pVCYw z!>9Q0AxoPh_Ln73I=5l6H|lm}4tjOjj$4@H>#sh3@xy<<{QmRLSQDGsY*g{x@hDyg zrpSET?$N~YIYwRn>)-vof_0s7(X=&Ajc^U@H=6B6t+^~?&pOvS=%j2%d(ms)#S3Im$cT^oadK9G@%g|g zvVqDxW{D&2Tw?H~3={>P2WlhA|2R;+xp>@&S}_VA+G5&n=3sb%p$vOrHW#F)!CXW? zFc%t92j+s;T;{@Nim2IyP-2Zyk~ZVe(m|5uF_^|H$TYSeRz~7KbIox5gmm$%DP6u@~ zwP7)XxZKLgfmPgV6c=PEaarb9`JuiqBaiYRCyp|VAECb3lHd{G@dd}CWL_aRv`C8L z$d+QaU@3Z&emFK~T=qLH1=(?oi+R+|sZ#JjxO!Q=kk+J=6MLg4A3(@x&h5y#>0PUK zhA_(S)gka<*kx&i`i;XbTf-8DVOLcrOL=k9_1)0t-k$FwTVc&MO{ImjF-mD_sCD{7 zZB7qtcc)gEmb6*aHA(dyCpiqob53xGs<<;r`oYb1){ngyPVfKn;S*o_)xW-fIlT^& z2mtR&@ZfUPuA+YTK<&oTZbj`TC5Ey#5Ewk9E4-RXsoAS(O1=)Yo0NPX)NWGn)u`QW zJit6d?d+DJdxLh5yW@?Z-6#UgxePwQzE^-N)~=oH^V6o2%RqvzDon%~zW{`3HIhY` zfM)?|VTEcgUTKPn-c;6tsNn_Vk2b$W)`m0lm;NkEcuE zMJyqS(J;kFR4W=bRAAbG$ICT1JVGI4{lnnR@J`hv|5R9CKeFm62WVJM4YTsqlC()b%*^$Uj)?9`>%oBD<2u1~+)g>FW;+Ka^&4rEb;@ci0W5*6VT}MB7w}fx#_X+C4x8n;?N`GMr zKdJV>30Zjye5Jap2+qJy(*IHQWIfncYG(Fq9ey&*6c^>-@ocaIf68M`k=UM)jadPi=~m zvif=^zXCx)H|t~(aGqK`QSF(X*dfG@aSDA{hM+>H9qDd&g~4{Z8wfR77qh!I?ph2> zf_WG~C|ftV5{fL?+gJyo=39GxI|B=^1)*YVN#&x*^VVSrgvwh>P2HzQ4%J{4*p|jB zjBjAdX2a4!vYOBiA+ZLSjf`5Sx{I2eg`rr+p!UXgW?T66zB5Cj(0u5h=C^zYh&ZF(Qi~@w zzliu85~VUm5qtTgh=Wlrf5Q^+4oVVGXLa zbt1OA8GTE=<66Cds>#>XTHc{*^pO5aFQZp5tP5OcCfh|x@xKGT%$7bKq`I3q(yB|G z)>RGtzXhzq1dlb5s{9r#v*Z*TLx&M3DtUq~4I$xUJ!msnYHHXK3~gfjZ5SHvyY*b6 zoa0heTcUOyjt9}F=yx3~vE6mx9xqy|>QTA)ukffAtWQt}dymLG$qgxMgXTN?4qfa$ zB8%pEg0zl(7pGZb<7OGex)T_*XvQ-#Psv3Aqn+#+L7I}xF23+r++KUOa$?&_0gSdo z$(M1iCuwZNG<(TqW z&bN{_6b)xb6gBA0ziSx!QP2=y$LMPBA&l&+43t!(VzC*0 zK*UfmK3@um1OcecuRl;y9ekp}WKbcUU3b_B8n;}9#ax7*3~)QusipYrQYge$E+R;r zhz%&^8+j=*1wTPzb(=C@sIZb(m*sg0C6!9~v{9}Ns9lGxx*e;V>FzmgGiKXY34+fvtRGb~@S2;&UU3i)qmyqnD!AT1* zqNM7(j=waaq*`;##B*j08cQrp!|Jyh4wh7S>20oJ-V=`qjd85PoTP=>AQbgLH%;~4 zhykSn+XipMS#2;y{W#g+I}`8}Y{9JN(m0UJC>*ktPxriV9n0#ip4_8FWcoali% zLXjqy@dNq7ax5S?7-R_+;j_0eR$RQBNGt_m2Q{i7=E%NIH?Jc5GW2$9e6Ns(>9Uw! zTsBg!kQ%U2TruZ(6%z-e`k_2KJOKN4uGmxkEtvIktrK$rR!Kn|*{m-C`%UZ+V(e+; zBd~9`5ILMMHS5d}D$Vu{6~xeTpE&Y2I>-T_jwao5klM_Kh?Cmcg{#n5Ua5^oy-oLn z@xq&iVVAXG3B$14R>su*B&C51*xPhJ$BsAvn7n0_C~b^VYNJ}GKOFA#V1<@ykM*I4 zzM8ZiG{%XTs(;={Or7r&(VJDgfBxm=c>fqHcN${ zHTyPA$=BiilalX)_fHDG8t+d>$Kz(5{S5Elz6sv{ynVV6?;mA=DUzWhn4=cpcXyw2 zc>x=jORc#sTSfHKHmJm6f^nK`hisQVqVcNc*goQ#bekR~ZJ|9*HOsd^^+LDm;Z<2@ zJS(7AN*+Y>ER)K$g-&JmDYr0V2W6d3(56=FsH6opB_utkIYnvBdWX{bW2g(TCVjQr zWV8fpS_{#*(J`YW(Dq@$;qNE3h+74Gi1Ey;4d9{Te9Fn_U@eNU9#Po13_7Jm2^BZ< zFZ`9jGt~ewWYc)tGK5B#k*#p16i_28{0f87Y*pBh_B`hjnu(!)qrp(?c+_SX3@P$t zFw8mD1QY#u91Qw87^$b(r7n`bh;`-?xD2|%KncxYI1HJbM-K*28z!TzbPuHh&L30| zj`9+SiN3y(kZtEU<)Pb_2h!x+ms&Z3c@D<^a{@4xRA=8FqOUzSk4MHg%7tua=K?0Q zb&J)&!V-M#T}K~)d8ecu{JfvZ!GqPza2{+mk{$!XJnON}VD2tso#pJd;w5#g7moO& zS3@080GJZ!_Y$6pI?@^cw4@Pko{`uUDbOE|-QJxeC&04ymDS+dq$WiX|&-^A^;xXU_b4b3itO_4Z?ghno5)&zsS|BE#CLU`Q} z*q$MEnpP1WF)1}+L^PlaBTf=2*xU@jrk}bVmYJHrsChJh!RM8wSx;VEgD2kNw2Cdl z)(uR=?>ge*B5WN>Jw13ET;J`zfa`IW@GfueMwG(>HL*4%56pmRo3CtpKU5A}&!Irg z=UIT^O5mEdvgmqGEL;Mvd$aKfhht^ouNxV6=tJ}bU{tL z?l2qsIgQ`XTsiY^S6FCrttpiz9nRjptRuyPel7MO}$XPd)5 zC7ZK=T(fo6=E$Cmt%KpM@651kO=&}&6(fO&n@AZ%?1!6*h|eL{3vm`1B{p~vaV)^L zNt!~}3|+7jIxyaeINS|j|NJ&jFY6gzSck5eNTAFDJGhh`2qMW-8oN2j8sUQbH<1-e z&(3&M=`FzB(7$yeyZSWe8av!QQDcX@U5yv;Zl8$4s5wg#-i^h7#JjE2@`n{Pm?(F} zyR&lJ8I7{5!PTQA!i))9`t{(5v{z_Yk>euXeRe%iQ~|oQzZc>?Sq}n2AarGmS%< zU4v_h>~l~UC0+zTQQ_)V+G{@Q=y`M= zQu%Cye0eHkczD=9c@^yGn!k~oHaII}4MnPre^32Uh?;a3mxvLdVlYq{G_E#0? zmouQ1+jmz@2xnKESM@2Nu5;+zikhPZxhVLY%Rt{Hs@;``o-CGkUZJ~!;M^`2w0l0B zQRA*4?0C)W2p ziT`Vxrf?-+PG5X&J+zPlephK}CuboA^>XT*YIBM2_%MT>_z5;#Pfxwus*RLCqwe<| zwMGio7ytu5!+=d;U#bT`?1d9Sw%nfJ&}-HyAlN+Bj;frQ$G6ou#MFZf?rR>*J8Cy7 zQQ5dtxy@8Y8YFZ7VO-4pU(5^*dwN4==!0E*JB+K;VS$z}h2a?Xn&eyO*jaKPiox+% zZjNg0kYQ<4qFPMrfmiF+I9?^1VYIoQ@Vg8GGQja?8$nQFBFEq)QTHa5EmdGI?rOs8pFUKIu*78kJeN z&Xa&l=e?g|KnW~#m@SG)nDxaL{7=l?ccTKk|IIONhDN68WZ?~qF4Uokqf0P29QCae zT$}G@RS{f~z2eB$;nL^&FmmiDR#g<`7&pPTygdT;_q7yxlS2W-0NXH{c4FozIH}J0 z19eJ+JPjpU8rFGMY(L_F5{lBeIvF&M)FG0XlH?8&r{+*_k^CY{+<4z1aq8Vf;yY45 zSwXsy?(wt3F)qGsB~Fz3z7p3?tk*RIvOzqzo=;gN5v_})6iv@XedSnXi`+F%-De6f8A;z~Wit7`` zH&Sb5r89G)u37?_nuFIB4sUST&-KeC;A8V<>L;dcrfkx+RF$6~h&Xy}bWIX#6TwEz zJcBLgczsp2e&}BW7B+rLC^gm3LZE*`Q)P-g+EHeWw?JmbT41?HQWqsL?`ZK`{5#EF zg7B&>`In^TmpF92k3$;@OK_nKy*+;jD~gkslOPSgW-X%0(_i$>Qt;~WghR&q;|UFp zT3fwHWB2+u5eAREZB6xZK$IzRD ztmlE+l)8T~y@g8gcNF+-TcF95cK1NxdNPFY5dFMq(v2< z6xd8A-2?Z~m)Cn zS+iAtxW`KmY-g|fXSv2@^z|K01De&)6woY-UX~@H3xeVvSGr3>uJPNHAO*s1E9k1Y zn8Ipr6&E{S_vh=7YJwLqV%KdoS8BOEF1AvEAwO^0hrDHc(~9mA7h93n9pYju zH6)j&krur0yQ)?S30xExJ6J0DHZGQai@2Db^|>}Av=|n9LlbOD%N(` z9PS-!Ly=3dw)Mc^QfvY7yCF5&E5c&ul^IKq++FwW0O6bqgPhd?dZOfVdr??q&lR;0 zn&G&kpl|~m98MlNVX8J%cc;T$gM&@~n*Q_PUdu7VpB{YH=Hg^-TWn~(aeAa}3rp;) zvW>*7D)}+^m{kpqI34x78XT@=y&Gy92Dwe$X`H~wf8yb?dSAg=EZxrkmoLz(I?@A@ zZlN6)DEE4U1c;H`R|GZAlD7_RxX8JWV^rY@Vt8&($|Te-!-~G2UG}(u&M^(n9N|BnI1s-C)=yGRQ;yj5qo%{JE&>dF($VeUA+ zMHFTNcbBA3P2T*&QfLJ$(0x0f{p88`%g96L`mM6{%H}P5)(^0U$GGkd18lJ>mQb`N z)>l<`vbY;!S~mWj$gzIV+?)w!g~$aXPBI*oXcnzrwJY=3$}6H-=iQTc)7XlI1|q7o zpluFg#d(rO+gwd;MoO7x+GbH#C@xlC0|eZ{c1{z~_;YsaYLiL~d$GW)Oe&F`#gZ;C zsdd1$I-iXpW#)(k42`E&_Udjy4@E}@b+>>C%}B5Ae#FCGKv>Pxy^AyvnS{E>5sws! zF$2Ts=QL=QwZp;DsL36Vt|rm8L0+HBf_|q-ia20rlTWpnOBMCFhF6JBfv1KvBDW zMN16ls!42ssqY6HlK4y{tfh~IIRuXZ>SJMy#i>n6HXc)xm#s(~>xfvGd3`1w8sQvq zQ>%%SbGjta7;5a1P>LoAfT6QK7N&le>m4`jtd3J&6$?W%Zi-7D6|Q%)k3THWD}VP_kI0`1RT+5Fm%<%!g6vdi6F(U zm;wskf4dX3mcAltx3cVZj&7274cAevCeb&kq;ytsyVL`V+Z|{VQ}j&(WSvvEE@|ok zYFUO9VQY`RNm&p2?m&MEL)wHl>yQ>}wh(=@2{-kuEt?(nYPN>igw+rYYnX+t$cgFK zu!uluBu~>NjKN46&})u8t;Gyh#(F9GCILtMNk`dc(YF$RYG9j5^i897GO;d1-`rc> zJN2qgNOyTBXR>bZ`$F_hOY12PO-a`$vB$`ppZF0l4ACt5CX?vw3F;swNE4n$t1N*)X>xbK>$PF7^O|-=nCpB&7lpa(%-I_q z|GKR3+rnIz*Ktdj>%v-IALhESf?L8|7gmwC?@iza=H)Vw3Uggp#|>ew3u{Q; zN+T`!9Cwvg@-;3BbL~<{tK_eH9Pg_+Ow!k_$D@`)90w2<9_}6HI_#d7V`n!+jt)qK$fe%7N}mo@LE%X|*z5MWW3pBvcld6ed? zPIg7X{XPfy%)@Td!zjpiKiF;j*B@h&1H>&)+7-}I53QcrV+`psFGCq*3PvPq?@+MzjP>=ki0AoX$4 z$|jPhmxxA=zFJJGxs^v}aefy*dR~#y{jU$^-50wokx-d{(GWx@A z;TX~VErX>n;N&5~kanZ~(<3TeYSfF^!?3@XxtCWfb<{8*ii z_*4amfH{VSsL6Jh;CQ#VhPk`RU5xbvjL{@_JnR<2ToA#1jYr;^Ohm3#1A^^g0Mkr8 zRTQibwHP)&549LLJPWlL+K!;1Rxsv>qp@xyiyRI~+$UO|vIb~`#I;nHX{Z6yhY?-l zX*0tiT-~$#w>uYh+RYO*G1S8vyk%u#@06!7B{?>oKaJ)lH%=S2@tAZ z8xjj{s|nODQ@qfGtb0seMmej`AbUa96WtTe%@>ssFKT@K$pd!tVnKuh(%8NO+}| z+ackV3hn_3uT+u!t_I}9!g?LZxl++xAmNod?f?m|)NnUQc%`1JA>m_%e+wj>VB$FW zU^ktcB@aaO21ppD`tBzm4o?ryZ*}tF_^{c(F3Z>%s@M@JvP+(^>$7)VW;U@-G+4-a zC}a^Y<$z)F%SB;DJcp_*;H4ZS6clUrUymuk>448e;lk@|6K>E&zpE_`q%C_~=Jv{S z{=fQ|!e!IpT}3vt5Pp_p3jLPEl4ZfgrrWKV5PU{F| zBNtnuTrN`zAR`_U&MJUu@GsvV08C*4d_IMkoN`87Vg&H?DW^=2qd0PDz!pwlm`>y| zC2D7lS5B_b3A0iaZnbljSuBB#s&2ctWI(T|tdvV&qX}YiUcEG(sj#YJwg6xn7@`%c zpA*h1hyL?%HMIe?VjkYt)-LcbyJH9rqvshYVU+VZ^u3B!8eG~)SilgHa0!{3hL_1% zzkAmVh@g2G2b7}ZfW~0~kly38oP&)v7>l`Ib|r{F@zmZgptoF;X|JBjh4uB59=>%< z9G?txOH-K7r*q4x!P;l^y5-bh6wuEtrv^LJx-hpeo!S2225Wd7N3}_-b#f@$hCGVq zLNE*kr?!e7g9GcQGx)}3@U0dVU9mEl9fM4RZ=E$aIJjB>akdBTpMj|{5!wL8VFA8H zOI-D)_^nMAhjABk??miCsCKB*Yk|`9kjNE4>G^_Ifl}^3HoC<34Y;$H7yf#n^tw7; z3zS|_%j2i4 zbP3NqZV!(ME4~hVyL1!^~sB{!%9wS|`pP%2G@Im;h6(0Qm*?YGg$&%w*@VU=d)WZ=l1L`y~ zA|oO*2|Wqq10f!WmOyrjMNLEhe%4xM=5Bu3aot(c00hV&EBD@h zv74KlEjO>{HMNJ6hrRM`1brw;T^ zNkg)9j4xdWZH$H_=z)sulp?y?HQ9Dqa@r#%IB>g#H-UZ(0?9ahY0-+)zWEC0js?w- z3<<|N+`5b=yIV3*1I){Fw>cFCU)L3wNUHQ|;&o}J;X|hmX4LOFjpT7hMu*z%K$}rF zySrwc#6V5ZBqw&;W|L!p($#z1{R=EtnIqCY{E#8Ts>( z;^Pb2&e4`_w?TY5HY20$+L^*=D;-kz4D$@v5YN zQQNY1vWY`QI{yM%EW|1Xt*e^_87QlA57~4FzHBX-Q}8D?&MfC zd1N+BFfo_P*>YrL7cNzc&|WD2$67k;3UH2rYEy;uPG!I2{o!cRR~B)Mzi#L_GgXNi z_^Xv*j`#O#F|bY+p>c{?9iF3A3_9+a%B_0i9yS%66yLkkl{sejT?EDD?u>?iAC8hr zZ&kgRAB$prpLHodt^Q|~e~wm7=(wB88W#%9d;(2iRUwL@$r=@YB5V6VCNNu7RyG<4 z*p5nwQ_25@o0a0EL})>+(&h&xpwiPCbzpCHWFbvlurQOHK6R1PB4cZzf>9|~UMrK4 z>8S{rpDlsfSX`!FI%GE5i=A~YvspvFp|1*QyapXpx;7@Gx1ok)=Ig7X;xIj)p5XN2 zgjpq&Rlni%hLMW5sq{_KL(3yNY)M(fG(!>0=gDXJJ5U6O1-zl&QV5Gxt8})5k%M}z zl5C-u@*=hR@;h8^flA{i5Oo@wLWJ_BzmD*w-UP{huW@$Z< z#Ym;(Oe^>X6)MS#U5{gI7T*#9;(8qZDf$q#SeGlb20F9-($^{_`Dax-vY@$tr#^%n$*n9apP?(Y_z#OWZLLKnR$@hca+^_MF%lTrszOXO6AfH z_Sc2)#6;IAjx~QMr{KW9);enkX@<8+7AH0yAhB7Fz0R7*;oosh!+c-f!25smRbj0Y zv8eLA&YFwRG=@YGf_7m998|wH@-iYkB?|}NXK(BRmH4Gp$=61s`O%uzHeoO>2Xss0 za`2;Yc%j{*lQHWqW(znUW69A3;V8kvdX!x!jWbr_17TN{-h*#{kYL2z!?$l2jsvKw zMjh=jP974p`s6LsPRFU?m954H$?Wpv!RXB+ABLTj+8-GMcfIAA<2nOM^n{`M}K z>pX<8e_}GkUp?urIr7pXGWaY3M-|yTbUH%wR|hTApL~ehkNe3yNPA`%9oagkcW4MW zum)!hg5|4@NI%ttD6(}8j^*+|6=wdQC_C|H;f~kK8@dX|avBnI!-2m%&eM&rgJU`0 zhiTV+(2O&^+>c{9(}6_@UUd$65BI7at%74YL$4KZEN6O1X~c$FaOtlLE1c=)S{%#4 z?l5YuI?C9VIPkaG+*AZ^AqToUJii8t&9ErsZW=!t*mu zJ>FPcZV_|y{Ic0bqqpN&PD>fqp5*k>@qU$ygp$W0-^M(3tijdIvK=wphAW+{)AM_q zw6(Zd)|K1@j7FP@ngEw~P2UEiGuNi1zqK!sW5Zn%-G}VfJeSHuDb*@}JUVHM56BO( z{RCS>`lcza&gQzS>z5MWYtt-Z^!?7mMvTD@`wsCFbLn>-=D~_?N4i{KclP30mBHL@ zk4bfT6w=`Fxp<0Bl1^sPLe1Iu7x79222X=BPM9`~IdRhiB_E$&~R2#dfcwikjVkTM|&rt|Ej6&98BZ-H(QW?RVL`v1WAe)~PnmwtM? z1E6dX!oxKSGUDe=y8p6g1+lKn6U!dxyyqM2Nnig1u*y&tgZj0m^peEK}i{E`$q?)s}>7)m0q zd}yK(3Xz!3fzdPq)JbX z=9{tu$}1ZVa*QfT%u1rXqZu;g(L_smL%B>S4@Gg((^igsakrlOVx7QHe_sfwF!$)T z#=XX(QiVhJ()1S8P$m?x!Gaok1>#B{B-@&(O=oK^DKxZdL78c*(m$|*tyZVZr^;mN z>zIgU0xoH$@p0bERXuY1Kf_G&YQ@ddf4b=T;pQqY@u~#Vf@J9{%&!uE2o(m<#E2Lm zy*3Q0gJG|vxS1Y~MX+3HIa@lR2k%SV#3hU6C}?pdGCdy4C5wQj>8qqL9_>oXNxNbB zBmqH7;Vh9yKZ3Tw6>ct&fyM1nU*oNd%txNm#q*mu3UUJRGWoUG;OV_v-x3sIv87X( za&FnsRS07y2}9$H;oRTo694W`nwwZrnuI!HP&*dQ(hNEWFH-m29o z`nO}lgAXC}A$*7v7?>bAw~#ZE7Z6O72s+Fm88?7n&cqm|kPN%NDZnTT(#Ca_Q=b&* zu;h1K+|UqpQ0h?roxx9tL^7pMYItp!mWR?2>&0&*Mf< zTy(~se80S(fMGy#La+48j}y4TAu@P_hCab4Di)`QnArMeNL1Oyv~oB^28KXi6=n?= zG8za6{4n@NMafhU4u;Gz)iwtI&64AV1AKd+ixwPmV1lA49O$R$iBeHa7k{NGdYM%% zfy&D#YC0}Qc2I-Q-^m#B4fU4%E+$_y`oQo)AMJhn)vmvTeADkT$an5V>lJ(HQ8bRn z!SfzPL*r#^s0brRin7Yg>n`l?F~`Fz{Av%xO_W2bW@FPB(NB zHii%ugR%Vj&%gWbn}@f*+yC_b!{_Zc+qd|K{pY*yZp6l1*7$wcn9KXP2OD!?FSlc3 zF6`hQY|MpSqfi=q_x`g?-$Cjk&Oglx=UQ1*cp&-Fl- z%S11&L|?Wb%Vop6t02pZc?4LM<>|V+0f+fi)Z~OrMnkq0fJ5+KQ1zsDkL3X~`IMY_ zx;OL@<*L-(lD$eND|VrNoW`NYe4>{6QiIwzz)90?q?ZL4eWEmnwzJ+ogvCRU(Hld(xF zml96&Qf(6m?YaWE1kunoKoz;0oLUzHvA{xIUTdn zM8j;ya^?NDm3j`=F!eKIO_amcP_vcLL^#EX>S}gYyhT_vva~6#!9n-6Y8L96z&NbS z(k0zBB+s0op1GYUuVr@6+$9OKK!)Nj$yr?!5+hZraoThYMH4MU4TCjfS%LW|z&as) z4=z|hSSgwNg|x}gHw(m0}cP@lO<$d2x)DfE{CBcKK>G(}3rK(PjOzx+b)*tODSEh*fhqV%?=%mQ~ntaHu|A ze6QYWTaHSL%3!q(8N+pn?GB+o9ra(8{h@hz3T^!rB~mI21A6nbs=(tXF5`WSqS8~8 z&en`p`U>-_G#(nI!3YsExqE((vU;4j*`^k=m~PPwOl-WTdhG*j*|aq*AS8% z{#EiO9py(0-Qee`2&(r}3Ab=jFf&l=TId8o2~}`K6j>zg3}>h1$jVD;YoppygC6Lk zIsU?;!BhMNbb|!ca=rw4@zpx&$7F7Lfpps%X)9LbwE|w~(y<#M_KK7)+!4Y&>bk_v zA-W0R#ps4rz6*z&>9MCYA3eb>kUmEMI2Z;?TJJ7KwHGmRsSt-7blr6sQsAc2PTl%m zRAKrF!Ko}HIPwc-CBEgFU?CeJFMb-M^0L1s*m9M8-Es-_nqUV3VE*%)03?YE zTJNAXJ1BCG+W*yImXL59NJ>0$CtE@<&YOO$%Nu`>g3$24!~mWFYq|F`YldA zfNBH?6wU1`=qy~cOe-%5zu=}0uiAnydi|`mX{P$=#U;2U8U;;S$Od}-jP$gr=~O>u z_n}2mTp}%fp0bq5>>b2X0z&K9R6l8qNtc6%7LtCNHTL$)pxr9S67dbYr=vUTXLd@z zp}GwugQ{xlb`Td7?|M4TWB`@<<(4-{p9cJ09?jaKQ z0x{HS>pGF9In#m@s>@|gJUbL&9t_tNnfnW)u8Z2s;vbYCu^T`NkY{4L4w1QMQO&Bo zkb<=C-d?*xu9^v4L9orq>%xJ2ohlRk7M>k_>fAottHp!rbeL0k{f6Q6 z#J^nmiR}Z{{DYP6s~Jx@`W9s$6N}pJ(?nBGwuxMj?cjE?9?JH>7f|kLAK#;k+dEu4w7`jj2230J-&!n zd>D`_v#;}l0w)X<#+=ieCeX&to;r1_GLT2UBa^f}eQdwx&M*5KgH0uUMxS&lC4G^S zh0G=?z3M7+BC{zvO(n&Wz!On1Y{1cy+$b?Il@^LRL}}x}`%zp{wGxSo)z!|n4^1@U z!Y?{;VWQ}iye#4@xb|S&c`N316O6^mPEB~ciH+Tg1t>WEp)$!lL&`+-x}vdULF}sS zxnPJyGr=$=v1~a~+Ec;s5CksTo}}m`3AHjwP$sx;D-W683WilCnXoG|bYdq}GUHU# zdRO>kDLwiHRnn_WfOvy-vefj1@)u>MVdANh^USn}QA>XWZ92-MiH7par9Yr3iv=jy zI5*uM8qhzn9!Fok6x^%Z831_KvQok~^Ng)l)FbR@ACPOSOwio)3z22A7z7+ytwjp- zb}edClvh-lh^WGao9Cnc?z zx0Rrfs&@b#OaEpKI$1H|qU{)^Jb^cvYC5%aFQPZO3qxCVKjQX6_3T%bf|Q%Cz1bRc zMKOvC6);5tCaGCD=C(2v&(udEUteyVE(GgsjOEl8%1vk`k8%@@sM}I*r{gP_YLoxZ`AL)A_o0ZfqLrOL3d!^X2w<2g(Aq`FshZ zfvre#WMMKWlrq;N6Hlh|Ntl6dp3cWe_!y&a-GUp^`DdJ@b<+8gk0N5r>3p-D+PaLK z0e!`p6%+dBCvUlyJ|%i>LLdHaF+2{ytkj4LOIroi+HMNEdDv>>SU-`*r`V6Jc>HA0 zQByP+(W#DFMqd>PMp=_4vhYT)qisfiK}Yd5*)>b)L+t_aQ1e66TGnx`fmtw@@|HAQ zFVyrTr>}L$mg0FK4nhs4IepnoTdQ1sbLj@DZ+Bthsg(Xg5daA|JDIBQ4JrNe61+xA zp9Cq=w_i-@pHklf#8@|}e}4XR4Zb$14}Mh*h8)0k2!h<2JwH8kbZ}|*{B%Q2_I&^8 z+vEGceDlMn&wr0}&cFTmo8Nx7`}J?X+Z=GVeUs0(>uCG#o6TGM&)IYBw>SKj@wk8d z>2s5G#ERYSYwl>@Lcy=u184A?53f9dt^>F`t5N9U)bAZ!NSnQj4rOmPcG|kRvEVV~ zg3FBsTisaT*~#tW2AA0U&)@#)pML-DkMBRc#kDE74>~FN_ECOu3O#V4YRln!DIzUF z%&ArP%zaZVTdVOb(UaaucM4XksLU}30#`H_qu*}cK5qAR8YP7%@Xg21pYVE)Szt0h z{_l5x66BBX+DzyPfB5|V`1N1-dULCzykL3C-8WocKO}-RUn%rwD{u_JdZPOh9i?hx zau4vVl%`6DeD$}E9^#2yAv-Kmr^3wFmbb4N3G1bFqMm)inIvz^(nNT~JdpOIHdf0L zi2w}OWLW`0>ac1bqLbz#ZVZ78O#YLa0UbTE8quC6 z?Rw?uH#X1@#m|`9SmKOnyEP)y*3-VSrcn2)p8H0Vg0Nm+zCO--f*`Edlg;WkALd;_ z1lH@ymP~YHUKK3TxV6{nquvUf1HL6DIkKpeTb>^$Qt#KZYYCTUSCV*rX2$ zxrMbXPLRI9)Fxkuf_|=sCjQ5F-+v7I&aF9UNd|nhMK?XegLuXrXY(B<8P7QG<{5R= z+vI9VJ@PffBFtSpAfAbOUb-_@lz1jO`Pl%C^R!@Yw$D0rMew()6-0AOUzE$kRHhN2 z1Z`ciHx}Ya-h|iRw1H^K7Y>0WFwN!=WcN-C0W2&-&_S6r1TWbsQ?z5Vh^|kkQd%%7 z=&Ia0gs8MU{nUzoMgyBI*Pc8C33uG+d&Lmw{nR1IzAaNhaZ@ufFNb~vQdTd1C!gv< zB2c922xRe2jDV}FjlhaGWg18Z?8wuetzOE8Ru}_%wZw)jjL#%O^4g+UD9vvxkRTIzrTd#tJoiIU z*!oSorLkevEcHxJOQf9#RcX`OmaUqnKMbp;GcV=Sb5<=%j$*wYt(ukX^gELMD9uzL z!y>q0Wj)NKO=ql{P6wGbZMMBtv(TR%=TWm4suOS0O+z?i)egz94p!~SBvQJeW-lDV z6Ia{Hh%*}fghert5uYZFev(S^6-r!g)?^kV%3@grlJ7sk3>MFjBA->|pi#A|Qigm8 zkY8>a4Z6rj&Fxy=`$>wz=U6Bj23QH+WKN#6o|{qORX+lxHt07f=>9>E%79)ppxlZr zxMI+gul#wiz6E-VcvHFd>+$di)qnfphYxT60AKerf!&`!{q*kbTT?v(FAKdmf%VrPp8+o@kscc64#ipg^9NyfU_feTkN_T7mjWg7{=_Xn~=}<{_15BZcvSFMgym z5(M0uQA!;>OQg)L60MWaJ)6*}qi6ZPmDA7SG2f7(&LdFY)~??Am<3_`pafbTfds)) zNW%!kUYqJO*_*!;ah~yp=#xiaBUZc5eCuO2N2t$B7Up?of_A;Uh@Q`Q!*a-#(l4T% ziLu_2hg>LadH%GSc@Z_qAC5QeFJ6q4c)%{&xXg=)$u}$umgfJW`B|$k6oY=d>^MzM zXxJ`0P!mn?OSS6JkU(lu@^BXzp3ZCwQPYymhPM`V&2tw2xZCXKY|O)h$(+T$7rZgf zS)6)Nt1s+&n6uGq3JW&4;|rP?=Bx(&aDhs8%;p@W8a8ab@>wP+&3W@+B7<3UlioZ? zWS;S4oHf$MA}HS(=Dm54jCj*{bvAX86mR0$$Zye9%?y(lO=I#T>TL3Hc0i?s%H($s zQl(llV)I}O;3Uvel5#{5I6rDljF4r8JQn*P4(Of98fdw z46*d&ax&RhTuxBXfN&FFC}kjzH49? z_*f}6tVC_jmW$nLvQsjS&E~|+x<;;qImXbf8(1uOrR)>_%XD7cq}o+M^Az4N1+Jy5 zO(FEFM5uj-Wt$E0V0jW)Hn8k%_``*1^XQqv4gkKLB?=_~-Wk@V5hjA=Jzyf{!aRM2 zlptOC?68a2_!&?e7F>xOOLrW-_;S zUNdE;0@l=QV<^{!(mrgBY=Op?e43qzfGKD@chtrxZFH=`IX=T6C)y{D-PuU-`Ou$6 ze@t!>Kdzf3i$yz0QuxAiry6Dfreu(YVM(-kDZ?o!4M`)L7=~j5@!^m?i4BY&)Qt1? zJRV?@aYmn)XPiMbIi#mT;8BsS*+)z=&Z4vVvhoZoS1m-Ky|RTq(jyVdsMUWZ8tF%0 zB_;CgHhNV2tlq%qscjllid}tRJ6UD)y9d%QRvGTxb?#w{vtBhqv$XynJ0+qAKKVi> z$p&Us9jgX2qdfUSC8n0D8u? zsd)y5#WR_a+$Q)O&lnt_f=AX^8pBQjZ||Rp*nW*Ar;)#t)p9^Qd4a9Pa#G|8X%){l zlMAtBJfCd_kGKiiumK$?NP7-Xl$-g~rsKjPkgRnGXYw*Es8@#2=Vh$AsaNF_w=Nt4 zIaG&mCNEQR?x4bum#KGNdYbc6M$nemAw;BR%0sja334io*=C85T@QRdEu=k{ZI;0?B~u;3B;j`b zuAP(--g799z(r^K+)QK0Hv5H|QgP+ta}P4}){pMhg!JUdm?$0I2 zS@$bUYnOFDqthkpZbkv@Pd;VNy0`pY%r{FQxt20TZuwJ}`K&9qM<_AOwhP!)IdZD&5B%E#Ww^n@dZ>+|ZX=_JC)-Y%8b-hXw2Fr2!8|Ks1H0YBPR1={=?~<(*QsW#m4^YNeY{(tiU$ve*g-7No zqMG#<)pNR6*3xq2daFx$4+&=z1T8-O2t4Jj5iF;?x#-9NjikH3Pa0UtyU8?+31{ou z=E>sp?b0S(jvah<(6^H$voxOi&`EY=*zsf(?fWzAQmCa2yM%w5VYdx(%v~7kaqf>% zYNSCI>~6?0g9q|m{k(M%on34*vZOIo8n3q}*O@V%=a@kT@8HrLb8MkDzZjB~yW4Wi zVGneCs7%ogJ5L<>qD(3PU*BKMF^41yd{y6H%rOV|bULNJe?yL$@yIFv_VXk&!<7F1 zz`%tpvrboW53%{hz`=zyvkpnwCj$%5<(Xw86*1(>P=iVWi_G%O(ldi7;T?R0tm$)3 zn$odU($o!O$ukcTeH9;BEu^0gcjYC_Q6v`DvXgxCg!Wdjsh|5CMKSQ4M}#A~<|DV(jQ^_K^_dP<$z7l6mhsif(7MjTYDo?3VZn3W!pPp_2j-f=WlIi!EIpKR+sdx zc0z2R-(yDhntM>3#mC3hH?l|!gUwf<9nL6UGMI2GEdB?jdX;nH87E-Gfn;`)XW4R| z0k${_&ehfn!nK9{SoNdfnKp%|c(laMz$HhQ>2;PR z&dx90+u?7R#_%`93WmR7{KMZcGX1TqWX_o=?@(C6@nth^n}i{lBd`4u3`3PGkLa*4 z@_K?bM*?{h?0i-h9yCG5)>jat2LJeqn*oC@sAOE8 zqp1dd<;S;kM5CCay%8GFY_TxM=JXZk7zd==IWoNAb5v?@GRJ4qu}r|vRHZqxiFS_o zqMM^Qt@@ORicv=n3ajX#_>c)yzeA){V zv43W!xJU%s?Z)cnvAn`By0Kz9KyKuAXz99kCMK1e+$B?~jB@FeYXI6S0=H0?M9Q>K zm&8;IqnLvxbzWoTT~{xu1`vyD;bqdRtxN?_U@u`4_War5=W*wlLj~UX-ziyB zqmTqLO}=ngs79t53b_;b2D49Okh~0u-1XE8CO7-U+PB%zv}RlzaYbm7F8)Vl4HB-6 z#XjPhy!-qi;Xvh~IXFloy0gHd#N}Z)&GAh1HawFsN^~dUnFi@dBl=tUnH*{>cYIaN z3-Y1}=sD;Ju{v5-W~B-Y>f>cMJijzWGnE#+`bkc&oh`t^${MAC9y(%Yn4|axnR!}C z7XUP2T&JT)=s4UhP+@??S$PdRRev5pLpmB2RBod(BK)eQAwYzj3IilAkTX==DB>|~ zrjXG`K#{5=2q$RzDO!dwdIJL_&dXIuT;u-NX*2x@T46i~pUJ}5L*k-b1&JW^TAA1x zNSxtrT**Q?-F+hr2F=kN2xFsNYg2#)%g+-;I1_S!#2I47RQy2MPdf&$FQI-688PN5 zqX5fO-jcA_vWA{O#BFmDhoe0RHe9GPBI0ZXI#qy$r7_4!rTFsH2S6O_Qpg6MR!gq} z(a58(ou@wxWg?y@iE`|krZR~9YZc`Y5Z6F&*zAQSMYS*rS$B8LP$`4>5$ns#WX{hQMYor9#f7Z?t|E_>iQ|Ay*1T338Q;wO9V2tJe*|3W`{}dh270Vi-!W zSd|f5dxjy1!8Tc)?9M}wQ6R!erYT|aSiJ+-CyAI4N;vi0P{9DkRli#oZ=~q`(u8keQRC8uYvbgb#%jK2Hr~` zUGOc)F#4j8Q8}dXBDc4I<|0>cVPO{PGgsg%3bTL^_Qe3XS}4rIFr|GlAg*o%%>}5f zIUu=R1kDvlVzZ^#+7{-dG&U>Vei1ZR*hj%D(!0L_G*>IF$bGGC%`tO|RLWV!RMB(lN!IHq1H90CT2+p-!~H$V+aTYI+`;EQCh%-h!F4 z+~>>2wtwxFS(a>Tlb@S@1N!`;GswmPbn+r@4ralY6x#H`D!4g;xu#JVvWpB8t`}uq zLiA~|z`cT6dlcG-z~?LnS*wc$`9@lJIpxTTwBd0^E7u!%fpGQFev5J*EfCw6*OAM? zq31s>@M}?UVO0YJZ>lJf=sj z!SjO+agj&gB;ReRD)3H_dXIO28(6wX*a{VqeO!&w-8@x9Zd91s zr|Yo_O4r`I52ZUN4D>I%jWAhXwxm=7=*eDUDd-k#Su;GN#i}lz#d~gZ@aB|Yapzxu z|L#xkK79UBA>GcUr8U=B7@VLh+#K590TujIUEvB5Gc(PP_1)imY%&}8%u5p_F2FSr z=p_A#L51OO*k}xYLwCd9u(}U_!&9#T zQ(vjr(hwl!vusBM+t-VNAqvw_V`JNjf-r0v>Vha3khF{=!47?>Y@rc_1QGS2Vlwck zkwhrX7_>YubSH7vqfN8}AEiB7`fL;DU_U7r)1ZS*)bRim~6qt^}45Kirxi>c*d5XW*!ctrD*n}Xcd&TEx8iL(t^7q#_a23rid%n$Nz zQ5AI6$L>31G#{rL4OWs4pK;_vcTyrD*~k9O1mKOnLp#ZVSeJxF=8Rw0lQ#x*cdDfP zs%4n$sRCgfPd<8M&{?6*%Xr)%;c^6a$0mmH_(1G`6g^L@U`D7yMzJCo`uQrzD4Mvq zc4DaycmlT}P^_jyxv{l&3K`XueCBeX5-b$-l~Ey8`ezby3m^~AB+bS=Jxf_xhp3`g zHkcnsP?#d=A4p0V3hy3RKvXpb(Ny9G1Ev#brgb3w(B1U;3vhn&h4rlOR0l18ff-D` zFpKS_1i2N;pI~mYPh=5oGCQeOLWL6j%GrPsx^*RkLK(S=XFZyfW%lCPfF@;`z4A~* zt)NgZeJAb;DZ=&06~ynOGYYcD{0t2OHX>RHXo}F_6dy$w2*MfAsy+KJ;&~P@3O6&0+`xVDu`~Y!(HIR3*YWz$kRW`7i=TB?A|NX442d(Cis_ z8Ee}WN$BBa88zF=_&LC+j4t(;>I90Uovs04En=em6cOX!p+jY2$HakklQakft&Mw`?Uhl}GCneU5;QS(m9xvVxfOQ@50;o*TI zMgwM)_&8bN(`w;G6dRE|j~UIfMBbHQoHJ|$@fKO?4V$5Oy)qt~z0j%<(VK>F#;_IG zEsb+;*z5+lxU}wyA+)yjjA0ApEXg<+wgx$Sg>CJSvuBh#kh9K7&a`6MGIF-Pj_^EY zlrYz-EILzEd2jiDP88)E(*4|vNN4vX>JGj3e!>AV zYEV|hjWB1XV`Co11!oZm0hPt$_iK%ia2aLB@Rd1 zW#L794%6Q#7QN{}fhC*{YP}72_x+baWwj|-g33xtr%+i(i^l9p*vae*rcKC+Sa7$G zBV5!32qM|BT{u_>D4vXb*Clh<1mBF6b-1W**BW^5a8X{*)$=|s)sj1SJc}1?0pTNF z)WNb)m45cNWhJJ2GW)y1vKsypSXLaFgJq@DA^B(FqAi~B7Pu&-j1E{F>@R|}P-KzO z4S#Iz zEV|3hqTvsAAwyyM0%jDpYKeg*YnZJw1K8!0fq~~hqw=W~Tja7)Pabb5dsEOT1dNe7 z{^BKkMd(nU$nHx%RM2RjDSzJSUQ(fxYN;KI>)D#?UGyo{=8zHblP4gfT+~Lps3ik^ z&?*iI3x?O$OIR!bMjdWxp*-M5F%YaiIZsAW*u`Ert-YLZ?G-JpAWw`UL-Yy~z}GUJnwmsP@rfawn%_XQ?@zK8=|+|KxaP@eL(a17|r$ zJD~Avz?$<$8nEW!U*3N>{y*Oy-~Z(w|K(p`5q|v5Z@=3de*N3uZ}i`&rMmsyci(K^ ze)ruOgyxm436|NQ0S8FqwJrYPho3%te)s9ebzA*CkbnQ?1Zr9y5R%u9H(}n^ZTMO& z}cJ$leoe}*HcLx!D`A>wMi=9-z_=U!FeMLH$*8f&eF zw!SOGl6_@(1eONlClw}<-5B(d-5>RCE(4wnu^i5h-r%tE#whxoyt+E-=}`=5NM`Od z22aPO?@XhZ9|_SC%a8l+JZ8jU9_d_H0d;9WUw29b7WZb~qM53H^K8y$Mg8~zCy0&)l+ZSY z#o=>-Y9m^PbRlvu{U;Ik%Qh{w&RxO`2Dw^zW(t)KK$X$ zSL|tkZsNPcLAVaEEYGlR+dZ2&J_pxHhuts!my&g|U)8usZ4FbSxCZtc&32>qT$ZsH zoogLrQnsVL=r!WTw&P)dp|=2@DHRt{sC0plaaI?6vfYP|>X-N@G!XyVpd2KqI?f&( zve`%AWPAk!FRv(>*pW!)%W44$rv(xp9Wt75RS#}TU*2AZ-@Xs<)*9^zQ zRm~U)4uX>4kqyKP?OsWdsQVm~?BB}#Hw&57*M(wehQB=x{2 z2QuR0o=;v!%J6(Z6q%Iw@tIPxhsl$|C=xs~Y9q-1$fzc+1&Msx2wE``AJUS|!SDi8 z8TP_V7bK^FT*N$}3k|5F_FQyfGmWU3La4CDNJ-N;jC7!+c?>4;N-~Y(hn10Zacv=` zYjV<37~-zs08b>SYH3%WQnEEqPb|zj_MB~v`W|1&wq|CIZE!NBx&|5aZR+4+FuT1< z;S~CAB@u(9T1$~9`Sde0HDR||O$ljC7BGC$+ z4&rEH!)69@xs{{6u)NnuF3?isvdXXWLw#SyuV>o>otW4=J^2WPjON^q zoSWRWVrLOX`Mo*>KCoR9tEk_|cG()XFtA-+9j)ZWQP+2aOT9gRjB16o+BAh0)CQN5 zYG`!&p){ulb__wIFey=ZyBw#IlIlB8pS7FwdfPcFWM(K|7>0?hM+EB!JH4-~;S?4RFQU^=SM2wCUtBkV02AOhk=e z2!v@hl0}#V&myFS6{i5D!KguJP05&6{PLiwxv()^d^^O*FtPokuA?8k zTZV7w_bJqcZ^suPl>Wjr{G{F^PRP#x=3}#yt$kM#oCrT@KR=3|tOv(R$;_Uuho3BF zdOrS?c}0+fvH5F1Yd$t#{v?H&IeFwtG~tsnTvCc!fs(`NH7URET}H zXr>q9Ky4d^h1wn|>}sfp6LqB4f8k-~A$nEAe28Ar)tIaXC3;okd`^#SVwR#;z1O&V z))C%9$HnN?$<;tHLdNjcieF7ug9r(5B>U5C<>)N1~ zrY>|H`_+bg#z)#wV)xVpl8xPLp)~4lr57)~G(<*SC{~Uv&7yEiplYN)TD&MwHGX+n zpo%!RdR6zmfvS0H_XMgIS`4Xd!bz70suo(!o=?;A<$tV+N+fl!;%ERU^}FI;d4EeVjPq9>M$3$((Gr@Pq&}J zDf}r{hyuOT(Y=-}W~1k9F-e`VMG{xacX7`GQOdd83bEVF>mhRXf<+a+kQgmr7;b9# z;+X$7F`j^2=s0x6abx`2$Qj|LqeJ70_15HtWUl{M(M1ukKjPZ2U#$|#m5 zfg0}5t(hFOz~GnXay&*?XAfdzUuA%#8WfAe=o2CV<6BOM1SGYsuRlOiJ@`a}Ng5>7 ztA~vsaZ5RufTSvVGKAYHPA$aeF{MImPh2>>Olz+yFi!T~x=opkt6?SYF4OZO zNGiU2-l*0F#I8l$L;$L8rn~2~&Dd=(KvE@HZRDxJK-HdO*Z(+&q~3+r(uceegM6Gt^Ebl--qLGY13kd-bFiy`Zyaj{Ypg+)kkB%A=0tF2> zPY9TRx77y&&ub#iiS(fJYPg=15_A1sw1|VN+oH72a-~1XM>9b`4GxPVhh-p-5h@;RE@?axNe+7(@vc z;&ZkzR$RQBOe_gu2Q?}o=8=7!Zay2?m!Y>?<9jd5V!CXmCzo-`1yT$f$rU=stC+}) z>WA{|@DSLybH!fjZ^5jWYn@mNuu=--$Yy;hu;1hkK}H9#7c!24eY=Io!wFQKahBm| z_=XBEwAd$d{!Rxu0;r=&w;H6T*%)0CJG*cd63Z*K@u;`yelT9~rh)CUHf&*FyKQAm z+;O5E4a1o9HhmX|X?8&J7A}$6;8Gf+MyH={K{^9Vwa5CyM!>gf;1_-AALPu%?X=gBu+)QUYTi z799TlC^{W!>%q^w+8{hsoKHC!U091GOh*))2Axo%g&H^WFZ`8=XKDaK$R>Wgt8Ri^I!2~}ZnL%F%{Cb{V z>cUA2SZ6MQ)1YGpT4dNP30FyXe!J(LcpKjR7`hWnOKH{&q zyk3&V)K!S#<{5}xTY3E`oiWf*Iz}3eav?Rtr+hl>{-`xwb}EH#gVUIgS@4?*%g__x z$kHsqm?0R9nbS6#RnV;@lfZ%k>wJ+}hoYC9LMZ;KV=mmE1(@@MuoQ7Z9g1DjYg{7* zvQ~QRJEp6R2e#%7CKSv$Jiko$iOd(!G%7rfreQmCz!&sExBkKu#x8Rmxdk+UC8YsN z*1jtZrZD!qu)UUdIUloz>=tH|BpyY=AeUm+3V65i&`-5BMtL=D%5E>2*9Y13DZy=RpNuIHgZ`E;`c!RavRo~H>ZZ;Mo*KQgWgGTcyu4)a7!Kzg-Szv19I@=u1DcPKb$Tde-ZO$CV&Tw*l zXBNAbN?X)fITDb#$&`V_ez>WS_*CS2A2bLyb$kpMO2KMT9V@3knl0yZIhNitfaw2xNE#S3%8xoD7zY5JxU4o#?>Y=5LBn4 zYZg7S6onR!9d)H&Z#>sS2XL^FR{oVOlt$h2wHu6%7YEhhc@#|}OS5ZmEs%X46h?~| z1-3`dHG%ETr*}VmI==h#t8YJl+m=XWB-*j;-+lA&_ILZAP}FjZYN_~#{pW1i)cYEL z`@>J4{{eOTnt(6((Z;>*@8kdd_WPgSy>2fIw!P{!tP=36c9H$RSMBHrE7<$0ef;?T z|La&jq$utbtQ3Q8X0moa$xdE$VBuhOZtV;MvClh)Wdz* zKfQh2=X$uNTw6fIHiw6QF1JXu&7Lc>`?7!O%IyAqDqOrl^!VX9(jr&2ynEO@zuj%~ zfWM(+u*s*AX=$50PlH280~)a{nta4zjhiX(+)==*HgBGBZBAcec=y7hK23??`=mK7 zU;76Y3`%htuC;B(D4?udp1B$6-2-kWR<+_u3Fs_ne^mqhat7qX`R=Mo;k*>*Rdb3^ z*Qw~-88N48!ML0^1)p;{(07SwckN*&i|w5j=&m6+w~GxuzU)tkan}%bJf|8uDZ0^= zdv6e#g(M?7fwLDPmE@06xBCv@^gg2Ec=8Zycoln+SqvG>MP`sc3~nU+uWg#bmHcr0 z`u8?NODW**YAx;LETy1XPMuS2F7X{7=AfrKKkDhRcUvuzWzQ)4{X}h$3Tq6`unm-N z^sRdG!(KQt$d<=r<)PzLJY%rUQ*kh!GJso+L#Q5Tu&#M9@2K6VL}%kp*kE`%o~)bGbRI_1I*!Sk?ot z)~#{8%4mkc=6=RH;2+`5*xc^7N^52Dh?4;()KZc85cV9xp*(mF5VMDk|ejZ!{NIX6ZUF0y5QmKgEC+*yx}w z%1M~@1*q*$tlf8~0K5N9o;IwJX*ybZ!?FvNHF0za28UeVI>5F0URD*!6&g!fjVdwv zTpyM^AQ`XIMWN=%-n5*eSj^x7D7@FNZ& zOA#6uCku_EbciUXBDn*_DLEuu6u-z6H{5qnoN_mz_#>g88XaG#6pxE5ncFH8XJHm*9)~wrin*HW7O1+ndve>rU7^yG?rg-+ zY>QyU^J|{a6aM+ePR~qXeE&;ARGNBLfN*Sz>l0=frL{Cmmqs%unyM9$sWpyW;P3{Q z{d8lfOB>|TyqWrmNt+3qWG!{&CkP^sUI$%^#M+pQW9Aub=^4~lW$TCek<*%=pAt$# z^|KI|-!N2}BF}adt??1a%-9GNrq8JgQOqY={1*RCD#{?ddQ1K#L+m9FT}$R;;0VXt zS2R{Veh4dygO?K_Equ*h1e2$~=$oa$)#C|S#{T084UR@zy+{j0`ZrWu_7U$(BK!>v zJoO^VMK#+*8Vhh5pT)RD07hGtpG#xXya_HYit}_}?fqpxhu7D3H(+357v6xef419E zg{CXDZ%y>|D>MXH(8SZhf|s4Hb;vW7Q|!4QT9$6NC<_J{2%PCE1`g@aGh?GtJ>+jnJji&mN z#L4Z6GO8#4!>8EJpe_bGv92hjNpAKoH<9i%`TS^K*e@gWAaH|{s01#?!;m7qmurd3 zg>yP;pIoMW7{0{FpuAL^!9RAD#*B((iS^jFQzkmvYYpaX553T$W(Cxl?w=xx4dsP15OJSM{gQ7GNA^FENgM z&Ej2{;Q{QS=*5uHWO!a0qUd?jB8tySY$lWLiF?qe_X^#{KnD9Kp1*<=>WLJ@6#LCr zI8;yJG=r=Z78Ilb$Y4}7wrR+IZX*VHnBC)%hAdv{rvq!)&R+c+{*Lz63DaSMI2WTI2T#K}v+(*U(jYF{RaBD=&7s@pbZI=ld|tYLXW) z2G?yh&-8MCUhGT<7WsMAIpi(lt9G+H;=^?o^4YlAxttwh6C2&z*Y;UFH z+q_u%Tja&;tk1P6p{2Cg^A?zsrKHf!nWo+T^>S^8!|J)V!(l1cc0Mt=f?6fdr>5;qZJ`zGWr_vxNWq_XO6Y4Yg1W!n#_|{=S(gMg&yu$eZMuj%J}_g< zDm;S>FYQU06t4_=DOO}x*n<%E4S8P^b)2{bjM`uUW#99MR1$cvISu^yP}0CfeNyqm z&~QlMDHT5rQ=sXLu||Us_{9d7lex5*eM=DZ#g>rGJ!vS>R#gxSW~?tAX+@@ly6nF>YiB23xL*EflG7-dY&`Xn8l}wD9#va;zUB`EoL=9GJuRlibR- zWV2}Xs$H4qR&K~s*7wikCxdgvtIAnukh zp&9AL-H&+K3kz2iGPy}{k0Tx_6JrL3FHDnGSvovG7(Gn`g(YW6^}rnUy_s{-%4+1UiSMmo2r%fAD6~qC*vouZ76Ek?BpQ48!@dN>F5vE=@Y{Fs#RIocy z(?;S1>c0~~`G$H+&K23KloEZbnhUd-pnXM44Cg8rHlXVJ!G=UWBME!yb73BW2ZQ=t z7;|wNQ=*OM)Z}IBu1xk3xiItkj5;*JIpd~LGfplWR;9*LXPyZqX%YdLI_q;`ns>S0 zQIpki%Byl=7{*<>Fq3gjRM}gwAeS@XsJu{P5(3Zq>04uh0={ua>_m$UKhbDbdJn6I9ZWhJS&x*RaqjM|?%Z3g3h6E{b$wlp#M~FMZ(3T9 zW?hbpvyb|pdl=^8BGO1%_Kl)=Hv8sy7A^~2F3aH|kiq_m9{~f4X4yB832_3MMBNAs z1-xMlp%Kqylzc%otCsK(p;w-x+u+MXU<;f_}68P-^FUD!q5zBh>*n3v0fBo}scSDNd>KJG|!UD!kNRvK!-=UA0m$=A3j&Gnd4TBUy7 z(|BLaep0^fd_HP1#c_B(>{d^6J-;mH&Th{fy*#`id*+#=HqUpy(UZ}N7Zy#4mT`dX ztIg9_SLCEFlRT^w#gX`;N3|{+-aVK3JZ{V(fcv8zS;T2iM`=#VWY^T0fX_nOjdBZ42y~JIGzS3wz@W{oe~kx$%DofBT9A%H{p> zC@FWpV{hQ#y0fdvys&mk zEtO>P9~$UB@NY4AZCHn(iACt9c`mI1$QsI?>K^GT0Fhb*YZ#5#P7cyo%-v0{5{I)~ zPlPd=;*R^rg)|pbab4q)wy_dd*j< z7Vh8_k5tQv^qMbZTB?g0>T|IwvTHnTW^o7?_w4>Xo=Q7C&I>eA%-DmQfTGxss#BPX z9GlGX^}bT4=WsxA-F(!O)sNrIv9dfJTO8(ZK9eW% zbaC7yp!gUGXWbuGm}eD-#z{f;IVlGnH8e4E9o;F8JjO2{BZ4PJ*Y4sfzK%W6789)~ z9$CMTFed48A)&X*6(eOwO#=9QE?s6@=>ZN(>rrWlP*2@BC1Fma?A$;tN+5^7Bl-x< zi(F>AJ=7@U-7mp@4kJRhQ|V$3OilYW97(#21KvRyws$L;;2T!^t&nrClgqu}Spa>0 zT*l&^%qp!x+)}mI=X!3 z=8L5h8Zpk(jjt0DKHtY0A>lK<+#eD?)4>`c;WJ%izpDvy!gO30lLqTpbcV)bMW!38ye|oP4mG&fAFS?IGcp&1S#)$%mK6?ZazT8G8Yo{~WdfE6@4=*T)ntQ-`-TvYCnSMUE--;d3jN1^1tBw=~P6L2yTFoW33n z*7jE$NcqKZM4Lkl+mawD%4IRHthBrvci>L=3(l*kBK`hp;x8J~BewLw;Yv0sb0AT^|?Hka|BoyGWLmQl5 z3NwjF*_j-KWGTs2`W9k|(vsg03B57)J|3;4_K7=nkR`JJ5wQAxgIfN>7JGt_YN#Zs=^Flsk}(F7bT@?Cj-@ z-ySHvu8&&-rC0QFTcGrc4sH#UUeQH%POlG?UeVFbfzm7bxG_+AMGtocO0VcA?b9y8 z&OS}MufyYBE@fDIVsZO&S0`LPyu0wYkA{WA0^h`!PHzrRL+vQ$ zU3+kl7B`!xg}ZAA?$KgHCu8&w>1fJ4M!I5O9^aedgYZ>rcyI~En@|%5;|Y(=~W3ivA53#84F-y{tsB&H@o zbnO0VKGp*j+bIW!wQI8NvLvfVOmN_K3vX^w5<NRkn z(~)*0(h0fP8tO7lw>qPMM#pR@USTadZNCP z6@Metw>ftX5q;h@v4H(1s_VDvt5BwyPCQt=@!|@5zofnv8C~G0N&iHBt)>Rx)D|*w z#9zzNi1eaDkgls8Icmikiu#f^El1fz!%;gqy`WAzyW@eJp*jtue^GshqE2@C?VwJK z+kGi@G9dK=@m}W^9XI zI2swOk@oDz40_TjOBMwT+^cKtl#tPXEAw~nD zazSIegJdw^zOH11QZ`et#UrBot!l*~m7hUso(tLTyqaKy$SZT=RY?J(wtxF3eTDf| zMHp%^SaBL8Qba~s$&nf~*sGeTy6j|nw76wOcdN9=BsnwQe6)@0k^;fJK#y`|Q+$;) zfx-$g9}e5VdcSNRn2{@#v+9Yxh*=;#1h-zSWElfUEdae}We`6L@n?U+oEWdZB)MSs zLw~Zu$~BB_%BN%tbW#Q;GG@Lm6B7!d;UaX0nF*~ZM-`o@T#O?l?gA)MkI^>Yn^r`D z6g;h*Ek{On;Zn5-?S=AxtfjN=+;a?cOwc>tAFe}R#Y66q$pr%g1Any=Sed9kVdU3h zpoQKEwK_aUs~B|Lv*Cf_RB+mdy*pi*;&$H!a!FGU*1*&m-LpXKkQx=abGw-mx+)ha5UPNLURa_YxRd68Ou`5mq_PXZaG zUQE;3OJ7Q^R@~}K$x(+jrbHVrvL&0NQd{i9OUZf7EUhQ97^#$;X$9Y)rAhK)*W(zQ z#kWL&xE_apiataw*5wMVfzE8d^tDQ2r}=`cYDX62`$w?B+-`AkayL^MV!yS7OL$jd zz)ZNf%iC7iXudsU-snNwW{})>lwG;BgBT?vtitE1T-w3@y6~Nt=sLx*<`3l*9QfB- zXYC-(@HWZf#Kr^Wl;zm#tce`{9gPU)`|<|f|C_H0Yn_NimFIQVT!f}EB#Mw-6~jUG zYa=fs!c($v@O}2iE>Njo8;#~iYg*fc!MGgIEse{;kHX=Fc8gBNth<;k;CzfFM-zmj z1Pi`T-fL@|u@WB$yQ=gaeEWk0Bjz5yeYzv-9A>hCooHYoRt~z4G?T)LCE)P^; z=KqPZ6K@voc)h%#t8gr*Au%@`_{-xw-S|2cHIZfIMd7hIF>UVScKqJ=aBbs zuiDWnIF>W?S^>v$riYY9Y^Vj_|GL=FnSQRtu^j9UqvookjBSYnf1AxsMc@{4pf67^ z>!Ud6LID@E01i11V>tyz*giZyKQCZe&a}J)OF)x2Mi}S)R>It1@(-IE?>f5N6l3j4 zPA?trSGhX(#(#blbMM+zWn`K?eO~7chnfTZ5hk z3*n!Be`+>xXrdJsmGp0cZV={E(y{>Iu{8_hmaPk*f+>J8SdfoN3}0Xm?&-B>Nv6`U zBp^w#MHM(Bjk6aNhk*HLE(YNAg&wFI) zF)nMQK{Te6C*S~Aw2ihYa3iLYDm^t)p0WeVZWg&(yM=%XbB}Io+-ocaRBWkLZPEU2MZAg=U5vaRvs zrS@E_$*!tn- zs;Tj+1k-|KKjQ=c3iGSPA3}uzG%>p!AiXvWs)J##q_~+Ljz#bzrYGpZ`w};C$znMQ zT3m@tkH>P!BA{vdDk+RdyOMI!Zdg7^K+qCN6M6I_Xd7JN2DAx_+oQh5TNjy+Jf(~0 zH*pl?1mb0GW3j>0d$+zND8gb(%b0T8vZ1YB@eJ8Qb*`#qn-C$!R+Xg`HW(A~{dwcT z4p>4Hgydk8D`E!8KBqS_%uq_JbH-zv(rdQRQoxN1GmPsRmnA@k?L#c1iCb5U9qoRE z){}N)H-QIOtQ<#kxnSZ#HGE%(`(EO z*4khy&6)KKw*0aVk`4?uhzkLdMQVb#YBkCX?%43)LkN9Hl1KJG9eMUcr$KUVA!j5n zAebf*beKajZUDiYi7`we8FqbBfKe8tjq56>J}J;)$?qaG{Q$F0i&$$Ie4f(%~5^_~53l7k7gN%rCPtSO7oo#oe-A zM@Q4>>Mn?Tn`oqmL7wkJ+!NSE28u6C!7kZ1@H}qx#ANW;lkb=J6EF-&4j2r2!Y@Bg z;0A*TaCN4kPcVv##W9zlLPczSGbF0)Vlpfak%1x5SA|)_g^UKm0YCI!Zb9pZV{|yC z+Q#6&S#rE^fNu|U(Skz`Oi(n11N{^|Q7Ve*>Z>$BFSDv8PWP4hpN1zmqZM z8|p3jT}-}a^nt+zKid2Dt6hHw`KI4xknh}!)+_eXqi7tDgXcYphQ`a-P^Ht+I5tZz zp6nwKE}~oDb?_{sXds5DgoZa{!>ZI6EXU=8oJs_s{*eIuQ}m&E6TegJ+{q;xt6 z*`a8}A#?Zl&esN-lNuc_7qpM1Bm6djUQ8Ky58L2(5-75+-_iMI5F1BR>wj(<4=!gt%kj<0E zfL-(}ih)_=2aI1zMF=+RR}_b?1bPSU4(5z#5iTf)6_G1v9G)fEjx;oID`E{?mh50_ zoCUW+cd*iXu;qkcab8lkW9-G-)s*k3QD03#op!S>P}8a#tfqjE?5w+3gb;DOQpn@t z^dq2ufVPGulg)704vhF&*pA~;sZ!MWZ0*g+;J1I`NJp+V{HBBLNUj|y=^D}i+b}9x z+d5>eGzhN+1Fxy^a#eovQf$m=nY{=b!*SWze*Nd)efQ17+u!YfdjH|`_M7cn{KNk9 z-FG))V=im_K5We8ecXeMxv-bpu`w5Ra1S=-!Y=Y|x?(fY>d@{X(1fvi;+wd$cP4Rc8k{|o`IU2+V&oBDC<_R z$?0wW0VT`kEuW{sVpAJfChxt_0 zQ~v2~|t|$uYS` zaMF4wn-oAmSHB)Ha3|6zM9{*8o23h-A=ydAXj2vg!#~B=g$hmE2U>+7UpSud` zy7u7Mo*LRo3lNSYW%)HO+Dk65m*>E?LHo@L?ef|jkRRWOe*F56MXJPpgQsY#fh}T_ z*vG&Pi_`#uBs!G4(qe^Z*faa(V`2rGG#Q(;aw*|NFV!}I(5@?hOArlh19T2+*rb|v zv5HBrKSs5qZGYl;Mc(!y;L=zP#;9uaCjL*`J5#u1a zdkb@4)s|`uzR5kD7|0r4kAWza-J{1ZiGUL0d3V8^JrcKK>G(}3q@*W2ovaP43b2=_y* zn!^$6F5R-M!j^+WS@+_5^;X+*R9aMq70Hk>T$kAH5c<X- zg0_|`#O<5L7?c?bm zdVzFXVYL-2@>&5ebm`cQ5NbtA7w!pW9(7$}=Mdcl@M3g>OV|a<&Ggt)nvb5~meidi z02~a1C9QXbquPrYxm1Y54Z7~S3@LCmwNtmg7gd;kLU1Yz3C?_O(E|#5w#2tw6D(vS zp&nNnmLxhcK~iB8VoCwxWU3 zn9^0;!gx!tqinon3<*BA>?tNeZSX?MY9Ez6|-ZH(L(j<YH{F?oRmb7jZp9 zrCxtihgWUE7rlPg+B8%B^x_ia%_wNnLN?IrXQZc1O{e-PyAS?Haf!6_d1)G%%-%sP zB_OnpP4$z;m|}47&_dErv&P%kD3#F2M||%kMwD`;Q-~EqR%53r?s?%0zV!k+>I#p-x-Zi8Rfb7MxIBE_349 zp$PL}xUR_DUl?^=)ZQ+0?=aKebR8md&!U=Ddm#mB-MzhbgBiT|&Y$mNjqLoHUbvTS za}$`zKx zUnx0{DA_9%uGl>6^7SL_SkLGDPp0HH+x_;o!WAdb1ZcFP32sl$pO!qV6FIgIU+z_^ zO!QlLc&h1IMRWUXuNDug(_v4q-!Pn>_}ip%#p$xHw9;cVbhT3oOY1zI>Cf$MQqz%Z zMK2jHKvRC=fHnVM<@;*JQx17_qAYqj!Y6lI&*@bU;WIR6q29VjTPQz)hOTr{&(JKQ ztUWvBPckJi>`dS%PmeH**^E0gFn|xi?(EbdE$N{c-$8caZjv+|DRz={!i*MbXx+bv zS3IZ#o|%1p>;D5i`}TWWSpDhk4yw6;)S!XFn3HT+o)wd&aP-uvTa|%4k|};%wm?2G z+pp>Iky22@uO+%y(r5HZr&7`vDOt#DlG3ZLGBy6(lfvjUl@vaZj_k7 zY)5IKs6&)C9=spLC08q&O&Ps#+|ofUN^y5tnAc; z$D7#LtyzEq(;q66%rm4+M6W9vOBTeg+MWxBNHh}+QxeOTBc(kR3~tmZ7)+kwg^6IK z$|O#i;JPgbWO^$YR+(hNuE@}dom9yNr^42|!XHcN(J!cymYbeZ-cr*O%3qY3hKVQT z7c$c%Mk@W`wCO01CK}2wm;QjFEEk|a>V6vSI{0v-8_AN_hfr zGSzfy>0Ux_Y8QsK>VCv^T=nc%m4cL;uD#hBL?gZKLYyK2To;4q-kltCTN#Qw=8xp- zV>pCN;KSa=SWa!B+=N#0C^ylFx-I2)TG=j8AAGzh0HJHt(R2PjDo0pgd$9mSIg-yw z6+63>4_}?;IVd(Ey6iVP9rEGYS<0+W0SI;gdJaJFTsc}Oe02G>OnF?iu5*(k$+30e z8ou+ib3<}lZUSV(<|iJJGU*Z)U|%dU@A}^@zyIwNzKX}G+69lbYCn%Y&L&9^0y@Auh4LtpXvG+SupIdrUiSnDmN&ISgVFg5g?yVPhHd_f}Q z${1!FD)t}+cbqJ3I$!tBjZH&+DQ>fTzQo@3kAq zpqr=jF%mw;=v%kohIIZJCuyB@zT~5b*m64GY^Sy^BWFNgac0GY{`tvUuBAlhLXs3u zL6r_U!siqE@OO*haR6qe#zI0LZOiV}BxwDl&*YMRp* zFKw-I^=(QwP<^`#6Hle|7m5H#z}d-EeQ!wVpO@e@Qu-uFk-q(6O8=Dl79d8I=fQm4 zkkmgv|G5TVo74xtss`KDkU@}Jv*)LW4&UU`?D^@2n(X=h)3?X>fBEKzPoMuDVdj7P z@i)KyZujfoez)b8d6Un#>uCG#o6TGM&)IYBw>SKj@wk8d>2s5Ggq>~oHFvacq2Sl- zfiw8chgY6J*8$v})hLwmP|YOP>?3XVE;^LG+1P38=Ej1@lnX957HoB6foCVTj~iTK z^FM$4tAG0ayFb4F@D|sm+%7uM!BFz;qx|9&df-CUCMvxYk(MAPVXA#|-xSN%YCKEy zq<7NQ4ALqpbIgJC*+Aq7wtG8`lEM@C=Hus2cs<7~Fqt3!_q#u_l{9yH!XG}rKYsle z{@r6WHc5HG@|3%8xW0Z!1Z%#MKV>U$+Y{ZF=qObilY4+?!ilDVF+-!jb@UKV!oy}o_)fZac1bqLbz#ZVZ78 zO#YLa0!PnWj#3-QKpbP*nQ8eMA6pe= z9_@PI&&I1#$I;iaxIC#CX%210@m24_w+mwz$d936J1)ilw~sD7G*Y^FRu{kj_S4rt z{>O(uy!nb5`}$CI#*@KfnucfmDtDe<0AyV(rnh~DAa=#{pm6U$zx(v<=l4H+`0m5R_#)AV zTYJ%mA*Z^2*y~!3biyQm5fp8|kfHZuI5OIGC8UB)`j7-#Sj*xB=?hG4@`Whq=W1x; ze|-1-$FT3*nuC^Pz(-qj(=$AXXWVf%-(iyRjN@*eQAfQ^u9nmzUo$Mi+{FXpnW$%x zYhA#dzZ0GOY=FjjS}-@;XC1mC_}kSAqPe9n%H?4y(+E(4wl3M5t*`;foACOZHV{qu z!Xc0Zrr8{V?B0nXfQ4lUIw+Hd;3YfdpzPQzqU+PClopH%x+=F0Au26TKeghY(ZFWQ zwI>fj!W}pIUNHo^9d!t@Z_89r+|*3W%b_2El+}yh$(gy32(;OC1hRN1M!?n8MsVmQ z!LQ4dxbE5NrEF-0F`!pVY{%vgiZ5~?GI1es`4Gd%Z0QP}!TyQQ&V)hzW)PfMho2UTg) z+Lo=Fr#}p{?X)9Bag=B(kYN$ru(BRz(xx+3O@Tzyrp>mu zY8LvlLY!*$LUrOzx@ib!tlA+N*1@VhnM6uA)a->rc;aeX8F5CVpRgz< z$3oFCz)J8YbMhnuX-0)t{RoiSpx>aN`v*NL1A5Vbax1pria}4l^5?<&7U*q8={_DF zq55w>{P5xJAK>eLCb0YSr=Q-veQT=s1mP|8;s_GGa5EU4gqB`|O?aYlw%F0dJ%a*y zUh>M=4)!J8p8QFI_+)QrfuYCd9C$WT7$5lJM>-=xz^xgj)X}p<%G@f^Itksg37tB6 zmhW3R{VX2y4H@b@0`+a}>aCAi5K!E#ySAEzy&)|&DNUz_AD+cto9Z*!n@29<@D0%? zkHAK(cAxpy$83&JpO+)Z^UMV8dU+8&pYev}kSnEML^%^YP4G*#>bvDYYLY3q z3k*+ZwuPu^z99^4owK76%I5Ax{Nrx3pR+L!4<>UK`(E(IIA?LnT798d4Rbbn&B3Wg zFf=jDS;O?h1wzcs<{YIOHf+7lStcp*dGlZ*gIRQw-aJTTp7CUyH4cJ{pnPYT_vS$| z;!We#+0;c+yoqNczeQ6uGfZAIjmeX!v&qNV0hJOelixi^mHxFb9JqDPg1RwG-pG$9 zF+!FV@>uMHIDkmQbn-qkHNAPDGWUGGJXLWw=V|v9i(gH z7f>1dVqo91DBjL6Eg)W|2%5(wJO!gR542q*uJSS;B9ZY?mcl;6J9v&%Ra03WF54qQ zkA=)nUp;Qb#=OD=JXl(7cL9KFU9gl>QeiFCiW)<+O&8*P(}hfh2Zikf&_Wlr9Muq- zMHiV`G64Lc{Yek(w2_%8S~kmNm9u%429bf`Q&4R4kgu91$q-9VE+>u)GIM#9WxCuaFYdzP#QM#^Y@W zAH!Ym-2)80!XuFSGbjF|KoBW@#-M6-}@?Y!pJ zOa-i|*~U<=3#EP78rcGkFZnb(5dl-scJ8Q+QQGKOgL8a_m#3cYLd{)ZZgS{Pqdz9M zsEq|!EZRwu!WW)9)i4V%C4)2!OQOw7nSDWNNE+G1FdQ3*4~OhYY+(GLW}I;p>Kq0!w!97@A~jPUVg-Z*ITglivqZ?Q2R@&2ucFWMz~{X1X&n|Y_lwlrQCI8Y9Z~pY_klGDVgdJYW1~kR zq>S*MLvaKyI@{-F8bh|(N_m=!D;J-8fYpFED-))BH6cAYGA4>gh0}Ulo_AY(_!H^o zrlt?S%b^i`H>R8IngWMT3Z@CE$b+&(iH7Fcw?gbO-wffD1wO5qo^R%xwJl4Loc=KE zn!o_%)3f>JD$Ju@a|D2lubRD3quVt8ITTH#>}6VeyT&X%bFBK+LVp<*+Jyb~j9n{P z_nBR5vhG)y)-LOQMyE^G-HZa*pM1)kb#M8*m~R$LQdEO^wfw2eeAbm)^35eVpAQv# z!dV8GFF-Sz#cfPDn^Z~Pm6;z9AsFuNQR#&u&11sZ7JqBS7yqoF*QR|r@S33a5hQ|L zm~f_jzAxb{vA4{<@Z3olEXV1&ee>yR8uZBts)^8`cgfZYsd0{(2Poq!Hsp@%uQrtM z)&g1}9y1jzs^@gCWWaLe%8hp^?;+uAf}q8xAAzU5HG<`ox6DEwfxk~0SjxM}G>i#n z>)YnZ>7-@JQr=98TQIp&TB+<$h5^xAa*{(-w?o32c}55q_`~t0Ee5mM_JCcqo6MT; z9+Hrj@U~W8C)n-19qW*aWpy^YsXYZD0MyDWw-D3-LBCCdl5SpYloj zw=bV#mpOQuN6WN^Fik&9S)7k4yZ_!;5jg(a@I4v;$77#v{_-hy3Gd4^xM7>*7s$ad zWvP8kS-Z5+-P*`=<<(Z{t22sL0&=+J)pL5cb zj-`^OzGW$S<{_f5;v=ht^wZ(4yo5Q5#KKy3l5d{S-U=Dj|fL}$(8Ei z;lZCSO#sgmP$*aW{ZH?BjJwZG*vXNoMdRC_F2zD&tJgS0p)I z^_f1d&RuUeIy~PTvfsVbzm-Gw_P5(|*QW`HsQ56xn(@@NDg^L8d$bdI|lmnDL=&Y@+^_7t&#cCT>1MwrVW8j^(aq$ zh!ONV4|V?6L-zULyG3FcY`y~Ra7Ou(!Gu#`@joclxxDaA=fpEkz(fUN(Mg_V%b91l zI0{bU)(gTV6aEI}lA*xnPGF9FuLHCloKMj%J6SC3J3P~-@D$68+8MYc>kM(QEOC~9 zy0^pMFpc4Fkn7=Z82|7$j7)#)3RZI_$~zR6aD3T}+a{q`w97FJgU?OXUQe**NFXnU zZXgu{kzyR~sk$9wG(tNgM_Z>Tn^i9+A7#ke>l75K@Hav_nhV3oITmrQ%(3%XS$NO{8CzdLj2isoE1t-tajpH8`2$Gj*j*z|T~rIkJg%j`*URqwKrtQ^sCtdzkN) z2sc_!{=(Jlw@OxV;%G%FmLw1gEz&TY;C7~$r2YQ61~p0L2-9>_j&1(@>S(eH#x_$K z?K%lvAGkklsLU@qDr>K@?w(`%l01E6SYm)G1ho8rtV-6L3&um{nPjX3neZ7kVYLe7bvr(B9 zq527DO2g+CR{sRh|T2Bz_Q(WGTv~^omAo{qK~lsZmG*nI>O2EL0;CxF~l54`KF+ z43d{2(Mhz_3nn-F#M-yn(6nY;8*xQwlF5#b${HkG8;gC!GsVF3hlB%_hvwiQjp)t- zixQWI;WWoH(cAD$!YI+5h-Vt4BaP@&=Vx-Lt=#cdH7|0W^eiNfSRE}Zvr+{H^|70V z_nu#xqM1qyUi~De*UlDTVP%cdKo1?UGt5zZgUmdwqzeF=bI_4+w?Ksf5@+Q#>{R`E z01fGAR8YB%Vkzt%5v&nY0wQ`15ppUFkhnn3P;sM($F!M3Mjru1s*WI>py{V*8N%od z43Ic4S0Qn|s%S+kjOXApSr~grT$HOI5rkeV6FUQmGu(|UStzHwZ;o=IIryY96!g%V z0xVd5o*=@RkOL&nidmS7A9{=h>;l@Bu{31Fn4^sXEKhk$!d}Z7dIAx*%}E@N_8{1B zq0WeivlZx60T!0VpeQKCm#01e;)rgM4L+@wUIn6&M_)Tne;CR{JWmqk*flMPGI2FU z7kZ#?1HECh7n&5+!YE`t2Z$p^qzs|AY7VTyE5MA%OSq5?T#BkZO2!jfTIAfVh%#CXlFXDJb$;Rc-;q5v9bDjs;k1 zSq|uN!+-$~#}gT$?9UW-nvgi%1pla zkfhEbR|-f8a+Sh6UikxZSv))+f)y08cJV6iGAw)PA|kZWg?)yeKW1Q`V) zoMf63B97HNaQaRnCWI1BJvUS^fN|BY7n16e)3k)}El^E75gNlAJ+Y(KhV{eO)PQI_kqVgIbB$mNp^2SL#A&L9RYY-^BF`c{^=S^deiO+}0`zzev zjFT60RdS%8yyK=ob1v`N0ge7h!A+@dOPzd=liNI)6k#s?{fL(45xMf`(109nY;PN zjvbM)tKnQBK|$w^?c3el%-nq0a&tQci2CNU!8=H9P48sr{osuhf=GQfcq5MB;h47a zDhW1tyFGR?_)=kfmvc(aU&bNweY0{CC9JN5%JoyxzD@eGbF7)&+hI zb8l5gcWh>udnu$VzJUyr;Ya0=CW_p@g)|qrf-4KN(4M&h-%ywZg0MHPCCw40v^NIE z)f-83L27FbNa7}P74eyfH%M*GmSS&Pn0}pyFuYzzUnl3dNSZ6tN5w1Jdwc_Fu2x!6 z_*&bVbLNCp&ZlpIGDi$`VfsqyCo^~nIK~^p^sNx)ycjQ3j4OM>op#JQ%m{O4fniSc z!N^PQ`e2UGWDztn4F+b;a-T0d+x{_URI{d*Y-^LByM6=u{Gv0+HUs#`i)M3h3$~=t zrw?Ai-3i<^ox+e^Buuy+%Dlwr(_(>p1-14F+K0mDEC-cA7Yp(iY2oFNBP-HU_=r|+ z*YQH(>d}5fInM^f_T_aHA+qa-z=-7wQcSnAGiYsUw4U*|<-iv7NPzG9)On`^j}KNR zY$`yzgf}hT;6PfD#fiYtYyZ7gvBWcRt;DqPNq3)wuT$P@Djm(E&)W~ZmgY`+foV6) zN~Rc^j;yTv(Oyl^YyUm%c}$Pmhs%zK##eSch1uF$kdTi!ZEH&6i)X;?M1hKW}(DmhM9P#l<%)*R4m;-Bh(@^Ff_x`u`@D z?t+98>Fl$8<7Srb?x`|zqr%iNU5`~*y7s&KSh{n;!2WXB2$%KCmXt~aJ^4#S4c&q* zZ-!^|ST)2myytBJ-dqwa?)>ZT-v8nK>!%+D>2@J4y}9~AaDt(5KD2*$fUkV2q40O5 zs-L-OzO48D^oN|;;A>u*Ak6|o6Om5Rp9m@pf5S#&_!~Yq{0*!7@Hecr`db@gs6VyF zV016V82bedAP30BXo%5c{PPI?O$+kE{LSfq7F0k42xX~RmCxcBs5pp>bB%bFS5t+s zP(6c9vBRm;ss{b)E!T&qAX{Q`T!N;0}5_tyg#)gdZ~iGXtuLjw7|)% zKQS^A^~Y24zEkSMg|Mv}2^YPU+$>-Sh0hx}_M|xi&jCjMsv97!R05t*ywr|pu%-8G zwi_T?Xa?xS)I31xSt>Hk{>({#nAJB#feT6(3s=9l!jxdhQlJI3bC|%(wDlA(#0<-wjp4r+VzZV@C6Fs?lI2>F^qRK739_Bqsa#J#zv0 zMgPHIwpu(OcgDACeR(6gyHrws)iO->R6rQ}lS?NWbylqN(jRw7xEz7H$tH&Wct`C2 z2t7|z!HiJj$c+7b6J-=lTwOb{)Cau4+bA{Lm1#1_Wl9;1XK#IZ?N&i4vLMXg@V1TG<3{smDH50;|P&4fVvJc%& zpWndDPu{RE>pj&$%Wq%=lQ+y`dnrL~h4L#H+w2v2L>r9m!OO%?Vs0D_CPKHaG|wRB zc&1!xVw1AWUOXGvq%5;n9!jW{6l%l|uL2lxs2hmiM`se`7r9o&Gc<_OdXklhrho>g z{3wP%P|l!M9r^vDo@=$nNJuRW^wcW9BTgMTDpbC*3!JCgg_RnLN6cdBLQk!7wyNyr z$Y!sV0$peA!V0x2XtNaKK&^7xtW41ERlZUR4Y_EIFdDR3bYUQj-o%>Csz8;hLRce= z!X|tkM#89c;7ZbL>On`EU7?o+Y1SLyY*+eAX3e%bzD5|8^3Z;1PG~gkbd3mWh_%Yo zaXXTsVaE8U$F^?TKp3@ZbY|kB)8;SeyH2>J`9pzo7E}_CEHe3MCD`U?OR#-`F`83L z>Tb?q;=M)2s6{8`TvqNCFby~!_08ddqDBK}lw??W;mc;>MHCyAT<45tUEFg^b?Rg%!tEXt#9Ey<@XFa&c+h4P9t`>xyFw<}AfHIJSm4 zdxLN7n6oQJ9n9IOQD^3CdmZ6AXY{Et7M&@obMqF?Xb^1Up2}p!nO@soE;y1#8CrZa zgMXs7)1~A@DsA-X@u|_~ku++nzhc5?x2|lUzEQrKy2(Bjl5O-Ld6z3mql^}8V|(?N zA%P^w%)S*RAbEJB+uAQAxrQ_aOACKe>&dVXY^7RI@Kum zP7>uWWc!(#D$yB}TX*QS_Y)43QKPbw=gj`5Er?TA@qnLbH=LESI7D$Mq9f7I%Tx+^y`e#_9n)+Fh&Jq z&t`C`%%X?fEE@h`7cxY+?%7iS)H#SDB)vF+C2QEe5iHZ$1g?=rWqNcUT-g(jw4?4# zNuy9OB6Vi6v}RI=`b2hL@}ZJO`%L-sLHCl1os>wU3Ic4+^-uIE)#i{95)YRsqg>QR zzo;bx-=J5-G_<@+!fV^6US@1J1;${6Qkvk6q9a&+a-NK~e2BepT6;O*$g8y-CzEr# zju$pjpVTxaAsC^TyKc2B>D@856lv*f0QLl?cs=t{4&7FCjhQOeXPmqFU#5#fd`ACF zi}yvk=stemMTa{}YoN~-gOUW$aa_I6MB3Qr9)}qEyhIj7pN;&PmR$CEku19R-_s+G zIZOL)fl+94Wuvpq6_pKgD1+%3JrgVIJZnkVXFC;KAX^8gQtLYiqv&U~oyc6ueC)u$ z&rrf4iHVoYA5#i*ihwSY**J4Ka|KeJvte=|MACdTm1&izkhWBH7ySe$y@uIIB(lFd@C37Fu82= zFrz|RVN(l+zWnOz?>_wg^~=MTUw!lJY~6PgT;_RCw$i)T?_b~j?)%ptKfU|$x1YZL z_~|#_f6!#@kuy3x|C6Ep#Wfu1cX^BMH}8M{;gw~SZxn7eMWaULSPM&N%e3@-mqINr zoHaTzt|RvatxLMGKlfBUJ?!40aDxCE4I+3XpgG8TyGW92`N9pPa^1Fh<0?~=s|@^J zlSrDhyk!p!m=PbJ8C+Kdb#1`6?$l5&`wTiYGu|qu(oOoUmK{qZb@-W4&?152kyUYC z-~agO!|U(AJiq_p)4%+R32px24_|+Je{QH0KfV6z>-YcunxYBYc=fWj)cyQeufrhF z49>iiB}_}&;#WZ^l7_r}m+)_UyGgZ#H^-LERO6dx3pOk3#}7C`b+qxQoD8Gl@Ub{G z6F{t>fi#vMeEspOAOGX^cVB+NFAc;^ymvZ@)qx3{ zZ`wVVI6lXmD|-F2zfh`9-m5aOWVFVp5vqaRMzh(dUoMN-i%zu;8Y$1wUh^8LvF&#V zFZAxl^Q5+KHSap+aCdQ17xPr)NO}AU|M_mmb!4|^-8;IEPCA$&8-2hg<4@4>@)N;n zorvVTtP+q|S`bl_bK;~PMbi%vVOyl@jOz(O1J$Xfstz^?PkvCX51!giM3N*o2+zdk z!jol8g!iKJZJ;M&2UeuV4ks-mzkfIf!o*@GjJKGx>E-KLESE3WwQ&eoF(_Z9vZ%>5^=mhs+J_1EB*SthB_n|- zkC+{GX;2+2`zN6rULlS#0F2kV(oDS+} zYQts*ak-aM_^PbeC@#oSqhm0D-ZHN6T^U)FM}=^dVf+#5iwy}Lq2~*MMX7W_W@zyg z6i4jd3lHhB;LVg18!GjY3+NPDbpVaeTlaqdT_)=cae9 z+8Ms6s8>h8hiR9m5#~2eyL=5>7^YpHI$Obuvo7zhh@oO0$s%eMmRi%aUP>FYluSdt z(?8Va^uP`ws28RsZ4Gr9sowMC$xAA4$WL)!lJtXH?W`XM@tfZN@xv$n=&%3r{p1HkjR{;hQnL z$MN{`470O4hRoA%2id(G4tGL!qX=Mg8G3+!ukco^U5~cQPn%9I0|~gQAQ3Ho0S41* zB#$tG&H~WF3e~!1yl{(W9tSA%p;u16OWR8Iht6|wyIe`;2_Zchkqfow^|;s~Mls?R zEFk~ns6|sri;#k%P&)Z~E=O)0{(S~!XcvN zzLqkWYtr}o0t6R>NGMD|F8KI8pdD z65kP`lS}B6?zl1mEy7Q6(i%dyK6)Vyl8LR3A4dUY!_;!kolXz3FEq}E6I z$+2-LgZ$K|I3=sMXYwlmRDnUg$2l5Z0-$<7@rd*~<|*`H8Gs6%rU?&<8BC|mAgIZz zn1i)(&tgat+`|At*{aEPP(;Dr$2tTx-`MNj8B};H1XVVcm@0}qPt_6x)od*B-tqZ~ zQ#A@7YS?&%@fR@J>{vQLRtD_=62Abq(O}l~+eJ+-f>3N@P;0IR#QDyt= z!;RJ5ljpFul&-A{t|CPHx^K;!V{d5e@F=LM%5DL=LL=8gS5qbS(W04NiG#6i5?;Wr z+zf>`(MBqEMW}DUt}4g}>}p{(E!Y)dlcL&`M|Lqw*j2w89G-Q2x5#l3ySlg<2q7e- zxfOafSq%aZ;7R~h_AQtz63y{GWFT#`$F(NVMA~%G1N*emF3nsRI`*rLLArJV9ebw+ zMz-l@3#CyHE4^^(wE!7yp{fF=G^@f}V5(96Xz?nTYJBrLn9As7TT#pAt=$7tEwmU~ z*?>vc!&D2c=E$dM`FfaYq2>Ews)dG={rpcvmw)*BkHlEGM*R8i&v$?F#n1SoU3`r( z{OQNPJkDUM=L%hwDtib0ZDXA3@!{}r2TnDYK{7f}R+!e!TTA$k7LMAGS~l;`UDUG2 zf+%PZvE9wsTN)kL>IFC+*qD_7kG z4NdMyt1eMmS2c|P4zP*_9%~|1`ExMLQc!IC9Ojz@cqQJI_5pmX2W|CAnT8#B)F!sy zhN0uWTTf7^qdoDdwnh7z!sj@y(d;_dV!P|W9bWWQHKKCy-w;tP%x%yH`-sRQ$sPG> zgXTN)4g=^TA}=VW4UfT!=yGO&fF2neH>)1jpT6MO#WJ!;$wdLDo%|S^sDfrX}>a(60*qZcWv%!_Yk(!8*VW?r1t!=J=DDwJ0Ax$y%=Q7j+m z02xmn4K~2(ymni0s}Vraps~st^zPp^4C5(E=0+KX(xgzs-MNW>s%m;s8PGAhI(qOm zbF4DZQH_YjZglyO;P5TyLxPT~1Bc7B7Q_OY#=G$#!HPg>It=}+__M8-u}5P&8z6Bc<*_qDjQI`mTeR8Q{75; z&*_(EcFAP@cEt@HKYRy6K*Nj6|Yu=5TlExeA7%J(|%(u9s`-7yDG%NPZYXPQ>O&v5XgRL490XxA$Z z7!q|1AOlb|0^Kpy$07!k3Thi-5!Vp7qJExi@|^{E4kly{MktQQ$Z?W~Sk&C=v9PoT!01K9OQx;|B5v%b9>6V30acgwN5!Sq+p_3c?O)R6)#feVuDw zrKHNy+kNqUjAe)}o9V@6Gvx}Y2^+-~HphT~lTo8ko*EuteXEn{MgA7tdb!YvRRF7` zbVj4<#S*OFWDX%lC$ASVjVB5eVDasJ`k_!6z~U{lWbF3bNA*ts zbPLi7CDk75MNfRS1wAmenUu=^ypxnV-?zXzSJD3Yo7bcLW2WG(2g%u!v9){A{z;3W zt_>!Sz1a;r@=2>XwrN_v4eg(_oZz)>8@?IsPlv|iPMyOH?caYEw14+_x)bdmg$ol& z00p;?ExhmHK5cmc8JF*st;<&t`?L)zgQZ}bX2(aDrIO9cj;UE@7FN>d!P8 z>K%{S43i;6o=k=X#|jQaJsu~6u?}YHc?w~2(4y5@NZ>N)CIc-rli?s_3LZTbKy8@J zwhBFz572(_fr#*yAWV$)GYQ#tj#Cc0ZFwL~+P>7v@ykmfem*|0ayp0h_u+>T0Q;I|z)I?sFGV<{f)LD*g zD_K&fdf{+C2GxH8({Fi^3!g}*`_qC(sChDoAOV5cPOeySg){$7i7qFl-Da-opDuXG7{VrawLD&By@5Ku_hGk z;}3*rlo5nbe>21BxQh)_d3$zB4`~-Jw0+8iI)9Vu=Th{c$c?!BgSEA8ra_eTf_OvRgyxC z+3vlp!`5>kQ1(1aFWd-QbIB;WPLb!ST7s>6xA6pkd*(JGNmIPSU=!@E+r-QuA}#85|2O{O>+gPg|9QVcsO_^3 z!zyZj)=%X4@3VgBdn?rYS-aun5gUa5ooa(u#7&AAS)8P|Tld&F(o|5R>|Xq#OtulsU*>B{T= zRVrA#N9eZOM^fabmJbiR=XW?+o(uOA0BWsv8fkNM!;Y} zh*5?46%1(QW@ixkHwm0$30^g(fVwWBb1Q1j(1N&}H-(sU8R)x4wY&B(lEwBeD|FWo zg4@N09$$_Z)VOO1Vbi6CE~;)cRnvtFDMpLULZy=a5p}!o@J$~hvPBX)^X>?Hk{O1K z$<_H5_!E4%o}T-# z)sQTEM&0iRYMm6UF$BZbQU0QD)l(n#gEKP>xj(_5m(?j9*gVyas+^a{yVW^_=|KkD zx(ADn+KozlY}~2b=PIKBl7;_pE*AbTR)mH>y`v)Z(XP84=2cU^K*^WFa1MJ-@~w01 zEV&QGPCTWMEvS}f^-pVqB${FG>hk>-BJ@BJnGGB&rzy^>m4J-UPib!*;* zBfD_&v|3c|n0LWSj<5^<5*i)I_ME7euLpK3x9qfwS|!SILXsd;oAEF_z3Dtus+f!$ zy~$j&GE3HZ0g$QP`w0fLz(xmaVY*>kYw`G-bJ|ReT+`Xo8fJ=*kL4r?e^4bJ z7v8oK7m{sjJs$jlH6rhHm)eQ-y5k1LdRkT5LIOUvXr{hm+GffoT}z+x^8=AbFXOix*zyk*4_RcO z^jrO@eEl#!&a}qoXM|E${Uij&H*{65$g>^AYD_8y@>>rC)8|x$B<2Gxaf`nv6Xodv zeJ#b8gxE_Sx)#gVhQg3})#k;%qG1nVMRDqKl8?dH{EA5Oj2C^g6s&qYk()@!G#!q5 zTcb$h_WC=K29K7c5&jExJbguyi#oPRGzM_mJX_whG7E^dDnFO{Bx#XaTny*w#H#zt zaSpGo?QXunz^=Uc;`l5})5h-ipWM!VFxA(;Dq4dnXz+AQ!OKAxI^>bc0z4Na*Pv3m zQ4#wGNyw7K2gdYhw8;e4Mxo3N>P?>aw#!ihkrZOR2aQ{!4^LwRawC{a1h4OZ9~yO( zEgq>&Y4}IeTc{NOjt0ML8#I}6#W_+qxjjinmE^zw7~2`t#NbcuQ&iGqI7inT%^D2H z^z#RM!~P{g4*@qUi7MdYJd7#QN4b``TsWnp_BqS+55t@28Th9(oMGSNCXEpl&l2mg zH0NxpqrKMP&W^APEyo@dR~7L#=m56W5l6}UCDhYl=5Us8fsEC^x%T8}*IvqRMZYz} zF?QYa4eZoS3b{6W+bO7wP`6;MoF)?Dfz zh9K#I?d-XXke|;whP-9`tRLDWFSa7D4f0|uUq~TM zBP~SXo2phy30##IJ6aL>HZPX`7I`r{>2qsJXfZAJblRPkl0t9JG`#@IT59ypTpRLD zTj$!)5;ZAvsm6X z60=V!j={_P)DVa>P~X(ya4qY@P}?vlZ0gS91V;WdkCxS&3NB*lcKW}((aiLKq+4po z1?us7i{%j`*;WKK&yu$eZMw+0k7HKh8De;8&&edzF66}x#?H6h|dh+dmC@TsJMi}|F&hrSD9ZtIeXU!*C>bw*#KL3C)b!Np{*JZ9e# z6n(KJWOFY%O0-oC#PG1~wIi*_w38NEHzhIHF8l`5E+HpbIqL=TVcxOGFZkPd)H@dLOk4vc)Z1c7qe2$YR^Die48|}BsHY&4Qj;x@}3>s7xp&#k;6n{_!nc{k0iSZW}$N(@2o)g-fjy zuGRTs4kb@wA4_5)ONGIj4VO++T)Vd98K%EXw1 zVfJ&Hw94Ay;Anhl3KW){CCvj}N$%XN+4HRIWJyveFwlRcbR+b7?<>l&?{DF^eXMm=l8SvXm z(-1u|gCF!mbodcZ0BB1v^`c=@7VDrUJxSAg;sWa5lR)_keJur7oZd+;%rHTFi=G(4 zRa4dgrtb$ElK8w*7rxTx!W@Ff1ogQv=Hk?+Bpc7EDauwRj^Bt}m_>ai9XjEhaZ|5} zlha(1Xbd&>OejT@1i;i;p9|Bt>&1>7td3LOlnX;Q?#hLkj%%RG-eL-xbR>G^Wg7EH z<-|RaTIRJfC#9{nNUFpI8f_A6wb2?qS@=kVd)xRS0Y`KiOkK6Puw0r-B1pL_7J%Z( z4!qd+^bJ|Nm1VaJbd$Vmx{hi!$-YS?rL)T0r4d-(?ns}QvTvFo8=TU0NmGwd%QB@k z`zB>Q>b)c5DNJdT-mFtvyxBtb%?ysA&$tpv+|;Yt8fFHoDH`6iv=uoq{TdckzSQ)2 zx`Z(qNe8-R25M!lm$GjXaO9tKlnp^rjxW{El7FJptnwaK4?CE2w!?mB>dvruFxjd$ zJzA}5?ji5wOx9YyWPR)l**7h%=QuPaU7w6T3hW-?m`jM5YNtXKSF>-J8wdAl z3>UgAmmdMc6wR`4a*58Kpbo-7n)Eb!Wd#IEm%9UAZ%uPumi7&4uFDNwmFBWDXP@c# z*L98Gm*%?u8~3ESuKdc|(_B}6;GQ(sm7mDl_a<=z_i`Oba^;8aN^@QLjXTm@SAHQy zD~+_SPIF!PofK077#Gv zOt~_I%a>4^i#pjgwF3BD(8FlRcR$!|{O2EI(w2~0p0q1qpd^5}B|U22p@5#0$Fxbe zG?F$AYH6rK%Y7AIoIbSI#!y}%R-fzhFx5jxHmg8aeeq}N;90F|1CXEDw!ofwfZV0K zus6PPM|!0yH|(<^-o7D$a{c#sl$5*Q@oSjDZAVv=dE>{RS=)XrlBbPbBS61o*ozr0 zI`GhX*BsWmyVTaY-;ON`eUR>6T}F34%ZV=8%)&`M*$gd}R+x<JI6u z08X#a)j&)w<|8Ip%U#U%1dP$tc04{Vq`6><+d7ZDHJON9(uQDr7{D}BPn8Ah zQ!R##&r>Z14$o38hPLAboJqW;I|SQ?3P*{%p=FabKqDlsrMj4*Ue}9}UE^sp!y#PV zbNKgoDed$)FVMtP55M3&D~A23I)$mkvFRLtPN$R7SDwOwz*VTTm#Uw>nZt(CaW>F{ ze|{3o(jaFkBJ{XTpHNrXbzN4{8dp7aW#_uHzzrwD)h8BmP~v0LFith?CXygsPZMam zn>(~2e%4M^}$8+T}&r0zOPSPu- zVVZm4#u*6}Vo0|5rqe;2^go~WG3iD}_ zY{Br;1yC8Q{8prS)Vbwe?+iYlAC@t+lMN1{k+ueoy`*=CSOA3S*N((;+bRO{ex`S! z2wC+U>h_Zx3V3G7xpCo;@}wcf7vFyFLF=QG-oB{aQK61W{+eGu_t0e4JR(evxI?XP z1%$8L4qO2UU)Ru0fbeB(dF9rNrF=v5^K#?c0K)6v*a8q<`O5u(@X80a0EAaQk)y5# z;za0p8z8*$p-lkcm2YeS2(Nr$GeCIdJ2wNurwaZSKsbTKaqhwHI5$roc<4HEy9mCW zuxM=#2tVVhODwlzfixbAMDgm!p z5iemX3uq}PDXrOF!6reJ48;HYkiwT=a2JM1X;WVsI9ramEbLX}{D1Tzg)5_oifd*e z{33@GdhndobDc?`L1YU+I9gHqTJJzxR7K>|BMi?aJrV)2BVO5Pc`wK%tG$SX$_qwc zuY^{YU|Kmpw1s_X2h?-3y{XnG-hKU=!)}o2wjWCi@C1y~E}|ZDNc%Zc22HWfUiTZg z>rXN?dhMH9!w(kN-o63dO^^Ub4y|*3AGfB7X4x1;7h|ov|#ninN!N4{(M|LtuGV=v$l1$3*^i041#0m z*#ISs088Z*i>4S@+DKTq5GrsPKs+59^={iGD_1rdCzPV(gvLn$a{fci=J9PZ77M>T zmJ9;LQ%Apm-Ev7by9&&%zS4uYj)>!x-n3-Ed^|NRrv>w+!L*zfj0Sqsa$2whtqZ0F zk+A#03)bv9ifT41nGH?bj7QU428NlSWvl5iGq8R#gTJ^Ayw#GT>s3b4Xmty&bynQq z-|7cA*Mt7gpwzH~HhXbg0B_L~*Sye#=96YC!B>_7jERFoBo2gWhbFxhCSBeB#ytu5 z!H=sjDfb^cUEli|c(d0x{&tx3wr{)@CcWV+Z-Ys1_`q9X(i=XJL(|(~(i=YXW|;Jb zZ@dvEz2OUY!K62QC+*U%;>|uyZhbyYc(c11PI@=?h^qqvCTtPdm6jKeyFNag9tsup zrY0}KnWv`(jC36-o}-124^NMG;KWO4=Hve9IU&WjL9f?qSteurVqDzoyLT5C_r-W{ z4Av4PjA-c6)^G(}f|_^jAwXJe@3L}t4Iz|UY-mlTqbZ9R8H)Y#+}?x^B37;7U_Gm; zEu13kjc+38fhfhIb0(r9O%f6NP+CBXlbX28%rT>dj25JFSD&A0JVA!Sv%0Bt_zv@W z#m4Ifn@9_gkffyC5d0+_y5PY=g90*zgf6vo(QO6V0|WdlR|`n|E?t{yXqE^^=^|*G zXgt;f71}8UbhT@;-LmwwKZ(qa+YP*l@ne-Vh{Bf^tuQU}AXewse<212F7<8BA*0Fe zhRowGcCsC~d>!_9gTh2gr8g6=NizixT{^Ie-can??zkVLW9)W>&7FgX-399u2I_$( zJ+YfMn+yYtuHNA8Z(zB~Ga}o=Kb(+ZaHas$y}C~n-W&#Jrfxqt%T0|~@-8-qVv`P+ zYqPH}BC^K5@rcrHC@WfBLs%Jlu&r;XsiQ$20uUD1xq=ut=w2RHSL5s~ZQUGzQDmSB zNHJO#^y2KW$z-Qmur8f|fZdGIL_66k)!jH+gBZ^~H9@<|2&Fo~g7$>L#EMOx!ckL< zabmvG75_z;Z*%4xy?#D4Sio@?mGxWmB{y{2IbAYe14b8S)UH9f~>G#kYew z5x3h`^vmXCByQz)lRN!@+1NxW2oT%r*uO1eKe|jmTYL`wYd^FJtA8*iij=pTa z58*Sg87JDVoGBA+WkV_&JHOn=k_l7SYmg)S9-rnoDoD=gI@FVr={=a?#q%qJjE2eu zjqMJaLA-ri%?P7xhG2_Ffcvd!#Q~L{amxzNgzV#XqCm*&ERUA8EOfVOdkm5ze1WgeY1)v zj)JFkX3KGrg15K)?1j>QtfRB-*fRz?rstjPkIQS-RCcS{#hehq+CJM# zd|LU>s{Wj(gP7Igo{y;ev&c2W)=JeJx$UV zyBf!)S@V_z5Le^yPw@>&i#55zYG5<_U;0WVO{c|ztZ2t6Xzm_)dAHx=(&TQWa>RaP z372rqYlS8?G7H>z(+V4HZVs6?deXKTBKI9-cTv$v6D22nqAI0QX(#*Z!h4!Tw<-2D zzo?+##J|=WYbRNTx5+6^(|CeqWIgs9jwB9$k4^;Refbj6|Ce8ssdXV1Q=ZpYa}}Cm zNK_$M7ka=>^=l(9BEnNn;Sl>AZMq<(er+_FpRH+a69(sU!e{ARPJR#$KWMk;oS1DF zvjv)uP0865;Vi|%dXz&a^)puDQ$8s+x#8#}#fY&-Y~L;%CrDL|I@@C$JTz$Y!T-b8 z-~IG{s4Z{$bv{XFmxmwA@d-BDXrEtk1fSX+S3`LN;%UjnnziuXK16eyhZ6QrOo#Zd zp2#C4CbNv&FAw9yz(jTrosH1_)lSRxrx@bxhyCOpWIeM>j%=ONZ|Dfvv8GTw1eUKk zqWn}3q69a$@K~c`PTpzo@z9D05rlxZiH~ zrUGyaIncxN%jaNmoL<0-**_ef2`X$`tL^dm%LC3lzOk^}BB}mmw}0b3 zN7uVztUW2{W#Ii;&gZ3wLov5S>X_OZX4%#m;l_W-r3Vy;*nWb+2om49u)3P-uB~56 zd~YqY!07v(hxHhp9rhiXPmHDCbyx%|xt$quVY+h^k8C5NMTXtee79uq_#Ba9h@{h5 zv`}(3@kac_^Tn8eOQehou8m4ib;E%YQ;uFbQViA67{p@{Da6prN6L2A5i7%rQILT2{?n^pdd3f`kJGNtgsDn&PK4We?y;OmzkNM_q}#*W09< zre5R|?S=TCluT%X**w3}DvQebw?sE6^CfLrr0{UfLcitff~a5yU=u9L#{^du*@Iq1 zdzR!XjY|TN6kk+{GqO1Qfp7@8k6gM$!xwv?Y+jZU?<}CVt!6Cw52GN=^+F<=>4ljH zJISf{^HrS_;nti_pJ$n0iQ+)>sfuANiM;ZmiAFJ;STmU}enhjy$)?-xHl@r z^P|mGU*e}yOasY&#tZ%y##eC4+IaD;X#KhUJq)1TAH=Bp&@EY8yh~OxmQ!?O9*r zjf*6%Tv}%@Gs?M%qar5~FLN7<4K7p4xp(VZf*~xnbcs{WEgRbE4bKuJH0Nqs7LbTB zwy7>9*kDY^_s5L~KVS(>2$G#mp@=yod!5n9FhUuvjv0?_%C6Z$D*<;d%rI{2T$TtK zwhyt4CT?7@>1aa<8b1BTVL}futQ;qE6PWgR3PCfF!0tVU3@CgxVHMv=h-8y;c^u@5Qo$o{7j z&&>VeQHY%Gcqa1T6>H6?BA-(--avv`!5F5L47<81$S4ci#&wlLpOojYxH{9(CmKcN;`9^~Ti=X{D!-TzE}r~GFkB?J;OpR7X3;zWKYaR^Uww&g+;thFO{5tPg@DjE-yw!6 z*yCU;cTq_Roa`Z^JCu2?EE>&_h5L#{(P*aThE`8?5GT82MQbc1a;(e=TNR9DV@$Cs=EEGWiUn?a+y@(srDeN|Wm1c;|U? z_3oZH(~+wUpLDbx>9rFjsf4hQOl)JX=xuA4b+`yYW=!B)xiObj4Ij9c8*{m#tGF@D zn_BMl*Z=mLZ-4vn?l;GuKD>U~|91Zl|6%|0?YD2_#$4CL)4IeKlUE4wML>GFsdZn_wTHm=Qr9kefCwC^%b(+ty##o8c@Ba& zRGviN(G>HsZ$y9i>i31*WzVz=)m8%maFf_a$Bi7`v?$e~-jxy27p>2T9VGWy9vo2OK>FvizJuGPtGm7ICdE1AKgKtuI(^?nw zaOuFj{xcDC+zQb|B?|Z(aQk_JwPQp-DDK|FxLR=UGmgz>AFmH%)BNQUu@e-&GI;2& zX7fDMuvsWQWUOPWDO_ z8~wz%TzS83g`Q(-*pu1RL^WJ>HG2sSghQN|u106YTf{}QP^-W}&VLoWr(L zx@5b?qPWDxnO}|rDX0eWKG7tSrES5(#)Ey!a>kYlwAda)w)h{FeH4Idx4UV)|86MQ23Ni zD||N52>(J+nHT3+iO4X1%Pw9u+=@OJ^xPbJTU`_SR~CWrIK-+soU!gQEXyYBS7Q1P zW?tKJR9aL9uWk7#r!0Ql~JeH$S6J2k+F~$3?u4QB-=$ z(%GBSN^fC&B}N!;;nKUBu3QjD zTg%1a+v*KMa@71svctPtE>#1K-l=tMvXQ?MAuyo9ES zaCTab>`Gc~ZB$#Tk6tYOIp<#(8a(A+z&0pAE$2&=7hkQTeoUTCFOY6qBW=ZszE;8u zLppw@WnV1Z5zIX5w!+R3-GuNWVKe0K;Ba$2_LT0U7q|iGa|VEuVX&n2;bK&K(L^p4 z;&6w4U?L>6z|GW7-TGcsF#SZ}G!_b+`P^a$RQBwN-*QE;n2pdEKaEj5&TvJrVZ0&ONj6?F zhVmX;hC^e^V%l)9HG%D^Yq>frDbkk9lq<9!Srpmjis7RA@=EiYg{|C$E<_y`K`UCr zuTX5mBFL1^w)VD={Im2@l%P?W4S4e$%1Dal%Avbl?2CepS93VC#XOI%Xx)@UU(}?V z(KvL@+@|aQV(KsGIJWpL4nBBln znyGnuX$elvsAn=lHqe`AB&W?vr{*cI4YDaaA=7j{dBWkU-XWNu3ThUGSd3|g+0t0|K(znj@ASv+tUkFfG zN=69K6rb2*%|BW3zS^1s^7zP2#V6350ljsLworTmar=!y>Wa()W9_F?@gx%h!_EY8 zGN=IKzC@Ev)S0*dUPO$UgE}N79fw@!bKYdBH)U&pEki3T?{KOQ&vC2JuLzn4&GV;2pF5njW7Qpr(>MV@x_g ztQ1LKqGTbjNl9BD(b*R$Lq5Dx?Qt`N> z%O-Tete)R*)Wy>$4Xp?2d`Vv}u00rZ-imqE1e;>zrYgW*@Y`K%?6xdFf#DBzN#^-c zrlGf0jU^9a*KAK+h^2aGieW}#xpE}5A>dIl9D=|l+p`26H6hg{amjRwfhJnTF#5w} zx*|WP>7+?EEETrimHk*sj{brsX_@J%zp)k=gooj9Q+ko6Iy_GVew1CU;@Bva~j# zYWACILCQ>5$kl=qI_Yf};)DcD60-`-ZDlBtsrN*&KDtA~#Kgx~N^POogo2$YHqofM zE#-Dr*=|oCmhve7pgYv@<@|osjWA$)vHU|hkk3ICKf9C--(2Py6q^WL{u>`1vfuQO}vr=D4GD(x$6N#yUj zF6Ugnc0+tTO%_^h4xK3I5le;yjgju0y++{_u!nW^)hLFo*m}{uS1A}m~wzSE7 zT{<^54eMpZILqcs`~3q-0<{2)bkUerlsFKWh7k&t>uHG>llc_PAU99uqbGb^J+#mJ z8u*ZE9*_P&F3$eDBfoG zX9<0|4dbK@P1{Of*HnPlXG-2mhO32|o@DeDGuT2rFT%lfYMRm4RN6}A*4vbAp!If_ zC0wQB)e_esMNa#}_MPHAL3H?jfTWA<*wrc*XGVIH`L_Lj~~B2fB55XzyJ8@uK+Ut>yLl)ci$d<{deE) z@ekO%>1?}>wI6=FduRW%dZzvD4ZkBA_xC@2YEq7Hv+b_tj`j@*{+wUn2>#~vGY_Eq z0HU4EB$TpH%^-3eH&qH@RV zNS_OQeD}CN+DViIPT-v%K7GW`Gh%_k{P=&r{{ve|V`m`z`su^@t3UGZj?~y76$C3# z?%v`0`kDmRyrpo;R^awa3}50ysnVE26Fd`1G zj=e?%xqnh2(hOC^(N+Hh6@K~&WXI639hKt$cZ^RsGEzSAtWSLN^~bM%{Eye)efb6R z_4T1@j3gTa0H^#0@5pFVv5`s1&@JjC}-U+f-) zX65f;oMN?p`s&}l{|>L9m_y$5al5CJ;q*4?7!liYZu`gZ=me@LZ2ilfOLBq^Wf^YO zJ@bQv_ICeFt=Xgq<4kLj0YdyL*NOZ<{+pldAIN>Hh-CMM{5R39Zt>*KzOa7l`e8rU z;-=#zNuu2HPu`HD_cJ(hvUMe-flc0!1{$hmI6-;?Lz}!I3HqTLy7(X8fA>T9cW%uw zJWjw5w&J~q{vH=z+L5mrhA($`Ks=N547V=q|9B=j`N;$I z^Ri;@_Rl(SMe4Vk6;yN2Sd?}<)oI|9kgaR>ZZBp)iYC1FrgcO^zOoAxfmt@YAisB^ z3z)*vg?iY`V>#K0)hRx(Szznap_CR(3c4n@b|I=PPhYjdpV7c>&$TB>!SK$w&G&{b zF#4%okbhg2f?!i~F)ydS2QpSKe5aV|N+Hl^*B;2@UFZQeLWM$N?YAI@qLZS4jt&Sfj>q_ps;yE`mV&>_Y!HAaovAcmmR%z;=AS^gM zwAys6xeilOI|5`T&hmrJ7vvi4J10f)<6+4-wNa@V{?)SkgBcw~O=?%qf$hfkj;iWd zru{V3tYp3#^DL!0vrEv4ywd&YN1pnjD(wB1-O|{wY7#G$|Glh{b{14+O>0}WYF>UZ zyqZq@lvmfhT9g~bdOdnIE7|GyBP)k;WfxjqUh!%I63v=$-$G~52K`wPPL|lb)|_~Y zZZhZS%16EJTH5xwp-?Z^~F;U_HKhfecFA^qy zVOg*={uhnUT797!^xI`;X>vfrcG+o~Xo7F5Ro^WKPm`L5d%*B?=3B^_mToq48+8TB z=I%xF$K7T>W}7@bn2cG|_kv%HW7bSrt1tZYFlLk2oSJF^LleW8)lENIAim6O%u%Lc z$JXmS%O$0G-aVMgU=-b;cMnpTXFM54jjXW*%HIs*-aSZ1ylMP&Hgt&;zr?d~z9myN zGYnobjlol>v%$y70hJLdgFigTl>Vhm`0l|bfP+9wNy~vEaD23y=pjoAITrh%8PIPg zgZGiC>D>d3xu5qaE2K?wkBM@J&eI`irXRfXB_;Z^VZLL`sVlhHgf7jigP$w~^W zLsxq>iKELy%cswDC7gr2NBzB`z}fG^u*3kYzgNgM`+d(52P8sY%@(uL`>Ez0-?bbMj@PO`P}4Vaa^F-+gHB;JlNEg)W^ z2$shsJb_WW2l_5~0#c@4Ba!igJcYf6-{2*rs+y|u2&^6fJr*%Peet-{H0Bj1$icE| zy9WTX*5R=nl8S1nPSgm^HlNVUH=mHJKsiHNEiRbFuNOX1OHmEbEMCgek^|sB^gro= zoi#ESMbBorta8-f&LGLb@F^s=d&t*JQ)Ix>Q^?6=UkN!OK?8-}|M9~o{^+m&@%`)h z?nG&j72ck0y_u*W-oxi0D$E<+j;OHEen~1dN%%KWAr`){6;WZK`N$tN{l|KId(wO1 z1Dg^R7QT@Z>(>z#9ug^m1r6aJ{&GrGFhaw9M1^^$lW}{dD?4Afn3Q*~@I76~LKfeG zLpdn8nA8~EV9CeV&6^@Iy+l{t$5M)x=DP-d0xv7YhLxzz*>bVlOm|AgvDuuMTUXDO zFh?J{b>nCFXJpo%@V`vw#Vx8`1vF3L4MX5sy4euIz6zk_J1pC5XbzSKfn@{HB5O<{ z6^?%%JyY1xzxT65p%lPBhIMJAiC}pTnuvukPhTJ<$WT59>=HKq8CV1kLxnEX_F-#e3pC#3 z(;P$uO+nkav%;aY(Xj^S{0yU?E(NQQG%)C1jdCM&Oe-_BJmcEbJcCb&XL2LCP0VvVBRD_T26@PTwrT4&C+oXvwK2X#k0*+o7gh0XPYrcrGX*atjSGzx@)^Y zvDPlE5?9q1uI&yiCctLySXS#&hmcDWy5Dl>&Wv?Lr_m z(>cWSLxWrjW42i;bZyGLszRG2wF1xxMizR&e7g5w%r;9Iug$op9<<6BaK};)vNHC$ zDZhvgKY_5CX4kUKayVvWszRvM*U1d#S~R!fdk&=$xajPk+wW-@xfOFaYD>BJ{7lAe zXM%L6CbTCbW0H83H?242`DaTEe<9u6RP^C{85+TRW4hVuRz%$r`YUKf?i9lBP)ET`DXsIwk1JcX-*;olvh{t%~hEv`DSUeaRk)tm0f7l_-ibhNZHFb z_kN98dgfU5FSYC1F0`(7#jlmD`^>L3S@#=UtJ33jB35j=WZlgvaHKUQmb32d{4VC3 zMU#}&;9f0%>N=lor)VvJ541Y{GYe_eIS7v@-grK{JN2M2PD?`HB z7Jqq^Ctv)tf!><-rNC-}-g}S)c4fku{`tOyv((-)_qtjoDTC!WJ-2T$T}^{NnJBan z>W5vjwNh$)#>^$l`Dz;ShwQJ`m5A0nMf9YAovC0+J*Ru^+iF+8>QdfA!r2r-i%;JJ zPkE~c%PDWUh1>)GJtxyr-c6=qOgP)OZJZoVT9%m5Ml1M*fyq_UN@agE4v2oGAURZZ zKO~%)XM}R0J@z+kF+AUm2jeEQ=DUYHoF%-i)fcM4032zGUO1q#&-B^z`)Jq%9h%1L z2!(B5{kAEk7bgqxJ}xE5(W9U8Nx9cwKF2P1@G?isw1zNEKMYwjA4AqWkFm!-Vh_o-)-G)_@L|g+>~7!Ql-#X3T+NS3hrEROc|yF+*1V^Y-BSa*i2d z@Hei_F+(=~#*m~uye-EZ{y@iv$`I|a^UQyQF{%7}{rzH&IW$qZ!}|Nh9COT`PN&r0 zzahs=JaRgJ$9a;OFy+z&E@YW?x{Bb$?$3r9Tu3wPkd(bLOyOFdSw518p;m?pDv2yI z%QMT)jG~0!!2Ka>`ka%d3@nv2b;nrp%mbpY+9R7m`sr|2Uc#J3Vz8E-d z-1WTc2#s&aUC$f2I(HqF>2wvrmbvT84d0);UTJ@W-1W*A?#*4VG#|OOx96@`KCnsd zdgU88=dSlV9iDFv*&kl&-^w9-``g=c*Oxn8wx&oK{^E!1FL&*(JGqbleaQa5583mE z%b=v5wUzn*=OKGTVhA?hz;;+MzT_|wR2cpTqxvl8#4}I8wq1yhv=yuz7t5CO46xxS zATrj=!L^0;UvRHUD6pyi#-1N_fVQLanO4|G^=5Ym9A5M@a48o`h=WCm`waT*|E>8ah5sV7qq#1OlbnwZVl6D&rmhRIS7xng zd}*8??PP?8Ph^t5;HOMVosXWd5!DwiIqio z?kgQ(xApEUmtK8kDu4oi$(khm=YW4656(Fh_@1ZT3ZM*rpNP%px4Sr?CQZFG8kJcQ ztDiK=$6!$6ask?6onw#)@*K|?l|=!JC7C@Jmf}i;gB6~hPcXaBR(hqB7P*wv4{%gf zMy&6k8w{maybP&1R*|YI-OX4Tte*|h_0Oc!TwTX!cCz0VB)ymNPF6cWOfG0sexSMJ zCux=W0qh3f!1wwG>X^!t;EgmNBqUji5&>VOhpNZ+{ezM<6@?^`Y4V2CLe(>oi}FVh zA1a3+4s^&?@5^eI_eoPl=0i6%>NlYelpxlsMzvxRHf%diZ7qD6A^F%1|&u zYYMPn`FVm0XPX)duoz>;O#IYyEZ`R~YjT#xj2QEjQGkWym$HWPt7Q$nz=+%DBo2Ff z5^cChXJo|L3UsLe3rk~Amy|EhLmvonWVgr%U$b^T(Z!XH`PzB;#qet6^VC<@yc&5m z#TI&^Z$rIdvsXG+)xs#fUn9hkBT~B1do?RU;WQsb0#{0*b*w91jl`bl!r;{^_Xm6y zHhZlUTF1I#(JajnT^I_mcs&cQ#o}w#`CTN$6#@r|MAcNF^4V10LWm7@?sB?ysqQJ zksjqckvA4#F|w7BvHAimMuGBQP;v^d+)Ep|%I5(}jq|>Yz`_>C3M|IBGMBG;NQ5}2 zTnUg8%ywgQC(432eDOg*GDk&A^NEnit-*(Sv$4)iy*%W*E6~5~G?aBM)+%{5S4scCqOMi4sOAg6#DeRE4Vv>yQWhZP-en}+o8-$j6N+ExK&VV zkDz@he9m%E8FZ~6e~}hm4mq+SErpM0<#rt}6s|rmWhm#_fY`pgj)GKn{SX+jd_i8& z?F?F*8Z8xoEbZz)DLT-rPp1Qq4^}2@DnPq}H!a@aKw6Q-iNMio|GieRn(g1YR$|)t zq`ObT*C`7_l>eaSHWx;5uhVMoqu~dWUSQe{vr4Njd#!1o{2smb-_xGQ^r(Hf?09H= zWye#Pt-S@=;oo`E$slOj(LCv-+nqK|I!&mgb~N}LcSh31SJ_0?Nvg;-S7n~Y1QcEh zPqM^}C4T=)n3X&h?st<%(1l?O!?9KNXLyAn1C{r+&^F9+vOI-)`lpYvwfQiQDKWOG zd`m>@MLwl!_c`WVVG5eQL4~QyiAW6W8kX+mMs8;5&dI)C{*OQT;tMNP^CbyhH`F(Z z{>>ZSj-|WMesS>)%XRA!bT?IP*?dqZn*L)?f4l2hkWeC>eYS7h%+lRGRYq=9m^!BG zu?kDqes>>BcP<#%Uk)4LvVPf;Qi-4^e~D1GTd?KL@Qfa-hIoeeye+_+OM=CnfBoJ2 zKfHha^dloBMFy1!sDy|55=5`&(EbU&@~MWx-<7I<=BBw6=)FJvp~-CEH7`w&W&xpz zNGIt}1QmwAp-aQx@VVh{SQLi8VaKSybuk9}lWGil_fm|pU*G_8fLx4*7(K>6kI>(= zATP|{oYEpx;jDGBtD)sEtT>2_bB%bFmRSp7p?U_Jf+kR>RSnt?LLZt<6eX97IFPOt zWjXWa0Du@ipx|c8`(rzzms-&0&30Cc7C4#pCq_o1{&-5>cS?P@5Vln#;i9*an*|Ip zz-9x7o-{|`IlwvVPwZg{ct-JJJGu&@^q$Rj1B9J719W0)9-#D0`-}(!mq>pEWHwt@ zV&UrdR+thD8K1(xly0R_h1xkx;APr|lnUh{GGqyBm-v3%&`^O+OA2HR)GFV~n2f%- z$EiQ5+|p1W<+E%@)F+eCRbv#UuExf;)pc>$)YS!5Fd}K`N1`2iSJ^_N3W*}>UBzG! zQ6q^^nlWm5Ug$3JtVf?{w5r1bhD8xS(+j1IH4+Aqpz9| zMimlSEAa*YTd!>6LCd5n-G*niY9bx$ST>Ps%6i>I<0s;$eceP-8EWamS~pSdM2=Z_ zLW&QFGEeI!$`9Eq%E(IT?{4&hdNZ0`QCegTZXIc%YnFsQEi9YUff(`Blp> zc`ZJMqU=vDooLiqvCd0>+#%s|1nMT682aNKvHv4NPMQj4geqkeZr0e(H&I5>#MQME zOMSo#ybY0JH5}?qz~>XnsD|VtR{)hLqmZwh3Z>FNlad>NJUo*&TP&kzDJ$y~ReY5V z<_A&~rbzk+(h@@9-2($eRbvoMrTHLWI-zFT2V@_*n?ApRnV-C2U)Fo7gO=aG2qtfs z$M#Z!)W7@+#x{FJ9?=G)d+;*1lb9PvgNe|sE6p>AIi4w(n%JZ)vlq_>HYv;Om4^~) zC53wFJI$_`A`Gc#Nl>%L7?ZOJRDrmEm!a%KZ z+N?~_?p3~03Jtkvzd{%d+AO*-5Jqoe&1O}gN>w4mshO!3VHXRV@Oc;sqtbyZNwcX3 z9cgxjUKXTTZ-BF1=`Wcz+v@llVN_1njf`PZ+UXh*)(~smC&%qb0}XTWd2H*Z4TMpv zMrUZg=(PC@GHxf_GVFx{=Pals9;H#pM=QZLKU;$B3yjewwZ!h`9Okr!qBBM7O&DfHmeZkmGRi@ zm0m^V>}nTQ99yB?(mD5z&FaX-rFA!Sq4ljRjxCt86yxC78s_W`zO`e{t{8PNXQxJ; znX~P6gzKD9(p;;t=uA;nkGF6}gJ2u?R3gE?1I987eb4QW)OuzAoAd%C1nxBMmB0m}VaYjrINVydLlVS|;r%0Q~=f}&TiKFGMN=dB9+ zNnJ30sg+CZyWqT4Z5Eb!s|va@Y1DtujvH?^`_u8>KBJeq(5XhbcakW7A=}Sik?8E6 zMBSm+-cLACMvcl!o-_NKwjfSf#RGnV+rzrytd!M}HD~w3IYX8s>^H$d7Uhu2uG5jS zvu*H2*BiE-QirqcvhYK^K3k821(tX^sP#77-S?kHmDQ$Ti7G2Col<3;EgGYzU?-z5 zoHj8hVzt{pj&xB|AgE+F?c%{gLGfgqckGy{y>I8rI$cz^YYlVnbWvW<)z5ugs-aSeO7!6t@dNptk@1%^jhZxo=qb=Qkoif^Z`gO)=dlTdF z4UAF2*s~d2DzoSzH;aZp>=kpDNnhZM!dER#V96Thu!jJ4d1aWuHPWbJD!LD@>QRzo;bx-=J3jFj*Ujr^IG+>2z(l|Bc5k13HxlPf(vBp;8aTPAdEJ)6PZhyj~y8J8A>=L zG4Yc5V@e_5$j+V+n{79k!p`eS0)}dz4U@Y#96L+R;q+$VfBx`#{$F38Km76U|M{P>9{l(>fA{VF@aw<(W~cxC^}qc_wN&@N`S!Q_ zci(=y!qB|2HPJE~HsC;MytT#OegD(zr}rO!+_u$k!2J7H7f{pkz>vJPzlrmeEHQk&(0NnH^F6|_YYvxynFrr_1*8jfBo^( zyB~l1>FbZ5e)IhYO&0FEemU;{$-`*TC3`04duU%&tN*Az|I#;cdL;UM#4 zy$*vwFR2nzmM|@gwWWL@H<`SBm+)_Ut36x7n`1DujLlTzn`a9)E9=J(I6-w3JXKDH zQE~X#c7S7guAqT6p^FIWSv!(M^wQi+|24%80Ez)(y^@N~->QqyeFc^d4(P;iQF!2klu#E$ofu@R062eEI_aSqAEs;cPgw4_d}3 za0rwFk6a*r(C(CkL){ma?4%k9N>8M{Wwy>MxX=V^At1(K_EDk*#Bx&)2X}nTQWB=i0q+MKEDCwG-v;>A` z*I0m~tJ%kbR13TMkdm)?dSY4D@yprQ=-cB@vagxBW9yt;sV+f=e48q`=*;1$LO4af zduc@PQT*!V$dWX5KjM<*QNEtVa`{fJm)u6mSE;N{zM3~10^y!ySk9!x56l5h997AU z@iyeD{}?TV%@wf$?jVRG@?7{z6-2Nl+9g0I_I*de3x_23UR;Jl3pgFr(bR^`^y=to zFB6xtUgM18p~Pi%UloP=u8b_oqe3|9X#5fC3u+=B0UTclEK1!KGDC}`D30tY9v3`C z@6wN_=7h`PQATCrs&bqvN0=+&)t-@Msno0|4W0sO>sCW8@+MFKP-cG$R zEol#4OY8I=jU0~RC6_nEr?@Xk`oXPs){leuP4EBs;S+!K*Z=tb_53zKBH+6lp@Zu& zyNda3f!U3%-HX{xS`1}v05C*IH<-Yr)g09{E#HROOn`R~00p#V^2Min-+xCeT>`T3Df4 z*Nhi#L0HBC%6#aRlkd{DQvIRx9NaEfl6gW%Pe$ZI?Rh;ewun)TxCINyKRIgARMH}( zpeU41zS5-R#^K**V3vh4_|mX0$RSUH0b3Nbe4mMCB=|zE8ZENt=`50yS(dSjSV0n< zVTz9Eqv%)PzUcyW>}{_r07&QUq7!JCp$3+&4%i0DTBEteg9m5 z;9?L7g$c+7A9u9Q{|_=4Uw?<&1V6qzz<^fZc-nS1NOWhwbtJO0b=M%WNvOIj*=P*b z0x%y!Z|s}&xe8^nOV6_gE8&2IU%ZwqxQ1ktR-*EdsZ6vC7w--T83uNI)D8DTY)kNl zQJ;V=ygU8?I_W={f=~K-fQ0;bR|2+vyNcif_@v$ZsCx1p>?<`h$F&YV8D4r`MW6Cq zQzX74L?@Tfr#Ph!0WHE$anjm;Guw09)XBD@=2f#5qUtHst6QNFf6|5mEnUK&)cPnt zIW`Vuke~V#r)2f^%vcHl1>LO1BG5ebc%s@fKkk!m@W3P8-P~oi*RM}WUxhV3yaae+&nvEq*_xXua zH3}bU*m#BU7cklESUNyf2JHY6zW}$5K5{ZYihrdGUR#dilK37~QYMCm<=Scj)mVCrBFesBd4RkqJQ z+*sW`c@Aq!>Ds#BDnhic`_{a{NYU8gQBYHr-2!xlM*ita=xVCOK3X)>D{(NkO~MP< zm7AgPCfZ1?{lbIH19nwGK44c2H72V;!LBOG=kmxdW(m9MqsGItj_(#ZE@D>~R|6r0 zgfzE8uO_QO00LYIpvt}lb48*#-iHjNZT7g<1e!>jE_z^}Hrl0`3q!|#wc$MDCG97% zcWPi{n{KvH8uhT!3zuFCkkJ;3m*bRXRd@?bHOe0?UIkN)Z(avek>ggc>An}Hnzwcj zOtsKrXk`N?T@O<&w3;KIrseBls)d&Chp84CPWJOZ5ncY_>pv1>;TrMhyFcIk$rnH4 zk9P4j#_*>f|MED4sh%rzRjTYA^tY{Xs@>sm2TnDYK{7f}R+!e!TT8fs7LMAGS~l;` zUDUFdf+%PZvE9wsTN)kL>IFC+*q zD_7kG4NdMyt1eMmS2c|P9$yb*$K_LPiwZUz4`NKw?>g9GyX(LmUi4HoqH^)y5K%46ZO{h$h{z(z z9TDC^^PPF;NNnCSS}xCvqjk)?ILQ(lH|N`Rr!P2mv5YKIa#6r(CqG7zrWUgEH~c5= zuf0+^q0poNM%tm|%RJXpG&WX6B?*ar0V;9KA?UWnL(Zc3ucKHS^-E9!_1Xqe5v#pPNj)D2n9+ z9U$Y$qrnC^o!4$FZZ!fZ8qSR_@}C-7nK1WqpPEb zFmkLi&{2(u#ct4tqko8P$DT06{tMD4K3>YW@cwMdPT0u+wo{o} zde37@gxI=8{D@|l-HTJpOpPh_$`TRY6@sM4zzcWU@g^~(%%~w9P?&J@bb#r1TX!(HyoQT%Ak_Uv z3C*rucqFsTv@lGp670OgNei!|qw>9uyELJrT6d~t3>q6Z-42CzQa;3prNB;qMlDW=Q9c)4l}!h@dsSQ#}VM61nQK8lnSu(+BUxnUi;CmCowW$nFfk8d7Fh) z0C7K)UAU5=b42gTPiBb#3uz4|Jb3iCYhYMN_=H0g7F<;Wr?H@A*Z#_uPo{X*C zi}p`i40UZVdF;(@h;1gV=Gdlb`8KqF(sF{=wr%)kv_Bmhk2`e^GqivISYsttSKSsIo&B* z%j+Fm>yMx=fSQce?vv3HdS*RD=f=Q{3l;i4EI9o889m}w0WV^C&8rQ-p%Q#5$Y?<= ziLf3|2pM!ri53cK7H{}Z0?kwhM2}7LZOafkU1qj|nNmQ_tk5e=M&7EZBkftvB`gzD z{h201z2h;PVKSu1lgY5)SOzBQ@i-Zbbud%p`=a4-G7P9!NDwmUCIc-rli?s_3LZTb zKy4U5V1*va2WUU|Kty;;5GKa@nS^XR$0-Nhwmgs~ZC`5T_~j)KKOdi0Ih}(O(Zv<^ zXiG|L5s#d2vz1j3hn;cOeFEl#l6LU*-jag_E6Z>eY;}^J0rHSDfvG{; zU4}Z#v27(w>QpZr?#H0mwfqT8KO70PdkIa&C(`Nuw4f1co)Or!k=H*;W%R+f4T{|u zY>(Xl6UI8(@BL&mU1ll)w=vHckNNL66_j~K9KfE{m6otC|CE(9Kz8#9x{YK8!$m1L zW*mxDGPxFJziFS#&cJRmGY98kw#m+soEQSY1K+7e{5WA)ZKIhha2$vHj0Om~UQ z70@vX97of`Hj+65|G|{PE@vHy1vG#KB@-pnx2p^;0oL@MgYNm!a`d$~Ui&g~DO!l* zX!#;yjn~U$QzV8Vv6D-PHKAZ1|00FGkX?6#wP!e;7A|Mh(mg>+Ifcj$bScD12?aHR z>9~Yh>n7(>el|-J=NDXFm)`=qQBH*yK5q0ltznCxbq0y_UPoG71g%4^TF$J8I2^V{3%#n}2wQW>D7xO03YTE( z-fcVq;Kl$3uMkNZxDE3P<1gUJvSaCzIP%WU&SjJegUERI)+{R%}VRzV?Z47E} zc?I@$kfl6oxDDkN#u2z{6atOr6RK(r%OR^u!DNA{xOMh998>Z+3%Iooi~NfrxXSj3V}fO-00)aO;IEi<}ZWJcu|JV0mU85+4VFw>bzM74JkG z;RcX@g5GI+V_5@oY}bKnmJldbV274+06`piN@2I~STkHu|D0Em^z3{`mEHo_4gFgu zv1_*GJYxsDCu;0qx37K+Xtx`p5NcXULc5{iBie0)#v`~eMjI35u4s2wZabe*_B6P1 zlq8t3R7<}eoKWuy-zjojM7uAp2g)fxmkwLu-IMho07R|@Q04}}VHwps_i7228&{ji zKWJX?{bUf9pn!g0#%L@3dgGZM27rT)q}cEpjHx%^s0%AixB^l~TvIHKQ<_7ATS@G5 zNEj_%1#6Ep*TCAlkMF<#cz*x!ufP8Ebz2&hIJEQFzy0mQJFk<9DyjGn`=8ZvsrNPh z?)#rU{VnSCHE=I>A}#85|2O{O>+gPg|9QVcsO_^3!zuuO)=%X4@3VgBdn?rYS-3jBCF?JmbE!e=4^}w9T%S*L^v@bmevbDiti=A0H08QzS)hYWeW6dwzG= z=MMjtn!zTYOP-}|a$N?v^{J5oo!A~t9&u3P%@TO-B;eJW_s9M5r7tafcwsr8rnK;V z+MJfJ*Zbtg>fSZX;y?8PL1`7)QE6lH8Kr6TJu9^hSt{hI* zm;&m$gwCy~IYSHLa^4hT&SjwQ8rAOF!$=m}yR6V%LkMmc8+v>>UQpw%A%snr8oH>u z(Ns+rE~FSOHVc(X`bRwHzQZ?tj3|Ui5n_c`u_u{f$e3JkKlu;Ajf__d_lQvP_579J zifsu6{9Uc3z||588s#)N)#eiK@nHr%_3^Wwp8K%XkSu#f-R}o#J3GM|Lon>;7bf6~ zr#|clXF_oR`PD)j5ReK?d8p2aAr{jY@oM+^O8>Dx(0Bh5v9a z7XB|*goZ!8qayUtuDc!PRa3q|$(O=#4tq`Vt#j-wxevwUcqTXJv>s7gX;*SuEa`!t z)~#{;lxT*L=6=TS{U!V|Hn&*1xGB!+(IqUXTk|d)*@cs*)uM98ybD%xgkA8L&}dJ# zKXIa3z8=`E>>cf*R*ABlkR%x3JRgRqH=Tz{6+<+)W+JthXURG*05Y|EKf!=+veCg> zl#?*;i!JycShep?1@`!xbJ|ReT+`W;49YIlsflAta5$Xxz0+Hp_vKZQT%og+*QnE_ z*Y#qM(v+(zigJn@U|ZH60sCz|Mc(940PXCXcEWOcklO|&wV0+7iO=)!khj>JoHyj0 zEfl43buwriWkVz}q346dsW}u}6u!t3H~2gxz5ri6lK83K@ds7nap7$%aiY}QN?bd! zUe~-JMWFmsPDy0zq98>xa$99w*ZBHG*Hqy_BgYS_yKZT!N4p=l1@4NJo^)3uCdIZ0 zL3)x+Vp2TapKt2)(?aOqUr32cQ_lhj$ELVGu_-SZt5KR$F}*N*wBj+fy0I%9G>1Bu zZVGj6gFad`Q(rM{^F|rWq)*jEjNYo9uH|8^Pc~x~87Tc$e=1);j4uvc?EH*S>Z+fF zfT)J9$`yIGqgajiKyJo*V0A~*5M@a|&=R-!dood;9?;iPd`XDC34q;Y%w9U3mb5iLpi{TJ$Z z`idkMb!<}>#{f>7XUm(`(3fbd@^h(Ak`}4O#c-ZZth&D(=kVIv?&b>&?8=)jj?Z>0 zs5BKgM4sRYyX4I9>^V0Y)&yyBad{$yJxpYt5Lq2^}=spIT*gx_76|_)KWFThP zUw#2L43*OyvQk(ukcJ?GUeVcR-)pBfqLZiD4IZh>noIq|JzjcXJ9~Y9R%KjHU+>X1 zpj!=10o}6fWmyusBq;80<&J8oGJc;Dq(s<#4c(L%Q(EnF<;5;HzD-_i{TpUkP4WWH z;I^&i%2)2si>-XXke|;whP-9`tRLDWFSa7D4f0|uUq~TMBP~SXo2phy30##IJ6aL> zHZPX`7I`r{>2qsJXeljr+&}FfmXbnm&NLmKK3}fw^t{_T*LHed%C)U01{ZS+rKnhih3M zhT4WfVN-V&CouA#c_Dqhso)}(Zm0jt8yHoc=>bW%)Q$_(C~7Flxa9>i$RRm-1bRUYj)VzNCSR zP*dSUH%sQWF4^T}ngU&C^fekphZY-LPUg~M_ANot7h6I$_oAajTh%}e58GZl(uzzw zX`yvf5`*n%s7xp&#k;6n{_!nc{k0iSZW}$N(@Ftf^WM{FZD_m-waIMZ4b4ZyvA^}6=sg=FDThc?>(ZQct z!h~+5S9e27QPW(GMz|-`y-QjVnS_UlBOWOeV-AMd&uP*sYlj1b@uewHSaOy$4~$Xo zn>+WzZE}dZ@ggDDp6PwZo6_$f235z1=hPboa)FZ5QKtY^z<)m)1i zOthX`&_sEvjeV+Z4B?oSr7APP)q9u$nu2D)Z!1kh^u!E)&=1k!M@dYXqtroD7VDrU zJxSBEYqDY`rt^CeD1V`^rQnLwtCSLBtC|ZlOwitMTO9 z_=d(^E_OU|usTk8Q!WhMxGNWCIZyP@(;D}CxsjD^@mP=Df1SxlQFrV7)1kL5VA#1m?>~?`}l6Otl zQLQG~H;Gz0tGrzrf#vOv+#09sn4>DAAYf1+_!c@L|H9ZWi#SkKg*aqKiWj@_fxYLFiCPR?Yl(YzCjgNvv1C4;j%y(=H*2mk-n{e;zz(RMS9X@ z-{caVJwY9Wfi&r9^vVhdlrDD%yxyATx-9J*(p;Atx+=|OXU;y;@vrL|zc0;o{WtDO zb6xqBx2L(T{J=eFt}8#0x9?5j2JYoLkmSk_-IeCL@*8)gxvu;|idGtFA?DarS}E4J zD$VtnQd*^Y-P3qi&2dt^Zap8hnBsVPc-n8C=6cyJ=g!`qIXdm&-`{ka43NM@wBoee zKi+Xv>pIQDI#B|NU-YQfb=|w?BA?Tv1q4`>wId6h_A*LyQ75~m5Pn|*d=}Df)Wc}V z_7sf%{_~G9DFEV@C+%MuC+B5Ub)`yf}SmuZ^L+LaaX5 z=dbD|e(%YgN zq}=_EU&9P;J35Og<{yJ*ZTqoEo;G$3-MVCrOBpRW@X-435m1avZLRz5*rLz}>F(8K zbmz02=#tGWoYa%e&{AoI*(l;Dml>6=X@};FxmV~akove}Wf!H>OGYDSUoEHcGk)(c z;hSZ}8BcUYR?EBK`}Ro}Za7qC8%K7b9x5A7bYY^pQuN2ig=0k9dj>0EK;wx-rY#Is zveA%}m@9vx2{!y^n&%QKqz&r;nixVi&2woDK-N(HRET<20H;?lMM~sgpO2Wh-5BQX zE_X546EH?o+wu6gkmiCZZtFbq)?^}bNgIOgVF1%iJyjO0hp8-iFi*7@I6OpRN~lljz1TAjw2>9IH?>Tt59bzRX=?*hYh9U%mMY_pJh34KZ(T!d<;GA5?EL- z*mYf2(i&Gib)}1X8XsxscWIguADf18s%bZo1nGL3K-1mafqgv4+YIAZ#KhWxBO$@k zbZl`LzlBVm$J3p06Fl)T^36)*wMY zzHWLDp_yhy?a2CubTKKHD+%7{l*<%=kLSu|o|W<6;3OTBc7@HOjWZG!Ldwex!lDAQ z_Xl#1TIKTeiClNT0Q)J70B)zs#SEC5_A5A&a`_1tS(FO%soS<-_~`;nkyU;x(md+i za<6v=pU)4=7~07Od%ZKLG;r)Cy*tDLAWXk@B$nG&5vW|IccBQ)WSGubm(EM7CzPAM zK=ttAi*G;op!HE9ihWVLqjJv7Jeod-sqZsu9uX!-+@aRD0>amA2d)5wuWRTgK=?AY zymITsQobSjdAadz0O9p-Yyk+beC2*Xc;y3I0KzMu$Wd1VaUyiQ4dPt+&?bQJ$~QIu zgjc?>86dp!otpvSQw4tuAe=zrIQL+8oSP@VzZ@8LW~a^1J)9nKmFg18ybcIo#sH3o zo?@;xThjR6cH`W^xMz0E)K6tB6v_(Bl{;q` zL7p-{n_&8IUIbn3G#Gkb*i&x*-GWaTb5nySK6R5;fQ(0{+@95Z(}|B8srj2dYH31m`T z5#b;9<>qF`&D$`F$1Uvz9KA5JSBFJX8AbHB{ zC$U>D$);B+W>-FGgSQ?L$0rnnaInQsO2B*!Rm)+)LnML2f?ZuBcN`Y%f!2v?L7O@J zgbUX99z~Vjm{zx{a*#MUrNn_^+NsNX!=%drksHFK z%MGoDNxAwm-8#`yPjN{u-@o2n)&kj8Y0EGOyaA<%U2siuiK>zYfoC-ez|KC zwh!+iEbiHGa9H50=+g4ma3#bJF>l&~gEZZ0E(>?l5Zt3_LyHl5h;(YoJVv@=zdW`# zLBc|4^(L9Q>x0V2!Tg4xw&ld5*)bQz#9-h zR!M_V_}roure#4)lQ_wcFs$8;%V@H>A@h7lJJ~v;LZRPRU{Xq@RTHmCGYlR&b$p8) z1>Q)W?#E~lyGcKxG2DZtn%T_->m&y1fd)CTn>MQq1DYr|xce7at|CXIdo&N=VK+Gw zfZ<-9LD+DfNKap%yGT3F@Q}up3D&;6JuN(0xqCN4k!YF?AG$sD!ErY5_ zd{Cz$KANbBk1uFDds_y5apKdl=^1TT&SXYg*^shl7+>yV$%LWlwU8q$FQ3L`C4rnV zbSxaCOl!d`UOc`s$Y7{k(AaJ#8H~5@D;Y^Ct0|bDn1cKCEDCqi0hOOou7qboj_G!y z6d^CnNv}!@7`6Sg58*4cn%9;7FpCwYK^{e9l$GqML4&=ki7I*$=~1JW72O@vgSQ?X z(^W|czdWHwzOD&LNPQK&2ns92oF=3y?gJ%xJ3djsGv%yuVk=@6NKb-WE>*IGf!vMZ zu>cG4M}NZBwUST3P|m56F{k$xox*2&fhwHiEEs}^)UI|QYsI2D}s;p~w7$T7R?B2irKPH*_n z$x%|-t)ds>BT=mFvoFPmmH({j&($gkUB|M#^*^~)DV>u@T2LYxeoO)?J*-a$?T(Htq=^d_W)icfE^=CAY%SDTiI6HU zRmsToP=L%&mOyPRE>r5ynT@staxP8gyEwCkd_!Ml(s=#35{@x?TeL=IzPu_bcGF|t zlG974%L<|FI0vWKja0m~jHe_c=%Ll|anO>o>0yQgk`C3+66-`_C z+q!73^H78KiOCRu^`t4XW;qGJJdBKiiX5IA9ijOvgO=$JKE(Zp{bU}bJ)=vGY@O3P zGz1)2RVW?=i`N{HeyRtNW$P9k%l5pPtn~6Yj%B3-ix9l)9O54CT|3$Z$Ff4N9dIlwJ%lu3MJ*WA+hRj2{oIOU zx!C zJatl+9*`em`w6zz#$MT6b8Y=B@x3?AQjEUcdDw_C*lyn;eqt`|uERW7(d|l?3+#?w zJaVAe3exTNm{gNTAq}2iv#01JX=D~Hl$?!!kzVmoDi~lw_0j(a>h#TbI4}6a#}hPg z!L(t_ftwyEG2v*bBf(G|jgCC#k%9~@eI#sGJ-#aZ(#IPuZcj>0q{OeH&ikK9&K%s? zSF=j)qNRjw0T>SGC}9*FNQ$4*ls*6>F_aa^A7v%oy*>~Yflq8N1W6!ek|dbUvzJ;} zRL;K!xsmM0NP}n$DQ`%X0p$~J z#8gssr+Ug$c0hS$!$FQ-C5c%Hly@{kq&%9aDQ_s30p+16PI}tPzAx_9Ltm^BnAAVP z^B&Y~jeCzpr3i=aq-iavp-d=Xodq@Y3dEH@NVGM6xYV9&HR)Q_5=GketxEsE3btCD zGM_4wsqbSVstLHHnZ~E{UhXfX-2Trnle|{(@ba%NdVaLI$V+-vf@wjr@D=7)h~I?@ z6VSvR7x!6eq>>JXy_4cbdN>xra;5ob>3|-*EAfynSj;Cuvnvtl@tiMM1T;-w1%>fw zS5Qvc4a+A92%5`gi9Grdv<@HD#Jx^5(!(In&q>@1 zhQn5RzAyy4MBl*kxTz;5gZrL*zkD8mVL)<1uk_201GvE=n*!pHj zRN2K~SR5h)L!hrRv%1R|4TJ*=WbloGk|`h@44GppZFK&dCC4)d_;yDZEjZ-B07auE zf^=!8=!sHMOqYIzDH^uM$KO!XaXGSs8hrdt#+YxYx8Qd%`5Ms&1}ysC-nU=v`Wv)8 z{Vs!i$6mBvv6mJ_<9HlAZ&5TfUdDzZosP!QLVx1o$vzUoMRZGe9XyLD8i*lqH+Vxf ztN@G*mgDk4P6Yx`|40D-DfOXw6Tg$~+}r7l8^z}3`d{(MXWqT|`S%~LpT7U{kALw2 z!+7X2Mq{KY4v7HQx4J{@^6~ie^2}XSP$>s{Na;?QujMjEamd_#72!go6*MO_in|dl z2$YWWnI$kCp-cqOizx%|VC(!&0!8-qI~u<;%-*0U?2$}HOud5=X0RP;Xu_?CHE>y?gROC9+zQ>nLhsI& z6N1HgN!hOHz+AnW@*Oqmt0|~cZ`K8B+I53f)$fs=b!V3lB97Pg2h-`Nfc^#Ank<=Y zhQoGX#8+WEz9dqm8b97~o?N|~CysRFYQrZDY)5kKKuOn-3fP8G(b|?Fr{gn;f%jr# zmPHL->{e{dazmT2F@&%fjOEw={5OC2?bFAY|O?k;%>S^dqC&6S(S|)J%o+f*vA9dn2kMzYR;dUW{atKt4U6r&l9BfD5^t0J*snY_hz~znm@^adImSrfJd3 z`52%)w*y(Wi5?b;v=aTY1zENY@1cS$FXjmJJk=C&y~^K@?%Wv$N~*sJul(k|4`-8l4^Pt;O-a!mUMIBBhuO$s2Ot6z^8xD)B9 z0g!s*W@)1|1Uso1ZOCH4hhAdqtU}WZtwJJSa!8k(TDJvFdvI)*hPG${lH*8OeveD` zLcqhzb1;a52}JmgSj@-15&iz_-)C@_J<~4KDv>maeGJ^NNL7mx9m-v9u|PEJnf>xH zu>w_^j7?g(lx(^t5HASrz5+OdXlNUtb6DLb)wGL zd6g!4Pf7^vW*Z_WObTJU7NUs)6!0(bN@TEhj2H*W-C7tI3+{dTxf%EIc{exl54+E7 z9R^YOg5aUK8u8fxC}oM7fV6JF;%u}ub4-XAbK!)0dT0+jkw1jV!I| znsCrHO{msuKVlhsGKI%X%8_^wSSF&HBL%Z&K3 zs0@f7vwvnf*+fPBg`zTVjaK*Yyw=Al# z<={}%JzLk-YFmy@AfrAMHeb^NY;UlFrS*Xbxe-B zmWzjPi#14;qvSu^C4?l0e-*q*NBPl0SG7y12&(r}2sgPTm>H;jNfQ7lNflfXMHWdr zQwU)>vMXt|wNY)UP7n0a7=K~W;3573x#XVgC(tX7gMztF>+Rj z!wtG_x=d2wYHFu$eJ`po{ea+9780EK+-!*{?9me6b49R_jgS{Vjgc)*cSW$}D)~AI z5I_}<0l@Uf7Xe5RC)MsvEg)+hQMD^cP#TIMOiG;xB4~l8qC(P`&K1}~e?zc?Y`kI& z>D{*sgT|JHwBck+0^3v9(rGIxB9vs_QpyzCOXfv3xnh{8w!G5#Y7Q%Rp$k#FMbL`Y zuosdI!>{vSOzG^aZQZ&2-%dKm97*&XCpf)ZWwKMO)lH z1@$bIX@=_Qr6ss%_i`pBWCN{wrsT9~=}-qj!rt9_T5-%UA$GV>JUrflo9$%jCD_gMup?^KT7A(R2srhBe!#WWo`|#!7rN%_N zfmbT8arW+}$nvQz#f69V1NM8Qwr>qJLX%x2V?aRGb?A2T|2NJ@Gj z#y5~nu$v?e2a25}jWDBy5?J>y(kmX)fmE4&y{Y&F4HU*4lba^cH`+JkXN4e+W7#$x5BN`O7b zZx3l>w`chYOuws3GR}`O4ZW{u%q)oAQ8F|kmg*e|hAD~V%8}3>3WkRuaLM*4J4#6i zbxE8uiR&&HXrdMjt4lIqSIW^M*$sNT7S)038){6XsKQ21B3i^c;r#ES#zgIjx}+!* z^G*w9q{lB?W5Sh$T2UheJc;g3O4u#jS%8A7-oSG#`5QH8v0el=P3zk+N_l{8GSjrQ zbkDGx+J)K5QtO1O+3zX^Av0Ykp%3~Y?0 z)F#CyEL4gXa-&J5Y$><1%65BtwPA>#ds_Y>AIN9_+0M?g;k(m3 z2E_(MhlJi&{=v9Ki{IIG&y-_9YDsQ+aun0BJs4xxJ;||k;TnGOq;o}b4fmQLHf(<2 z5h;%@VL_hIBJ-~Q&GP&2PT`AqELAReE=9XtloLw8M3GDZS?hG6mQ#||ku{~OSC#+| z`$}69`M&7;k3Xc7#Rk3N<6*MUYIEpJc`p*uLN?HeglVB?+@(d`*fR_vmc=mBP=E&( z!imySC-ZgbT;DWEMrj*m^X2t;2TB6f*?h^O6-OY&k%Xxbp%A$imbjSACt*6ec`_d( z;bV-xUJvd_=CAlj`y}%vA6dfY$$XPn?Ob}!fWG3)j_LgM$y=%=2j^VBZcXRI-OYB# z(U*l9lXO0}y{4b*`FvaOxN@~BYI+6}I#f~1=c^h)FKSXm7OiMiw9e;GR1{xx_@jir zf+&Vb>zcNez^+>Hg@U1C*@T(}WT??5A za&PW@dFb#=w&u>48>({W=O4bge*352{_%$|{}suc|M}xz|K<;;U;pM0$5)(dKg6@` zI@W&r?ct;SXZ1|`{SAL)H15Cu^rcEU!pzpYng`mqK=6C^z#07Y=Xah!(*eAl-6#~Y zP}L;%>?3UTHXX=59PFfZbz8x6$OPxx3XZz1z;lzw=L5Xg|NNW3`X9gh^!sl=f5eq3 z_lpj6Fe&-b5UwHcz=f(#Q+gR9EkO=zcl++HDVD9>coyhM=S1+dQZGoWsLU}30#CFm zM31<|@oXniLU01#eE;PKydEPKn9Ps=@27tf;E(UxOy~%I{_^eh>p$^zkJQ*BIl*$2 zn{T+jehvhyzEXC|R^T)MYmV+q>L^qilWT%!xhz#U;H$qi^bk+v3fV!CG8HC+j=Xuz zNLVhU6ZPy9&Lr%IEJ=h%3_WOnVPmx%kqE#5W|S2WqztR{Av$R;;zk=PwIQ%65bIyQ zy(Zi+HfveQyM_=a)n9)ecLfpHuPa+J(UEyout?8Oix(ck06$Qw?f4?6 zwH134L!IXCRLlhxtSkpZeD`O`K-8L->`QGR1L;K9$*knh2%}jAWghE#;?Kb=Qm13D zd2xABA<`JCNJm$_3kv+O3uMR8upN5h|94JZcw{7Z@v1I<_stJq|M|1fT1fBs3PEfN=|SPX{qpIDZ@zr{$In0h#fMYs@AB2*Nzts> zALc1E!6D(yhT*d94PKJ}>;TRFya%_8!N-Dq(EAx28QHQDQo#m&NCGXYWpRS=1*SImLKO5vH8k-*e){hFWZ$_p z$Mnd6?`_cy&p2;?Ci=(kFv;|c|c=i3g--qMn!SOe;!yCOY}a z0F855Fb~I99k?R&+tmu9d898&y&cLlq79&}OZMR?WI*sHy!NIIL{r{41d_lsn?sP@ zTNnaZn1`TKGGPc_u2WKfVzY>?52un_Fe>Pp+%kkzWqJ6i75+>O9FAOj;t(X<={DaR zhCuJ93_NCxb@)0wSq zWkW5D33xSQLlnkW5+QhPsZc1bU@hb4!MYO1Zo(rjDkc`5Ss2lBKXx}Tz$#V!6DC-n zYH2!`T!(qxb_B>&oaG0j^!UxaGWQpn)IoA6o!ThS4DU7X{-8!@L6hp$vqQV_yR)h~ zX0~6tnw88~gU=GGD~AM`h$|hUkMth#%F%Dx&5d=dX0BzrERl8=RAo&|TefO0f0(SA zPWgET{dOcucnD{El}ZCbHv>7rr{p|xrj`m-XOYIdVK z@fO`MgcYlH35K<^YA+^{(hW7caR@J5Z3`n-H2MXLVjv?v4I2F-mE_Af_ zkbM6IW-xn(6#1ws7mcb`l|1B2g80=U|KcK_>TQ?O-Y-%VKF2~)F~G|226OVF_1ugK zuleb(UV?(2pY$jX=uHEPt=NJq2EF*o9|!AOppS?*}j`t(Hqm9ZW8v0BE;G36Ht z;)}hZ1%{rNhg4pT6vhX>_&uGGM8KmNrO?rp5 zI0E%;?dq-XqaYlgls}6jkRVtJsT+aVYg2tCd*gQ^&MV#!ec}jg#A^4IZ+#!l5o+@) zV_pdQ8VTC;@+Nxn4ND;xO23J6CdPV89&)C%W%mQ-@pv;*;sLv;<1%j| zCf~3uSeXBt=4Y+GQ4HGcvZFLPp>DhEFikYUFV(8=mJ?2sl81Z1@N{Hbh?$mbR=iDh z1@h+ZP5k3-vz@as4-W=&7W>}tMn7k9%36J6*WH|rUSnvg5e!XqbJj5ZXo1RgjOLum zG#uD^;j>Iq;Pc_hLS*dBDc;1hp5LOW zn&~Dlnx@HGTuz)7H`AmxZ6aDLR9G(wgX@>uMXIG}e1 zllPga>BAG1x#hb@1D>==ZeyYz4tPQ{?c^OVDbimp=GzzO&=p)9ye`cvlOHSvx z#MMYKCN1&~iYTwA4M+1jctfAyoDWu)FUB|oI;{3ZzHM2#mdjU1D=W|~R>BFYkLRZs zZRkoL13x-Hw0!zVR+4d$^(gPl3mm!#jA6R8>_~9xmH6LXVluFJC<$#KyS7Byg~_ z+U@}W*P3`Nr=+4A~e>vM;-wpr8eXKK<$2FMR2*{>P`!*M}3O z39N8`w)JM9f^ZM-0aO?_ydO|u(tb`VRY~}}pb(QD_5vzQnos$oYW!G_Z%=wpI@lGc zFzF*C*0%u_o&qR=1r1?m{&EOZFhIj&K!x$3gK~SOD;i&zn2>ib;d`2pNfzInLm4QT zn9vx_V9v*v&6_+ieMD2;`ciUI$GZl0fsd79!%9@=Y`NI&CObLfSZz+stZU>-m}3mh zx`D-l*U7%%zf9+)TU470XgGWCvHp4rTuXPGLej4sq4ph?Z8pS%`6RGxVA*4hNuB?O_If;og^VlI^Q{PMJp2N-0W(dYJzGpMHA+5rd4g z=xn~MJj23OI}fS7vV}gvBN57|)qW)!=|^7$CGzYxdQ|+Z+`i|jZ5mUGU3p+TSvuM6 z1KDLBx@_Ea?qLUcUCq+^moFcBNq5O_JP(0Ux-S! zA-5w}A#2REIVMR#{+`kpv&MwXr)ON7s%KzWdL}ax+XSD}GX@8!;3;b?jj{7%s^}J< z;Tsg^k|d~bLwqKy<$!qd0=t)aQsf0`70)(PY|@r-J=+W(aT9c416{UR%=KirHXR#> zK(dx0tmI`_PA?Ck&CA%CC9laRZfzU_IaG#_*5M%mL(Uyk=<+hx;dhF^<4~&;JZHEoS88tB+qw*VZA_rgg=x<*fV2u2ot08%%4HbzjlxoOL&&z?qhmSj@WD{GH~TC6J;W z%&YRJN#>)j+>>w4$@zGs*vv#s%}c?v9QFxklPcK)W#(H%2#0%mR(hed(j}a2@wZld z@sBa$ThqQISWeKV5d?y5OgPg%KbCNo*jwgaSE~eJupFo7_RXg&Y0wuZs3t;#-XvQK zq{caBCRxT;Y=|A%Uu`JKTk{lA$$E?GG2JU`X}NN})ug<;gtG~P7N2$mp7PcR<|%KP zg*XC#pER(Pca>@A6VBGR&6Cp!%MugXXa#RrFu71#sq7yN1ERO&Bqvclb_r+Z86jL~ zkK+wn49|Dt0lTO-nI+%d<>4&hZLPjh47$LP_Ec}2P~K-c_xwH@HbH}?`Fe!Hwy%EM zl+ufXh4`2*C5YampYjR0*Iz!zE_3iUj+Q|w5rG0HyD5wFY0B=uS5^cI{LxYq;2;QA zxZI|jfB6)RnxK~8fQ#=4*Tb1F1ap$krTAoCuvIjaol&5Hiok#W~DU-^-m-pqSjowd^DDYKzf0|=X z+|%il^8Ot;X2v6j{5y}6%nVb`7&yr?>vR?O5QkrN9Gs+?bx6uS=~%dyXO@j*#84|k z2`ULJGRiYc&kUl3cVPaIHGK_9Q#qDOnz~`kdFDPTLF()l(hrBb;u7X45({hDNxpHm z`6$@b&uxw(8+gtmg(K?B1VeWF%_HY7+uVem97z>=eEZX+SSW1e3a36%5ohy2?s}R# zyCru$Ze(-rI#s4S{2CX?@0q(^Zus%s^-BAh|5ff64%v21S?S@?-1SQHDYsUQ|EApa zN(Z~-u2=fFId^?L=`HsPf-xn(@@NDg^H8vMs0d-#GG<*MD06Dfo}e(^*07Kvf7`39F_ zMfrlkgi~ShKPc6^oD+{Y0o!&#G8@UWY&p*WTO0)^am(f4+QRx9+-ouv7^}b096XiD|VlB+ure+A#F%FQmrZL8zITmp)%(3%XQFzb< z8CzaKj2isoE1t}NQ^?My34=ksd`YI0I3Ow&*~ZS#lMMpGouFt(A(XxB;T`oR5ZMP+``P+3|pfE8_G zD-kH3Mqw!oNCBc|tZ2ojJ&}m>D>KDeBG_&-Ry0wM6<;)C#dLtti0u%3-n26?sodnU z?SVEvE2Esp#Weu!<@rwPl1P~*bxBOcFp4o~Qs*^x-gUK->JfHZ@2)cG#a8}vDS!fd z37c@{&j~-zC&wHr_#W9lK~L&*#BOt$>0LUYCP`hIjmoSD)lV4Zb3#z!asldM;W1bq zc|1Z?W&tpiWVBpZiVF}9T6lTAK<(bG^hz!*vXq-o!BJHiv9SYg(3M{CGNfi$1*$4= zH$!FEMfL{N3eP0dTwOud<~uvtZwr#1g}js14iJ(H(i9(<)qxsOE8_#`4f;TT?E?*3 z9|4GT35``p?Y4C-^LNzkgP>7wtLl}J`gXCpMbP_G}g2|0O zvG#2?G_4WWMqCk^WU}LXWeozZjm19FGsVE;hlB&=hooHf5MAbn$!T^+!a+QumM}_m zC(<(w(ve2=x8gH7)K=~IrkWSzMHbLC=m@boT2@A-3arMjm)-FE(h$v*Tkz^9F}=20 zfQ6Mcasw@N#Lh6M;u|FUvXV{!G;7e2m~GBChZC&&Tu!bWJx*QeIpD8&CwkEpfVKn&|(1=I)N_`;iywx0Tx5d7-aF% zVk}@6(6;(9WJI5*Oa)k8U{~@Q%3kvtx`2o~#v~3$dl76nQ>RD7*$T8&fQ6+o$VuhP zdaA6Y)Id(>1F`Tuqk57U)|+Z`kZclcHJ}dGu?5 zIATQd5L&C|z#6;)D1uh|jZ~-&>xxxljfXUZ&Z-sc4~D>Iw^AYI(htWKjb>?vGz6GM zc2fXxUe7|xSMzrYh|2&D0*Q*MK;)yU+yjUsN{J)w3$T>39MI#60UaKWCo+<5Y;Uv=(5OJ*D0qm1R zOb8{MdakHo0OO)xZzRUtx1~(J#mOC>Oo}jqsR^>Z>IoJ-+VNAKj>#oAEfB*a&}^wXWb-KYec;g4OX}0_lQpL59KfQ{|A#i#*-~noGHYjfGjL&s>3TD9i#v*cTn- zYEqbmVM_a=LtNbnnoFRz>VV{N3YyE1#A-`%v@J}#&Vv|58mkrWJO#~V_EGS%^q%hk z%`qrww37Q;+8Sf#6sa7uZvvTP40Xc3ocf6fUIrY~7ajXn0CQf97a~SFhPcy#IfoHo z&NR@z!%O%IdC5cT%rP{X35`sH1v5vv&$okZ|Clo>SyM~4)ydC8y8(TD(-~yr06KXS zH#@UnOA2jzXBFI>z+BTPblF8lCilzk%n*HAEO4u!)*glSA@DKFL1ECff_x(^yqt2% ziqsH3Ml1Ilc!qGb(SD0^UM&#Yme-M!%Auc9j99iH_;d$5gI1?Ta|IwvyZS3B0e)yx z=Zy?JKUtZuApz|Q-mrKB18GGT2L#8c{e7)s0cYY;3AXV`bDxB-Q|5*!|3UR=^Y-1S zCAou9fbAAB3ac(hEw&Hd$Ef{%>T{nSwT|;AYLFfN9VeYE1Wi2}C!KV= z({72Hi3-`#VB7;K6;d_fLYtIzk|=V`Rhg$g0R?&`OEN>oGJgL{sFf@h?q6J;j;*pk z!zy$csJO3%odlPI=E>F553O`~U!whXA@tcT=$+qb5qrx&8HM@ zHU7I$x)TZo(Am57aWhKy@KO-DslwDbT#uDey7t~~d6->}x|Z;g+^ z@st{aFFw5BV;m}#ddTR zL>@hxZ6*jkuO{fg)Hp%Onf4jU4V;1g7?9a*WlsxNySD;MFl7nQMC?3F;APsnlnUu0 zFl2UXXLvtuXedCJnE=`46@|V9F_~1rElzo*U`vw#DW7FKqBfa~p&Ftv3^i?RYgreD zO+%fCf&oeMI0Ed@hsqWzQ3w!GA1WpTj~YpY+>AlXqlsO_S@$;4ZdJ_f(b7koI0pMk zxtIp+Y@)W8kd5)4i|pJ@KF3DU;@Ea4pX${WtC;p%*p7ZO{8J%%O-M7S+ARD z_(Z(g)=eaop_DExbrWSyWSA9C2>t=1%)^5?vP1TXGV-8aZ+J`Ob+tRx*i!521xtrAy*Si!+Xj7kPJf@Z@A8qn+tyexrcy#aE&z+WP2wwCcVz^IHa^_S{|M#E0mfUp*^)_ro^ zj#QyxE_PoH;FjA^2yo1TisGp>3h`*!*=D!d*pM6nXdb3YuKzpm{-PQvm31n5xrpuD~2t@ZfTrb!)A5l(xr7b457BID~2s0XGzA+uvN&} z8*FQXoLy1sgq$5JbwtkA*AcE`MhSB*%Azwxg*W$LMiam`-BTH~IKpdd7=8~LrEBqn zDf|niohGG9q(Vnuo?j|y?m?rr`pav0b?u4@>Ko1 zL4iQXh`tphAXs>V+u9qVTm>2xDU1(#v4u-&b&EaO4p8RTS}SWw0;Y;8O>D40SE=mP z5ahjj^+Eb&EpAn@pD+Z&ms+{hb_kAJ)n;LiTebLPDR9{1R---b@9i^qsS}-I6h|kD z@(t;Jgr>#5CWhKs;;|*I7hpgfOyWsY)Y&Z*KwMWg_{cw(uW2V~OkCk<}sBYKlc<*pg zUeDF?-r=G?`&GPX4G8b?q7IgYsVoX8$l)R^BWY^O58ycpJ=gH+$)HlKfS; zXpLvQ2QErF(*a8d`?DZTiYzj^;qPy)vd9Rif3g)ZnqZ9>Rfjoz5HeaHVpxZa)^PuI z$Y^Eh*Ab)jO^o*-Mis^$ad1{<(Oqs94S%u=88Xu+m{HiO83S|HFuFYqVCPRd2Cjid z07NKxG#|RvuEg3#`3jzv&IX9X=29}DUhtwa z=(eJ3&g6faac=lOhl_%I2LB9;_aa>MnBH%^!-J(YATeBNTC}KEejhU#U z1B+tJ2L237?jl(9=@jvJ}KnwNk0_Ve}s`{w%XpZ@zl`~$S>$G`r~ zAC9lT{>|?W`fsYGdi~Pyefau!ua4IJ zIEc%<9(iHM$IpNK{PFMq`1!{#AAkJqmv4Uf@;86{R?I?@|LJ`BJB#*b({Sce%Ug7R z_v!cFe&#*8Hxf6hqCumguZ1PFMp}9(%O^LGYRRdblYV0xqH(gFd4Bqu$MBz>_YPgPF+j z?N;72igqunuC97|6$2`gS(+S!r{mIgrcsQKgow)gxb4nkMjYmq&UFz`mj?9ppoDVS z=OQW2c&lKgtMt8^ot8+-@GHHbDS+acRdGIl`ti%RpMU@1`sw>G|M(Y7X!8&M^v#z~ z*9uDU)93&B`H%ndId~Jc@oH&pagcGO!owht4DJIYEJ?K_Eq)b*Jm~;yI$ELF?B1Lc zGRx3R#lLwqXR|;r{D2cgN6?u;+$#tD$m47cU$yZF;2eYQ&^w+t3s*o#CMmAFd86# zy#-IWOV12;&lA}3^s7Ht;!U=w;Hjj7hDS;V&8n?K={YmuO=na)`7&!Niv|nuFW+9% zri#@>MF!|ltIeME#1n=#=GXE(0w8iHaWVSxSaPh#2U@unF8GrPgbqI z@iqm}?eHQe(h<+d=EUSJ)uLnx3-Dc=$gntCvI1;EXp6$w^2w!O z7}Rl4BBZ6|lV|ujEl!(p=(1lFn?;Uv<_^}UaF#X^v=FwY zs%eYCoX#q1lj(buM0ApBEhUGnGRKA=<#1d2dQQqLiYl1&Q-Ef3mP$-D^wknz9aG4I zVtI)GF8DHl11q01T}+1*`NwQQY_5n^7!HIuBWs0T3Lz5qA(}u0jG>W#=lcU*A0)E3 zW_Bf=mg0G0DO!_$zEtN`PS08jq7#@d*^&98;&iiQG+9DXypYLzdS7@U1>l=ZaQIXLl~-r ze5mo0pq6}YS%g6#EQP0FyKB>o4{ou{{RE{xw93JDX~U=S(0F!cmn+FQy`v|69764R zbuG4tS-8FZ=MsfrIrtZkK~#0Iu&cKa1lRTgdXgEZOEMUu76xvqI(I+@8K1VRf-MT> zizVSp zKBa3`rPfb5NSo&pVk#+sg3ccas6kUXvZ5DUExRat32Ia8dMOP@lk zy1R_I5M{9EjuV3Va6*bklwh!?WK7FGcA}{iE>G8aQ~7(C*!fx4#CJYih6vex1HF^S zC=Q)G#I=T@B=zp09tlQMp0)H{NU#)28jGGR0msV6(MwGLdegwwSQ0)rr_6`t`#bz= z7E59WKL3QM>51s>K4_FSflV~YSZ7`x9X>d2)y4(`Fvl%hf!bz>2ct+|QG)VF=4<|(x?um|(lQFvmlm=^D zbiMi=hzC#y0i|MNbyaw~5{9s1$0`pfp@o)JHwKg#*v+y|l1Em}0!p3Pczxk8I^t&x zU$P4Q8!!y6H=~e}6x!!Xn+}DjBGA-N>pP3dVn|8rLc5vskP?h%M@y+<68lL^392Rm z>tjk5$C6U(H1t4aa!iRK#mooJDcGDzOo`(zHb>;^>08;HQB(9&Yphp(mOlz4hYzQmmZMaW2 zt?r)K#^^#SwJf+In;4uTa@CPEG+}a~Sr%8)R zDyz`Y_Mp?G)#&+DEpHDxOP{py zm?N#aj4ipSVg8QS2$ zHVgyz-FhgN>F}%6Ro$YT4S$0^MZ4=@i}kJp_iNEo6_3iv52s|SM>XMXg7mc>k$IA; zK;L;pj*5dj*Lp-=>`UI3g%vU6nExZ@%l0!0E@JY{$q3F}m?86&oD?wH!H%(sQe@7* z@K@Ykdlm6!SLD$M3_SC>oN&>0#`vs=1h`V|XV6cxpTX()Ay;%p@G+H}vc=?Zhz@b_ z9zQ6PtDjVcC4#i*e-Jyev@pf(BNurCuz z5^)qF%C{TjeYAHMX|o9`itkQzOixc3`%N=%M!6iLB)P^z6!uu%#wFDLALL>rBg8Nz#ygVOS4dYs& zGSGdCTI!&p8KpK3?mKXft#>PyM>#>FcEvKbIgVTLyO9(oO)B6wA8?SuZBS8u*Wii< zP*LM$(Tq-F6Qu6wHwSiBk+go$D#rcoAlhPziwpfPbb8ho^{9Dt#w|aT-VVjn=v}tEZ)01%@d*TFRw$nb*ht4BR3j~jPE zdMlP^Cy~?1-F8jPS0}OHWuX+v5v|26NZ}qWW1TN5c;a;e{HL zBqltzwMfCx-lSU2~=1G>o4+4 zbbC$wTaMiy70);0xF2Hl`E+_PcHa{hDiXpCOy||XdOsOPU7p0bn}L)OELzq&lb?T&UO+?aj4|-PX9a?LThfYG27}bL`n#ICwgk)n2Y7xUm3yu~V(dkNC z4}Qkg2B985uHk`zCI&_lhNA;cgGMOPLWzO-7ye3$O=gIa@-LnvXcE zSQNb3YOBJ5)aNW`kx8)notUA~4cC7O@_-rU?McC|?jbkKz_jTAybc4BoU}l4=D0Zx z8fKt{iWweK49=qm_9+bmZmXn1?tuD(4w8pA3rJ$F??hzVInqz+MBcVMpeA)+V&&1u zrI37ph~s;R|EWHxUS@6{kL+b?7qlJW^>wI`!z*xd3rxepGLYK3j?RGbq$C~uymcKD zrd68Z=cBt*^w6_eL^Ge9R!XOEw1bvQdO600mclvuu%a+aF#?x!rTIZWf|7RhP>-B% z&ts_!KIPMHCr1rvvPJ`RIfTG?sBKml*kqM$H+ z3Q38Rr0p{1%;Qn8I82Dqdrqi9mrD}GH6@3lhIt&@u*X)XoXn|`gqYdo^=-K4ONp1G z?`*qGVFHrkg<<$vrq@HqTs*KmR3OIEccH-$ULM-$WN#I7Yx$7%_%q}un-!A8BSIMD zH2&=C0Omi1motaKwZh&RMct%Up6c*@UX|X%0Gjk(4=>M{*2M@kTkq*-T*6eSK$ZAt zWXKcAIav)s7p$z0IIKw15Of8k=XVXDa2kS6Ld})E7fj4aMBgh2-Fy5W<3_EISXlHP zcD}1ukW3|#J9I8uE9>}JDrCnh3qmvN(X#5sAT)WIWxWOb&4SRa*?2k0Q|yTkd2xw1 ztI)l{Ir> zl$(`05~l@NmPN<0`$>QeB5@yvw$QhcnC@BFtazW$|Mf6*$pQFu)ADY6XvX`8@N#o@ zt^2g0t+FI+t~viO1DI1+Rx2GCw}yKd3tcmz(9+mL*KWNhvFo&}9K^06;eG7dWE+p* zD9RVnPlIb|UXka8)M(Dt%Fuc0ITN6#x!rDV)Zx7uN#?r5|)1*v<^RYB^*51;<{!}Ze-fA!6mZ|ahwp|t29e*5(C zZ_YoV2;>pfMez^&&uW>`#~T0m$Dh9ZH`KYSg16X-)N#JY`}o^$zWeFZ`}V@X*}G1| zD(Ajy7t#NF*N*;Z1#aK9j~~DN-wn&Vbi;#!72?U&O!n?4*vU-?2`=YyXdoveF6D1I z8DSMI>SV<0O8wZk^9!yxj`d?rxsIqDdwMzkUA}dpZg#CK?c4dSDNFlbL!sZ}>-l_q zN-2(;T0T7;UO%3WalpT&WU$HCoHePNT&KaMp#hB;C~&^u5XIdTcx@=)RgRCZFPFEr zB=6~sg>$NsypKt9Sia6rD#{b$G+b-z>`#K2aLS0MIxfL;|YY~w7@FC}czAd8Nw1=5Y+gldsrXe_K(}tek&I@AP zG=!bYQbUWPo0_sc2sas%gkg#Mk&8k8=$butFsAhp1of05`%WPuNua6Dxi_ zX1zX|cT{gwQfJ`xzMXlJ)ZBj<7jyrom6TymAE=~!wrgTLzDgV>aCr#~dDu#lZ=KW5 zl3OG&$5VkZL#3PUbB2oLHt=dmETmT%%`gbu&sYciBfOb5x96i$R8c$Lg+NrIne@4Myv zl$boOp<<7;aJ3K#$Ks=fEHo}o781TXFg_Kfs8jPPC6$U&M2cJZJW-r-R}`cGwez_S zzECKhE{d%w&ba%&6xU9yl{GIGk)r%mwNBQk7ZjOPETWpZ3#rK(KOfDU*b)jOPvsPI zU4u@~cCTz5xXV;}(H(~vT9jini0(PGbh0koaOr0w@WP*03Gef(0)%~2T%XvKm%P#} zT^h}tXsVX1Ds_aJGhxC7qKe7K{^b(zv3WD)6Hh=`qjY9MSAH4*zJR{U^S7JJ;*0W! zZ0%Qh>hh{=eK$XHTJv+DPZ+9&>q*OQs4_(Xavw(^Gh-vLTMNS!H94PX_FIgarDlbC z3;rd8%{dQU%F@ft@vl56M5^cQ`zWZ`Q*R~Ci+rzbQx8g20+ zEfDG7P;uEudS4RZZ)o757g3HeP#T+vbQjq?;l|Da0eI~a+lgb6d@&B173bx``u1}_ zhu6I}H%4G$8*hv_zuIl0LdJcu^#WDNB;@+l0T*O-s(3nB@OIMG32~;<06$G2)4)c{ zZc!AnV@iTiqtPl8SQ>>eS5faXvkSW}#UY3!7wZ#1*_ypm;D@s;96N?XLOJ;S>Gw$v z&eFv*4M3Rw+2j@?#lNG$@9GAPrfly_;>7ku8P#n6;}2;&gL)Nw)w*ir=InBl%FCI2 zes5pcFEhd*aD|d61kT38kRq*@>j!s+p?v2rdg)eG8G)<4aCM)mw%=z+x0V(!rqy*U z=@-2_cg@ebfFRPa0);wD?%1@YNsC#!h<$uco)p^hjul|&@$}D+httdH^%)T)yz!^- ziV%pBQ=57(qZuZiflpvbUKDivc6Fyr`+9*$iL-v`6j`6lv9Rdn#hZdR6kVK z@W4U|>VH%~Tym}NXp3MdDqIAHW$DsP$tLTHi&nXX>k5cJCIlh#_E+SX3l6!B5x4n~l zXmXa^ThBz!k{K9fS0n9?JlwJ{W9iYp%zZofhbF=!2>C*iiZX!pG&Y4rcB!dJE{J?b zL&**BXmr>*(u1vYgFBrJ>s)fVFq~8yUz1~opEla9-OSb8wzPxx!Re9qNhDL-mF-+c zUCEEZ$Ly+e#No@_=!Y-MLVc%!ON90qe%if0%9DcfKl5JkatXm=@SaiJKl_lsz^n?V zJBQtJNlwt=R)j&BeMwLfJMt-$TF7HeIi@KYUO|Sp`j|}!6DE3b({ivo=0OPihP*GC zK~CHvRCRPhyEn;~5^V5ZtGx4T&O2wKhAN0@Dv-h@yuVB%IC$ubBEWk2QCqJpJ!HoiA! z*k=%5*D)HJ<*I=Gd6vt8((XI?=qC^OFCz~fZMVvHpw0A_Giw>_`M6=!$&zEEs|zgd zf3-v(l4xkSCpp#+k$j##%ct!oB+uzHTD@Xd#>t#J(q}76(lD80xrmg;nn)X0M@pN6 z-z#aeMJ-L8q#H?Ff9r!=*v4sM_#6`?93 zFeIL&ZN=TPEK0|A_RKOgO!{Uc>831I;+7g+6)A#P`PO{-=I4ahbP-H%1n8AGp!NIf5ook z9`X%&3z=D-L@UW1Qy7rWvOeL8UNOoZt8!y$qjSgXU1sS)N~{2?SuSu1&s)TBWEIC#&mH))3yvkz`0t+&G z<~H-SB;O>hwn(Z%1{$q0dZkeabCrB!Yvq`$o6mIBQd)5sy*{(!6A0<0T3*VVR<}hgnPu%9=g?0(F z%+~l=rKPEe;gL>pslPspU%^LQa8`J5_C{x%NJgnl6}=+ zmhO`zq=c95ryZsHa>9#}Q5f7US9bIYX+yEe!w0p$z;vkC`c{4nVPjEl}o#)`|z*Tbf4qHxDGYRGdH8)c>BZ;xq(HabRWos zbf4_Eiby~ss{}koWhD~wkeefH_vY1>seMCUZMmUMc{MBG=9j4Kombn|_+xps?R`9w zSKHXj{du*G9Xyg(+t@{n7gU)dnAUApWn)JV<<&O!@jzZ}V-LYSs;IR&uePzD;M{D= ztDQy%++IqqE#=khwY~CcZ%05R_Rg!losRQl-24$z;Tv3IZO>% zw4UDIzx_ci`7q43g>48OB}JrbSf@5R^1K^tv*oR{OHoV1{2@LZKD5vJU58w(Ho55B zbk{LEx{6TvGY#;nRCenHwrB1j*Wi54WTXGPQIsqHxAV7e$k=S}kB4Qs3F~_U z2lt&_$sYEdZQn+1oSGjCtMwXMw4{yG6dDb9lKNyLAQ($+Er+#fx6>AdHb^(W&cjLX za%N3BGdYVWouPbF3!}oM!)m5f2L=bg%)yy8RaHz^yc|-Eom|c(rh6@k@-q@w{t+6@ zD^7oAEghTlA$W*kFoYY9&DqA0Lnz1Qx-)BFR8uiQjI6`^D&552f8TI9HH(|!3#l$N=gb? zl=R3Y*}_4&X{uP?G)0q5yC#HCv8S#S)~kftX4@iZ#xoDfMBrHu>%Ej0d6hm>|9w3$2X7TA}q*BPs4X6k4)SO?%b0AhcfoPRykT6LqB|^{g~rCfZpC zyIXm-NWLzq>6RZ0ma@S{o;~jXa<@@_PZDxBf?<^?zfG7=r}FG0L8A!M^6MyI7TQg5 z_rpY$XGO&ynQjhl^4AFWnWwIW% zo69HvwDA*x*jt-=bPqNx98Hw{)&TZ4AAdstds{;{1+bT6;VZX_%nq=maV|H$PXK$p zk39m|E4@4(z+UNKj{x>c7tu?sLb7lWZVO&Z0@y1(>=wXY>F4GEwp{~b zx4(mRFwB2>8XOF<^CP{;ci@_6S{6S|aV2w07MJHdcVwv@A6^2`iiN z8woulcl%0xIG9jW?B;VI8|5o3z=PnKb`j+qh(ypwqFshqECbo@7`GqwsN~wTJHgrA z%8UVA@*o$Mh>>Yuu}D`4u*Nm8RMG< z!#ocmNmG@xD1a%rD}#Z9Bp}Wx+L}&9iT_ywEx21XXTjT~=f=_6|6>ercUoF}gI1@P zAofQIN=Gz!8YJ=6Rubd>Rgufl>~kiCOHG;mIMz%xbA3&*!175KY?kcvlcCCb2$TWC zPGl_%O1*6L$_xK^V0f&uDFB};{{)rw<0X${Z&ALj2DuQV_#(fuD zkf-`}O8TY4Fj-vAlVCG=?h>6Otm@KqFm*|p9SHR)B~WxLOX~98u?6aHaF%*T4Sfzu6O)yuI=J!@9Tiac@}nhF)z18yq@{y|XqE#`%W(&nMSztT#Hr);>QS-`+xG`?gT=b}7T!lNPsM?&6K@ z!+Qkl{CY5)A-%(JTLv7rrLFAB-WX!uw6_!zUl#7BA^3$$16vg7)YQKvc3MQX0lmTLAXKqB^es#XUu|OS4rbIUN`1phgNSZ|od*wg{_clwzW(X+w;#T;uqBCcV4>&oPuzW*qL{8XP`W<{ zrOPY$0Ow(x|x*f2^#u-TJCg%|vvj#F#eIWLbHits%w%4@GZ5L=3I(oo1Am}}0wuStMk!{5}t{f;f=(>9X zvuKhDXjvg0k8ci`U5fiA>NLzo6E(9{?7cFy7Mj1NyoSTXVyIPv;Ekl3X>$yx%yFQ; zk`;d=sc$SIz)`=RbaipzX}X)CR$qZ@cjf6!eLWmH=BP>kKz%JF3aGkq)B%w-M;SF1 zF)zQ;A-eP|`O~pDg>Fw&|PMsLa-FK;- ztCPWrC+g&?)|;1{CotkuL_2lLG5x10@h@+X{z80Ery)KTsharsVodzw5xsCUGFUyM z?b4#$m(_tOdxr7#P?i-LnqG@;!kqAF^rI5GTu$PZlxZ!Pg-6GiP8kH43mV()Btr<_ zcTvh}3buHpq(QA(0a*dv;~g$u8Zt%Ri)N%(6~$zjST!=!SD0T>gs#qoMP!i>l7tB~ z&{Km3dsk`{J&E+FVciNw7imwE{28R+y;;X}*;WF0Pw0^^{7PR1O`xzs%-e%ZwB9J6 zTP4A)6lN=87P(J?Tdw7@B#{=uVS>zZ3elf1C#D=azyt>(Z3zPTADkT34`^{`arCK?lYbUoA4 z=_pPGC*jU9sqAj0-IjvO+06!wDSl3llIo}xijR++u~^f-6d#syv@%XtD-CrW%UVjH zod-Y)mWZM>+03bN16eyK90iZ5O@M&`ImGYJ*il2&*TtlV{w^K8V(zMbSE9nwdP!_%^K2* z>#Izf?p7|Nw?%7Y=F6+1VmG~XAS6}eEQB(vM?!WZ6>rUAN-|_*j3`zo$w5}i(uWyp zZk{XVv-lk-0^|kWP;ViG#S&!NVlZ-0F6ELf^tx>HQJT_5T4`Q%fGPB1n$BL@x`3s8 zn%RhQDHnBEV+vgKifP)CDGtd#ye^;@K$BN5i^1?(dM3*84O*HYFIMQw*lfAtQgu3A zu0)!oc0?@}SxZ_2ojLx}mvWh?O8#~D2rP(~$$$mNBd*O^)zup`GjrU| z&ewPq%(zjzR|zEd9c6RXm0hnSQ*@yyh1z!)`|IR8G0}C3V~rnb-n`u>9QnG4zuqQU z9OU={iH&mXMe{@s|Bf3-5b^B;y#ErRNkq)5JT98&A~f8DQiPyg7(utfiQZRxLC$_> zA};t?3!K}Cc4@Wit|S57(rSz$1tstW;c!vEY`R4_T#O=kPNtOObT6`xd^$xqyhtJ0 zD9YaZVqM1sR9S9UhdThIWN3WlHyOB^KL!r*Q*!3(hHV`yr2 zGOy#)3#hC{9nXRnn#n_C_jMhrsv*_%ZTY`QN#@f}>pyE;WJ^YyVO8^J#GCVcs8_)N zUa;w=p8RcnLN_vy`u2&@k-vJbYLNgcb!ArG`?#`y8vfa=(PiIW~GOa zx2&iI7yh=jaiyP|fir{ikS|XKOp^-w9S-_ijYU~UcubP6=fl%`z($Z)3$T%Ttn0X$ zW%L8K$P@6)O3QN`#M=>vLhq~;I7LLfJs)3FqxS=6mZc19Pw=wo0lv#MRKeqrZ(~~n ztii?2vK=tojT@b;<@tRK+RA`f7>L{ij7Gbck{_3AP2UD@n`@Kv?dBlUm*lpL?n88I zj=9WK$nDA z9+@%WXm@fDUCf7K(~-wKQjnpgkL@4z_^NnMpH{R)0V#!+M^fUqrxz(1C+WeReKo5j zOIk|U7GNkSM!|uk7>MI4eZXPXp{zh-C@Tl<`|v`O|!V47L}O_+0xyw^T-N0N%Qj@-oA97YouX9hLpFXbpy&L zpb8#=wz_Ynr#xkcPnmuns^p6xL>8U^BOE>vDUT*<%HxYM<)J7}dfLif{aKDPaG6CP zn}vW1^N4P1+$-lZmJ%;F4w^Bs8e;jZuN@dMtV5-!IHE2Q0{;pylwN4uIS8XXtOI3>G7Pe z=mZu{Uj>EnYvF@((r#D+OUTn)S4`y5kFa!bg)5XO6}^F(^>=nM0lK7%>zg5{{ZC6xjO#wG9Olj_GTxJLm+lOR0kFlfPkI;J3Zkz^q z1dEm9h_Mz#B^ry-DG-p9mC)st+0@J+AfU>=laJB7fdD|Vq4v;fdX166S{qEIM{9?} zc=%PvV8hg;GN#dlSrQ>tVLY+n&W8}(kt9!WgK%`)E)B~hr#T*xJOP>OgX@J~&o2)JI0MnK>Slgmw>sXg?TF1_EyQypKnc)z|cbOSFho5I7nTRYUx;lJE7r%k$ z4J5`R9_J+P1vFwSJzbC?x+W@?=Q2}I+&K0<`F{C4K;Oumo3k^%fRd{-4Sm3E6!1@r zX|eUqps%uv!LT?c2b9rQnOWU+o`(7XKMXHID`0Dn7mw8nqkMO1qx0YF(zwh4k0aC^ z(1HW4I}czxS|Ui7c8Z=T#S=gQM3^!_1M~R!$%=qYaUhTcLxT^bF}uk()LZboXg4F= z!6@;)jJJQKU4Mfyr{855^Vo~lEB4aDb{qhN=Phi9#>?1Hq|@O)V#A4BN%oN-HKJPr z2$2E-wgWLlp*XxD8&(iah68f>AV~uOsDC5?|CIXB>=|OocJA$TMzVW;|H3Oi`OMop zKmY#2_0#uX{_!t9U>FZw=V^?T7|5o>^^KRpA?|W~da)WKVW#@ZF<+UluJ72aIff<;3pgRk9h>fOLJ~Qms>qW- zTcZ@7PH{pGF_Jc3hT#G-VPD~z;e<4ZYXZu+dl)@>ku(8iF0@*O!QJ9Pa*zem?rS;{ zST7y~QmIj2zKdeH4_ql2wr zoaKf#fpH3E<{hfoY-{{6FwXWq{`LVd&cH}K8P1!eg5x4K}+R;N` zoQ;!t0F1M-hmhW{s0A-)SGEN2W>XcL^Pq~&5R790of_bBHy8&7b9%Yv3btiopM5x- zf$_N$-Le>0K+Bg5ak-TSv)T;@UoLoS4#IajEwFLW0b=ElKo+=(FZz|b>VM0GAH<5zUWGHST z9pQ>dj8KcmY13#gny49Spsx|jGOmd0`-t={nqdOzQucV)eaBpz4DK@_zH3@ik6b|R3Hk}e668~jJ{8%;z#2=K+0dp(jFOa7DFx6<4ggbjzX&Thb3@_OtKRS}9A4X;JA`Bumh7U1Gb%Yx8bZ%wSjcr&Tjf z!P0E0G>QVdg@p<0^D_!{@K)wyy2?4t0Uu`76Gn#i zvb*F%ThYIvxSMY#!XASl_gpe9C?#2H11r32Z#}W(C|@4}>38LfRq&nS0 zV=K}{gpR3}*+8?#?K0!w9qal^vO)`*mT4a`bs>02_mVDlIE6NH1~U`-GVdJ4GJDCK z#U=+0OVrkh8ef)Tbvsmkr6ZeF-(fE#Tfohvgnge>tn0Rvq+$VZOp}UU*F;I+gq5n- z6Q+vx)#FK0(b86_c#n>BKqsP$B(~WSfm|@t%~^2!%TgSoQ}zs7mIr-7?71`E;*Ep`JFWLDn2H0o@&{yd-HIjHMp4Xr4NI`Cp_{M-%dmty3wxw-E;qgp zmSDXP6Voc;i~YlGo6VJ89>)@_bYQ#Lcb!ArsJv@OyI=`c=(PiuV5NtUBde%|b$?gU zx*1Ebv9QPMj&(f_&oA$B9n9g3AolE*nRSH1asu(?^>kldk0tEG%Ui)d+z%yKmb@l# z4PWkEig2_62XnBnTn0Z=c?fwX^qPy)VZQI}`;g^{|AN&yPFV9VR!*_xXSM&wlOQ+o+J$?uAL-}Fr$T%2=Fh`D<1QMR2hNB^%lms5*aA6t#H$_!k8@C z*;2=5`<4_&r=g@+ z%6cFwp7XSnJSuRYSr~^#T71`X@Dhr>xWr;E6c?*=9<#7$q7oNR_vjTD7iLhGBnl}j7&_>l19nszXjMifwMU_Ydd_Chis6}kh{x14k^Ame;4t7hyg z8Z!%G7qyQCLnImrhAD}a_CN)Wp~WE_9zIbALgVv`qSt@|H*+P<~S$-Gj`NJUU4oDx>h9ePt9hQBi(g83l?m zug`(Tx#>>vLjDu$apLk$x*hGrL(57I-;DFikVdSTSTfqce_e!wn%`Pq%eyhz&@Duk zoCm#Ki|TOK4MjLM?$(nXh!(L0yZ{&aQiAAF|q#-17QBG|0Lrk=2tNTNe?|ljPAldGj;qx-Q0bEeg1+<2&IbFyUkTpso#1DEPvN{r|bk$-HY)Rz%!z84o?IySlQ?`Nk z)|3YsgAaWBU6lth3t;P!Vbxlps=)`k?XR1?plYDd2z?;^^$xgUYI2Rz5TmSiHVse} zlGUOm7r_U^qtp&Qa3d8G!Unn^FWOXNs7`?~mpr1GGd`WB8r@uqR{}$TT=hD02l!wm z@-;~{-UvQ;t`Jaj@PV0R?TC6&z`Uslx=+Y7rJ4Nxi|kKd#+k+&;Rjr!vORMYYS!Zk z{D5E-*ZY)PEuVDw185*piuh!x`i?(f?58vOjz2&Ht$x<{0|9(GrX)FqlwN}9~6&M|3G{q`7WC2U-)GC;THtdqX37u8A1AuU!Rk#s=pz17H zsLxXX!je_sA|ff-7lN=p|FL1X6@rj~iY|C?bP_@C&Gj!29UW}V^)ENHn(IIO`ZvGh ze{GY$bKQXLjo+W^zpW3Ghbke9{l@yv|At=f%k|&TfyLtAbq;Y`^R6A;o$J4WUU%mD zZ|LEnT>lOIgdP5-x&arvoa2X2zyF}qELf-i@^l$o;&ETyfN5^z_38P&^76QCuY5u8(! zxe6r0&0UHkE{Zvw^$?SUH@(!3HwK>ro~8OqS$W$!)ID)8o;qry zn|hxqk`M-m>%U&PA;b|Zk&RxogDOQ1EjNz8TlK?IBwzl5Y^4?Dg} zScE3%_PBlq99F57B;FT6-k3z`bQ$Q?A9MtV5y3urd3@yDb>^#th2ud-D-HKE-uI8d zgtSi@9Q$OlDGb4bmV+UjIfP59(C>#R#zQa!4Ts<#VF(?NhKy=}G+t1?GA9OL5P?!y zF`f!GnTPqvDq|+fX)dl%=39RGS@xmcdnyKfve8a}H=YQ;L4ZSoD(ZEecvkACNQawZ z-8cgN9UaeAeJ`tuYd*5oDD27y0gve*;DJzuEGU!O<~rwTD-TS_KYg6sZ+XMq<0fa2 zyODH4bGnn4nv}#shs-V+( zY!p|Zy+7;v%ws}iiSm4f;^Wfhit6u5@nLE6ly1W0C{0wge&!x!Oy|z4ncFJkvc}H` zvgT*7F>}07%(X$r3L(}@eq(4&<_F!ADd`@mP~zIOh)O%Gz}+_mtx;1BdDAS-sF++> zp#`0y4sllIFEB9}9LikmUpAhP&6^2lLQS~MMp4#6S0x#wuQGAE3+@ffV5_?heV127 z$8LV)wC0y`kHu5+ObkfX4OL!}35i0`ai}sgHUc}^8m6epSx!r%i{FW2Ow_2i;Q28? z%K*HxRON<-b`-kVP^kcmYUIWjVZ9vk1g6a z)NJ;V-k0$E8ya{im0e=&G&VtCJix66MVdeWhPai12xHQ`8AQ*DW5BMtpED?xjfp)} zDq9mZ1<=WCu%N0&1r}I^*J`HH08iSx}zvzqOZP#NzVNS*A z{9{*X%&1$B%|CYd3ZHi7jQKh($L9_{UP&Q>4J5T zi@){ORj#&_-PPw#+3DvF@^J1azdf;^J8k{0`hmHRvpEU&A|q``BX|H2O|FrqBlc$) z@NCFvGQ4m#M6o%?iSr1}1^2e(@wfE~iww3;JZZ?qhSF>JhkVo&f5xeQsmY1ycUYk6 ztTjdzi&OERhx0FSy}gXSRGoGc!>UT$V;m8FPuksox&3wpSjmfRZ|J7H*m8>Pjx(@v zoXd^xlNVd>V~@PpN-vM+#a24lBQLhnMcgtzmKR&;XqUX$N*_Dq#a4OlMwys^nSTEl+oBb*LFG2 za&7AecBi?8%LUmsPvG637F!lFEIo2}Q*3)V4YDW$SWjb9SY%BbZaJ}dB;V0ccANcZ zNlBG(dlxb#+loox3ugW*vDa&x4AV$_xVD11!UwsS`5sPAfUMrU1Y!yvcmN>2`>=wsQuHa6WgyBJG1koC_v zFsv`oUg31-u=_zuBdGi9O`ZkPurCQpo<$*#q!tpMl=7L9fyZ0Y6|*UDR-$$>r*N<< z2|)<^hP*Fg$%$LQsJ>CwVkML!<-6d$9zNgz>4&e(@xSCWa3*Shqbze;21ZA{|SJnfR`BrRt_ z`@AXlVan3@*Z8ir4wkS{`SZ>cc~-_7Ed)q?azDGPiI`%GPZ^n(dS%u6(P`G71 z#(H5sP!Dsb6S9oL6vZj2l@#a~NV^ERz?qx^3hKo@LxtA>~FWqHY=GiX?4qB zPmc|QKo%Ng3t4Is$KnJ$=Xwi=Ql zC8uWVeo6RP7~dPEU5s5x0r-Z#%FODnjWvY<>GWP~L5#A;M~vRhTECE-J;+83T_z|BX8zsUNNRbJP4Ny!E)b#9{)>REYOe~yqYC`&CZw%?1 zhyK0HXb8u{xvDBx!@081U}S&?;X&9o7gox=wz)9o;*1T2Hl9*i4|2sBr6a)t zE2>}R!o+@0q-MUBdx>N(Y>_(8RHw#O%HJfDLOyTJI^ed4pBjswehMB@n&a-Or#Kg2~Sjs@DX@v+n z1InZ#4d|X3s1;t%vTtI{)hr24Uz6KQ`6nt@p?9}>Sla$-N5!set)Dv;j&t|ryC|gl zZK?~rt4BZ2zR7f6Erm6oeX8+%hGEX8)9&&3&%fba2OF|)j-KMOKpMtHOcs$c*gmo3 zAb&^MHhT zv7g{;Y&!n+{4z*$g}h&LZ|vO%s$Nl#b^ilZ&rh$&o(+$Ft*4_F zqZMfR?SZ3O+aw|^M8E7&t!=}5=&0638gVj7bgs@)dSZ%J)-BfoSNgz488jC;E0IzDb-=p( zkazFzzkT{&KXUim_XZB`+gnNI^_@Yo_U$YsPbth6x?I9eqUs8s`mZNmU2nR==$SVwVFIWCAj#ZBd~ z=(J&~lwPxys43^^fEEcHDLzlH+2^)Y_lLIpHciAi5#h7YiHm!5|2CAggDN&zAg)>% znvbk7v#VJrQKeK43s?Ce8>)LpJWpnzftGld%t*CR$JNA`&EW{29cCVMsAP!xo3kv) zotvhL^^>P)vT4_Z5V`eClH8s8VAHtvTuQGD=P%~6#cuu*Ii%ps{h5RfpVJ}9I_YG^ z+4@PjdONfzE)OXw<=rV-+(#*&Q=Cr1oF!sX{fzQ&0<>QIY^Cm@rGdtAVhe>1fixTF6YmbB5 zy;{A51npZm7CA_=R#}47$l^%8r z@2>Q7b9nbO2=5L~F+A@Y-hJj$Ka0fP8{U0>etLPYieb;^!|}dT3=6O?G>Uli-A4|# znN6${Rg7dgtTBsyieYd-VpCWVmm(zN*r%9;hSHjS{*NOEI5_?Ak%Mir@G(WrqQ_-% zP>YmKvG)H5968uXf)b^SM5rrNP08@sk%KlA&cgvXw`*>92)W;RAmKG9JF;^17ig?q zRka+~q!nzez*?Ym8g!-cLtEHtHDPybX>SbotgMM4xK?`e@Y?M$_m$4V0z3#UX%}I& zM)F?EM>C>_c)+Q>UA1jvhy_vuX0jF z`o<-J7y{at!O<5T5M9v=954zfMXKk(t~B zD-eq2E0TL~Me;Dc0Zs+8Xg(N1wSb=Mf3x5-YP7UW->mRF2e8!On!*?HSOU2}m#PV# zk?}aGi=w9m>d*qS7b5FwFw#P~e18~>v^diQG_P>c5Hv6CMP)4o<5DEI9%72*s)|

Y4Aqpvu*ISIR(NOM z4d72-QWi7nNpo;OIqE)AltZ72*k{@6@1^k2X0mif;Cf|ZcyV9DRRJP!(6A38bGj3W(pcYYG>gP~WDZ$|4WU>WPv&NZ8sv~&3TkINEh;(+XFFuq z!=@7ra@(0OyOIglAbGKNP^s0RjI1@~9BUAWN`jyIaK5J}tb+#fP$IzFLa|aHJE+hu zD;EA_gWdQ=Z=iKGek)Ygi~A`@`l%0D-0i}JPQX&=83L9V9yQF0&g3p9GImPQ{^}_C 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 g-@cE$|z8Qf%Y(Y%{-_WAe%8&fPQN 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 gNT-o3mhu%3}L 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 DO&*a% diff --git a/lib/gpu/re_squared.ptx b/lib/gpu/re_squared.ptx deleted file mode 100644 index e0e5821059..0000000000 --- a/lib/gpu/re_squared.ptx +++ /dev/null @@ -1,2357 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009bda_00000000-9_lal_re_squared.cpp3.i (/home/sjplimp/ccBI#.sX5b7D) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009bda_00000000-8_lal_re_squared.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_ellipsoid_extra.h" - .file 17 "lal_re_squared.cu" - .file 18 "/usr/local/cuda/include/common_functions.h" - .file 19 "/usr/local/cuda/include/math_functions.h" - .file 20 "/usr/local/cuda/include/math_constants.h" - .file 21 "/usr/local/cuda/include/device_functions.h" - .file 22 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 24 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 26 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 27 "/usr/local/cuda/include/surface_functions.h" - .file 28 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 29 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_ellipsoid ( - .param .u64 __cudaparm_kernel_ellipsoid_x_, - .param .u64 __cudaparm_kernel_ellipsoid_q, - .param .u64 __cudaparm_kernel_ellipsoid_shape, - .param .u64 __cudaparm_kernel_ellipsoid_well, - .param .u64 __cudaparm_kernel_ellipsoid_splj, - .param .u64 __cudaparm_kernel_ellipsoid_sig_eps, - .param .s32 __cudaparm_kernel_ellipsoid_ntypes, - .param .u64 __cudaparm_kernel_ellipsoid_dev_nbor, - .param .s32 __cudaparm_kernel_ellipsoid_stride, - .param .u64 __cudaparm_kernel_ellipsoid_ans, - .param .s32 __cudaparm_kernel_ellipsoid_astride, - .param .u64 __cudaparm_kernel_ellipsoid_engv, - .param .u64 __cudaparm_kernel_ellipsoid_err_flag, - .param .s32 __cudaparm_kernel_ellipsoid_eflag, - .param .s32 __cudaparm_kernel_ellipsoid_vflag, - .param .s32 __cudaparm_kernel_ellipsoid_inum, - .param .s32 __cudaparm_kernel_ellipsoid_t_per_atom) - { - .reg .u32 %r<65>; - .reg .u64 %rd<78>; - .reg .f32 %f<1598>; - .reg .pred %p<34>; - .shared .align 16 .b8 __cuda___cuda_local_var_32902_33_non_const_sp_lj120[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33303_55_non_const_red_acc136[3584]; - .shared .f32 __cuda_local_var_32908_33_non_const_b_alpha; - .shared .f32 __cuda_local_var_32908_42_non_const_cr60; - // __cuda_local_var_32913_10_non_const_f = 64 - // __cuda_local_var_32917_10_non_const_tor = 80 - // __cuda_local_var_32921_9_non_const_virial = 16 - // __cuda_local_var_33168_15_non_const_u = 40 - .loc 17 43 0 -$LDWbegin_kernel_ellipsoid: - .loc 17 48 0 - ld.param.u64 %rd1, [__cudaparm_kernel_ellipsoid_splj]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 17 49 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 17 50 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 17 51 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32902_33_non_const_sp_lj120+0], {%f1,%f2,%f3,%f4}; - .loc 17 54 0 - mov.f32 %f5, 0f3f4db6db; // 0.803571 - st.shared.f32 [__cuda_local_var_32908_33_non_const_b_alpha], %f5; - .loc 17 55 0 - mov.f32 %f6, 0f42700000; // 60 - lg2.approx.ftz.f32 %f7, %f6; - mov.f32 %f8, 0f3eaaaaab; // 0.333333 - mul.ftz.f32 %f9, %f7, %f8; - ex2.approx.ftz.f32 %f10, %f9; - mov.f32 %f11, 0f42700000; // 60 - mul.ftz.f32 %f12, %f10, %f10; - div.approx.ftz.f32 %f13, %f11, %f12; - sub.ftz.f32 %f14, %f10, %f13; - mov.f32 %f15, 0f3eaaaaab; // 0.333333 - mul.ftz.f32 %f16, %f14, %f15; - sub.ftz.f32 %f17, %f10, %f16; - st.shared.f32 [__cuda_local_var_32908_42_non_const_cr60], %f17; - .loc 17 68 0 - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - mov.f32 %f22, 0f00000000; // 0 - mov.f32 %f23, %f22; - mov.f32 %f24, 0f00000000; // 0 - mov.f32 %f25, %f24; - mov.f32 %f26, 0f00000000; // 0 - mov.f32 %f27, %f26; - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, %f28; - ld.param.s32 %r1, [__cudaparm_kernel_ellipsoid_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_ellipsoid_inum]; - setp.le.s32 %p1, %r9, %r8; - @%p1 bra $Lt_0_67842; - .loc 17 73 0 - cvt.s64.s32 %rd2, %r8; - mul.wide.s32 %rd3, %r8, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_ellipsoid_dev_nbor]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r10, [%rd5+0]; - ld.param.s32 %r11, [__cudaparm_kernel_ellipsoid_stride]; - cvt.s64.s32 %rd6, %r11; - mul.wide.s32 %rd7, %r11, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r12, [%rd8+0]; - .loc 17 76 0 - cvt.s64.s32 %rd9, %r10; - mul.wide.s32 %rd10, %r10, 16; - ld.param.u64 %rd11, [__cudaparm_kernel_ellipsoid_x_]; - add.u64 %rd12, %rd10, %rd11; - ld.global.v4.f32 {%f30,%f31,%f32,%f33}, [%rd12+0]; - .loc 17 88 0 - cvt.rzi.ftz.s32.f32 %r13, %f33; - cvt.s64.s32 %rd13, %r13; - mul.wide.s32 %rd14, %r13, 16; - ld.param.u64 %rd15, [__cudaparm_kernel_ellipsoid_shape]; - add.u64 %rd16, %rd14, %rd15; - ld.global.v4.f32 {%f34,%f35,%f36,_}, [%rd16+0]; - .loc 17 97 0 - ld.param.u64 %rd17, [__cudaparm_kernel_ellipsoid_q]; - add.u64 %rd18, %rd10, %rd17; - ld.global.v4.f32 {%f37,%f38,%f39,%f40}, [%rd18+0]; - .loc 17 98 0 - ld.param.u64 %rd19, [__cudaparm_kernel_ellipsoid_well]; - add.u64 %rd20, %rd14, %rd19; - ld.global.v4.f32 {%f41,%f42,%f43,_}, [%rd20+0]; - .loc 17 117 0 - cvt.s32.s64 %r14, %rd6; - sub.s32 %r15, %r1, 1; - and.b32 %r16, %r15, %r2; - add.u64 %rd21, %rd7, %rd8; - mul.lo.s32 %r17, %r14, %r16; - cvt.s64.s32 %rd22, %r17; - mul.wide.s32 %rd23, %r17, 4; - add.u64 %rd24, %rd21, %rd23; - mov.s64 %rd25, %rd24; - mul.lo.s32 %r18, %r14, %r12; - cvt.s64.s32 %rd26, %r18; - mul.wide.s32 %rd27, %r18, 4; - add.u64 %rd28, %rd21, %rd27; - setp.ge.u64 %p2, %rd24, %rd28; - @%p2 bra $Lt_0_69634; - ld.param.s32 %r19, [__cudaparm_kernel_ellipsoid_vflag]; - mov.s32 %r20, 0; - setp.gt.s32 %p3, %r19, %r20; - mul.ftz.f32 %f44, %f35, %f35; - add.ftz.f32 %f45, %f38, %f38; - add.ftz.f32 %f46, %f40, %f40; - mul.ftz.f32 %f47, %f37, %f37; - mul.ftz.f32 %f48, %f38, %f38; - mul.ftz.f32 %f49, %f39, %f39; - mul.ftz.f32 %f50, %f40, %f40; - mul.ftz.f32 %f51, %f34, %f34; - add.ftz.f32 %f52, %f39, %f39; - mul.ftz.f32 %f53, %f36, %f36; - mul.ftz.f32 %f54, %f34, %f35; - add.ftz.f32 %f55, %f34, %f34; - add.ftz.f32 %f56, %f35, %f35; - add.ftz.f32 %f57, %f36, %f36; - ld.param.s32 %r21, [__cudaparm_kernel_ellipsoid_ntypes]; - mul.lo.s32 %r22, %r21, %r13; - rcp.approx.ftz.f32 %f58, %f44; - mul.ftz.f32 %f59, %f45, %f39; - mul.ftz.f32 %f60, %f45, %f40; - mul.ftz.f32 %f61, %f45, %f37; - mul.ftz.f32 %f62, %f46, %f37; - add.ftz.f32 %f63, %f47, %f48; - sub.ftz.f32 %f64, %f47, %f48; - rcp.approx.ftz.f32 %f65, %f51; - mul.ftz.f32 %f66, %f52, %f37; - mul.ftz.f32 %f67, %f52, %f40; - rcp.approx.ftz.f32 %f68, %f53; - mul.ftz.f32 %f69, %f54, %f36; - sub.ftz.f32 %f70, %f59, %f62; - add.ftz.f32 %f71, %f59, %f62; - sub.ftz.f32 %f72, %f62, %f59; - sub.ftz.f32 %f73, %f63, %f49; - add.ftz.f32 %f74, %f49, %f64; - sub.ftz.f32 %f75, %f64, %f49; - add.ftz.f32 %f76, %f60, %f66; - sub.ftz.f32 %f77, %f60, %f66; - sub.ftz.f32 %f78, %f66, %f60; - sub.ftz.f32 %f79, %f67, %f61; - add.ftz.f32 %f80, %f61, %f67; - sub.ftz.f32 %f81, %f61, %f67; - mul.ftz.f32 %f82, %f44, %f70; - mul.ftz.f32 %f83, %f70, %f42; - mul.ftz.f32 %f84, %f51, %f71; - mul.ftz.f32 %f85, %f71, %f41; - neg.ftz.f32 %f86, %f71; - sub.ftz.f32 %f87, %f73, %f50; - sub.ftz.f32 %f88, %f50, %f73; - sub.ftz.f32 %f89, %f74, %f50; - sub.ftz.f32 %f90, %f50, %f74; - add.ftz.f32 %f91, %f50, %f75; - mul.ftz.f32 %f92, %f53, %f76; - mul.ftz.f32 %f93, %f76, %f43; - neg.ftz.f32 %f94, %f76; - mul.ftz.f32 %f95, %f51, %f77; - mul.ftz.f32 %f96, %f77, %f41; - mul.ftz.f32 %f97, %f53, %f79; - mul.ftz.f32 %f98, %f79, %f43; - mul.ftz.f32 %f99, %f44, %f80; - mul.ftz.f32 %f100, %f80, %f42; - mul.ftz.f32 %f101, %f70, %f82; - mul.ftz.f32 %f102, %f80, %f82; - mul.ftz.f32 %f103, %f72, %f82; - mul.ftz.f32 %f104, %f70, %f83; - mul.ftz.f32 %f105, %f80, %f83; - mov.f32 %f106, 0f00000000; // 0 - mov.f32 %f107, 0f00000000; // 0 - fma.rn.ftz.f32 %f108, %f107, %f84, %f106; - mov.f32 %f109, 0f00000000; // 0 - mov.f32 %f110, 0f00000000; // 0 - fma.rn.ftz.f32 %f111, %f84, %f110, %f109; - mul.ftz.f32 %f112, %f51, %f87; - mul.ftz.f32 %f113, %f87, %f41; - mul.ftz.f32 %f114, %f82, %f89; - mul.ftz.f32 %f115, %f44, %f89; - mul.ftz.f32 %f116, %f83, %f89; - mul.ftz.f32 %f117, %f89, %f42; - mul.ftz.f32 %f118, %f82, %f90; - mul.ftz.f32 %f119, %f53, %f91; - mul.ftz.f32 %f120, %f91, %f43; - neg.ftz.f32 %f121, %f91; - mov.f32 %f122, 0f00000000; // 0 - mov.f32 %f123, 0f00000000; // 0 - fma.rn.ftz.f32 %f124, %f123, %f95, %f122; - mov.f32 %f125, 0f00000000; // 0 - mov.f32 %f126, 0f00000000; // 0 - fma.rn.ftz.f32 %f127, %f95, %f126, %f125; - mul.ftz.f32 %f128, %f70, %f99; - mul.ftz.f32 %f129, %f89, %f99; - mul.ftz.f32 %f130, %f80, %f99; - mul.ftz.f32 %f131, %f72, %f99; - mul.ftz.f32 %f132, %f90, %f99; - mul.ftz.f32 %f133, %f70, %f100; - mul.ftz.f32 %f134, %f89, %f100; - mul.ftz.f32 %f135, %f80, %f100; - neg.ftz.f32 %f136, %f102; - mov.f32 %f137, 0f00000000; // 0 - fma.rn.ftz.f32 %f138, %f137, %f97, %f108; - mov.f32 %f139, 0f00000000; // 0 - fma.rn.ftz.f32 %f140, %f97, %f139, %f108; - mov.f32 %f141, 0f00000000; // 0 - fma.rn.ftz.f32 %f142, %f97, %f141, %f111; - fma.rn.ftz.f32 %f143, %f87, %f112, %f101; - fma.rn.ftz.f32 %f144, %f112, %f77, %f102; - mov.f32 %f145, 0f00000000; // 0 - mov.f32 %f146, 0f00000000; // 0 - fma.rn.ftz.f32 %f147, %f146, %f112, %f145; - mov.f32 %f148, 0f00000000; // 0 - mov.f32 %f149, 0f00000000; // 0 - fma.rn.ftz.f32 %f150, %f112, %f149, %f148; - fma.rn.ftz.f32 %f151, %f77, %f112, %f102; - fma.rn.ftz.f32 %f152, %f112, %f88, %f103; - fma.rn.ftz.f32 %f153, %f112, %f87, %f101; - fma.rn.ftz.f32 %f154, %f87, %f113, %f104; - fma.rn.ftz.f32 %f155, %f113, %f77, %f105; - fma.rn.ftz.f32 %f156, %f112, %f71, %f114; - mul.ftz.f32 %f157, %f70, %f115; - mul.ftz.f32 %f158, %f89, %f115; - mul.ftz.f32 %f159, %f80, %f115; - mul.ftz.f32 %f160, %f72, %f115; - mul.ftz.f32 %f161, %f90, %f115; - fma.rn.ftz.f32 %f162, %f113, %f71, %f116; - mul.ftz.f32 %f163, %f70, %f117; - mul.ftz.f32 %f164, %f89, %f117; - mul.ftz.f32 %f165, %f80, %f117; - fma.rn.ftz.f32 %f166, %f112, %f86, %f118; - fma.rn.ftz.f32 %f167, %f86, %f112, %f118; - mov.f32 %f168, 0f00000000; // 0 - fma.rn.ftz.f32 %f169, %f168, %f119, %f124; - mov.f32 %f170, 0f00000000; // 0 - fma.rn.ftz.f32 %f171, %f119, %f170, %f127; - fma.rn.ftz.f32 %f172, %f87, %f95, %f128; - fma.rn.ftz.f32 %f173, %f71, %f95, %f129; - fma.rn.ftz.f32 %f174, %f95, %f71, %f129; - fma.rn.ftz.f32 %f175, %f77, %f95, %f130; - neg.ftz.f32 %f176, %f130; - fma.rn.ftz.f32 %f177, %f95, %f88, %f131; - fma.rn.ftz.f32 %f178, %f88, %f95, %f131; - fma.rn.ftz.f32 %f179, %f86, %f95, %f132; - fma.rn.ftz.f32 %f180, %f87, %f96, %f133; - fma.rn.ftz.f32 %f181, %f71, %f96, %f134; - fma.rn.ftz.f32 %f182, %f77, %f96, %f135; - fma.rn.ftz.f32 %f183, %f112, %f78, %f136; - add.ftz.f32 %f184, %f140, %f142; - fma.rn.ftz.f32 %f185, %f92, %f76, %f143; - fma.rn.ftz.f32 %f186, %f92, %f91, %f144; - mov.f32 %f187, 0f00000000; // 0 - fma.rn.ftz.f32 %f188, %f92, %f187, %f147; - mov.f32 %f189, 0f00000000; // 0 - fma.rn.ftz.f32 %f190, %f92, %f189, %f150; - fma.rn.ftz.f32 %f191, %f92, %f91, %f151; - fma.rn.ftz.f32 %f192, %f92, %f94, %f152; - fma.rn.ftz.f32 %f193, %f92, %f76, %f153; - fma.rn.ftz.f32 %f194, %f93, %f76, %f154; - fma.rn.ftz.f32 %f195, %f93, %f91, %f155; - fma.rn.ftz.f32 %f196, %f92, %f79, %f156; - fma.rn.ftz.f32 %f197, %f87, %f84, %f157; - fma.rn.ftz.f32 %f198, %f84, %f87, %f157; - fma.rn.ftz.f32 %f199, %f71, %f84, %f158; - fma.rn.ftz.f32 %f200, %f84, %f71, %f158; - fma.rn.ftz.f32 %f201, %f77, %f84, %f159; - neg.ftz.f32 %f202, %f159; - fma.rn.ftz.f32 %f203, %f88, %f84, %f160; - fma.rn.ftz.f32 %f204, %f84, %f88, %f160; - fma.rn.ftz.f32 %f205, %f86, %f84, %f161; - fma.rn.ftz.f32 %f206, %f93, %f79, %f162; - fma.rn.ftz.f32 %f207, %f87, %f85, %f163; - fma.rn.ftz.f32 %f208, %f71, %f85, %f164; - fma.rn.ftz.f32 %f209, %f77, %f85, %f165; - fma.rn.ftz.f32 %f210, %f92, %f81, %f166; - fma.rn.ftz.f32 %f211, %f92, %f81, %f167; - add.ftz.f32 %f212, %f169, %f171; - fma.rn.ftz.f32 %f213, %f76, %f119, %f172; - fma.rn.ftz.f32 %f214, %f79, %f119, %f173; - fma.rn.ftz.f32 %f215, %f119, %f79, %f174; - fma.rn.ftz.f32 %f216, %f91, %f119, %f175; - fma.rn.ftz.f32 %f217, %f78, %f95, %f176; - fma.rn.ftz.f32 %f218, %f119, %f94, %f177; - fma.rn.ftz.f32 %f219, %f94, %f119, %f178; - fma.rn.ftz.f32 %f220, %f81, %f119, %f179; - fma.rn.ftz.f32 %f221, %f76, %f120, %f180; - fma.rn.ftz.f32 %f222, %f79, %f120, %f181; - fma.rn.ftz.f32 %f223, %f91, %f120, %f182; - fma.rn.ftz.f32 %f224, %f92, %f121, %f183; - add.ftz.f32 %f225, %f188, %f190; - add.ftz.f32 %f226, %f186, %f191; - add.ftz.f32 %f227, %f169, %f196; - fma.rn.ftz.f32 %f228, %f97, %f76, %f197; - fma.rn.ftz.f32 %f229, %f97, %f76, %f198; - fma.rn.ftz.f32 %f230, %f97, %f79, %f199; - fma.rn.ftz.f32 %f231, %f97, %f79, %f200; - fma.rn.ftz.f32 %f232, %f97, %f91, %f201; - fma.rn.ftz.f32 %f233, %f91, %f97, %f201; - fma.rn.ftz.f32 %f234, %f84, %f78, %f202; - fma.rn.ftz.f32 %f235, %f78, %f84, %f202; - fma.rn.ftz.f32 %f236, %f97, %f94, %f203; - fma.rn.ftz.f32 %f237, %f97, %f94, %f204; - fma.rn.ftz.f32 %f238, %f81, %f97, %f205; - fma.rn.ftz.f32 %f239, %f97, %f81, %f205; - fma.rn.ftz.f32 %f240, %f98, %f76, %f207; - fma.rn.ftz.f32 %f241, %f98, %f79, %f208; - fma.rn.ftz.f32 %f242, %f98, %f91, %f209; - add.ftz.f32 %f243, %f210, %f211; - add.ftz.f32 %f244, %f140, %f213; - add.ftz.f32 %f245, %f142, %f213; - add.ftz.f32 %f246, %f214, %f215; - add.ftz.f32 %f247, %f192, %f216; - fma.rn.ftz.f32 %f248, %f121, %f119, %f217; - add.ftz.f32 %f249, %f218, %f219; - add.ftz.f32 %f250, %f190, %f220; - add.ftz.f32 %f251, %f138, %f224; - add.ftz.f32 %f252, %f140, %f224; - add.ftz.f32 %f253, %f228, %f229; - add.ftz.f32 %f254, %f190, %f232; - add.ftz.f32 %f255, %f190, %f233; - fma.rn.ftz.f32 %f256, %f97, %f121, %f234; - fma.rn.ftz.f32 %f257, %f97, %f121, %f235; - add.ftz.f32 %f258, %f169, %f236; - add.ftz.f32 %f259, %f169, %f237; - add.ftz.f32 %f260, %f193, %f238; - add.ftz.f32 %f261, %f193, %f239; - add.ftz.f32 %f262, %f230, %f248; - add.ftz.f32 %f263, %f231, %f248; - add.ftz.f32 %f264, %f256, %f257; - ld.param.u64 %rd29, [__cudaparm_kernel_ellipsoid_sig_eps]; - mov.f32 %f265, 0f00000000; // 0 - mov.f32 %f266, 0f00000000; // 0 - mov.f32 %f267, 0f00000000; // 0 - mov.f32 %f268, 0f00000000; // 0 - mov.f32 %f269, 0f00000000; // 0 - mov.f32 %f270, 0f00000000; // 0 - mov.f32 %f271, 0f00000000; // 0 - mov.u64 %rd30, __cuda___cuda_local_var_32902_33_non_const_sp_lj120; -$Lt_0_46338: - // Loop body line 117, nesting depth: 1, estimated iterations: unknown - .loc 17 121 0 - ld.global.s32 %r23, [%rd25+0]; - .loc 17 125 0 - and.b32 %r24, %r23, 1073741823; - cvt.s64.s32 %rd31, %r24; - mul.wide.s32 %rd32, %r24, 16; - add.u64 %rd33, %rd32, %rd11; - ld.global.v4.f32 {%f272,%f273,%f274,%f275}, [%rd33+0]; - .loc 17 136 0 - sub.ftz.f32 %f276, %f273, %f31; - sub.ftz.f32 %f277, %f272, %f30; - sub.ftz.f32 %f278, %f274, %f32; - mul.ftz.f32 %f279, %f276, %f276; - fma.rn.ftz.f32 %f280, %f277, %f277, %f279; - fma.rn.ftz.f32 %f281, %f278, %f278, %f280; - rsqrt.approx.ftz.f32 %f282, %f281; - mul.ftz.f32 %f283, %f277, %f282; - .loc 17 137 0 - mul.ftz.f32 %f284, %f276, %f282; - .loc 17 145 0 - cvt.rzi.ftz.s32.f32 %r25, %f275; - cvt.s64.s32 %rd34, %r25; - mul.wide.s32 %rd35, %r25, 16; - add.u64 %rd36, %rd35, %rd15; - ld.global.v4.f32 {%f285,%f286,%f287,_}, [%rd36+0]; - .loc 17 152 0 - add.u64 %rd37, %rd32, %rd17; - ld.global.v4.f32 {%f288,%f289,%f290,%f291}, [%rd37+0]; - .loc 16 299 0 - mov.f32 %f292, %f283; - .loc 16 300 0 - mul.ftz.f32 %f293, %f286, %f286; - add.ftz.f32 %f294, %f289, %f289; - add.ftz.f32 %f295, %f291, %f291; - mul.ftz.f32 %f296, %f288, %f288; - mul.ftz.f32 %f297, %f289, %f289; - mul.ftz.f32 %f298, %f290, %f290; - mul.ftz.f32 %f299, %f291, %f291; - mul.ftz.f32 %f300, %f285, %f285; - add.ftz.f32 %f301, %f290, %f290; - mul.ftz.f32 %f302, %f287, %f287; - mul.ftz.f32 %f303, %f294, %f290; - mul.ftz.f32 %f304, %f294, %f291; - mul.ftz.f32 %f305, %f295, %f288; - add.ftz.f32 %f306, %f296, %f297; - mul.ftz.f32 %f307, %f301, %f288; - sub.ftz.f32 %f308, %f303, %f305; - sub.ftz.f32 %f309, %f306, %f298; - add.ftz.f32 %f310, %f304, %f307; - mul.ftz.f32 %f311, %f293, %f308; - sub.ftz.f32 %f312, %f309, %f299; - mul.ftz.f32 %f313, %f302, %f310; - mul.ftz.f32 %f314, %f308, %f311; - mul.ftz.f32 %f315, %f300, %f312; - fma.rn.ftz.f32 %f316, %f312, %f315, %f314; - fma.rn.ftz.f32 %f317, %f313, %f310, %f316; - add.ftz.f32 %f318, %f185, %f317; - mov.f32 %f319, %f318; - .loc 16 301 0 - mul.ftz.f32 %f320, %f294, %f288; - sub.ftz.f32 %f321, %f296, %f297; - mul.ftz.f32 %f322, %f301, %f291; - add.ftz.f32 %f323, %f303, %f305; - add.ftz.f32 %f324, %f298, %f321; - sub.ftz.f32 %f325, %f322, %f320; - sub.ftz.f32 %f326, %f324, %f299; - mul.ftz.f32 %f327, %f311, %f326; - fma.rn.ftz.f32 %f328, %f315, %f323, %f327; - fma.rn.ftz.f32 %f329, %f313, %f325, %f328; - add.ftz.f32 %f330, %f196, %f329; - mov.f32 %f331, %f330; - .loc 16 302 0 - sub.ftz.f32 %f332, %f321, %f298; - sub.ftz.f32 %f333, %f304, %f307; - add.ftz.f32 %f334, %f320, %f322; - add.ftz.f32 %f335, %f299, %f332; - mul.ftz.f32 %f336, %f334, %f311; - fma.rn.ftz.f32 %f337, %f315, %f333, %f336; - fma.rn.ftz.f32 %f338, %f313, %f335, %f337; - add.ftz.f32 %f339, %f186, %f338; - mov.f32 %f340, %f339; - .loc 16 303 0 - mov.f32 %f341, %f284; - .loc 16 304 0 - mul.ftz.f32 %f342, %f300, %f323; - mul.ftz.f32 %f343, %f302, %f325; - mul.ftz.f32 %f344, %f293, %f326; - mul.ftz.f32 %f345, %f308, %f344; - fma.rn.ftz.f32 %f346, %f312, %f342, %f345; - fma.rn.ftz.f32 %f347, %f343, %f310, %f346; - add.ftz.f32 %f348, %f228, %f347; - mov.f32 %f349, %f348; - .loc 16 305 0 - mul.ftz.f32 %f350, %f326, %f344; - fma.rn.ftz.f32 %f351, %f323, %f342, %f350; - fma.rn.ftz.f32 %f352, %f343, %f325, %f351; - add.ftz.f32 %f353, %f230, %f352; - .loc 16 306 0 - mul.ftz.f32 %f354, %f334, %f344; - fma.rn.ftz.f32 %f355, %f333, %f342, %f354; - fma.rn.ftz.f32 %f356, %f343, %f335, %f355; - add.ftz.f32 %f357, %f232, %f356; - .loc 16 307 0 - mul.ftz.f32 %f358, %f278, %f282; - mov.f32 %f359, %f358; - .loc 16 308 0 - mul.ftz.f32 %f360, %f300, %f333; - mul.ftz.f32 %f361, %f293, %f334; - mul.ftz.f32 %f362, %f302, %f335; - mul.ftz.f32 %f363, %f308, %f361; - fma.rn.ftz.f32 %f364, %f312, %f360, %f363; - fma.rn.ftz.f32 %f365, %f310, %f362, %f364; - add.ftz.f32 %f366, %f213, %f365; - mov.f32 %f367, %f366; - .loc 16 309 0 - mul.ftz.f32 %f368, %f326, %f361; - fma.rn.ftz.f32 %f369, %f323, %f360, %f368; - fma.rn.ftz.f32 %f370, %f325, %f362, %f369; - add.ftz.f32 %f371, %f214, %f370; - .loc 16 310 0 - mul.ftz.f32 %f372, %f334, %f361; - fma.rn.ftz.f32 %f373, %f333, %f360, %f372; - fma.rn.ftz.f32 %f374, %f335, %f362, %f373; - add.ftz.f32 %f375, %f216, %f374; - abs.ftz.f32 %f376, %f348; - abs.ftz.f32 %f377, %f318; - setp.gt.ftz.f32 %p4, %f376, %f377; - @!%p4 bra $Lt_0_46594; - .loc 16 314 0 - mov.f32 %f319, %f348; - mov.f32 %f349, %f318; - .loc 16 315 0 - mov.f32 %f331, %f353; - mov.f32 %f353, %f330; - .loc 16 316 0 - mov.f32 %f340, %f357; - mov.f32 %f357, %f339; - .loc 16 317 0 - mov.f32 %f292, %f284; - mov.f32 %f341, %f283; -$Lt_0_46594: - mov.f32 %f378, %f319; - abs.ftz.f32 %f379, %f378; - abs.ftz.f32 %f380, %f366; - setp.lt.ftz.f32 %p5, %f379, %f380; - @!%p5 bra $Lt_0_47106; - .loc 16 321 0 - mov.f32 %f319, %f366; - mov.f32 %f367, %f378; - .loc 16 322 0 - mov.f32 %f381, %f331; - mov.f32 %f331, %f371; - mov.f32 %f371, %f381; - .loc 16 323 0 - mov.f32 %f382, %f340; - mov.f32 %f340, %f375; - mov.f32 %f375, %f382; - .loc 16 324 0 - mov.f32 %f383, %f292; - mov.f32 %f292, %f358; - mov.f32 %f359, %f383; -$Lt_0_47106: - mov.f32 %f384, %f319; - mov.f32 %f385, 0f00000000; // 0 - setp.neu.ftz.f32 %p6, %f384, %f385; - @!%p6 bra $Lt_0_47874; - bra.uni $Lt_0_48642; -$Lt_0_47874: - mov.f32 %f386, 0f00000000; // 0 - setp.neu.ftz.f32 %p7, %f349, %f386; - @!%p7 bra $Lt_0_48386; - .loc 16 338 0 - mov.f32 %f319, %f349; - mov.f32 %f349, %f384; - .loc 16 339 0 - mov.f32 %f387, %f331; - mov.f32 %f331, %f353; - mov.f32 %f353, %f387; - .loc 16 340 0 - mov.f32 %f388, %f340; - mov.f32 %f340, %f357; - mov.f32 %f357, %f388; - .loc 16 341 0 - mov.f32 %f389, %f292; - mov.f32 %f292, %f341; - mov.f32 %f341, %f389; - bra.uni $Lt_0_48642; -$Lt_0_48386: - mov.f32 %f390, 0f00000000; // 0 - setp.neu.ftz.f32 %p8, %f367, %f390; - @!%p8 bra $Lt_0_48898; - .loc 16 346 0 - mov.f32 %f319, %f367; - mov.f32 %f367, %f384; - .loc 16 347 0 - mov.f32 %f391, %f331; - mov.f32 %f331, %f371; - mov.f32 %f371, %f391; - .loc 16 348 0 - mov.f32 %f392, %f340; - mov.f32 %f340, %f375; - mov.f32 %f375, %f392; - .loc 16 349 0 - mov.f32 %f393, %f292; - mov.f32 %f292, %f359; - mov.f32 %f359, %f393; - bra.uni $Lt_0_48642; -$Lt_0_48898: - .loc 16 352 0 - mov.s32 %r26, 2; - ld.param.u64 %rd38, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd38+0], %r26; -$Lt_0_48642: -$Lt_0_48130: -$Lt_0_47618: - .loc 16 355 0 - div.approx.ftz.f32 %f394, %f349, %f319; - mul.ftz.f32 %f395, %f331, %f394; - sub.ftz.f32 %f396, %f353, %f395; - mov.f32 %f353, %f396; - .loc 16 356 0 - mul.ftz.f32 %f397, %f340, %f394; - sub.ftz.f32 %f398, %f357, %f397; - mov.f32 %f357, %f398; - .loc 16 357 0 - mul.ftz.f32 %f399, %f292, %f394; - sub.ftz.f32 %f400, %f341, %f399; - mov.f32 %f341, %f400; - .loc 16 359 0 - div.approx.ftz.f32 %f401, %f367, %f319; - mul.ftz.f32 %f402, %f331, %f401; - sub.ftz.f32 %f371, %f371, %f402; - .loc 16 360 0 - mul.ftz.f32 %f403, %f340, %f401; - sub.ftz.f32 %f375, %f375, %f403; - .loc 16 361 0 - mul.ftz.f32 %f404, %f292, %f401; - sub.ftz.f32 %f359, %f359, %f404; - abs.ftz.f32 %f405, %f396; - abs.ftz.f32 %f406, %f371; - setp.lt.ftz.f32 %p9, %f405, %f406; - @!%p9 bra $Lt_0_49154; - .loc 16 366 0 - mov.f32 %f353, %f371; - mov.f32 %f371, %f396; - .loc 16 367 0 - mov.f32 %f357, %f375; - mov.f32 %f375, %f398; - .loc 16 368 0 - mov.f32 %f341, %f359; - mov.f32 %f359, %f400; -$Lt_0_49154: - mov.f32 %f407, %f353; - mov.f32 %f408, 0f00000000; // 0 - setp.neu.ftz.f32 %p10, %f407, %f408; - @!%p10 bra $Lt_0_49922; - bra.uni $Lt_0_50178; -$Lt_0_49922: - mov.f32 %f409, 0f00000000; // 0 - setp.neu.ftz.f32 %p11, %f371, %f409; - @!%p11 bra $Lt_0_50178; - .loc 16 383 0 - mov.f32 %f353, %f371; - mov.f32 %f371, %f407; - .loc 16 384 0 - mov.f32 %f410, %f357; - mov.f32 %f357, %f375; - mov.f32 %f375, %f410; - .loc 16 385 0 - mov.f32 %f411, %f341; - mov.f32 %f341, %f359; - mov.f32 %f359, %f411; -$Lt_0_50178: -$Lt_0_49666: - .loc 16 390 0 - div.approx.ftz.f32 %f412, %f371, %f353; - mul.ftz.f32 %f413, %f357, %f412; - sub.ftz.f32 %f375, %f375, %f413; - .loc 16 391 0 - mul.ftz.f32 %f414, %f341, %f412; - sub.ftz.f32 %f359, %f359, %f414; - mov.f32 %f415, 0f00000000; // 0 - setp.eq.ftz.f32 %p12, %f375, %f415; - @!%p12 bra $Lt_0_50690; - .loc 16 394 0 - mov.s32 %r27, 2; - ld.param.u64 %rd39, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd39+0], %r27; -$Lt_0_50690: - .loc 16 396 0 - div.approx.ftz.f32 %f416, %f359, %f375; - .loc 16 399 0 - mul.ftz.f32 %f417, %f416, %f357; - sub.ftz.f32 %f418, %f341, %f417; - div.approx.ftz.f32 %f419, %f418, %f353; - .loc 16 403 0 - mul.ftz.f32 %f420, %f419, %f331; - fma.rn.ftz.f32 %f421, %f340, %f416, %f420; - sub.ftz.f32 %f422, %f292, %f421; - div.approx.ftz.f32 %f423, %f422, %f319; - .loc 17 161 0 - mul.ftz.f32 %f424, %f419, %f284; - fma.rn.ftz.f32 %f425, %f283, %f423, %f424; - fma.rn.ftz.f32 %f426, %f358, %f416, %f425; - mov.f32 %f427, 0f3f000000; // 0.5 - mul.ftz.f32 %f428, %f426, %f427; - rsqrt.approx.ftz.f32 %f429, %f428; - .loc 17 170 0 - mul.ftz.f32 %f430, %f89, %f284; - mul.ftz.f32 %f431, %f71, %f284; - mul.ftz.f32 %f432, %f79, %f284; - fma.rn.ftz.f32 %f433, %f283, %f70, %f430; - fma.rn.ftz.f32 %f434, %f87, %f283, %f431; - fma.rn.ftz.f32 %f435, %f283, %f76, %f432; - fma.rn.ftz.f32 %f436, %f358, %f80, %f433; - fma.rn.ftz.f32 %f437, %f77, %f358, %f434; - fma.rn.ftz.f32 %f438, %f358, %f91, %f435; - mul.ftz.f32 %f439, %f58, %f436; - mul.ftz.f32 %f440, %f65, %f437; - mul.ftz.f32 %f441, %f68, %f438; - mul.ftz.f32 %f442, %f436, %f439; - fma.rn.ftz.f32 %f443, %f437, %f440, %f442; - fma.rn.ftz.f32 %f444, %f438, %f441, %f443; - sqrt.approx.ftz.f32 %f445, %f444; - .loc 17 171 0 - mul.ftz.f32 %f446, %f326, %f284; - mul.ftz.f32 %f447, %f323, %f284; - mul.ftz.f32 %f448, %f325, %f284; - fma.rn.ftz.f32 %f449, %f283, %f308, %f446; - fma.rn.ftz.f32 %f450, %f283, %f312, %f447; - fma.rn.ftz.f32 %f451, %f283, %f310, %f448; - fma.rn.ftz.f32 %f452, %f358, %f334, %f449; - fma.rn.ftz.f32 %f453, %f358, %f333, %f450; - fma.rn.ftz.f32 %f454, %f358, %f335, %f451; - div.approx.ftz.f32 %f455, %f452, %f293; - div.approx.ftz.f32 %f456, %f453, %f300; - div.approx.ftz.f32 %f457, %f454, %f302; - mul.ftz.f32 %f458, %f452, %f455; - fma.rn.ftz.f32 %f459, %f453, %f456, %f458; - fma.rn.ftz.f32 %f460, %f454, %f457, %f459; - sqrt.approx.ftz.f32 %f461, %f460; - .loc 17 184 0 - mul.ftz.f32 %f462, %f317, %f461; - mul.ftz.f32 %f463, %f338, %f461; - mul.ftz.f32 %f464, %f329, %f461; - mul.ftz.f32 %f465, %f365, %f461; - mul.ftz.f32 %f466, %f370, %f461; - mul.ftz.f32 %f467, %f374, %f461; - fma.rn.ftz.f32 %f468, %f185, %f445, %f462; - fma.rn.ftz.f32 %f469, %f186, %f445, %f463; - fma.rn.ftz.f32 %f470, %f196, %f445, %f464; - mul.ftz.f32 %f471, %f347, %f461; - mul.ftz.f32 %f472, %f352, %f461; - mul.ftz.f32 %f473, %f356, %f461; - fma.rn.ftz.f32 %f474, %f213, %f445, %f465; - fma.rn.ftz.f32 %f475, %f214, %f445, %f466; - fma.rn.ftz.f32 %f476, %f216, %f445, %f467; - fma.rn.ftz.f32 %f477, %f228, %f445, %f471; - fma.rn.ftz.f32 %f478, %f230, %f445, %f472; - fma.rn.ftz.f32 %f479, %f232, %f445, %f473; - mul.ftz.f32 %f480, %f470, %f474; - mul.ftz.f32 %f481, %f469, %f474; - mul.ftz.f32 %f482, %f470, %f477; - mul.ftz.f32 %f483, %f469, %f477; - mul.ftz.f32 %f484, %f468, %f478; - mul.ftz.f32 %f485, %f468, %f479; - mul.ftz.f32 %f486, %f475, %f485; - mul.ftz.f32 %f487, %f476, %f484; - sub.ftz.f32 %f488, %f487, %f486; - mul.ftz.f32 %f489, %f476, %f482; - sub.ftz.f32 %f490, %f488, %f489; - fma.rn.ftz.f32 %f491, %f475, %f483, %f490; - fma.rn.ftz.f32 %f492, %f479, %f480, %f491; - mul.ftz.f32 %f493, %f478, %f481; - sub.ftz.f32 %f494, %f492, %f493; - .loc 17 201 0 - add.s32 %r28, %r25, %r22; - cvt.s64.s32 %rd40, %r28; - mul.wide.s32 %rd41, %r28, 8; - add.u64 %rd42, %rd29, %rd41; - ld.global.v2.f32 {%f495,%f496}, [%rd42+0]; - .loc 17 202 0 - shr.s32 %r29, %r23, 30; - and.b32 %r30, %r29, 3; - cvt.s64.s32 %rd43, %r30; - mul.wide.s32 %rd44, %r30, 4; - add.u64 %rd45, %rd30, %rd44; - ld.shared.f32 %f497, [%rd45+0]; - mul.ftz.f32 %f498, %f497, %f496; - .loc 17 207 0 - add.u64 %rd46, %rd35, %rd19; - ld.global.v4.f32 {%f499,%f500,%f501,_}, [%rd46+0]; - .loc 16 299 0 - mov.f32 %f292, %f283; - .loc 16 300 0 - mul.ftz.f32 %f502, %f308, %f500; - mul.ftz.f32 %f503, %f310, %f501; - mul.ftz.f32 %f504, %f308, %f502; - mul.ftz.f32 %f505, %f312, %f499; - fma.rn.ftz.f32 %f506, %f312, %f505, %f504; - fma.rn.ftz.f32 %f507, %f503, %f310, %f506; - add.ftz.f32 %f508, %f194, %f507; - mov.f32 %f319, %f508; - .loc 16 301 0 - mul.ftz.f32 %f509, %f502, %f326; - fma.rn.ftz.f32 %f510, %f505, %f323, %f509; - fma.rn.ftz.f32 %f511, %f503, %f325, %f510; - add.ftz.f32 %f512, %f206, %f511; - mov.f32 %f331, %f512; - .loc 16 302 0 - mul.ftz.f32 %f513, %f334, %f502; - fma.rn.ftz.f32 %f514, %f505, %f333, %f513; - fma.rn.ftz.f32 %f515, %f503, %f335, %f514; - add.ftz.f32 %f516, %f195, %f515; - mov.f32 %f340, %f516; - .loc 16 303 0 - mov.f32 %f341, %f284; - .loc 16 304 0 - mul.ftz.f32 %f517, %f323, %f499; - mul.ftz.f32 %f518, %f325, %f501; - mul.ftz.f32 %f519, %f326, %f500; - mul.ftz.f32 %f520, %f308, %f519; - fma.rn.ftz.f32 %f521, %f312, %f517, %f520; - fma.rn.ftz.f32 %f522, %f518, %f310, %f521; - add.ftz.f32 %f523, %f240, %f522; - mov.f32 %f349, %f523; - .loc 16 305 0 - mul.ftz.f32 %f524, %f326, %f519; - fma.rn.ftz.f32 %f525, %f323, %f517, %f524; - fma.rn.ftz.f32 %f526, %f518, %f325, %f525; - add.ftz.f32 %f353, %f241, %f526; - .loc 16 306 0 - mul.ftz.f32 %f527, %f334, %f519; - fma.rn.ftz.f32 %f528, %f333, %f517, %f527; - fma.rn.ftz.f32 %f529, %f518, %f335, %f528; - add.ftz.f32 %f357, %f242, %f529; - .loc 16 307 0 - mov.f32 %f359, %f358; - .loc 16 308 0 - mul.ftz.f32 %f530, %f333, %f499; - mul.ftz.f32 %f531, %f334, %f500; - mul.ftz.f32 %f532, %f335, %f501; - mul.ftz.f32 %f533, %f308, %f531; - fma.rn.ftz.f32 %f534, %f312, %f530, %f533; - fma.rn.ftz.f32 %f535, %f310, %f532, %f534; - add.ftz.f32 %f536, %f221, %f535; - mov.f32 %f367, %f536; - .loc 16 309 0 - mul.ftz.f32 %f537, %f326, %f531; - fma.rn.ftz.f32 %f538, %f323, %f530, %f537; - fma.rn.ftz.f32 %f539, %f325, %f532, %f538; - add.ftz.f32 %f371, %f222, %f539; - .loc 16 310 0 - mul.ftz.f32 %f540, %f334, %f531; - fma.rn.ftz.f32 %f541, %f333, %f530, %f540; - fma.rn.ftz.f32 %f542, %f335, %f532, %f541; - add.ftz.f32 %f375, %f223, %f542; - abs.ftz.f32 %f543, %f523; - abs.ftz.f32 %f544, %f508; - setp.gt.ftz.f32 %p13, %f543, %f544; - @!%p13 bra $Lt_0_51202; - .loc 16 314 0 - mov.f32 %f319, %f523; - mov.f32 %f349, %f508; - .loc 16 315 0 - mov.f32 %f331, %f353; - mov.f32 %f353, %f512; - .loc 16 316 0 - mov.f32 %f340, %f357; - mov.f32 %f357, %f516; - .loc 16 317 0 - mov.f32 %f292, %f284; - mov.f32 %f341, %f283; -$Lt_0_51202: - mov.f32 %f545, %f319; - abs.ftz.f32 %f546, %f545; - abs.ftz.f32 %f547, %f536; - setp.lt.ftz.f32 %p14, %f546, %f547; - @!%p14 bra $Lt_0_51714; - .loc 16 321 0 - mov.f32 %f319, %f536; - mov.f32 %f367, %f545; - .loc 16 322 0 - mov.f32 %f548, %f331; - mov.f32 %f331, %f371; - mov.f32 %f371, %f548; - .loc 16 323 0 - mov.f32 %f549, %f340; - mov.f32 %f340, %f375; - mov.f32 %f375, %f549; - .loc 16 324 0 - mov.f32 %f550, %f292; - mov.f32 %f292, %f358; - mov.f32 %f359, %f550; -$Lt_0_51714: - mov.f32 %f551, %f319; - mov.f32 %f552, 0f00000000; // 0 - setp.neu.ftz.f32 %p15, %f551, %f552; - @!%p15 bra $Lt_0_52482; - bra.uni $Lt_0_53250; -$Lt_0_52482: - mov.f32 %f553, 0f00000000; // 0 - setp.neu.ftz.f32 %p16, %f349, %f553; - @!%p16 bra $Lt_0_52994; - .loc 16 338 0 - mov.f32 %f319, %f349; - mov.f32 %f349, %f551; - .loc 16 339 0 - mov.f32 %f554, %f331; - mov.f32 %f331, %f353; - mov.f32 %f353, %f554; - .loc 16 340 0 - mov.f32 %f555, %f340; - mov.f32 %f340, %f357; - mov.f32 %f357, %f555; - .loc 16 341 0 - mov.f32 %f556, %f292; - mov.f32 %f292, %f341; - mov.f32 %f341, %f556; - bra.uni $Lt_0_53250; -$Lt_0_52994: - mov.f32 %f557, 0f00000000; // 0 - setp.neu.ftz.f32 %p17, %f367, %f557; - @!%p17 bra $Lt_0_53506; - .loc 16 346 0 - mov.f32 %f319, %f367; - mov.f32 %f367, %f551; - .loc 16 347 0 - mov.f32 %f558, %f331; - mov.f32 %f331, %f371; - mov.f32 %f371, %f558; - .loc 16 348 0 - mov.f32 %f559, %f340; - mov.f32 %f340, %f375; - mov.f32 %f375, %f559; - .loc 16 349 0 - mov.f32 %f560, %f292; - mov.f32 %f292, %f359; - mov.f32 %f359, %f560; - bra.uni $Lt_0_53250; -$Lt_0_53506: - .loc 16 352 0 - mov.s32 %r31, 2; - ld.param.u64 %rd47, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd47+0], %r31; -$Lt_0_53250: -$Lt_0_52738: -$Lt_0_52226: - .loc 16 355 0 - div.approx.ftz.f32 %f561, %f349, %f319; - mul.ftz.f32 %f562, %f331, %f561; - sub.ftz.f32 %f563, %f353, %f562; - mov.f32 %f353, %f563; - .loc 16 356 0 - mul.ftz.f32 %f564, %f340, %f561; - sub.ftz.f32 %f565, %f357, %f564; - mov.f32 %f357, %f565; - .loc 16 357 0 - mul.ftz.f32 %f566, %f292, %f561; - sub.ftz.f32 %f567, %f341, %f566; - mov.f32 %f341, %f567; - .loc 16 359 0 - div.approx.ftz.f32 %f568, %f367, %f319; - mul.ftz.f32 %f569, %f331, %f568; - sub.ftz.f32 %f371, %f371, %f569; - .loc 16 360 0 - mul.ftz.f32 %f570, %f340, %f568; - sub.ftz.f32 %f375, %f375, %f570; - .loc 16 361 0 - mul.ftz.f32 %f571, %f292, %f568; - sub.ftz.f32 %f359, %f359, %f571; - abs.ftz.f32 %f572, %f563; - abs.ftz.f32 %f573, %f371; - setp.lt.ftz.f32 %p18, %f572, %f573; - @!%p18 bra $Lt_0_53762; - .loc 16 366 0 - mov.f32 %f353, %f371; - mov.f32 %f371, %f563; - .loc 16 367 0 - mov.f32 %f357, %f375; - mov.f32 %f375, %f565; - .loc 16 368 0 - mov.f32 %f341, %f359; - mov.f32 %f359, %f567; -$Lt_0_53762: - mov.f32 %f574, %f353; - mov.f32 %f575, 0f00000000; // 0 - setp.neu.ftz.f32 %p19, %f574, %f575; - @!%p19 bra $Lt_0_54530; - bra.uni $Lt_0_54786; -$Lt_0_54530: - mov.f32 %f576, 0f00000000; // 0 - setp.neu.ftz.f32 %p20, %f371, %f576; - @!%p20 bra $Lt_0_54786; - .loc 16 383 0 - mov.f32 %f353, %f371; - mov.f32 %f371, %f574; - .loc 16 384 0 - mov.f32 %f577, %f357; - mov.f32 %f357, %f375; - mov.f32 %f375, %f577; - .loc 16 385 0 - mov.f32 %f578, %f341; - mov.f32 %f341, %f359; - mov.f32 %f359, %f578; -$Lt_0_54786: -$Lt_0_54274: - .loc 16 390 0 - div.approx.ftz.f32 %f579, %f371, %f353; - mul.ftz.f32 %f580, %f357, %f579; - sub.ftz.f32 %f375, %f375, %f580; - .loc 16 391 0 - mul.ftz.f32 %f581, %f341, %f579; - sub.ftz.f32 %f359, %f359, %f581; - mov.f32 %f582, 0f00000000; // 0 - setp.eq.ftz.f32 %p21, %f375, %f582; - @!%p21 bra $Lt_0_55298; - .loc 16 394 0 - mov.s32 %r32, 2; - ld.param.u64 %rd48, [__cudaparm_kernel_ellipsoid_err_flag]; - st.global.s32 [%rd48+0], %r32; -$Lt_0_55298: - .loc 17 213 0 - div.approx.ftz.f32 %f583, %f359, %f375; - mul.ftz.f32 %f584, %f583, %f357; - sub.ftz.f32 %f585, %f341, %f584; - div.approx.ftz.f32 %f586, %f585, %f353; - mul.ftz.f32 %f587, %f586, %f331; - fma.rn.ftz.f32 %f588, %f340, %f583, %f587; - mul.ftz.f32 %f589, %f586, %f284; - sub.ftz.f32 %f590, %f292, %f588; - div.approx.ftz.f32 %f591, %f590, %f319; - fma.rn.ftz.f32 %f592, %f283, %f591, %f589; - fma.rn.ftz.f32 %f593, %f358, %f583, %f592; - add.ftz.f32 %f594, %f593, %f593; - .loc 17 220 0 - rcp.approx.ftz.f32 %f595, %f282; - sub.ftz.f32 %f596, %f595, %f429; - mov.f32 %f597, 0f3f000000; // 0.5 - mul.ftz.f32 %f598, %f596, %f597; - add.ftz.f32 %f599, %f598, %f287; - add.ftz.f32 %f600, %f598, %f286; - add.ftz.f32 %f601, %f598, %f285; - add.ftz.f32 %f602, %f598, %f36; - add.ftz.f32 %f603, %f598, %f34; - add.ftz.f32 %f604, %f598, %f35; - mul.ftz.f32 %f605, %f603, %f604; - mul.ftz.f32 %f606, %f602, %f605; - mul.ftz.f32 %f607, %f601, %f606; - mul.ftz.f32 %f608, %f600, %f607; - mul.ftz.f32 %f609, %f599, %f608; - .loc 17 223 0 - mul.ftz.f32 %f610, %f461, %f461; - mul.ftz.f32 %f611, %f285, %f286; - mul.ftz.f32 %f612, %f445, %f445; - rcp.approx.ftz.f32 %f613, %f445; - rcp.approx.ftz.f32 %f614, %f461; - mul.ftz.f32 %f615, %f611, %f287; - add.ftz.f32 %f616, %f613, %f614; - mul.ftz.f32 %f617, %f610, %f615; - mul.ftz.f32 %f618, %f615, %f69; - div.approx.ftz.f32 %f619, %f616, %f494; - fma.rn.ftz.f32 %f620, %f69, %f612, %f617; - rsqrt.approx.ftz.f32 %f621, %f619; - div.approx.ftz.f32 %f622, %f620, %f621; - mul.ftz.f32 %f623, %f622, %f594; - div.approx.ftz.f32 %f624, %f495, %f596; - mul.ftz.f32 %f625, %f623, %f624; - mov.f32 %f626, 0f3f800000; // 1 - mov.f32 %f627, 0f40400000; // 3 - fma.rn.ftz.f32 %f628, %f627, %f625, %f626; - mul.ftz.f32 %f629, %f618, %f628; - .loc 17 228 0 - div.approx.ftz.f32 %f630, %f596, %f17; - add.ftz.f32 %f631, %f630, %f287; - add.ftz.f32 %f632, %f630, %f286; - add.ftz.f32 %f633, %f630, %f285; - add.ftz.f32 %f634, %f630, %f36; - add.ftz.f32 %f635, %f630, %f34; - add.ftz.f32 %f636, %f630, %f35; - mul.ftz.f32 %f637, %f635, %f636; - mul.ftz.f32 %f638, %f634, %f637; - mul.ftz.f32 %f639, %f633, %f638; - mul.ftz.f32 %f640, %f632, %f639; - mul.ftz.f32 %f641, %f631, %f640; - .loc 17 231 0 - mov.f32 %f642, 0f3f800000; // 1 - mov.f32 %f643, 0f3f4db6db; // 0.803571 - fma.rn.ftz.f32 %f644, %f643, %f625, %f642; - mul.ftz.f32 %f645, %f618, %f644; - .loc 17 233 0 - mul.ftz.f32 %f646, %f624, %f624; - mul.ftz.f32 %f647, %f624, %f646; - mul.ftz.f32 %f648, %f647, %f647; - .loc 17 236 0 - div.approx.ftz.f32 %f649, %f629, %f609; - div.approx.ftz.f32 %f650, %f645, %f641; - mul.ftz.f32 %f651, %f649, %f498; - mul.ftz.f32 %f652, %f650, %f498; - mov.f32 %f653, 0fc2100000; // -36 - div.approx.ftz.f32 %f654, %f651, %f653; - mul.ftz.f32 %f655, %f652, %f648; - mov.f32 %f656, 0f44fd2000; // 2025 - div.approx.ftz.f32 %f657, %f655, %f656; - add.ftz.f32 %f658, %f654, %f657; - add.ftz.f32 %f271, %f271, %f658; - .loc 17 246 0 - div.approx.ftz.f32 %f659, %f613, %f612; - mul.ftz.f32 %f660, %f659, %f440; - neg.ftz.f32 %f661, %f660; - .loc 17 247 0 - mul.ftz.f32 %f662, %f659, %f439; - neg.ftz.f32 %f663, %f662; - .loc 17 248 0 - mul.ftz.f32 %f664, %f659, %f441; - neg.ftz.f32 %f665, %f664; - .loc 17 249 0 - div.approx.ftz.f32 %f666, %f614, %f610; - mul.ftz.f32 %f667, %f666, %f456; - neg.ftz.f32 %f668, %f667; - .loc 17 250 0 - mul.ftz.f32 %f669, %f666, %f455; - neg.ftz.f32 %f670, %f669; - .loc 17 251 0 - mul.ftz.f32 %f671, %f666, %f457; - neg.ftz.f32 %f672, %f671; - .loc 21 544 0 - add.ftz.f32 %f673, %f622, %f622; - div.approx.ftz.f32 %f674, %f673, %f620; - mul.ftz.f32 %f675, %f615, %f674; - div.approx.ftz.f32 %f676, %f675, %f666; - mul.ftz.f32 %f677, %f69, %f674; - div.approx.ftz.f32 %f678, %f677, %f659; - .loc 17 278 0 - mov.f32 %f679, 0f40800000; // 4 - mul.ftz.f32 %f680, %f591, %f679; - .loc 17 286 0 - add.ftz.f32 %f681, %f55, %f596; - rcp.approx.ftz.f32 %f682, %f681; - add.ftz.f32 %f683, %f56, %f596; - rcp.approx.ftz.f32 %f684, %f683; - add.ftz.f32 %f685, %f682, %f684; - add.ftz.f32 %f686, %f57, %f596; - rcp.approx.ftz.f32 %f687, %f686; - add.ftz.f32 %f688, %f685, %f687; - add.ftz.f32 %f689, %f285, %f285; - add.ftz.f32 %f690, %f596, %f689; - rcp.approx.ftz.f32 %f691, %f690; - add.ftz.f32 %f692, %f688, %f691; - add.ftz.f32 %f693, %f286, %f286; - add.ftz.f32 %f694, %f596, %f693; - rcp.approx.ftz.f32 %f695, %f694; - add.ftz.f32 %f696, %f692, %f695; - add.ftz.f32 %f697, %f287, %f287; - add.ftz.f32 %f698, %f596, %f697; - rcp.approx.ftz.f32 %f699, %f698; - add.ftz.f32 %f700, %f696, %f699; - .loc 17 293 0 - mul.ftz.f32 %f701, %f622, %f495; - mul.ftz.f32 %f702, %f701, %f594; - mov.f32 %f703, 0f40400000; // 3 - fma.rn.ftz.f32 %f704, %f703, %f702, %f596; - rcp.approx.ftz.f32 %f705, %f704; - rcp.approx.ftz.f32 %f706, %f596; - sub.ftz.f32 %f707, %f706, %f705; - add.ftz.f32 %f708, %f700, %f707; - .loc 17 297 0 - fma.rn.ftz.f32 %f709, %f17, %f34, %f596; - rcp.approx.ftz.f32 %f710, %f709; - fma.rn.ftz.f32 %f711, %f17, %f35, %f596; - rcp.approx.ftz.f32 %f712, %f711; - add.ftz.f32 %f713, %f710, %f712; - fma.rn.ftz.f32 %f714, %f17, %f36, %f596; - rcp.approx.ftz.f32 %f715, %f714; - add.ftz.f32 %f716, %f713, %f715; - fma.rn.ftz.f32 %f717, %f17, %f285, %f596; - rcp.approx.ftz.f32 %f718, %f717; - add.ftz.f32 %f719, %f716, %f718; - fma.rn.ftz.f32 %f720, %f17, %f286, %f596; - rcp.approx.ftz.f32 %f721, %f720; - add.ftz.f32 %f722, %f719, %f721; - fma.rn.ftz.f32 %f723, %f17, %f287, %f596; - rcp.approx.ftz.f32 %f724, %f723; - add.ftz.f32 %f725, %f722, %f724; - .loc 17 304 0 - mov.f32 %f726, 0f40e00000; // 7 - div.approx.ftz.f32 %f727, %f726, %f596; - mov.f32 %f728, 0f3f4db6db; // 0.803571 - fma.rn.ftz.f32 %f729, %f728, %f702, %f596; - rcp.approx.ftz.f32 %f730, %f729; - sub.ftz.f32 %f731, %f727, %f730; - add.ftz.f32 %f732, %f731, %f725; - .loc 17 314 0 - mul.ftz.f32 %f733, %f283, %f283; - neg.ftz.f32 %f734, %f733; - mov.f32 %f735, %f734; - .loc 17 315 0 - mul.ftz.f32 %f736, %f284, %f283; - neg.ftz.f32 %f737, %f736; - mov.f32 %f738, %f737; - .loc 17 316 0 - mul.ftz.f32 %f739, %f358, %f283; - neg.ftz.f32 %f740, %f739; - mov.f32 %f741, %f740; - .loc 17 317 0 - mov.f32 %f742, 0f3f800000; // 1 - sub.ftz.f32 %f743, %f742, %f733; - mov.f32 %f744, %f743; - .loc 17 318 0 - mul.ftz.f32 %f745, %f282, %f743; - mov.f32 %f746, %f745; - .loc 17 319 0 - mov.f32 %f747, %f738; - mul.ftz.f32 %f748, %f747, %f282; - mov.f32 %f749, %f748; - .loc 17 320 0 - mov.f32 %f750, %f741; - mul.ftz.f32 %f751, %f750, %f282; - mov.f32 %f752, %f751; - .loc 17 325 0 - mul.ftz.f32 %f753, %f71, %f748; - mul.ftz.f32 %f754, %f79, %f748; - mul.ftz.f32 %f755, %f323, %f748; - mul.ftz.f32 %f756, %f325, %f748; - mul.ftz.f32 %f757, %f89, %f748; - mul.ftz.f32 %f758, %f326, %f748; - mul.ftz.f32 %f759, %f612, %f185; - mul.ftz.f32 %f760, %f610, %f317; - neg.ftz.f32 %f761, %f759; - fma.rn.ftz.f32 %f762, %f745, %f308, %f758; - fma.rn.ftz.f32 %f763, %f312, %f745, %f755; - fma.rn.ftz.f32 %f764, %f745, %f310, %f756; - fma.rn.ftz.f32 %f765, %f745, %f70, %f757; - fma.rn.ftz.f32 %f766, %f87, %f745, %f753; - fma.rn.ftz.f32 %f767, %f745, %f76, %f754; - fma.rn.ftz.f32 %f768, %f751, %f334, %f762; - fma.rn.ftz.f32 %f769, %f333, %f751, %f763; - fma.rn.ftz.f32 %f770, %f751, %f335, %f764; - fma.rn.ftz.f32 %f771, %f751, %f80, %f765; - fma.rn.ftz.f32 %f772, %f77, %f751, %f766; - fma.rn.ftz.f32 %f773, %f751, %f91, %f767; - mul.ftz.f32 %f774, %f768, %f670; - mul.ftz.f32 %f775, %f771, %f663; - fma.rn.ftz.f32 %f776, %f668, %f769, %f774; - fma.rn.ftz.f32 %f777, %f661, %f772, %f775; - fma.rn.ftz.f32 %f778, %f672, %f770, %f776; - fma.rn.ftz.f32 %f779, %f665, %f773, %f777; - mul.ftz.f32 %f780, %f760, %f778; - mul.ftz.f32 %f781, %f761, %f779; - sub.ftz.f32 %f782, %f781, %f780; - .loc 17 326 0 - mul.ftz.f32 %f783, %f612, %f196; - mul.ftz.f32 %f784, %f610, %f329; - neg.ftz.f32 %f785, %f783; - mul.ftz.f32 %f786, %f784, %f778; - mul.ftz.f32 %f787, %f785, %f779; - sub.ftz.f32 %f788, %f787, %f786; - .loc 17 327 0 - mul.ftz.f32 %f789, %f612, %f186; - mul.ftz.f32 %f790, %f610, %f338; - neg.ftz.f32 %f791, %f789; - mul.ftz.f32 %f792, %f790, %f778; - mul.ftz.f32 %f793, %f791, %f779; - sub.ftz.f32 %f794, %f793, %f792; - .loc 17 328 0 - mul.ftz.f32 %f795, %f612, %f228; - mul.ftz.f32 %f796, %f610, %f347; - neg.ftz.f32 %f797, %f795; - mul.ftz.f32 %f798, %f796, %f778; - mul.ftz.f32 %f799, %f797, %f779; - sub.ftz.f32 %f800, %f799, %f798; - .loc 17 329 0 - mul.ftz.f32 %f801, %f612, %f230; - mul.ftz.f32 %f802, %f610, %f352; - neg.ftz.f32 %f803, %f801; - mul.ftz.f32 %f804, %f802, %f778; - mul.ftz.f32 %f805, %f803, %f779; - sub.ftz.f32 %f806, %f805, %f804; - .loc 17 330 0 - mul.ftz.f32 %f807, %f612, %f232; - mul.ftz.f32 %f808, %f610, %f356; - neg.ftz.f32 %f809, %f807; - mul.ftz.f32 %f810, %f808, %f778; - mul.ftz.f32 %f811, %f809, %f779; - sub.ftz.f32 %f812, %f811, %f810; - .loc 17 331 0 - mul.ftz.f32 %f813, %f612, %f213; - mul.ftz.f32 %f814, %f610, %f365; - neg.ftz.f32 %f815, %f813; - mul.ftz.f32 %f816, %f814, %f778; - mul.ftz.f32 %f817, %f815, %f779; - sub.ftz.f32 %f818, %f817, %f816; - .loc 17 332 0 - mul.ftz.f32 %f819, %f612, %f214; - mul.ftz.f32 %f820, %f610, %f370; - neg.ftz.f32 %f821, %f819; - mul.ftz.f32 %f822, %f820, %f778; - mul.ftz.f32 %f823, %f821, %f779; - sub.ftz.f32 %f824, %f823, %f822; - .loc 17 333 0 - mul.ftz.f32 %f825, %f612, %f216; - mul.ftz.f32 %f826, %f610, %f374; - neg.ftz.f32 %f827, %f825; - mul.ftz.f32 %f828, %f826, %f778; - mul.ftz.f32 %f829, %f827, %f779; - sub.ftz.f32 %f830, %f829, %f828; - .loc 17 334 0 - mul.ftz.f32 %f831, %f479, %f782; - mul.ftz.f32 %f832, %f475, %f831; - mul.ftz.f32 %f833, %f478, %f782; - mul.ftz.f32 %f834, %f476, %f833; - sub.ftz.f32 %f835, %f834, %f832; - mul.ftz.f32 %f836, %f477, %f788; - mul.ftz.f32 %f837, %f476, %f836; - sub.ftz.f32 %f838, %f835, %f837; - mul.ftz.f32 %f839, %f477, %f794; - fma.rn.ftz.f32 %f840, %f475, %f839, %f838; - mul.ftz.f32 %f841, %f474, %f788; - fma.rn.ftz.f32 %f842, %f479, %f841, %f840; - mul.ftz.f32 %f843, %f474, %f794; - mul.ftz.f32 %f844, %f478, %f843; - sub.ftz.f32 %f845, %f842, %f844; - mul.ftz.f32 %f846, %f468, %f806; - fma.rn.ftz.f32 %f847, %f476, %f846, %f845; - mul.ftz.f32 %f848, %f468, %f812; - mul.ftz.f32 %f849, %f475, %f848; - sub.ftz.f32 %f850, %f847, %f849; - mul.ftz.f32 %f851, %f470, %f800; - mul.ftz.f32 %f852, %f476, %f851; - sub.ftz.f32 %f853, %f850, %f852; - mul.ftz.f32 %f854, %f469, %f800; - fma.rn.ftz.f32 %f855, %f475, %f854, %f853; - fma.rn.ftz.f32 %f856, %f812, %f480, %f855; - mul.ftz.f32 %f857, %f806, %f481; - sub.ftz.f32 %f858, %f856, %f857; - fma.rn.ftz.f32 %f859, %f830, %f484, %f858; - mul.ftz.f32 %f860, %f824, %f485; - sub.ftz.f32 %f861, %f859, %f860; - mul.ftz.f32 %f862, %f830, %f482; - sub.ftz.f32 %f863, %f861, %f862; - fma.rn.ftz.f32 %f864, %f824, %f483, %f863; - mul.ftz.f32 %f865, %f470, %f818; - fma.rn.ftz.f32 %f866, %f479, %f865, %f864; - mul.ftz.f32 %f867, %f469, %f818; - mul.ftz.f32 %f868, %f478, %f867; - sub.ftz.f32 %f869, %f866, %f868; - .loc 17 335 0 - add.ftz.f32 %f870, %f616, %f616; - div.approx.ftz.f32 %f871, %f622, %f870; - add.ftz.f32 %f872, %f778, %f779; - mul.ftz.f32 %f873, %f871, %f872; - .loc 17 336 0 - add.ftz.f32 %f874, %f494, %f494; - div.approx.ftz.f32 %f875, %f622, %f874; - mul.ftz.f32 %f876, %f869, %f875; - sub.ftz.f32 %f877, %f873, %f876; - .loc 17 337 0 - mul.ftz.f32 %f878, %f676, %f778; - fma.rn.ftz.f32 %f879, %f779, %f678, %f878; - sub.ftz.f32 %f880, %f877, %f879; - .loc 17 340 0 - mul.ftz.f32 %f881, %f429, %f429; - mov.f32 %f882, 0f40400000; // 3 - mul.ftz.f32 %f883, %f495, %f882; - mov.f32 %f884, 0f40800000; // 4 - mul.ftz.f32 %f885, %f583, %f884; - mul.ftz.f32 %f886, %f881, %f429; - mov.f32 %f887, 0f3f000000; // 0.5 - mul.ftz.f32 %f888, %f886, %f887; - mul.ftz.f32 %f889, %f888, %f419; - mul.ftz.f32 %f890, %f888, %f423; - mul.ftz.f32 %f891, %f888, %f416; - mov.f32 %f892, 0f40800000; // 4 - mul.ftz.f32 %f893, %f586, %f892; - mul.ftz.f32 %f894, %f889, %f748; - mul.ftz.f32 %f895, %f893, %f748; - fma.rn.ftz.f32 %f896, %f890, %f745, %f894; - fma.rn.ftz.f32 %f897, %f680, %f745, %f895; - mul.ftz.f32 %f898, %f883, %f705; - fma.rn.ftz.f32 %f899, %f891, %f751, %f896; - fma.rn.ftz.f32 %f900, %f885, %f751, %f897; - add.ftz.f32 %f901, %f899, %f283; - mul.ftz.f32 %f902, %f622, %f900; - fma.rn.ftz.f32 %f903, %f594, %f880, %f902; - mul.ftz.f32 %f904, %f901, %f708; - mul.ftz.f32 %f905, %f898, %f903; - sub.ftz.f32 %f906, %f905, %f904; - .loc 17 341 0 - mov.f32 %f907, 0f3f4db6db; // 0.803571 - mul.ftz.f32 %f908, %f495, %f907; - mul.ftz.f32 %f909, %f908, %f730; - mul.ftz.f32 %f910, %f901, %f732; - mul.ftz.f32 %f911, %f909, %f903; - sub.ftz.f32 %f912, %f911, %f910; - .loc 17 344 0 - mul.ftz.f32 %f913, %f657, %f912; - fma.rn.ftz.f32 %f914, %f906, %f654, %f913; - add.ftz.f32 %f270, %f914, %f270; - @!%p3 bra $Lt_0_56322; - .loc 17 346 0 - mov.f32 %f915, %f19; - mul.ftz.f32 %f916, %f277, %f914; - sub.ftz.f32 %f917, %f915, %f916; - mov.f32 %f19, %f917; -$Lt_0_56322: - .loc 17 314 0 - mov.f32 %f918, %f737; - .loc 17 315 0 - mul.ftz.f32 %f919, %f284, %f284; - neg.ftz.f32 %f920, %f919; - mov.f32 %f921, %f920; - .loc 17 316 0 - mul.ftz.f32 %f922, %f358, %f284; - neg.ftz.f32 %f923, %f922; - mov.f32 %f924, %f923; - .loc 17 317 0 - mov.f32 %f925, 0f3f800000; // 1 - sub.ftz.f32 %f926, %f925, %f919; - mov.f32 %f927, %f926; - .loc 17 318 0 - mov.f32 %f928, %f918; - mul.ftz.f32 %f929, %f928, %f282; - mov.f32 %f930, %f929; - .loc 17 319 0 - mul.ftz.f32 %f931, %f282, %f926; - mov.f32 %f932, %f931; - .loc 17 320 0 - mov.f32 %f933, %f924; - mul.ftz.f32 %f934, %f933, %f282; - mov.f32 %f935, %f934; - .loc 17 325 0 - mul.ftz.f32 %f936, %f326, %f931; - mul.ftz.f32 %f937, %f323, %f931; - mul.ftz.f32 %f938, %f325, %f931; - mul.ftz.f32 %f939, %f89, %f931; - mul.ftz.f32 %f940, %f71, %f931; - mul.ftz.f32 %f941, %f79, %f931; - fma.rn.ftz.f32 %f942, %f929, %f308, %f936; - fma.rn.ftz.f32 %f943, %f312, %f929, %f937; - fma.rn.ftz.f32 %f944, %f929, %f310, %f938; - fma.rn.ftz.f32 %f945, %f929, %f70, %f939; - fma.rn.ftz.f32 %f946, %f87, %f929, %f940; - fma.rn.ftz.f32 %f947, %f929, %f76, %f941; - fma.rn.ftz.f32 %f948, %f934, %f334, %f942; - fma.rn.ftz.f32 %f949, %f333, %f934, %f943; - fma.rn.ftz.f32 %f950, %f934, %f335, %f944; - fma.rn.ftz.f32 %f951, %f934, %f80, %f945; - fma.rn.ftz.f32 %f952, %f77, %f934, %f946; - fma.rn.ftz.f32 %f953, %f934, %f91, %f947; - mul.ftz.f32 %f954, %f948, %f670; - mul.ftz.f32 %f955, %f951, %f663; - fma.rn.ftz.f32 %f956, %f668, %f949, %f954; - fma.rn.ftz.f32 %f957, %f661, %f952, %f955; - fma.rn.ftz.f32 %f958, %f672, %f950, %f956; - fma.rn.ftz.f32 %f959, %f665, %f953, %f957; - mul.ftz.f32 %f960, %f760, %f958; - mul.ftz.f32 %f961, %f761, %f959; - sub.ftz.f32 %f962, %f961, %f960; - .loc 17 326 0 - mul.ftz.f32 %f963, %f784, %f958; - mul.ftz.f32 %f964, %f785, %f959; - sub.ftz.f32 %f965, %f964, %f963; - .loc 17 327 0 - mul.ftz.f32 %f966, %f790, %f958; - mul.ftz.f32 %f967, %f791, %f959; - sub.ftz.f32 %f968, %f967, %f966; - .loc 17 328 0 - mul.ftz.f32 %f969, %f796, %f958; - mul.ftz.f32 %f970, %f797, %f959; - sub.ftz.f32 %f971, %f970, %f969; - .loc 17 329 0 - mul.ftz.f32 %f972, %f802, %f958; - mul.ftz.f32 %f973, %f803, %f959; - sub.ftz.f32 %f974, %f973, %f972; - .loc 17 330 0 - mul.ftz.f32 %f975, %f808, %f958; - mul.ftz.f32 %f976, %f809, %f959; - sub.ftz.f32 %f977, %f976, %f975; - .loc 17 331 0 - mul.ftz.f32 %f978, %f814, %f958; - mul.ftz.f32 %f979, %f815, %f959; - sub.ftz.f32 %f980, %f979, %f978; - .loc 17 332 0 - mul.ftz.f32 %f981, %f820, %f958; - mul.ftz.f32 %f982, %f821, %f959; - sub.ftz.f32 %f983, %f982, %f981; - .loc 17 333 0 - mul.ftz.f32 %f984, %f826, %f958; - mul.ftz.f32 %f985, %f827, %f959; - sub.ftz.f32 %f986, %f985, %f984; - .loc 17 334 0 - mul.ftz.f32 %f987, %f479, %f962; - mul.ftz.f32 %f988, %f475, %f987; - mul.ftz.f32 %f989, %f478, %f962; - mul.ftz.f32 %f990, %f476, %f989; - sub.ftz.f32 %f991, %f990, %f988; - mul.ftz.f32 %f992, %f477, %f965; - mul.ftz.f32 %f993, %f476, %f992; - sub.ftz.f32 %f994, %f991, %f993; - mul.ftz.f32 %f995, %f477, %f968; - fma.rn.ftz.f32 %f996, %f475, %f995, %f994; - mul.ftz.f32 %f997, %f474, %f965; - fma.rn.ftz.f32 %f998, %f479, %f997, %f996; - mul.ftz.f32 %f999, %f474, %f968; - mul.ftz.f32 %f1000, %f478, %f999; - sub.ftz.f32 %f1001, %f998, %f1000; - mul.ftz.f32 %f1002, %f468, %f974; - fma.rn.ftz.f32 %f1003, %f476, %f1002, %f1001; - mul.ftz.f32 %f1004, %f468, %f977; - mul.ftz.f32 %f1005, %f475, %f1004; - sub.ftz.f32 %f1006, %f1003, %f1005; - mul.ftz.f32 %f1007, %f470, %f971; - mul.ftz.f32 %f1008, %f476, %f1007; - sub.ftz.f32 %f1009, %f1006, %f1008; - mul.ftz.f32 %f1010, %f469, %f971; - fma.rn.ftz.f32 %f1011, %f475, %f1010, %f1009; - fma.rn.ftz.f32 %f1012, %f977, %f480, %f1011; - mul.ftz.f32 %f1013, %f974, %f481; - sub.ftz.f32 %f1014, %f1012, %f1013; - fma.rn.ftz.f32 %f1015, %f986, %f484, %f1014; - mul.ftz.f32 %f1016, %f983, %f485; - sub.ftz.f32 %f1017, %f1015, %f1016; - mul.ftz.f32 %f1018, %f986, %f482; - sub.ftz.f32 %f1019, %f1017, %f1018; - fma.rn.ftz.f32 %f1020, %f983, %f483, %f1019; - mul.ftz.f32 %f1021, %f470, %f980; - fma.rn.ftz.f32 %f1022, %f479, %f1021, %f1020; - mul.ftz.f32 %f1023, %f469, %f980; - mul.ftz.f32 %f1024, %f478, %f1023; - sub.ftz.f32 %f1025, %f1022, %f1024; - .loc 17 335 0 - add.ftz.f32 %f1026, %f958, %f959; - mul.ftz.f32 %f1027, %f871, %f1026; - .loc 17 336 0 - mul.ftz.f32 %f1028, %f1025, %f875; - sub.ftz.f32 %f1029, %f1027, %f1028; - .loc 17 337 0 - mul.ftz.f32 %f1030, %f676, %f958; - fma.rn.ftz.f32 %f1031, %f959, %f678, %f1030; - sub.ftz.f32 %f1032, %f1029, %f1031; - .loc 17 340 0 - mul.ftz.f32 %f1033, %f889, %f931; - mul.ftz.f32 %f1034, %f893, %f931; - fma.rn.ftz.f32 %f1035, %f890, %f929, %f1033; - fma.rn.ftz.f32 %f1036, %f680, %f929, %f1034; - fma.rn.ftz.f32 %f1037, %f891, %f934, %f1035; - fma.rn.ftz.f32 %f1038, %f885, %f934, %f1036; - add.ftz.f32 %f1039, %f1037, %f284; - mul.ftz.f32 %f1040, %f622, %f1038; - fma.rn.ftz.f32 %f1041, %f594, %f1032, %f1040; - mul.ftz.f32 %f1042, %f1039, %f708; - mul.ftz.f32 %f1043, %f898, %f1041; - sub.ftz.f32 %f1044, %f1043, %f1042; - .loc 17 341 0 - mul.ftz.f32 %f1045, %f1039, %f732; - mul.ftz.f32 %f1046, %f909, %f1041; - sub.ftz.f32 %f1047, %f1046, %f1045; - .loc 17 348 0 - mul.ftz.f32 %f1048, %f657, %f1047; - fma.rn.ftz.f32 %f914, %f1044, %f654, %f1048; - add.ftz.f32 %f269, %f914, %f269; - @!%p3 bra $Lt_0_59906; - .loc 17 350 0 - mov.f32 %f1049, %f21; - mul.ftz.f32 %f1050, %f276, %f914; - sub.ftz.f32 %f1051, %f1049, %f1050; - mov.f32 %f21, %f1051; - .loc 17 351 0 - mov.f32 %f1052, %f25; - mul.ftz.f32 %f1053, %f277, %f914; - sub.ftz.f32 %f1054, %f1052, %f1053; - mov.f32 %f25, %f1054; -$Lt_0_59906: - .loc 17 314 0 - mov.f32 %f1055, %f740; - .loc 17 315 0 - mov.f32 %f1056, %f923; - .loc 17 316 0 - mul.ftz.f32 %f1057, %f358, %f358; - neg.ftz.f32 %f1058, %f1057; - mov.f32 %f1059, %f1058; - .loc 17 317 0 - mov.f32 %f1060, 0f3f800000; // 1 - sub.ftz.f32 %f1061, %f1060, %f1057; - mov.f32 %f1062, %f1061; - .loc 17 318 0 - mov.f32 %f1063, %f1055; - mul.ftz.f32 %f1064, %f1063, %f282; - mov.f32 %f1065, %f1064; - .loc 17 319 0 - mov.f32 %f1066, %f1056; - mul.ftz.f32 %f1067, %f1066, %f282; - mov.f32 %f1068, %f1067; - .loc 17 320 0 - mul.ftz.f32 %f1069, %f282, %f1061; - mov.f32 %f1070, %f1069; - .loc 17 325 0 - mul.ftz.f32 %f1071, %f71, %f1067; - mul.ftz.f32 %f1072, %f79, %f1067; - mul.ftz.f32 %f1073, %f323, %f1067; - mul.ftz.f32 %f1074, %f325, %f1067; - fma.rn.ftz.f32 %f1075, %f87, %f1064, %f1071; - mul.ftz.f32 %f1076, %f89, %f1067; - fma.rn.ftz.f32 %f1077, %f1064, %f76, %f1072; - fma.rn.ftz.f32 %f1078, %f312, %f1064, %f1073; - mul.ftz.f32 %f1079, %f326, %f1067; - fma.rn.ftz.f32 %f1080, %f1064, %f310, %f1074; - fma.rn.ftz.f32 %f1081, %f1064, %f70, %f1076; - fma.rn.ftz.f32 %f1082, %f1064, %f308, %f1079; - fma.rn.ftz.f32 %f1083, %f1069, %f334, %f1082; - fma.rn.ftz.f32 %f1084, %f333, %f1069, %f1078; - fma.rn.ftz.f32 %f1085, %f1069, %f335, %f1080; - fma.rn.ftz.f32 %f1086, %f1069, %f80, %f1081; - fma.rn.ftz.f32 %f1087, %f77, %f1069, %f1075; - fma.rn.ftz.f32 %f1088, %f1069, %f91, %f1077; - mul.ftz.f32 %f1089, %f1083, %f670; - mul.ftz.f32 %f1090, %f1086, %f663; - fma.rn.ftz.f32 %f1091, %f668, %f1084, %f1089; - fma.rn.ftz.f32 %f1092, %f661, %f1087, %f1090; - fma.rn.ftz.f32 %f1093, %f672, %f1085, %f1091; - fma.rn.ftz.f32 %f1094, %f665, %f1088, %f1092; - mul.ftz.f32 %f1095, %f760, %f1093; - mul.ftz.f32 %f1096, %f761, %f1094; - sub.ftz.f32 %f1097, %f1096, %f1095; - .loc 17 326 0 - mul.ftz.f32 %f1098, %f784, %f1093; - mul.ftz.f32 %f1099, %f785, %f1094; - sub.ftz.f32 %f1100, %f1099, %f1098; - .loc 17 327 0 - mul.ftz.f32 %f1101, %f790, %f1093; - mul.ftz.f32 %f1102, %f791, %f1094; - sub.ftz.f32 %f1103, %f1102, %f1101; - .loc 17 328 0 - mul.ftz.f32 %f1104, %f796, %f1093; - mul.ftz.f32 %f1105, %f797, %f1094; - sub.ftz.f32 %f1106, %f1105, %f1104; - .loc 17 329 0 - mul.ftz.f32 %f1107, %f802, %f1093; - mul.ftz.f32 %f1108, %f803, %f1094; - sub.ftz.f32 %f1109, %f1108, %f1107; - .loc 17 330 0 - mul.ftz.f32 %f1110, %f808, %f1093; - mul.ftz.f32 %f1111, %f809, %f1094; - sub.ftz.f32 %f1112, %f1111, %f1110; - .loc 17 331 0 - mul.ftz.f32 %f1113, %f814, %f1093; - mul.ftz.f32 %f1114, %f815, %f1094; - sub.ftz.f32 %f1115, %f1114, %f1113; - .loc 17 332 0 - mul.ftz.f32 %f1116, %f820, %f1093; - mul.ftz.f32 %f1117, %f821, %f1094; - sub.ftz.f32 %f1118, %f1117, %f1116; - .loc 17 333 0 - mul.ftz.f32 %f1119, %f826, %f1093; - mul.ftz.f32 %f1120, %f827, %f1094; - sub.ftz.f32 %f1121, %f1120, %f1119; - .loc 17 334 0 - mul.ftz.f32 %f1122, %f479, %f1097; - mul.ftz.f32 %f1123, %f475, %f1122; - mul.ftz.f32 %f1124, %f478, %f1097; - mul.ftz.f32 %f1125, %f476, %f1124; - sub.ftz.f32 %f1126, %f1125, %f1123; - mul.ftz.f32 %f1127, %f477, %f1100; - mul.ftz.f32 %f1128, %f476, %f1127; - sub.ftz.f32 %f1129, %f1126, %f1128; - mul.ftz.f32 %f1130, %f477, %f1103; - fma.rn.ftz.f32 %f1131, %f475, %f1130, %f1129; - mul.ftz.f32 %f1132, %f474, %f1100; - fma.rn.ftz.f32 %f1133, %f479, %f1132, %f1131; - mul.ftz.f32 %f1134, %f474, %f1103; - mul.ftz.f32 %f1135, %f478, %f1134; - sub.ftz.f32 %f1136, %f1133, %f1135; - mul.ftz.f32 %f1137, %f468, %f1109; - fma.rn.ftz.f32 %f1138, %f476, %f1137, %f1136; - mul.ftz.f32 %f1139, %f468, %f1112; - mul.ftz.f32 %f1140, %f475, %f1139; - sub.ftz.f32 %f1141, %f1138, %f1140; - mul.ftz.f32 %f1142, %f470, %f1106; - mul.ftz.f32 %f1143, %f476, %f1142; - sub.ftz.f32 %f1144, %f1141, %f1143; - mul.ftz.f32 %f1145, %f469, %f1106; - fma.rn.ftz.f32 %f1146, %f475, %f1145, %f1144; - fma.rn.ftz.f32 %f1147, %f1112, %f480, %f1146; - mul.ftz.f32 %f1148, %f1109, %f481; - sub.ftz.f32 %f1149, %f1147, %f1148; - fma.rn.ftz.f32 %f1150, %f1121, %f484, %f1149; - mul.ftz.f32 %f1151, %f1118, %f485; - sub.ftz.f32 %f1152, %f1150, %f1151; - mul.ftz.f32 %f1153, %f1121, %f482; - sub.ftz.f32 %f1154, %f1152, %f1153; - fma.rn.ftz.f32 %f1155, %f1118, %f483, %f1154; - mul.ftz.f32 %f1156, %f470, %f1115; - fma.rn.ftz.f32 %f1157, %f479, %f1156, %f1155; - mul.ftz.f32 %f1158, %f469, %f1115; - mul.ftz.f32 %f1159, %f478, %f1158; - sub.ftz.f32 %f1160, %f1157, %f1159; - .loc 17 335 0 - add.ftz.f32 %f1161, %f1093, %f1094; - mul.ftz.f32 %f1162, %f871, %f1161; - .loc 17 336 0 - mul.ftz.f32 %f1163, %f1160, %f875; - sub.ftz.f32 %f1164, %f1162, %f1163; - .loc 17 337 0 - mul.ftz.f32 %f1165, %f676, %f1093; - fma.rn.ftz.f32 %f1166, %f1094, %f678, %f1165; - sub.ftz.f32 %f1167, %f1164, %f1166; - .loc 17 340 0 - mul.ftz.f32 %f1168, %f889, %f1067; - mul.ftz.f32 %f1169, %f893, %f1067; - fma.rn.ftz.f32 %f1170, %f890, %f1064, %f1168; - fma.rn.ftz.f32 %f1171, %f680, %f1064, %f1169; - fma.rn.ftz.f32 %f1172, %f891, %f1069, %f1170; - fma.rn.ftz.f32 %f1173, %f885, %f1069, %f1171; - add.ftz.f32 %f1174, %f1172, %f358; - mul.ftz.f32 %f1175, %f622, %f1173; - fma.rn.ftz.f32 %f1176, %f594, %f1167, %f1175; - mul.ftz.f32 %f1177, %f1174, %f708; - mul.ftz.f32 %f1178, %f898, %f1176; - sub.ftz.f32 %f1179, %f1178, %f1177; - .loc 17 341 0 - mul.ftz.f32 %f1180, %f1174, %f732; - mul.ftz.f32 %f1181, %f909, %f1176; - sub.ftz.f32 %f1182, %f1181, %f1180; - .loc 17 354 0 - mul.ftz.f32 %f1183, %f657, %f1182; - fma.rn.ftz.f32 %f914, %f1179, %f654, %f1183; - add.ftz.f32 %f268, %f914, %f268; - @!%p3 bra $Lt_0_62978; - .loc 17 356 0 - mov.f32 %f1184, %f23; - mul.ftz.f32 %f1185, %f278, %f914; - sub.ftz.f32 %f1186, %f1184, %f1185; - mov.f32 %f23, %f1186; - .loc 17 357 0 - mov.f32 %f1187, %f27; - mul.ftz.f32 %f1188, %f277, %f914; - sub.ftz.f32 %f1189, %f1187, %f1188; - mov.f32 %f27, %f1189; - .loc 17 358 0 - mul.ftz.f32 %f1190, %f276, %f914; - sub.ftz.f32 %f28, %f28, %f1190; - mov.f32 %f29, %f28; -$Lt_0_62978: - .loc 17 381 0 - mul.ftz.f32 %f1191, %f80, %f284; - mul.ftz.f32 %f1192, %f78, %f284; - mul.ftz.f32 %f1193, %f91, %f284; - neg.ftz.f32 %f1194, %f1191; - mov.f32 %f1195, 0f00000000; // 0 - fma.rn.ftz.f32 %f1196, %f1195, %f283, %f1192; - neg.ftz.f32 %f1197, %f1193; - mov.f32 %f1198, 0f00000000; // 0 - fma.rn.ftz.f32 %f1199, %f283, %f1198, %f1194; - fma.rn.ftz.f32 %f1200, %f71, %f358, %f1196; - mov.f32 %f1201, 0f00000000; // 0 - fma.rn.ftz.f32 %f1202, %f283, %f1201, %f1197; - fma.rn.ftz.f32 %f1203, %f358, %f89, %f1199; - fma.rn.ftz.f32 %f1204, %f358, %f79, %f1202; - mul.ftz.f32 %f1205, %f1203, %f662; - neg.ftz.f32 %f1206, %f1205; - fma.rn.ftz.f32 %f1207, %f661, %f1200, %f1206; - fma.rn.ftz.f32 %f1208, %f665, %f1204, %f1207; - mul.ftz.f32 %f1209, %f759, %f1208; - mul.ftz.f32 %f1210, %f783, %f1208; - mul.ftz.f32 %f1211, %f789, %f1208; - mul.ftz.f32 %f1212, %f801, %f1208; - mul.ftz.f32 %f1213, %f807, %f1208; - mul.ftz.f32 %f1214, %f795, %f1208; - mul.ftz.f32 %f1215, %f825, %f1208; - mul.ftz.f32 %f1216, %f819, %f1208; - mul.ftz.f32 %f1217, %f813, %f1208; - neg.ftz.f32 %f1218, %f1209; - neg.ftz.f32 %f1219, %f1210; - neg.ftz.f32 %f1220, %f1211; - neg.ftz.f32 %f1221, %f1212; - neg.ftz.f32 %f1222, %f1213; - neg.ftz.f32 %f1223, %f1214; - neg.ftz.f32 %f1224, %f1215; - neg.ftz.f32 %f1225, %f1216; - neg.ftz.f32 %f1226, %f1217; - fma.rn.ftz.f32 %f1227, %f225, %f445, %f1218; - fma.rn.ftz.f32 %f1228, %f251, %f445, %f1219; - fma.rn.ftz.f32 %f1229, %f227, %f445, %f1220; - fma.rn.ftz.f32 %f1230, %f264, %f445, %f1221; - fma.rn.ftz.f32 %f1231, %f262, %f445, %f1222; - fma.rn.ftz.f32 %f1232, %f252, %f445, %f1223; - fma.rn.ftz.f32 %f1233, %f246, %f445, %f1224; - fma.rn.ftz.f32 %f1234, %f263, %f445, %f1225; - fma.rn.ftz.f32 %f1235, %f227, %f445, %f1226; - mul.ftz.f32 %f1236, %f479, %f1227; - mul.ftz.f32 %f1237, %f475, %f1236; - mul.ftz.f32 %f1238, %f478, %f1227; - mul.ftz.f32 %f1239, %f476, %f1238; - sub.ftz.f32 %f1240, %f1239, %f1237; - mul.ftz.f32 %f1241, %f477, %f1228; - mul.ftz.f32 %f1242, %f476, %f1241; - sub.ftz.f32 %f1243, %f1240, %f1242; - mul.ftz.f32 %f1244, %f477, %f1229; - fma.rn.ftz.f32 %f1245, %f475, %f1244, %f1243; - mul.ftz.f32 %f1246, %f474, %f1228; - fma.rn.ftz.f32 %f1247, %f479, %f1246, %f1245; - mul.ftz.f32 %f1248, %f474, %f1229; - mul.ftz.f32 %f1249, %f478, %f1248; - sub.ftz.f32 %f1250, %f1247, %f1249; - mul.ftz.f32 %f1251, %f468, %f1230; - fma.rn.ftz.f32 %f1252, %f476, %f1251, %f1250; - mul.ftz.f32 %f1253, %f468, %f1231; - mul.ftz.f32 %f1254, %f475, %f1253; - sub.ftz.f32 %f1255, %f1252, %f1254; - mul.ftz.f32 %f1256, %f470, %f1232; - mul.ftz.f32 %f1257, %f476, %f1256; - sub.ftz.f32 %f1258, %f1255, %f1257; - mul.ftz.f32 %f1259, %f469, %f1232; - fma.rn.ftz.f32 %f1260, %f475, %f1259, %f1258; - fma.rn.ftz.f32 %f1261, %f1231, %f480, %f1260; - mul.ftz.f32 %f1262, %f1230, %f481; - sub.ftz.f32 %f1263, %f1261, %f1262; - fma.rn.ftz.f32 %f1264, %f1233, %f484, %f1263; - mul.ftz.f32 %f1265, %f1234, %f485; - sub.ftz.f32 %f1266, %f1264, %f1265; - mul.ftz.f32 %f1267, %f1233, %f482; - sub.ftz.f32 %f1268, %f1266, %f1267; - fma.rn.ftz.f32 %f1269, %f1234, %f483, %f1268; - mul.ftz.f32 %f1270, %f470, %f1235; - fma.rn.ftz.f32 %f1271, %f479, %f1270, %f1269; - mul.ftz.f32 %f1272, %f469, %f1235; - mul.ftz.f32 %f1273, %f478, %f1272; - sub.ftz.f32 %f1274, %f1271, %f1273; - .loc 17 392 0 - mul.ftz.f32 %f1275, %f80, %f586; - mul.ftz.f32 %f1276, %f78, %f586; - mul.ftz.f32 %f1277, %f91, %f586; - mul.ftz.f32 %f1278, %f117, %f893; - mul.ftz.f32 %f1279, %f85, %f893; - mul.ftz.f32 %f1280, %f98, %f893; - neg.ftz.f32 %f1281, %f1275; - neg.ftz.f32 %f1282, %f1277; - mul.ftz.f32 %f1283, %f875, %f1274; - mul.ftz.f32 %f1284, %f889, %f224; - mul.ftz.f32 %f1285, %f889, %f248; - mov.f32 %f1286, 0f00000000; // 0 - fma.rn.ftz.f32 %f1287, %f591, %f1286, %f1281; - mov.f32 %f1288, 0f00000000; // 0 - fma.rn.ftz.f32 %f1289, %f1288, %f591, %f1276; - mov.f32 %f1290, 0f00000000; // 0 - fma.rn.ftz.f32 %f1291, %f591, %f1290, %f1282; - fma.rn.ftz.f32 %f1292, %f188, %f890, %f1284; - mul.ftz.f32 %f1293, %f889, %f257; - fma.rn.ftz.f32 %f1294, %f890, %f169, %f1285; - fma.rn.ftz.f32 %f1295, %f680, %f83, %f1278; - fma.rn.ftz.f32 %f1296, %f113, %f680, %f1279; - fma.rn.ftz.f32 %f1297, %f680, %f93, %f1280; - fma.rn.ftz.f32 %f1298, %f583, %f89, %f1287; - fma.rn.ftz.f32 %f1299, %f71, %f583, %f1289; - fma.rn.ftz.f32 %f1300, %f583, %f79, %f1291; - fma.rn.ftz.f32 %f1301, %f196, %f891, %f1292; - fma.rn.ftz.f32 %f1302, %f890, %f140, %f1293; - fma.rn.ftz.f32 %f1303, %f891, %f214, %f1294; - fma.rn.ftz.f32 %f1304, %f885, %f100, %f1295; - fma.rn.ftz.f32 %f1305, %f885, %f96, %f1296; - fma.rn.ftz.f32 %f1306, %f885, %f120, %f1297; - fma.rn.ftz.f32 %f1307, %f891, %f230, %f1302; - mul.ftz.f32 %f1308, %f1298, %f1304; - mul.ftz.f32 %f1309, %f1307, %f419; - fma.rn.ftz.f32 %f1310, %f1305, %f1299, %f1308; - fma.rn.ftz.f32 %f1311, %f423, %f1301, %f1309; - fma.rn.ftz.f32 %f1312, %f1306, %f1300, %f1310; - fma.rn.ftz.f32 %f1313, %f416, %f1303, %f1311; - mul.ftz.f32 %f1314, %f622, %f1312; - mul.ftz.f32 %f1315, %f1208, %f871; - sub.ftz.f32 %f1316, %f1315, %f1283; - neg.ftz.f32 %f1317, %f1314; - mul.ftz.f32 %f1318, %f1208, %f678; - sub.ftz.f32 %f1319, %f1316, %f1318; - fma.rn.ftz.f32 %f1320, %f594, %f1319, %f1317; - mul.ftz.f32 %f1321, %f1313, %f732; - fma.rn.ftz.f32 %f1322, %f909, %f1320, %f1321; - mul.ftz.f32 %f1323, %f657, %f1322; - mul.ftz.f32 %f1324, %f1313, %f708; - fma.rn.ftz.f32 %f1325, %f898, %f1320, %f1324; - fma.rn.ftz.f32 %f1326, %f1325, %f654, %f1323; - sub.ftz.f32 %f267, %f267, %f1326; - .loc 17 407 0 - mov.f32 %f1327, 0f00000000; // 0 - fma.rn.ftz.f32 %f1328, %f283, %f80, %f1327; - mov.f32 %f1329, 0f00000000; // 0 - fma.rn.ftz.f32 %f1330, %f77, %f283, %f1329; - mov.f32 %f1331, 0f00000000; // 0 - fma.rn.ftz.f32 %f1332, %f283, %f91, %f1331; - fma.rn.ftz.f32 %f1333, %f358, %f72, %f1328; - fma.rn.ftz.f32 %f1334, %f88, %f358, %f1330; - fma.rn.ftz.f32 %f1335, %f358, %f94, %f1332; - mul.ftz.f32 %f1336, %f1333, %f662; - neg.ftz.f32 %f1337, %f1336; - fma.rn.ftz.f32 %f1338, %f661, %f1334, %f1337; - fma.rn.ftz.f32 %f1339, %f665, %f1335, %f1338; - mul.ftz.f32 %f1340, %f759, %f1339; - mul.ftz.f32 %f1341, %f783, %f1339; - mul.ftz.f32 %f1342, %f789, %f1339; - mul.ftz.f32 %f1343, %f801, %f1339; - mul.ftz.f32 %f1344, %f807, %f1339; - mul.ftz.f32 %f1345, %f795, %f1339; - mul.ftz.f32 %f1346, %f825, %f1339; - mul.ftz.f32 %f1347, %f819, %f1339; - mul.ftz.f32 %f1348, %f813, %f1339; - neg.ftz.f32 %f1349, %f1340; - neg.ftz.f32 %f1350, %f1341; - neg.ftz.f32 %f1351, %f1342; - neg.ftz.f32 %f1352, %f1343; - neg.ftz.f32 %f1353, %f1344; - neg.ftz.f32 %f1354, %f1345; - neg.ftz.f32 %f1355, %f1346; - neg.ftz.f32 %f1356, %f1347; - neg.ftz.f32 %f1357, %f1348; - fma.rn.ftz.f32 %f1358, %f226, %f445, %f1349; - fma.rn.ftz.f32 %f1359, %f255, %f445, %f1350; - fma.rn.ftz.f32 %f1360, %f247, %f445, %f1351; - fma.rn.ftz.f32 %f1361, %f184, %f445, %f1352; - fma.rn.ftz.f32 %f1362, %f258, %f445, %f1353; - fma.rn.ftz.f32 %f1363, %f254, %f445, %f1354; - fma.rn.ftz.f32 %f1364, %f249, %f445, %f1355; - fma.rn.ftz.f32 %f1365, %f259, %f445, %f1356; - fma.rn.ftz.f32 %f1366, %f247, %f445, %f1357; - mul.ftz.f32 %f1367, %f479, %f1358; - mul.ftz.f32 %f1368, %f475, %f1367; - mul.ftz.f32 %f1369, %f478, %f1358; - mul.ftz.f32 %f1370, %f476, %f1369; - sub.ftz.f32 %f1371, %f1370, %f1368; - mul.ftz.f32 %f1372, %f477, %f1359; - mul.ftz.f32 %f1373, %f476, %f1372; - sub.ftz.f32 %f1374, %f1371, %f1373; - mul.ftz.f32 %f1375, %f477, %f1360; - fma.rn.ftz.f32 %f1376, %f475, %f1375, %f1374; - mul.ftz.f32 %f1377, %f474, %f1359; - fma.rn.ftz.f32 %f1378, %f479, %f1377, %f1376; - mul.ftz.f32 %f1379, %f474, %f1360; - mul.ftz.f32 %f1380, %f478, %f1379; - sub.ftz.f32 %f1381, %f1378, %f1380; - mul.ftz.f32 %f1382, %f468, %f1361; - fma.rn.ftz.f32 %f1383, %f476, %f1382, %f1381; - mul.ftz.f32 %f1384, %f468, %f1362; - mul.ftz.f32 %f1385, %f475, %f1384; - sub.ftz.f32 %f1386, %f1383, %f1385; - mul.ftz.f32 %f1387, %f470, %f1363; - mul.ftz.f32 %f1388, %f476, %f1387; - sub.ftz.f32 %f1389, %f1386, %f1388; - mul.ftz.f32 %f1390, %f469, %f1363; - fma.rn.ftz.f32 %f1391, %f475, %f1390, %f1389; - fma.rn.ftz.f32 %f1392, %f1362, %f480, %f1391; - mul.ftz.f32 %f1393, %f1361, %f481; - sub.ftz.f32 %f1394, %f1392, %f1393; - fma.rn.ftz.f32 %f1395, %f1364, %f484, %f1394; - mul.ftz.f32 %f1396, %f1365, %f485; - sub.ftz.f32 %f1397, %f1395, %f1396; - mul.ftz.f32 %f1398, %f1364, %f482; - sub.ftz.f32 %f1399, %f1397, %f1398; - fma.rn.ftz.f32 %f1400, %f1365, %f483, %f1399; - mul.ftz.f32 %f1401, %f470, %f1366; - fma.rn.ftz.f32 %f1402, %f479, %f1401, %f1400; - mul.ftz.f32 %f1403, %f469, %f1366; - mul.ftz.f32 %f1404, %f478, %f1403; - sub.ftz.f32 %f1405, %f1402, %f1404; - .loc 17 418 0 - mul.ftz.f32 %f1406, %f889, %f140; - mul.ftz.f32 %f1407, %f889, %f169; - mul.ftz.f32 %f1408, %f875, %f1405; - mul.ftz.f32 %f1409, %f889, %f190; - fma.rn.ftz.f32 %f1410, %f890, %f216, %f1407; - fma.rn.ftz.f32 %f1411, %f191, %f890, %f1409; - fma.rn.ftz.f32 %f1412, %f890, %f232, %f1406; - fma.rn.ftz.f32 %f1413, %f891, %f219, %f1410; - mov.f32 %f1414, 0f00000000; // 0 - fma.rn.ftz.f32 %f1415, %f591, %f80, %f1414; - mov.f32 %f1416, 0f00000000; // 0 - fma.rn.ftz.f32 %f1417, %f77, %f591, %f1416; - mov.f32 %f1418, 0f00000000; // 0 - fma.rn.ftz.f32 %f1419, %f591, %f91, %f1418; - fma.rn.ftz.f32 %f1420, %f192, %f891, %f1411; - fma.rn.ftz.f32 %f1421, %f891, %f236, %f1412; - fma.rn.ftz.f32 %f1422, %f583, %f72, %f1415; - fma.rn.ftz.f32 %f1423, %f88, %f583, %f1417; - fma.rn.ftz.f32 %f1424, %f583, %f94, %f1419; - mul.ftz.f32 %f1425, %f1421, %f419; - fma.rn.ftz.f32 %f1426, %f423, %f1420, %f1425; - mul.ftz.f32 %f1427, %f1422, %f1304; - fma.rn.ftz.f32 %f1428, %f416, %f1413, %f1426; - fma.rn.ftz.f32 %f1429, %f1305, %f1423, %f1427; - fma.rn.ftz.f32 %f1430, %f1306, %f1424, %f1429; - mul.ftz.f32 %f1431, %f622, %f1430; - mul.ftz.f32 %f1432, %f1339, %f871; - sub.ftz.f32 %f1433, %f1432, %f1408; - neg.ftz.f32 %f1434, %f1431; - mul.ftz.f32 %f1435, %f1339, %f678; - sub.ftz.f32 %f1436, %f1433, %f1435; - fma.rn.ftz.f32 %f1437, %f594, %f1436, %f1434; - mul.ftz.f32 %f1438, %f1428, %f732; - fma.rn.ftz.f32 %f1439, %f909, %f1437, %f1438; - mul.ftz.f32 %f1440, %f657, %f1439; - mul.ftz.f32 %f1441, %f1428, %f708; - fma.rn.ftz.f32 %f1442, %f898, %f1437, %f1441; - fma.rn.ftz.f32 %f1443, %f1442, %f654, %f1440; - sub.ftz.f32 %f266, %f266, %f1443; - .loc 17 433 0 - mul.ftz.f32 %f1444, %f70, %f284; - mul.ftz.f32 %f1445, %f87, %f284; - mul.ftz.f32 %f1446, %f76, %f284; - fma.rn.ftz.f32 %f1447, %f283, %f90, %f1444; - fma.rn.ftz.f32 %f1448, %f86, %f283, %f1445; - fma.rn.ftz.f32 %f1449, %f283, %f81, %f1446; - mov.f32 %f1450, 0f00000000; // 0 - fma.rn.ftz.f32 %f1451, %f358, %f1450, %f1447; - mov.f32 %f1452, 0f00000000; // 0 - fma.rn.ftz.f32 %f1453, %f1452, %f358, %f1448; - mov.f32 %f1454, 0f00000000; // 0 - fma.rn.ftz.f32 %f1455, %f358, %f1454, %f1449; - mul.ftz.f32 %f1456, %f1451, %f662; - neg.ftz.f32 %f1457, %f1456; - fma.rn.ftz.f32 %f1458, %f661, %f1453, %f1457; - fma.rn.ftz.f32 %f1459, %f665, %f1455, %f1458; - mul.ftz.f32 %f1460, %f759, %f1459; - mul.ftz.f32 %f1461, %f783, %f1459; - mul.ftz.f32 %f1462, %f789, %f1459; - mul.ftz.f32 %f1463, %f801, %f1459; - mul.ftz.f32 %f1464, %f807, %f1459; - mul.ftz.f32 %f1465, %f795, %f1459; - mul.ftz.f32 %f1466, %f825, %f1459; - mul.ftz.f32 %f1467, %f819, %f1459; - mul.ftz.f32 %f1468, %f813, %f1459; - neg.ftz.f32 %f1469, %f1460; - neg.ftz.f32 %f1470, %f1461; - neg.ftz.f32 %f1471, %f1462; - neg.ftz.f32 %f1472, %f1463; - neg.ftz.f32 %f1473, %f1464; - neg.ftz.f32 %f1474, %f1465; - neg.ftz.f32 %f1475, %f1466; - neg.ftz.f32 %f1476, %f1467; - neg.ftz.f32 %f1477, %f1468; - fma.rn.ftz.f32 %f1478, %f243, %f445, %f1469; - fma.rn.ftz.f32 %f1479, %f260, %f445, %f1470; - fma.rn.ftz.f32 %f1480, %f250, %f445, %f1471; - fma.rn.ftz.f32 %f1481, %f253, %f445, %f1472; - fma.rn.ftz.f32 %f1482, %f244, %f445, %f1473; - fma.rn.ftz.f32 %f1483, %f261, %f445, %f1474; - fma.rn.ftz.f32 %f1484, %f212, %f445, %f1475; - fma.rn.ftz.f32 %f1485, %f245, %f445, %f1476; - fma.rn.ftz.f32 %f1486, %f250, %f445, %f1477; - mul.ftz.f32 %f1487, %f479, %f1478; - mul.ftz.f32 %f1488, %f475, %f1487; - mul.ftz.f32 %f1489, %f478, %f1478; - mul.ftz.f32 %f1490, %f476, %f1489; - sub.ftz.f32 %f1491, %f1490, %f1488; - mul.ftz.f32 %f1492, %f477, %f1479; - mul.ftz.f32 %f1493, %f476, %f1492; - sub.ftz.f32 %f1494, %f1491, %f1493; - mul.ftz.f32 %f1495, %f477, %f1480; - fma.rn.ftz.f32 %f1496, %f475, %f1495, %f1494; - mul.ftz.f32 %f1497, %f474, %f1479; - fma.rn.ftz.f32 %f1498, %f479, %f1497, %f1496; - mul.ftz.f32 %f1499, %f474, %f1480; - mul.ftz.f32 %f1500, %f478, %f1499; - sub.ftz.f32 %f1501, %f1498, %f1500; - mul.ftz.f32 %f1502, %f468, %f1481; - fma.rn.ftz.f32 %f1503, %f476, %f1502, %f1501; - mul.ftz.f32 %f1504, %f468, %f1482; - mul.ftz.f32 %f1505, %f475, %f1504; - sub.ftz.f32 %f1506, %f1503, %f1505; - mul.ftz.f32 %f1507, %f470, %f1483; - mul.ftz.f32 %f1508, %f476, %f1507; - sub.ftz.f32 %f1509, %f1506, %f1508; - mul.ftz.f32 %f1510, %f469, %f1483; - fma.rn.ftz.f32 %f1511, %f475, %f1510, %f1509; - fma.rn.ftz.f32 %f1512, %f1482, %f480, %f1511; - mul.ftz.f32 %f1513, %f1481, %f481; - sub.ftz.f32 %f1514, %f1512, %f1513; - fma.rn.ftz.f32 %f1515, %f1484, %f484, %f1514; - mul.ftz.f32 %f1516, %f1485, %f485; - sub.ftz.f32 %f1517, %f1515, %f1516; - mul.ftz.f32 %f1518, %f1484, %f482; - sub.ftz.f32 %f1519, %f1517, %f1518; - fma.rn.ftz.f32 %f1520, %f1485, %f483, %f1519; - mul.ftz.f32 %f1521, %f470, %f1486; - fma.rn.ftz.f32 %f1522, %f479, %f1521, %f1520; - mul.ftz.f32 %f1523, %f469, %f1486; - mul.ftz.f32 %f1524, %f478, %f1523; - sub.ftz.f32 %f1525, %f1522, %f1524; - .loc 17 444 0 - mul.ftz.f32 %f1526, %f70, %f586; - mul.ftz.f32 %f1527, %f87, %f586; - mul.ftz.f32 %f1528, %f76, %f586; - mul.ftz.f32 %f1529, %f875, %f1525; - mul.ftz.f32 %f1530, %f889, %f193; - mul.ftz.f32 %f1531, %f889, %f213; - fma.rn.ftz.f32 %f1532, %f211, %f890, %f1530; - mul.ftz.f32 %f1533, %f889, %f228; - fma.rn.ftz.f32 %f1534, %f890, %f220, %f1531; - fma.rn.ftz.f32 %f1535, %f591, %f90, %f1526; - fma.rn.ftz.f32 %f1536, %f86, %f591, %f1527; - fma.rn.ftz.f32 %f1537, %f591, %f81, %f1528; - fma.rn.ftz.f32 %f1538, %f190, %f891, %f1532; - fma.rn.ftz.f32 %f1539, %f890, %f239, %f1533; - fma.rn.ftz.f32 %f1540, %f891, %f169, %f1534; - mov.f32 %f1541, 0f00000000; // 0 - fma.rn.ftz.f32 %f1542, %f583, %f1541, %f1535; - mov.f32 %f1543, 0f00000000; // 0 - fma.rn.ftz.f32 %f1544, %f1543, %f583, %f1536; - mov.f32 %f1545, 0f00000000; // 0 - fma.rn.ftz.f32 %f1546, %f583, %f1545, %f1537; - fma.rn.ftz.f32 %f1547, %f891, %f140, %f1539; - mul.ftz.f32 %f1548, %f1547, %f419; - mul.ftz.f32 %f1549, %f1542, %f1304; - fma.rn.ftz.f32 %f1550, %f423, %f1538, %f1548; - fma.rn.ftz.f32 %f1551, %f1305, %f1544, %f1549; - fma.rn.ftz.f32 %f1552, %f416, %f1540, %f1550; - fma.rn.ftz.f32 %f1553, %f1306, %f1546, %f1551; - mul.ftz.f32 %f1554, %f622, %f1553; - mul.ftz.f32 %f1555, %f1459, %f871; - sub.ftz.f32 %f1556, %f1555, %f1529; - neg.ftz.f32 %f1557, %f1554; - mul.ftz.f32 %f1558, %f1459, %f678; - sub.ftz.f32 %f1559, %f1556, %f1558; - fma.rn.ftz.f32 %f1560, %f594, %f1559, %f1557; - mul.ftz.f32 %f1561, %f1552, %f732; - fma.rn.ftz.f32 %f1562, %f909, %f1560, %f1561; - mul.ftz.f32 %f1563, %f657, %f1562; - mul.ftz.f32 %f1564, %f1552, %f708; - fma.rn.ftz.f32 %f1565, %f898, %f1560, %f1564; - fma.rn.ftz.f32 %f1566, %f1565, %f654, %f1563; - sub.ftz.f32 %f265, %f265, %f1566; - mul.lo.s32 %r33, %r14, %r1; - cvt.s64.s32 %rd49, %r33; - mul.wide.s32 %rd50, %r33, 4; - add.u64 %rd25, %rd25, %rd50; - setp.gt.u64 %p22, %rd28, %rd25; - @%p22 bra $Lt_0_46338; - bra.uni $Lt_0_45826; -$Lt_0_69634: - mov.f32 %f265, 0f00000000; // 0 - mov.f32 %f266, 0f00000000; // 0 - mov.f32 %f267, 0f00000000; // 0 - mov.f32 %f268, 0f00000000; // 0 - mov.f32 %f269, 0f00000000; // 0 - mov.f32 %f270, 0f00000000; // 0 - mov.f32 %f271, 0f00000000; // 0 -$Lt_0_45826: - mov.u32 %r34, 1; - setp.le.s32 %p23, %r1, %r34; - @%p23 bra $Lt_0_65794; - .loc 17 448 0 - mov.u64 %rd51, __cuda___cuda_local_var_33303_55_non_const_red_acc136; - cvt.s64.s32 %rd52, %r2; - mul.wide.s32 %rd53, %r2, 4; - add.u64 %rd54, %rd51, %rd53; - mov.f32 %f1567, %f270; - st.shared.f32 [%rd54+0], %f1567; - mov.f32 %f1568, %f269; - st.shared.f32 [%rd54+512], %f1568; - mov.f32 %f1569, %f268; - st.shared.f32 [%rd54+1024], %f1569; - mov.f32 %f1570, %f267; - st.shared.f32 [%rd54+1536], %f1570; - mov.f32 %f1571, %f266; - st.shared.f32 [%rd54+2048], %f1571; - mov.f32 %f1572, %f265; - st.shared.f32 [%rd54+2560], %f1572; - shr.s32 %r35, %r1, 31; - mov.s32 %r36, 1; - and.b32 %r37, %r35, %r36; - add.s32 %r38, %r37, %r1; - shr.s32 %r39, %r38, 1; - mov.s32 %r40, %r39; - mov.u32 %r41, 0; - setp.ne.u32 %p24, %r39, %r41; - @!%p24 bra $Lt_0_64258; -$Lt_0_64770: - setp.ge.u32 %p25, %r16, %r40; - @%p25 bra $Lt_0_65026; - add.u32 %r42, %r2, %r40; - cvt.u64.u32 %rd55, %r42; - mul.wide.u32 %rd56, %r42, 4; - add.u64 %rd57, %rd51, %rd56; - ld.shared.f32 %f1573, [%rd57+0]; - add.ftz.f32 %f1567, %f1573, %f1567; - st.shared.f32 [%rd54+0], %f1567; - ld.shared.f32 %f1574, [%rd57+512]; - add.ftz.f32 %f1568, %f1574, %f1568; - st.shared.f32 [%rd54+512], %f1568; - ld.shared.f32 %f1575, [%rd57+1024]; - add.ftz.f32 %f1569, %f1575, %f1569; - st.shared.f32 [%rd54+1024], %f1569; - ld.shared.f32 %f1576, [%rd57+1536]; - add.ftz.f32 %f1570, %f1576, %f1570; - st.shared.f32 [%rd54+1536], %f1570; - ld.shared.f32 %f1577, [%rd57+2048]; - add.ftz.f32 %f1571, %f1577, %f1571; - st.shared.f32 [%rd54+2048], %f1571; - ld.shared.f32 %f1578, [%rd57+2560]; - add.ftz.f32 %f1572, %f1578, %f1572; - st.shared.f32 [%rd54+2560], %f1572; -$Lt_0_65026: - shr.u32 %r40, %r40, 1; - mov.u32 %r43, 0; - setp.ne.u32 %p26, %r40, %r43; - @%p26 bra $Lt_0_64770; -$Lt_0_64258: - mov.f32 %f270, %f1567; - mov.f32 %f269, %f1568; - mov.f32 %f268, %f1569; - mov.f32 %f267, %f1570; - mov.f32 %f266, %f1571; - mov.f32 %f265, %f1572; - ld.param.s32 %r44, [__cudaparm_kernel_ellipsoid_eflag]; - mov.s32 %r45, 0; - set.gt.u32.s32 %r46, %r44, %r45; - neg.s32 %r47, %r46; - ld.param.s32 %r48, [__cudaparm_kernel_ellipsoid_vflag]; - mov.s32 %r49, 0; - set.gt.u32.s32 %r50, %r48, %r49; - neg.s32 %r51, %r50; - or.b32 %r52, %r47, %r51; - mov.u32 %r53, 0; - setp.eq.s32 %p27, %r52, %r53; - @%p27 bra $Lt_0_65794; - mov.f32 %f1567, %f19; - st.shared.f32 [%rd54+0], %f1567; - mov.f32 %f1568, %f21; - st.shared.f32 [%rd54+512], %f1568; - mov.f32 %f1569, %f23; - st.shared.f32 [%rd54+1024], %f1569; - mov.f32 %f1570, %f25; - st.shared.f32 [%rd54+1536], %f1570; - mov.f32 %f1571, %f27; - st.shared.f32 [%rd54+2048], %f1571; - mov.f32 %f1572, %f28; - st.shared.f32 [%rd54+2560], %f1572; - mov.f32 %f1579, %f271; - st.shared.f32 [%rd54+3072], %f1579; - mov.s32 %r54, %r39; - @!%p24 bra $Lt_0_66306; -$Lt_0_66818: - setp.ge.u32 %p28, %r16, %r54; - @%p28 bra $Lt_0_67074; - add.u32 %r55, %r2, %r54; - cvt.u64.u32 %rd58, %r55; - mul.wide.u32 %rd59, %r55, 4; - add.u64 %rd60, %rd51, %rd59; - ld.shared.f32 %f1580, [%rd60+0]; - add.ftz.f32 %f1567, %f1580, %f1567; - st.shared.f32 [%rd54+0], %f1567; - ld.shared.f32 %f1581, [%rd60+512]; - add.ftz.f32 %f1568, %f1581, %f1568; - st.shared.f32 [%rd54+512], %f1568; - ld.shared.f32 %f1582, [%rd60+1024]; - add.ftz.f32 %f1569, %f1582, %f1569; - st.shared.f32 [%rd54+1024], %f1569; - ld.shared.f32 %f1583, [%rd60+1536]; - add.ftz.f32 %f1570, %f1583, %f1570; - st.shared.f32 [%rd54+1536], %f1570; - ld.shared.f32 %f1584, [%rd60+2048]; - add.ftz.f32 %f1571, %f1584, %f1571; - st.shared.f32 [%rd54+2048], %f1571; - ld.shared.f32 %f1585, [%rd60+2560]; - add.ftz.f32 %f1572, %f1585, %f1572; - st.shared.f32 [%rd54+2560], %f1572; - ld.shared.f32 %f1586, [%rd60+3072]; - add.ftz.f32 %f1579, %f1586, %f1579; - st.shared.f32 [%rd54+3072], %f1579; -$Lt_0_67074: - shr.u32 %r54, %r54, 1; - mov.u32 %r56, 0; - setp.ne.u32 %p29, %r54, %r56; - @%p29 bra $Lt_0_66818; -$Lt_0_66306: - mov.f32 %f19, %f1567; - mov.f32 %f21, %f1568; - mov.f32 %f23, %f1569; - mov.f32 %f25, %f1570; - mov.f32 %f27, %f1571; - mov.f32 %f29, %f1572; - mov.f32 %f271, %f1579; -$Lt_0_65794: -$Lt_0_63746: - mov.u32 %r57, 0; - setp.ne.s32 %p30, %r16, %r57; - @%p30 bra $Lt_0_67842; - ld.param.u64 %rd61, [__cudaparm_kernel_ellipsoid_engv]; - add.u64 %rd62, %rd61, %rd3; - ld.param.s32 %r58, [__cudaparm_kernel_ellipsoid_astride]; - ld.param.s32 %r59, [__cudaparm_kernel_ellipsoid_eflag]; - mov.u32 %r60, 0; - setp.le.s32 %p31, %r59, %r60; - @%p31 bra $Lt_0_68354; - st.global.f32 [%rd62+0], %f271; - cvt.s64.s32 %rd63, %r58; - mul.wide.s32 %rd64, %r58, 4; - add.u64 %rd62, %rd62, %rd64; -$Lt_0_68354: - ld.param.s32 %r61, [__cudaparm_kernel_ellipsoid_vflag]; - mov.u32 %r62, 0; - setp.le.s32 %p32, %r61, %r62; - @%p32 bra $Lt_0_68866; - mov.f32 %f1587, %f19; - st.global.f32 [%rd62+0], %f1587; - cvt.s64.s32 %rd65, %r58; - mul.wide.s32 %rd66, %r58, 4; - add.u64 %rd67, %rd66, %rd62; - mov.f32 %f1588, %f21; - st.global.f32 [%rd67+0], %f1588; - add.u64 %rd68, %rd66, %rd67; - mov.f32 %f1589, %f23; - st.global.f32 [%rd68+0], %f1589; - add.u64 %rd69, %rd66, %rd68; - mov.f32 %f1590, %f25; - st.global.f32 [%rd69+0], %f1590; - add.u64 %rd62, %rd66, %rd69; - mov.f32 %f1591, %f27; - st.global.f32 [%rd62+0], %f1591; - mov.f32 %f1592, %f29; - add.u64 %rd70, %rd66, %rd62; - st.global.f32 [%rd70+0], %f1592; -$Lt_0_68866: - ld.param.u64 %rd71, [__cudaparm_kernel_ellipsoid_ans]; - mul.lo.u64 %rd72, %rd2, 16; - add.u64 %rd73, %rd71, %rd72; - mov.f32 %f1593, %f1594; - st.global.v4.f32 [%rd73+0], {%f270,%f269,%f268,%f1593}; - add.s32 %r63, %r8, %r58; - cvt.s64.s32 %rd74, %r63; - mul.wide.s32 %rd75, %r63, 16; - add.u64 %rd76, %rd71, %rd75; - mov.f32 %f1595, %f1596; - st.global.v4.f32 [%rd76+0], {%f267,%f266,%f265,%f1595}; -$Lt_0_67842: -$Lt_0_45314: - .loc 17 451 0 - exit; -$LDWend_kernel_ellipsoid: - } // kernel_ellipsoid - diff --git a/lib/gpu/re_squared_lj.ptx b/lib/gpu/re_squared_lj.ptx deleted file mode 100644 index 117340d909..0000000000 --- a/lib/gpu/re_squared_lj.ptx +++ /dev/null @@ -1,3549 +0,0 @@ - .version 2.3 - .target sm_20 - .address_size 64 - // compiled with /usr/local/cuda/open64/lib//be - // nvopencc 4.0 built on 2011-05-12 - - //----------------------------------------------------------- - // Compiling /tmp/tmpxft_00009bfa_00000000-9_lal_re_squared_lj.cpp3.i (/home/sjplimp/ccBI#.L3ZA3I) - //----------------------------------------------------------- - - //----------------------------------------------------------- - // Options: - //----------------------------------------------------------- - // Target:ptx, ISA:sm_20, Endian:little, Pointer Size:64 - // -O3 (Optimization level) - // -g0 (Debug level) - // -m2 (Report advisories) - //----------------------------------------------------------- - - .file 1 "" - .file 2 "/tmp/tmpxft_00009bfa_00000000-8_lal_re_squared_lj.cudafe2.gpu" - .file 3 "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include/stddef.h" - .file 4 "/usr/local/cuda/include/crt/device_runtime.h" - .file 5 "/usr/local/cuda/include/host_defines.h" - .file 6 "/usr/local/cuda/include/builtin_types.h" - .file 7 "/usr/local/cuda/include/device_types.h" - .file 8 "/usr/local/cuda/include/driver_types.h" - .file 9 "/usr/local/cuda/include/surface_types.h" - .file 10 "/usr/local/cuda/include/texture_types.h" - .file 11 "/usr/local/cuda/include/vector_types.h" - .file 12 "/usr/local/cuda/include/device_launch_parameters.h" - .file 13 "/usr/local/cuda/include/crt/storage_class.h" - .file 14 "/usr/include/bits/types.h" - .file 15 "/usr/include/time.h" - .file 16 "lal_ellipsoid_extra.h" - .file 17 "lal_re_squared_lj.cu" - .file 18 "/usr/local/cuda/include/common_functions.h" - .file 19 "/usr/local/cuda/include/math_functions.h" - .file 20 "/usr/local/cuda/include/math_constants.h" - .file 21 "/usr/local/cuda/include/device_functions.h" - .file 22 "/usr/local/cuda/include/sm_11_atomic_functions.h" - .file 23 "/usr/local/cuda/include/sm_12_atomic_functions.h" - .file 24 "/usr/local/cuda/include/sm_13_double_functions.h" - .file 25 "/usr/local/cuda/include/sm_20_atomic_functions.h" - .file 26 "/usr/local/cuda/include/sm_20_intrinsics.h" - .file 27 "/usr/local/cuda/include/surface_functions.h" - .file 28 "/usr/local/cuda/include/texture_fetch_functions.h" - .file 29 "/usr/local/cuda/include/math_functions_dbl_ptx3.h" - - - .entry kernel_ellipsoid_sphere ( - .param .u64 __cudaparm_kernel_ellipsoid_sphere_x_, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_q, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_shape, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_well, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_splj, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_sig_eps, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_ntypes, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_dev_nbor, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_stride, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_ans, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_astride, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_engv, - .param .u64 __cudaparm_kernel_ellipsoid_sphere_err_flag, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_eflag, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_vflag, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_inum, - .param .s32 __cudaparm_kernel_ellipsoid_sphere_t_per_atom) - { - .reg .u32 %r<66>; - .reg .u64 %rd<73>; - .reg .f32 %f<777>; - .reg .pred %p<34>; - .shared .align 16 .b8 __cuda___cuda_local_var_32886_33_non_const_sp_lj120[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33120_37_non_const_red_acc136[3584]; - .shared .f32 __cuda_local_var_32892_33_non_const_b_alpha; - .shared .f32 __cuda_local_var_32892_42_non_const_cr60; - .shared .f32 __cuda_local_var_32892_48_non_const_solv_f_a; - .shared .f32 __cuda_local_var_32892_58_non_const_solv_f_r; - // __cuda_local_var_32907_9_non_const_virial = 32 - // __cuda_local_var_33040_15_non_const_u = 56 - .loc 17 27 0 -$LDWbegin_kernel_ellipsoid_sphere: - .loc 17 32 0 - ld.param.u64 %rd1, [__cudaparm_kernel_ellipsoid_sphere_splj]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 17 33 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 17 34 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 17 35 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_32886_33_non_const_sp_lj120+0], {%f1,%f2,%f3,%f4}; - .loc 17 38 0 - mov.f32 %f5, 0f3f4db6db; // 0.803571 - st.shared.f32 [__cuda_local_var_32892_33_non_const_b_alpha], %f5; - .loc 17 39 0 - mov.f32 %f6, 0f42700000; // 60 - lg2.approx.ftz.f32 %f7, %f6; - mov.f32 %f8, 0f3eaaaaab; // 0.333333 - mul.ftz.f32 %f9, %f7, %f8; - ex2.approx.ftz.f32 %f10, %f9; - mov.f32 %f11, 0f42700000; // 60 - mul.ftz.f32 %f12, %f10, %f10; - div.approx.ftz.f32 %f13, %f11, %f12; - sub.ftz.f32 %f14, %f10, %f13; - mov.f32 %f15, 0f3eaaaaab; // 0.333333 - mul.ftz.f32 %f16, %f14, %f15; - sub.ftz.f32 %f17, %f10, %f16; - st.shared.f32 [__cuda_local_var_32892_42_non_const_cr60], %f17; - .loc 21 544 0 - mov.f32 %f18, 0f3f800000; // 1 - mov.f32 %f19, 0fbf52c7ea; // -0.823363 - mov.f32 %f20, 0fc0b59883; // -5.67487 - fma.rn.ftz.f32 %f21, %f18, %f19, %f20; - mov.f32 %f22, 0f41455dc0; // 12.3354 - mov.f32 %f23, 0f3f800000; // 1 - mov.f32 %f24, 0f41e6bd60; // 28.8425 - fma.rn.ftz.f32 %f25, %f22, %f23, %f24; - mov.f32 %f26, 0f3f800000; // 1 - mov.f32 %f27, 0fc0d21907; // -6.56556 - fma.rn.ftz.f32 %f28, %f21, %f26, %f27; - mov.f32 %f29, 0f3f800000; // 1 - mov.f32 %f30, 0f419d92c8; // 19.6967 - fma.rn.ftz.f32 %f31, %f25, %f29, %f30; - rcp.approx.ftz.f32 %f32, %f31; - mov.f32 %f33, 0f3f800000; // 1 - fma.rn.ftz.f32 %f34, %f28, %f32, %f33; - mov.b32 %r1, %f34; - mov.b32 %f35, %r1; - mov.f32 %f36, 0f41800000; // 16 - mul.ftz.f32 %f37, %f35, %f36; - mov.f32 %f38, 0f40400000; // 3 - mov.f32 %f39, 0fc2100000; // -36 - mul.ftz.f32 %f40, %f37, %f39; - div.approx.ftz.f32 %f41, %f38, %f40; - .loc 17 40 0 - st.shared.f32 [__cuda_local_var_32892_48_non_const_solv_f_a], %f41; - .loc 21 544 0 - mov.f32 %f42, 0f40400000; // 3 - mov.f32 %f43, 0f44fd2000; // 2025 - mul.ftz.f32 %f44, %f37, %f43; - div.approx.ftz.f32 %f45, %f42, %f44; - .loc 17 41 0 - st.shared.f32 [__cuda_local_var_32892_58_non_const_solv_f_r], %f45; - .loc 17 54 0 - mov.f32 %f46, 0f00000000; // 0 - mov.f32 %f47, %f46; - mov.f32 %f48, 0f00000000; // 0 - mov.f32 %f49, %f48; - mov.f32 %f50, 0f00000000; // 0 - mov.f32 %f51, %f50; - mov.f32 %f52, 0f00000000; // 0 - mov.f32 %f53, %f52; - mov.f32 %f54, 0f00000000; // 0 - mov.f32 %f55, %f54; - mov.f32 %f56, 0f00000000; // 0 - mov.f32 %f57, %f56; - ld.param.s32 %r2, [__cudaparm_kernel_ellipsoid_sphere_t_per_atom]; - cvt.s32.u32 %r3, %tid.x; - div.s32 %r4, %r3, %r2; - cvt.s32.u32 %r5, %ntid.x; - div.s32 %r6, %r5, %r2; - cvt.s32.u32 %r7, %ctaid.x; - mul.lo.s32 %r8, %r7, %r6; - add.s32 %r9, %r4, %r8; - ld.param.s32 %r10, [__cudaparm_kernel_ellipsoid_sphere_inum]; - setp.le.s32 %p1, %r10, %r9; - @%p1 bra $Lt_0_73474; - .loc 17 59 0 - cvt.s64.s32 %rd2, %r9; - mul.wide.s32 %rd3, %r9, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_ellipsoid_sphere_dev_nbor]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r11, [%rd5+0]; - ld.param.s32 %r12, [__cudaparm_kernel_ellipsoid_sphere_stride]; - cvt.s64.s32 %rd6, %r12; - mul.wide.s32 %rd7, %r12, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r13, [%rd8+0]; - .loc 17 62 0 - cvt.s64.s32 %rd9, %r11; - mul.wide.s32 %rd10, %r11, 16; - ld.param.u64 %rd11, [__cudaparm_kernel_ellipsoid_sphere_x_]; - add.u64 %rd12, %rd10, %rd11; - ld.global.v4.f32 {%f58,%f59,%f60,%f61}, [%rd12+0]; - .loc 17 70 0 - cvt.rzi.ftz.s32.f32 %r14, %f61; - cvt.s64.s32 %rd13, %r14; - mul.wide.s32 %rd14, %r14, 16; - ld.param.u64 %rd15, [__cudaparm_kernel_ellipsoid_sphere_shape]; - add.u64 %rd16, %rd15, %rd14; - ld.global.v4.f32 {%f62,%f63,%f64,_}, [%rd16+0]; - .loc 17 74 0 - ld.param.u64 %rd17, [__cudaparm_kernel_ellipsoid_sphere_q]; - add.u64 %rd18, %rd17, %rd10; - ld.global.v4.f32 {%f65,%f66,%f67,%f68}, [%rd18+0]; - .loc 17 75 0 - ld.param.u64 %rd19, [__cudaparm_kernel_ellipsoid_sphere_well]; - add.u64 %rd20, %rd19, %rd14; - ld.global.v4.f32 {%f69,%f70,%f71,_}, [%rd20+0]; - .loc 17 78 0 - cvt.s32.s64 %r15, %rd6; - sub.s32 %r16, %r2, 1; - and.b32 %r17, %r16, %r3; - add.u64 %rd21, %rd7, %rd8; - mul.lo.s32 %r18, %r15, %r17; - cvt.s64.s32 %rd22, %r18; - mul.wide.s32 %rd23, %r18, 4; - add.u64 %rd24, %rd21, %rd23; - mov.s64 %rd25, %rd24; - mul.lo.s32 %r19, %r15, %r13; - cvt.s64.s32 %rd26, %r19; - mul.wide.s32 %rd27, %r19, 4; - add.u64 %rd28, %rd21, %rd27; - setp.ge.u64 %p2, %rd24, %rd28; - @%p2 bra $Lt_0_75266; - ld.param.s32 %r20, [__cudaparm_kernel_ellipsoid_sphere_vflag]; - mov.s32 %r21, 0; - setp.gt.s32 %p3, %r20, %r21; - add.ftz.f32 %f72, %f66, %f66; - add.ftz.f32 %f73, %f68, %f68; - mul.ftz.f32 %f74, %f65, %f65; - mul.ftz.f32 %f75, %f66, %f66; - mul.ftz.f32 %f76, %f67, %f67; - mul.ftz.f32 %f77, %f68, %f68; - add.ftz.f32 %f78, %f67, %f67; - mul.ftz.f32 %f79, %f62, %f63; - add.ftz.f32 %f80, %f62, %f62; - add.ftz.f32 %f81, %f63, %f63; - add.ftz.f32 %f82, %f64, %f64; - ld.param.s32 %r22, [__cudaparm_kernel_ellipsoid_sphere_ntypes]; - mul.lo.s32 %r23, %r22, %r14; - mul.ftz.f32 %f83, %f72, %f67; - mul.ftz.f32 %f84, %f72, %f68; - mul.ftz.f32 %f85, %f72, %f65; - mul.ftz.f32 %f86, %f73, %f65; - add.ftz.f32 %f87, %f74, %f75; - sub.ftz.f32 %f88, %f74, %f75; - mul.ftz.f32 %f89, %f78, %f65; - mul.ftz.f32 %f90, %f78, %f68; - mul.ftz.f32 %f91, %f79, %f64; - sub.ftz.f32 %f92, %f83, %f86; - add.ftz.f32 %f93, %f83, %f86; - sub.ftz.f32 %f94, %f86, %f83; - sub.ftz.f32 %f95, %f87, %f76; - add.ftz.f32 %f96, %f76, %f88; - sub.ftz.f32 %f97, %f88, %f76; - add.ftz.f32 %f98, %f84, %f89; - sub.ftz.f32 %f99, %f84, %f89; - sub.ftz.f32 %f100, %f89, %f84; - sub.ftz.f32 %f101, %f90, %f85; - add.ftz.f32 %f102, %f85, %f90; - sub.ftz.f32 %f103, %f85, %f90; - mul.ftz.f32 %f104, %f92, %f70; - mul.ftz.f32 %f105, %f93, %f69; - neg.ftz.f32 %f106, %f93; - sub.ftz.f32 %f107, %f95, %f77; - sub.ftz.f32 %f108, %f77, %f95; - sub.ftz.f32 %f109, %f96, %f77; - sub.ftz.f32 %f110, %f77, %f96; - add.ftz.f32 %f111, %f77, %f97; - mul.ftz.f32 %f112, %f98, %f71; - neg.ftz.f32 %f113, %f98; - mul.ftz.f32 %f114, %f99, %f69; - mul.ftz.f32 %f115, %f101, %f71; - mul.ftz.f32 %f116, %f102, %f70; - mul.ftz.f32 %f117, %f92, %f104; - mul.ftz.f32 %f118, %f102, %f104; - mul.ftz.f32 %f119, %f107, %f69; - mul.ftz.f32 %f120, %f104, %f109; - mul.ftz.f32 %f121, %f109, %f70; - mul.ftz.f32 %f122, %f111, %f71; - neg.ftz.f32 %f123, %f111; - mul.ftz.f32 %f124, %f92, %f116; - mul.ftz.f32 %f125, %f109, %f116; - mul.ftz.f32 %f126, %f102, %f116; - fma.rn.ftz.f32 %f127, %f107, %f119, %f117; - fma.rn.ftz.f32 %f128, %f119, %f99, %f118; - fma.rn.ftz.f32 %f129, %f119, %f93, %f120; - mul.ftz.f32 %f130, %f92, %f121; - mul.ftz.f32 %f131, %f109, %f121; - mul.ftz.f32 %f132, %f102, %f121; - fma.rn.ftz.f32 %f133, %f107, %f114, %f124; - fma.rn.ftz.f32 %f134, %f93, %f114, %f125; - fma.rn.ftz.f32 %f135, %f99, %f114, %f126; - fma.rn.ftz.f32 %f136, %f112, %f98, %f127; - fma.rn.ftz.f32 %f137, %f112, %f111, %f128; - fma.rn.ftz.f32 %f138, %f112, %f101, %f129; - fma.rn.ftz.f32 %f139, %f107, %f105, %f130; - fma.rn.ftz.f32 %f140, %f93, %f105, %f131; - fma.rn.ftz.f32 %f141, %f99, %f105, %f132; - fma.rn.ftz.f32 %f142, %f98, %f122, %f133; - fma.rn.ftz.f32 %f143, %f101, %f122, %f134; - fma.rn.ftz.f32 %f144, %f111, %f122, %f135; - mov.f32 %f145, 0f3f800000; // 1 - add.ftz.f32 %f146, %f136, %f145; - fma.rn.ftz.f32 %f147, %f115, %f98, %f139; - fma.rn.ftz.f32 %f148, %f115, %f101, %f140; - fma.rn.ftz.f32 %f149, %f115, %f111, %f141; - abs.ftz.f32 %f150, %f142; - mov.f32 %f151, 0f3f800000; // 1 - add.ftz.f32 %f152, %f144, %f151; - abs.ftz.f32 %f153, %f146; - abs.ftz.f32 %f154, %f147; - mov.f32 %f155, 0f3f800000; // 1 - add.ftz.f32 %f156, %f148, %f155; - setp.lt.ftz.f32 %p4, %f153, %f154; - ld.param.u64 %rd29, [__cudaparm_kernel_ellipsoid_sphere_sig_eps]; - mov.f32 %f157, 0f00000000; // 0 - mov.f32 %f158, 0f00000000; // 0 - mov.f32 %f159, 0f00000000; // 0 - mov.f32 %f160, 0f00000000; // 0 - mov.f32 %f161, 0f00000000; // 0 - mov.f32 %f162, 0f00000000; // 0 - mov.f32 %f163, 0f00000000; // 0 - mov.u64 %rd30, __cuda___cuda_local_var_32886_33_non_const_sp_lj120; -$Lt_0_51970: - // Loop body line 78, nesting depth: 1, estimated iterations: unknown - .loc 17 83 0 - ld.global.s32 %r24, [%rd25+0]; - .loc 17 87 0 - and.b32 %r25, %r24, 1073741823; - cvt.s64.s32 %rd31, %r25; - mul.wide.s32 %rd32, %r25, 16; - add.u64 %rd33, %rd11, %rd32; - ld.global.v4.f32 {%f164,%f165,%f166,%f167}, [%rd33+0]; - .loc 17 98 0 - sub.ftz.f32 %f168, %f165, %f59; - sub.ftz.f32 %f169, %f164, %f58; - sub.ftz.f32 %f170, %f166, %f60; - mul.ftz.f32 %f171, %f168, %f168; - fma.rn.ftz.f32 %f172, %f169, %f169, %f171; - fma.rn.ftz.f32 %f173, %f170, %f170, %f172; - rsqrt.approx.ftz.f32 %f174, %f173; - mul.ftz.f32 %f175, %f169, %f174; - .loc 17 99 0 - mul.ftz.f32 %f176, %f168, %f174; - .loc 17 104 0 - cvt.rzi.ftz.s32.f32 %r26, %f167; - add.s32 %r27, %r26, %r23; - cvt.s64.s32 %rd34, %r27; - mul.wide.s32 %rd35, %r27, 8; - add.u64 %rd36, %rd29, %rd35; - ld.global.v2.f32 {%f177,%f178}, [%rd36+0]; - .loc 17 105 0 - shr.s32 %r28, %r24, 30; - and.b32 %r29, %r28, 3; - cvt.s64.s32 %rd37, %r29; - mul.wide.s32 %rd38, %r29, 4; - add.u64 %rd39, %rd30, %rd38; - ld.shared.f32 %f179, [%rd39+0]; - mul.ftz.f32 %f180, %f179, %f178; - .loc 16 299 0 - mov.f32 %f181, %f175; - .loc 16 300 0 - mov.f32 %f182, 0f3f000000; // 0.5 - mul.ftz.f32 %f183, %f177, %f182; - add.ftz.f32 %f184, %f183, %f63; - add.ftz.f32 %f185, %f183, %f62; - add.ftz.f32 %f186, %f183, %f64; - mul.ftz.f32 %f187, %f184, %f184; - mul.ftz.f32 %f188, %f185, %f185; - mul.ftz.f32 %f189, %f186, %f186; - mov.f32 %f190, 0f3f000000; // 0.5 - mul.ftz.f32 %f191, %f187, %f190; - mov.f32 %f192, 0f3f000000; // 0.5 - mul.ftz.f32 %f193, %f188, %f192; - mov.f32 %f194, 0f3f000000; // 0.5 - mul.ftz.f32 %f195, %f189, %f194; - mul.ftz.f32 %f196, %f92, %f191; - mul.ftz.f32 %f197, %f98, %f195; - mul.ftz.f32 %f198, %f193, %f107; - mul.ftz.f32 %f199, %f92, %f196; - fma.rn.ftz.f32 %f200, %f107, %f198, %f199; - fma.rn.ftz.f32 %f201, %f197, %f98, %f200; - mov.f32 %f202, %f201; - .loc 16 301 0 - mul.ftz.f32 %f203, %f109, %f196; - fma.rn.ftz.f32 %f204, %f198, %f93, %f203; - fma.rn.ftz.f32 %f205, %f197, %f101, %f204; - mov.f32 %f206, %f205; - .loc 16 302 0 - mul.ftz.f32 %f207, %f102, %f196; - fma.rn.ftz.f32 %f208, %f198, %f99, %f207; - fma.rn.ftz.f32 %f209, %f197, %f111, %f208; - mov.f32 %f210, %f209; - .loc 16 303 0 - mov.f32 %f211, %f176; - .loc 16 304 0 - mul.ftz.f32 %f212, %f93, %f193; - mul.ftz.f32 %f213, %f101, %f195; - mul.ftz.f32 %f214, %f191, %f109; - mul.ftz.f32 %f215, %f92, %f214; - fma.rn.ftz.f32 %f216, %f107, %f212, %f215; - fma.rn.ftz.f32 %f217, %f213, %f98, %f216; - mov.f32 %f218, %f217; - .loc 16 305 0 - mul.ftz.f32 %f219, %f109, %f214; - fma.rn.ftz.f32 %f220, %f93, %f212, %f219; - fma.rn.ftz.f32 %f221, %f213, %f101, %f220; - mov.f32 %f222, %f221; - .loc 16 306 0 - mul.ftz.f32 %f223, %f102, %f214; - fma.rn.ftz.f32 %f224, %f99, %f212, %f223; - fma.rn.ftz.f32 %f225, %f213, %f111, %f224; - mov.f32 %f226, %f225; - .loc 16 307 0 - mul.ftz.f32 %f227, %f170, %f174; - mov.f32 %f228, %f227; - .loc 16 308 0 - mul.ftz.f32 %f229, %f102, %f191; - mul.ftz.f32 %f230, %f99, %f193; - mul.ftz.f32 %f231, %f195, %f111; - mul.ftz.f32 %f232, %f92, %f229; - fma.rn.ftz.f32 %f233, %f107, %f230, %f232; - fma.rn.ftz.f32 %f234, %f98, %f231, %f233; - mov.f32 %f235, %f234; - .loc 16 309 0 - mul.ftz.f32 %f236, %f109, %f229; - fma.rn.ftz.f32 %f237, %f93, %f230, %f236; - fma.rn.ftz.f32 %f238, %f101, %f231, %f237; - mov.f32 %f239, %f238; - .loc 16 310 0 - mul.ftz.f32 %f240, %f102, %f229; - fma.rn.ftz.f32 %f241, %f99, %f230, %f240; - fma.rn.ftz.f32 %f242, %f111, %f231, %f241; - mov.f32 %f243, %f242; - abs.ftz.f32 %f244, %f217; - abs.ftz.f32 %f245, %f201; - setp.gt.ftz.f32 %p5, %f244, %f245; - @!%p5 bra $Lt_0_52226; - .loc 16 314 0 - mov.f32 %f202, %f217; - mov.f32 %f218, %f201; - .loc 16 315 0 - mov.f32 %f206, %f221; - mov.f32 %f222, %f205; - .loc 16 316 0 - mov.f32 %f210, %f225; - mov.f32 %f226, %f209; - .loc 16 317 0 - mov.f32 %f181, %f176; - mov.f32 %f211, %f175; -$Lt_0_52226: - mov.f32 %f246, %f202; - abs.ftz.f32 %f247, %f246; - abs.ftz.f32 %f248, %f234; - setp.lt.ftz.f32 %p6, %f247, %f248; - @!%p6 bra $Lt_0_52738; - .loc 16 321 0 - mov.f32 %f202, %f234; - mov.f32 %f235, %f246; - .loc 16 322 0 - mov.f32 %f249, %f206; - mov.f32 %f206, %f238; - mov.f32 %f239, %f249; - .loc 16 323 0 - mov.f32 %f250, %f210; - mov.f32 %f210, %f242; - mov.f32 %f243, %f250; - .loc 16 324 0 - mov.f32 %f251, %f181; - mov.f32 %f181, %f227; - mov.f32 %f228, %f251; -$Lt_0_52738: - mov.f32 %f252, %f202; - mov.f32 %f253, 0f00000000; // 0 - setp.neu.ftz.f32 %p7, %f252, %f253; - @!%p7 bra $Lt_0_53506; - bra.uni $Lt_0_54274; -$Lt_0_53506: - mov.f32 %f254, 0f00000000; // 0 - setp.neu.ftz.f32 %p8, %f218, %f254; - @!%p8 bra $Lt_0_54018; - .loc 16 338 0 - mov.f32 %f202, %f218; - mov.f32 %f218, %f252; - .loc 16 339 0 - mov.f32 %f255, %f206; - mov.f32 %f206, %f222; - mov.f32 %f222, %f255; - .loc 16 340 0 - mov.f32 %f256, %f210; - mov.f32 %f210, %f226; - mov.f32 %f226, %f256; - .loc 16 341 0 - mov.f32 %f257, %f181; - mov.f32 %f181, %f211; - mov.f32 %f211, %f257; - bra.uni $Lt_0_54274; -$Lt_0_54018: - mov.f32 %f258, 0f00000000; // 0 - setp.neu.ftz.f32 %p9, %f235, %f258; - @!%p9 bra $Lt_0_54530; - .loc 16 346 0 - mov.f32 %f202, %f235; - mov.f32 %f235, %f252; - .loc 16 347 0 - mov.f32 %f259, %f206; - mov.f32 %f206, %f239; - mov.f32 %f239, %f259; - .loc 16 348 0 - mov.f32 %f260, %f210; - mov.f32 %f210, %f243; - mov.f32 %f243, %f260; - .loc 16 349 0 - mov.f32 %f261, %f181; - mov.f32 %f181, %f228; - mov.f32 %f228, %f261; - bra.uni $Lt_0_54274; -$Lt_0_54530: - .loc 16 352 0 - mov.s32 %r30, 2; - ld.param.u64 %rd40, [__cudaparm_kernel_ellipsoid_sphere_err_flag]; - st.global.s32 [%rd40+0], %r30; -$Lt_0_54274: -$Lt_0_53762: -$Lt_0_53250: - .loc 16 355 0 - div.approx.ftz.f32 %f262, %f218, %f202; - mul.ftz.f32 %f263, %f206, %f262; - sub.ftz.f32 %f264, %f222, %f263; - mov.f32 %f222, %f264; - .loc 16 356 0 - mul.ftz.f32 %f265, %f210, %f262; - sub.ftz.f32 %f266, %f226, %f265; - mov.f32 %f226, %f266; - .loc 16 357 0 - mul.ftz.f32 %f267, %f181, %f262; - sub.ftz.f32 %f268, %f211, %f267; - mov.f32 %f211, %f268; - .loc 16 359 0 - div.approx.ftz.f32 %f269, %f235, %f202; - mul.ftz.f32 %f270, %f206, %f269; - sub.ftz.f32 %f239, %f239, %f270; - .loc 16 360 0 - mul.ftz.f32 %f271, %f210, %f269; - sub.ftz.f32 %f243, %f243, %f271; - .loc 16 361 0 - mul.ftz.f32 %f272, %f181, %f269; - sub.ftz.f32 %f228, %f228, %f272; - abs.ftz.f32 %f273, %f264; - abs.ftz.f32 %f274, %f239; - setp.lt.ftz.f32 %p10, %f273, %f274; - @!%p10 bra $Lt_0_54786; - .loc 16 366 0 - mov.f32 %f222, %f239; - mov.f32 %f239, %f264; - .loc 16 367 0 - mov.f32 %f226, %f243; - mov.f32 %f243, %f266; - .loc 16 368 0 - mov.f32 %f211, %f228; - mov.f32 %f228, %f268; -$Lt_0_54786: - mov.f32 %f275, %f222; - mov.f32 %f276, 0f00000000; // 0 - setp.neu.ftz.f32 %p11, %f275, %f276; - @!%p11 bra $Lt_0_55554; - bra.uni $Lt_0_55810; -$Lt_0_55554: - mov.f32 %f277, 0f00000000; // 0 - setp.neu.ftz.f32 %p12, %f239, %f277; - @!%p12 bra $Lt_0_55810; - .loc 16 383 0 - mov.f32 %f222, %f239; - mov.f32 %f239, %f275; - .loc 16 384 0 - mov.f32 %f278, %f226; - mov.f32 %f226, %f243; - mov.f32 %f243, %f278; - .loc 16 385 0 - mov.f32 %f279, %f211; - mov.f32 %f211, %f228; - mov.f32 %f228, %f279; -$Lt_0_55810: -$Lt_0_55298: - .loc 16 390 0 - div.approx.ftz.f32 %f280, %f239, %f222; - mul.ftz.f32 %f281, %f226, %f280; - sub.ftz.f32 %f243, %f243, %f281; - .loc 16 391 0 - mul.ftz.f32 %f282, %f211, %f280; - sub.ftz.f32 %f228, %f228, %f282; - mov.f32 %f283, 0f00000000; // 0 - setp.eq.ftz.f32 %p13, %f243, %f283; - @!%p13 bra $Lt_0_56322; - .loc 16 394 0 - mov.s32 %r31, 2; - ld.param.u64 %rd41, [__cudaparm_kernel_ellipsoid_sphere_err_flag]; - st.global.s32 [%rd41+0], %r31; -$Lt_0_56322: - .loc 16 396 0 - div.approx.ftz.f32 %f284, %f228, %f243; - .loc 16 399 0 - mul.ftz.f32 %f285, %f284, %f226; - sub.ftz.f32 %f286, %f211, %f285; - div.approx.ftz.f32 %f287, %f286, %f222; - .loc 16 403 0 - mul.ftz.f32 %f288, %f287, %f206; - fma.rn.ftz.f32 %f289, %f210, %f284, %f288; - sub.ftz.f32 %f290, %f181, %f289; - div.approx.ftz.f32 %f291, %f290, %f202; - .loc 17 124 0 - mul.ftz.f32 %f292, %f287, %f176; - fma.rn.ftz.f32 %f293, %f175, %f291, %f292; - fma.rn.ftz.f32 %f294, %f227, %f284, %f293; - mov.f32 %f295, 0f3f000000; // 0.5 - mul.ftz.f32 %f296, %f294, %f295; - rsqrt.approx.ftz.f32 %f297, %f296; - .loc 16 299 0 - mov.f32 %f181, %f175; - .loc 16 300 0 - mov.f32 %f202, %f146; - .loc 16 301 0 - mov.f32 %f206, %f138; - .loc 16 302 0 - mov.f32 %f210, %f137; - .loc 16 303 0 - mov.f32 %f211, %f176; - .loc 16 304 0 - mov.f32 %f218, %f147; - .loc 16 305 0 - mov.f32 %f222, %f156; - .loc 16 306 0 - mov.f32 %f226, %f149; - .loc 16 307 0 - mov.f32 %f228, %f227; - .loc 16 308 0 - mov.f32 %f235, %f142; - .loc 16 309 0 - mov.f32 %f239, %f143; - .loc 16 310 0 - mov.f32 %f243, %f152; - @!%p4 bra $Lt_0_56834; - .loc 16 314 0 - mov.f32 %f202, %f147; - mov.f32 %f218, %f146; - .loc 16 315 0 - mov.f32 %f206, %f156; - mov.f32 %f222, %f138; - .loc 16 316 0 - mov.f32 %f210, %f149; - mov.f32 %f226, %f137; - .loc 16 317 0 - mov.f32 %f181, %f176; - mov.f32 %f211, %f175; -$Lt_0_56834: - mov.f32 %f298, %f202; - abs.ftz.f32 %f299, %f298; - setp.gt.ftz.f32 %p14, %f150, %f299; - @!%p14 bra $Lt_0_57346; - .loc 16 321 0 - mov.f32 %f202, %f142; - mov.f32 %f235, %f298; - .loc 16 322 0 - mov.f32 %f300, %f206; - mov.f32 %f206, %f143; - mov.f32 %f239, %f300; - .loc 16 323 0 - mov.f32 %f301, %f210; - mov.f32 %f210, %f152; - mov.f32 %f243, %f301; - .loc 16 324 0 - mov.f32 %f302, %f181; - mov.f32 %f181, %f227; - mov.f32 %f228, %f302; -$Lt_0_57346: - mov.f32 %f303, %f202; - mov.f32 %f304, 0f00000000; // 0 - setp.neu.ftz.f32 %p15, %f303, %f304; - @!%p15 bra $Lt_0_58114; - bra.uni $Lt_0_58882; -$Lt_0_58114: - mov.f32 %f305, 0f00000000; // 0 - setp.neu.ftz.f32 %p16, %f218, %f305; - @!%p16 bra $Lt_0_58626; - .loc 16 338 0 - mov.f32 %f202, %f218; - mov.f32 %f218, %f303; - .loc 16 339 0 - mov.f32 %f306, %f206; - mov.f32 %f206, %f222; - mov.f32 %f222, %f306; - .loc 16 340 0 - mov.f32 %f307, %f210; - mov.f32 %f210, %f226; - mov.f32 %f226, %f307; - .loc 16 341 0 - mov.f32 %f308, %f181; - mov.f32 %f181, %f211; - mov.f32 %f211, %f308; - bra.uni $Lt_0_58882; -$Lt_0_58626: - mov.f32 %f309, 0f00000000; // 0 - setp.neu.ftz.f32 %p17, %f235, %f309; - @!%p17 bra $Lt_0_59138; - .loc 16 346 0 - mov.f32 %f202, %f235; - mov.f32 %f235, %f303; - .loc 16 347 0 - mov.f32 %f310, %f206; - mov.f32 %f206, %f239; - mov.f32 %f239, %f310; - .loc 16 348 0 - mov.f32 %f311, %f210; - mov.f32 %f210, %f243; - mov.f32 %f243, %f311; - .loc 16 349 0 - mov.f32 %f312, %f181; - mov.f32 %f181, %f228; - mov.f32 %f228, %f312; - bra.uni $Lt_0_58882; -$Lt_0_59138: - .loc 16 352 0 - mov.s32 %r32, 2; - ld.param.u64 %rd42, [__cudaparm_kernel_ellipsoid_sphere_err_flag]; - st.global.s32 [%rd42+0], %r32; -$Lt_0_58882: -$Lt_0_58370: -$Lt_0_57858: - .loc 16 355 0 - div.approx.ftz.f32 %f313, %f218, %f202; - mul.ftz.f32 %f314, %f206, %f313; - sub.ftz.f32 %f315, %f222, %f314; - mov.f32 %f222, %f315; - .loc 16 356 0 - mul.ftz.f32 %f316, %f210, %f313; - sub.ftz.f32 %f317, %f226, %f316; - mov.f32 %f226, %f317; - .loc 16 357 0 - mul.ftz.f32 %f318, %f181, %f313; - sub.ftz.f32 %f319, %f211, %f318; - mov.f32 %f211, %f319; - .loc 16 359 0 - div.approx.ftz.f32 %f320, %f235, %f202; - mul.ftz.f32 %f321, %f206, %f320; - sub.ftz.f32 %f239, %f239, %f321; - .loc 16 360 0 - mul.ftz.f32 %f322, %f210, %f320; - sub.ftz.f32 %f243, %f243, %f322; - .loc 16 361 0 - mul.ftz.f32 %f323, %f181, %f320; - sub.ftz.f32 %f228, %f228, %f323; - abs.ftz.f32 %f324, %f315; - abs.ftz.f32 %f325, %f239; - setp.lt.ftz.f32 %p18, %f324, %f325; - @!%p18 bra $Lt_0_59394; - .loc 16 366 0 - mov.f32 %f222, %f239; - mov.f32 %f239, %f315; - .loc 16 367 0 - mov.f32 %f226, %f243; - mov.f32 %f243, %f317; - .loc 16 368 0 - mov.f32 %f211, %f228; - mov.f32 %f228, %f319; -$Lt_0_59394: - mov.f32 %f326, %f222; - mov.f32 %f327, 0f00000000; // 0 - setp.neu.ftz.f32 %p19, %f326, %f327; - @!%p19 bra $Lt_0_60162; - bra.uni $Lt_0_60418; -$Lt_0_60162: - mov.f32 %f328, 0f00000000; // 0 - setp.neu.ftz.f32 %p20, %f239, %f328; - @!%p20 bra $Lt_0_60418; - .loc 16 383 0 - mov.f32 %f222, %f239; - mov.f32 %f239, %f326; - .loc 16 384 0 - mov.f32 %f329, %f226; - mov.f32 %f226, %f243; - mov.f32 %f243, %f329; - .loc 16 385 0 - mov.f32 %f330, %f211; - mov.f32 %f211, %f228; - mov.f32 %f228, %f330; -$Lt_0_60418: -$Lt_0_59906: - .loc 16 390 0 - div.approx.ftz.f32 %f331, %f239, %f222; - mul.ftz.f32 %f332, %f226, %f331; - sub.ftz.f32 %f243, %f243, %f332; - .loc 16 391 0 - mul.ftz.f32 %f333, %f211, %f331; - sub.ftz.f32 %f228, %f228, %f333; - mov.f32 %f334, 0f00000000; // 0 - setp.eq.ftz.f32 %p21, %f243, %f334; - @!%p21 bra $Lt_0_60930; - .loc 16 394 0 - mov.s32 %r33, 2; - ld.param.u64 %rd43, [__cudaparm_kernel_ellipsoid_sphere_err_flag]; - st.global.s32 [%rd43+0], %r33; -$Lt_0_60930: - .loc 17 133 0 - div.approx.ftz.f32 %f335, %f228, %f243; - mul.ftz.f32 %f336, %f335, %f226; - sub.ftz.f32 %f337, %f211, %f336; - div.approx.ftz.f32 %f338, %f337, %f222; - mul.ftz.f32 %f339, %f338, %f206; - fma.rn.ftz.f32 %f340, %f210, %f335, %f339; - mul.ftz.f32 %f341, %f338, %f176; - sub.ftz.f32 %f342, %f181, %f340; - div.approx.ftz.f32 %f343, %f342, %f202; - fma.rn.ftz.f32 %f344, %f175, %f343, %f341; - fma.rn.ftz.f32 %f345, %f227, %f335, %f344; - add.ftz.f32 %f346, %f345, %f345; - .loc 17 141 0 - rcp.approx.ftz.f32 %f347, %f174; - sub.ftz.f32 %f348, %f347, %f297; - mov.f32 %f349, 0f3f000000; // 0.5 - mul.ftz.f32 %f350, %f348, %f349; - mul.ftz.f32 %f351, %f348, %f348; - mul.ftz.f32 %f352, %f348, %f351; - add.ftz.f32 %f353, %f350, %f64; - add.ftz.f32 %f354, %f350, %f62; - add.ftz.f32 %f355, %f350, %f63; - mul.ftz.f32 %f356, %f354, %f355; - mul.ftz.f32 %f357, %f353, %f356; - mul.ftz.f32 %f358, %f352, %f357; - .loc 17 142 0 - div.approx.ftz.f32 %f359, %f177, %f348; - mul.ftz.f32 %f360, %f359, %f346; - mov.f32 %f361, 0f3f800000; // 1 - mov.f32 %f362, 0f40400000; // 3 - fma.rn.ftz.f32 %f363, %f362, %f360, %f361; - mul.ftz.f32 %f364, %f91, %f363; - .loc 17 146 0 - div.approx.ftz.f32 %f365, %f348, %f17; - add.ftz.f32 %f366, %f365, %f64; - add.ftz.f32 %f367, %f365, %f62; - add.ftz.f32 %f368, %f365, %f63; - mul.ftz.f32 %f369, %f367, %f368; - mul.ftz.f32 %f370, %f366, %f369; - mul.ftz.f32 %f371, %f352, %f370; - .loc 17 148 0 - mov.f32 %f372, 0f3f800000; // 1 - mov.f32 %f373, 0f3f4db6db; // 0.803571 - fma.rn.ftz.f32 %f374, %f373, %f360, %f372; - mul.ftz.f32 %f375, %f91, %f374; - .loc 17 150 0 - mul.ftz.f32 %f376, %f359, %f359; - mul.ftz.f32 %f377, %f359, %f376; - mul.ftz.f32 %f378, %f377, %f377; - .loc 17 153 0 - mul.ftz.f32 %f379, %f177, %f177; - mov.f32 %f380, 0f41000000; // 8 - div.approx.ftz.f32 %f381, %f358, %f380; - mov.f32 %f382, 0f42700000; // 60 - div.approx.ftz.f32 %f383, %f371, %f382; - mul.ftz.f32 %f384, %f379, %f177; - div.approx.ftz.f32 %f385, %f364, %f381; - div.approx.ftz.f32 %f386, %f375, %f383; - mul.ftz.f32 %f387, %f385, %f180; - mul.ftz.f32 %f388, %f386, %f180; - mul.ftz.f32 %f389, %f384, %f387; - mul.ftz.f32 %f390, %f384, %f388; - mul.ftz.f32 %f391, %f389, %f41; - mul.ftz.f32 %f392, %f390, %f378; - mul.ftz.f32 %f393, %f392, %f45; - add.ftz.f32 %f394, %f391, %f393; - add.ftz.f32 %f163, %f163, %f394; - .loc 17 160 0 - mov.f32 %f395, 0f40800000; // 4 - mul.ftz.f32 %f396, %f343, %f395; - .loc 17 167 0 - mov.f32 %f397, 0f40400000; // 3 - div.approx.ftz.f32 %f398, %f397, %f348; - add.ftz.f32 %f399, %f80, %f348; - rcp.approx.ftz.f32 %f400, %f399; - add.ftz.f32 %f401, %f81, %f348; - rcp.approx.ftz.f32 %f402, %f401; - add.ftz.f32 %f403, %f400, %f402; - add.ftz.f32 %f404, %f82, %f348; - rcp.approx.ftz.f32 %f405, %f404; - add.ftz.f32 %f406, %f403, %f405; - add.ftz.f32 %f407, %f398, %f406; - .loc 17 172 0 - mul.ftz.f32 %f408, %f177, %f346; - mov.f32 %f409, 0f40400000; // 3 - fma.rn.ftz.f32 %f410, %f409, %f408, %f348; - rcp.approx.ftz.f32 %f411, %f410; - rcp.approx.ftz.f32 %f412, %f348; - sub.ftz.f32 %f413, %f412, %f411; - add.ftz.f32 %f414, %f407, %f413; - .loc 17 175 0 - fma.rn.ftz.f32 %f415, %f17, %f62, %f348; - rcp.approx.ftz.f32 %f416, %f415; - fma.rn.ftz.f32 %f417, %f17, %f63, %f348; - rcp.approx.ftz.f32 %f418, %f417; - add.ftz.f32 %f419, %f416, %f418; - fma.rn.ftz.f32 %f420, %f17, %f64, %f348; - rcp.approx.ftz.f32 %f421, %f420; - add.ftz.f32 %f422, %f419, %f421; - add.ftz.f32 %f423, %f398, %f422; - .loc 17 186 0 - mul.ftz.f32 %f424, %f175, %f175; - neg.ftz.f32 %f425, %f424; - mov.f32 %f426, %f425; - .loc 17 187 0 - mul.ftz.f32 %f427, %f176, %f175; - neg.ftz.f32 %f428, %f427; - mov.f32 %f429, %f428; - .loc 17 188 0 - mul.ftz.f32 %f430, %f227, %f175; - neg.ftz.f32 %f431, %f430; - mov.f32 %f432, %f431; - .loc 17 189 0 - mov.f32 %f433, 0f3f800000; // 1 - sub.ftz.f32 %f434, %f433, %f424; - mov.f32 %f435, %f434; - .loc 17 190 0 - mul.ftz.f32 %f436, %f174, %f434; - mov.f32 %f437, %f436; - .loc 17 191 0 - mov.f32 %f438, %f429; - mul.ftz.f32 %f439, %f438, %f174; - mov.f32 %f440, %f439; - .loc 17 192 0 - mov.f32 %f441, %f432; - mul.ftz.f32 %f442, %f441, %f174; - mov.f32 %f443, %f442; - .loc 17 196 0 - mul.ftz.f32 %f444, %f297, %f297; - mov.f32 %f445, 0f3f4db6db; // 0.803571 - mul.ftz.f32 %f446, %f177, %f445; - mov.f32 %f447, 0f40800000; // 4 - mul.ftz.f32 %f448, %f335, %f447; - mul.ftz.f32 %f449, %f444, %f297; - mov.f32 %f450, 0f3f000000; // 0.5 - mul.ftz.f32 %f451, %f449, %f450; - mul.ftz.f32 %f452, %f451, %f287; - mul.ftz.f32 %f453, %f451, %f291; - mul.ftz.f32 %f454, %f451, %f284; - mov.f32 %f455, 0f40800000; // 4 - mul.ftz.f32 %f456, %f338, %f455; - mul.ftz.f32 %f457, %f452, %f439; - mul.ftz.f32 %f458, %f456, %f439; - mov.f32 %f459, 0f40e00000; // 7 - div.approx.ftz.f32 %f460, %f459, %f348; - mov.f32 %f461, 0f3f4db6db; // 0.803571 - fma.rn.ftz.f32 %f462, %f461, %f408, %f348; - rcp.approx.ftz.f32 %f463, %f462; - fma.rn.ftz.f32 %f464, %f453, %f436, %f457; - fma.rn.ftz.f32 %f465, %f396, %f436, %f458; - sub.ftz.f32 %f466, %f460, %f463; - mul.ftz.f32 %f467, %f446, %f463; - fma.rn.ftz.f32 %f468, %f454, %f442, %f464; - fma.rn.ftz.f32 %f469, %f448, %f442, %f465; - add.ftz.f32 %f470, %f466, %f423; - add.ftz.f32 %f471, %f468, %f175; - mul.ftz.f32 %f472, %f470, %f471; - mul.ftz.f32 %f473, %f467, %f469; - sub.ftz.f32 %f474, %f473, %f472; - .loc 17 197 0 - mov.f32 %f475, 0f40400000; // 3 - mul.ftz.f32 %f476, %f177, %f475; - mul.ftz.f32 %f477, %f476, %f411; - mul.ftz.f32 %f478, %f393, %f474; - mul.ftz.f32 %f479, %f471, %f414; - mul.ftz.f32 %f480, %f477, %f469; - sub.ftz.f32 %f481, %f480, %f479; - fma.rn.ftz.f32 %f482, %f391, %f481, %f478; - .loc 17 199 0 - add.ftz.f32 %f162, %f482, %f162; - @!%p3 bra $Lt_0_61954; - .loc 17 201 0 - mov.f32 %f483, %f47; - mul.ftz.f32 %f484, %f169, %f482; - sub.ftz.f32 %f485, %f483, %f484; - mov.f32 %f47, %f485; -$Lt_0_61954: - .loc 17 186 0 - mov.f32 %f486, %f428; - .loc 17 187 0 - mul.ftz.f32 %f487, %f176, %f176; - neg.ftz.f32 %f488, %f487; - mov.f32 %f489, %f488; - .loc 17 188 0 - mul.ftz.f32 %f490, %f227, %f176; - neg.ftz.f32 %f491, %f490; - mov.f32 %f492, %f491; - .loc 17 189 0 - mov.f32 %f493, 0f3f800000; // 1 - sub.ftz.f32 %f494, %f493, %f487; - mov.f32 %f495, %f494; - .loc 17 190 0 - mov.f32 %f496, %f486; - mul.ftz.f32 %f497, %f496, %f174; - mov.f32 %f498, %f497; - .loc 17 191 0 - mul.ftz.f32 %f499, %f174, %f494; - mov.f32 %f500, %f499; - .loc 17 192 0 - mov.f32 %f501, %f492; - mul.ftz.f32 %f502, %f501, %f174; - mov.f32 %f503, %f502; - .loc 17 196 0 - mul.ftz.f32 %f504, %f452, %f499; - mul.ftz.f32 %f505, %f456, %f499; - fma.rn.ftz.f32 %f506, %f453, %f497, %f504; - fma.rn.ftz.f32 %f507, %f396, %f497, %f505; - fma.rn.ftz.f32 %f508, %f454, %f502, %f506; - fma.rn.ftz.f32 %f509, %f448, %f502, %f507; - add.ftz.f32 %f510, %f508, %f176; - mul.ftz.f32 %f511, %f470, %f510; - mul.ftz.f32 %f512, %f467, %f509; - sub.ftz.f32 %f513, %f512, %f511; - .loc 17 197 0 - mul.ftz.f32 %f514, %f393, %f513; - mul.ftz.f32 %f515, %f510, %f414; - mul.ftz.f32 %f516, %f477, %f509; - sub.ftz.f32 %f517, %f516, %f515; - fma.rn.ftz.f32 %f482, %f391, %f517, %f514; - .loc 17 203 0 - add.ftz.f32 %f161, %f482, %f161; - @!%p3 bra $Lt_0_65538; - .loc 17 205 0 - mov.f32 %f518, %f49; - mul.ftz.f32 %f519, %f168, %f482; - sub.ftz.f32 %f520, %f518, %f519; - mov.f32 %f49, %f520; - .loc 17 206 0 - mov.f32 %f521, %f53; - mul.ftz.f32 %f522, %f169, %f482; - sub.ftz.f32 %f523, %f521, %f522; - mov.f32 %f53, %f523; -$Lt_0_65538: - .loc 17 186 0 - mov.f32 %f524, %f431; - .loc 17 187 0 - mov.f32 %f525, %f491; - .loc 17 188 0 - mul.ftz.f32 %f526, %f227, %f227; - neg.ftz.f32 %f527, %f526; - mov.f32 %f528, %f527; - .loc 17 189 0 - mov.f32 %f529, 0f3f800000; // 1 - sub.ftz.f32 %f530, %f529, %f526; - mov.f32 %f531, %f530; - .loc 17 190 0 - mov.f32 %f532, %f524; - mul.ftz.f32 %f533, %f532, %f174; - mov.f32 %f534, %f533; - .loc 17 191 0 - mov.f32 %f535, %f525; - mul.ftz.f32 %f536, %f535, %f174; - mov.f32 %f537, %f536; - .loc 17 192 0 - mul.ftz.f32 %f538, %f174, %f530; - mov.f32 %f539, %f538; - .loc 17 196 0 - mul.ftz.f32 %f540, %f452, %f536; - mul.ftz.f32 %f541, %f456, %f536; - fma.rn.ftz.f32 %f542, %f453, %f533, %f540; - fma.rn.ftz.f32 %f543, %f396, %f533, %f541; - fma.rn.ftz.f32 %f544, %f454, %f538, %f542; - fma.rn.ftz.f32 %f545, %f448, %f538, %f543; - add.ftz.f32 %f546, %f544, %f227; - mul.ftz.f32 %f547, %f546, %f470; - mul.ftz.f32 %f548, %f467, %f545; - sub.ftz.f32 %f549, %f548, %f547; - .loc 17 197 0 - mul.ftz.f32 %f550, %f393, %f549; - mul.ftz.f32 %f551, %f546, %f414; - mul.ftz.f32 %f552, %f477, %f545; - sub.ftz.f32 %f553, %f552, %f551; - fma.rn.ftz.f32 %f482, %f391, %f553, %f550; - .loc 17 209 0 - add.ftz.f32 %f160, %f482, %f160; - @!%p3 bra $Lt_0_68610; - .loc 17 211 0 - mov.f32 %f554, %f51; - mul.ftz.f32 %f555, %f170, %f482; - sub.ftz.f32 %f556, %f554, %f555; - mov.f32 %f51, %f556; - .loc 17 212 0 - mov.f32 %f557, %f55; - mul.ftz.f32 %f558, %f169, %f482; - sub.ftz.f32 %f559, %f557, %f558; - mov.f32 %f55, %f559; - .loc 17 213 0 - mul.ftz.f32 %f560, %f168, %f482; - sub.ftz.f32 %f56, %f56, %f560; - mov.f32 %f57, %f56; -$Lt_0_68610: - .loc 17 232 0 - mul.ftz.f32 %f561, %f102, %f338; - mul.ftz.f32 %f562, %f100, %f338; - mul.ftz.f32 %f563, %f111, %f338; - mov.f32 %f564, 0f00000000; // 0 - mov.f32 %f565, 0f00000000; // 0 - fma.rn.ftz.f32 %f566, %f565, %f212, %f564; - mov.f32 %f567, 0f00000000; // 0 - mov.f32 %f568, 0f00000000; // 0 - fma.rn.ftz.f32 %f569, %f568, %f230, %f567; - mov.f32 %f570, 0f00000000; // 0 - mov.f32 %f571, 0f00000000; // 0 - fma.rn.ftz.f32 %f572, %f571, %f198, %f570; - mul.ftz.f32 %f573, %f121, %f456; - mul.ftz.f32 %f574, %f105, %f456; - mul.ftz.f32 %f575, %f115, %f456; - neg.ftz.f32 %f576, %f561; - neg.ftz.f32 %f577, %f563; - neg.ftz.f32 %f578, %f207; - neg.ftz.f32 %f579, %f240; - mov.f32 %f580, 0f00000000; // 0 - fma.rn.ftz.f32 %f581, %f213, %f580, %f566; - mov.f32 %f582, 0f00000000; // 0 - fma.rn.ftz.f32 %f583, %f582, %f231, %f569; - mov.f32 %f584, 0f00000000; // 0 - fma.rn.ftz.f32 %f585, %f197, %f584, %f572; - neg.ftz.f32 %f586, %f223; - fma.rn.ftz.f32 %f587, %f198, %f100, %f578; - fma.rn.ftz.f32 %f588, %f100, %f230, %f579; - fma.rn.ftz.f32 %f589, %f100, %f212, %f586; - fma.rn.ftz.f32 %f590, %f197, %f123, %f587; - fma.rn.ftz.f32 %f591, %f123, %f231, %f588; - fma.rn.ftz.f32 %f592, %f213, %f123, %f589; - mov.f32 %f593, 0f00000000; // 0 - fma.rn.ftz.f32 %f594, %f343, %f593, %f576; - mov.f32 %f595, 0f00000000; // 0 - fma.rn.ftz.f32 %f596, %f595, %f343, %f562; - mov.f32 %f597, 0f00000000; // 0 - fma.rn.ftz.f32 %f598, %f343, %f597, %f577; - mul.ftz.f32 %f599, %f452, %f590; - mul.ftz.f32 %f600, %f452, %f591; - mul.ftz.f32 %f601, %f452, %f592; - fma.rn.ftz.f32 %f602, %f396, %f104, %f573; - fma.rn.ftz.f32 %f603, %f119, %f396, %f574; - fma.rn.ftz.f32 %f604, %f396, %f112, %f575; - fma.rn.ftz.f32 %f605, %f335, %f109, %f594; - fma.rn.ftz.f32 %f606, %f93, %f335, %f596; - fma.rn.ftz.f32 %f607, %f335, %f101, %f598; - fma.rn.ftz.f32 %f608, %f453, %f585, %f599; - fma.rn.ftz.f32 %f609, %f453, %f583, %f600; - fma.rn.ftz.f32 %f610, %f453, %f581, %f601; - fma.rn.ftz.f32 %f611, %f448, %f116, %f602; - fma.rn.ftz.f32 %f612, %f448, %f114, %f603; - fma.rn.ftz.f32 %f613, %f448, %f122, %f604; - fma.rn.ftz.f32 %f614, %f454, %f205, %f608; - fma.rn.ftz.f32 %f615, %f454, %f238, %f609; - fma.rn.ftz.f32 %f616, %f454, %f221, %f610; - mul.ftz.f32 %f617, %f605, %f611; - mul.ftz.f32 %f618, %f616, %f287; - fma.rn.ftz.f32 %f619, %f612, %f606, %f617; - fma.rn.ftz.f32 %f620, %f291, %f614, %f618; - fma.rn.ftz.f32 %f621, %f613, %f607, %f619; - fma.rn.ftz.f32 %f622, %f284, %f615, %f620; - neg.ftz.f32 %f623, %f621; - mul.ftz.f32 %f624, %f470, %f622; - fma.rn.ftz.f32 %f625, %f467, %f623, %f624; - mul.ftz.f32 %f626, %f393, %f625; - mul.ftz.f32 %f627, %f622, %f414; - fma.rn.ftz.f32 %f628, %f477, %f623, %f627; - fma.rn.ftz.f32 %f629, %f391, %f628, %f626; - sub.ftz.f32 %f159, %f159, %f629; - .loc 17 245 0 - mul.ftz.f32 %f630, %f94, %f196; - mul.ftz.f32 %f631, %f94, %f229; - mov.f32 %f632, 0f00000000; // 0 - mov.f32 %f633, 0f00000000; // 0 - fma.rn.ftz.f32 %f634, %f198, %f633, %f632; - mul.ftz.f32 %f635, %f94, %f214; - fma.rn.ftz.f32 %f636, %f99, %f198, %f207; - fma.rn.ftz.f32 %f637, %f198, %f108, %f630; - fma.rn.ftz.f32 %f638, %f108, %f230, %f631; - mov.f32 %f639, 0f00000000; // 0 - fma.rn.ftz.f32 %f640, %f197, %f639, %f634; - fma.rn.ftz.f32 %f641, %f108, %f212, %f635; - fma.rn.ftz.f32 %f642, %f197, %f111, %f636; - fma.rn.ftz.f32 %f643, %f197, %f113, %f637; - fma.rn.ftz.f32 %f644, %f113, %f231, %f638; - mul.ftz.f32 %f645, %f452, %f581; - mul.ftz.f32 %f646, %f452, %f583; - mul.ftz.f32 %f647, %f452, %f640; - fma.rn.ftz.f32 %f648, %f213, %f113, %f641; - fma.rn.ftz.f32 %f649, %f453, %f242, %f646; - fma.rn.ftz.f32 %f650, %f453, %f642, %f647; - fma.rn.ftz.f32 %f651, %f453, %f225, %f645; - mov.f32 %f652, 0f00000000; // 0 - fma.rn.ftz.f32 %f653, %f343, %f102, %f652; - mov.f32 %f654, 0f00000000; // 0 - fma.rn.ftz.f32 %f655, %f99, %f343, %f654; - mov.f32 %f656, 0f00000000; // 0 - fma.rn.ftz.f32 %f657, %f343, %f111, %f656; - fma.rn.ftz.f32 %f658, %f454, %f644, %f649; - fma.rn.ftz.f32 %f659, %f454, %f643, %f650; - fma.rn.ftz.f32 %f660, %f454, %f648, %f651; - fma.rn.ftz.f32 %f661, %f335, %f94, %f653; - fma.rn.ftz.f32 %f662, %f108, %f335, %f655; - fma.rn.ftz.f32 %f663, %f335, %f113, %f657; - mul.ftz.f32 %f664, %f660, %f287; - fma.rn.ftz.f32 %f665, %f291, %f659, %f664; - mul.ftz.f32 %f666, %f661, %f611; - fma.rn.ftz.f32 %f667, %f284, %f658, %f665; - fma.rn.ftz.f32 %f668, %f612, %f662, %f666; - fma.rn.ftz.f32 %f669, %f613, %f663, %f668; - neg.ftz.f32 %f670, %f669; - mul.ftz.f32 %f671, %f470, %f667; - fma.rn.ftz.f32 %f672, %f467, %f670, %f671; - mul.ftz.f32 %f673, %f393, %f672; - mul.ftz.f32 %f674, %f667, %f414; - fma.rn.ftz.f32 %f675, %f477, %f670, %f674; - fma.rn.ftz.f32 %f676, %f391, %f675, %f673; - sub.ftz.f32 %f158, %f158, %f676; - .loc 17 258 0 - mul.ftz.f32 %f677, %f92, %f338; - mul.ftz.f32 %f678, %f107, %f338; - mul.ftz.f32 %f679, %f98, %f338; - mul.ftz.f32 %f680, %f110, %f196; - mul.ftz.f32 %f681, %f110, %f229; - mul.ftz.f32 %f682, %f110, %f214; - fma.rn.ftz.f32 %f683, %f198, %f107, %f199; - fma.rn.ftz.f32 %f684, %f106, %f198, %f680; - fma.rn.ftz.f32 %f685, %f106, %f230, %f681; - fma.rn.ftz.f32 %f686, %f106, %f212, %f682; - fma.rn.ftz.f32 %f687, %f197, %f98, %f683; - fma.rn.ftz.f32 %f688, %f197, %f103, %f684; - fma.rn.ftz.f32 %f689, %f103, %f231, %f685; - fma.rn.ftz.f32 %f690, %f213, %f103, %f686; - mul.ftz.f32 %f691, %f452, %f687; - mul.ftz.f32 %f692, %f452, %f234; - mul.ftz.f32 %f693, %f452, %f217; - fma.rn.ftz.f32 %f694, %f343, %f110, %f677; - fma.rn.ftz.f32 %f695, %f106, %f343, %f678; - fma.rn.ftz.f32 %f696, %f343, %f103, %f679; - fma.rn.ftz.f32 %f697, %f453, %f688, %f691; - fma.rn.ftz.f32 %f698, %f453, %f689, %f692; - fma.rn.ftz.f32 %f699, %f453, %f690, %f693; - mov.f32 %f700, 0f00000000; // 0 - fma.rn.ftz.f32 %f701, %f335, %f700, %f694; - mov.f32 %f702, 0f00000000; // 0 - fma.rn.ftz.f32 %f703, %f702, %f335, %f695; - mov.f32 %f704, 0f00000000; // 0 - fma.rn.ftz.f32 %f705, %f335, %f704, %f696; - fma.rn.ftz.f32 %f706, %f454, %f640, %f697; - fma.rn.ftz.f32 %f707, %f454, %f583, %f698; - fma.rn.ftz.f32 %f708, %f454, %f581, %f699; - mul.ftz.f32 %f709, %f708, %f287; - mul.ftz.f32 %f710, %f701, %f611; - fma.rn.ftz.f32 %f711, %f291, %f706, %f709; - fma.rn.ftz.f32 %f712, %f612, %f703, %f710; - fma.rn.ftz.f32 %f713, %f284, %f707, %f711; - fma.rn.ftz.f32 %f714, %f613, %f705, %f712; - neg.ftz.f32 %f715, %f714; - mul.ftz.f32 %f716, %f470, %f713; - fma.rn.ftz.f32 %f717, %f467, %f715, %f716; - mul.ftz.f32 %f718, %f393, %f717; - mul.ftz.f32 %f719, %f713, %f414; - fma.rn.ftz.f32 %f720, %f477, %f715, %f719; - fma.rn.ftz.f32 %f721, %f391, %f720, %f718; - sub.ftz.f32 %f157, %f157, %f721; - mul.lo.s32 %r34, %r15, %r2; - cvt.s64.s32 %rd44, %r34; - mul.wide.s32 %rd45, %r34, 4; - add.u64 %rd25, %rd25, %rd45; - setp.gt.u64 %p22, %rd28, %rd25; - @%p22 bra $Lt_0_51970; - bra.uni $Lt_0_51458; -$Lt_0_75266: - mov.f32 %f157, 0f00000000; // 0 - mov.f32 %f158, 0f00000000; // 0 - mov.f32 %f159, 0f00000000; // 0 - mov.f32 %f160, 0f00000000; // 0 - mov.f32 %f161, 0f00000000; // 0 - mov.f32 %f162, 0f00000000; // 0 - mov.f32 %f163, 0f00000000; // 0 -$Lt_0_51458: - mov.u32 %r35, 1; - setp.le.s32 %p23, %r2, %r35; - @%p23 bra $Lt_0_71426; - .loc 17 267 0 - mov.u64 %rd46, __cuda___cuda_local_var_33120_37_non_const_red_acc136; - cvt.s64.s32 %rd47, %r3; - mul.wide.s32 %rd48, %r3, 4; - add.u64 %rd49, %rd46, %rd48; - mov.f32 %f722, %f162; - st.shared.f32 [%rd49+0], %f722; - .loc 17 268 0 - mov.f32 %f723, %f161; - st.shared.f32 [%rd49+512], %f723; - .loc 17 269 0 - mov.f32 %f724, %f160; - st.shared.f32 [%rd49+1024], %f724; - .loc 17 270 0 - mov.f32 %f725, %f159; - st.shared.f32 [%rd49+1536], %f725; - .loc 17 271 0 - mov.f32 %f726, %f158; - st.shared.f32 [%rd49+2048], %f726; - .loc 17 272 0 - mov.f32 %f727, %f157; - st.shared.f32 [%rd49+2560], %f727; - .loc 17 274 0 - shr.s32 %r36, %r2, 31; - mov.s32 %r37, 1; - and.b32 %r38, %r36, %r37; - add.s32 %r39, %r38, %r2; - shr.s32 %r40, %r39, 1; - mov.s32 %r41, %r40; - mov.u32 %r42, 0; - setp.ne.u32 %p24, %r40, %r42; - @!%p24 bra $Lt_0_69890; -$Lt_0_70402: - setp.ge.u32 %p25, %r17, %r41; - @%p25 bra $Lt_0_70658; - .loc 17 277 0 - add.u32 %r43, %r3, %r41; - cvt.u64.u32 %rd50, %r43; - mul.wide.u32 %rd51, %r43, 4; - add.u64 %rd52, %rd46, %rd51; - ld.shared.f32 %f728, [%rd52+0]; - add.ftz.f32 %f722, %f728, %f722; - st.shared.f32 [%rd49+0], %f722; - ld.shared.f32 %f729, [%rd52+512]; - add.ftz.f32 %f723, %f729, %f723; - st.shared.f32 [%rd49+512], %f723; - ld.shared.f32 %f730, [%rd52+1024]; - add.ftz.f32 %f724, %f730, %f724; - st.shared.f32 [%rd49+1024], %f724; - ld.shared.f32 %f731, [%rd52+1536]; - add.ftz.f32 %f725, %f731, %f725; - st.shared.f32 [%rd49+1536], %f725; - ld.shared.f32 %f732, [%rd52+2048]; - add.ftz.f32 %f726, %f732, %f726; - st.shared.f32 [%rd49+2048], %f726; - ld.shared.f32 %f733, [%rd52+2560]; - add.ftz.f32 %f727, %f733, %f727; - st.shared.f32 [%rd49+2560], %f727; -$Lt_0_70658: - .loc 17 274 0 - shr.u32 %r41, %r41, 1; - mov.u32 %r44, 0; - setp.ne.u32 %p26, %r41, %r44; - @%p26 bra $Lt_0_70402; -$Lt_0_69890: - .loc 17 281 0 - mov.f32 %f162, %f722; - .loc 17 282 0 - mov.f32 %f161, %f723; - .loc 17 283 0 - mov.f32 %f160, %f724; - .loc 17 284 0 - mov.f32 %f159, %f725; - .loc 17 285 0 - mov.f32 %f158, %f726; - .loc 17 286 0 - mov.f32 %f157, %f727; - ld.param.s32 %r45, [__cudaparm_kernel_ellipsoid_sphere_eflag]; - mov.s32 %r46, 0; - set.gt.u32.s32 %r47, %r45, %r46; - neg.s32 %r48, %r47; - ld.param.s32 %r49, [__cudaparm_kernel_ellipsoid_sphere_vflag]; - mov.s32 %r50, 0; - set.gt.u32.s32 %r51, %r49, %r50; - neg.s32 %r52, %r51; - or.b32 %r53, %r48, %r52; - mov.u32 %r54, 0; - setp.eq.s32 %p27, %r53, %r54; - @%p27 bra $Lt_0_71426; - .loc 17 290 0 - mov.f32 %f722, %f47; - st.shared.f32 [%rd49+0], %f722; - mov.f32 %f723, %f49; - st.shared.f32 [%rd49+512], %f723; - mov.f32 %f724, %f51; - st.shared.f32 [%rd49+1024], %f724; - mov.f32 %f725, %f53; - st.shared.f32 [%rd49+1536], %f725; - mov.f32 %f726, %f55; - st.shared.f32 [%rd49+2048], %f726; - mov.f32 %f727, %f56; - st.shared.f32 [%rd49+2560], %f727; - .loc 17 291 0 - mov.f32 %f734, %f163; - st.shared.f32 [%rd49+3072], %f734; - .loc 17 293 0 - mov.s32 %r55, %r40; - @!%p24 bra $Lt_0_71938; -$Lt_0_72450: - setp.ge.u32 %p28, %r17, %r55; - @%p28 bra $Lt_0_72706; - .loc 17 296 0 - add.u32 %r56, %r3, %r55; - cvt.u64.u32 %rd53, %r56; - mul.wide.u32 %rd54, %r56, 4; - add.u64 %rd55, %rd46, %rd54; - ld.shared.f32 %f735, [%rd55+0]; - add.ftz.f32 %f722, %f735, %f722; - st.shared.f32 [%rd49+0], %f722; - ld.shared.f32 %f736, [%rd55+512]; - add.ftz.f32 %f723, %f736, %f723; - st.shared.f32 [%rd49+512], %f723; - ld.shared.f32 %f737, [%rd55+1024]; - add.ftz.f32 %f724, %f737, %f724; - st.shared.f32 [%rd49+1024], %f724; - ld.shared.f32 %f738, [%rd55+1536]; - add.ftz.f32 %f725, %f738, %f725; - st.shared.f32 [%rd49+1536], %f725; - ld.shared.f32 %f739, [%rd55+2048]; - add.ftz.f32 %f726, %f739, %f726; - st.shared.f32 [%rd49+2048], %f726; - ld.shared.f32 %f740, [%rd55+2560]; - add.ftz.f32 %f727, %f740, %f727; - st.shared.f32 [%rd49+2560], %f727; - ld.shared.f32 %f741, [%rd55+3072]; - add.ftz.f32 %f734, %f741, %f734; - st.shared.f32 [%rd49+3072], %f734; -$Lt_0_72706: - .loc 17 293 0 - shr.u32 %r55, %r55, 1; - mov.u32 %r57, 0; - setp.ne.u32 %p29, %r55, %r57; - @%p29 bra $Lt_0_72450; -$Lt_0_71938: - .loc 17 301 0 - mov.f32 %f47, %f722; - mov.f32 %f49, %f723; - mov.f32 %f51, %f724; - mov.f32 %f53, %f725; - mov.f32 %f55, %f726; - mov.f32 %f57, %f727; - .loc 17 302 0 - mov.f32 %f163, %f734; -$Lt_0_71426: -$Lt_0_69378: - mov.u32 %r58, 0; - setp.ne.s32 %p30, %r17, %r58; - @%p30 bra $Lt_0_73474; - .loc 17 308 0 - ld.param.u64 %rd56, [__cudaparm_kernel_ellipsoid_sphere_engv]; - add.u64 %rd57, %rd56, %rd3; - ld.param.s32 %r59, [__cudaparm_kernel_ellipsoid_sphere_astride]; - ld.param.s32 %r60, [__cudaparm_kernel_ellipsoid_sphere_eflag]; - mov.u32 %r61, 0; - setp.le.s32 %p31, %r60, %r61; - @%p31 bra $Lt_0_73986; - .loc 17 310 0 - ld.global.f32 %f742, [%rd57+0]; - add.ftz.f32 %f743, %f742, %f163; - st.global.f32 [%rd57+0], %f743; - .loc 17 311 0 - cvt.s64.s32 %rd58, %r59; - mul.wide.s32 %rd59, %r59, 4; - add.u64 %rd57, %rd57, %rd59; -$Lt_0_73986: - ld.param.s32 %r62, [__cudaparm_kernel_ellipsoid_sphere_vflag]; - mov.u32 %r63, 0; - setp.le.s32 %p32, %r62, %r63; - @%p32 bra $Lt_0_74498; - .loc 17 315 0 - ld.global.f32 %f744, [%rd57+0]; - mov.f32 %f745, %f47; - add.ftz.f32 %f746, %f744, %f745; - st.global.f32 [%rd57+0], %f746; - .loc 17 316 0 - cvt.s64.s32 %rd60, %r59; - mul.wide.s32 %rd61, %r59, 4; - add.u64 %rd62, %rd61, %rd57; - .loc 17 315 0 - ld.global.f32 %f747, [%rd62+0]; - mov.f32 %f748, %f49; - add.ftz.f32 %f749, %f747, %f748; - st.global.f32 [%rd62+0], %f749; - .loc 17 316 0 - add.u64 %rd63, %rd61, %rd62; - .loc 17 315 0 - ld.global.f32 %f750, [%rd63+0]; - mov.f32 %f751, %f51; - add.ftz.f32 %f752, %f750, %f751; - st.global.f32 [%rd63+0], %f752; - .loc 17 316 0 - add.u64 %rd64, %rd61, %rd63; - .loc 17 315 0 - ld.global.f32 %f753, [%rd64+0]; - mov.f32 %f754, %f53; - add.ftz.f32 %f755, %f753, %f754; - st.global.f32 [%rd64+0], %f755; - .loc 17 316 0 - add.u64 %rd65, %rd61, %rd64; - .loc 17 315 0 - ld.global.f32 %f756, [%rd65+0]; - mov.f32 %f757, %f55; - add.ftz.f32 %f758, %f756, %f757; - st.global.f32 [%rd65+0], %f758; - .loc 17 316 0 - add.u64 %rd57, %rd61, %rd65; - .loc 17 315 0 - ld.global.f32 %f759, [%rd57+0]; - mov.f32 %f760, %f57; - add.ftz.f32 %f761, %f759, %f760; - st.global.f32 [%rd57+0], %f761; -$Lt_0_74498: - .loc 17 319 0 - ld.param.u64 %rd66, [__cudaparm_kernel_ellipsoid_sphere_ans]; - mul.lo.u64 %rd67, %rd2, 16; - add.u64 %rd68, %rd66, %rd67; - ld.global.v4.f32 {%f762,%f763,%f764,%f765}, [%rd68+0]; - .loc 17 321 0 - add.ftz.f32 %f766, %f763, %f161; - .loc 17 322 0 - add.ftz.f32 %f767, %f764, %f160; - .loc 17 323 0 - add.ftz.f32 %f768, %f762, %f162; - st.global.v4.f32 [%rd68+0], {%f768,%f766,%f767,%f765}; - .loc 17 325 0 - add.s32 %r64, %r9, %r59; - cvt.s64.s32 %rd69, %r64; - mul.wide.s32 %rd70, %r64, 16; - add.u64 %rd71, %rd66, %rd70; - ld.global.v4.f32 {%f769,%f770,%f771,%f772}, [%rd71+0]; - .loc 17 327 0 - add.ftz.f32 %f773, %f770, %f158; - .loc 17 328 0 - add.ftz.f32 %f774, %f771, %f157; - .loc 17 329 0 - add.ftz.f32 %f775, %f769, %f159; - st.global.v4.f32 [%rd71+0], {%f775,%f773,%f774,%f772}; -$Lt_0_73474: -$Lt_0_50946: - .loc 17 332 0 - exit; -$LDWend_kernel_ellipsoid_sphere: - } // kernel_ellipsoid_sphere - - .entry kernel_sphere_ellipsoid ( - .param .u64 __cudaparm_kernel_sphere_ellipsoid_x_, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_q, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_shape, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_well, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_splj, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_sig_eps, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_ntypes, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_dev_nbor, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_stride, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_ans, - .param .u64 __cudaparm_kernel_sphere_ellipsoid___val_paramengv, - .param .u64 __cudaparm_kernel_sphere_ellipsoid_err_flag, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_eflag, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_vflag, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_start, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_inum, - .param .s32 __cudaparm_kernel_sphere_ellipsoid_t_per_atom) - { - .reg .u32 %r<58>; - .reg .u64 %rd<70>; - .reg .f32 %f<567>; - .reg .pred %p<34>; - .shared .align 16 .b8 __cuda___cuda_local_var_33201_33_non_const_sp_lj3836[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33377_55_non_const_red_acc3852[3072]; - .shared .f32 __cuda_local_var_33207_33_non_const_b_alpha; - .shared .f32 __cuda_local_var_33207_42_non_const_cr60; - .shared .f32 __cuda_local_var_33207_48_non_const_solv_f_a; - .shared .f32 __cuda_local_var_33207_58_non_const_solv_f_r; - // __cuda_local_var_33214_10_non_const_f = 80 - // __cuda_local_var_33218_9_non_const_virial = 32 - // __cuda_local_var_33344_15_non_const_u = 56 - .loc 17 341 0 -$LDWbegin_kernel_sphere_ellipsoid: - .loc 17 347 0 - ld.param.u64 %rd1, [__cudaparm_kernel_sphere_ellipsoid_splj]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 17 348 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 17 349 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 17 350 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_33201_33_non_const_sp_lj3836+0], {%f1,%f2,%f3,%f4}; - .loc 17 353 0 - mov.f32 %f5, 0f3f4db6db; // 0.803571 - st.shared.f32 [__cuda_local_var_33207_33_non_const_b_alpha], %f5; - .loc 17 354 0 - mov.f32 %f6, 0f42700000; // 60 - lg2.approx.ftz.f32 %f7, %f6; - mov.f32 %f8, 0f3eaaaaab; // 0.333333 - mul.ftz.f32 %f9, %f7, %f8; - ex2.approx.ftz.f32 %f10, %f9; - mov.f32 %f11, 0f42700000; // 60 - mul.ftz.f32 %f12, %f10, %f10; - div.approx.ftz.f32 %f13, %f11, %f12; - sub.ftz.f32 %f14, %f10, %f13; - mov.f32 %f15, 0f3eaaaaab; // 0.333333 - mul.ftz.f32 %f16, %f14, %f15; - sub.ftz.f32 %f17, %f10, %f16; - st.shared.f32 [__cuda_local_var_33207_42_non_const_cr60], %f17; - .loc 21 544 0 - mov.f32 %f18, 0f3f800000; // 1 - mov.f32 %f19, 0fbf52c7ea; // -0.823363 - mov.f32 %f20, 0fc0b59883; // -5.67487 - fma.rn.ftz.f32 %f21, %f18, %f19, %f20; - mov.f32 %f22, 0f41455dc0; // 12.3354 - mov.f32 %f23, 0f3f800000; // 1 - mov.f32 %f24, 0f41e6bd60; // 28.8425 - fma.rn.ftz.f32 %f25, %f22, %f23, %f24; - mov.f32 %f26, 0f3f800000; // 1 - mov.f32 %f27, 0fc0d21907; // -6.56556 - fma.rn.ftz.f32 %f28, %f21, %f26, %f27; - mov.f32 %f29, 0f3f800000; // 1 - mov.f32 %f30, 0f419d92c8; // 19.6967 - fma.rn.ftz.f32 %f31, %f25, %f29, %f30; - rcp.approx.ftz.f32 %f32, %f31; - mov.f32 %f33, 0f3f800000; // 1 - fma.rn.ftz.f32 %f34, %f28, %f32, %f33; - mov.b32 %r1, %f34; - mov.b32 %f35, %r1; - mov.f32 %f36, 0f41800000; // 16 - mul.ftz.f32 %f37, %f35, %f36; - mov.f32 %f38, 0f40400000; // 3 - mov.f32 %f39, 0fc2100000; // -36 - mul.ftz.f32 %f40, %f37, %f39; - div.approx.ftz.f32 %f41, %f38, %f40; - .loc 17 355 0 - st.shared.f32 [__cuda_local_var_33207_48_non_const_solv_f_a], %f41; - .loc 21 544 0 - mov.f32 %f42, 0f40400000; // 3 - mov.f32 %f43, 0f44fd2000; // 2025 - mul.ftz.f32 %f44, %f37, %f43; - div.approx.ftz.f32 %f45, %f42, %f44; - .loc 17 356 0 - st.shared.f32 [__cuda_local_var_33207_58_non_const_solv_f_r], %f45; - .loc 17 365 0 - mov.f32 %f46, 0f00000000; // 0 - mov.f32 %f47, %f46; - mov.f32 %f48, 0f00000000; // 0 - mov.f32 %f49, %f48; - mov.f32 %f50, 0f00000000; // 0 - mov.f32 %f51, %f50; - mov.f32 %f52, 0f00000000; // 0 - mov.f32 %f53, %f52; - mov.f32 %f54, 0f00000000; // 0 - mov.f32 %f55, %f54; - mov.f32 %f56, 0f00000000; // 0 - mov.f32 %f57, %f56; - ld.param.s32 %r2, [__cudaparm_kernel_sphere_ellipsoid_t_per_atom]; - cvt.s32.u32 %r3, %tid.x; - div.s32 %r4, %r3, %r2; - cvt.s32.u32 %r5, %ntid.x; - div.s32 %r6, %r5, %r2; - cvt.s32.u32 %r7, %ctaid.x; - mul.lo.s32 %r8, %r7, %r6; - add.s32 %r9, %r4, %r8; - ld.param.s32 %r10, [__cudaparm_kernel_sphere_ellipsoid_start]; - add.s32 %r11, %r10, %r9; - ld.param.s32 %r12, [__cudaparm_kernel_sphere_ellipsoid_inum]; - setp.ge.s32 %p1, %r11, %r12; - @%p1 bra $Lt_1_73218; - .loc 17 370 0 - cvt.s64.s32 %rd2, %r11; - mul.wide.s32 %rd3, %r11, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_sphere_ellipsoid_dev_nbor]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r13, [%rd5+0]; - ld.param.s32 %r14, [__cudaparm_kernel_sphere_ellipsoid_stride]; - cvt.s64.s32 %rd6, %r14; - mul.wide.s32 %rd7, %r14, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r15, [%rd8+0]; - .loc 17 373 0 - ld.param.u64 %rd9, [__cudaparm_kernel_sphere_ellipsoid_x_]; - cvt.s64.s32 %rd10, %r13; - mul.wide.s32 %rd11, %r13, 16; - add.u64 %rd12, %rd9, %rd11; - ld.global.v4.f32 {%f58,%f59,%f60,%f61}, [%rd12+0]; - .loc 17 374 0 - cvt.s32.s64 %r16, %rd6; - sub.s32 %r17, %r2, 1; - and.b32 %r18, %r17, %r3; - add.u64 %rd13, %rd7, %rd8; - mul.lo.s32 %r19, %r16, %r18; - cvt.s64.s32 %rd14, %r19; - mul.wide.s32 %rd15, %r19, 4; - add.u64 %rd16, %rd13, %rd15; - mov.s64 %rd17, %rd16; - mul.lo.s32 %r20, %r16, %r15; - cvt.s64.s32 %rd18, %r20; - mul.wide.s32 %rd19, %r20, 4; - add.u64 %rd20, %rd13, %rd19; - setp.ge.u64 %p2, %rd16, %rd20; - @%p2 bra $Lt_1_75010; - ld.param.s32 %r21, [__cudaparm_kernel_sphere_ellipsoid_vflag]; - mov.s32 %r22, 0; - setp.gt.s32 %p3, %r21, %r22; - cvt.rzi.ftz.s32.f32 %r23, %f61; - ld.param.u64 %rd21, [__cudaparm_kernel_sphere_ellipsoid_sig_eps]; - ld.param.s32 %r24, [__cudaparm_kernel_sphere_ellipsoid_ntypes]; - ld.param.u64 %rd22, [__cudaparm_kernel_sphere_ellipsoid_well]; - ld.param.u64 %rd23, [__cudaparm_kernel_sphere_ellipsoid_q]; - ld.param.u64 %rd24, [__cudaparm_kernel_sphere_ellipsoid_shape]; - mov.f32 %f62, 0f00000000; // 0 - mov.f32 %f63, 0f00000000; // 0 - mov.f32 %f64, 0f00000000; // 0 - mov.f32 %f65, 0f00000000; // 0 - mov.u64 %rd25, __cuda___cuda_local_var_33201_33_non_const_sp_lj3836; -$Lt_1_51714: - // Loop body line 374, nesting depth: 1, estimated iterations: unknown - .loc 17 378 0 - ld.global.s32 %r25, [%rd17+0]; - .loc 17 382 0 - and.b32 %r26, %r25, 1073741823; - cvt.s64.s32 %rd26, %r26; - mul.wide.s32 %rd27, %r26, 16; - add.u64 %rd28, %rd27, %rd9; - ld.global.v4.f32 {%f66,%f67,%f68,%f69}, [%rd28+0]; - .loc 17 389 0 - cvt.rzi.ftz.s32.f32 %r27, %f69; - cvt.s64.s32 %rd29, %r27; - mul.wide.s32 %rd30, %r27, 16; - add.u64 %rd31, %rd30, %rd24; - ld.global.v4.f32 {%f70,%f71,%f72,_}, [%rd31+0]; - .loc 17 390 0 - add.u64 %rd32, %rd27, %rd23; - ld.global.v4.f32 {%f73,%f74,%f75,%f76}, [%rd32+0]; - .loc 17 391 0 - add.u64 %rd33, %rd30, %rd22; - ld.global.v4.f32 {%f77,%f78,%f79,_}, [%rd33+0]; - .loc 17 401 0 - sub.ftz.f32 %f80, %f67, %f59; - sub.ftz.f32 %f81, %f66, %f58; - sub.ftz.f32 %f82, %f68, %f60; - mul.ftz.f32 %f83, %f80, %f80; - fma.rn.ftz.f32 %f84, %f81, %f81, %f83; - fma.rn.ftz.f32 %f85, %f82, %f82, %f84; - rsqrt.approx.ftz.f32 %f86, %f85; - mul.ftz.f32 %f87, %f81, %f86; - .loc 17 402 0 - mul.ftz.f32 %f88, %f80, %f86; - .loc 17 407 0 - mul.lo.s32 %r28, %r27, %r24; - add.s32 %r29, %r23, %r28; - cvt.s64.s32 %rd34, %r29; - mul.wide.s32 %rd35, %r29, 8; - add.u64 %rd36, %rd21, %rd35; - ld.global.v2.f32 {%f89,%f90}, [%rd36+0]; - .loc 17 408 0 - shr.s32 %r30, %r25, 30; - and.b32 %r31, %r30, 3; - cvt.s64.s32 %rd37, %r31; - mul.wide.s32 %rd38, %r31, 4; - add.u64 %rd39, %rd25, %rd38; - ld.shared.f32 %f91, [%rd39+0]; - mul.ftz.f32 %f92, %f91, %f90; - .loc 16 299 0 - mov.f32 %f93, %f87; - .loc 16 300 0 - mov.f32 %f94, 0f3f000000; // 0.5 - mul.ftz.f32 %f95, %f89, %f94; - add.ftz.f32 %f96, %f74, %f74; - add.ftz.f32 %f97, %f76, %f76; - mul.ftz.f32 %f98, %f73, %f73; - mul.ftz.f32 %f99, %f74, %f74; - mul.ftz.f32 %f100, %f75, %f75; - mul.ftz.f32 %f101, %f76, %f76; - add.ftz.f32 %f102, %f75, %f75; - add.ftz.f32 %f103, %f95, %f71; - add.ftz.f32 %f104, %f95, %f70; - add.ftz.f32 %f105, %f95, %f72; - mul.ftz.f32 %f106, %f96, %f75; - mul.ftz.f32 %f107, %f96, %f76; - mul.ftz.f32 %f108, %f97, %f73; - add.ftz.f32 %f109, %f98, %f99; - mul.ftz.f32 %f110, %f102, %f73; - mul.ftz.f32 %f111, %f103, %f103; - mul.ftz.f32 %f112, %f104, %f104; - mul.ftz.f32 %f113, %f105, %f105; - sub.ftz.f32 %f114, %f106, %f108; - sub.ftz.f32 %f115, %f109, %f100; - add.ftz.f32 %f116, %f107, %f110; - mov.f32 %f117, 0f3f000000; // 0.5 - mul.ftz.f32 %f118, %f111, %f117; - mov.f32 %f119, 0f3f000000; // 0.5 - mul.ftz.f32 %f120, %f112, %f119; - mov.f32 %f121, 0f3f000000; // 0.5 - mul.ftz.f32 %f122, %f113, %f121; - sub.ftz.f32 %f123, %f115, %f101; - mul.ftz.f32 %f124, %f114, %f118; - mul.ftz.f32 %f125, %f116, %f122; - mul.ftz.f32 %f126, %f120, %f123; - mul.ftz.f32 %f127, %f114, %f124; - fma.rn.ftz.f32 %f128, %f123, %f126, %f127; - fma.rn.ftz.f32 %f129, %f125, %f116, %f128; - mov.f32 %f130, %f129; - .loc 16 301 0 - mul.ftz.f32 %f131, %f96, %f73; - sub.ftz.f32 %f132, %f98, %f99; - mul.ftz.f32 %f133, %f102, %f76; - add.ftz.f32 %f134, %f106, %f108; - add.ftz.f32 %f135, %f100, %f132; - sub.ftz.f32 %f136, %f133, %f131; - sub.ftz.f32 %f137, %f135, %f101; - mul.ftz.f32 %f138, %f137, %f124; - fma.rn.ftz.f32 %f139, %f126, %f134, %f138; - fma.rn.ftz.f32 %f140, %f125, %f136, %f139; - mov.f32 %f141, %f140; - .loc 16 302 0 - sub.ftz.f32 %f142, %f132, %f100; - sub.ftz.f32 %f143, %f107, %f110; - add.ftz.f32 %f144, %f131, %f133; - add.ftz.f32 %f145, %f101, %f142; - mul.ftz.f32 %f146, %f144, %f124; - fma.rn.ftz.f32 %f147, %f126, %f143, %f146; - fma.rn.ftz.f32 %f148, %f125, %f145, %f147; - mov.f32 %f149, %f148; - .loc 16 303 0 - mov.f32 %f150, %f88; - .loc 16 304 0 - mul.ftz.f32 %f151, %f134, %f120; - mul.ftz.f32 %f152, %f136, %f122; - mul.ftz.f32 %f153, %f118, %f137; - mul.ftz.f32 %f154, %f114, %f153; - fma.rn.ftz.f32 %f155, %f123, %f151, %f154; - fma.rn.ftz.f32 %f156, %f152, %f116, %f155; - mov.f32 %f157, %f156; - .loc 16 305 0 - mul.ftz.f32 %f158, %f137, %f153; - fma.rn.ftz.f32 %f159, %f134, %f151, %f158; - fma.rn.ftz.f32 %f160, %f152, %f136, %f159; - .loc 16 306 0 - mul.ftz.f32 %f161, %f144, %f153; - fma.rn.ftz.f32 %f162, %f143, %f151, %f161; - fma.rn.ftz.f32 %f163, %f152, %f145, %f162; - .loc 16 307 0 - mul.ftz.f32 %f164, %f82, %f86; - mov.f32 %f165, %f164; - .loc 16 308 0 - mul.ftz.f32 %f166, %f144, %f118; - mul.ftz.f32 %f167, %f143, %f120; - mul.ftz.f32 %f168, %f122, %f145; - mul.ftz.f32 %f169, %f114, %f166; - fma.rn.ftz.f32 %f170, %f123, %f167, %f169; - fma.rn.ftz.f32 %f171, %f116, %f168, %f170; - mov.f32 %f172, %f171; - .loc 16 309 0 - mul.ftz.f32 %f173, %f137, %f166; - fma.rn.ftz.f32 %f174, %f134, %f167, %f173; - fma.rn.ftz.f32 %f175, %f136, %f168, %f174; - .loc 16 310 0 - mul.ftz.f32 %f176, %f144, %f166; - fma.rn.ftz.f32 %f177, %f143, %f167, %f176; - fma.rn.ftz.f32 %f178, %f145, %f168, %f177; - abs.ftz.f32 %f179, %f156; - abs.ftz.f32 %f180, %f129; - setp.gt.ftz.f32 %p4, %f179, %f180; - @!%p4 bra $Lt_1_51970; - .loc 16 314 0 - mov.f32 %f130, %f156; - mov.f32 %f157, %f129; - .loc 16 315 0 - mov.f32 %f141, %f160; - mov.f32 %f160, %f140; - .loc 16 316 0 - mov.f32 %f149, %f163; - mov.f32 %f163, %f148; - .loc 16 317 0 - mov.f32 %f93, %f88; - mov.f32 %f150, %f87; -$Lt_1_51970: - mov.f32 %f181, %f130; - abs.ftz.f32 %f182, %f181; - abs.ftz.f32 %f183, %f171; - setp.lt.ftz.f32 %p5, %f182, %f183; - @!%p5 bra $Lt_1_52482; - .loc 16 321 0 - mov.f32 %f130, %f171; - mov.f32 %f172, %f181; - .loc 16 322 0 - mov.f32 %f184, %f141; - mov.f32 %f141, %f175; - mov.f32 %f175, %f184; - .loc 16 323 0 - mov.f32 %f185, %f149; - mov.f32 %f149, %f178; - mov.f32 %f178, %f185; - .loc 16 324 0 - mov.f32 %f186, %f93; - mov.f32 %f93, %f164; - mov.f32 %f165, %f186; -$Lt_1_52482: - mov.f32 %f187, %f130; - mov.f32 %f188, 0f00000000; // 0 - setp.neu.ftz.f32 %p6, %f187, %f188; - @!%p6 bra $Lt_1_53250; - bra.uni $Lt_1_54018; -$Lt_1_53250: - mov.f32 %f189, 0f00000000; // 0 - setp.neu.ftz.f32 %p7, %f157, %f189; - @!%p7 bra $Lt_1_53762; - .loc 16 338 0 - mov.f32 %f130, %f157; - mov.f32 %f157, %f187; - .loc 16 339 0 - mov.f32 %f190, %f141; - mov.f32 %f141, %f160; - mov.f32 %f160, %f190; - .loc 16 340 0 - mov.f32 %f191, %f149; - mov.f32 %f149, %f163; - mov.f32 %f163, %f191; - .loc 16 341 0 - mov.f32 %f192, %f93; - mov.f32 %f93, %f150; - mov.f32 %f150, %f192; - bra.uni $Lt_1_54018; -$Lt_1_53762: - mov.f32 %f193, 0f00000000; // 0 - setp.neu.ftz.f32 %p8, %f172, %f193; - @!%p8 bra $Lt_1_54274; - .loc 16 346 0 - mov.f32 %f130, %f172; - mov.f32 %f172, %f187; - .loc 16 347 0 - mov.f32 %f194, %f141; - mov.f32 %f141, %f175; - mov.f32 %f175, %f194; - .loc 16 348 0 - mov.f32 %f195, %f149; - mov.f32 %f149, %f178; - mov.f32 %f178, %f195; - .loc 16 349 0 - mov.f32 %f196, %f93; - mov.f32 %f93, %f165; - mov.f32 %f165, %f196; - bra.uni $Lt_1_54018; -$Lt_1_54274: - .loc 16 352 0 - mov.s32 %r32, 2; - ld.param.u64 %rd40, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd40+0], %r32; -$Lt_1_54018: -$Lt_1_53506: -$Lt_1_52994: - .loc 16 355 0 - div.approx.ftz.f32 %f197, %f157, %f130; - mul.ftz.f32 %f198, %f141, %f197; - sub.ftz.f32 %f199, %f160, %f198; - mov.f32 %f160, %f199; - .loc 16 356 0 - mul.ftz.f32 %f200, %f149, %f197; - sub.ftz.f32 %f201, %f163, %f200; - mov.f32 %f163, %f201; - .loc 16 357 0 - mul.ftz.f32 %f202, %f93, %f197; - sub.ftz.f32 %f203, %f150, %f202; - mov.f32 %f150, %f203; - .loc 16 359 0 - div.approx.ftz.f32 %f204, %f172, %f130; - mul.ftz.f32 %f205, %f141, %f204; - sub.ftz.f32 %f175, %f175, %f205; - .loc 16 360 0 - mul.ftz.f32 %f206, %f149, %f204; - sub.ftz.f32 %f178, %f178, %f206; - .loc 16 361 0 - mul.ftz.f32 %f207, %f93, %f204; - sub.ftz.f32 %f165, %f165, %f207; - abs.ftz.f32 %f208, %f199; - abs.ftz.f32 %f209, %f175; - setp.lt.ftz.f32 %p9, %f208, %f209; - @!%p9 bra $Lt_1_54530; - .loc 16 366 0 - mov.f32 %f160, %f175; - mov.f32 %f175, %f199; - .loc 16 367 0 - mov.f32 %f163, %f178; - mov.f32 %f178, %f201; - .loc 16 368 0 - mov.f32 %f150, %f165; - mov.f32 %f165, %f203; -$Lt_1_54530: - mov.f32 %f210, %f160; - mov.f32 %f211, 0f00000000; // 0 - setp.neu.ftz.f32 %p10, %f210, %f211; - @!%p10 bra $Lt_1_55298; - bra.uni $Lt_1_55554; -$Lt_1_55298: - mov.f32 %f212, 0f00000000; // 0 - setp.neu.ftz.f32 %p11, %f175, %f212; - @!%p11 bra $Lt_1_55554; - .loc 16 383 0 - mov.f32 %f160, %f175; - mov.f32 %f175, %f210; - .loc 16 384 0 - mov.f32 %f213, %f163; - mov.f32 %f163, %f178; - mov.f32 %f178, %f213; - .loc 16 385 0 - mov.f32 %f214, %f150; - mov.f32 %f150, %f165; - mov.f32 %f165, %f214; -$Lt_1_55554: -$Lt_1_55042: - .loc 16 390 0 - div.approx.ftz.f32 %f215, %f175, %f160; - mul.ftz.f32 %f216, %f163, %f215; - sub.ftz.f32 %f178, %f178, %f216; - .loc 16 391 0 - mul.ftz.f32 %f217, %f150, %f215; - sub.ftz.f32 %f165, %f165, %f217; - mov.f32 %f218, 0f00000000; // 0 - setp.eq.ftz.f32 %p12, %f178, %f218; - @!%p12 bra $Lt_1_56066; - .loc 16 394 0 - mov.s32 %r33, 2; - ld.param.u64 %rd41, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd41+0], %r33; -$Lt_1_56066: - .loc 16 396 0 - div.approx.ftz.f32 %f219, %f165, %f178; - .loc 16 399 0 - mul.ftz.f32 %f220, %f219, %f163; - sub.ftz.f32 %f221, %f150, %f220; - div.approx.ftz.f32 %f222, %f221, %f160; - .loc 16 403 0 - mul.ftz.f32 %f223, %f222, %f141; - fma.rn.ftz.f32 %f224, %f149, %f219, %f223; - sub.ftz.f32 %f225, %f93, %f224; - div.approx.ftz.f32 %f226, %f225, %f130; - .loc 17 427 0 - mul.ftz.f32 %f227, %f222, %f88; - fma.rn.ftz.f32 %f228, %f87, %f226, %f227; - fma.rn.ftz.f32 %f229, %f164, %f219, %f228; - mov.f32 %f230, 0f3f000000; // 0.5 - mul.ftz.f32 %f231, %f229, %f230; - rsqrt.approx.ftz.f32 %f232, %f231; - .loc 16 299 0 - mov.f32 %f93, %f87; - .loc 16 300 0 - mul.ftz.f32 %f233, %f114, %f78; - mul.ftz.f32 %f234, %f116, %f79; - mul.ftz.f32 %f235, %f114, %f233; - mul.ftz.f32 %f236, %f123, %f77; - fma.rn.ftz.f32 %f237, %f123, %f236, %f235; - fma.rn.ftz.f32 %f238, %f234, %f116, %f237; - mov.f32 %f239, 0f3f800000; // 1 - add.ftz.f32 %f240, %f238, %f239; - mov.f32 %f130, %f240; - .loc 16 301 0 - mul.ftz.f32 %f241, %f233, %f137; - fma.rn.ftz.f32 %f242, %f236, %f134, %f241; - fma.rn.ftz.f32 %f243, %f234, %f136, %f242; - mov.f32 %f141, %f243; - .loc 16 302 0 - mul.ftz.f32 %f244, %f144, %f233; - fma.rn.ftz.f32 %f245, %f236, %f143, %f244; - fma.rn.ftz.f32 %f246, %f234, %f145, %f245; - mov.f32 %f149, %f246; - .loc 16 303 0 - mov.f32 %f150, %f88; - .loc 16 304 0 - mul.ftz.f32 %f247, %f134, %f77; - mul.ftz.f32 %f248, %f136, %f79; - mul.ftz.f32 %f249, %f137, %f78; - mul.ftz.f32 %f250, %f114, %f249; - fma.rn.ftz.f32 %f251, %f123, %f247, %f250; - fma.rn.ftz.f32 %f252, %f248, %f116, %f251; - mov.f32 %f157, %f252; - .loc 16 305 0 - mul.ftz.f32 %f253, %f137, %f249; - fma.rn.ftz.f32 %f254, %f134, %f247, %f253; - fma.rn.ftz.f32 %f255, %f248, %f136, %f254; - mov.f32 %f256, 0f3f800000; // 1 - add.ftz.f32 %f160, %f255, %f256; - .loc 16 306 0 - mul.ftz.f32 %f257, %f144, %f249; - fma.rn.ftz.f32 %f258, %f143, %f247, %f257; - fma.rn.ftz.f32 %f163, %f248, %f145, %f258; - .loc 16 307 0 - mov.f32 %f165, %f164; - .loc 16 308 0 - mul.ftz.f32 %f259, %f143, %f77; - mul.ftz.f32 %f260, %f144, %f78; - mul.ftz.f32 %f261, %f145, %f79; - mul.ftz.f32 %f262, %f114, %f260; - fma.rn.ftz.f32 %f263, %f123, %f259, %f262; - fma.rn.ftz.f32 %f264, %f116, %f261, %f263; - mov.f32 %f172, %f264; - .loc 16 309 0 - mul.ftz.f32 %f265, %f137, %f260; - fma.rn.ftz.f32 %f266, %f134, %f259, %f265; - fma.rn.ftz.f32 %f175, %f136, %f261, %f266; - .loc 16 310 0 - mul.ftz.f32 %f267, %f144, %f260; - fma.rn.ftz.f32 %f268, %f143, %f259, %f267; - fma.rn.ftz.f32 %f269, %f145, %f261, %f268; - mov.f32 %f270, 0f3f800000; // 1 - add.ftz.f32 %f178, %f269, %f270; - abs.ftz.f32 %f271, %f252; - abs.ftz.f32 %f272, %f240; - setp.gt.ftz.f32 %p13, %f271, %f272; - @!%p13 bra $Lt_1_56578; - .loc 16 314 0 - mov.f32 %f130, %f252; - mov.f32 %f157, %f240; - .loc 16 315 0 - mov.f32 %f141, %f160; - mov.f32 %f160, %f243; - .loc 16 316 0 - mov.f32 %f149, %f163; - mov.f32 %f163, %f246; - .loc 16 317 0 - mov.f32 %f93, %f88; - mov.f32 %f150, %f87; -$Lt_1_56578: - mov.f32 %f273, %f130; - abs.ftz.f32 %f274, %f273; - abs.ftz.f32 %f275, %f264; - setp.lt.ftz.f32 %p14, %f274, %f275; - @!%p14 bra $Lt_1_57090; - .loc 16 321 0 - mov.f32 %f130, %f264; - mov.f32 %f172, %f273; - .loc 16 322 0 - mov.f32 %f276, %f141; - mov.f32 %f141, %f175; - mov.f32 %f175, %f276; - .loc 16 323 0 - mov.f32 %f277, %f149; - mov.f32 %f149, %f178; - mov.f32 %f178, %f277; - .loc 16 324 0 - mov.f32 %f278, %f93; - mov.f32 %f93, %f164; - mov.f32 %f165, %f278; -$Lt_1_57090: - mov.f32 %f279, %f130; - mov.f32 %f280, 0f00000000; // 0 - setp.neu.ftz.f32 %p15, %f279, %f280; - @!%p15 bra $Lt_1_57858; - bra.uni $Lt_1_58626; -$Lt_1_57858: - mov.f32 %f281, 0f00000000; // 0 - setp.neu.ftz.f32 %p16, %f157, %f281; - @!%p16 bra $Lt_1_58370; - .loc 16 338 0 - mov.f32 %f130, %f157; - mov.f32 %f157, %f279; - .loc 16 339 0 - mov.f32 %f282, %f141; - mov.f32 %f141, %f160; - mov.f32 %f160, %f282; - .loc 16 340 0 - mov.f32 %f283, %f149; - mov.f32 %f149, %f163; - mov.f32 %f163, %f283; - .loc 16 341 0 - mov.f32 %f284, %f93; - mov.f32 %f93, %f150; - mov.f32 %f150, %f284; - bra.uni $Lt_1_58626; -$Lt_1_58370: - mov.f32 %f285, 0f00000000; // 0 - setp.neu.ftz.f32 %p17, %f172, %f285; - @!%p17 bra $Lt_1_58882; - .loc 16 346 0 - mov.f32 %f130, %f172; - mov.f32 %f172, %f279; - .loc 16 347 0 - mov.f32 %f286, %f141; - mov.f32 %f141, %f175; - mov.f32 %f175, %f286; - .loc 16 348 0 - mov.f32 %f287, %f149; - mov.f32 %f149, %f178; - mov.f32 %f178, %f287; - .loc 16 349 0 - mov.f32 %f288, %f93; - mov.f32 %f93, %f165; - mov.f32 %f165, %f288; - bra.uni $Lt_1_58626; -$Lt_1_58882: - .loc 16 352 0 - mov.s32 %r34, 2; - ld.param.u64 %rd42, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd42+0], %r34; -$Lt_1_58626: -$Lt_1_58114: -$Lt_1_57602: - .loc 16 355 0 - div.approx.ftz.f32 %f289, %f157, %f130; - mul.ftz.f32 %f290, %f141, %f289; - sub.ftz.f32 %f291, %f160, %f290; - mov.f32 %f160, %f291; - .loc 16 356 0 - mul.ftz.f32 %f292, %f149, %f289; - sub.ftz.f32 %f293, %f163, %f292; - mov.f32 %f163, %f293; - .loc 16 357 0 - mul.ftz.f32 %f294, %f93, %f289; - sub.ftz.f32 %f295, %f150, %f294; - mov.f32 %f150, %f295; - .loc 16 359 0 - div.approx.ftz.f32 %f296, %f172, %f130; - mul.ftz.f32 %f297, %f141, %f296; - sub.ftz.f32 %f175, %f175, %f297; - .loc 16 360 0 - mul.ftz.f32 %f298, %f149, %f296; - sub.ftz.f32 %f178, %f178, %f298; - .loc 16 361 0 - mul.ftz.f32 %f299, %f93, %f296; - sub.ftz.f32 %f165, %f165, %f299; - abs.ftz.f32 %f300, %f291; - abs.ftz.f32 %f301, %f175; - setp.lt.ftz.f32 %p18, %f300, %f301; - @!%p18 bra $Lt_1_59138; - .loc 16 366 0 - mov.f32 %f160, %f175; - mov.f32 %f175, %f291; - .loc 16 367 0 - mov.f32 %f163, %f178; - mov.f32 %f178, %f293; - .loc 16 368 0 - mov.f32 %f150, %f165; - mov.f32 %f165, %f295; -$Lt_1_59138: - mov.f32 %f302, %f160; - mov.f32 %f303, 0f00000000; // 0 - setp.neu.ftz.f32 %p19, %f302, %f303; - @!%p19 bra $Lt_1_59906; - bra.uni $Lt_1_60162; -$Lt_1_59906: - mov.f32 %f304, 0f00000000; // 0 - setp.neu.ftz.f32 %p20, %f175, %f304; - @!%p20 bra $Lt_1_60162; - .loc 16 383 0 - mov.f32 %f160, %f175; - mov.f32 %f175, %f302; - .loc 16 384 0 - mov.f32 %f305, %f163; - mov.f32 %f163, %f178; - mov.f32 %f178, %f305; - .loc 16 385 0 - mov.f32 %f306, %f150; - mov.f32 %f150, %f165; - mov.f32 %f165, %f306; -$Lt_1_60162: -$Lt_1_59650: - .loc 16 390 0 - div.approx.ftz.f32 %f307, %f175, %f160; - mul.ftz.f32 %f308, %f163, %f307; - sub.ftz.f32 %f178, %f178, %f308; - .loc 16 391 0 - mul.ftz.f32 %f309, %f150, %f307; - sub.ftz.f32 %f165, %f165, %f309; - mov.f32 %f310, 0f00000000; // 0 - setp.eq.ftz.f32 %p21, %f178, %f310; - @!%p21 bra $Lt_1_60674; - .loc 16 394 0 - mov.s32 %r35, 2; - ld.param.u64 %rd43, [__cudaparm_kernel_sphere_ellipsoid_err_flag]; - st.global.s32 [%rd43+0], %r35; -$Lt_1_60674: - .loc 17 436 0 - div.approx.ftz.f32 %f311, %f165, %f178; - mul.ftz.f32 %f312, %f311, %f163; - sub.ftz.f32 %f313, %f150, %f312; - div.approx.ftz.f32 %f314, %f313, %f160; - mul.ftz.f32 %f315, %f314, %f141; - fma.rn.ftz.f32 %f316, %f149, %f311, %f315; - mul.ftz.f32 %f317, %f314, %f88; - sub.ftz.f32 %f318, %f93, %f316; - div.approx.ftz.f32 %f319, %f318, %f130; - fma.rn.ftz.f32 %f320, %f87, %f319, %f317; - fma.rn.ftz.f32 %f321, %f164, %f311, %f320; - add.ftz.f32 %f322, %f321, %f321; - .loc 17 444 0 - rcp.approx.ftz.f32 %f323, %f86; - sub.ftz.f32 %f324, %f323, %f232; - mov.f32 %f325, 0f40000000; // 2 - div.approx.ftz.f32 %f326, %f324, %f325; - mul.ftz.f32 %f327, %f324, %f324; - mul.ftz.f32 %f328, %f324, %f327; - add.ftz.f32 %f329, %f326, %f72; - add.ftz.f32 %f330, %f326, %f70; - add.ftz.f32 %f331, %f326, %f71; - mul.ftz.f32 %f332, %f330, %f331; - mul.ftz.f32 %f333, %f329, %f332; - mul.ftz.f32 %f334, %f328, %f333; - .loc 17 446 0 - mul.ftz.f32 %f335, %f70, %f71; - mul.ftz.f32 %f336, %f335, %f72; - div.approx.ftz.f32 %f337, %f89, %f324; - mul.ftz.f32 %f338, %f337, %f322; - mov.f32 %f339, 0f3f800000; // 1 - mov.f32 %f340, 0f40400000; // 3 - fma.rn.ftz.f32 %f341, %f340, %f338, %f339; - mul.ftz.f32 %f342, %f336, %f341; - .loc 17 450 0 - div.approx.ftz.f32 %f343, %f324, %f17; - add.ftz.f32 %f344, %f343, %f72; - add.ftz.f32 %f345, %f343, %f70; - add.ftz.f32 %f346, %f343, %f71; - mul.ftz.f32 %f347, %f345, %f346; - mul.ftz.f32 %f348, %f344, %f347; - mul.ftz.f32 %f349, %f328, %f348; - .loc 17 452 0 - mov.f32 %f350, 0f3f800000; // 1 - mov.f32 %f351, 0f3f4db6db; // 0.803571 - fma.rn.ftz.f32 %f352, %f351, %f338, %f350; - mul.ftz.f32 %f353, %f336, %f352; - .loc 17 454 0 - mul.ftz.f32 %f354, %f337, %f337; - mul.ftz.f32 %f355, %f337, %f354; - mul.ftz.f32 %f356, %f355, %f355; - .loc 17 457 0 - mul.ftz.f32 %f357, %f89, %f89; - mov.f32 %f358, 0f41000000; // 8 - div.approx.ftz.f32 %f359, %f334, %f358; - mov.f32 %f360, 0f42700000; // 60 - div.approx.ftz.f32 %f361, %f349, %f360; - mul.ftz.f32 %f362, %f357, %f89; - div.approx.ftz.f32 %f363, %f342, %f359; - div.approx.ftz.f32 %f364, %f353, %f361; - mul.ftz.f32 %f365, %f363, %f92; - mul.ftz.f32 %f366, %f364, %f92; - mul.ftz.f32 %f367, %f362, %f365; - mul.ftz.f32 %f368, %f362, %f366; - mul.ftz.f32 %f369, %f367, %f41; - mul.ftz.f32 %f370, %f368, %f356; - mul.ftz.f32 %f371, %f370, %f45; - add.ftz.f32 %f372, %f369, %f371; - add.ftz.f32 %f65, %f65, %f372; - .loc 17 464 0 - mov.f32 %f373, 0f40800000; // 4 - mul.ftz.f32 %f374, %f319, %f373; - .loc 17 471 0 - mov.f32 %f375, 0f40400000; // 3 - div.approx.ftz.f32 %f376, %f375, %f324; - add.ftz.f32 %f377, %f70, %f70; - add.ftz.f32 %f378, %f324, %f377; - rcp.approx.ftz.f32 %f379, %f378; - add.ftz.f32 %f380, %f71, %f71; - add.ftz.f32 %f381, %f324, %f380; - rcp.approx.ftz.f32 %f382, %f381; - add.ftz.f32 %f383, %f379, %f382; - add.ftz.f32 %f384, %f72, %f72; - add.ftz.f32 %f385, %f324, %f384; - rcp.approx.ftz.f32 %f386, %f385; - add.ftz.f32 %f387, %f383, %f386; - add.ftz.f32 %f388, %f376, %f387; - .loc 17 476 0 - mul.ftz.f32 %f389, %f89, %f322; - mov.f32 %f390, 0f40400000; // 3 - fma.rn.ftz.f32 %f391, %f390, %f389, %f324; - rcp.approx.ftz.f32 %f392, %f391; - rcp.approx.ftz.f32 %f393, %f324; - sub.ftz.f32 %f394, %f393, %f392; - add.ftz.f32 %f395, %f388, %f394; - .loc 17 479 0 - fma.rn.ftz.f32 %f396, %f17, %f70, %f324; - rcp.approx.ftz.f32 %f397, %f396; - fma.rn.ftz.f32 %f398, %f17, %f71, %f324; - rcp.approx.ftz.f32 %f399, %f398; - add.ftz.f32 %f400, %f397, %f399; - fma.rn.ftz.f32 %f401, %f17, %f72, %f324; - rcp.approx.ftz.f32 %f402, %f401; - add.ftz.f32 %f403, %f400, %f402; - add.ftz.f32 %f404, %f376, %f403; - .loc 17 490 0 - mul.ftz.f32 %f405, %f87, %f87; - neg.ftz.f32 %f406, %f405; - mov.f32 %f407, %f406; - .loc 17 491 0 - mul.ftz.f32 %f408, %f88, %f87; - neg.ftz.f32 %f409, %f408; - mov.f32 %f410, %f409; - .loc 17 492 0 - mul.ftz.f32 %f411, %f164, %f87; - neg.ftz.f32 %f412, %f411; - mov.f32 %f413, %f412; - .loc 17 493 0 - mov.f32 %f414, 0f3f800000; // 1 - sub.ftz.f32 %f415, %f414, %f405; - mov.f32 %f416, %f415; - .loc 17 494 0 - mul.ftz.f32 %f417, %f86, %f415; - mov.f32 %f418, %f417; - .loc 17 495 0 - mov.f32 %f419, %f410; - mul.ftz.f32 %f420, %f419, %f86; - mov.f32 %f421, %f420; - .loc 17 496 0 - mov.f32 %f422, %f413; - mul.ftz.f32 %f423, %f422, %f86; - mov.f32 %f424, %f423; - .loc 17 500 0 - mul.ftz.f32 %f425, %f232, %f232; - mov.f32 %f426, 0f3f4db6db; // 0.803571 - mul.ftz.f32 %f427, %f89, %f426; - mov.f32 %f428, 0f40800000; // 4 - mul.ftz.f32 %f429, %f311, %f428; - mul.ftz.f32 %f430, %f425, %f232; - mov.f32 %f431, 0f3f000000; // 0.5 - mul.ftz.f32 %f432, %f430, %f431; - mul.ftz.f32 %f433, %f432, %f222; - mul.ftz.f32 %f434, %f432, %f226; - mul.ftz.f32 %f435, %f432, %f219; - mov.f32 %f436, 0f40800000; // 4 - mul.ftz.f32 %f437, %f314, %f436; - mul.ftz.f32 %f438, %f433, %f420; - mul.ftz.f32 %f439, %f437, %f420; - mov.f32 %f440, 0f40e00000; // 7 - div.approx.ftz.f32 %f441, %f440, %f324; - mov.f32 %f442, 0f3f4db6db; // 0.803571 - fma.rn.ftz.f32 %f443, %f442, %f389, %f324; - rcp.approx.ftz.f32 %f444, %f443; - fma.rn.ftz.f32 %f445, %f434, %f417, %f438; - fma.rn.ftz.f32 %f446, %f374, %f417, %f439; - sub.ftz.f32 %f447, %f441, %f444; - mul.ftz.f32 %f448, %f427, %f444; - fma.rn.ftz.f32 %f449, %f435, %f423, %f445; - fma.rn.ftz.f32 %f450, %f429, %f423, %f446; - add.ftz.f32 %f451, %f447, %f404; - add.ftz.f32 %f452, %f449, %f87; - mul.ftz.f32 %f453, %f451, %f452; - mul.ftz.f32 %f454, %f448, %f450; - sub.ftz.f32 %f455, %f454, %f453; - .loc 17 501 0 - mov.f32 %f456, 0f40400000; // 3 - mul.ftz.f32 %f457, %f89, %f456; - mul.ftz.f32 %f458, %f457, %f392; - mul.ftz.f32 %f459, %f371, %f455; - mul.ftz.f32 %f460, %f452, %f395; - mul.ftz.f32 %f461, %f458, %f450; - sub.ftz.f32 %f462, %f461, %f460; - fma.rn.ftz.f32 %f463, %f369, %f462, %f459; - .loc 17 503 0 - add.ftz.f32 %f64, %f463, %f64; - @!%p3 bra $Lt_1_61698; - .loc 17 505 0 - mov.f32 %f464, %f47; - mul.ftz.f32 %f465, %f81, %f463; - sub.ftz.f32 %f466, %f464, %f465; - mov.f32 %f47, %f466; -$Lt_1_61698: - .loc 17 490 0 - mov.f32 %f467, %f409; - .loc 17 491 0 - mul.ftz.f32 %f468, %f88, %f88; - neg.ftz.f32 %f469, %f468; - mov.f32 %f470, %f469; - .loc 17 492 0 - mul.ftz.f32 %f471, %f164, %f88; - neg.ftz.f32 %f472, %f471; - mov.f32 %f473, %f472; - .loc 17 493 0 - mov.f32 %f474, 0f3f800000; // 1 - sub.ftz.f32 %f475, %f474, %f468; - mov.f32 %f476, %f475; - .loc 17 494 0 - mov.f32 %f477, %f467; - mul.ftz.f32 %f478, %f477, %f86; - mov.f32 %f479, %f478; - .loc 17 495 0 - mul.ftz.f32 %f480, %f86, %f475; - mov.f32 %f481, %f480; - .loc 17 496 0 - mov.f32 %f482, %f473; - mul.ftz.f32 %f483, %f482, %f86; - mov.f32 %f484, %f483; - .loc 17 500 0 - mul.ftz.f32 %f485, %f433, %f480; - mul.ftz.f32 %f486, %f437, %f480; - fma.rn.ftz.f32 %f487, %f434, %f478, %f485; - fma.rn.ftz.f32 %f488, %f374, %f478, %f486; - fma.rn.ftz.f32 %f489, %f435, %f483, %f487; - fma.rn.ftz.f32 %f490, %f429, %f483, %f488; - add.ftz.f32 %f491, %f489, %f88; - mul.ftz.f32 %f492, %f451, %f491; - mul.ftz.f32 %f493, %f448, %f490; - sub.ftz.f32 %f494, %f493, %f492; - .loc 17 501 0 - mul.ftz.f32 %f495, %f371, %f494; - mul.ftz.f32 %f496, %f491, %f395; - mul.ftz.f32 %f497, %f458, %f490; - sub.ftz.f32 %f498, %f497, %f496; - fma.rn.ftz.f32 %f463, %f369, %f498, %f495; - .loc 17 507 0 - add.ftz.f32 %f63, %f463, %f63; - @!%p3 bra $Lt_1_65282; - .loc 17 509 0 - mov.f32 %f499, %f49; - mul.ftz.f32 %f500, %f80, %f463; - sub.ftz.f32 %f501, %f499, %f500; - mov.f32 %f49, %f501; - .loc 17 510 0 - mov.f32 %f502, %f53; - mul.ftz.f32 %f503, %f81, %f463; - sub.ftz.f32 %f504, %f502, %f503; - mov.f32 %f53, %f504; -$Lt_1_65282: - .loc 17 490 0 - mov.f32 %f505, %f412; - .loc 17 491 0 - mov.f32 %f506, %f472; - .loc 17 492 0 - mul.ftz.f32 %f507, %f164, %f164; - neg.ftz.f32 %f508, %f507; - mov.f32 %f509, %f508; - .loc 17 493 0 - mov.f32 %f510, 0f3f800000; // 1 - sub.ftz.f32 %f511, %f510, %f507; - mov.f32 %f512, %f511; - .loc 17 494 0 - mov.f32 %f513, %f505; - mul.ftz.f32 %f514, %f513, %f86; - mov.f32 %f515, %f514; - .loc 17 495 0 - mov.f32 %f516, %f506; - mul.ftz.f32 %f517, %f516, %f86; - mov.f32 %f518, %f517; - .loc 17 496 0 - mul.ftz.f32 %f519, %f86, %f511; - mov.f32 %f520, %f519; - .loc 17 500 0 - mul.ftz.f32 %f521, %f433, %f517; - mul.ftz.f32 %f522, %f437, %f517; - fma.rn.ftz.f32 %f523, %f434, %f514, %f521; - fma.rn.ftz.f32 %f524, %f374, %f514, %f522; - fma.rn.ftz.f32 %f525, %f435, %f519, %f523; - fma.rn.ftz.f32 %f526, %f429, %f519, %f524; - add.ftz.f32 %f527, %f525, %f164; - mul.ftz.f32 %f528, %f527, %f451; - mul.ftz.f32 %f529, %f448, %f526; - sub.ftz.f32 %f530, %f529, %f528; - .loc 17 501 0 - mul.ftz.f32 %f531, %f371, %f530; - mul.ftz.f32 %f532, %f527, %f395; - mul.ftz.f32 %f533, %f458, %f526; - sub.ftz.f32 %f534, %f533, %f532; - fma.rn.ftz.f32 %f463, %f369, %f534, %f531; - .loc 17 513 0 - add.ftz.f32 %f62, %f463, %f62; - @!%p3 bra $Lt_1_68354; - .loc 17 515 0 - mov.f32 %f535, %f51; - mul.ftz.f32 %f536, %f82, %f463; - sub.ftz.f32 %f537, %f535, %f536; - mov.f32 %f51, %f537; - .loc 17 516 0 - mov.f32 %f538, %f55; - mul.ftz.f32 %f539, %f81, %f463; - sub.ftz.f32 %f540, %f538, %f539; - mov.f32 %f55, %f540; - .loc 17 517 0 - mul.ftz.f32 %f541, %f80, %f463; - sub.ftz.f32 %f56, %f56, %f541; - mov.f32 %f57, %f56; -$Lt_1_68354: - mul.lo.s32 %r36, %r16, %r2; - cvt.s64.s32 %rd44, %r36; - mul.wide.s32 %rd45, %r36, 4; - add.u64 %rd17, %rd17, %rd45; - setp.gt.u64 %p22, %rd20, %rd17; - @%p22 bra $Lt_1_51714; - bra.uni $Lt_1_51202; -$Lt_1_75010: - mov.f32 %f62, 0f00000000; // 0 - mov.f32 %f63, 0f00000000; // 0 - mov.f32 %f64, 0f00000000; // 0 - mov.f32 %f65, 0f00000000; // 0 -$Lt_1_51202: - mov.u32 %r37, 1; - setp.le.s32 %p23, %r2, %r37; - @%p23 bra $Lt_1_71170; - .loc 17 522 0 - mov.u64 %rd46, __cuda___cuda_local_var_33377_55_non_const_red_acc3852; - cvt.s64.s32 %rd47, %r3; - mul.wide.s32 %rd48, %r3, 4; - add.u64 %rd49, %rd46, %rd48; - mov.f32 %f542, %f64; - st.shared.f32 [%rd49+0], %f542; - mov.f32 %f543, %f63; - st.shared.f32 [%rd49+512], %f543; - mov.f32 %f544, %f62; - st.shared.f32 [%rd49+1024], %f544; - mov.f32 %f545, %f65; - st.shared.f32 [%rd49+1536], %f545; - shr.s32 %r38, %r2, 31; - mov.s32 %r39, 1; - and.b32 %r40, %r38, %r39; - add.s32 %r41, %r40, %r2; - shr.s32 %r42, %r41, 1; - mov.s32 %r43, %r42; - mov.u32 %r44, 0; - setp.ne.u32 %p24, %r42, %r44; - @!%p24 bra $Lt_1_69634; -$Lt_1_70146: - setp.ge.u32 %p25, %r18, %r43; - @%p25 bra $Lt_1_70402; - add.u32 %r45, %r3, %r43; - cvt.u64.u32 %rd50, %r45; - mul.wide.u32 %rd51, %r45, 4; - add.u64 %rd52, %rd46, %rd51; - ld.shared.f32 %f546, [%rd52+0]; - add.ftz.f32 %f542, %f546, %f542; - st.shared.f32 [%rd49+0], %f542; - ld.shared.f32 %f547, [%rd52+512]; - add.ftz.f32 %f543, %f547, %f543; - st.shared.f32 [%rd49+512], %f543; - ld.shared.f32 %f548, [%rd52+1024]; - add.ftz.f32 %f544, %f548, %f544; - st.shared.f32 [%rd49+1024], %f544; - ld.shared.f32 %f549, [%rd52+1536]; - add.ftz.f32 %f545, %f549, %f545; - st.shared.f32 [%rd49+1536], %f545; -$Lt_1_70402: - shr.u32 %r43, %r43, 1; - mov.u32 %r46, 0; - setp.ne.u32 %p26, %r43, %r46; - @%p26 bra $Lt_1_70146; -$Lt_1_69634: - mov.f32 %f64, %f542; - mov.f32 %f63, %f543; - mov.f32 %f62, %f544; - mov.f32 %f65, %f545; - ld.param.s32 %r47, [__cudaparm_kernel_sphere_ellipsoid_vflag]; - mov.u32 %r48, 0; - setp.le.s32 %p27, %r47, %r48; - @%p27 bra $Lt_1_71170; - mov.f32 %f542, %f47; - st.shared.f32 [%rd49+0], %f542; - mov.f32 %f543, %f49; - st.shared.f32 [%rd49+512], %f543; - mov.f32 %f544, %f51; - st.shared.f32 [%rd49+1024], %f544; - mov.f32 %f545, %f53; - st.shared.f32 [%rd49+1536], %f545; - mov.f32 %f550, %f55; - st.shared.f32 [%rd49+2048], %f550; - mov.f32 %f551, %f56; - st.shared.f32 [%rd49+2560], %f551; - mov.s32 %r49, %r42; - @!%p24 bra $Lt_1_71682; -$Lt_1_72194: - setp.ge.u32 %p28, %r18, %r49; - @%p28 bra $Lt_1_72450; - add.u32 %r50, %r3, %r49; - cvt.u64.u32 %rd53, %r50; - mul.wide.u32 %rd54, %r50, 4; - add.u64 %rd55, %rd46, %rd54; - ld.shared.f32 %f552, [%rd55+0]; - add.ftz.f32 %f542, %f552, %f542; - st.shared.f32 [%rd49+0], %f542; - ld.shared.f32 %f553, [%rd55+512]; - add.ftz.f32 %f543, %f553, %f543; - st.shared.f32 [%rd49+512], %f543; - ld.shared.f32 %f554, [%rd55+1024]; - add.ftz.f32 %f544, %f554, %f544; - st.shared.f32 [%rd49+1024], %f544; - ld.shared.f32 %f555, [%rd55+1536]; - add.ftz.f32 %f545, %f555, %f545; - st.shared.f32 [%rd49+1536], %f545; - ld.shared.f32 %f556, [%rd55+2048]; - add.ftz.f32 %f550, %f556, %f550; - st.shared.f32 [%rd49+2048], %f550; - ld.shared.f32 %f557, [%rd55+2560]; - add.ftz.f32 %f551, %f557, %f551; - st.shared.f32 [%rd49+2560], %f551; -$Lt_1_72450: - shr.u32 %r49, %r49, 1; - mov.u32 %r51, 0; - setp.ne.u32 %p29, %r49, %r51; - @%p29 bra $Lt_1_72194; -$Lt_1_71682: - mov.f32 %f47, %f542; - mov.f32 %f49, %f543; - mov.f32 %f51, %f544; - mov.f32 %f53, %f545; - mov.f32 %f55, %f550; - mov.f32 %f57, %f551; -$Lt_1_71170: -$Lt_1_69122: - mov.u32 %r52, 0; - setp.ne.s32 %p30, %r18, %r52; - @%p30 bra $Lt_1_73218; - ld.param.u64 %rd56, [__cudaparm_kernel_sphere_ellipsoid___val_paramengv]; - add.u64 %rd57, %rd56, %rd3; - ld.param.s32 %r53, [__cudaparm_kernel_sphere_ellipsoid_eflag]; - mov.u32 %r54, 0; - setp.le.s32 %p31, %r53, %r54; - @%p31 bra $Lt_1_73730; - st.global.f32 [%rd57+0], %f65; - cvt.s64.s32 %rd58, %r12; - mul.wide.s32 %rd59, %r12, 4; - add.u64 %rd57, %rd57, %rd59; -$Lt_1_73730: - ld.param.s32 %r55, [__cudaparm_kernel_sphere_ellipsoid_vflag]; - mov.u32 %r56, 0; - setp.le.s32 %p32, %r55, %r56; - @%p32 bra $Lt_1_74242; - mov.f32 %f558, %f47; - st.global.f32 [%rd57+0], %f558; - cvt.s64.s32 %rd60, %r12; - mul.wide.s32 %rd61, %r12, 4; - add.u64 %rd62, %rd61, %rd57; - mov.f32 %f559, %f49; - st.global.f32 [%rd62+0], %f559; - add.u64 %rd63, %rd61, %rd62; - mov.f32 %f560, %f51; - st.global.f32 [%rd63+0], %f560; - add.u64 %rd64, %rd61, %rd63; - mov.f32 %f561, %f53; - st.global.f32 [%rd64+0], %f561; - add.u64 %rd57, %rd61, %rd64; - mov.f32 %f562, %f55; - st.global.f32 [%rd57+0], %f562; - mov.f32 %f563, %f57; - add.u64 %rd65, %rd61, %rd57; - st.global.f32 [%rd65+0], %f563; -$Lt_1_74242: - ld.param.u64 %rd66, [__cudaparm_kernel_sphere_ellipsoid_ans]; - mul.lo.u64 %rd67, %rd2, 16; - add.u64 %rd68, %rd66, %rd67; - mov.f32 %f564, %f565; - st.global.v4.f32 [%rd68+0], {%f64,%f63,%f62,%f564}; -$Lt_1_73218: -$Lt_1_50690: - .loc 17 525 0 - exit; -$LDWend_kernel_sphere_ellipsoid: - } // kernel_sphere_ellipsoid - - .entry kernel_lj ( - .param .u64 __cudaparm_kernel_lj_x_, - .param .u64 __cudaparm_kernel_lj_lj1, - .param .u64 __cudaparm_kernel_lj_lj3, - .param .s32 __cudaparm_kernel_lj_lj_types, - .param .u64 __cudaparm_kernel_lj_gum, - .param .s32 __cudaparm_kernel_lj_stride, - .param .u64 __cudaparm_kernel_lj_dev_ij, - .param .u64 __cudaparm_kernel_lj_ans, - .param .u64 __cudaparm_kernel_lj___val_paramengv, - .param .u64 __cudaparm_kernel_lj_err_flag, - .param .s32 __cudaparm_kernel_lj_eflag, - .param .s32 __cudaparm_kernel_lj_vflag, - .param .s32 __cudaparm_kernel_lj_start, - .param .s32 __cudaparm_kernel_lj_inum, - .param .s32 __cudaparm_kernel_lj_t_per_atom) - { - .reg .u32 %r<55>; - .reg .u64 %rd<60>; - .reg .f32 %f<115>; - .reg .pred %p<19>; - .shared .align 16 .b8 __cuda___cuda_local_var_33394_33_non_const_sp_lj7028[16]; - .shared .align 4 .b8 __cuda___cuda_local_var_33459_55_non_const_red_acc7044[3072]; - // __cuda_local_var_33405_9_non_const_virial = 16 - .loc 17 534 0 -$LDWbegin_kernel_lj: - .loc 17 540 0 - ld.param.u64 %rd1, [__cudaparm_kernel_lj_gum]; - ldu.global.f32 %f1, [%rd1+0]; - .loc 17 541 0 - ld.global.f32 %f2, [%rd1+4]; - .loc 17 542 0 - ld.global.f32 %f3, [%rd1+8]; - .loc 17 543 0 - ld.global.f32 %f4, [%rd1+12]; - st.shared.v4.f32 [__cuda___cuda_local_var_33394_33_non_const_sp_lj7028+0], {%f1,%f2,%f3,%f4}; - .loc 17 552 0 - mov.f32 %f5, 0f00000000; // 0 - mov.f32 %f6, %f5; - mov.f32 %f7, 0f00000000; // 0 - mov.f32 %f8, %f7; - mov.f32 %f9, 0f00000000; // 0 - mov.f32 %f10, %f9; - mov.f32 %f11, 0f00000000; // 0 - mov.f32 %f12, %f11; - mov.f32 %f13, 0f00000000; // 0 - mov.f32 %f14, %f13; - mov.f32 %f15, 0f00000000; // 0 - mov.f32 %f16, %f15; - ld.param.s32 %r1, [__cudaparm_kernel_lj_t_per_atom]; - cvt.s32.u32 %r2, %tid.x; - div.s32 %r3, %r2, %r1; - cvt.s32.u32 %r4, %ntid.x; - div.s32 %r5, %r4, %r1; - cvt.s32.u32 %r6, %ctaid.x; - mul.lo.s32 %r7, %r6, %r5; - add.s32 %r8, %r3, %r7; - ld.param.s32 %r9, [__cudaparm_kernel_lj_start]; - add.s32 %r10, %r9, %r8; - ld.param.s32 %r11, [__cudaparm_kernel_lj_inum]; - setp.ge.s32 %p1, %r10, %r11; - @%p1 bra $Lt_2_25346; - .loc 17 557 0 - cvt.s64.s32 %rd2, %r10; - mul.wide.s32 %rd3, %r10, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_lj_dev_ij]; - add.u64 %rd5, %rd4, %rd3; - ld.global.s32 %r12, [%rd5+0]; - ld.param.s32 %r13, [__cudaparm_kernel_lj_stride]; - cvt.s64.s32 %rd6, %r13; - mul.wide.s32 %rd7, %r13, 4; - add.u64 %rd8, %rd7, %rd5; - ld.global.s32 %r14, [%rd8+0]; - .loc 17 560 0 - ld.param.u64 %rd9, [__cudaparm_kernel_lj_x_]; - cvt.s64.s32 %rd10, %r12; - mul.wide.s32 %rd11, %r12, 16; - add.u64 %rd12, %rd9, %rd11; - ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0]; - .loc 17 561 0 - cvt.s32.s64 %r15, %rd6; - sub.s32 %r16, %r1, 1; - and.b32 %r17, %r16, %r2; - add.u64 %rd13, %rd7, %rd8; - mul.lo.s32 %r18, %r15, %r17; - cvt.s64.s32 %rd14, %r18; - mul.wide.s32 %rd15, %r18, 4; - add.u64 %rd16, %rd13, %rd15; - mov.s64 %rd17, %rd16; - mul.lo.s32 %r19, %r15, %r14; - cvt.s64.s32 %rd18, %r19; - mul.wide.s32 %rd19, %r19, 4; - add.u64 %rd20, %rd13, %rd19; - setp.ge.u64 %p2, %rd16, %rd20; - @%p2 bra $Lt_2_26882; - cvt.rzi.ftz.s32.f32 %r20, %f20; - ld.param.s32 %r21, [__cudaparm_kernel_lj_lj_types]; - mul.lo.s32 %r22, %r21, %r20; - ld.param.u64 %rd21, [__cudaparm_kernel_lj_lj1]; - mov.f32 %f21, 0f00000000; // 0 - mov.f32 %f22, 0f00000000; // 0 - mov.f32 %f23, 0f00000000; // 0 - mov.f32 %f24, 0f00000000; // 0 - mov.u64 %rd22, __cuda___cuda_local_var_33394_33_non_const_sp_lj7028; -$Lt_2_19714: - // Loop body line 561, nesting depth: 1, estimated iterations: unknown - .loc 17 566 0 - ld.global.s32 %r23, [%rd17+0]; - .loc 17 567 0 - shr.s32 %r24, %r23, 30; - and.b32 %r25, %r24, 3; - cvt.s64.s32 %rd23, %r25; - mul.wide.s32 %rd24, %r25, 4; - add.u64 %rd25, %rd22, %rd24; - ld.shared.f32 %f25, [%rd25+0]; - .loc 17 570 0 - and.b32 %r26, %r23, 1073741823; - cvt.s64.s32 %rd26, %r26; - mul.wide.s32 %rd27, %r26, 16; - add.u64 %rd28, %rd9, %rd27; - ld.global.v4.f32 {%f26,%f27,%f28,%f29}, [%rd28+0]; - .loc 17 566 0 - cvt.rzi.ftz.s32.f32 %r27, %f29; - sub.ftz.f32 %f30, %f18, %f27; - sub.ftz.f32 %f31, %f17, %f26; - sub.ftz.f32 %f32, %f19, %f28; - mul.ftz.f32 %f33, %f30, %f30; - fma.rn.ftz.f32 %f34, %f31, %f31, %f33; - fma.rn.ftz.f32 %f35, %f32, %f32, %f34; - add.s32 %r28, %r27, %r22; - cvt.s64.s32 %rd29, %r28; - mul.wide.s32 %rd30, %r28, 16; - add.u64 %rd31, %rd30, %rd21; - ld.global.f32 %f36, [%rd31+8]; - setp.gt.ftz.f32 %p3, %f36, %f35; - @!%p3 bra $Lt_2_27138; - ld.global.f32 %f37, [%rd31+12]; - mov.f32 %f38, 0f00000000; // 0 - setp.eq.ftz.f32 %p4, %f37, %f38; - @!%p4 bra $Lt_2_27138; - .loc 17 584 0 - rcp.approx.ftz.f32 %f39, %f35; - mul.ftz.f32 %f40, %f39, %f39; - mul.ftz.f32 %f41, %f39, %f40; - mul.ftz.f32 %f42, %f39, %f41; - ld.global.v2.f32 {%f43,%f44}, [%rd31+0]; - mul.ftz.f32 %f45, %f43, %f41; - sub.ftz.f32 %f46, %f45, %f44; - mul.ftz.f32 %f47, %f42, %f46; - mul.ftz.f32 %f48, %f25, %f47; - .loc 17 586 0 - fma.rn.ftz.f32 %f23, %f31, %f48, %f23; - .loc 17 587 0 - fma.rn.ftz.f32 %f22, %f30, %f48, %f22; - .loc 17 588 0 - fma.rn.ftz.f32 %f21, %f32, %f48, %f21; - ld.param.s32 %r29, [__cudaparm_kernel_lj_eflag]; - mov.u32 %r30, 0; - setp.le.s32 %p5, %r29, %r30; - @%p5 bra $Lt_2_19970; - .loc 17 592 0 - ld.param.u64 %rd32, [__cudaparm_kernel_lj_lj3]; - add.u64 %rd33, %rd32, %rd30; - ld.global.v4.f32 {%f49,%f50,%f51,_}, [%rd33+0]; - mul.ftz.f32 %f52, %f49, %f41; - sub.ftz.f32 %f53, %f52, %f50; - mul.ftz.f32 %f54, %f41, %f53; - sub.ftz.f32 %f55, %f54, %f51; - fma.rn.ftz.f32 %f24, %f25, %f55, %f24; -$Lt_2_19970: - ld.param.s32 %r31, [__cudaparm_kernel_lj_vflag]; - mov.u32 %r32, 0; - setp.le.s32 %p6, %r31, %r32; - @%p6 bra $Lt_2_27138; - .loc 17 595 0 - mov.f32 %f56, %f6; - mul.ftz.f32 %f57, %f31, %f31; - fma.rn.ftz.f32 %f58, %f48, %f57, %f56; - mov.f32 %f6, %f58; - .loc 17 596 0 - mov.f32 %f59, %f8; - fma.rn.ftz.f32 %f60, %f48, %f33, %f59; - mov.f32 %f8, %f60; - .loc 17 597 0 - mov.f32 %f61, %f10; - mul.ftz.f32 %f62, %f32, %f32; - fma.rn.ftz.f32 %f63, %f48, %f62, %f61; - mov.f32 %f10, %f63; - .loc 17 598 0 - mov.f32 %f64, %f12; - mul.ftz.f32 %f65, %f30, %f31; - fma.rn.ftz.f32 %f66, %f48, %f65, %f64; - mov.f32 %f12, %f66; - .loc 17 599 0 - mov.f32 %f67, %f14; - mul.ftz.f32 %f68, %f31, %f32; - fma.rn.ftz.f32 %f69, %f48, %f68, %f67; - mov.f32 %f14, %f69; - .loc 17 600 0 - mul.ftz.f32 %f70, %f30, %f32; - fma.rn.ftz.f32 %f15, %f48, %f70, %f15; - mov.f32 %f16, %f15; -$Lt_2_27138: -$L_2_18178: - .loc 17 594 0 - mul.lo.s32 %r33, %r15, %r1; - cvt.s64.s32 %rd34, %r33; - mul.wide.s32 %rd35, %r33, 4; - add.u64 %rd17, %rd17, %rd35; - setp.gt.u64 %p7, %rd20, %rd17; - @%p7 bra $Lt_2_19714; - bra.uni $Lt_2_19202; -$Lt_2_26882: - mov.f32 %f21, 0f00000000; // 0 - mov.f32 %f22, 0f00000000; // 0 - mov.f32 %f23, 0f00000000; // 0 - mov.f32 %f24, 0f00000000; // 0 -$Lt_2_19202: - mov.u32 %r34, 1; - setp.le.s32 %p8, %r1, %r34; - @%p8 bra $Lt_2_23298; - .loc 17 604 0 - mov.u64 %rd36, __cuda___cuda_local_var_33459_55_non_const_red_acc7044; - cvt.s64.s32 %rd37, %r2; - mul.wide.s32 %rd38, %r2, 4; - add.u64 %rd39, %rd36, %rd38; - mov.f32 %f71, %f23; - st.shared.f32 [%rd39+0], %f71; - mov.f32 %f72, %f22; - st.shared.f32 [%rd39+512], %f72; - mov.f32 %f73, %f21; - st.shared.f32 [%rd39+1024], %f73; - mov.f32 %f74, %f24; - st.shared.f32 [%rd39+1536], %f74; - shr.s32 %r35, %r1, 31; - mov.s32 %r36, 1; - and.b32 %r37, %r35, %r36; - add.s32 %r38, %r37, %r1; - shr.s32 %r39, %r38, 1; - mov.s32 %r40, %r39; - mov.u32 %r41, 0; - setp.ne.u32 %p9, %r39, %r41; - @!%p9 bra $Lt_2_21762; -$Lt_2_22274: - setp.ge.u32 %p10, %r17, %r40; - @%p10 bra $Lt_2_22530; - add.u32 %r42, %r2, %r40; - cvt.u64.u32 %rd40, %r42; - mul.wide.u32 %rd41, %r42, 4; - add.u64 %rd42, %rd36, %rd41; - ld.shared.f32 %f75, [%rd42+0]; - add.ftz.f32 %f71, %f75, %f71; - st.shared.f32 [%rd39+0], %f71; - ld.shared.f32 %f76, [%rd42+512]; - add.ftz.f32 %f72, %f76, %f72; - st.shared.f32 [%rd39+512], %f72; - ld.shared.f32 %f77, [%rd42+1024]; - add.ftz.f32 %f73, %f77, %f73; - st.shared.f32 [%rd39+1024], %f73; - ld.shared.f32 %f78, [%rd42+1536]; - add.ftz.f32 %f74, %f78, %f74; - st.shared.f32 [%rd39+1536], %f74; -$Lt_2_22530: - shr.u32 %r40, %r40, 1; - mov.u32 %r43, 0; - setp.ne.u32 %p11, %r40, %r43; - @%p11 bra $Lt_2_22274; -$Lt_2_21762: - mov.f32 %f23, %f71; - mov.f32 %f22, %f72; - mov.f32 %f21, %f73; - mov.f32 %f24, %f74; - ld.param.s32 %r44, [__cudaparm_kernel_lj_vflag]; - mov.u32 %r45, 0; - setp.le.s32 %p12, %r44, %r45; - @%p12 bra $Lt_2_23298; - mov.f32 %f71, %f6; - st.shared.f32 [%rd39+0], %f71; - mov.f32 %f72, %f8; - st.shared.f32 [%rd39+512], %f72; - mov.f32 %f73, %f10; - st.shared.f32 [%rd39+1024], %f73; - mov.f32 %f74, %f12; - st.shared.f32 [%rd39+1536], %f74; - mov.f32 %f79, %f14; - st.shared.f32 [%rd39+2048], %f79; - mov.f32 %f80, %f15; - st.shared.f32 [%rd39+2560], %f80; - mov.s32 %r46, %r39; - @!%p9 bra $Lt_2_23810; -$Lt_2_24322: - setp.ge.u32 %p13, %r17, %r46; - @%p13 bra $Lt_2_24578; - add.u32 %r47, %r2, %r46; - cvt.u64.u32 %rd43, %r47; - mul.wide.u32 %rd44, %r47, 4; - add.u64 %rd45, %rd36, %rd44; - ld.shared.f32 %f81, [%rd45+0]; - add.ftz.f32 %f71, %f81, %f71; - st.shared.f32 [%rd39+0], %f71; - ld.shared.f32 %f82, [%rd45+512]; - add.ftz.f32 %f72, %f82, %f72; - st.shared.f32 [%rd39+512], %f72; - ld.shared.f32 %f83, [%rd45+1024]; - add.ftz.f32 %f73, %f83, %f73; - st.shared.f32 [%rd39+1024], %f73; - ld.shared.f32 %f84, [%rd45+1536]; - add.ftz.f32 %f74, %f84, %f74; - st.shared.f32 [%rd39+1536], %f74; - ld.shared.f32 %f85, [%rd45+2048]; - add.ftz.f32 %f79, %f85, %f79; - st.shared.f32 [%rd39+2048], %f79; - ld.shared.f32 %f86, [%rd45+2560]; - add.ftz.f32 %f80, %f86, %f80; - st.shared.f32 [%rd39+2560], %f80; -$Lt_2_24578: - shr.u32 %r46, %r46, 1; - mov.u32 %r48, 0; - setp.ne.u32 %p14, %r46, %r48; - @%p14 bra $Lt_2_24322; -$Lt_2_23810: - mov.f32 %f6, %f71; - mov.f32 %f8, %f72; - mov.f32 %f10, %f73; - mov.f32 %f12, %f74; - mov.f32 %f14, %f79; - mov.f32 %f16, %f80; -$Lt_2_23298: -$Lt_2_21250: - mov.u32 %r49, 0; - setp.ne.s32 %p15, %r17, %r49; - @%p15 bra $Lt_2_25346; - ld.param.u64 %rd46, [__cudaparm_kernel_lj___val_paramengv]; - add.u64 %rd47, %rd46, %rd3; - ld.param.s32 %r50, [__cudaparm_kernel_lj_eflag]; - mov.u32 %r51, 0; - setp.le.s32 %p16, %r50, %r51; - @%p16 bra $Lt_2_25858; - ld.global.f32 %f87, [%rd47+0]; - add.ftz.f32 %f88, %f87, %f24; - st.global.f32 [%rd47+0], %f88; - cvt.s64.s32 %rd48, %r11; - mul.wide.s32 %rd49, %r11, 4; - add.u64 %rd47, %rd47, %rd49; -$Lt_2_25858: - ld.param.s32 %r52, [__cudaparm_kernel_lj_vflag]; - mov.u32 %r53, 0; - setp.le.s32 %p17, %r52, %r53; - @%p17 bra $Lt_2_26370; - ld.global.f32 %f89, [%rd47+0]; - mov.f32 %f90, %f6; - add.ftz.f32 %f91, %f89, %f90; - st.global.f32 [%rd47+0], %f91; - cvt.s64.s32 %rd50, %r11; - mul.wide.s32 %rd51, %r11, 4; - add.u64 %rd52, %rd51, %rd47; - ld.global.f32 %f92, [%rd52+0]; - mov.f32 %f93, %f8; - add.ftz.f32 %f94, %f92, %f93; - st.global.f32 [%rd52+0], %f94; - add.u64 %rd53, %rd51, %rd52; - ld.global.f32 %f95, [%rd53+0]; - mov.f32 %f96, %f10; - add.ftz.f32 %f97, %f95, %f96; - st.global.f32 [%rd53+0], %f97; - add.u64 %rd54, %rd51, %rd53; - ld.global.f32 %f98, [%rd54+0]; - mov.f32 %f99, %f12; - add.ftz.f32 %f100, %f98, %f99; - st.global.f32 [%rd54+0], %f100; - add.u64 %rd55, %rd51, %rd54; - ld.global.f32 %f101, [%rd55+0]; - mov.f32 %f102, %f14; - add.ftz.f32 %f103, %f101, %f102; - st.global.f32 [%rd55+0], %f103; - add.u64 %rd47, %rd51, %rd55; - ld.global.f32 %f104, [%rd47+0]; - mov.f32 %f105, %f16; - add.ftz.f32 %f106, %f104, %f105; - st.global.f32 [%rd47+0], %f106; -$Lt_2_26370: - ld.param.u64 %rd56, [__cudaparm_kernel_lj_ans]; - mul.lo.u64 %rd57, %rd2, 16; - add.u64 %rd58, %rd56, %rd57; - ld.global.v4.f32 {%f107,%f108,%f109,%f110}, [%rd58+0]; - add.ftz.f32 %f111, %f108, %f22; - add.ftz.f32 %f112, %f109, %f21; - add.ftz.f32 %f113, %f107, %f23; - st.global.v4.f32 [%rd58+0], {%f113,%f111,%f112,%f110}; -$Lt_2_25346: -$Lt_2_18690: - .loc 17 607 0 - exit; -$LDWend_kernel_lj: - } // kernel_lj - - .entry kernel_lj_fast ( - .param .u64 __cudaparm_kernel_lj_fast_x_, - .param .u64 __cudaparm_kernel_lj_fast_lj1_in, - .param .u64 __cudaparm_kernel_lj_fast_lj3_in, - .param .u64 __cudaparm_kernel_lj_fast_gum, - .param .s32 __cudaparm_kernel_lj_fast_stride, - .param .u64 __cudaparm_kernel_lj_fast_dev_ij, - .param .u64 __cudaparm_kernel_lj_fast_ans, - .param .u64 __cudaparm_kernel_lj_fast___val_paramengv, - .param .u64 __cudaparm_kernel_lj_fast_err_flag, - .param .s32 __cudaparm_kernel_lj_fast_eflag, - .param .s32 __cudaparm_kernel_lj_fast_vflag, - .param .s32 __cudaparm_kernel_lj_fast_start, - .param .s32 __cudaparm_kernel_lj_fast_inum, - .param .s32 __cudaparm_kernel_lj_fast_t_per_atom) - { - .reg .u32 %r<57>; - .reg .u64 %rd<72>; - .reg .f32 %f<122>; - .reg .pred %p<22>; - .shared .align 4 .b8 __cuda___cuda_local_var_33475_33_non_const_sp_lj10212[16]; - .shared .align 16 .b8 __cuda___cuda_local_var_33476_34_non_const_lj110240[1936]; - .shared .align 16 .b8 __cuda___cuda_local_var_33477_34_non_const_lj312176[1936]; - .shared .align 4 .b8 __cuda___cuda_local_var_33547_55_non_const_red_acc14112[3072]; - // __cuda_local_var_33491_9_non_const_virial = 16 - .loc 17 615 0 -$LDWbegin_kernel_lj_fast: - cvt.s32.u32 %r1, %tid.x; - mov.u32 %r2, 3; - setp.gt.s32 %p1, %r1, %r2; - @%p1 bra $Lt_3_20994; - .loc 17 624 0 - mov.u64 %rd1, __cuda___cuda_local_var_33475_33_non_const_sp_lj10212; - cvt.s64.s32 %rd2, %r1; - mul.wide.s32 %rd3, %r1, 4; - ld.param.u64 %rd4, [__cudaparm_kernel_lj_fast_gum]; - add.u64 %rd5, %rd4, %rd3; - ld.global.f32 %f1, [%rd5+0]; - add.u64 %rd6, %rd3, %rd1; - st.shared.f32 [%rd6+0], %f1; -$Lt_3_20994: - mov.u64 %rd1, __cuda___cuda_local_var_33475_33_non_const_sp_lj10212; - mov.u32 %r3, 120; - setp.gt.s32 %p2, %r1, %r3; - @%p2 bra $Lt_3_21506; - .loc 17 626 0 - mov.u64 %rd7, __cuda___cuda_local_var_33476_34_non_const_lj110240; - cvt.s64.s32 %rd8, %r1; - mul.wide.s32 %rd9, %r1, 16; - ld.param.u64 %rd10, [__cudaparm_kernel_lj_fast_lj1_in]; - add.u64 %rd11, %rd10, %rd9; - add.u64 %rd12, %rd9, %rd7; - ld.global.v4.f32 {%f2,%f3,%f4,%f5}, [%rd11+0]; - st.shared.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5}; - ld.param.s32 %r4, [__cudaparm_kernel_lj_fast_eflag]; - mov.u32 %r5, 0; - setp.le.s32 %p3, %r4, %r5; - @%p3 bra $Lt_3_22018; - .loc 17 628 0 - mov.u64 %rd13, __cuda___cuda_local_var_33477_34_non_const_lj312176; - ld.param.u64 %rd14, [__cudaparm_kernel_lj_fast_lj3_in]; - add.u64 %rd15, %rd14, %rd9; - add.u64 %rd16, %rd9, %rd13; - ld.global.v4.f32 {%f6,%f7,%f8,%f9}, [%rd15+0]; - st.shared.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9}; -$Lt_3_22018: - mov.u64 %rd13, __cuda___cuda_local_var_33477_34_non_const_lj312176; -$Lt_3_21506: - mov.u64 %rd13, __cuda___cuda_local_var_33477_34_non_const_lj312176; - mov.u64 %rd7, __cuda___cuda_local_var_33476_34_non_const_lj110240; - .loc 17 638 0 - mov.f32 %f10, 0f00000000; // 0 - mov.f32 %f11, %f10; - mov.f32 %f12, 0f00000000; // 0 - mov.f32 %f13, %f12; - mov.f32 %f14, 0f00000000; // 0 - mov.f32 %f15, %f14; - mov.f32 %f16, 0f00000000; // 0 - mov.f32 %f17, %f16; - mov.f32 %f18, 0f00000000; // 0 - mov.f32 %f19, %f18; - mov.f32 %f20, 0f00000000; // 0 - mov.f32 %f21, %f20; - .loc 17 640 0 - bar.sync 0; - ld.param.s32 %r6, [__cudaparm_kernel_lj_fast_t_per_atom]; - div.s32 %r7, %r1, %r6; - cvt.s32.u32 %r8, %ntid.x; - div.s32 %r9, %r8, %r6; - cvt.s32.u32 %r10, %ctaid.x; - mul.lo.s32 %r11, %r10, %r9; - add.s32 %r12, %r7, %r11; - ld.param.s32 %r13, [__cudaparm_kernel_lj_fast_start]; - add.s32 %r14, %r13, %r12; - ld.param.s32 %r15, [__cudaparm_kernel_lj_fast_inum]; - setp.ge.s32 %p4, %r14, %r15; - @%p4 bra $Lt_3_29186; - .loc 17 645 0 - cvt.s64.s32 %rd17, %r14; - mul.wide.s32 %rd18, %r14, 4; - ld.param.u64 %rd19, [__cudaparm_kernel_lj_fast_dev_ij]; - add.u64 %rd20, %rd19, %rd18; - ld.global.s32 %r16, [%rd20+0]; - ld.param.s32 %r17, [__cudaparm_kernel_lj_fast_stride]; - cvt.s64.s32 %rd21, %r17; - mul.wide.s32 %rd22, %r17, 4; - add.u64 %rd23, %rd22, %rd20; - ld.global.s32 %r18, [%rd23+0]; - .loc 17 648 0 - ld.param.u64 %rd24, [__cudaparm_kernel_lj_fast_x_]; - cvt.s64.s32 %rd25, %r16; - mul.wide.s32 %rd26, %r16, 16; - add.u64 %rd27, %rd24, %rd26; - ld.global.v4.f32 {%f22,%f23,%f24,%f25}, [%rd27+0]; - .loc 17 650 0 - cvt.s32.s64 %r19, %rd21; - sub.s32 %r20, %r6, 1; - and.b32 %r21, %r20, %r1; - add.u64 %rd28, %rd22, %rd23; - mul.lo.s32 %r22, %r19, %r21; - cvt.s64.s32 %rd29, %r22; - mul.wide.s32 %rd30, %r22, 4; - add.u64 %rd31, %rd28, %rd30; - mov.s64 %rd32, %rd31; - mul.lo.s32 %r23, %r19, %r18; - cvt.s64.s32 %rd33, %r23; - mul.wide.s32 %rd34, %r23, 4; - add.u64 %rd35, %rd28, %rd34; - setp.ge.u64 %p5, %rd31, %rd35; - @%p5 bra $Lt_3_30722; - cvt.rzi.ftz.s32.f32 %r24, %f25; - mul.lo.s32 %r25, %r24, 11; - cvt.rn.f32.s32 %f26, %r25; - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 -$Lt_3_23554: - // Loop body line 650, nesting depth: 1, estimated iterations: unknown - .loc 17 655 0 - ld.global.s32 %r26, [%rd32+0]; - .loc 17 656 0 - shr.s32 %r27, %r26, 30; - and.b32 %r28, %r27, 3; - cvt.s64.s32 %rd36, %r28; - mul.wide.s32 %rd37, %r28, 4; - add.u64 %rd38, %rd1, %rd37; - ld.shared.f32 %f31, [%rd38+0]; - .loc 17 659 0 - and.b32 %r29, %r26, 1073741823; - cvt.s64.s32 %rd39, %r29; - mul.wide.s32 %rd40, %r29, 16; - add.u64 %rd41, %rd24, %rd40; - ld.global.v4.f32 {%f32,%f33,%f34,%f35}, [%rd41+0]; - .loc 17 655 0 - sub.ftz.f32 %f36, %f23, %f33; - sub.ftz.f32 %f37, %f22, %f32; - sub.ftz.f32 %f38, %f24, %f34; - mul.ftz.f32 %f39, %f36, %f36; - fma.rn.ftz.f32 %f40, %f37, %f37, %f39; - fma.rn.ftz.f32 %f41, %f38, %f38, %f40; - add.ftz.f32 %f42, %f26, %f35; - cvt.rzi.ftz.s32.f32 %r30, %f42; - cvt.s64.s32 %rd42, %r30; - mul.wide.s32 %rd43, %r30, 16; - add.u64 %rd44, %rd43, %rd7; - ld.shared.f32 %f43, [%rd44+8]; - setp.gt.ftz.f32 %p6, %f43, %f41; - @!%p6 bra $Lt_3_30978; - ld.shared.f32 %f44, [%rd44+12]; - mov.f32 %f45, 0f00000000; // 0 - setp.eq.ftz.f32 %p7, %f44, %f45; - @!%p7 bra $Lt_3_30978; - .loc 17 671 0 - rcp.approx.ftz.f32 %f46, %f41; - mul.ftz.f32 %f47, %f46, %f46; - mul.ftz.f32 %f48, %f46, %f47; - mul.ftz.f32 %f49, %f46, %f31; - mul.ftz.f32 %f50, %f48, %f49; - ld.shared.v2.f32 {%f51,%f52}, [%rd44+0]; - mul.ftz.f32 %f53, %f51, %f48; - sub.ftz.f32 %f54, %f53, %f52; - mul.ftz.f32 %f55, %f50, %f54; - .loc 17 673 0 - fma.rn.ftz.f32 %f29, %f37, %f55, %f29; - .loc 17 674 0 - fma.rn.ftz.f32 %f28, %f36, %f55, %f28; - .loc 17 675 0 - fma.rn.ftz.f32 %f27, %f38, %f55, %f27; - ld.param.s32 %r31, [__cudaparm_kernel_lj_fast_eflag]; - mov.u32 %r32, 0; - setp.le.s32 %p8, %r31, %r32; - @%p8 bra $Lt_3_23810; - .loc 17 678 0 - add.u64 %rd45, %rd43, %rd13; - ld.shared.v4.f32 {%f56,%f57,%f58,_}, [%rd45+0]; - mul.ftz.f32 %f59, %f56, %f48; - sub.ftz.f32 %f60, %f59, %f57; - mul.ftz.f32 %f61, %f48, %f60; - .loc 17 679 0 - sub.ftz.f32 %f62, %f61, %f58; - fma.rn.ftz.f32 %f30, %f31, %f62, %f30; -$Lt_3_23810: - ld.param.s32 %r33, [__cudaparm_kernel_lj_fast_vflag]; - mov.u32 %r34, 0; - setp.le.s32 %p9, %r33, %r34; - @%p9 bra $Lt_3_30978; - .loc 17 682 0 - mov.f32 %f63, %f11; - mul.ftz.f32 %f64, %f37, %f37; - fma.rn.ftz.f32 %f65, %f55, %f64, %f63; - mov.f32 %f11, %f65; - .loc 17 683 0 - mov.f32 %f66, %f13; - fma.rn.ftz.f32 %f67, %f55, %f39, %f66; - mov.f32 %f13, %f67; - .loc 17 684 0 - mov.f32 %f68, %f15; - mul.ftz.f32 %f69, %f38, %f38; - fma.rn.ftz.f32 %f70, %f55, %f69, %f68; - mov.f32 %f15, %f70; - .loc 17 685 0 - mov.f32 %f71, %f17; - mul.ftz.f32 %f72, %f36, %f37; - fma.rn.ftz.f32 %f73, %f55, %f72, %f71; - mov.f32 %f17, %f73; - .loc 17 686 0 - mov.f32 %f74, %f19; - mul.ftz.f32 %f75, %f37, %f38; - fma.rn.ftz.f32 %f76, %f55, %f75, %f74; - mov.f32 %f19, %f76; - .loc 17 687 0 - mul.ftz.f32 %f77, %f36, %f38; - fma.rn.ftz.f32 %f20, %f55, %f77, %f20; - mov.f32 %f21, %f20; -$Lt_3_30978: -$L_3_20482: - .loc 17 681 0 - mul.lo.s32 %r35, %r19, %r6; - cvt.s64.s32 %rd46, %r35; - mul.wide.s32 %rd47, %r35, 4; - add.u64 %rd32, %rd32, %rd47; - setp.gt.u64 %p10, %rd35, %rd32; - @%p10 bra $Lt_3_23554; - bra.uni $Lt_3_23042; -$Lt_3_30722: - mov.f32 %f27, 0f00000000; // 0 - mov.f32 %f28, 0f00000000; // 0 - mov.f32 %f29, 0f00000000; // 0 - mov.f32 %f30, 0f00000000; // 0 -$Lt_3_23042: - mov.u32 %r36, 1; - setp.le.s32 %p11, %r6, %r36; - @%p11 bra $Lt_3_27138; - .loc 17 692 0 - mov.u64 %rd48, __cuda___cuda_local_var_33547_55_non_const_red_acc14112; - cvt.s64.s32 %rd49, %r1; - mul.wide.s32 %rd50, %r1, 4; - add.u64 %rd51, %rd48, %rd50; - mov.f32 %f78, %f29; - st.shared.f32 [%rd51+0], %f78; - mov.f32 %f79, %f28; - st.shared.f32 [%rd51+512], %f79; - mov.f32 %f80, %f27; - st.shared.f32 [%rd51+1024], %f80; - mov.f32 %f81, %f30; - st.shared.f32 [%rd51+1536], %f81; - shr.s32 %r37, %r6, 31; - mov.s32 %r38, 1; - and.b32 %r39, %r37, %r38; - add.s32 %r40, %r39, %r6; - shr.s32 %r41, %r40, 1; - mov.s32 %r42, %r41; - mov.u32 %r43, 0; - setp.ne.u32 %p12, %r41, %r43; - @!%p12 bra $Lt_3_25602; -$Lt_3_26114: - setp.ge.u32 %p13, %r21, %r42; - @%p13 bra $Lt_3_26370; - add.u32 %r44, %r1, %r42; - cvt.u64.u32 %rd52, %r44; - mul.wide.u32 %rd53, %r44, 4; - add.u64 %rd54, %rd48, %rd53; - ld.shared.f32 %f82, [%rd54+0]; - add.ftz.f32 %f78, %f82, %f78; - st.shared.f32 [%rd51+0], %f78; - ld.shared.f32 %f83, [%rd54+512]; - add.ftz.f32 %f79, %f83, %f79; - st.shared.f32 [%rd51+512], %f79; - ld.shared.f32 %f84, [%rd54+1024]; - add.ftz.f32 %f80, %f84, %f80; - st.shared.f32 [%rd51+1024], %f80; - ld.shared.f32 %f85, [%rd54+1536]; - add.ftz.f32 %f81, %f85, %f81; - st.shared.f32 [%rd51+1536], %f81; -$Lt_3_26370: - shr.u32 %r42, %r42, 1; - mov.u32 %r45, 0; - setp.ne.u32 %p14, %r42, %r45; - @%p14 bra $Lt_3_26114; -$Lt_3_25602: - mov.f32 %f29, %f78; - mov.f32 %f28, %f79; - mov.f32 %f27, %f80; - mov.f32 %f30, %f81; - ld.param.s32 %r46, [__cudaparm_kernel_lj_fast_vflag]; - mov.u32 %r47, 0; - setp.le.s32 %p15, %r46, %r47; - @%p15 bra $Lt_3_27138; - mov.f32 %f78, %f11; - st.shared.f32 [%rd51+0], %f78; - mov.f32 %f79, %f13; - st.shared.f32 [%rd51+512], %f79; - mov.f32 %f80, %f15; - st.shared.f32 [%rd51+1024], %f80; - mov.f32 %f81, %f17; - st.shared.f32 [%rd51+1536], %f81; - mov.f32 %f86, %f19; - st.shared.f32 [%rd51+2048], %f86; - mov.f32 %f87, %f20; - st.shared.f32 [%rd51+2560], %f87; - mov.s32 %r48, %r41; - @!%p12 bra $Lt_3_27650; -$Lt_3_28162: - setp.ge.u32 %p16, %r21, %r48; - @%p16 bra $Lt_3_28418; - add.u32 %r49, %r1, %r48; - cvt.u64.u32 %rd55, %r49; - mul.wide.u32 %rd56, %r49, 4; - add.u64 %rd57, %rd48, %rd56; - ld.shared.f32 %f88, [%rd57+0]; - add.ftz.f32 %f78, %f88, %f78; - st.shared.f32 [%rd51+0], %f78; - ld.shared.f32 %f89, [%rd57+512]; - add.ftz.f32 %f79, %f89, %f79; - st.shared.f32 [%rd51+512], %f79; - ld.shared.f32 %f90, [%rd57+1024]; - add.ftz.f32 %f80, %f90, %f80; - st.shared.f32 [%rd51+1024], %f80; - ld.shared.f32 %f91, [%rd57+1536]; - add.ftz.f32 %f81, %f91, %f81; - st.shared.f32 [%rd51+1536], %f81; - ld.shared.f32 %f92, [%rd57+2048]; - add.ftz.f32 %f86, %f92, %f86; - st.shared.f32 [%rd51+2048], %f86; - ld.shared.f32 %f93, [%rd57+2560]; - add.ftz.f32 %f87, %f93, %f87; - st.shared.f32 [%rd51+2560], %f87; -$Lt_3_28418: - shr.u32 %r48, %r48, 1; - mov.u32 %r50, 0; - setp.ne.u32 %p17, %r48, %r50; - @%p17 bra $Lt_3_28162; -$Lt_3_27650: - mov.f32 %f11, %f78; - mov.f32 %f13, %f79; - mov.f32 %f15, %f80; - mov.f32 %f17, %f81; - mov.f32 %f19, %f86; - mov.f32 %f21, %f87; -$Lt_3_27138: -$Lt_3_25090: - mov.u32 %r51, 0; - setp.ne.s32 %p18, %r21, %r51; - @%p18 bra $Lt_3_29186; - ld.param.u64 %rd58, [__cudaparm_kernel_lj_fast___val_paramengv]; - add.u64 %rd59, %rd58, %rd18; - ld.param.s32 %r52, [__cudaparm_kernel_lj_fast_eflag]; - mov.u32 %r53, 0; - setp.le.s32 %p19, %r52, %r53; - @%p19 bra $Lt_3_29698; - ld.global.f32 %f94, [%rd59+0]; - add.ftz.f32 %f95, %f94, %f30; - st.global.f32 [%rd59+0], %f95; - cvt.s64.s32 %rd60, %r15; - mul.wide.s32 %rd61, %r15, 4; - add.u64 %rd59, %rd59, %rd61; -$Lt_3_29698: - ld.param.s32 %r54, [__cudaparm_kernel_lj_fast_vflag]; - mov.u32 %r55, 0; - setp.le.s32 %p20, %r54, %r55; - @%p20 bra $Lt_3_30210; - ld.global.f32 %f96, [%rd59+0]; - mov.f32 %f97, %f11; - add.ftz.f32 %f98, %f96, %f97; - st.global.f32 [%rd59+0], %f98; - cvt.s64.s32 %rd62, %r15; - mul.wide.s32 %rd63, %r15, 4; - add.u64 %rd64, %rd63, %rd59; - ld.global.f32 %f99, [%rd64+0]; - mov.f32 %f100, %f13; - add.ftz.f32 %f101, %f99, %f100; - st.global.f32 [%rd64+0], %f101; - add.u64 %rd65, %rd63, %rd64; - ld.global.f32 %f102, [%rd65+0]; - mov.f32 %f103, %f15; - add.ftz.f32 %f104, %f102, %f103; - st.global.f32 [%rd65+0], %f104; - add.u64 %rd66, %rd63, %rd65; - ld.global.f32 %f105, [%rd66+0]; - mov.f32 %f106, %f17; - add.ftz.f32 %f107, %f105, %f106; - st.global.f32 [%rd66+0], %f107; - add.u64 %rd67, %rd63, %rd66; - ld.global.f32 %f108, [%rd67+0]; - mov.f32 %f109, %f19; - add.ftz.f32 %f110, %f108, %f109; - st.global.f32 [%rd67+0], %f110; - add.u64 %rd59, %rd63, %rd67; - ld.global.f32 %f111, [%rd59+0]; - mov.f32 %f112, %f21; - add.ftz.f32 %f113, %f111, %f112; - st.global.f32 [%rd59+0], %f113; -$Lt_3_30210: - ld.param.u64 %rd68, [__cudaparm_kernel_lj_fast_ans]; - mul.lo.u64 %rd69, %rd17, 16; - add.u64 %rd70, %rd68, %rd69; - ld.global.v4.f32 {%f114,%f115,%f116,%f117}, [%rd70+0]; - add.ftz.f32 %f118, %f115, %f28; - add.ftz.f32 %f119, %f116, %f27; - add.ftz.f32 %f120, %f114, %f29; - st.global.v4.f32 [%rd70+0], {%f120,%f118,%f119,%f117}; -$Lt_3_29186: -$Lt_3_22530: - .loc 17 695 0 - exit; -$LDWend_kernel_lj_fast: - } // kernel_lj_fast - diff --git a/lib/gpu/re_squared_lj_ptx.h b/lib/gpu/re_squared_lj_ptx.h deleted file mode 100644 index e1990aee9a..0000000000 --- a/lib/gpu/re_squared_lj_ptx.h +++ /dev/null @@ -1,3489 +0,0 @@ -const char * re_squared_lj = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .entry kernel_ellipsoid_sphere (\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_x_,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_q,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_shape,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_well,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_splj,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_sig_eps,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_ntypes,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_stride,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_ans,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_astride,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_engv,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sphere_err_flag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_eflag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_vflag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_inum,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_sphere_t_per_atom)\n" -" {\n" -" .reg .u32 %r<66>;\n" -" .reg .u64 %rd<73>;\n" -" .reg .f32 %f<777>;\n" -" .reg .pred %p<34>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32886_33_non_const_sp_lj120[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33120_37_non_const_red_acc136[3584];\n" -" .shared .f32 __cuda_local_var_32892_33_non_const_b_alpha;\n" -" .shared .f32 __cuda_local_var_32892_42_non_const_cr60;\n" -" .shared .f32 __cuda_local_var_32892_48_non_const_solv_f_a;\n" -" .shared .f32 __cuda_local_var_32892_58_non_const_solv_f_r;\n" -" .loc 17 27 0\n" -"$LDWbegin_kernel_ellipsoid_sphere:\n" -" .loc 17 32 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_ellipsoid_sphere_splj];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 17 33 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 17 34 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 17 35 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32886_33_non_const_sp_lj120+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 38 0\n" -" mov.f32 %f5, 0f3f4db6db; \n" -" st.shared.f32 [__cuda_local_var_32892_33_non_const_b_alpha], %f5;\n" -" .loc 17 39 0\n" -" mov.f32 %f6, 0f42700000; \n" -" lg2.approx.ftz.f32 %f7, %f6;\n" -" mov.f32 %f8, 0f3eaaaaab; \n" -" mul.ftz.f32 %f9, %f7, %f8;\n" -" ex2.approx.ftz.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f42700000; \n" -" mul.ftz.f32 %f12, %f10, %f10;\n" -" div.approx.ftz.f32 %f13, %f11, %f12;\n" -" sub.ftz.f32 %f14, %f10, %f13;\n" -" mov.f32 %f15, 0f3eaaaaab; \n" -" mul.ftz.f32 %f16, %f14, %f15;\n" -" sub.ftz.f32 %f17, %f10, %f16;\n" -" st.shared.f32 [__cuda_local_var_32892_42_non_const_cr60], %f17;\n" -" .loc 21 544 0\n" -" mov.f32 %f18, 0f3f800000; \n" -" mov.f32 %f19, 0fbf52c7ea; \n" -" mov.f32 %f20, 0fc0b59883; \n" -" fma.rn.ftz.f32 %f21, %f18, %f19, %f20;\n" -" mov.f32 %f22, 0f41455dc0; \n" -" mov.f32 %f23, 0f3f800000; \n" -" mov.f32 %f24, 0f41e6bd60; \n" -" fma.rn.ftz.f32 %f25, %f22, %f23, %f24;\n" -" mov.f32 %f26, 0f3f800000; \n" -" mov.f32 %f27, 0fc0d21907; \n" -" fma.rn.ftz.f32 %f28, %f21, %f26, %f27;\n" -" mov.f32 %f29, 0f3f800000; \n" -" mov.f32 %f30, 0f419d92c8; \n" -" fma.rn.ftz.f32 %f31, %f25, %f29, %f30;\n" -" rcp.approx.ftz.f32 %f32, %f31;\n" -" mov.f32 %f33, 0f3f800000; \n" -" fma.rn.ftz.f32 %f34, %f28, %f32, %f33;\n" -" mov.b32 %r1, %f34;\n" -" mov.b32 %f35, %r1;\n" -" mov.f32 %f36, 0f41800000; \n" -" mul.ftz.f32 %f37, %f35, %f36;\n" -" mov.f32 %f38, 0f40400000; \n" -" mov.f32 %f39, 0fc2100000; \n" -" mul.ftz.f32 %f40, %f37, %f39;\n" -" div.approx.ftz.f32 %f41, %f38, %f40;\n" -" .loc 17 40 0\n" -" st.shared.f32 [__cuda_local_var_32892_48_non_const_solv_f_a], %f41;\n" -" .loc 21 544 0\n" -" mov.f32 %f42, 0f40400000; \n" -" mov.f32 %f43, 0f44fd2000; \n" -" mul.ftz.f32 %f44, %f37, %f43;\n" -" div.approx.ftz.f32 %f45, %f42, %f44;\n" -" .loc 17 41 0\n" -" st.shared.f32 [__cuda_local_var_32892_58_non_const_solv_f_r], %f45;\n" -" .loc 17 54 0\n" -" mov.f32 %f46, 0f00000000; \n" -" mov.f32 %f47, %f46;\n" -" mov.f32 %f48, 0f00000000; \n" -" mov.f32 %f49, %f48;\n" -" mov.f32 %f50, 0f00000000; \n" -" mov.f32 %f51, %f50;\n" -" mov.f32 %f52, 0f00000000; \n" -" mov.f32 %f53, %f52;\n" -" mov.f32 %f54, 0f00000000; \n" -" mov.f32 %f55, %f54;\n" -" mov.f32 %f56, 0f00000000; \n" -" mov.f32 %f57, %f56;\n" -" ld.param.s32 %r2, [__cudaparm_kernel_ellipsoid_sphere_t_per_atom];\n" -" cvt.s32.u32 %r3, %tid.x;\n" -" div.s32 %r4, %r3, %r2;\n" -" cvt.s32.u32 %r5, %ntid.x;\n" -" div.s32 %r6, %r5, %r2;\n" -" cvt.s32.u32 %r7, %ctaid.x;\n" -" mul.lo.s32 %r8, %r7, %r6;\n" -" add.s32 %r9, %r4, %r8;\n" -" ld.param.s32 %r10, [__cudaparm_kernel_ellipsoid_sphere_inum];\n" -" setp.le.s32 %p1, %r10, %r9;\n" -" @%p1 bra $Lt_0_73474;\n" -" .loc 17 59 0\n" -" cvt.s64.s32 %rd2, %r9;\n" -" mul.wide.s32 %rd3, %r9, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_ellipsoid_sphere_dev_nbor];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r11, [%rd5+0];\n" -" ld.param.s32 %r12, [__cudaparm_kernel_ellipsoid_sphere_stride];\n" -" cvt.s64.s32 %rd6, %r12;\n" -" mul.wide.s32 %rd7, %r12, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r13, [%rd8+0];\n" -" .loc 17 62 0\n" -" cvt.s64.s32 %rd9, %r11;\n" -" mul.wide.s32 %rd10, %r11, 16;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_ellipsoid_sphere_x_];\n" -" add.u64 %rd12, %rd10, %rd11;\n" -" ld.global.v4.f32 {%f58,%f59,%f60,%f61}, [%rd12+0];\n" -" .loc 17 70 0\n" -" cvt.rzi.ftz.s32.f32 %r14, %f61;\n" -" cvt.s64.s32 %rd13, %r14;\n" -" mul.wide.s32 %rd14, %r14, 16;\n" -" ld.param.u64 %rd15, [__cudaparm_kernel_ellipsoid_sphere_shape];\n" -" add.u64 %rd16, %rd15, %rd14;\n" -" ld.global.v4.f32 {%f62,%f63,%f64,_}, [%rd16+0];\n" -" .loc 17 74 0\n" -" ld.param.u64 %rd17, [__cudaparm_kernel_ellipsoid_sphere_q];\n" -" add.u64 %rd18, %rd17, %rd10;\n" -" ld.global.v4.f32 {%f65,%f66,%f67,%f68}, [%rd18+0];\n" -" .loc 17 75 0\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_ellipsoid_sphere_well];\n" -" add.u64 %rd20, %rd19, %rd14;\n" -" ld.global.v4.f32 {%f69,%f70,%f71,_}, [%rd20+0];\n" -" .loc 17 78 0\n" -" cvt.s32.s64 %r15, %rd6;\n" -" sub.s32 %r16, %r2, 1;\n" -" and.b32 %r17, %r16, %r3;\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" mul.lo.s32 %r18, %r15, %r17;\n" -" cvt.s64.s32 %rd22, %r18;\n" -" mul.wide.s32 %rd23, %r18, 4;\n" -" add.u64 %rd24, %rd21, %rd23;\n" -" mov.s64 %rd25, %rd24;\n" -" mul.lo.s32 %r19, %r15, %r13;\n" -" cvt.s64.s32 %rd26, %r19;\n" -" mul.wide.s32 %rd27, %r19, 4;\n" -" add.u64 %rd28, %rd21, %rd27;\n" -" setp.ge.u64 %p2, %rd24, %rd28;\n" -" @%p2 bra $Lt_0_75266;\n" -" ld.param.s32 %r20, [__cudaparm_kernel_ellipsoid_sphere_vflag];\n" -" mov.s32 %r21, 0;\n" -" setp.gt.s32 %p3, %r20, %r21;\n" -" add.ftz.f32 %f72, %f66, %f66;\n" -" add.ftz.f32 %f73, %f68, %f68;\n" -" mul.ftz.f32 %f74, %f65, %f65;\n" -" mul.ftz.f32 %f75, %f66, %f66;\n" -" mul.ftz.f32 %f76, %f67, %f67;\n" -" mul.ftz.f32 %f77, %f68, %f68;\n" -" add.ftz.f32 %f78, %f67, %f67;\n" -" mul.ftz.f32 %f79, %f62, %f63;\n" -" add.ftz.f32 %f80, %f62, %f62;\n" -" add.ftz.f32 %f81, %f63, %f63;\n" -" add.ftz.f32 %f82, %f64, %f64;\n" -" ld.param.s32 %r22, [__cudaparm_kernel_ellipsoid_sphere_ntypes];\n" -" mul.lo.s32 %r23, %r22, %r14;\n" -" mul.ftz.f32 %f83, %f72, %f67;\n" -" mul.ftz.f32 %f84, %f72, %f68;\n" -" mul.ftz.f32 %f85, %f72, %f65;\n" -" mul.ftz.f32 %f86, %f73, %f65;\n" -" add.ftz.f32 %f87, %f74, %f75;\n" -" sub.ftz.f32 %f88, %f74, %f75;\n" -" mul.ftz.f32 %f89, %f78, %f65;\n" -" mul.ftz.f32 %f90, %f78, %f68;\n" -" mul.ftz.f32 %f91, %f79, %f64;\n" -" sub.ftz.f32 %f92, %f83, %f86;\n" -" add.ftz.f32 %f93, %f83, %f86;\n" -" sub.ftz.f32 %f94, %f86, %f83;\n" -" sub.ftz.f32 %f95, %f87, %f76;\n" -" add.ftz.f32 %f96, %f76, %f88;\n" -" sub.ftz.f32 %f97, %f88, %f76;\n" -" add.ftz.f32 %f98, %f84, %f89;\n" -" sub.ftz.f32 %f99, %f84, %f89;\n" -" sub.ftz.f32 %f100, %f89, %f84;\n" -" sub.ftz.f32 %f101, %f90, %f85;\n" -" add.ftz.f32 %f102, %f85, %f90;\n" -" sub.ftz.f32 %f103, %f85, %f90;\n" -" mul.ftz.f32 %f104, %f92, %f70;\n" -" mul.ftz.f32 %f105, %f93, %f69;\n" -" neg.ftz.f32 %f106, %f93;\n" -" sub.ftz.f32 %f107, %f95, %f77;\n" -" sub.ftz.f32 %f108, %f77, %f95;\n" -" sub.ftz.f32 %f109, %f96, %f77;\n" -" sub.ftz.f32 %f110, %f77, %f96;\n" -" add.ftz.f32 %f111, %f77, %f97;\n" -" mul.ftz.f32 %f112, %f98, %f71;\n" -" neg.ftz.f32 %f113, %f98;\n" -" mul.ftz.f32 %f114, %f99, %f69;\n" -" mul.ftz.f32 %f115, %f101, %f71;\n" -" mul.ftz.f32 %f116, %f102, %f70;\n" -" mul.ftz.f32 %f117, %f92, %f104;\n" -" mul.ftz.f32 %f118, %f102, %f104;\n" -" mul.ftz.f32 %f119, %f107, %f69;\n" -" mul.ftz.f32 %f120, %f104, %f109;\n" -" mul.ftz.f32 %f121, %f109, %f70;\n" -" mul.ftz.f32 %f122, %f111, %f71;\n" -" neg.ftz.f32 %f123, %f111;\n" -" mul.ftz.f32 %f124, %f92, %f116;\n" -" mul.ftz.f32 %f125, %f109, %f116;\n" -" mul.ftz.f32 %f126, %f102, %f116;\n" -" fma.rn.ftz.f32 %f127, %f107, %f119, %f117;\n" -" fma.rn.ftz.f32 %f128, %f119, %f99, %f118;\n" -" fma.rn.ftz.f32 %f129, %f119, %f93, %f120;\n" -" mul.ftz.f32 %f130, %f92, %f121;\n" -" mul.ftz.f32 %f131, %f109, %f121;\n" -" mul.ftz.f32 %f132, %f102, %f121;\n" -" fma.rn.ftz.f32 %f133, %f107, %f114, %f124;\n" -" fma.rn.ftz.f32 %f134, %f93, %f114, %f125;\n" -" fma.rn.ftz.f32 %f135, %f99, %f114, %f126;\n" -" fma.rn.ftz.f32 %f136, %f112, %f98, %f127;\n" -" fma.rn.ftz.f32 %f137, %f112, %f111, %f128;\n" -" fma.rn.ftz.f32 %f138, %f112, %f101, %f129;\n" -" fma.rn.ftz.f32 %f139, %f107, %f105, %f130;\n" -" fma.rn.ftz.f32 %f140, %f93, %f105, %f131;\n" -" fma.rn.ftz.f32 %f141, %f99, %f105, %f132;\n" -" fma.rn.ftz.f32 %f142, %f98, %f122, %f133;\n" -" fma.rn.ftz.f32 %f143, %f101, %f122, %f134;\n" -" fma.rn.ftz.f32 %f144, %f111, %f122, %f135;\n" -" mov.f32 %f145, 0f3f800000; \n" -" add.ftz.f32 %f146, %f136, %f145;\n" -" fma.rn.ftz.f32 %f147, %f115, %f98, %f139;\n" -" fma.rn.ftz.f32 %f148, %f115, %f101, %f140;\n" -" fma.rn.ftz.f32 %f149, %f115, %f111, %f141;\n" -" abs.ftz.f32 %f150, %f142;\n" -" mov.f32 %f151, 0f3f800000; \n" -" add.ftz.f32 %f152, %f144, %f151;\n" -" abs.ftz.f32 %f153, %f146;\n" -" abs.ftz.f32 %f154, %f147;\n" -" mov.f32 %f155, 0f3f800000; \n" -" add.ftz.f32 %f156, %f148, %f155;\n" -" setp.lt.ftz.f32 %p4, %f153, %f154;\n" -" ld.param.u64 %rd29, [__cudaparm_kernel_ellipsoid_sphere_sig_eps];\n" -" mov.f32 %f157, 0f00000000; \n" -" mov.f32 %f158, 0f00000000; \n" -" mov.f32 %f159, 0f00000000; \n" -" mov.f32 %f160, 0f00000000; \n" -" mov.f32 %f161, 0f00000000; \n" -" mov.f32 %f162, 0f00000000; \n" -" mov.f32 %f163, 0f00000000; \n" -" mov.u64 %rd30, __cuda___cuda_local_var_32886_33_non_const_sp_lj120;\n" -"$Lt_0_51970:\n" -" .loc 17 83 0\n" -" ld.global.s32 %r24, [%rd25+0];\n" -" .loc 17 87 0\n" -" and.b32 %r25, %r24, 1073741823;\n" -" cvt.s64.s32 %rd31, %r25;\n" -" mul.wide.s32 %rd32, %r25, 16;\n" -" add.u64 %rd33, %rd11, %rd32;\n" -" ld.global.v4.f32 {%f164,%f165,%f166,%f167}, [%rd33+0];\n" -" .loc 17 98 0\n" -" sub.ftz.f32 %f168, %f165, %f59;\n" -" sub.ftz.f32 %f169, %f164, %f58;\n" -" sub.ftz.f32 %f170, %f166, %f60;\n" -" mul.ftz.f32 %f171, %f168, %f168;\n" -" fma.rn.ftz.f32 %f172, %f169, %f169, %f171;\n" -" fma.rn.ftz.f32 %f173, %f170, %f170, %f172;\n" -" rsqrt.approx.ftz.f32 %f174, %f173;\n" -" mul.ftz.f32 %f175, %f169, %f174;\n" -" .loc 17 99 0\n" -" mul.ftz.f32 %f176, %f168, %f174;\n" -" .loc 17 104 0\n" -" cvt.rzi.ftz.s32.f32 %r26, %f167;\n" -" add.s32 %r27, %r26, %r23;\n" -" cvt.s64.s32 %rd34, %r27;\n" -" mul.wide.s32 %rd35, %r27, 8;\n" -" add.u64 %rd36, %rd29, %rd35;\n" -" ld.global.v2.f32 {%f177,%f178}, [%rd36+0];\n" -" .loc 17 105 0\n" -" shr.s32 %r28, %r24, 30;\n" -" and.b32 %r29, %r28, 3;\n" -" cvt.s64.s32 %rd37, %r29;\n" -" mul.wide.s32 %rd38, %r29, 4;\n" -" add.u64 %rd39, %rd30, %rd38;\n" -" ld.shared.f32 %f179, [%rd39+0];\n" -" mul.ftz.f32 %f180, %f179, %f178;\n" -" .loc 16 299 0\n" -" mov.f32 %f181, %f175;\n" -" .loc 16 300 0\n" -" mov.f32 %f182, 0f3f000000; \n" -" mul.ftz.f32 %f183, %f177, %f182;\n" -" add.ftz.f32 %f184, %f183, %f63;\n" -" add.ftz.f32 %f185, %f183, %f62;\n" -" add.ftz.f32 %f186, %f183, %f64;\n" -" mul.ftz.f32 %f187, %f184, %f184;\n" -" mul.ftz.f32 %f188, %f185, %f185;\n" -" mul.ftz.f32 %f189, %f186, %f186;\n" -" mov.f32 %f190, 0f3f000000; \n" -" mul.ftz.f32 %f191, %f187, %f190;\n" -" mov.f32 %f192, 0f3f000000; \n" -" mul.ftz.f32 %f193, %f188, %f192;\n" -" mov.f32 %f194, 0f3f000000; \n" -" mul.ftz.f32 %f195, %f189, %f194;\n" -" mul.ftz.f32 %f196, %f92, %f191;\n" -" mul.ftz.f32 %f197, %f98, %f195;\n" -" mul.ftz.f32 %f198, %f193, %f107;\n" -" mul.ftz.f32 %f199, %f92, %f196;\n" -" fma.rn.ftz.f32 %f200, %f107, %f198, %f199;\n" -" fma.rn.ftz.f32 %f201, %f197, %f98, %f200;\n" -" mov.f32 %f202, %f201;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f203, %f109, %f196;\n" -" fma.rn.ftz.f32 %f204, %f198, %f93, %f203;\n" -" fma.rn.ftz.f32 %f205, %f197, %f101, %f204;\n" -" mov.f32 %f206, %f205;\n" -" .loc 16 302 0\n" -" mul.ftz.f32 %f207, %f102, %f196;\n" -" fma.rn.ftz.f32 %f208, %f198, %f99, %f207;\n" -" fma.rn.ftz.f32 %f209, %f197, %f111, %f208;\n" -" mov.f32 %f210, %f209;\n" -" .loc 16 303 0\n" -" mov.f32 %f211, %f176;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f212, %f93, %f193;\n" -" mul.ftz.f32 %f213, %f101, %f195;\n" -" mul.ftz.f32 %f214, %f191, %f109;\n" -" mul.ftz.f32 %f215, %f92, %f214;\n" -" fma.rn.ftz.f32 %f216, %f107, %f212, %f215;\n" -" fma.rn.ftz.f32 %f217, %f213, %f98, %f216;\n" -" mov.f32 %f218, %f217;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f219, %f109, %f214;\n" -" fma.rn.ftz.f32 %f220, %f93, %f212, %f219;\n" -" fma.rn.ftz.f32 %f221, %f213, %f101, %f220;\n" -" mov.f32 %f222, %f221;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f223, %f102, %f214;\n" -" fma.rn.ftz.f32 %f224, %f99, %f212, %f223;\n" -" fma.rn.ftz.f32 %f225, %f213, %f111, %f224;\n" -" mov.f32 %f226, %f225;\n" -" .loc 16 307 0\n" -" mul.ftz.f32 %f227, %f170, %f174;\n" -" mov.f32 %f228, %f227;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f229, %f102, %f191;\n" -" mul.ftz.f32 %f230, %f99, %f193;\n" -" mul.ftz.f32 %f231, %f195, %f111;\n" -" mul.ftz.f32 %f232, %f92, %f229;\n" -" fma.rn.ftz.f32 %f233, %f107, %f230, %f232;\n" -" fma.rn.ftz.f32 %f234, %f98, %f231, %f233;\n" -" mov.f32 %f235, %f234;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f236, %f109, %f229;\n" -" fma.rn.ftz.f32 %f237, %f93, %f230, %f236;\n" -" fma.rn.ftz.f32 %f238, %f101, %f231, %f237;\n" -" mov.f32 %f239, %f238;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f240, %f102, %f229;\n" -" fma.rn.ftz.f32 %f241, %f99, %f230, %f240;\n" -" fma.rn.ftz.f32 %f242, %f111, %f231, %f241;\n" -" mov.f32 %f243, %f242;\n" -" abs.ftz.f32 %f244, %f217;\n" -" abs.ftz.f32 %f245, %f201;\n" -" setp.gt.ftz.f32 %p5, %f244, %f245;\n" -" @!%p5 bra $Lt_0_52226;\n" -" .loc 16 314 0\n" -" mov.f32 %f202, %f217;\n" -" mov.f32 %f218, %f201;\n" -" .loc 16 315 0\n" -" mov.f32 %f206, %f221;\n" -" mov.f32 %f222, %f205;\n" -" .loc 16 316 0\n" -" mov.f32 %f210, %f225;\n" -" mov.f32 %f226, %f209;\n" -" .loc 16 317 0\n" -" mov.f32 %f181, %f176;\n" -" mov.f32 %f211, %f175;\n" -"$Lt_0_52226:\n" -" mov.f32 %f246, %f202;\n" -" abs.ftz.f32 %f247, %f246;\n" -" abs.ftz.f32 %f248, %f234;\n" -" setp.lt.ftz.f32 %p6, %f247, %f248;\n" -" @!%p6 bra $Lt_0_52738;\n" -" .loc 16 321 0\n" -" mov.f32 %f202, %f234;\n" -" mov.f32 %f235, %f246;\n" -" .loc 16 322 0\n" -" mov.f32 %f249, %f206;\n" -" mov.f32 %f206, %f238;\n" -" mov.f32 %f239, %f249;\n" -" .loc 16 323 0\n" -" mov.f32 %f250, %f210;\n" -" mov.f32 %f210, %f242;\n" -" mov.f32 %f243, %f250;\n" -" .loc 16 324 0\n" -" mov.f32 %f251, %f181;\n" -" mov.f32 %f181, %f227;\n" -" mov.f32 %f228, %f251;\n" -"$Lt_0_52738:\n" -" mov.f32 %f252, %f202;\n" -" mov.f32 %f253, 0f00000000; \n" -" setp.neu.ftz.f32 %p7, %f252, %f253;\n" -" @!%p7 bra $Lt_0_53506;\n" -" bra.uni $Lt_0_54274;\n" -"$Lt_0_53506:\n" -" mov.f32 %f254, 0f00000000; \n" -" setp.neu.ftz.f32 %p8, %f218, %f254;\n" -" @!%p8 bra $Lt_0_54018;\n" -" .loc 16 338 0\n" -" mov.f32 %f202, %f218;\n" -" mov.f32 %f218, %f252;\n" -" .loc 16 339 0\n" -" mov.f32 %f255, %f206;\n" -" mov.f32 %f206, %f222;\n" -" mov.f32 %f222, %f255;\n" -" .loc 16 340 0\n" -" mov.f32 %f256, %f210;\n" -" mov.f32 %f210, %f226;\n" -" mov.f32 %f226, %f256;\n" -" .loc 16 341 0\n" -" mov.f32 %f257, %f181;\n" -" mov.f32 %f181, %f211;\n" -" mov.f32 %f211, %f257;\n" -" bra.uni $Lt_0_54274;\n" -"$Lt_0_54018:\n" -" mov.f32 %f258, 0f00000000; \n" -" setp.neu.ftz.f32 %p9, %f235, %f258;\n" -" @!%p9 bra $Lt_0_54530;\n" -" .loc 16 346 0\n" -" mov.f32 %f202, %f235;\n" -" mov.f32 %f235, %f252;\n" -" .loc 16 347 0\n" -" mov.f32 %f259, %f206;\n" -" mov.f32 %f206, %f239;\n" -" mov.f32 %f239, %f259;\n" -" .loc 16 348 0\n" -" mov.f32 %f260, %f210;\n" -" mov.f32 %f210, %f243;\n" -" mov.f32 %f243, %f260;\n" -" .loc 16 349 0\n" -" mov.f32 %f261, %f181;\n" -" mov.f32 %f181, %f228;\n" -" mov.f32 %f228, %f261;\n" -" bra.uni $Lt_0_54274;\n" -"$Lt_0_54530:\n" -" .loc 16 352 0\n" -" mov.s32 %r30, 2;\n" -" ld.param.u64 %rd40, [__cudaparm_kernel_ellipsoid_sphere_err_flag];\n" -" st.global.s32 [%rd40+0], %r30;\n" -"$Lt_0_54274:\n" -"$Lt_0_53762:\n" -"$Lt_0_53250:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f262, %f218, %f202;\n" -" mul.ftz.f32 %f263, %f206, %f262;\n" -" sub.ftz.f32 %f264, %f222, %f263;\n" -" mov.f32 %f222, %f264;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f265, %f210, %f262;\n" -" sub.ftz.f32 %f266, %f226, %f265;\n" -" mov.f32 %f226, %f266;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f267, %f181, %f262;\n" -" sub.ftz.f32 %f268, %f211, %f267;\n" -" mov.f32 %f211, %f268;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f269, %f235, %f202;\n" -" mul.ftz.f32 %f270, %f206, %f269;\n" -" sub.ftz.f32 %f239, %f239, %f270;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f271, %f210, %f269;\n" -" sub.ftz.f32 %f243, %f243, %f271;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f272, %f181, %f269;\n" -" sub.ftz.f32 %f228, %f228, %f272;\n" -" abs.ftz.f32 %f273, %f264;\n" -" abs.ftz.f32 %f274, %f239;\n" -" setp.lt.ftz.f32 %p10, %f273, %f274;\n" -" @!%p10 bra $Lt_0_54786;\n" -" .loc 16 366 0\n" -" mov.f32 %f222, %f239;\n" -" mov.f32 %f239, %f264;\n" -" .loc 16 367 0\n" -" mov.f32 %f226, %f243;\n" -" mov.f32 %f243, %f266;\n" -" .loc 16 368 0\n" -" mov.f32 %f211, %f228;\n" -" mov.f32 %f228, %f268;\n" -"$Lt_0_54786:\n" -" mov.f32 %f275, %f222;\n" -" mov.f32 %f276, 0f00000000; \n" -" setp.neu.ftz.f32 %p11, %f275, %f276;\n" -" @!%p11 bra $Lt_0_55554;\n" -" bra.uni $Lt_0_55810;\n" -"$Lt_0_55554:\n" -" mov.f32 %f277, 0f00000000; \n" -" setp.neu.ftz.f32 %p12, %f239, %f277;\n" -" @!%p12 bra $Lt_0_55810;\n" -" .loc 16 383 0\n" -" mov.f32 %f222, %f239;\n" -" mov.f32 %f239, %f275;\n" -" .loc 16 384 0\n" -" mov.f32 %f278, %f226;\n" -" mov.f32 %f226, %f243;\n" -" mov.f32 %f243, %f278;\n" -" .loc 16 385 0\n" -" mov.f32 %f279, %f211;\n" -" mov.f32 %f211, %f228;\n" -" mov.f32 %f228, %f279;\n" -"$Lt_0_55810:\n" -"$Lt_0_55298:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f280, %f239, %f222;\n" -" mul.ftz.f32 %f281, %f226, %f280;\n" -" sub.ftz.f32 %f243, %f243, %f281;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f282, %f211, %f280;\n" -" sub.ftz.f32 %f228, %f228, %f282;\n" -" mov.f32 %f283, 0f00000000; \n" -" setp.eq.ftz.f32 %p13, %f243, %f283;\n" -" @!%p13 bra $Lt_0_56322;\n" -" .loc 16 394 0\n" -" mov.s32 %r31, 2;\n" -" ld.param.u64 %rd41, [__cudaparm_kernel_ellipsoid_sphere_err_flag];\n" -" st.global.s32 [%rd41+0], %r31;\n" -"$Lt_0_56322:\n" -" .loc 16 396 0\n" -" div.approx.ftz.f32 %f284, %f228, %f243;\n" -" .loc 16 399 0\n" -" mul.ftz.f32 %f285, %f284, %f226;\n" -" sub.ftz.f32 %f286, %f211, %f285;\n" -" div.approx.ftz.f32 %f287, %f286, %f222;\n" -" .loc 16 403 0\n" -" mul.ftz.f32 %f288, %f287, %f206;\n" -" fma.rn.ftz.f32 %f289, %f210, %f284, %f288;\n" -" sub.ftz.f32 %f290, %f181, %f289;\n" -" div.approx.ftz.f32 %f291, %f290, %f202;\n" -" .loc 17 124 0\n" -" mul.ftz.f32 %f292, %f287, %f176;\n" -" fma.rn.ftz.f32 %f293, %f175, %f291, %f292;\n" -" fma.rn.ftz.f32 %f294, %f227, %f284, %f293;\n" -" mov.f32 %f295, 0f3f000000; \n" -" mul.ftz.f32 %f296, %f294, %f295;\n" -" rsqrt.approx.ftz.f32 %f297, %f296;\n" -" .loc 16 299 0\n" -" mov.f32 %f181, %f175;\n" -" .loc 16 300 0\n" -" mov.f32 %f202, %f146;\n" -" .loc 16 301 0\n" -" mov.f32 %f206, %f138;\n" -" .loc 16 302 0\n" -" mov.f32 %f210, %f137;\n" -" .loc 16 303 0\n" -" mov.f32 %f211, %f176;\n" -" .loc 16 304 0\n" -" mov.f32 %f218, %f147;\n" -" .loc 16 305 0\n" -" mov.f32 %f222, %f156;\n" -" .loc 16 306 0\n" -" mov.f32 %f226, %f149;\n" -" .loc 16 307 0\n" -" mov.f32 %f228, %f227;\n" -" .loc 16 308 0\n" -" mov.f32 %f235, %f142;\n" -" .loc 16 309 0\n" -" mov.f32 %f239, %f143;\n" -" .loc 16 310 0\n" -" mov.f32 %f243, %f152;\n" -" @!%p4 bra $Lt_0_56834;\n" -" .loc 16 314 0\n" -" mov.f32 %f202, %f147;\n" -" mov.f32 %f218, %f146;\n" -" .loc 16 315 0\n" -" mov.f32 %f206, %f156;\n" -" mov.f32 %f222, %f138;\n" -" .loc 16 316 0\n" -" mov.f32 %f210, %f149;\n" -" mov.f32 %f226, %f137;\n" -" .loc 16 317 0\n" -" mov.f32 %f181, %f176;\n" -" mov.f32 %f211, %f175;\n" -"$Lt_0_56834:\n" -" mov.f32 %f298, %f202;\n" -" abs.ftz.f32 %f299, %f298;\n" -" setp.gt.ftz.f32 %p14, %f150, %f299;\n" -" @!%p14 bra $Lt_0_57346;\n" -" .loc 16 321 0\n" -" mov.f32 %f202, %f142;\n" -" mov.f32 %f235, %f298;\n" -" .loc 16 322 0\n" -" mov.f32 %f300, %f206;\n" -" mov.f32 %f206, %f143;\n" -" mov.f32 %f239, %f300;\n" -" .loc 16 323 0\n" -" mov.f32 %f301, %f210;\n" -" mov.f32 %f210, %f152;\n" -" mov.f32 %f243, %f301;\n" -" .loc 16 324 0\n" -" mov.f32 %f302, %f181;\n" -" mov.f32 %f181, %f227;\n" -" mov.f32 %f228, %f302;\n" -"$Lt_0_57346:\n" -" mov.f32 %f303, %f202;\n" -" mov.f32 %f304, 0f00000000; \n" -" setp.neu.ftz.f32 %p15, %f303, %f304;\n" -" @!%p15 bra $Lt_0_58114;\n" -" bra.uni $Lt_0_58882;\n" -"$Lt_0_58114:\n" -" mov.f32 %f305, 0f00000000; \n" -" setp.neu.ftz.f32 %p16, %f218, %f305;\n" -" @!%p16 bra $Lt_0_58626;\n" -" .loc 16 338 0\n" -" mov.f32 %f202, %f218;\n" -" mov.f32 %f218, %f303;\n" -" .loc 16 339 0\n" -" mov.f32 %f306, %f206;\n" -" mov.f32 %f206, %f222;\n" -" mov.f32 %f222, %f306;\n" -" .loc 16 340 0\n" -" mov.f32 %f307, %f210;\n" -" mov.f32 %f210, %f226;\n" -" mov.f32 %f226, %f307;\n" -" .loc 16 341 0\n" -" mov.f32 %f308, %f181;\n" -" mov.f32 %f181, %f211;\n" -" mov.f32 %f211, %f308;\n" -" bra.uni $Lt_0_58882;\n" -"$Lt_0_58626:\n" -" mov.f32 %f309, 0f00000000; \n" -" setp.neu.ftz.f32 %p17, %f235, %f309;\n" -" @!%p17 bra $Lt_0_59138;\n" -" .loc 16 346 0\n" -" mov.f32 %f202, %f235;\n" -" mov.f32 %f235, %f303;\n" -" .loc 16 347 0\n" -" mov.f32 %f310, %f206;\n" -" mov.f32 %f206, %f239;\n" -" mov.f32 %f239, %f310;\n" -" .loc 16 348 0\n" -" mov.f32 %f311, %f210;\n" -" mov.f32 %f210, %f243;\n" -" mov.f32 %f243, %f311;\n" -" .loc 16 349 0\n" -" mov.f32 %f312, %f181;\n" -" mov.f32 %f181, %f228;\n" -" mov.f32 %f228, %f312;\n" -" bra.uni $Lt_0_58882;\n" -"$Lt_0_59138:\n" -" .loc 16 352 0\n" -" mov.s32 %r32, 2;\n" -" ld.param.u64 %rd42, [__cudaparm_kernel_ellipsoid_sphere_err_flag];\n" -" st.global.s32 [%rd42+0], %r32;\n" -"$Lt_0_58882:\n" -"$Lt_0_58370:\n" -"$Lt_0_57858:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f313, %f218, %f202;\n" -" mul.ftz.f32 %f314, %f206, %f313;\n" -" sub.ftz.f32 %f315, %f222, %f314;\n" -" mov.f32 %f222, %f315;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f316, %f210, %f313;\n" -" sub.ftz.f32 %f317, %f226, %f316;\n" -" mov.f32 %f226, %f317;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f318, %f181, %f313;\n" -" sub.ftz.f32 %f319, %f211, %f318;\n" -" mov.f32 %f211, %f319;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f320, %f235, %f202;\n" -" mul.ftz.f32 %f321, %f206, %f320;\n" -" sub.ftz.f32 %f239, %f239, %f321;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f322, %f210, %f320;\n" -" sub.ftz.f32 %f243, %f243, %f322;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f323, %f181, %f320;\n" -" sub.ftz.f32 %f228, %f228, %f323;\n" -" abs.ftz.f32 %f324, %f315;\n" -" abs.ftz.f32 %f325, %f239;\n" -" setp.lt.ftz.f32 %p18, %f324, %f325;\n" -" @!%p18 bra $Lt_0_59394;\n" -" .loc 16 366 0\n" -" mov.f32 %f222, %f239;\n" -" mov.f32 %f239, %f315;\n" -" .loc 16 367 0\n" -" mov.f32 %f226, %f243;\n" -" mov.f32 %f243, %f317;\n" -" .loc 16 368 0\n" -" mov.f32 %f211, %f228;\n" -" mov.f32 %f228, %f319;\n" -"$Lt_0_59394:\n" -" mov.f32 %f326, %f222;\n" -" mov.f32 %f327, 0f00000000; \n" -" setp.neu.ftz.f32 %p19, %f326, %f327;\n" -" @!%p19 bra $Lt_0_60162;\n" -" bra.uni $Lt_0_60418;\n" -"$Lt_0_60162:\n" -" mov.f32 %f328, 0f00000000; \n" -" setp.neu.ftz.f32 %p20, %f239, %f328;\n" -" @!%p20 bra $Lt_0_60418;\n" -" .loc 16 383 0\n" -" mov.f32 %f222, %f239;\n" -" mov.f32 %f239, %f326;\n" -" .loc 16 384 0\n" -" mov.f32 %f329, %f226;\n" -" mov.f32 %f226, %f243;\n" -" mov.f32 %f243, %f329;\n" -" .loc 16 385 0\n" -" mov.f32 %f330, %f211;\n" -" mov.f32 %f211, %f228;\n" -" mov.f32 %f228, %f330;\n" -"$Lt_0_60418:\n" -"$Lt_0_59906:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f331, %f239, %f222;\n" -" mul.ftz.f32 %f332, %f226, %f331;\n" -" sub.ftz.f32 %f243, %f243, %f332;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f333, %f211, %f331;\n" -" sub.ftz.f32 %f228, %f228, %f333;\n" -" mov.f32 %f334, 0f00000000; \n" -" setp.eq.ftz.f32 %p21, %f243, %f334;\n" -" @!%p21 bra $Lt_0_60930;\n" -" .loc 16 394 0\n" -" mov.s32 %r33, 2;\n" -" ld.param.u64 %rd43, [__cudaparm_kernel_ellipsoid_sphere_err_flag];\n" -" st.global.s32 [%rd43+0], %r33;\n" -"$Lt_0_60930:\n" -" .loc 17 133 0\n" -" div.approx.ftz.f32 %f335, %f228, %f243;\n" -" mul.ftz.f32 %f336, %f335, %f226;\n" -" sub.ftz.f32 %f337, %f211, %f336;\n" -" div.approx.ftz.f32 %f338, %f337, %f222;\n" -" mul.ftz.f32 %f339, %f338, %f206;\n" -" fma.rn.ftz.f32 %f340, %f210, %f335, %f339;\n" -" mul.ftz.f32 %f341, %f338, %f176;\n" -" sub.ftz.f32 %f342, %f181, %f340;\n" -" div.approx.ftz.f32 %f343, %f342, %f202;\n" -" fma.rn.ftz.f32 %f344, %f175, %f343, %f341;\n" -" fma.rn.ftz.f32 %f345, %f227, %f335, %f344;\n" -" add.ftz.f32 %f346, %f345, %f345;\n" -" .loc 17 141 0\n" -" rcp.approx.ftz.f32 %f347, %f174;\n" -" sub.ftz.f32 %f348, %f347, %f297;\n" -" mov.f32 %f349, 0f3f000000; \n" -" mul.ftz.f32 %f350, %f348, %f349;\n" -" mul.ftz.f32 %f351, %f348, %f348;\n" -" mul.ftz.f32 %f352, %f348, %f351;\n" -" add.ftz.f32 %f353, %f350, %f64;\n" -" add.ftz.f32 %f354, %f350, %f62;\n" -" add.ftz.f32 %f355, %f350, %f63;\n" -" mul.ftz.f32 %f356, %f354, %f355;\n" -" mul.ftz.f32 %f357, %f353, %f356;\n" -" mul.ftz.f32 %f358, %f352, %f357;\n" -" .loc 17 142 0\n" -" div.approx.ftz.f32 %f359, %f177, %f348;\n" -" mul.ftz.f32 %f360, %f359, %f346;\n" -" mov.f32 %f361, 0f3f800000; \n" -" mov.f32 %f362, 0f40400000; \n" -" fma.rn.ftz.f32 %f363, %f362, %f360, %f361;\n" -" mul.ftz.f32 %f364, %f91, %f363;\n" -" .loc 17 146 0\n" -" div.approx.ftz.f32 %f365, %f348, %f17;\n" -" add.ftz.f32 %f366, %f365, %f64;\n" -" add.ftz.f32 %f367, %f365, %f62;\n" -" add.ftz.f32 %f368, %f365, %f63;\n" -" mul.ftz.f32 %f369, %f367, %f368;\n" -" mul.ftz.f32 %f370, %f366, %f369;\n" -" mul.ftz.f32 %f371, %f352, %f370;\n" -" .loc 17 148 0\n" -" mov.f32 %f372, 0f3f800000; \n" -" mov.f32 %f373, 0f3f4db6db; \n" -" fma.rn.ftz.f32 %f374, %f373, %f360, %f372;\n" -" mul.ftz.f32 %f375, %f91, %f374;\n" -" .loc 17 150 0\n" -" mul.ftz.f32 %f376, %f359, %f359;\n" -" mul.ftz.f32 %f377, %f359, %f376;\n" -" mul.ftz.f32 %f378, %f377, %f377;\n" -" .loc 17 153 0\n" -" mul.ftz.f32 %f379, %f177, %f177;\n" -" mov.f32 %f380, 0f41000000; \n" -" div.approx.ftz.f32 %f381, %f358, %f380;\n" -" mov.f32 %f382, 0f42700000; \n" -" div.approx.ftz.f32 %f383, %f371, %f382;\n" -" mul.ftz.f32 %f384, %f379, %f177;\n" -" div.approx.ftz.f32 %f385, %f364, %f381;\n" -" div.approx.ftz.f32 %f386, %f375, %f383;\n" -" mul.ftz.f32 %f387, %f385, %f180;\n" -" mul.ftz.f32 %f388, %f386, %f180;\n" -" mul.ftz.f32 %f389, %f384, %f387;\n" -" mul.ftz.f32 %f390, %f384, %f388;\n" -" mul.ftz.f32 %f391, %f389, %f41;\n" -" mul.ftz.f32 %f392, %f390, %f378;\n" -" mul.ftz.f32 %f393, %f392, %f45;\n" -" add.ftz.f32 %f394, %f391, %f393;\n" -" add.ftz.f32 %f163, %f163, %f394;\n" -" .loc 17 160 0\n" -" mov.f32 %f395, 0f40800000; \n" -" mul.ftz.f32 %f396, %f343, %f395;\n" -" .loc 17 167 0\n" -" mov.f32 %f397, 0f40400000; \n" -" div.approx.ftz.f32 %f398, %f397, %f348;\n" -" add.ftz.f32 %f399, %f80, %f348;\n" -" rcp.approx.ftz.f32 %f400, %f399;\n" -" add.ftz.f32 %f401, %f81, %f348;\n" -" rcp.approx.ftz.f32 %f402, %f401;\n" -" add.ftz.f32 %f403, %f400, %f402;\n" -" add.ftz.f32 %f404, %f82, %f348;\n" -" rcp.approx.ftz.f32 %f405, %f404;\n" -" add.ftz.f32 %f406, %f403, %f405;\n" -" add.ftz.f32 %f407, %f398, %f406;\n" -" .loc 17 172 0\n" -" mul.ftz.f32 %f408, %f177, %f346;\n" -" mov.f32 %f409, 0f40400000; \n" -" fma.rn.ftz.f32 %f410, %f409, %f408, %f348;\n" -" rcp.approx.ftz.f32 %f411, %f410;\n" -" rcp.approx.ftz.f32 %f412, %f348;\n" -" sub.ftz.f32 %f413, %f412, %f411;\n" -" add.ftz.f32 %f414, %f407, %f413;\n" -" .loc 17 175 0\n" -" fma.rn.ftz.f32 %f415, %f17, %f62, %f348;\n" -" rcp.approx.ftz.f32 %f416, %f415;\n" -" fma.rn.ftz.f32 %f417, %f17, %f63, %f348;\n" -" rcp.approx.ftz.f32 %f418, %f417;\n" -" add.ftz.f32 %f419, %f416, %f418;\n" -" fma.rn.ftz.f32 %f420, %f17, %f64, %f348;\n" -" rcp.approx.ftz.f32 %f421, %f420;\n" -" add.ftz.f32 %f422, %f419, %f421;\n" -" add.ftz.f32 %f423, %f398, %f422;\n" -" .loc 17 186 0\n" -" mul.ftz.f32 %f424, %f175, %f175;\n" -" neg.ftz.f32 %f425, %f424;\n" -" mov.f32 %f426, %f425;\n" -" .loc 17 187 0\n" -" mul.ftz.f32 %f427, %f176, %f175;\n" -" neg.ftz.f32 %f428, %f427;\n" -" mov.f32 %f429, %f428;\n" -" .loc 17 188 0\n" -" mul.ftz.f32 %f430, %f227, %f175;\n" -" neg.ftz.f32 %f431, %f430;\n" -" mov.f32 %f432, %f431;\n" -" .loc 17 189 0\n" -" mov.f32 %f433, 0f3f800000; \n" -" sub.ftz.f32 %f434, %f433, %f424;\n" -" mov.f32 %f435, %f434;\n" -" .loc 17 190 0\n" -" mul.ftz.f32 %f436, %f174, %f434;\n" -" mov.f32 %f437, %f436;\n" -" .loc 17 191 0\n" -" mov.f32 %f438, %f429;\n" -" mul.ftz.f32 %f439, %f438, %f174;\n" -" mov.f32 %f440, %f439;\n" -" .loc 17 192 0\n" -" mov.f32 %f441, %f432;\n" -" mul.ftz.f32 %f442, %f441, %f174;\n" -" mov.f32 %f443, %f442;\n" -" .loc 17 196 0\n" -" mul.ftz.f32 %f444, %f297, %f297;\n" -" mov.f32 %f445, 0f3f4db6db; \n" -" mul.ftz.f32 %f446, %f177, %f445;\n" -" mov.f32 %f447, 0f40800000; \n" -" mul.ftz.f32 %f448, %f335, %f447;\n" -" mul.ftz.f32 %f449, %f444, %f297;\n" -" mov.f32 %f450, 0f3f000000; \n" -" mul.ftz.f32 %f451, %f449, %f450;\n" -" mul.ftz.f32 %f452, %f451, %f287;\n" -" mul.ftz.f32 %f453, %f451, %f291;\n" -" mul.ftz.f32 %f454, %f451, %f284;\n" -" mov.f32 %f455, 0f40800000; \n" -" mul.ftz.f32 %f456, %f338, %f455;\n" -" mul.ftz.f32 %f457, %f452, %f439;\n" -" mul.ftz.f32 %f458, %f456, %f439;\n" -" mov.f32 %f459, 0f40e00000; \n" -" div.approx.ftz.f32 %f460, %f459, %f348;\n" -" mov.f32 %f461, 0f3f4db6db; \n" -" fma.rn.ftz.f32 %f462, %f461, %f408, %f348;\n" -" rcp.approx.ftz.f32 %f463, %f462;\n" -" fma.rn.ftz.f32 %f464, %f453, %f436, %f457;\n" -" fma.rn.ftz.f32 %f465, %f396, %f436, %f458;\n" -" sub.ftz.f32 %f466, %f460, %f463;\n" -" mul.ftz.f32 %f467, %f446, %f463;\n" -" fma.rn.ftz.f32 %f468, %f454, %f442, %f464;\n" -" fma.rn.ftz.f32 %f469, %f448, %f442, %f465;\n" -" add.ftz.f32 %f470, %f466, %f423;\n" -" add.ftz.f32 %f471, %f468, %f175;\n" -" mul.ftz.f32 %f472, %f470, %f471;\n" -" mul.ftz.f32 %f473, %f467, %f469;\n" -" sub.ftz.f32 %f474, %f473, %f472;\n" -" .loc 17 197 0\n" -" mov.f32 %f475, 0f40400000; \n" -" mul.ftz.f32 %f476, %f177, %f475;\n" -" mul.ftz.f32 %f477, %f476, %f411;\n" -" mul.ftz.f32 %f478, %f393, %f474;\n" -" mul.ftz.f32 %f479, %f471, %f414;\n" -" mul.ftz.f32 %f480, %f477, %f469;\n" -" sub.ftz.f32 %f481, %f480, %f479;\n" -" fma.rn.ftz.f32 %f482, %f391, %f481, %f478;\n" -" .loc 17 199 0\n" -" add.ftz.f32 %f162, %f482, %f162;\n" -" @!%p3 bra $Lt_0_61954;\n" -" .loc 17 201 0\n" -" mov.f32 %f483, %f47;\n" -" mul.ftz.f32 %f484, %f169, %f482;\n" -" sub.ftz.f32 %f485, %f483, %f484;\n" -" mov.f32 %f47, %f485;\n" -"$Lt_0_61954:\n" -" .loc 17 186 0\n" -" mov.f32 %f486, %f428;\n" -" .loc 17 187 0\n" -" mul.ftz.f32 %f487, %f176, %f176;\n" -" neg.ftz.f32 %f488, %f487;\n" -" mov.f32 %f489, %f488;\n" -" .loc 17 188 0\n" -" mul.ftz.f32 %f490, %f227, %f176;\n" -" neg.ftz.f32 %f491, %f490;\n" -" mov.f32 %f492, %f491;\n" -" .loc 17 189 0\n" -" mov.f32 %f493, 0f3f800000; \n" -" sub.ftz.f32 %f494, %f493, %f487;\n" -" mov.f32 %f495, %f494;\n" -" .loc 17 190 0\n" -" mov.f32 %f496, %f486;\n" -" mul.ftz.f32 %f497, %f496, %f174;\n" -" mov.f32 %f498, %f497;\n" -" .loc 17 191 0\n" -" mul.ftz.f32 %f499, %f174, %f494;\n" -" mov.f32 %f500, %f499;\n" -" .loc 17 192 0\n" -" mov.f32 %f501, %f492;\n" -" mul.ftz.f32 %f502, %f501, %f174;\n" -" mov.f32 %f503, %f502;\n" -" .loc 17 196 0\n" -" mul.ftz.f32 %f504, %f452, %f499;\n" -" mul.ftz.f32 %f505, %f456, %f499;\n" -" fma.rn.ftz.f32 %f506, %f453, %f497, %f504;\n" -" fma.rn.ftz.f32 %f507, %f396, %f497, %f505;\n" -" fma.rn.ftz.f32 %f508, %f454, %f502, %f506;\n" -" fma.rn.ftz.f32 %f509, %f448, %f502, %f507;\n" -" add.ftz.f32 %f510, %f508, %f176;\n" -" mul.ftz.f32 %f511, %f470, %f510;\n" -" mul.ftz.f32 %f512, %f467, %f509;\n" -" sub.ftz.f32 %f513, %f512, %f511;\n" -" .loc 17 197 0\n" -" mul.ftz.f32 %f514, %f393, %f513;\n" -" mul.ftz.f32 %f515, %f510, %f414;\n" -" mul.ftz.f32 %f516, %f477, %f509;\n" -" sub.ftz.f32 %f517, %f516, %f515;\n" -" fma.rn.ftz.f32 %f482, %f391, %f517, %f514;\n" -" .loc 17 203 0\n" -" add.ftz.f32 %f161, %f482, %f161;\n" -" @!%p3 bra $Lt_0_65538;\n" -" .loc 17 205 0\n" -" mov.f32 %f518, %f49;\n" -" mul.ftz.f32 %f519, %f168, %f482;\n" -" sub.ftz.f32 %f520, %f518, %f519;\n" -" mov.f32 %f49, %f520;\n" -" .loc 17 206 0\n" -" mov.f32 %f521, %f53;\n" -" mul.ftz.f32 %f522, %f169, %f482;\n" -" sub.ftz.f32 %f523, %f521, %f522;\n" -" mov.f32 %f53, %f523;\n" -"$Lt_0_65538:\n" -" .loc 17 186 0\n" -" mov.f32 %f524, %f431;\n" -" .loc 17 187 0\n" -" mov.f32 %f525, %f491;\n" -" .loc 17 188 0\n" -" mul.ftz.f32 %f526, %f227, %f227;\n" -" neg.ftz.f32 %f527, %f526;\n" -" mov.f32 %f528, %f527;\n" -" .loc 17 189 0\n" -" mov.f32 %f529, 0f3f800000; \n" -" sub.ftz.f32 %f530, %f529, %f526;\n" -" mov.f32 %f531, %f530;\n" -" .loc 17 190 0\n" -" mov.f32 %f532, %f524;\n" -" mul.ftz.f32 %f533, %f532, %f174;\n" -" mov.f32 %f534, %f533;\n" -" .loc 17 191 0\n" -" mov.f32 %f535, %f525;\n" -" mul.ftz.f32 %f536, %f535, %f174;\n" -" mov.f32 %f537, %f536;\n" -" .loc 17 192 0\n" -" mul.ftz.f32 %f538, %f174, %f530;\n" -" mov.f32 %f539, %f538;\n" -" .loc 17 196 0\n" -" mul.ftz.f32 %f540, %f452, %f536;\n" -" mul.ftz.f32 %f541, %f456, %f536;\n" -" fma.rn.ftz.f32 %f542, %f453, %f533, %f540;\n" -" fma.rn.ftz.f32 %f543, %f396, %f533, %f541;\n" -" fma.rn.ftz.f32 %f544, %f454, %f538, %f542;\n" -" fma.rn.ftz.f32 %f545, %f448, %f538, %f543;\n" -" add.ftz.f32 %f546, %f544, %f227;\n" -" mul.ftz.f32 %f547, %f546, %f470;\n" -" mul.ftz.f32 %f548, %f467, %f545;\n" -" sub.ftz.f32 %f549, %f548, %f547;\n" -" .loc 17 197 0\n" -" mul.ftz.f32 %f550, %f393, %f549;\n" -" mul.ftz.f32 %f551, %f546, %f414;\n" -" mul.ftz.f32 %f552, %f477, %f545;\n" -" sub.ftz.f32 %f553, %f552, %f551;\n" -" fma.rn.ftz.f32 %f482, %f391, %f553, %f550;\n" -" .loc 17 209 0\n" -" add.ftz.f32 %f160, %f482, %f160;\n" -" @!%p3 bra $Lt_0_68610;\n" -" .loc 17 211 0\n" -" mov.f32 %f554, %f51;\n" -" mul.ftz.f32 %f555, %f170, %f482;\n" -" sub.ftz.f32 %f556, %f554, %f555;\n" -" mov.f32 %f51, %f556;\n" -" .loc 17 212 0\n" -" mov.f32 %f557, %f55;\n" -" mul.ftz.f32 %f558, %f169, %f482;\n" -" sub.ftz.f32 %f559, %f557, %f558;\n" -" mov.f32 %f55, %f559;\n" -" .loc 17 213 0\n" -" mul.ftz.f32 %f560, %f168, %f482;\n" -" sub.ftz.f32 %f56, %f56, %f560;\n" -" mov.f32 %f57, %f56;\n" -"$Lt_0_68610:\n" -" .loc 17 232 0\n" -" mul.ftz.f32 %f561, %f102, %f338;\n" -" mul.ftz.f32 %f562, %f100, %f338;\n" -" mul.ftz.f32 %f563, %f111, %f338;\n" -" mov.f32 %f564, 0f00000000; \n" -" mov.f32 %f565, 0f00000000; \n" -" fma.rn.ftz.f32 %f566, %f565, %f212, %f564;\n" -" mov.f32 %f567, 0f00000000; \n" -" mov.f32 %f568, 0f00000000; \n" -" fma.rn.ftz.f32 %f569, %f568, %f230, %f567;\n" -" mov.f32 %f570, 0f00000000; \n" -" mov.f32 %f571, 0f00000000; \n" -" fma.rn.ftz.f32 %f572, %f571, %f198, %f570;\n" -" mul.ftz.f32 %f573, %f121, %f456;\n" -" mul.ftz.f32 %f574, %f105, %f456;\n" -" mul.ftz.f32 %f575, %f115, %f456;\n" -" neg.ftz.f32 %f576, %f561;\n" -" neg.ftz.f32 %f577, %f563;\n" -" neg.ftz.f32 %f578, %f207;\n" -" neg.ftz.f32 %f579, %f240;\n" -" mov.f32 %f580, 0f00000000; \n" -" fma.rn.ftz.f32 %f581, %f213, %f580, %f566;\n" -" mov.f32 %f582, 0f00000000; \n" -" fma.rn.ftz.f32 %f583, %f582, %f231, %f569;\n" -" mov.f32 %f584, 0f00000000; \n" -" fma.rn.ftz.f32 %f585, %f197, %f584, %f572;\n" -" neg.ftz.f32 %f586, %f223;\n" -" fma.rn.ftz.f32 %f587, %f198, %f100, %f578;\n" -" fma.rn.ftz.f32 %f588, %f100, %f230, %f579;\n" -" fma.rn.ftz.f32 %f589, %f100, %f212, %f586;\n" -" fma.rn.ftz.f32 %f590, %f197, %f123, %f587;\n" -" fma.rn.ftz.f32 %f591, %f123, %f231, %f588;\n" -" fma.rn.ftz.f32 %f592, %f213, %f123, %f589;\n" -" mov.f32 %f593, 0f00000000; \n" -" fma.rn.ftz.f32 %f594, %f343, %f593, %f576;\n" -" mov.f32 %f595, 0f00000000; \n" -" fma.rn.ftz.f32 %f596, %f595, %f343, %f562;\n" -" mov.f32 %f597, 0f00000000; \n" -" fma.rn.ftz.f32 %f598, %f343, %f597, %f577;\n" -" mul.ftz.f32 %f599, %f452, %f590;\n" -" mul.ftz.f32 %f600, %f452, %f591;\n" -" mul.ftz.f32 %f601, %f452, %f592;\n" -" fma.rn.ftz.f32 %f602, %f396, %f104, %f573;\n" -" fma.rn.ftz.f32 %f603, %f119, %f396, %f574;\n" -" fma.rn.ftz.f32 %f604, %f396, %f112, %f575;\n" -" fma.rn.ftz.f32 %f605, %f335, %f109, %f594;\n" -" fma.rn.ftz.f32 %f606, %f93, %f335, %f596;\n" -" fma.rn.ftz.f32 %f607, %f335, %f101, %f598;\n" -" fma.rn.ftz.f32 %f608, %f453, %f585, %f599;\n" -" fma.rn.ftz.f32 %f609, %f453, %f583, %f600;\n" -" fma.rn.ftz.f32 %f610, %f453, %f581, %f601;\n" -" fma.rn.ftz.f32 %f611, %f448, %f116, %f602;\n" -" fma.rn.ftz.f32 %f612, %f448, %f114, %f603;\n" -" fma.rn.ftz.f32 %f613, %f448, %f122, %f604;\n" -" fma.rn.ftz.f32 %f614, %f454, %f205, %f608;\n" -" fma.rn.ftz.f32 %f615, %f454, %f238, %f609;\n" -" fma.rn.ftz.f32 %f616, %f454, %f221, %f610;\n" -" mul.ftz.f32 %f617, %f605, %f611;\n" -" mul.ftz.f32 %f618, %f616, %f287;\n" -" fma.rn.ftz.f32 %f619, %f612, %f606, %f617;\n" -" fma.rn.ftz.f32 %f620, %f291, %f614, %f618;\n" -" fma.rn.ftz.f32 %f621, %f613, %f607, %f619;\n" -" fma.rn.ftz.f32 %f622, %f284, %f615, %f620;\n" -" neg.ftz.f32 %f623, %f621;\n" -" mul.ftz.f32 %f624, %f470, %f622;\n" -" fma.rn.ftz.f32 %f625, %f467, %f623, %f624;\n" -" mul.ftz.f32 %f626, %f393, %f625;\n" -" mul.ftz.f32 %f627, %f622, %f414;\n" -" fma.rn.ftz.f32 %f628, %f477, %f623, %f627;\n" -" fma.rn.ftz.f32 %f629, %f391, %f628, %f626;\n" -" sub.ftz.f32 %f159, %f159, %f629;\n" -" .loc 17 245 0\n" -" mul.ftz.f32 %f630, %f94, %f196;\n" -" mul.ftz.f32 %f631, %f94, %f229;\n" -" mov.f32 %f632, 0f00000000; \n" -" mov.f32 %f633, 0f00000000; \n" -" fma.rn.ftz.f32 %f634, %f198, %f633, %f632;\n" -" mul.ftz.f32 %f635, %f94, %f214;\n" -" fma.rn.ftz.f32 %f636, %f99, %f198, %f207;\n" -" fma.rn.ftz.f32 %f637, %f198, %f108, %f630;\n" -" fma.rn.ftz.f32 %f638, %f108, %f230, %f631;\n" -" mov.f32 %f639, 0f00000000; \n" -" fma.rn.ftz.f32 %f640, %f197, %f639, %f634;\n" -" fma.rn.ftz.f32 %f641, %f108, %f212, %f635;\n" -" fma.rn.ftz.f32 %f642, %f197, %f111, %f636;\n" -" fma.rn.ftz.f32 %f643, %f197, %f113, %f637;\n" -" fma.rn.ftz.f32 %f644, %f113, %f231, %f638;\n" -" mul.ftz.f32 %f645, %f452, %f581;\n" -" mul.ftz.f32 %f646, %f452, %f583;\n" -" mul.ftz.f32 %f647, %f452, %f640;\n" -" fma.rn.ftz.f32 %f648, %f213, %f113, %f641;\n" -" fma.rn.ftz.f32 %f649, %f453, %f242, %f646;\n" -" fma.rn.ftz.f32 %f650, %f453, %f642, %f647;\n" -" fma.rn.ftz.f32 %f651, %f453, %f225, %f645;\n" -" mov.f32 %f652, 0f00000000; \n" -" fma.rn.ftz.f32 %f653, %f343, %f102, %f652;\n" -" mov.f32 %f654, 0f00000000; \n" -" fma.rn.ftz.f32 %f655, %f99, %f343, %f654;\n" -" mov.f32 %f656, 0f00000000; \n" -" fma.rn.ftz.f32 %f657, %f343, %f111, %f656;\n" -" fma.rn.ftz.f32 %f658, %f454, %f644, %f649;\n" -" fma.rn.ftz.f32 %f659, %f454, %f643, %f650;\n" -" fma.rn.ftz.f32 %f660, %f454, %f648, %f651;\n" -" fma.rn.ftz.f32 %f661, %f335, %f94, %f653;\n" -" fma.rn.ftz.f32 %f662, %f108, %f335, %f655;\n" -" fma.rn.ftz.f32 %f663, %f335, %f113, %f657;\n" -" mul.ftz.f32 %f664, %f660, %f287;\n" -" fma.rn.ftz.f32 %f665, %f291, %f659, %f664;\n" -" mul.ftz.f32 %f666, %f661, %f611;\n" -" fma.rn.ftz.f32 %f667, %f284, %f658, %f665;\n" -" fma.rn.ftz.f32 %f668, %f612, %f662, %f666;\n" -" fma.rn.ftz.f32 %f669, %f613, %f663, %f668;\n" -" neg.ftz.f32 %f670, %f669;\n" -" mul.ftz.f32 %f671, %f470, %f667;\n" -" fma.rn.ftz.f32 %f672, %f467, %f670, %f671;\n" -" mul.ftz.f32 %f673, %f393, %f672;\n" -" mul.ftz.f32 %f674, %f667, %f414;\n" -" fma.rn.ftz.f32 %f675, %f477, %f670, %f674;\n" -" fma.rn.ftz.f32 %f676, %f391, %f675, %f673;\n" -" sub.ftz.f32 %f158, %f158, %f676;\n" -" .loc 17 258 0\n" -" mul.ftz.f32 %f677, %f92, %f338;\n" -" mul.ftz.f32 %f678, %f107, %f338;\n" -" mul.ftz.f32 %f679, %f98, %f338;\n" -" mul.ftz.f32 %f680, %f110, %f196;\n" -" mul.ftz.f32 %f681, %f110, %f229;\n" -" mul.ftz.f32 %f682, %f110, %f214;\n" -" fma.rn.ftz.f32 %f683, %f198, %f107, %f199;\n" -" fma.rn.ftz.f32 %f684, %f106, %f198, %f680;\n" -" fma.rn.ftz.f32 %f685, %f106, %f230, %f681;\n" -" fma.rn.ftz.f32 %f686, %f106, %f212, %f682;\n" -" fma.rn.ftz.f32 %f687, %f197, %f98, %f683;\n" -" fma.rn.ftz.f32 %f688, %f197, %f103, %f684;\n" -" fma.rn.ftz.f32 %f689, %f103, %f231, %f685;\n" -" fma.rn.ftz.f32 %f690, %f213, %f103, %f686;\n" -" mul.ftz.f32 %f691, %f452, %f687;\n" -" mul.ftz.f32 %f692, %f452, %f234;\n" -" mul.ftz.f32 %f693, %f452, %f217;\n" -" fma.rn.ftz.f32 %f694, %f343, %f110, %f677;\n" -" fma.rn.ftz.f32 %f695, %f106, %f343, %f678;\n" -" fma.rn.ftz.f32 %f696, %f343, %f103, %f679;\n" -" fma.rn.ftz.f32 %f697, %f453, %f688, %f691;\n" -" fma.rn.ftz.f32 %f698, %f453, %f689, %f692;\n" -" fma.rn.ftz.f32 %f699, %f453, %f690, %f693;\n" -" mov.f32 %f700, 0f00000000; \n" -" fma.rn.ftz.f32 %f701, %f335, %f700, %f694;\n" -" mov.f32 %f702, 0f00000000; \n" -" fma.rn.ftz.f32 %f703, %f702, %f335, %f695;\n" -" mov.f32 %f704, 0f00000000; \n" -" fma.rn.ftz.f32 %f705, %f335, %f704, %f696;\n" -" fma.rn.ftz.f32 %f706, %f454, %f640, %f697;\n" -" fma.rn.ftz.f32 %f707, %f454, %f583, %f698;\n" -" fma.rn.ftz.f32 %f708, %f454, %f581, %f699;\n" -" mul.ftz.f32 %f709, %f708, %f287;\n" -" mul.ftz.f32 %f710, %f701, %f611;\n" -" fma.rn.ftz.f32 %f711, %f291, %f706, %f709;\n" -" fma.rn.ftz.f32 %f712, %f612, %f703, %f710;\n" -" fma.rn.ftz.f32 %f713, %f284, %f707, %f711;\n" -" fma.rn.ftz.f32 %f714, %f613, %f705, %f712;\n" -" neg.ftz.f32 %f715, %f714;\n" -" mul.ftz.f32 %f716, %f470, %f713;\n" -" fma.rn.ftz.f32 %f717, %f467, %f715, %f716;\n" -" mul.ftz.f32 %f718, %f393, %f717;\n" -" mul.ftz.f32 %f719, %f713, %f414;\n" -" fma.rn.ftz.f32 %f720, %f477, %f715, %f719;\n" -" fma.rn.ftz.f32 %f721, %f391, %f720, %f718;\n" -" sub.ftz.f32 %f157, %f157, %f721;\n" -" mul.lo.s32 %r34, %r15, %r2;\n" -" cvt.s64.s32 %rd44, %r34;\n" -" mul.wide.s32 %rd45, %r34, 4;\n" -" add.u64 %rd25, %rd25, %rd45;\n" -" setp.gt.u64 %p22, %rd28, %rd25;\n" -" @%p22 bra $Lt_0_51970;\n" -" bra.uni $Lt_0_51458;\n" -"$Lt_0_75266:\n" -" mov.f32 %f157, 0f00000000; \n" -" mov.f32 %f158, 0f00000000; \n" -" mov.f32 %f159, 0f00000000; \n" -" mov.f32 %f160, 0f00000000; \n" -" mov.f32 %f161, 0f00000000; \n" -" mov.f32 %f162, 0f00000000; \n" -" mov.f32 %f163, 0f00000000; \n" -"$Lt_0_51458:\n" -" mov.u32 %r35, 1;\n" -" setp.le.s32 %p23, %r2, %r35;\n" -" @%p23 bra $Lt_0_71426;\n" -" .loc 17 267 0\n" -" mov.u64 %rd46, __cuda___cuda_local_var_33120_37_non_const_red_acc136;\n" -" cvt.s64.s32 %rd47, %r3;\n" -" mul.wide.s32 %rd48, %r3, 4;\n" -" add.u64 %rd49, %rd46, %rd48;\n" -" mov.f32 %f722, %f162;\n" -" st.shared.f32 [%rd49+0], %f722;\n" -" .loc 17 268 0\n" -" mov.f32 %f723, %f161;\n" -" st.shared.f32 [%rd49+512], %f723;\n" -" .loc 17 269 0\n" -" mov.f32 %f724, %f160;\n" -" st.shared.f32 [%rd49+1024], %f724;\n" -" .loc 17 270 0\n" -" mov.f32 %f725, %f159;\n" -" st.shared.f32 [%rd49+1536], %f725;\n" -" .loc 17 271 0\n" -" mov.f32 %f726, %f158;\n" -" st.shared.f32 [%rd49+2048], %f726;\n" -" .loc 17 272 0\n" -" mov.f32 %f727, %f157;\n" -" st.shared.f32 [%rd49+2560], %f727;\n" -" .loc 17 274 0\n" -" shr.s32 %r36, %r2, 31;\n" -" mov.s32 %r37, 1;\n" -" and.b32 %r38, %r36, %r37;\n" -" add.s32 %r39, %r38, %r2;\n" -" shr.s32 %r40, %r39, 1;\n" -" mov.s32 %r41, %r40;\n" -" mov.u32 %r42, 0;\n" -" setp.ne.u32 %p24, %r40, %r42;\n" -" @!%p24 bra $Lt_0_69890;\n" -"$Lt_0_70402:\n" -" setp.ge.u32 %p25, %r17, %r41;\n" -" @%p25 bra $Lt_0_70658;\n" -" .loc 17 277 0\n" -" add.u32 %r43, %r3, %r41;\n" -" cvt.u64.u32 %rd50, %r43;\n" -" mul.wide.u32 %rd51, %r43, 4;\n" -" add.u64 %rd52, %rd46, %rd51;\n" -" ld.shared.f32 %f728, [%rd52+0];\n" -" add.ftz.f32 %f722, %f728, %f722;\n" -" st.shared.f32 [%rd49+0], %f722;\n" -" ld.shared.f32 %f729, [%rd52+512];\n" -" add.ftz.f32 %f723, %f729, %f723;\n" -" st.shared.f32 [%rd49+512], %f723;\n" -" ld.shared.f32 %f730, [%rd52+1024];\n" -" add.ftz.f32 %f724, %f730, %f724;\n" -" st.shared.f32 [%rd49+1024], %f724;\n" -" ld.shared.f32 %f731, [%rd52+1536];\n" -" add.ftz.f32 %f725, %f731, %f725;\n" -" st.shared.f32 [%rd49+1536], %f725;\n" -" ld.shared.f32 %f732, [%rd52+2048];\n" -" add.ftz.f32 %f726, %f732, %f726;\n" -" st.shared.f32 [%rd49+2048], %f726;\n" -" ld.shared.f32 %f733, [%rd52+2560];\n" -" add.ftz.f32 %f727, %f733, %f727;\n" -" st.shared.f32 [%rd49+2560], %f727;\n" -"$Lt_0_70658:\n" -" .loc 17 274 0\n" -" shr.u32 %r41, %r41, 1;\n" -" mov.u32 %r44, 0;\n" -" setp.ne.u32 %p26, %r41, %r44;\n" -" @%p26 bra $Lt_0_70402;\n" -"$Lt_0_69890:\n" -" .loc 17 281 0\n" -" mov.f32 %f162, %f722;\n" -" .loc 17 282 0\n" -" mov.f32 %f161, %f723;\n" -" .loc 17 283 0\n" -" mov.f32 %f160, %f724;\n" -" .loc 17 284 0\n" -" mov.f32 %f159, %f725;\n" -" .loc 17 285 0\n" -" mov.f32 %f158, %f726;\n" -" .loc 17 286 0\n" -" mov.f32 %f157, %f727;\n" -" ld.param.s32 %r45, [__cudaparm_kernel_ellipsoid_sphere_eflag];\n" -" mov.s32 %r46, 0;\n" -" set.gt.u32.s32 %r47, %r45, %r46;\n" -" neg.s32 %r48, %r47;\n" -" ld.param.s32 %r49, [__cudaparm_kernel_ellipsoid_sphere_vflag];\n" -" mov.s32 %r50, 0;\n" -" set.gt.u32.s32 %r51, %r49, %r50;\n" -" neg.s32 %r52, %r51;\n" -" or.b32 %r53, %r48, %r52;\n" -" mov.u32 %r54, 0;\n" -" setp.eq.s32 %p27, %r53, %r54;\n" -" @%p27 bra $Lt_0_71426;\n" -" .loc 17 290 0\n" -" mov.f32 %f722, %f47;\n" -" st.shared.f32 [%rd49+0], %f722;\n" -" mov.f32 %f723, %f49;\n" -" st.shared.f32 [%rd49+512], %f723;\n" -" mov.f32 %f724, %f51;\n" -" st.shared.f32 [%rd49+1024], %f724;\n" -" mov.f32 %f725, %f53;\n" -" st.shared.f32 [%rd49+1536], %f725;\n" -" mov.f32 %f726, %f55;\n" -" st.shared.f32 [%rd49+2048], %f726;\n" -" mov.f32 %f727, %f56;\n" -" st.shared.f32 [%rd49+2560], %f727;\n" -" .loc 17 291 0\n" -" mov.f32 %f734, %f163;\n" -" st.shared.f32 [%rd49+3072], %f734;\n" -" .loc 17 293 0\n" -" mov.s32 %r55, %r40;\n" -" @!%p24 bra $Lt_0_71938;\n" -"$Lt_0_72450:\n" -" setp.ge.u32 %p28, %r17, %r55;\n" -" @%p28 bra $Lt_0_72706;\n" -" .loc 17 296 0\n" -" add.u32 %r56, %r3, %r55;\n" -" cvt.u64.u32 %rd53, %r56;\n" -" mul.wide.u32 %rd54, %r56, 4;\n" -" add.u64 %rd55, %rd46, %rd54;\n" -" ld.shared.f32 %f735, [%rd55+0];\n" -" add.ftz.f32 %f722, %f735, %f722;\n" -" st.shared.f32 [%rd49+0], %f722;\n" -" ld.shared.f32 %f736, [%rd55+512];\n" -" add.ftz.f32 %f723, %f736, %f723;\n" -" st.shared.f32 [%rd49+512], %f723;\n" -" ld.shared.f32 %f737, [%rd55+1024];\n" -" add.ftz.f32 %f724, %f737, %f724;\n" -" st.shared.f32 [%rd49+1024], %f724;\n" -" ld.shared.f32 %f738, [%rd55+1536];\n" -" add.ftz.f32 %f725, %f738, %f725;\n" -" st.shared.f32 [%rd49+1536], %f725;\n" -" ld.shared.f32 %f739, [%rd55+2048];\n" -" add.ftz.f32 %f726, %f739, %f726;\n" -" st.shared.f32 [%rd49+2048], %f726;\n" -" ld.shared.f32 %f740, [%rd55+2560];\n" -" add.ftz.f32 %f727, %f740, %f727;\n" -" st.shared.f32 [%rd49+2560], %f727;\n" -" ld.shared.f32 %f741, [%rd55+3072];\n" -" add.ftz.f32 %f734, %f741, %f734;\n" -" st.shared.f32 [%rd49+3072], %f734;\n" -"$Lt_0_72706:\n" -" .loc 17 293 0\n" -" shr.u32 %r55, %r55, 1;\n" -" mov.u32 %r57, 0;\n" -" setp.ne.u32 %p29, %r55, %r57;\n" -" @%p29 bra $Lt_0_72450;\n" -"$Lt_0_71938:\n" -" .loc 17 301 0\n" -" mov.f32 %f47, %f722;\n" -" mov.f32 %f49, %f723;\n" -" mov.f32 %f51, %f724;\n" -" mov.f32 %f53, %f725;\n" -" mov.f32 %f55, %f726;\n" -" mov.f32 %f57, %f727;\n" -" .loc 17 302 0\n" -" mov.f32 %f163, %f734;\n" -"$Lt_0_71426:\n" -"$Lt_0_69378:\n" -" mov.u32 %r58, 0;\n" -" setp.ne.s32 %p30, %r17, %r58;\n" -" @%p30 bra $Lt_0_73474;\n" -" .loc 17 308 0\n" -" ld.param.u64 %rd56, [__cudaparm_kernel_ellipsoid_sphere_engv];\n" -" add.u64 %rd57, %rd56, %rd3;\n" -" ld.param.s32 %r59, [__cudaparm_kernel_ellipsoid_sphere_astride];\n" -" ld.param.s32 %r60, [__cudaparm_kernel_ellipsoid_sphere_eflag];\n" -" mov.u32 %r61, 0;\n" -" setp.le.s32 %p31, %r60, %r61;\n" -" @%p31 bra $Lt_0_73986;\n" -" .loc 17 310 0\n" -" ld.global.f32 %f742, [%rd57+0];\n" -" add.ftz.f32 %f743, %f742, %f163;\n" -" st.global.f32 [%rd57+0], %f743;\n" -" .loc 17 311 0\n" -" cvt.s64.s32 %rd58, %r59;\n" -" mul.wide.s32 %rd59, %r59, 4;\n" -" add.u64 %rd57, %rd57, %rd59;\n" -"$Lt_0_73986:\n" -" ld.param.s32 %r62, [__cudaparm_kernel_ellipsoid_sphere_vflag];\n" -" mov.u32 %r63, 0;\n" -" setp.le.s32 %p32, %r62, %r63;\n" -" @%p32 bra $Lt_0_74498;\n" -" .loc 17 315 0\n" -" ld.global.f32 %f744, [%rd57+0];\n" -" mov.f32 %f745, %f47;\n" -" add.ftz.f32 %f746, %f744, %f745;\n" -" st.global.f32 [%rd57+0], %f746;\n" -" .loc 17 316 0\n" -" cvt.s64.s32 %rd60, %r59;\n" -" mul.wide.s32 %rd61, %r59, 4;\n" -" add.u64 %rd62, %rd61, %rd57;\n" -" .loc 17 315 0\n" -" ld.global.f32 %f747, [%rd62+0];\n" -" mov.f32 %f748, %f49;\n" -" add.ftz.f32 %f749, %f747, %f748;\n" -" st.global.f32 [%rd62+0], %f749;\n" -" .loc 17 316 0\n" -" add.u64 %rd63, %rd61, %rd62;\n" -" .loc 17 315 0\n" -" ld.global.f32 %f750, [%rd63+0];\n" -" mov.f32 %f751, %f51;\n" -" add.ftz.f32 %f752, %f750, %f751;\n" -" st.global.f32 [%rd63+0], %f752;\n" -" .loc 17 316 0\n" -" add.u64 %rd64, %rd61, %rd63;\n" -" .loc 17 315 0\n" -" ld.global.f32 %f753, [%rd64+0];\n" -" mov.f32 %f754, %f53;\n" -" add.ftz.f32 %f755, %f753, %f754;\n" -" st.global.f32 [%rd64+0], %f755;\n" -" .loc 17 316 0\n" -" add.u64 %rd65, %rd61, %rd64;\n" -" .loc 17 315 0\n" -" ld.global.f32 %f756, [%rd65+0];\n" -" mov.f32 %f757, %f55;\n" -" add.ftz.f32 %f758, %f756, %f757;\n" -" st.global.f32 [%rd65+0], %f758;\n" -" .loc 17 316 0\n" -" add.u64 %rd57, %rd61, %rd65;\n" -" .loc 17 315 0\n" -" ld.global.f32 %f759, [%rd57+0];\n" -" mov.f32 %f760, %f57;\n" -" add.ftz.f32 %f761, %f759, %f760;\n" -" st.global.f32 [%rd57+0], %f761;\n" -"$Lt_0_74498:\n" -" .loc 17 319 0\n" -" ld.param.u64 %rd66, [__cudaparm_kernel_ellipsoid_sphere_ans];\n" -" mul.lo.u64 %rd67, %rd2, 16;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" ld.global.v4.f32 {%f762,%f763,%f764,%f765}, [%rd68+0];\n" -" .loc 17 321 0\n" -" add.ftz.f32 %f766, %f763, %f161;\n" -" .loc 17 322 0\n" -" add.ftz.f32 %f767, %f764, %f160;\n" -" .loc 17 323 0\n" -" add.ftz.f32 %f768, %f762, %f162;\n" -" st.global.v4.f32 [%rd68+0], {%f768,%f766,%f767,%f765};\n" -" .loc 17 325 0\n" -" add.s32 %r64, %r9, %r59;\n" -" cvt.s64.s32 %rd69, %r64;\n" -" mul.wide.s32 %rd70, %r64, 16;\n" -" add.u64 %rd71, %rd66, %rd70;\n" -" ld.global.v4.f32 {%f769,%f770,%f771,%f772}, [%rd71+0];\n" -" .loc 17 327 0\n" -" add.ftz.f32 %f773, %f770, %f158;\n" -" .loc 17 328 0\n" -" add.ftz.f32 %f774, %f771, %f157;\n" -" .loc 17 329 0\n" -" add.ftz.f32 %f775, %f769, %f159;\n" -" st.global.v4.f32 [%rd71+0], {%f775,%f773,%f774,%f772};\n" -"$Lt_0_73474:\n" -"$Lt_0_50946:\n" -" .loc 17 332 0\n" -" exit;\n" -"$LDWend_kernel_ellipsoid_sphere:\n" -" }\n" -" .entry kernel_sphere_ellipsoid (\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_x_,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_q,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_shape,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_well,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_splj,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_sig_eps,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_ntypes,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_stride,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_ans,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid___val_paramengv,\n" -" .param .u64 __cudaparm_kernel_sphere_ellipsoid_err_flag,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_eflag,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_vflag,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_start,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_inum,\n" -" .param .s32 __cudaparm_kernel_sphere_ellipsoid_t_per_atom)\n" -" {\n" -" .reg .u32 %r<58>;\n" -" .reg .u64 %rd<70>;\n" -" .reg .f32 %f<567>;\n" -" .reg .pred %p<34>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33201_33_non_const_sp_lj3836[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33377_55_non_const_red_acc3852[3072];\n" -" .shared .f32 __cuda_local_var_33207_33_non_const_b_alpha;\n" -" .shared .f32 __cuda_local_var_33207_42_non_const_cr60;\n" -" .shared .f32 __cuda_local_var_33207_48_non_const_solv_f_a;\n" -" .shared .f32 __cuda_local_var_33207_58_non_const_solv_f_r;\n" -" .loc 17 341 0\n" -"$LDWbegin_kernel_sphere_ellipsoid:\n" -" .loc 17 347 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_sphere_ellipsoid_splj];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 17 348 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 17 349 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 17 350 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_33201_33_non_const_sp_lj3836+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 353 0\n" -" mov.f32 %f5, 0f3f4db6db; \n" -" st.shared.f32 [__cuda_local_var_33207_33_non_const_b_alpha], %f5;\n" -" .loc 17 354 0\n" -" mov.f32 %f6, 0f42700000; \n" -" lg2.approx.ftz.f32 %f7, %f6;\n" -" mov.f32 %f8, 0f3eaaaaab; \n" -" mul.ftz.f32 %f9, %f7, %f8;\n" -" ex2.approx.ftz.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f42700000; \n" -" mul.ftz.f32 %f12, %f10, %f10;\n" -" div.approx.ftz.f32 %f13, %f11, %f12;\n" -" sub.ftz.f32 %f14, %f10, %f13;\n" -" mov.f32 %f15, 0f3eaaaaab; \n" -" mul.ftz.f32 %f16, %f14, %f15;\n" -" sub.ftz.f32 %f17, %f10, %f16;\n" -" st.shared.f32 [__cuda_local_var_33207_42_non_const_cr60], %f17;\n" -" .loc 21 544 0\n" -" mov.f32 %f18, 0f3f800000; \n" -" mov.f32 %f19, 0fbf52c7ea; \n" -" mov.f32 %f20, 0fc0b59883; \n" -" fma.rn.ftz.f32 %f21, %f18, %f19, %f20;\n" -" mov.f32 %f22, 0f41455dc0; \n" -" mov.f32 %f23, 0f3f800000; \n" -" mov.f32 %f24, 0f41e6bd60; \n" -" fma.rn.ftz.f32 %f25, %f22, %f23, %f24;\n" -" mov.f32 %f26, 0f3f800000; \n" -" mov.f32 %f27, 0fc0d21907; \n" -" fma.rn.ftz.f32 %f28, %f21, %f26, %f27;\n" -" mov.f32 %f29, 0f3f800000; \n" -" mov.f32 %f30, 0f419d92c8; \n" -" fma.rn.ftz.f32 %f31, %f25, %f29, %f30;\n" -" rcp.approx.ftz.f32 %f32, %f31;\n" -" mov.f32 %f33, 0f3f800000; \n" -" fma.rn.ftz.f32 %f34, %f28, %f32, %f33;\n" -" mov.b32 %r1, %f34;\n" -" mov.b32 %f35, %r1;\n" -" mov.f32 %f36, 0f41800000; \n" -" mul.ftz.f32 %f37, %f35, %f36;\n" -" mov.f32 %f38, 0f40400000; \n" -" mov.f32 %f39, 0fc2100000; \n" -" mul.ftz.f32 %f40, %f37, %f39;\n" -" div.approx.ftz.f32 %f41, %f38, %f40;\n" -" .loc 17 355 0\n" -" st.shared.f32 [__cuda_local_var_33207_48_non_const_solv_f_a], %f41;\n" -" .loc 21 544 0\n" -" mov.f32 %f42, 0f40400000; \n" -" mov.f32 %f43, 0f44fd2000; \n" -" mul.ftz.f32 %f44, %f37, %f43;\n" -" div.approx.ftz.f32 %f45, %f42, %f44;\n" -" .loc 17 356 0\n" -" st.shared.f32 [__cuda_local_var_33207_58_non_const_solv_f_r], %f45;\n" -" .loc 17 365 0\n" -" mov.f32 %f46, 0f00000000; \n" -" mov.f32 %f47, %f46;\n" -" mov.f32 %f48, 0f00000000; \n" -" mov.f32 %f49, %f48;\n" -" mov.f32 %f50, 0f00000000; \n" -" mov.f32 %f51, %f50;\n" -" mov.f32 %f52, 0f00000000; \n" -" mov.f32 %f53, %f52;\n" -" mov.f32 %f54, 0f00000000; \n" -" mov.f32 %f55, %f54;\n" -" mov.f32 %f56, 0f00000000; \n" -" mov.f32 %f57, %f56;\n" -" ld.param.s32 %r2, [__cudaparm_kernel_sphere_ellipsoid_t_per_atom];\n" -" cvt.s32.u32 %r3, %tid.x;\n" -" div.s32 %r4, %r3, %r2;\n" -" cvt.s32.u32 %r5, %ntid.x;\n" -" div.s32 %r6, %r5, %r2;\n" -" cvt.s32.u32 %r7, %ctaid.x;\n" -" mul.lo.s32 %r8, %r7, %r6;\n" -" add.s32 %r9, %r4, %r8;\n" -" ld.param.s32 %r10, [__cudaparm_kernel_sphere_ellipsoid_start];\n" -" add.s32 %r11, %r10, %r9;\n" -" ld.param.s32 %r12, [__cudaparm_kernel_sphere_ellipsoid_inum];\n" -" setp.ge.s32 %p1, %r11, %r12;\n" -" @%p1 bra $Lt_1_73218;\n" -" .loc 17 370 0\n" -" cvt.s64.s32 %rd2, %r11;\n" -" mul.wide.s32 %rd3, %r11, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_sphere_ellipsoid_dev_nbor];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r13, [%rd5+0];\n" -" ld.param.s32 %r14, [__cudaparm_kernel_sphere_ellipsoid_stride];\n" -" cvt.s64.s32 %rd6, %r14;\n" -" mul.wide.s32 %rd7, %r14, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r15, [%rd8+0];\n" -" .loc 17 373 0\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_sphere_ellipsoid_x_];\n" -" cvt.s64.s32 %rd10, %r13;\n" -" mul.wide.s32 %rd11, %r13, 16;\n" -" add.u64 %rd12, %rd9, %rd11;\n" -" ld.global.v4.f32 {%f58,%f59,%f60,%f61}, [%rd12+0];\n" -" .loc 17 374 0\n" -" cvt.s32.s64 %r16, %rd6;\n" -" sub.s32 %r17, %r2, 1;\n" -" and.b32 %r18, %r17, %r3;\n" -" add.u64 %rd13, %rd7, %rd8;\n" -" mul.lo.s32 %r19, %r16, %r18;\n" -" cvt.s64.s32 %rd14, %r19;\n" -" mul.wide.s32 %rd15, %r19, 4;\n" -" add.u64 %rd16, %rd13, %rd15;\n" -" mov.s64 %rd17, %rd16;\n" -" mul.lo.s32 %r20, %r16, %r15;\n" -" cvt.s64.s32 %rd18, %r20;\n" -" mul.wide.s32 %rd19, %r20, 4;\n" -" add.u64 %rd20, %rd13, %rd19;\n" -" setp.ge.u64 %p2, %rd16, %rd20;\n" -" @%p2 bra $Lt_1_75010;\n" -" ld.param.s32 %r21, [__cudaparm_kernel_sphere_ellipsoid_vflag];\n" -" mov.s32 %r22, 0;\n" -" setp.gt.s32 %p3, %r21, %r22;\n" -" cvt.rzi.ftz.s32.f32 %r23, %f61;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_sphere_ellipsoid_sig_eps];\n" -" ld.param.s32 %r24, [__cudaparm_kernel_sphere_ellipsoid_ntypes];\n" -" ld.param.u64 %rd22, [__cudaparm_kernel_sphere_ellipsoid_well];\n" -" ld.param.u64 %rd23, [__cudaparm_kernel_sphere_ellipsoid_q];\n" -" ld.param.u64 %rd24, [__cudaparm_kernel_sphere_ellipsoid_shape];\n" -" mov.f32 %f62, 0f00000000; \n" -" mov.f32 %f63, 0f00000000; \n" -" mov.f32 %f64, 0f00000000; \n" -" mov.f32 %f65, 0f00000000; \n" -" mov.u64 %rd25, __cuda___cuda_local_var_33201_33_non_const_sp_lj3836;\n" -"$Lt_1_51714:\n" -" .loc 17 378 0\n" -" ld.global.s32 %r25, [%rd17+0];\n" -" .loc 17 382 0\n" -" and.b32 %r26, %r25, 1073741823;\n" -" cvt.s64.s32 %rd26, %r26;\n" -" mul.wide.s32 %rd27, %r26, 16;\n" -" add.u64 %rd28, %rd27, %rd9;\n" -" ld.global.v4.f32 {%f66,%f67,%f68,%f69}, [%rd28+0];\n" -" .loc 17 389 0\n" -" cvt.rzi.ftz.s32.f32 %r27, %f69;\n" -" cvt.s64.s32 %rd29, %r27;\n" -" mul.wide.s32 %rd30, %r27, 16;\n" -" add.u64 %rd31, %rd30, %rd24;\n" -" ld.global.v4.f32 {%f70,%f71,%f72,_}, [%rd31+0];\n" -" .loc 17 390 0\n" -" add.u64 %rd32, %rd27, %rd23;\n" -" ld.global.v4.f32 {%f73,%f74,%f75,%f76}, [%rd32+0];\n" -" .loc 17 391 0\n" -" add.u64 %rd33, %rd30, %rd22;\n" -" ld.global.v4.f32 {%f77,%f78,%f79,_}, [%rd33+0];\n" -" .loc 17 401 0\n" -" sub.ftz.f32 %f80, %f67, %f59;\n" -" sub.ftz.f32 %f81, %f66, %f58;\n" -" sub.ftz.f32 %f82, %f68, %f60;\n" -" mul.ftz.f32 %f83, %f80, %f80;\n" -" fma.rn.ftz.f32 %f84, %f81, %f81, %f83;\n" -" fma.rn.ftz.f32 %f85, %f82, %f82, %f84;\n" -" rsqrt.approx.ftz.f32 %f86, %f85;\n" -" mul.ftz.f32 %f87, %f81, %f86;\n" -" .loc 17 402 0\n" -" mul.ftz.f32 %f88, %f80, %f86;\n" -" .loc 17 407 0\n" -" mul.lo.s32 %r28, %r27, %r24;\n" -" add.s32 %r29, %r23, %r28;\n" -" cvt.s64.s32 %rd34, %r29;\n" -" mul.wide.s32 %rd35, %r29, 8;\n" -" add.u64 %rd36, %rd21, %rd35;\n" -" ld.global.v2.f32 {%f89,%f90}, [%rd36+0];\n" -" .loc 17 408 0\n" -" shr.s32 %r30, %r25, 30;\n" -" and.b32 %r31, %r30, 3;\n" -" cvt.s64.s32 %rd37, %r31;\n" -" mul.wide.s32 %rd38, %r31, 4;\n" -" add.u64 %rd39, %rd25, %rd38;\n" -" ld.shared.f32 %f91, [%rd39+0];\n" -" mul.ftz.f32 %f92, %f91, %f90;\n" -" .loc 16 299 0\n" -" mov.f32 %f93, %f87;\n" -" .loc 16 300 0\n" -" mov.f32 %f94, 0f3f000000; \n" -" mul.ftz.f32 %f95, %f89, %f94;\n" -" add.ftz.f32 %f96, %f74, %f74;\n" -" add.ftz.f32 %f97, %f76, %f76;\n" -" mul.ftz.f32 %f98, %f73, %f73;\n" -" mul.ftz.f32 %f99, %f74, %f74;\n" -" mul.ftz.f32 %f100, %f75, %f75;\n" -" mul.ftz.f32 %f101, %f76, %f76;\n" -" add.ftz.f32 %f102, %f75, %f75;\n" -" add.ftz.f32 %f103, %f95, %f71;\n" -" add.ftz.f32 %f104, %f95, %f70;\n" -" add.ftz.f32 %f105, %f95, %f72;\n" -" mul.ftz.f32 %f106, %f96, %f75;\n" -" mul.ftz.f32 %f107, %f96, %f76;\n" -" mul.ftz.f32 %f108, %f97, %f73;\n" -" add.ftz.f32 %f109, %f98, %f99;\n" -" mul.ftz.f32 %f110, %f102, %f73;\n" -" mul.ftz.f32 %f111, %f103, %f103;\n" -" mul.ftz.f32 %f112, %f104, %f104;\n" -" mul.ftz.f32 %f113, %f105, %f105;\n" -" sub.ftz.f32 %f114, %f106, %f108;\n" -" sub.ftz.f32 %f115, %f109, %f100;\n" -" add.ftz.f32 %f116, %f107, %f110;\n" -" mov.f32 %f117, 0f3f000000; \n" -" mul.ftz.f32 %f118, %f111, %f117;\n" -" mov.f32 %f119, 0f3f000000; \n" -" mul.ftz.f32 %f120, %f112, %f119;\n" -" mov.f32 %f121, 0f3f000000; \n" -" mul.ftz.f32 %f122, %f113, %f121;\n" -" sub.ftz.f32 %f123, %f115, %f101;\n" -" mul.ftz.f32 %f124, %f114, %f118;\n" -" mul.ftz.f32 %f125, %f116, %f122;\n" -" mul.ftz.f32 %f126, %f120, %f123;\n" -" mul.ftz.f32 %f127, %f114, %f124;\n" -" fma.rn.ftz.f32 %f128, %f123, %f126, %f127;\n" -" fma.rn.ftz.f32 %f129, %f125, %f116, %f128;\n" -" mov.f32 %f130, %f129;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f131, %f96, %f73;\n" -" sub.ftz.f32 %f132, %f98, %f99;\n" -" mul.ftz.f32 %f133, %f102, %f76;\n" -" add.ftz.f32 %f134, %f106, %f108;\n" -" add.ftz.f32 %f135, %f100, %f132;\n" -" sub.ftz.f32 %f136, %f133, %f131;\n" -" sub.ftz.f32 %f137, %f135, %f101;\n" -" mul.ftz.f32 %f138, %f137, %f124;\n" -" fma.rn.ftz.f32 %f139, %f126, %f134, %f138;\n" -" fma.rn.ftz.f32 %f140, %f125, %f136, %f139;\n" -" mov.f32 %f141, %f140;\n" -" .loc 16 302 0\n" -" sub.ftz.f32 %f142, %f132, %f100;\n" -" sub.ftz.f32 %f143, %f107, %f110;\n" -" add.ftz.f32 %f144, %f131, %f133;\n" -" add.ftz.f32 %f145, %f101, %f142;\n" -" mul.ftz.f32 %f146, %f144, %f124;\n" -" fma.rn.ftz.f32 %f147, %f126, %f143, %f146;\n" -" fma.rn.ftz.f32 %f148, %f125, %f145, %f147;\n" -" mov.f32 %f149, %f148;\n" -" .loc 16 303 0\n" -" mov.f32 %f150, %f88;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f151, %f134, %f120;\n" -" mul.ftz.f32 %f152, %f136, %f122;\n" -" mul.ftz.f32 %f153, %f118, %f137;\n" -" mul.ftz.f32 %f154, %f114, %f153;\n" -" fma.rn.ftz.f32 %f155, %f123, %f151, %f154;\n" -" fma.rn.ftz.f32 %f156, %f152, %f116, %f155;\n" -" mov.f32 %f157, %f156;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f158, %f137, %f153;\n" -" fma.rn.ftz.f32 %f159, %f134, %f151, %f158;\n" -" fma.rn.ftz.f32 %f160, %f152, %f136, %f159;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f161, %f144, %f153;\n" -" fma.rn.ftz.f32 %f162, %f143, %f151, %f161;\n" -" fma.rn.ftz.f32 %f163, %f152, %f145, %f162;\n" -" .loc 16 307 0\n" -" mul.ftz.f32 %f164, %f82, %f86;\n" -" mov.f32 %f165, %f164;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f166, %f144, %f118;\n" -" mul.ftz.f32 %f167, %f143, %f120;\n" -" mul.ftz.f32 %f168, %f122, %f145;\n" -" mul.ftz.f32 %f169, %f114, %f166;\n" -" fma.rn.ftz.f32 %f170, %f123, %f167, %f169;\n" -" fma.rn.ftz.f32 %f171, %f116, %f168, %f170;\n" -" mov.f32 %f172, %f171;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f173, %f137, %f166;\n" -" fma.rn.ftz.f32 %f174, %f134, %f167, %f173;\n" -" fma.rn.ftz.f32 %f175, %f136, %f168, %f174;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f176, %f144, %f166;\n" -" fma.rn.ftz.f32 %f177, %f143, %f167, %f176;\n" -" fma.rn.ftz.f32 %f178, %f145, %f168, %f177;\n" -" abs.ftz.f32 %f179, %f156;\n" -" abs.ftz.f32 %f180, %f129;\n" -" setp.gt.ftz.f32 %p4, %f179, %f180;\n" -" @!%p4 bra $Lt_1_51970;\n" -" .loc 16 314 0\n" -" mov.f32 %f130, %f156;\n" -" mov.f32 %f157, %f129;\n" -" .loc 16 315 0\n" -" mov.f32 %f141, %f160;\n" -" mov.f32 %f160, %f140;\n" -" .loc 16 316 0\n" -" mov.f32 %f149, %f163;\n" -" mov.f32 %f163, %f148;\n" -" .loc 16 317 0\n" -" mov.f32 %f93, %f88;\n" -" mov.f32 %f150, %f87;\n" -"$Lt_1_51970:\n" -" mov.f32 %f181, %f130;\n" -" abs.ftz.f32 %f182, %f181;\n" -" abs.ftz.f32 %f183, %f171;\n" -" setp.lt.ftz.f32 %p5, %f182, %f183;\n" -" @!%p5 bra $Lt_1_52482;\n" -" .loc 16 321 0\n" -" mov.f32 %f130, %f171;\n" -" mov.f32 %f172, %f181;\n" -" .loc 16 322 0\n" -" mov.f32 %f184, %f141;\n" -" mov.f32 %f141, %f175;\n" -" mov.f32 %f175, %f184;\n" -" .loc 16 323 0\n" -" mov.f32 %f185, %f149;\n" -" mov.f32 %f149, %f178;\n" -" mov.f32 %f178, %f185;\n" -" .loc 16 324 0\n" -" mov.f32 %f186, %f93;\n" -" mov.f32 %f93, %f164;\n" -" mov.f32 %f165, %f186;\n" -"$Lt_1_52482:\n" -" mov.f32 %f187, %f130;\n" -" mov.f32 %f188, 0f00000000; \n" -" setp.neu.ftz.f32 %p6, %f187, %f188;\n" -" @!%p6 bra $Lt_1_53250;\n" -" bra.uni $Lt_1_54018;\n" -"$Lt_1_53250:\n" -" mov.f32 %f189, 0f00000000; \n" -" setp.neu.ftz.f32 %p7, %f157, %f189;\n" -" @!%p7 bra $Lt_1_53762;\n" -" .loc 16 338 0\n" -" mov.f32 %f130, %f157;\n" -" mov.f32 %f157, %f187;\n" -" .loc 16 339 0\n" -" mov.f32 %f190, %f141;\n" -" mov.f32 %f141, %f160;\n" -" mov.f32 %f160, %f190;\n" -" .loc 16 340 0\n" -" mov.f32 %f191, %f149;\n" -" mov.f32 %f149, %f163;\n" -" mov.f32 %f163, %f191;\n" -" .loc 16 341 0\n" -" mov.f32 %f192, %f93;\n" -" mov.f32 %f93, %f150;\n" -" mov.f32 %f150, %f192;\n" -" bra.uni $Lt_1_54018;\n" -"$Lt_1_53762:\n" -" mov.f32 %f193, 0f00000000; \n" -" setp.neu.ftz.f32 %p8, %f172, %f193;\n" -" @!%p8 bra $Lt_1_54274;\n" -" .loc 16 346 0\n" -" mov.f32 %f130, %f172;\n" -" mov.f32 %f172, %f187;\n" -" .loc 16 347 0\n" -" mov.f32 %f194, %f141;\n" -" mov.f32 %f141, %f175;\n" -" mov.f32 %f175, %f194;\n" -" .loc 16 348 0\n" -" mov.f32 %f195, %f149;\n" -" mov.f32 %f149, %f178;\n" -" mov.f32 %f178, %f195;\n" -" .loc 16 349 0\n" -" mov.f32 %f196, %f93;\n" -" mov.f32 %f93, %f165;\n" -" mov.f32 %f165, %f196;\n" -" bra.uni $Lt_1_54018;\n" -"$Lt_1_54274:\n" -" .loc 16 352 0\n" -" mov.s32 %r32, 2;\n" -" ld.param.u64 %rd40, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd40+0], %r32;\n" -"$Lt_1_54018:\n" -"$Lt_1_53506:\n" -"$Lt_1_52994:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f197, %f157, %f130;\n" -" mul.ftz.f32 %f198, %f141, %f197;\n" -" sub.ftz.f32 %f199, %f160, %f198;\n" -" mov.f32 %f160, %f199;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f200, %f149, %f197;\n" -" sub.ftz.f32 %f201, %f163, %f200;\n" -" mov.f32 %f163, %f201;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f202, %f93, %f197;\n" -" sub.ftz.f32 %f203, %f150, %f202;\n" -" mov.f32 %f150, %f203;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f204, %f172, %f130;\n" -" mul.ftz.f32 %f205, %f141, %f204;\n" -" sub.ftz.f32 %f175, %f175, %f205;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f206, %f149, %f204;\n" -" sub.ftz.f32 %f178, %f178, %f206;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f207, %f93, %f204;\n" -" sub.ftz.f32 %f165, %f165, %f207;\n" -" abs.ftz.f32 %f208, %f199;\n" -" abs.ftz.f32 %f209, %f175;\n" -" setp.lt.ftz.f32 %p9, %f208, %f209;\n" -" @!%p9 bra $Lt_1_54530;\n" -" .loc 16 366 0\n" -" mov.f32 %f160, %f175;\n" -" mov.f32 %f175, %f199;\n" -" .loc 16 367 0\n" -" mov.f32 %f163, %f178;\n" -" mov.f32 %f178, %f201;\n" -" .loc 16 368 0\n" -" mov.f32 %f150, %f165;\n" -" mov.f32 %f165, %f203;\n" -"$Lt_1_54530:\n" -" mov.f32 %f210, %f160;\n" -" mov.f32 %f211, 0f00000000; \n" -" setp.neu.ftz.f32 %p10, %f210, %f211;\n" -" @!%p10 bra $Lt_1_55298;\n" -" bra.uni $Lt_1_55554;\n" -"$Lt_1_55298:\n" -" mov.f32 %f212, 0f00000000; \n" -" setp.neu.ftz.f32 %p11, %f175, %f212;\n" -" @!%p11 bra $Lt_1_55554;\n" -" .loc 16 383 0\n" -" mov.f32 %f160, %f175;\n" -" mov.f32 %f175, %f210;\n" -" .loc 16 384 0\n" -" mov.f32 %f213, %f163;\n" -" mov.f32 %f163, %f178;\n" -" mov.f32 %f178, %f213;\n" -" .loc 16 385 0\n" -" mov.f32 %f214, %f150;\n" -" mov.f32 %f150, %f165;\n" -" mov.f32 %f165, %f214;\n" -"$Lt_1_55554:\n" -"$Lt_1_55042:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f215, %f175, %f160;\n" -" mul.ftz.f32 %f216, %f163, %f215;\n" -" sub.ftz.f32 %f178, %f178, %f216;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f217, %f150, %f215;\n" -" sub.ftz.f32 %f165, %f165, %f217;\n" -" mov.f32 %f218, 0f00000000; \n" -" setp.eq.ftz.f32 %p12, %f178, %f218;\n" -" @!%p12 bra $Lt_1_56066;\n" -" .loc 16 394 0\n" -" mov.s32 %r33, 2;\n" -" ld.param.u64 %rd41, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd41+0], %r33;\n" -"$Lt_1_56066:\n" -" .loc 16 396 0\n" -" div.approx.ftz.f32 %f219, %f165, %f178;\n" -" .loc 16 399 0\n" -" mul.ftz.f32 %f220, %f219, %f163;\n" -" sub.ftz.f32 %f221, %f150, %f220;\n" -" div.approx.ftz.f32 %f222, %f221, %f160;\n" -" .loc 16 403 0\n" -" mul.ftz.f32 %f223, %f222, %f141;\n" -" fma.rn.ftz.f32 %f224, %f149, %f219, %f223;\n" -" sub.ftz.f32 %f225, %f93, %f224;\n" -" div.approx.ftz.f32 %f226, %f225, %f130;\n" -" .loc 17 427 0\n" -" mul.ftz.f32 %f227, %f222, %f88;\n" -" fma.rn.ftz.f32 %f228, %f87, %f226, %f227;\n" -" fma.rn.ftz.f32 %f229, %f164, %f219, %f228;\n" -" mov.f32 %f230, 0f3f000000; \n" -" mul.ftz.f32 %f231, %f229, %f230;\n" -" rsqrt.approx.ftz.f32 %f232, %f231;\n" -" .loc 16 299 0\n" -" mov.f32 %f93, %f87;\n" -" .loc 16 300 0\n" -" mul.ftz.f32 %f233, %f114, %f78;\n" -" mul.ftz.f32 %f234, %f116, %f79;\n" -" mul.ftz.f32 %f235, %f114, %f233;\n" -" mul.ftz.f32 %f236, %f123, %f77;\n" -" fma.rn.ftz.f32 %f237, %f123, %f236, %f235;\n" -" fma.rn.ftz.f32 %f238, %f234, %f116, %f237;\n" -" mov.f32 %f239, 0f3f800000; \n" -" add.ftz.f32 %f240, %f238, %f239;\n" -" mov.f32 %f130, %f240;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f241, %f233, %f137;\n" -" fma.rn.ftz.f32 %f242, %f236, %f134, %f241;\n" -" fma.rn.ftz.f32 %f243, %f234, %f136, %f242;\n" -" mov.f32 %f141, %f243;\n" -" .loc 16 302 0\n" -" mul.ftz.f32 %f244, %f144, %f233;\n" -" fma.rn.ftz.f32 %f245, %f236, %f143, %f244;\n" -" fma.rn.ftz.f32 %f246, %f234, %f145, %f245;\n" -" mov.f32 %f149, %f246;\n" -" .loc 16 303 0\n" -" mov.f32 %f150, %f88;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f247, %f134, %f77;\n" -" mul.ftz.f32 %f248, %f136, %f79;\n" -" mul.ftz.f32 %f249, %f137, %f78;\n" -" mul.ftz.f32 %f250, %f114, %f249;\n" -" fma.rn.ftz.f32 %f251, %f123, %f247, %f250;\n" -" fma.rn.ftz.f32 %f252, %f248, %f116, %f251;\n" -" mov.f32 %f157, %f252;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f253, %f137, %f249;\n" -" fma.rn.ftz.f32 %f254, %f134, %f247, %f253;\n" -" fma.rn.ftz.f32 %f255, %f248, %f136, %f254;\n" -" mov.f32 %f256, 0f3f800000; \n" -" add.ftz.f32 %f160, %f255, %f256;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f257, %f144, %f249;\n" -" fma.rn.ftz.f32 %f258, %f143, %f247, %f257;\n" -" fma.rn.ftz.f32 %f163, %f248, %f145, %f258;\n" -" .loc 16 307 0\n" -" mov.f32 %f165, %f164;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f259, %f143, %f77;\n" -" mul.ftz.f32 %f260, %f144, %f78;\n" -" mul.ftz.f32 %f261, %f145, %f79;\n" -" mul.ftz.f32 %f262, %f114, %f260;\n" -" fma.rn.ftz.f32 %f263, %f123, %f259, %f262;\n" -" fma.rn.ftz.f32 %f264, %f116, %f261, %f263;\n" -" mov.f32 %f172, %f264;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f265, %f137, %f260;\n" -" fma.rn.ftz.f32 %f266, %f134, %f259, %f265;\n" -" fma.rn.ftz.f32 %f175, %f136, %f261, %f266;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f267, %f144, %f260;\n" -" fma.rn.ftz.f32 %f268, %f143, %f259, %f267;\n" -" fma.rn.ftz.f32 %f269, %f145, %f261, %f268;\n" -" mov.f32 %f270, 0f3f800000; \n" -" add.ftz.f32 %f178, %f269, %f270;\n" -" abs.ftz.f32 %f271, %f252;\n" -" abs.ftz.f32 %f272, %f240;\n" -" setp.gt.ftz.f32 %p13, %f271, %f272;\n" -" @!%p13 bra $Lt_1_56578;\n" -" .loc 16 314 0\n" -" mov.f32 %f130, %f252;\n" -" mov.f32 %f157, %f240;\n" -" .loc 16 315 0\n" -" mov.f32 %f141, %f160;\n" -" mov.f32 %f160, %f243;\n" -" .loc 16 316 0\n" -" mov.f32 %f149, %f163;\n" -" mov.f32 %f163, %f246;\n" -" .loc 16 317 0\n" -" mov.f32 %f93, %f88;\n" -" mov.f32 %f150, %f87;\n" -"$Lt_1_56578:\n" -" mov.f32 %f273, %f130;\n" -" abs.ftz.f32 %f274, %f273;\n" -" abs.ftz.f32 %f275, %f264;\n" -" setp.lt.ftz.f32 %p14, %f274, %f275;\n" -" @!%p14 bra $Lt_1_57090;\n" -" .loc 16 321 0\n" -" mov.f32 %f130, %f264;\n" -" mov.f32 %f172, %f273;\n" -" .loc 16 322 0\n" -" mov.f32 %f276, %f141;\n" -" mov.f32 %f141, %f175;\n" -" mov.f32 %f175, %f276;\n" -" .loc 16 323 0\n" -" mov.f32 %f277, %f149;\n" -" mov.f32 %f149, %f178;\n" -" mov.f32 %f178, %f277;\n" -" .loc 16 324 0\n" -" mov.f32 %f278, %f93;\n" -" mov.f32 %f93, %f164;\n" -" mov.f32 %f165, %f278;\n" -"$Lt_1_57090:\n" -" mov.f32 %f279, %f130;\n" -" mov.f32 %f280, 0f00000000; \n" -" setp.neu.ftz.f32 %p15, %f279, %f280;\n" -" @!%p15 bra $Lt_1_57858;\n" -" bra.uni $Lt_1_58626;\n" -"$Lt_1_57858:\n" -" mov.f32 %f281, 0f00000000; \n" -" setp.neu.ftz.f32 %p16, %f157, %f281;\n" -" @!%p16 bra $Lt_1_58370;\n" -" .loc 16 338 0\n" -" mov.f32 %f130, %f157;\n" -" mov.f32 %f157, %f279;\n" -" .loc 16 339 0\n" -" mov.f32 %f282, %f141;\n" -" mov.f32 %f141, %f160;\n" -" mov.f32 %f160, %f282;\n" -" .loc 16 340 0\n" -" mov.f32 %f283, %f149;\n" -" mov.f32 %f149, %f163;\n" -" mov.f32 %f163, %f283;\n" -" .loc 16 341 0\n" -" mov.f32 %f284, %f93;\n" -" mov.f32 %f93, %f150;\n" -" mov.f32 %f150, %f284;\n" -" bra.uni $Lt_1_58626;\n" -"$Lt_1_58370:\n" -" mov.f32 %f285, 0f00000000; \n" -" setp.neu.ftz.f32 %p17, %f172, %f285;\n" -" @!%p17 bra $Lt_1_58882;\n" -" .loc 16 346 0\n" -" mov.f32 %f130, %f172;\n" -" mov.f32 %f172, %f279;\n" -" .loc 16 347 0\n" -" mov.f32 %f286, %f141;\n" -" mov.f32 %f141, %f175;\n" -" mov.f32 %f175, %f286;\n" -" .loc 16 348 0\n" -" mov.f32 %f287, %f149;\n" -" mov.f32 %f149, %f178;\n" -" mov.f32 %f178, %f287;\n" -" .loc 16 349 0\n" -" mov.f32 %f288, %f93;\n" -" mov.f32 %f93, %f165;\n" -" mov.f32 %f165, %f288;\n" -" bra.uni $Lt_1_58626;\n" -"$Lt_1_58882:\n" -" .loc 16 352 0\n" -" mov.s32 %r34, 2;\n" -" ld.param.u64 %rd42, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd42+0], %r34;\n" -"$Lt_1_58626:\n" -"$Lt_1_58114:\n" -"$Lt_1_57602:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f289, %f157, %f130;\n" -" mul.ftz.f32 %f290, %f141, %f289;\n" -" sub.ftz.f32 %f291, %f160, %f290;\n" -" mov.f32 %f160, %f291;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f292, %f149, %f289;\n" -" sub.ftz.f32 %f293, %f163, %f292;\n" -" mov.f32 %f163, %f293;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f294, %f93, %f289;\n" -" sub.ftz.f32 %f295, %f150, %f294;\n" -" mov.f32 %f150, %f295;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f296, %f172, %f130;\n" -" mul.ftz.f32 %f297, %f141, %f296;\n" -" sub.ftz.f32 %f175, %f175, %f297;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f298, %f149, %f296;\n" -" sub.ftz.f32 %f178, %f178, %f298;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f299, %f93, %f296;\n" -" sub.ftz.f32 %f165, %f165, %f299;\n" -" abs.ftz.f32 %f300, %f291;\n" -" abs.ftz.f32 %f301, %f175;\n" -" setp.lt.ftz.f32 %p18, %f300, %f301;\n" -" @!%p18 bra $Lt_1_59138;\n" -" .loc 16 366 0\n" -" mov.f32 %f160, %f175;\n" -" mov.f32 %f175, %f291;\n" -" .loc 16 367 0\n" -" mov.f32 %f163, %f178;\n" -" mov.f32 %f178, %f293;\n" -" .loc 16 368 0\n" -" mov.f32 %f150, %f165;\n" -" mov.f32 %f165, %f295;\n" -"$Lt_1_59138:\n" -" mov.f32 %f302, %f160;\n" -" mov.f32 %f303, 0f00000000; \n" -" setp.neu.ftz.f32 %p19, %f302, %f303;\n" -" @!%p19 bra $Lt_1_59906;\n" -" bra.uni $Lt_1_60162;\n" -"$Lt_1_59906:\n" -" mov.f32 %f304, 0f00000000; \n" -" setp.neu.ftz.f32 %p20, %f175, %f304;\n" -" @!%p20 bra $Lt_1_60162;\n" -" .loc 16 383 0\n" -" mov.f32 %f160, %f175;\n" -" mov.f32 %f175, %f302;\n" -" .loc 16 384 0\n" -" mov.f32 %f305, %f163;\n" -" mov.f32 %f163, %f178;\n" -" mov.f32 %f178, %f305;\n" -" .loc 16 385 0\n" -" mov.f32 %f306, %f150;\n" -" mov.f32 %f150, %f165;\n" -" mov.f32 %f165, %f306;\n" -"$Lt_1_60162:\n" -"$Lt_1_59650:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f307, %f175, %f160;\n" -" mul.ftz.f32 %f308, %f163, %f307;\n" -" sub.ftz.f32 %f178, %f178, %f308;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f309, %f150, %f307;\n" -" sub.ftz.f32 %f165, %f165, %f309;\n" -" mov.f32 %f310, 0f00000000; \n" -" setp.eq.ftz.f32 %p21, %f178, %f310;\n" -" @!%p21 bra $Lt_1_60674;\n" -" .loc 16 394 0\n" -" mov.s32 %r35, 2;\n" -" ld.param.u64 %rd43, [__cudaparm_kernel_sphere_ellipsoid_err_flag];\n" -" st.global.s32 [%rd43+0], %r35;\n" -"$Lt_1_60674:\n" -" .loc 17 436 0\n" -" div.approx.ftz.f32 %f311, %f165, %f178;\n" -" mul.ftz.f32 %f312, %f311, %f163;\n" -" sub.ftz.f32 %f313, %f150, %f312;\n" -" div.approx.ftz.f32 %f314, %f313, %f160;\n" -" mul.ftz.f32 %f315, %f314, %f141;\n" -" fma.rn.ftz.f32 %f316, %f149, %f311, %f315;\n" -" mul.ftz.f32 %f317, %f314, %f88;\n" -" sub.ftz.f32 %f318, %f93, %f316;\n" -" div.approx.ftz.f32 %f319, %f318, %f130;\n" -" fma.rn.ftz.f32 %f320, %f87, %f319, %f317;\n" -" fma.rn.ftz.f32 %f321, %f164, %f311, %f320;\n" -" add.ftz.f32 %f322, %f321, %f321;\n" -" .loc 17 444 0\n" -" rcp.approx.ftz.f32 %f323, %f86;\n" -" sub.ftz.f32 %f324, %f323, %f232;\n" -" mov.f32 %f325, 0f40000000; \n" -" div.approx.ftz.f32 %f326, %f324, %f325;\n" -" mul.ftz.f32 %f327, %f324, %f324;\n" -" mul.ftz.f32 %f328, %f324, %f327;\n" -" add.ftz.f32 %f329, %f326, %f72;\n" -" add.ftz.f32 %f330, %f326, %f70;\n" -" add.ftz.f32 %f331, %f326, %f71;\n" -" mul.ftz.f32 %f332, %f330, %f331;\n" -" mul.ftz.f32 %f333, %f329, %f332;\n" -" mul.ftz.f32 %f334, %f328, %f333;\n" -" .loc 17 446 0\n" -" mul.ftz.f32 %f335, %f70, %f71;\n" -" mul.ftz.f32 %f336, %f335, %f72;\n" -" div.approx.ftz.f32 %f337, %f89, %f324;\n" -" mul.ftz.f32 %f338, %f337, %f322;\n" -" mov.f32 %f339, 0f3f800000; \n" -" mov.f32 %f340, 0f40400000; \n" -" fma.rn.ftz.f32 %f341, %f340, %f338, %f339;\n" -" mul.ftz.f32 %f342, %f336, %f341;\n" -" .loc 17 450 0\n" -" div.approx.ftz.f32 %f343, %f324, %f17;\n" -" add.ftz.f32 %f344, %f343, %f72;\n" -" add.ftz.f32 %f345, %f343, %f70;\n" -" add.ftz.f32 %f346, %f343, %f71;\n" -" mul.ftz.f32 %f347, %f345, %f346;\n" -" mul.ftz.f32 %f348, %f344, %f347;\n" -" mul.ftz.f32 %f349, %f328, %f348;\n" -" .loc 17 452 0\n" -" mov.f32 %f350, 0f3f800000; \n" -" mov.f32 %f351, 0f3f4db6db; \n" -" fma.rn.ftz.f32 %f352, %f351, %f338, %f350;\n" -" mul.ftz.f32 %f353, %f336, %f352;\n" -" .loc 17 454 0\n" -" mul.ftz.f32 %f354, %f337, %f337;\n" -" mul.ftz.f32 %f355, %f337, %f354;\n" -" mul.ftz.f32 %f356, %f355, %f355;\n" -" .loc 17 457 0\n" -" mul.ftz.f32 %f357, %f89, %f89;\n" -" mov.f32 %f358, 0f41000000; \n" -" div.approx.ftz.f32 %f359, %f334, %f358;\n" -" mov.f32 %f360, 0f42700000; \n" -" div.approx.ftz.f32 %f361, %f349, %f360;\n" -" mul.ftz.f32 %f362, %f357, %f89;\n" -" div.approx.ftz.f32 %f363, %f342, %f359;\n" -" div.approx.ftz.f32 %f364, %f353, %f361;\n" -" mul.ftz.f32 %f365, %f363, %f92;\n" -" mul.ftz.f32 %f366, %f364, %f92;\n" -" mul.ftz.f32 %f367, %f362, %f365;\n" -" mul.ftz.f32 %f368, %f362, %f366;\n" -" mul.ftz.f32 %f369, %f367, %f41;\n" -" mul.ftz.f32 %f370, %f368, %f356;\n" -" mul.ftz.f32 %f371, %f370, %f45;\n" -" add.ftz.f32 %f372, %f369, %f371;\n" -" add.ftz.f32 %f65, %f65, %f372;\n" -" .loc 17 464 0\n" -" mov.f32 %f373, 0f40800000; \n" -" mul.ftz.f32 %f374, %f319, %f373;\n" -" .loc 17 471 0\n" -" mov.f32 %f375, 0f40400000; \n" -" div.approx.ftz.f32 %f376, %f375, %f324;\n" -" add.ftz.f32 %f377, %f70, %f70;\n" -" add.ftz.f32 %f378, %f324, %f377;\n" -" rcp.approx.ftz.f32 %f379, %f378;\n" -" add.ftz.f32 %f380, %f71, %f71;\n" -" add.ftz.f32 %f381, %f324, %f380;\n" -" rcp.approx.ftz.f32 %f382, %f381;\n" -" add.ftz.f32 %f383, %f379, %f382;\n" -" add.ftz.f32 %f384, %f72, %f72;\n" -" add.ftz.f32 %f385, %f324, %f384;\n" -" rcp.approx.ftz.f32 %f386, %f385;\n" -" add.ftz.f32 %f387, %f383, %f386;\n" -" add.ftz.f32 %f388, %f376, %f387;\n" -" .loc 17 476 0\n" -" mul.ftz.f32 %f389, %f89, %f322;\n" -" mov.f32 %f390, 0f40400000; \n" -" fma.rn.ftz.f32 %f391, %f390, %f389, %f324;\n" -" rcp.approx.ftz.f32 %f392, %f391;\n" -" rcp.approx.ftz.f32 %f393, %f324;\n" -" sub.ftz.f32 %f394, %f393, %f392;\n" -" add.ftz.f32 %f395, %f388, %f394;\n" -" .loc 17 479 0\n" -" fma.rn.ftz.f32 %f396, %f17, %f70, %f324;\n" -" rcp.approx.ftz.f32 %f397, %f396;\n" -" fma.rn.ftz.f32 %f398, %f17, %f71, %f324;\n" -" rcp.approx.ftz.f32 %f399, %f398;\n" -" add.ftz.f32 %f400, %f397, %f399;\n" -" fma.rn.ftz.f32 %f401, %f17, %f72, %f324;\n" -" rcp.approx.ftz.f32 %f402, %f401;\n" -" add.ftz.f32 %f403, %f400, %f402;\n" -" add.ftz.f32 %f404, %f376, %f403;\n" -" .loc 17 490 0\n" -" mul.ftz.f32 %f405, %f87, %f87;\n" -" neg.ftz.f32 %f406, %f405;\n" -" mov.f32 %f407, %f406;\n" -" .loc 17 491 0\n" -" mul.ftz.f32 %f408, %f88, %f87;\n" -" neg.ftz.f32 %f409, %f408;\n" -" mov.f32 %f410, %f409;\n" -" .loc 17 492 0\n" -" mul.ftz.f32 %f411, %f164, %f87;\n" -" neg.ftz.f32 %f412, %f411;\n" -" mov.f32 %f413, %f412;\n" -" .loc 17 493 0\n" -" mov.f32 %f414, 0f3f800000; \n" -" sub.ftz.f32 %f415, %f414, %f405;\n" -" mov.f32 %f416, %f415;\n" -" .loc 17 494 0\n" -" mul.ftz.f32 %f417, %f86, %f415;\n" -" mov.f32 %f418, %f417;\n" -" .loc 17 495 0\n" -" mov.f32 %f419, %f410;\n" -" mul.ftz.f32 %f420, %f419, %f86;\n" -" mov.f32 %f421, %f420;\n" -" .loc 17 496 0\n" -" mov.f32 %f422, %f413;\n" -" mul.ftz.f32 %f423, %f422, %f86;\n" -" mov.f32 %f424, %f423;\n" -" .loc 17 500 0\n" -" mul.ftz.f32 %f425, %f232, %f232;\n" -" mov.f32 %f426, 0f3f4db6db; \n" -" mul.ftz.f32 %f427, %f89, %f426;\n" -" mov.f32 %f428, 0f40800000; \n" -" mul.ftz.f32 %f429, %f311, %f428;\n" -" mul.ftz.f32 %f430, %f425, %f232;\n" -" mov.f32 %f431, 0f3f000000; \n" -" mul.ftz.f32 %f432, %f430, %f431;\n" -" mul.ftz.f32 %f433, %f432, %f222;\n" -" mul.ftz.f32 %f434, %f432, %f226;\n" -" mul.ftz.f32 %f435, %f432, %f219;\n" -" mov.f32 %f436, 0f40800000; \n" -" mul.ftz.f32 %f437, %f314, %f436;\n" -" mul.ftz.f32 %f438, %f433, %f420;\n" -" mul.ftz.f32 %f439, %f437, %f420;\n" -" mov.f32 %f440, 0f40e00000; \n" -" div.approx.ftz.f32 %f441, %f440, %f324;\n" -" mov.f32 %f442, 0f3f4db6db; \n" -" fma.rn.ftz.f32 %f443, %f442, %f389, %f324;\n" -" rcp.approx.ftz.f32 %f444, %f443;\n" -" fma.rn.ftz.f32 %f445, %f434, %f417, %f438;\n" -" fma.rn.ftz.f32 %f446, %f374, %f417, %f439;\n" -" sub.ftz.f32 %f447, %f441, %f444;\n" -" mul.ftz.f32 %f448, %f427, %f444;\n" -" fma.rn.ftz.f32 %f449, %f435, %f423, %f445;\n" -" fma.rn.ftz.f32 %f450, %f429, %f423, %f446;\n" -" add.ftz.f32 %f451, %f447, %f404;\n" -" add.ftz.f32 %f452, %f449, %f87;\n" -" mul.ftz.f32 %f453, %f451, %f452;\n" -" mul.ftz.f32 %f454, %f448, %f450;\n" -" sub.ftz.f32 %f455, %f454, %f453;\n" -" .loc 17 501 0\n" -" mov.f32 %f456, 0f40400000; \n" -" mul.ftz.f32 %f457, %f89, %f456;\n" -" mul.ftz.f32 %f458, %f457, %f392;\n" -" mul.ftz.f32 %f459, %f371, %f455;\n" -" mul.ftz.f32 %f460, %f452, %f395;\n" -" mul.ftz.f32 %f461, %f458, %f450;\n" -" sub.ftz.f32 %f462, %f461, %f460;\n" -" fma.rn.ftz.f32 %f463, %f369, %f462, %f459;\n" -" .loc 17 503 0\n" -" add.ftz.f32 %f64, %f463, %f64;\n" -" @!%p3 bra $Lt_1_61698;\n" -" .loc 17 505 0\n" -" mov.f32 %f464, %f47;\n" -" mul.ftz.f32 %f465, %f81, %f463;\n" -" sub.ftz.f32 %f466, %f464, %f465;\n" -" mov.f32 %f47, %f466;\n" -"$Lt_1_61698:\n" -" .loc 17 490 0\n" -" mov.f32 %f467, %f409;\n" -" .loc 17 491 0\n" -" mul.ftz.f32 %f468, %f88, %f88;\n" -" neg.ftz.f32 %f469, %f468;\n" -" mov.f32 %f470, %f469;\n" -" .loc 17 492 0\n" -" mul.ftz.f32 %f471, %f164, %f88;\n" -" neg.ftz.f32 %f472, %f471;\n" -" mov.f32 %f473, %f472;\n" -" .loc 17 493 0\n" -" mov.f32 %f474, 0f3f800000; \n" -" sub.ftz.f32 %f475, %f474, %f468;\n" -" mov.f32 %f476, %f475;\n" -" .loc 17 494 0\n" -" mov.f32 %f477, %f467;\n" -" mul.ftz.f32 %f478, %f477, %f86;\n" -" mov.f32 %f479, %f478;\n" -" .loc 17 495 0\n" -" mul.ftz.f32 %f480, %f86, %f475;\n" -" mov.f32 %f481, %f480;\n" -" .loc 17 496 0\n" -" mov.f32 %f482, %f473;\n" -" mul.ftz.f32 %f483, %f482, %f86;\n" -" mov.f32 %f484, %f483;\n" -" .loc 17 500 0\n" -" mul.ftz.f32 %f485, %f433, %f480;\n" -" mul.ftz.f32 %f486, %f437, %f480;\n" -" fma.rn.ftz.f32 %f487, %f434, %f478, %f485;\n" -" fma.rn.ftz.f32 %f488, %f374, %f478, %f486;\n" -" fma.rn.ftz.f32 %f489, %f435, %f483, %f487;\n" -" fma.rn.ftz.f32 %f490, %f429, %f483, %f488;\n" -" add.ftz.f32 %f491, %f489, %f88;\n" -" mul.ftz.f32 %f492, %f451, %f491;\n" -" mul.ftz.f32 %f493, %f448, %f490;\n" -" sub.ftz.f32 %f494, %f493, %f492;\n" -" .loc 17 501 0\n" -" mul.ftz.f32 %f495, %f371, %f494;\n" -" mul.ftz.f32 %f496, %f491, %f395;\n" -" mul.ftz.f32 %f497, %f458, %f490;\n" -" sub.ftz.f32 %f498, %f497, %f496;\n" -" fma.rn.ftz.f32 %f463, %f369, %f498, %f495;\n" -" .loc 17 507 0\n" -" add.ftz.f32 %f63, %f463, %f63;\n" -" @!%p3 bra $Lt_1_65282;\n" -" .loc 17 509 0\n" -" mov.f32 %f499, %f49;\n" -" mul.ftz.f32 %f500, %f80, %f463;\n" -" sub.ftz.f32 %f501, %f499, %f500;\n" -" mov.f32 %f49, %f501;\n" -" .loc 17 510 0\n" -" mov.f32 %f502, %f53;\n" -" mul.ftz.f32 %f503, %f81, %f463;\n" -" sub.ftz.f32 %f504, %f502, %f503;\n" -" mov.f32 %f53, %f504;\n" -"$Lt_1_65282:\n" -" .loc 17 490 0\n" -" mov.f32 %f505, %f412;\n" -" .loc 17 491 0\n" -" mov.f32 %f506, %f472;\n" -" .loc 17 492 0\n" -" mul.ftz.f32 %f507, %f164, %f164;\n" -" neg.ftz.f32 %f508, %f507;\n" -" mov.f32 %f509, %f508;\n" -" .loc 17 493 0\n" -" mov.f32 %f510, 0f3f800000; \n" -" sub.ftz.f32 %f511, %f510, %f507;\n" -" mov.f32 %f512, %f511;\n" -" .loc 17 494 0\n" -" mov.f32 %f513, %f505;\n" -" mul.ftz.f32 %f514, %f513, %f86;\n" -" mov.f32 %f515, %f514;\n" -" .loc 17 495 0\n" -" mov.f32 %f516, %f506;\n" -" mul.ftz.f32 %f517, %f516, %f86;\n" -" mov.f32 %f518, %f517;\n" -" .loc 17 496 0\n" -" mul.ftz.f32 %f519, %f86, %f511;\n" -" mov.f32 %f520, %f519;\n" -" .loc 17 500 0\n" -" mul.ftz.f32 %f521, %f433, %f517;\n" -" mul.ftz.f32 %f522, %f437, %f517;\n" -" fma.rn.ftz.f32 %f523, %f434, %f514, %f521;\n" -" fma.rn.ftz.f32 %f524, %f374, %f514, %f522;\n" -" fma.rn.ftz.f32 %f525, %f435, %f519, %f523;\n" -" fma.rn.ftz.f32 %f526, %f429, %f519, %f524;\n" -" add.ftz.f32 %f527, %f525, %f164;\n" -" mul.ftz.f32 %f528, %f527, %f451;\n" -" mul.ftz.f32 %f529, %f448, %f526;\n" -" sub.ftz.f32 %f530, %f529, %f528;\n" -" .loc 17 501 0\n" -" mul.ftz.f32 %f531, %f371, %f530;\n" -" mul.ftz.f32 %f532, %f527, %f395;\n" -" mul.ftz.f32 %f533, %f458, %f526;\n" -" sub.ftz.f32 %f534, %f533, %f532;\n" -" fma.rn.ftz.f32 %f463, %f369, %f534, %f531;\n" -" .loc 17 513 0\n" -" add.ftz.f32 %f62, %f463, %f62;\n" -" @!%p3 bra $Lt_1_68354;\n" -" .loc 17 515 0\n" -" mov.f32 %f535, %f51;\n" -" mul.ftz.f32 %f536, %f82, %f463;\n" -" sub.ftz.f32 %f537, %f535, %f536;\n" -" mov.f32 %f51, %f537;\n" -" .loc 17 516 0\n" -" mov.f32 %f538, %f55;\n" -" mul.ftz.f32 %f539, %f81, %f463;\n" -" sub.ftz.f32 %f540, %f538, %f539;\n" -" mov.f32 %f55, %f540;\n" -" .loc 17 517 0\n" -" mul.ftz.f32 %f541, %f80, %f463;\n" -" sub.ftz.f32 %f56, %f56, %f541;\n" -" mov.f32 %f57, %f56;\n" -"$Lt_1_68354:\n" -" mul.lo.s32 %r36, %r16, %r2;\n" -" cvt.s64.s32 %rd44, %r36;\n" -" mul.wide.s32 %rd45, %r36, 4;\n" -" add.u64 %rd17, %rd17, %rd45;\n" -" setp.gt.u64 %p22, %rd20, %rd17;\n" -" @%p22 bra $Lt_1_51714;\n" -" bra.uni $Lt_1_51202;\n" -"$Lt_1_75010:\n" -" mov.f32 %f62, 0f00000000; \n" -" mov.f32 %f63, 0f00000000; \n" -" mov.f32 %f64, 0f00000000; \n" -" mov.f32 %f65, 0f00000000; \n" -"$Lt_1_51202:\n" -" mov.u32 %r37, 1;\n" -" setp.le.s32 %p23, %r2, %r37;\n" -" @%p23 bra $Lt_1_71170;\n" -" .loc 17 522 0\n" -" mov.u64 %rd46, __cuda___cuda_local_var_33377_55_non_const_red_acc3852;\n" -" cvt.s64.s32 %rd47, %r3;\n" -" mul.wide.s32 %rd48, %r3, 4;\n" -" add.u64 %rd49, %rd46, %rd48;\n" -" mov.f32 %f542, %f64;\n" -" st.shared.f32 [%rd49+0], %f542;\n" -" mov.f32 %f543, %f63;\n" -" st.shared.f32 [%rd49+512], %f543;\n" -" mov.f32 %f544, %f62;\n" -" st.shared.f32 [%rd49+1024], %f544;\n" -" mov.f32 %f545, %f65;\n" -" st.shared.f32 [%rd49+1536], %f545;\n" -" shr.s32 %r38, %r2, 31;\n" -" mov.s32 %r39, 1;\n" -" and.b32 %r40, %r38, %r39;\n" -" add.s32 %r41, %r40, %r2;\n" -" shr.s32 %r42, %r41, 1;\n" -" mov.s32 %r43, %r42;\n" -" mov.u32 %r44, 0;\n" -" setp.ne.u32 %p24, %r42, %r44;\n" -" @!%p24 bra $Lt_1_69634;\n" -"$Lt_1_70146:\n" -" setp.ge.u32 %p25, %r18, %r43;\n" -" @%p25 bra $Lt_1_70402;\n" -" add.u32 %r45, %r3, %r43;\n" -" cvt.u64.u32 %rd50, %r45;\n" -" mul.wide.u32 %rd51, %r45, 4;\n" -" add.u64 %rd52, %rd46, %rd51;\n" -" ld.shared.f32 %f546, [%rd52+0];\n" -" add.ftz.f32 %f542, %f546, %f542;\n" -" st.shared.f32 [%rd49+0], %f542;\n" -" ld.shared.f32 %f547, [%rd52+512];\n" -" add.ftz.f32 %f543, %f547, %f543;\n" -" st.shared.f32 [%rd49+512], %f543;\n" -" ld.shared.f32 %f548, [%rd52+1024];\n" -" add.ftz.f32 %f544, %f548, %f544;\n" -" st.shared.f32 [%rd49+1024], %f544;\n" -" ld.shared.f32 %f549, [%rd52+1536];\n" -" add.ftz.f32 %f545, %f549, %f545;\n" -" st.shared.f32 [%rd49+1536], %f545;\n" -"$Lt_1_70402:\n" -" shr.u32 %r43, %r43, 1;\n" -" mov.u32 %r46, 0;\n" -" setp.ne.u32 %p26, %r43, %r46;\n" -" @%p26 bra $Lt_1_70146;\n" -"$Lt_1_69634:\n" -" mov.f32 %f64, %f542;\n" -" mov.f32 %f63, %f543;\n" -" mov.f32 %f62, %f544;\n" -" mov.f32 %f65, %f545;\n" -" ld.param.s32 %r47, [__cudaparm_kernel_sphere_ellipsoid_vflag];\n" -" mov.u32 %r48, 0;\n" -" setp.le.s32 %p27, %r47, %r48;\n" -" @%p27 bra $Lt_1_71170;\n" -" mov.f32 %f542, %f47;\n" -" st.shared.f32 [%rd49+0], %f542;\n" -" mov.f32 %f543, %f49;\n" -" st.shared.f32 [%rd49+512], %f543;\n" -" mov.f32 %f544, %f51;\n" -" st.shared.f32 [%rd49+1024], %f544;\n" -" mov.f32 %f545, %f53;\n" -" st.shared.f32 [%rd49+1536], %f545;\n" -" mov.f32 %f550, %f55;\n" -" st.shared.f32 [%rd49+2048], %f550;\n" -" mov.f32 %f551, %f56;\n" -" st.shared.f32 [%rd49+2560], %f551;\n" -" mov.s32 %r49, %r42;\n" -" @!%p24 bra $Lt_1_71682;\n" -"$Lt_1_72194:\n" -" setp.ge.u32 %p28, %r18, %r49;\n" -" @%p28 bra $Lt_1_72450;\n" -" add.u32 %r50, %r3, %r49;\n" -" cvt.u64.u32 %rd53, %r50;\n" -" mul.wide.u32 %rd54, %r50, 4;\n" -" add.u64 %rd55, %rd46, %rd54;\n" -" ld.shared.f32 %f552, [%rd55+0];\n" -" add.ftz.f32 %f542, %f552, %f542;\n" -" st.shared.f32 [%rd49+0], %f542;\n" -" ld.shared.f32 %f553, [%rd55+512];\n" -" add.ftz.f32 %f543, %f553, %f543;\n" -" st.shared.f32 [%rd49+512], %f543;\n" -" ld.shared.f32 %f554, [%rd55+1024];\n" -" add.ftz.f32 %f544, %f554, %f544;\n" -" st.shared.f32 [%rd49+1024], %f544;\n" -" ld.shared.f32 %f555, [%rd55+1536];\n" -" add.ftz.f32 %f545, %f555, %f545;\n" -" st.shared.f32 [%rd49+1536], %f545;\n" -" ld.shared.f32 %f556, [%rd55+2048];\n" -" add.ftz.f32 %f550, %f556, %f550;\n" -" st.shared.f32 [%rd49+2048], %f550;\n" -" ld.shared.f32 %f557, [%rd55+2560];\n" -" add.ftz.f32 %f551, %f557, %f551;\n" -" st.shared.f32 [%rd49+2560], %f551;\n" -"$Lt_1_72450:\n" -" shr.u32 %r49, %r49, 1;\n" -" mov.u32 %r51, 0;\n" -" setp.ne.u32 %p29, %r49, %r51;\n" -" @%p29 bra $Lt_1_72194;\n" -"$Lt_1_71682:\n" -" mov.f32 %f47, %f542;\n" -" mov.f32 %f49, %f543;\n" -" mov.f32 %f51, %f544;\n" -" mov.f32 %f53, %f545;\n" -" mov.f32 %f55, %f550;\n" -" mov.f32 %f57, %f551;\n" -"$Lt_1_71170:\n" -"$Lt_1_69122:\n" -" mov.u32 %r52, 0;\n" -" setp.ne.s32 %p30, %r18, %r52;\n" -" @%p30 bra $Lt_1_73218;\n" -" ld.param.u64 %rd56, [__cudaparm_kernel_sphere_ellipsoid___val_paramengv];\n" -" add.u64 %rd57, %rd56, %rd3;\n" -" ld.param.s32 %r53, [__cudaparm_kernel_sphere_ellipsoid_eflag];\n" -" mov.u32 %r54, 0;\n" -" setp.le.s32 %p31, %r53, %r54;\n" -" @%p31 bra $Lt_1_73730;\n" -" st.global.f32 [%rd57+0], %f65;\n" -" cvt.s64.s32 %rd58, %r12;\n" -" mul.wide.s32 %rd59, %r12, 4;\n" -" add.u64 %rd57, %rd57, %rd59;\n" -"$Lt_1_73730:\n" -" ld.param.s32 %r55, [__cudaparm_kernel_sphere_ellipsoid_vflag];\n" -" mov.u32 %r56, 0;\n" -" setp.le.s32 %p32, %r55, %r56;\n" -" @%p32 bra $Lt_1_74242;\n" -" mov.f32 %f558, %f47;\n" -" st.global.f32 [%rd57+0], %f558;\n" -" cvt.s64.s32 %rd60, %r12;\n" -" mul.wide.s32 %rd61, %r12, 4;\n" -" add.u64 %rd62, %rd61, %rd57;\n" -" mov.f32 %f559, %f49;\n" -" st.global.f32 [%rd62+0], %f559;\n" -" add.u64 %rd63, %rd61, %rd62;\n" -" mov.f32 %f560, %f51;\n" -" st.global.f32 [%rd63+0], %f560;\n" -" add.u64 %rd64, %rd61, %rd63;\n" -" mov.f32 %f561, %f53;\n" -" st.global.f32 [%rd64+0], %f561;\n" -" add.u64 %rd57, %rd61, %rd64;\n" -" mov.f32 %f562, %f55;\n" -" st.global.f32 [%rd57+0], %f562;\n" -" mov.f32 %f563, %f57;\n" -" add.u64 %rd65, %rd61, %rd57;\n" -" st.global.f32 [%rd65+0], %f563;\n" -"$Lt_1_74242:\n" -" ld.param.u64 %rd66, [__cudaparm_kernel_sphere_ellipsoid_ans];\n" -" mul.lo.u64 %rd67, %rd2, 16;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" mov.f32 %f564, %f565;\n" -" st.global.v4.f32 [%rd68+0], {%f64,%f63,%f62,%f564};\n" -"$Lt_1_73218:\n" -"$Lt_1_50690:\n" -" .loc 17 525 0\n" -" exit;\n" -"$LDWend_kernel_sphere_ellipsoid:\n" -" }\n" -" .entry kernel_lj (\n" -" .param .u64 __cudaparm_kernel_lj_x_,\n" -" .param .u64 __cudaparm_kernel_lj_lj1,\n" -" .param .u64 __cudaparm_kernel_lj_lj3,\n" -" .param .s32 __cudaparm_kernel_lj_lj_types,\n" -" .param .u64 __cudaparm_kernel_lj_gum,\n" -" .param .s32 __cudaparm_kernel_lj_stride,\n" -" .param .u64 __cudaparm_kernel_lj_dev_ij,\n" -" .param .u64 __cudaparm_kernel_lj_ans,\n" -" .param .u64 __cudaparm_kernel_lj___val_paramengv,\n" -" .param .u64 __cudaparm_kernel_lj_err_flag,\n" -" .param .s32 __cudaparm_kernel_lj_eflag,\n" -" .param .s32 __cudaparm_kernel_lj_vflag,\n" -" .param .s32 __cudaparm_kernel_lj_start,\n" -" .param .s32 __cudaparm_kernel_lj_inum,\n" -" .param .s32 __cudaparm_kernel_lj_t_per_atom)\n" -" {\n" -" .reg .u32 %r<55>;\n" -" .reg .u64 %rd<60>;\n" -" .reg .f32 %f<115>;\n" -" .reg .pred %p<19>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33394_33_non_const_sp_lj7028[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33459_55_non_const_red_acc7044[3072];\n" -" .loc 17 534 0\n" -"$LDWbegin_kernel_lj:\n" -" .loc 17 540 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_lj_gum];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 17 541 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 17 542 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 17 543 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_33394_33_non_const_sp_lj7028+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 552 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" -" ld.param.s32 %r1, [__cudaparm_kernel_lj_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_lj_start];\n" -" add.s32 %r10, %r9, %r8;\n" -" ld.param.s32 %r11, [__cudaparm_kernel_lj_inum];\n" -" setp.ge.s32 %p1, %r10, %r11;\n" -" @%p1 bra $Lt_2_25346;\n" -" .loc 17 557 0\n" -" cvt.s64.s32 %rd2, %r10;\n" -" mul.wide.s32 %rd3, %r10, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_lj_dev_ij];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r12, [%rd5+0];\n" -" ld.param.s32 %r13, [__cudaparm_kernel_lj_stride];\n" -" cvt.s64.s32 %rd6, %r13;\n" -" mul.wide.s32 %rd7, %r13, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r14, [%rd8+0];\n" -" .loc 17 560 0\n" -" ld.param.u64 %rd9, [__cudaparm_kernel_lj_x_];\n" -" cvt.s64.s32 %rd10, %r12;\n" -" mul.wide.s32 %rd11, %r12, 16;\n" -" add.u64 %rd12, %rd9, %rd11;\n" -" ld.global.v4.f32 {%f17,%f18,%f19,%f20}, [%rd12+0];\n" -" .loc 17 561 0\n" -" cvt.s32.s64 %r15, %rd6;\n" -" sub.s32 %r16, %r1, 1;\n" -" and.b32 %r17, %r16, %r2;\n" -" add.u64 %rd13, %rd7, %rd8;\n" -" mul.lo.s32 %r18, %r15, %r17;\n" -" cvt.s64.s32 %rd14, %r18;\n" -" mul.wide.s32 %rd15, %r18, 4;\n" -" add.u64 %rd16, %rd13, %rd15;\n" -" mov.s64 %rd17, %rd16;\n" -" mul.lo.s32 %r19, %r15, %r14;\n" -" cvt.s64.s32 %rd18, %r19;\n" -" mul.wide.s32 %rd19, %r19, 4;\n" -" add.u64 %rd20, %rd13, %rd19;\n" -" setp.ge.u64 %p2, %rd16, %rd20;\n" -" @%p2 bra $Lt_2_26882;\n" -" cvt.rzi.ftz.s32.f32 %r20, %f20;\n" -" ld.param.s32 %r21, [__cudaparm_kernel_lj_lj_types];\n" -" mul.lo.s32 %r22, %r21, %r20;\n" -" ld.param.u64 %rd21, [__cudaparm_kernel_lj_lj1];\n" -" mov.f32 %f21, 0f00000000; \n" -" mov.f32 %f22, 0f00000000; \n" -" mov.f32 %f23, 0f00000000; \n" -" mov.f32 %f24, 0f00000000; \n" -" mov.u64 %rd22, __cuda___cuda_local_var_33394_33_non_const_sp_lj7028;\n" -"$Lt_2_19714:\n" -" .loc 17 566 0\n" -" ld.global.s32 %r23, [%rd17+0];\n" -" .loc 17 567 0\n" -" shr.s32 %r24, %r23, 30;\n" -" and.b32 %r25, %r24, 3;\n" -" cvt.s64.s32 %rd23, %r25;\n" -" mul.wide.s32 %rd24, %r25, 4;\n" -" add.u64 %rd25, %rd22, %rd24;\n" -" ld.shared.f32 %f25, [%rd25+0];\n" -" .loc 17 570 0\n" -" and.b32 %r26, %r23, 1073741823;\n" -" cvt.s64.s32 %rd26, %r26;\n" -" mul.wide.s32 %rd27, %r26, 16;\n" -" add.u64 %rd28, %rd9, %rd27;\n" -" ld.global.v4.f32 {%f26,%f27,%f28,%f29}, [%rd28+0];\n" -" .loc 17 566 0\n" -" cvt.rzi.ftz.s32.f32 %r27, %f29;\n" -" sub.ftz.f32 %f30, %f18, %f27;\n" -" sub.ftz.f32 %f31, %f17, %f26;\n" -" sub.ftz.f32 %f32, %f19, %f28;\n" -" mul.ftz.f32 %f33, %f30, %f30;\n" -" fma.rn.ftz.f32 %f34, %f31, %f31, %f33;\n" -" fma.rn.ftz.f32 %f35, %f32, %f32, %f34;\n" -" add.s32 %r28, %r27, %r22;\n" -" cvt.s64.s32 %rd29, %r28;\n" -" mul.wide.s32 %rd30, %r28, 16;\n" -" add.u64 %rd31, %rd30, %rd21;\n" -" ld.global.f32 %f36, [%rd31+8];\n" -" setp.gt.ftz.f32 %p3, %f36, %f35;\n" -" @!%p3 bra $Lt_2_27138;\n" -" ld.global.f32 %f37, [%rd31+12];\n" -" mov.f32 %f38, 0f00000000; \n" -" setp.eq.ftz.f32 %p4, %f37, %f38;\n" -" @!%p4 bra $Lt_2_27138;\n" -" .loc 17 584 0\n" -" rcp.approx.ftz.f32 %f39, %f35;\n" -" mul.ftz.f32 %f40, %f39, %f39;\n" -" mul.ftz.f32 %f41, %f39, %f40;\n" -" mul.ftz.f32 %f42, %f39, %f41;\n" -" ld.global.v2.f32 {%f43,%f44}, [%rd31+0];\n" -" mul.ftz.f32 %f45, %f43, %f41;\n" -" sub.ftz.f32 %f46, %f45, %f44;\n" -" mul.ftz.f32 %f47, %f42, %f46;\n" -" mul.ftz.f32 %f48, %f25, %f47;\n" -" .loc 17 586 0\n" -" fma.rn.ftz.f32 %f23, %f31, %f48, %f23;\n" -" .loc 17 587 0\n" -" fma.rn.ftz.f32 %f22, %f30, %f48, %f22;\n" -" .loc 17 588 0\n" -" fma.rn.ftz.f32 %f21, %f32, %f48, %f21;\n" -" ld.param.s32 %r29, [__cudaparm_kernel_lj_eflag];\n" -" mov.u32 %r30, 0;\n" -" setp.le.s32 %p5, %r29, %r30;\n" -" @%p5 bra $Lt_2_19970;\n" -" .loc 17 592 0\n" -" ld.param.u64 %rd32, [__cudaparm_kernel_lj_lj3];\n" -" add.u64 %rd33, %rd32, %rd30;\n" -" ld.global.v4.f32 {%f49,%f50,%f51,_}, [%rd33+0];\n" -" mul.ftz.f32 %f52, %f49, %f41;\n" -" sub.ftz.f32 %f53, %f52, %f50;\n" -" mul.ftz.f32 %f54, %f41, %f53;\n" -" sub.ftz.f32 %f55, %f54, %f51;\n" -" fma.rn.ftz.f32 %f24, %f25, %f55, %f24;\n" -"$Lt_2_19970:\n" -" ld.param.s32 %r31, [__cudaparm_kernel_lj_vflag];\n" -" mov.u32 %r32, 0;\n" -" setp.le.s32 %p6, %r31, %r32;\n" -" @%p6 bra $Lt_2_27138;\n" -" .loc 17 595 0\n" -" mov.f32 %f56, %f6;\n" -" mul.ftz.f32 %f57, %f31, %f31;\n" -" fma.rn.ftz.f32 %f58, %f48, %f57, %f56;\n" -" mov.f32 %f6, %f58;\n" -" .loc 17 596 0\n" -" mov.f32 %f59, %f8;\n" -" fma.rn.ftz.f32 %f60, %f48, %f33, %f59;\n" -" mov.f32 %f8, %f60;\n" -" .loc 17 597 0\n" -" mov.f32 %f61, %f10;\n" -" mul.ftz.f32 %f62, %f32, %f32;\n" -" fma.rn.ftz.f32 %f63, %f48, %f62, %f61;\n" -" mov.f32 %f10, %f63;\n" -" .loc 17 598 0\n" -" mov.f32 %f64, %f12;\n" -" mul.ftz.f32 %f65, %f30, %f31;\n" -" fma.rn.ftz.f32 %f66, %f48, %f65, %f64;\n" -" mov.f32 %f12, %f66;\n" -" .loc 17 599 0\n" -" mov.f32 %f67, %f14;\n" -" mul.ftz.f32 %f68, %f31, %f32;\n" -" fma.rn.ftz.f32 %f69, %f48, %f68, %f67;\n" -" mov.f32 %f14, %f69;\n" -" .loc 17 600 0\n" -" mul.ftz.f32 %f70, %f30, %f32;\n" -" fma.rn.ftz.f32 %f15, %f48, %f70, %f15;\n" -" mov.f32 %f16, %f15;\n" -"$Lt_2_27138:\n" -"$L_2_18178:\n" -" .loc 17 594 0\n" -" mul.lo.s32 %r33, %r15, %r1;\n" -" cvt.s64.s32 %rd34, %r33;\n" -" mul.wide.s32 %rd35, %r33, 4;\n" -" add.u64 %rd17, %rd17, %rd35;\n" -" setp.gt.u64 %p7, %rd20, %rd17;\n" -" @%p7 bra $Lt_2_19714;\n" -" bra.uni $Lt_2_19202;\n" -"$Lt_2_26882:\n" -" mov.f32 %f21, 0f00000000; \n" -" mov.f32 %f22, 0f00000000; \n" -" mov.f32 %f23, 0f00000000; \n" -" mov.f32 %f24, 0f00000000; \n" -"$Lt_2_19202:\n" -" mov.u32 %r34, 1;\n" -" setp.le.s32 %p8, %r1, %r34;\n" -" @%p8 bra $Lt_2_23298;\n" -" .loc 17 604 0\n" -" mov.u64 %rd36, __cuda___cuda_local_var_33459_55_non_const_red_acc7044;\n" -" cvt.s64.s32 %rd37, %r2;\n" -" mul.wide.s32 %rd38, %r2, 4;\n" -" add.u64 %rd39, %rd36, %rd38;\n" -" mov.f32 %f71, %f23;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" mov.f32 %f72, %f22;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" mov.f32 %f73, %f21;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" mov.f32 %f74, %f24;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -" shr.s32 %r35, %r1, 31;\n" -" mov.s32 %r36, 1;\n" -" and.b32 %r37, %r35, %r36;\n" -" add.s32 %r38, %r37, %r1;\n" -" shr.s32 %r39, %r38, 1;\n" -" mov.s32 %r40, %r39;\n" -" mov.u32 %r41, 0;\n" -" setp.ne.u32 %p9, %r39, %r41;\n" -" @!%p9 bra $Lt_2_21762;\n" -"$Lt_2_22274:\n" -" setp.ge.u32 %p10, %r17, %r40;\n" -" @%p10 bra $Lt_2_22530;\n" -" add.u32 %r42, %r2, %r40;\n" -" cvt.u64.u32 %rd40, %r42;\n" -" mul.wide.u32 %rd41, %r42, 4;\n" -" add.u64 %rd42, %rd36, %rd41;\n" -" ld.shared.f32 %f75, [%rd42+0];\n" -" add.ftz.f32 %f71, %f75, %f71;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" ld.shared.f32 %f76, [%rd42+512];\n" -" add.ftz.f32 %f72, %f76, %f72;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" ld.shared.f32 %f77, [%rd42+1024];\n" -" add.ftz.f32 %f73, %f77, %f73;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" ld.shared.f32 %f78, [%rd42+1536];\n" -" add.ftz.f32 %f74, %f78, %f74;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -"$Lt_2_22530:\n" -" shr.u32 %r40, %r40, 1;\n" -" mov.u32 %r43, 0;\n" -" setp.ne.u32 %p11, %r40, %r43;\n" -" @%p11 bra $Lt_2_22274;\n" -"$Lt_2_21762:\n" -" mov.f32 %f23, %f71;\n" -" mov.f32 %f22, %f72;\n" -" mov.f32 %f21, %f73;\n" -" mov.f32 %f24, %f74;\n" -" ld.param.s32 %r44, [__cudaparm_kernel_lj_vflag];\n" -" mov.u32 %r45, 0;\n" -" setp.le.s32 %p12, %r44, %r45;\n" -" @%p12 bra $Lt_2_23298;\n" -" mov.f32 %f71, %f6;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" mov.f32 %f72, %f8;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" mov.f32 %f73, %f10;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" mov.f32 %f74, %f12;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -" mov.f32 %f79, %f14;\n" -" st.shared.f32 [%rd39+2048], %f79;\n" -" mov.f32 %f80, %f15;\n" -" st.shared.f32 [%rd39+2560], %f80;\n" -" mov.s32 %r46, %r39;\n" -" @!%p9 bra $Lt_2_23810;\n" -"$Lt_2_24322:\n" -" setp.ge.u32 %p13, %r17, %r46;\n" -" @%p13 bra $Lt_2_24578;\n" -" add.u32 %r47, %r2, %r46;\n" -" cvt.u64.u32 %rd43, %r47;\n" -" mul.wide.u32 %rd44, %r47, 4;\n" -" add.u64 %rd45, %rd36, %rd44;\n" -" ld.shared.f32 %f81, [%rd45+0];\n" -" add.ftz.f32 %f71, %f81, %f71;\n" -" st.shared.f32 [%rd39+0], %f71;\n" -" ld.shared.f32 %f82, [%rd45+512];\n" -" add.ftz.f32 %f72, %f82, %f72;\n" -" st.shared.f32 [%rd39+512], %f72;\n" -" ld.shared.f32 %f83, [%rd45+1024];\n" -" add.ftz.f32 %f73, %f83, %f73;\n" -" st.shared.f32 [%rd39+1024], %f73;\n" -" ld.shared.f32 %f84, [%rd45+1536];\n" -" add.ftz.f32 %f74, %f84, %f74;\n" -" st.shared.f32 [%rd39+1536], %f74;\n" -" ld.shared.f32 %f85, [%rd45+2048];\n" -" add.ftz.f32 %f79, %f85, %f79;\n" -" st.shared.f32 [%rd39+2048], %f79;\n" -" ld.shared.f32 %f86, [%rd45+2560];\n" -" add.ftz.f32 %f80, %f86, %f80;\n" -" st.shared.f32 [%rd39+2560], %f80;\n" -"$Lt_2_24578:\n" -" shr.u32 %r46, %r46, 1;\n" -" mov.u32 %r48, 0;\n" -" setp.ne.u32 %p14, %r46, %r48;\n" -" @%p14 bra $Lt_2_24322;\n" -"$Lt_2_23810:\n" -" mov.f32 %f6, %f71;\n" -" mov.f32 %f8, %f72;\n" -" mov.f32 %f10, %f73;\n" -" mov.f32 %f12, %f74;\n" -" mov.f32 %f14, %f79;\n" -" mov.f32 %f16, %f80;\n" -"$Lt_2_23298:\n" -"$Lt_2_21250:\n" -" mov.u32 %r49, 0;\n" -" setp.ne.s32 %p15, %r17, %r49;\n" -" @%p15 bra $Lt_2_25346;\n" -" ld.param.u64 %rd46, [__cudaparm_kernel_lj___val_paramengv];\n" -" add.u64 %rd47, %rd46, %rd3;\n" -" ld.param.s32 %r50, [__cudaparm_kernel_lj_eflag];\n" -" mov.u32 %r51, 0;\n" -" setp.le.s32 %p16, %r50, %r51;\n" -" @%p16 bra $Lt_2_25858;\n" -" ld.global.f32 %f87, [%rd47+0];\n" -" add.ftz.f32 %f88, %f87, %f24;\n" -" st.global.f32 [%rd47+0], %f88;\n" -" cvt.s64.s32 %rd48, %r11;\n" -" mul.wide.s32 %rd49, %r11, 4;\n" -" add.u64 %rd47, %rd47, %rd49;\n" -"$Lt_2_25858:\n" -" ld.param.s32 %r52, [__cudaparm_kernel_lj_vflag];\n" -" mov.u32 %r53, 0;\n" -" setp.le.s32 %p17, %r52, %r53;\n" -" @%p17 bra $Lt_2_26370;\n" -" ld.global.f32 %f89, [%rd47+0];\n" -" mov.f32 %f90, %f6;\n" -" add.ftz.f32 %f91, %f89, %f90;\n" -" st.global.f32 [%rd47+0], %f91;\n" -" cvt.s64.s32 %rd50, %r11;\n" -" mul.wide.s32 %rd51, %r11, 4;\n" -" add.u64 %rd52, %rd51, %rd47;\n" -" ld.global.f32 %f92, [%rd52+0];\n" -" mov.f32 %f93, %f8;\n" -" add.ftz.f32 %f94, %f92, %f93;\n" -" st.global.f32 [%rd52+0], %f94;\n" -" add.u64 %rd53, %rd51, %rd52;\n" -" ld.global.f32 %f95, [%rd53+0];\n" -" mov.f32 %f96, %f10;\n" -" add.ftz.f32 %f97, %f95, %f96;\n" -" st.global.f32 [%rd53+0], %f97;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" ld.global.f32 %f98, [%rd54+0];\n" -" mov.f32 %f99, %f12;\n" -" add.ftz.f32 %f100, %f98, %f99;\n" -" st.global.f32 [%rd54+0], %f100;\n" -" add.u64 %rd55, %rd51, %rd54;\n" -" ld.global.f32 %f101, [%rd55+0];\n" -" mov.f32 %f102, %f14;\n" -" add.ftz.f32 %f103, %f101, %f102;\n" -" st.global.f32 [%rd55+0], %f103;\n" -" add.u64 %rd47, %rd51, %rd55;\n" -" ld.global.f32 %f104, [%rd47+0];\n" -" mov.f32 %f105, %f16;\n" -" add.ftz.f32 %f106, %f104, %f105;\n" -" st.global.f32 [%rd47+0], %f106;\n" -"$Lt_2_26370:\n" -" ld.param.u64 %rd56, [__cudaparm_kernel_lj_ans];\n" -" mul.lo.u64 %rd57, %rd2, 16;\n" -" add.u64 %rd58, %rd56, %rd57;\n" -" ld.global.v4.f32 {%f107,%f108,%f109,%f110}, [%rd58+0];\n" -" add.ftz.f32 %f111, %f108, %f22;\n" -" add.ftz.f32 %f112, %f109, %f21;\n" -" add.ftz.f32 %f113, %f107, %f23;\n" -" st.global.v4.f32 [%rd58+0], {%f113,%f111,%f112,%f110};\n" -"$Lt_2_25346:\n" -"$Lt_2_18690:\n" -" .loc 17 607 0\n" -" exit;\n" -"$LDWend_kernel_lj:\n" -" }\n" -" .entry kernel_lj_fast (\n" -" .param .u64 __cudaparm_kernel_lj_fast_x_,\n" -" .param .u64 __cudaparm_kernel_lj_fast_lj1_in,\n" -" .param .u64 __cudaparm_kernel_lj_fast_lj3_in,\n" -" .param .u64 __cudaparm_kernel_lj_fast_gum,\n" -" .param .s32 __cudaparm_kernel_lj_fast_stride,\n" -" .param .u64 __cudaparm_kernel_lj_fast_dev_ij,\n" -" .param .u64 __cudaparm_kernel_lj_fast_ans,\n" -" .param .u64 __cudaparm_kernel_lj_fast___val_paramengv,\n" -" .param .u64 __cudaparm_kernel_lj_fast_err_flag,\n" -" .param .s32 __cudaparm_kernel_lj_fast_eflag,\n" -" .param .s32 __cudaparm_kernel_lj_fast_vflag,\n" -" .param .s32 __cudaparm_kernel_lj_fast_start,\n" -" .param .s32 __cudaparm_kernel_lj_fast_inum,\n" -" .param .s32 __cudaparm_kernel_lj_fast_t_per_atom)\n" -" {\n" -" .reg .u32 %r<57>;\n" -" .reg .u64 %rd<72>;\n" -" .reg .f32 %f<122>;\n" -" .reg .pred %p<22>;\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33475_33_non_const_sp_lj10212[16];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33476_34_non_const_lj110240[1936];\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_33477_34_non_const_lj312176[1936];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33547_55_non_const_red_acc14112[3072];\n" -" .loc 17 615 0\n" -"$LDWbegin_kernel_lj_fast:\n" -" cvt.s32.u32 %r1, %tid.x;\n" -" mov.u32 %r2, 3;\n" -" setp.gt.s32 %p1, %r1, %r2;\n" -" @%p1 bra $Lt_3_20994;\n" -" .loc 17 624 0\n" -" mov.u64 %rd1, __cuda___cuda_local_var_33475_33_non_const_sp_lj10212;\n" -" cvt.s64.s32 %rd2, %r1;\n" -" mul.wide.s32 %rd3, %r1, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_lj_fast_gum];\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_3_20994:\n" -" mov.u64 %rd1, __cuda___cuda_local_var_33475_33_non_const_sp_lj10212;\n" -" mov.u32 %r3, 120;\n" -" setp.gt.s32 %p2, %r1, %r3;\n" -" @%p2 bra $Lt_3_21506;\n" -" .loc 17 626 0\n" -" mov.u64 %rd7, __cuda___cuda_local_var_33476_34_non_const_lj110240;\n" -" cvt.s64.s32 %rd8, %r1;\n" -" mul.wide.s32 %rd9, %r1, 16;\n" -" ld.param.u64 %rd10, [__cudaparm_kernel_lj_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.v4.f32 [%rd12+0], {%f2,%f3,%f4,%f5};\n" -" ld.param.s32 %r4, [__cudaparm_kernel_lj_fast_eflag];\n" -" mov.u32 %r5, 0;\n" -" setp.le.s32 %p3, %r4, %r5;\n" -" @%p3 bra $Lt_3_22018;\n" -" .loc 17 628 0\n" -" mov.u64 %rd13, __cuda___cuda_local_var_33477_34_non_const_lj312176;\n" -" ld.param.u64 %rd14, [__cudaparm_kernel_lj_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.v4.f32 [%rd16+0], {%f6,%f7,%f8,%f9};\n" -"$Lt_3_22018:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_33477_34_non_const_lj312176;\n" -"$Lt_3_21506:\n" -" mov.u64 %rd13, __cuda___cuda_local_var_33477_34_non_const_lj312176;\n" -" mov.u64 %rd7, __cuda___cuda_local_var_33476_34_non_const_lj110240;\n" -" .loc 17 638 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 17 640 0\n" -" bar.sync 0;\n" -" ld.param.s32 %r6, [__cudaparm_kernel_lj_fast_t_per_atom];\n" -" div.s32 %r7, %r1, %r6;\n" -" cvt.s32.u32 %r8, %ntid.x;\n" -" div.s32 %r9, %r8, %r6;\n" -" cvt.s32.u32 %r10, %ctaid.x;\n" -" mul.lo.s32 %r11, %r10, %r9;\n" -" add.s32 %r12, %r7, %r11;\n" -" ld.param.s32 %r13, [__cudaparm_kernel_lj_fast_start];\n" -" add.s32 %r14, %r13, %r12;\n" -" ld.param.s32 %r15, [__cudaparm_kernel_lj_fast_inum];\n" -" setp.ge.s32 %p4, %r14, %r15;\n" -" @%p4 bra $Lt_3_29186;\n" -" .loc 17 645 0\n" -" cvt.s64.s32 %rd17, %r14;\n" -" mul.wide.s32 %rd18, %r14, 4;\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_lj_fast_dev_ij];\n" -" add.u64 %rd20, %rd19, %rd18;\n" -" ld.global.s32 %r16, [%rd20+0];\n" -" ld.param.s32 %r17, [__cudaparm_kernel_lj_fast_stride];\n" -" cvt.s64.s32 %rd21, %r17;\n" -" mul.wide.s32 %rd22, %r17, 4;\n" -" add.u64 %rd23, %rd22, %rd20;\n" -" ld.global.s32 %r18, [%rd23+0];\n" -" .loc 17 648 0\n" -" ld.param.u64 %rd24, [__cudaparm_kernel_lj_fast_x_];\n" -" cvt.s64.s32 %rd25, %r16;\n" -" mul.wide.s32 %rd26, %r16, 16;\n" -" add.u64 %rd27, %rd24, %rd26;\n" -" ld.global.v4.f32 {%f22,%f23,%f24,%f25}, [%rd27+0];\n" -" .loc 17 650 0\n" -" cvt.s32.s64 %r19, %rd21;\n" -" sub.s32 %r20, %r6, 1;\n" -" and.b32 %r21, %r20, %r1;\n" -" add.u64 %rd28, %rd22, %rd23;\n" -" mul.lo.s32 %r22, %r19, %r21;\n" -" cvt.s64.s32 %rd29, %r22;\n" -" mul.wide.s32 %rd30, %r22, 4;\n" -" add.u64 %rd31, %rd28, %rd30;\n" -" mov.s64 %rd32, %rd31;\n" -" mul.lo.s32 %r23, %r19, %r18;\n" -" cvt.s64.s32 %rd33, %r23;\n" -" mul.wide.s32 %rd34, %r23, 4;\n" -" add.u64 %rd35, %rd28, %rd34;\n" -" setp.ge.u64 %p5, %rd31, %rd35;\n" -" @%p5 bra $Lt_3_30722;\n" -" cvt.rzi.ftz.s32.f32 %r24, %f25;\n" -" mul.lo.s32 %r25, %r24, 11;\n" -" cvt.rn.f32.s32 %f26, %r25;\n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -"$Lt_3_23554:\n" -" .loc 17 655 0\n" -" ld.global.s32 %r26, [%rd32+0];\n" -" .loc 17 656 0\n" -" shr.s32 %r27, %r26, 30;\n" -" and.b32 %r28, %r27, 3;\n" -" cvt.s64.s32 %rd36, %r28;\n" -" mul.wide.s32 %rd37, %r28, 4;\n" -" add.u64 %rd38, %rd1, %rd37;\n" -" ld.shared.f32 %f31, [%rd38+0];\n" -" .loc 17 659 0\n" -" and.b32 %r29, %r26, 1073741823;\n" -" cvt.s64.s32 %rd39, %r29;\n" -" mul.wide.s32 %rd40, %r29, 16;\n" -" add.u64 %rd41, %rd24, %rd40;\n" -" ld.global.v4.f32 {%f32,%f33,%f34,%f35}, [%rd41+0];\n" -" .loc 17 655 0\n" -" sub.ftz.f32 %f36, %f23, %f33;\n" -" sub.ftz.f32 %f37, %f22, %f32;\n" -" sub.ftz.f32 %f38, %f24, %f34;\n" -" mul.ftz.f32 %f39, %f36, %f36;\n" -" fma.rn.ftz.f32 %f40, %f37, %f37, %f39;\n" -" fma.rn.ftz.f32 %f41, %f38, %f38, %f40;\n" -" add.ftz.f32 %f42, %f26, %f35;\n" -" cvt.rzi.ftz.s32.f32 %r30, %f42;\n" -" cvt.s64.s32 %rd42, %r30;\n" -" mul.wide.s32 %rd43, %r30, 16;\n" -" add.u64 %rd44, %rd43, %rd7;\n" -" ld.shared.f32 %f43, [%rd44+8];\n" -" setp.gt.ftz.f32 %p6, %f43, %f41;\n" -" @!%p6 bra $Lt_3_30978;\n" -" ld.shared.f32 %f44, [%rd44+12];\n" -" mov.f32 %f45, 0f00000000; \n" -" setp.eq.ftz.f32 %p7, %f44, %f45;\n" -" @!%p7 bra $Lt_3_30978;\n" -" .loc 17 671 0\n" -" rcp.approx.ftz.f32 %f46, %f41;\n" -" mul.ftz.f32 %f47, %f46, %f46;\n" -" mul.ftz.f32 %f48, %f46, %f47;\n" -" mul.ftz.f32 %f49, %f46, %f31;\n" -" mul.ftz.f32 %f50, %f48, %f49;\n" -" ld.shared.v2.f32 {%f51,%f52}, [%rd44+0];\n" -" mul.ftz.f32 %f53, %f51, %f48;\n" -" sub.ftz.f32 %f54, %f53, %f52;\n" -" mul.ftz.f32 %f55, %f50, %f54;\n" -" .loc 17 673 0\n" -" fma.rn.ftz.f32 %f29, %f37, %f55, %f29;\n" -" .loc 17 674 0\n" -" fma.rn.ftz.f32 %f28, %f36, %f55, %f28;\n" -" .loc 17 675 0\n" -" fma.rn.ftz.f32 %f27, %f38, %f55, %f27;\n" -" ld.param.s32 %r31, [__cudaparm_kernel_lj_fast_eflag];\n" -" mov.u32 %r32, 0;\n" -" setp.le.s32 %p8, %r31, %r32;\n" -" @%p8 bra $Lt_3_23810;\n" -" .loc 17 678 0\n" -" add.u64 %rd45, %rd43, %rd13;\n" -" ld.shared.v4.f32 {%f56,%f57,%f58,_}, [%rd45+0];\n" -" mul.ftz.f32 %f59, %f56, %f48;\n" -" sub.ftz.f32 %f60, %f59, %f57;\n" -" mul.ftz.f32 %f61, %f48, %f60;\n" -" .loc 17 679 0\n" -" sub.ftz.f32 %f62, %f61, %f58;\n" -" fma.rn.ftz.f32 %f30, %f31, %f62, %f30;\n" -"$Lt_3_23810:\n" -" ld.param.s32 %r33, [__cudaparm_kernel_lj_fast_vflag];\n" -" mov.u32 %r34, 0;\n" -" setp.le.s32 %p9, %r33, %r34;\n" -" @%p9 bra $Lt_3_30978;\n" -" .loc 17 682 0\n" -" mov.f32 %f63, %f11;\n" -" mul.ftz.f32 %f64, %f37, %f37;\n" -" fma.rn.ftz.f32 %f65, %f55, %f64, %f63;\n" -" mov.f32 %f11, %f65;\n" -" .loc 17 683 0\n" -" mov.f32 %f66, %f13;\n" -" fma.rn.ftz.f32 %f67, %f55, %f39, %f66;\n" -" mov.f32 %f13, %f67;\n" -" .loc 17 684 0\n" -" mov.f32 %f68, %f15;\n" -" mul.ftz.f32 %f69, %f38, %f38;\n" -" fma.rn.ftz.f32 %f70, %f55, %f69, %f68;\n" -" mov.f32 %f15, %f70;\n" -" .loc 17 685 0\n" -" mov.f32 %f71, %f17;\n" -" mul.ftz.f32 %f72, %f36, %f37;\n" -" fma.rn.ftz.f32 %f73, %f55, %f72, %f71;\n" -" mov.f32 %f17, %f73;\n" -" .loc 17 686 0\n" -" mov.f32 %f74, %f19;\n" -" mul.ftz.f32 %f75, %f37, %f38;\n" -" fma.rn.ftz.f32 %f76, %f55, %f75, %f74;\n" -" mov.f32 %f19, %f76;\n" -" .loc 17 687 0\n" -" mul.ftz.f32 %f77, %f36, %f38;\n" -" fma.rn.ftz.f32 %f20, %f55, %f77, %f20;\n" -" mov.f32 %f21, %f20;\n" -"$Lt_3_30978:\n" -"$L_3_20482:\n" -" .loc 17 681 0\n" -" mul.lo.s32 %r35, %r19, %r6;\n" -" cvt.s64.s32 %rd46, %r35;\n" -" mul.wide.s32 %rd47, %r35, 4;\n" -" add.u64 %rd32, %rd32, %rd47;\n" -" setp.gt.u64 %p10, %rd35, %rd32;\n" -" @%p10 bra $Lt_3_23554;\n" -" bra.uni $Lt_3_23042;\n" -"$Lt_3_30722:\n" -" mov.f32 %f27, 0f00000000; \n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, 0f00000000; \n" -" mov.f32 %f30, 0f00000000; \n" -"$Lt_3_23042:\n" -" mov.u32 %r36, 1;\n" -" setp.le.s32 %p11, %r6, %r36;\n" -" @%p11 bra $Lt_3_27138;\n" -" .loc 17 692 0\n" -" mov.u64 %rd48, __cuda___cuda_local_var_33547_55_non_const_red_acc14112;\n" -" cvt.s64.s32 %rd49, %r1;\n" -" mul.wide.s32 %rd50, %r1, 4;\n" -" add.u64 %rd51, %rd48, %rd50;\n" -" mov.f32 %f78, %f29;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" mov.f32 %f79, %f28;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" mov.f32 %f80, %f27;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" mov.f32 %f81, %f30;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -" shr.s32 %r37, %r6, 31;\n" -" mov.s32 %r38, 1;\n" -" and.b32 %r39, %r37, %r38;\n" -" add.s32 %r40, %r39, %r6;\n" -" shr.s32 %r41, %r40, 1;\n" -" mov.s32 %r42, %r41;\n" -" mov.u32 %r43, 0;\n" -" setp.ne.u32 %p12, %r41, %r43;\n" -" @!%p12 bra $Lt_3_25602;\n" -"$Lt_3_26114:\n" -" setp.ge.u32 %p13, %r21, %r42;\n" -" @%p13 bra $Lt_3_26370;\n" -" add.u32 %r44, %r1, %r42;\n" -" cvt.u64.u32 %rd52, %r44;\n" -" mul.wide.u32 %rd53, %r44, 4;\n" -" add.u64 %rd54, %rd48, %rd53;\n" -" ld.shared.f32 %f82, [%rd54+0];\n" -" add.ftz.f32 %f78, %f82, %f78;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" ld.shared.f32 %f83, [%rd54+512];\n" -" add.ftz.f32 %f79, %f83, %f79;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" ld.shared.f32 %f84, [%rd54+1024];\n" -" add.ftz.f32 %f80, %f84, %f80;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" ld.shared.f32 %f85, [%rd54+1536];\n" -" add.ftz.f32 %f81, %f85, %f81;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -"$Lt_3_26370:\n" -" shr.u32 %r42, %r42, 1;\n" -" mov.u32 %r45, 0;\n" -" setp.ne.u32 %p14, %r42, %r45;\n" -" @%p14 bra $Lt_3_26114;\n" -"$Lt_3_25602:\n" -" mov.f32 %f29, %f78;\n" -" mov.f32 %f28, %f79;\n" -" mov.f32 %f27, %f80;\n" -" mov.f32 %f30, %f81;\n" -" ld.param.s32 %r46, [__cudaparm_kernel_lj_fast_vflag];\n" -" mov.u32 %r47, 0;\n" -" setp.le.s32 %p15, %r46, %r47;\n" -" @%p15 bra $Lt_3_27138;\n" -" mov.f32 %f78, %f11;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" mov.f32 %f79, %f13;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" mov.f32 %f80, %f15;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" mov.f32 %f81, %f17;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -" mov.f32 %f86, %f19;\n" -" st.shared.f32 [%rd51+2048], %f86;\n" -" mov.f32 %f87, %f20;\n" -" st.shared.f32 [%rd51+2560], %f87;\n" -" mov.s32 %r48, %r41;\n" -" @!%p12 bra $Lt_3_27650;\n" -"$Lt_3_28162:\n" -" setp.ge.u32 %p16, %r21, %r48;\n" -" @%p16 bra $Lt_3_28418;\n" -" add.u32 %r49, %r1, %r48;\n" -" cvt.u64.u32 %rd55, %r49;\n" -" mul.wide.u32 %rd56, %r49, 4;\n" -" add.u64 %rd57, %rd48, %rd56;\n" -" ld.shared.f32 %f88, [%rd57+0];\n" -" add.ftz.f32 %f78, %f88, %f78;\n" -" st.shared.f32 [%rd51+0], %f78;\n" -" ld.shared.f32 %f89, [%rd57+512];\n" -" add.ftz.f32 %f79, %f89, %f79;\n" -" st.shared.f32 [%rd51+512], %f79;\n" -" ld.shared.f32 %f90, [%rd57+1024];\n" -" add.ftz.f32 %f80, %f90, %f80;\n" -" st.shared.f32 [%rd51+1024], %f80;\n" -" ld.shared.f32 %f91, [%rd57+1536];\n" -" add.ftz.f32 %f81, %f91, %f81;\n" -" st.shared.f32 [%rd51+1536], %f81;\n" -" ld.shared.f32 %f92, [%rd57+2048];\n" -" add.ftz.f32 %f86, %f92, %f86;\n" -" st.shared.f32 [%rd51+2048], %f86;\n" -" ld.shared.f32 %f93, [%rd57+2560];\n" -" add.ftz.f32 %f87, %f93, %f87;\n" -" st.shared.f32 [%rd51+2560], %f87;\n" -"$Lt_3_28418:\n" -" shr.u32 %r48, %r48, 1;\n" -" mov.u32 %r50, 0;\n" -" setp.ne.u32 %p17, %r48, %r50;\n" -" @%p17 bra $Lt_3_28162;\n" -"$Lt_3_27650:\n" -" mov.f32 %f11, %f78;\n" -" mov.f32 %f13, %f79;\n" -" mov.f32 %f15, %f80;\n" -" mov.f32 %f17, %f81;\n" -" mov.f32 %f19, %f86;\n" -" mov.f32 %f21, %f87;\n" -"$Lt_3_27138:\n" -"$Lt_3_25090:\n" -" mov.u32 %r51, 0;\n" -" setp.ne.s32 %p18, %r21, %r51;\n" -" @%p18 bra $Lt_3_29186;\n" -" ld.param.u64 %rd58, [__cudaparm_kernel_lj_fast___val_paramengv];\n" -" add.u64 %rd59, %rd58, %rd18;\n" -" ld.param.s32 %r52, [__cudaparm_kernel_lj_fast_eflag];\n" -" mov.u32 %r53, 0;\n" -" setp.le.s32 %p19, %r52, %r53;\n" -" @%p19 bra $Lt_3_29698;\n" -" ld.global.f32 %f94, [%rd59+0];\n" -" add.ftz.f32 %f95, %f94, %f30;\n" -" st.global.f32 [%rd59+0], %f95;\n" -" cvt.s64.s32 %rd60, %r15;\n" -" mul.wide.s32 %rd61, %r15, 4;\n" -" add.u64 %rd59, %rd59, %rd61;\n" -"$Lt_3_29698:\n" -" ld.param.s32 %r54, [__cudaparm_kernel_lj_fast_vflag];\n" -" mov.u32 %r55, 0;\n" -" setp.le.s32 %p20, %r54, %r55;\n" -" @%p20 bra $Lt_3_30210;\n" -" ld.global.f32 %f96, [%rd59+0];\n" -" mov.f32 %f97, %f11;\n" -" add.ftz.f32 %f98, %f96, %f97;\n" -" st.global.f32 [%rd59+0], %f98;\n" -" cvt.s64.s32 %rd62, %r15;\n" -" mul.wide.s32 %rd63, %r15, 4;\n" -" add.u64 %rd64, %rd63, %rd59;\n" -" ld.global.f32 %f99, [%rd64+0];\n" -" mov.f32 %f100, %f13;\n" -" add.ftz.f32 %f101, %f99, %f100;\n" -" st.global.f32 [%rd64+0], %f101;\n" -" add.u64 %rd65, %rd63, %rd64;\n" -" ld.global.f32 %f102, [%rd65+0];\n" -" mov.f32 %f103, %f15;\n" -" add.ftz.f32 %f104, %f102, %f103;\n" -" st.global.f32 [%rd65+0], %f104;\n" -" add.u64 %rd66, %rd63, %rd65;\n" -" ld.global.f32 %f105, [%rd66+0];\n" -" mov.f32 %f106, %f17;\n" -" add.ftz.f32 %f107, %f105, %f106;\n" -" st.global.f32 [%rd66+0], %f107;\n" -" add.u64 %rd67, %rd63, %rd66;\n" -" ld.global.f32 %f108, [%rd67+0];\n" -" mov.f32 %f109, %f19;\n" -" add.ftz.f32 %f110, %f108, %f109;\n" -" st.global.f32 [%rd67+0], %f110;\n" -" add.u64 %rd59, %rd63, %rd67;\n" -" ld.global.f32 %f111, [%rd59+0];\n" -" mov.f32 %f112, %f21;\n" -" add.ftz.f32 %f113, %f111, %f112;\n" -" st.global.f32 [%rd59+0], %f113;\n" -"$Lt_3_30210:\n" -" ld.param.u64 %rd68, [__cudaparm_kernel_lj_fast_ans];\n" -" mul.lo.u64 %rd69, %rd17, 16;\n" -" add.u64 %rd70, %rd68, %rd69;\n" -" ld.global.v4.f32 {%f114,%f115,%f116,%f117}, [%rd70+0];\n" -" add.ftz.f32 %f118, %f115, %f28;\n" -" add.ftz.f32 %f119, %f116, %f27;\n" -" add.ftz.f32 %f120, %f114, %f29;\n" -" st.global.v4.f32 [%rd70+0], {%f120,%f118,%f119,%f117};\n" -"$Lt_3_29186:\n" -"$Lt_3_22530:\n" -" .loc 17 695 0\n" -" exit;\n" -"$LDWend_kernel_lj_fast:\n" -" }\n" -; diff --git a/lib/gpu/re_squared_ptx.h b/lib/gpu/re_squared_ptx.h deleted file mode 100644 index 9343fc5cae..0000000000 --- a/lib/gpu/re_squared_ptx.h +++ /dev/null @@ -1,2306 +0,0 @@ -const char * re_squared = -" .version 2.3\n" -" .target sm_20\n" -" .address_size 64\n" -" .entry kernel_ellipsoid (\n" -" .param .u64 __cudaparm_kernel_ellipsoid_x_,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_q,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_shape,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_well,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_splj,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_sig_eps,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_ntypes,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_dev_nbor,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_stride,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_ans,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_astride,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_engv,\n" -" .param .u64 __cudaparm_kernel_ellipsoid_err_flag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_eflag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_vflag,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_inum,\n" -" .param .s32 __cudaparm_kernel_ellipsoid_t_per_atom)\n" -" {\n" -" .reg .u32 %r<65>;\n" -" .reg .u64 %rd<78>;\n" -" .reg .f32 %f<1598>;\n" -" .reg .pred %p<34>;\n" -" .shared .align 16 .b8 __cuda___cuda_local_var_32902_33_non_const_sp_lj120[16];\n" -" .shared .align 4 .b8 __cuda___cuda_local_var_33303_55_non_const_red_acc136[3584];\n" -" .shared .f32 __cuda_local_var_32908_33_non_const_b_alpha;\n" -" .shared .f32 __cuda_local_var_32908_42_non_const_cr60;\n" -" .loc 17 43 0\n" -"$LDWbegin_kernel_ellipsoid:\n" -" .loc 17 48 0\n" -" ld.param.u64 %rd1, [__cudaparm_kernel_ellipsoid_splj];\n" -" ldu.global.f32 %f1, [%rd1+0];\n" -" .loc 17 49 0\n" -" ld.global.f32 %f2, [%rd1+4];\n" -" .loc 17 50 0\n" -" ld.global.f32 %f3, [%rd1+8];\n" -" .loc 17 51 0\n" -" ld.global.f32 %f4, [%rd1+12];\n" -" st.shared.v4.f32 [__cuda___cuda_local_var_32902_33_non_const_sp_lj120+0], {%f1,%f2,%f3,%f4};\n" -" .loc 17 54 0\n" -" mov.f32 %f5, 0f3f4db6db; \n" -" st.shared.f32 [__cuda_local_var_32908_33_non_const_b_alpha], %f5;\n" -" .loc 17 55 0\n" -" mov.f32 %f6, 0f42700000; \n" -" lg2.approx.ftz.f32 %f7, %f6;\n" -" mov.f32 %f8, 0f3eaaaaab; \n" -" mul.ftz.f32 %f9, %f7, %f8;\n" -" ex2.approx.ftz.f32 %f10, %f9;\n" -" mov.f32 %f11, 0f42700000; \n" -" mul.ftz.f32 %f12, %f10, %f10;\n" -" div.approx.ftz.f32 %f13, %f11, %f12;\n" -" sub.ftz.f32 %f14, %f10, %f13;\n" -" mov.f32 %f15, 0f3eaaaaab; \n" -" mul.ftz.f32 %f16, %f14, %f15;\n" -" sub.ftz.f32 %f17, %f10, %f16;\n" -" st.shared.f32 [__cuda_local_var_32908_42_non_const_cr60], %f17;\n" -" .loc 17 68 0\n" -" mov.f32 %f18, 0f00000000; \n" -" mov.f32 %f19, %f18;\n" -" mov.f32 %f20, 0f00000000; \n" -" mov.f32 %f21, %f20;\n" -" mov.f32 %f22, 0f00000000; \n" -" mov.f32 %f23, %f22;\n" -" mov.f32 %f24, 0f00000000; \n" -" mov.f32 %f25, %f24;\n" -" mov.f32 %f26, 0f00000000; \n" -" mov.f32 %f27, %f26;\n" -" mov.f32 %f28, 0f00000000; \n" -" mov.f32 %f29, %f28;\n" -" ld.param.s32 %r1, [__cudaparm_kernel_ellipsoid_t_per_atom];\n" -" cvt.s32.u32 %r2, %tid.x;\n" -" div.s32 %r3, %r2, %r1;\n" -" cvt.s32.u32 %r4, %ntid.x;\n" -" div.s32 %r5, %r4, %r1;\n" -" cvt.s32.u32 %r6, %ctaid.x;\n" -" mul.lo.s32 %r7, %r6, %r5;\n" -" add.s32 %r8, %r3, %r7;\n" -" ld.param.s32 %r9, [__cudaparm_kernel_ellipsoid_inum];\n" -" setp.le.s32 %p1, %r9, %r8;\n" -" @%p1 bra $Lt_0_67842;\n" -" .loc 17 73 0\n" -" cvt.s64.s32 %rd2, %r8;\n" -" mul.wide.s32 %rd3, %r8, 4;\n" -" ld.param.u64 %rd4, [__cudaparm_kernel_ellipsoid_dev_nbor];\n" -" add.u64 %rd5, %rd4, %rd3;\n" -" ld.global.s32 %r10, [%rd5+0];\n" -" ld.param.s32 %r11, [__cudaparm_kernel_ellipsoid_stride];\n" -" cvt.s64.s32 %rd6, %r11;\n" -" mul.wide.s32 %rd7, %r11, 4;\n" -" add.u64 %rd8, %rd7, %rd5;\n" -" ld.global.s32 %r12, [%rd8+0];\n" -" .loc 17 76 0\n" -" cvt.s64.s32 %rd9, %r10;\n" -" mul.wide.s32 %rd10, %r10, 16;\n" -" ld.param.u64 %rd11, [__cudaparm_kernel_ellipsoid_x_];\n" -" add.u64 %rd12, %rd10, %rd11;\n" -" ld.global.v4.f32 {%f30,%f31,%f32,%f33}, [%rd12+0];\n" -" .loc 17 88 0\n" -" cvt.rzi.ftz.s32.f32 %r13, %f33;\n" -" cvt.s64.s32 %rd13, %r13;\n" -" mul.wide.s32 %rd14, %r13, 16;\n" -" ld.param.u64 %rd15, [__cudaparm_kernel_ellipsoid_shape];\n" -" add.u64 %rd16, %rd14, %rd15;\n" -" ld.global.v4.f32 {%f34,%f35,%f36,_}, [%rd16+0];\n" -" .loc 17 97 0\n" -" ld.param.u64 %rd17, [__cudaparm_kernel_ellipsoid_q];\n" -" add.u64 %rd18, %rd10, %rd17;\n" -" ld.global.v4.f32 {%f37,%f38,%f39,%f40}, [%rd18+0];\n" -" .loc 17 98 0\n" -" ld.param.u64 %rd19, [__cudaparm_kernel_ellipsoid_well];\n" -" add.u64 %rd20, %rd14, %rd19;\n" -" ld.global.v4.f32 {%f41,%f42,%f43,_}, [%rd20+0];\n" -" .loc 17 117 0\n" -" cvt.s32.s64 %r14, %rd6;\n" -" sub.s32 %r15, %r1, 1;\n" -" and.b32 %r16, %r15, %r2;\n" -" add.u64 %rd21, %rd7, %rd8;\n" -" mul.lo.s32 %r17, %r14, %r16;\n" -" cvt.s64.s32 %rd22, %r17;\n" -" mul.wide.s32 %rd23, %r17, 4;\n" -" add.u64 %rd24, %rd21, %rd23;\n" -" mov.s64 %rd25, %rd24;\n" -" mul.lo.s32 %r18, %r14, %r12;\n" -" cvt.s64.s32 %rd26, %r18;\n" -" mul.wide.s32 %rd27, %r18, 4;\n" -" add.u64 %rd28, %rd21, %rd27;\n" -" setp.ge.u64 %p2, %rd24, %rd28;\n" -" @%p2 bra $Lt_0_69634;\n" -" ld.param.s32 %r19, [__cudaparm_kernel_ellipsoid_vflag];\n" -" mov.s32 %r20, 0;\n" -" setp.gt.s32 %p3, %r19, %r20;\n" -" mul.ftz.f32 %f44, %f35, %f35;\n" -" add.ftz.f32 %f45, %f38, %f38;\n" -" add.ftz.f32 %f46, %f40, %f40;\n" -" mul.ftz.f32 %f47, %f37, %f37;\n" -" mul.ftz.f32 %f48, %f38, %f38;\n" -" mul.ftz.f32 %f49, %f39, %f39;\n" -" mul.ftz.f32 %f50, %f40, %f40;\n" -" mul.ftz.f32 %f51, %f34, %f34;\n" -" add.ftz.f32 %f52, %f39, %f39;\n" -" mul.ftz.f32 %f53, %f36, %f36;\n" -" mul.ftz.f32 %f54, %f34, %f35;\n" -" add.ftz.f32 %f55, %f34, %f34;\n" -" add.ftz.f32 %f56, %f35, %f35;\n" -" add.ftz.f32 %f57, %f36, %f36;\n" -" ld.param.s32 %r21, [__cudaparm_kernel_ellipsoid_ntypes];\n" -" mul.lo.s32 %r22, %r21, %r13;\n" -" rcp.approx.ftz.f32 %f58, %f44;\n" -" mul.ftz.f32 %f59, %f45, %f39;\n" -" mul.ftz.f32 %f60, %f45, %f40;\n" -" mul.ftz.f32 %f61, %f45, %f37;\n" -" mul.ftz.f32 %f62, %f46, %f37;\n" -" add.ftz.f32 %f63, %f47, %f48;\n" -" sub.ftz.f32 %f64, %f47, %f48;\n" -" rcp.approx.ftz.f32 %f65, %f51;\n" -" mul.ftz.f32 %f66, %f52, %f37;\n" -" mul.ftz.f32 %f67, %f52, %f40;\n" -" rcp.approx.ftz.f32 %f68, %f53;\n" -" mul.ftz.f32 %f69, %f54, %f36;\n" -" sub.ftz.f32 %f70, %f59, %f62;\n" -" add.ftz.f32 %f71, %f59, %f62;\n" -" sub.ftz.f32 %f72, %f62, %f59;\n" -" sub.ftz.f32 %f73, %f63, %f49;\n" -" add.ftz.f32 %f74, %f49, %f64;\n" -" sub.ftz.f32 %f75, %f64, %f49;\n" -" add.ftz.f32 %f76, %f60, %f66;\n" -" sub.ftz.f32 %f77, %f60, %f66;\n" -" sub.ftz.f32 %f78, %f66, %f60;\n" -" sub.ftz.f32 %f79, %f67, %f61;\n" -" add.ftz.f32 %f80, %f61, %f67;\n" -" sub.ftz.f32 %f81, %f61, %f67;\n" -" mul.ftz.f32 %f82, %f44, %f70;\n" -" mul.ftz.f32 %f83, %f70, %f42;\n" -" mul.ftz.f32 %f84, %f51, %f71;\n" -" mul.ftz.f32 %f85, %f71, %f41;\n" -" neg.ftz.f32 %f86, %f71;\n" -" sub.ftz.f32 %f87, %f73, %f50;\n" -" sub.ftz.f32 %f88, %f50, %f73;\n" -" sub.ftz.f32 %f89, %f74, %f50;\n" -" sub.ftz.f32 %f90, %f50, %f74;\n" -" add.ftz.f32 %f91, %f50, %f75;\n" -" mul.ftz.f32 %f92, %f53, %f76;\n" -" mul.ftz.f32 %f93, %f76, %f43;\n" -" neg.ftz.f32 %f94, %f76;\n" -" mul.ftz.f32 %f95, %f51, %f77;\n" -" mul.ftz.f32 %f96, %f77, %f41;\n" -" mul.ftz.f32 %f97, %f53, %f79;\n" -" mul.ftz.f32 %f98, %f79, %f43;\n" -" mul.ftz.f32 %f99, %f44, %f80;\n" -" mul.ftz.f32 %f100, %f80, %f42;\n" -" mul.ftz.f32 %f101, %f70, %f82;\n" -" mul.ftz.f32 %f102, %f80, %f82;\n" -" mul.ftz.f32 %f103, %f72, %f82;\n" -" mul.ftz.f32 %f104, %f70, %f83;\n" -" mul.ftz.f32 %f105, %f80, %f83;\n" -" mov.f32 %f106, 0f00000000; \n" -" mov.f32 %f107, 0f00000000; \n" -" fma.rn.ftz.f32 %f108, %f107, %f84, %f106;\n" -" mov.f32 %f109, 0f00000000; \n" -" mov.f32 %f110, 0f00000000; \n" -" fma.rn.ftz.f32 %f111, %f84, %f110, %f109;\n" -" mul.ftz.f32 %f112, %f51, %f87;\n" -" mul.ftz.f32 %f113, %f87, %f41;\n" -" mul.ftz.f32 %f114, %f82, %f89;\n" -" mul.ftz.f32 %f115, %f44, %f89;\n" -" mul.ftz.f32 %f116, %f83, %f89;\n" -" mul.ftz.f32 %f117, %f89, %f42;\n" -" mul.ftz.f32 %f118, %f82, %f90;\n" -" mul.ftz.f32 %f119, %f53, %f91;\n" -" mul.ftz.f32 %f120, %f91, %f43;\n" -" neg.ftz.f32 %f121, %f91;\n" -" mov.f32 %f122, 0f00000000; \n" -" mov.f32 %f123, 0f00000000; \n" -" fma.rn.ftz.f32 %f124, %f123, %f95, %f122;\n" -" mov.f32 %f125, 0f00000000; \n" -" mov.f32 %f126, 0f00000000; \n" -" fma.rn.ftz.f32 %f127, %f95, %f126, %f125;\n" -" mul.ftz.f32 %f128, %f70, %f99;\n" -" mul.ftz.f32 %f129, %f89, %f99;\n" -" mul.ftz.f32 %f130, %f80, %f99;\n" -" mul.ftz.f32 %f131, %f72, %f99;\n" -" mul.ftz.f32 %f132, %f90, %f99;\n" -" mul.ftz.f32 %f133, %f70, %f100;\n" -" mul.ftz.f32 %f134, %f89, %f100;\n" -" mul.ftz.f32 %f135, %f80, %f100;\n" -" neg.ftz.f32 %f136, %f102;\n" -" mov.f32 %f137, 0f00000000; \n" -" fma.rn.ftz.f32 %f138, %f137, %f97, %f108;\n" -" mov.f32 %f139, 0f00000000; \n" -" fma.rn.ftz.f32 %f140, %f97, %f139, %f108;\n" -" mov.f32 %f141, 0f00000000; \n" -" fma.rn.ftz.f32 %f142, %f97, %f141, %f111;\n" -" fma.rn.ftz.f32 %f143, %f87, %f112, %f101;\n" -" fma.rn.ftz.f32 %f144, %f112, %f77, %f102;\n" -" mov.f32 %f145, 0f00000000; \n" -" mov.f32 %f146, 0f00000000; \n" -" fma.rn.ftz.f32 %f147, %f146, %f112, %f145;\n" -" mov.f32 %f148, 0f00000000; \n" -" mov.f32 %f149, 0f00000000; \n" -" fma.rn.ftz.f32 %f150, %f112, %f149, %f148;\n" -" fma.rn.ftz.f32 %f151, %f77, %f112, %f102;\n" -" fma.rn.ftz.f32 %f152, %f112, %f88, %f103;\n" -" fma.rn.ftz.f32 %f153, %f112, %f87, %f101;\n" -" fma.rn.ftz.f32 %f154, %f87, %f113, %f104;\n" -" fma.rn.ftz.f32 %f155, %f113, %f77, %f105;\n" -" fma.rn.ftz.f32 %f156, %f112, %f71, %f114;\n" -" mul.ftz.f32 %f157, %f70, %f115;\n" -" mul.ftz.f32 %f158, %f89, %f115;\n" -" mul.ftz.f32 %f159, %f80, %f115;\n" -" mul.ftz.f32 %f160, %f72, %f115;\n" -" mul.ftz.f32 %f161, %f90, %f115;\n" -" fma.rn.ftz.f32 %f162, %f113, %f71, %f116;\n" -" mul.ftz.f32 %f163, %f70, %f117;\n" -" mul.ftz.f32 %f164, %f89, %f117;\n" -" mul.ftz.f32 %f165, %f80, %f117;\n" -" fma.rn.ftz.f32 %f166, %f112, %f86, %f118;\n" -" fma.rn.ftz.f32 %f167, %f86, %f112, %f118;\n" -" mov.f32 %f168, 0f00000000; \n" -" fma.rn.ftz.f32 %f169, %f168, %f119, %f124;\n" -" mov.f32 %f170, 0f00000000; \n" -" fma.rn.ftz.f32 %f171, %f119, %f170, %f127;\n" -" fma.rn.ftz.f32 %f172, %f87, %f95, %f128;\n" -" fma.rn.ftz.f32 %f173, %f71, %f95, %f129;\n" -" fma.rn.ftz.f32 %f174, %f95, %f71, %f129;\n" -" fma.rn.ftz.f32 %f175, %f77, %f95, %f130;\n" -" neg.ftz.f32 %f176, %f130;\n" -" fma.rn.ftz.f32 %f177, %f95, %f88, %f131;\n" -" fma.rn.ftz.f32 %f178, %f88, %f95, %f131;\n" -" fma.rn.ftz.f32 %f179, %f86, %f95, %f132;\n" -" fma.rn.ftz.f32 %f180, %f87, %f96, %f133;\n" -" fma.rn.ftz.f32 %f181, %f71, %f96, %f134;\n" -" fma.rn.ftz.f32 %f182, %f77, %f96, %f135;\n" -" fma.rn.ftz.f32 %f183, %f112, %f78, %f136;\n" -" add.ftz.f32 %f184, %f140, %f142;\n" -" fma.rn.ftz.f32 %f185, %f92, %f76, %f143;\n" -" fma.rn.ftz.f32 %f186, %f92, %f91, %f144;\n" -" mov.f32 %f187, 0f00000000; \n" -" fma.rn.ftz.f32 %f188, %f92, %f187, %f147;\n" -" mov.f32 %f189, 0f00000000; \n" -" fma.rn.ftz.f32 %f190, %f92, %f189, %f150;\n" -" fma.rn.ftz.f32 %f191, %f92, %f91, %f151;\n" -" fma.rn.ftz.f32 %f192, %f92, %f94, %f152;\n" -" fma.rn.ftz.f32 %f193, %f92, %f76, %f153;\n" -" fma.rn.ftz.f32 %f194, %f93, %f76, %f154;\n" -" fma.rn.ftz.f32 %f195, %f93, %f91, %f155;\n" -" fma.rn.ftz.f32 %f196, %f92, %f79, %f156;\n" -" fma.rn.ftz.f32 %f197, %f87, %f84, %f157;\n" -" fma.rn.ftz.f32 %f198, %f84, %f87, %f157;\n" -" fma.rn.ftz.f32 %f199, %f71, %f84, %f158;\n" -" fma.rn.ftz.f32 %f200, %f84, %f71, %f158;\n" -" fma.rn.ftz.f32 %f201, %f77, %f84, %f159;\n" -" neg.ftz.f32 %f202, %f159;\n" -" fma.rn.ftz.f32 %f203, %f88, %f84, %f160;\n" -" fma.rn.ftz.f32 %f204, %f84, %f88, %f160;\n" -" fma.rn.ftz.f32 %f205, %f86, %f84, %f161;\n" -" fma.rn.ftz.f32 %f206, %f93, %f79, %f162;\n" -" fma.rn.ftz.f32 %f207, %f87, %f85, %f163;\n" -" fma.rn.ftz.f32 %f208, %f71, %f85, %f164;\n" -" fma.rn.ftz.f32 %f209, %f77, %f85, %f165;\n" -" fma.rn.ftz.f32 %f210, %f92, %f81, %f166;\n" -" fma.rn.ftz.f32 %f211, %f92, %f81, %f167;\n" -" add.ftz.f32 %f212, %f169, %f171;\n" -" fma.rn.ftz.f32 %f213, %f76, %f119, %f172;\n" -" fma.rn.ftz.f32 %f214, %f79, %f119, %f173;\n" -" fma.rn.ftz.f32 %f215, %f119, %f79, %f174;\n" -" fma.rn.ftz.f32 %f216, %f91, %f119, %f175;\n" -" fma.rn.ftz.f32 %f217, %f78, %f95, %f176;\n" -" fma.rn.ftz.f32 %f218, %f119, %f94, %f177;\n" -" fma.rn.ftz.f32 %f219, %f94, %f119, %f178;\n" -" fma.rn.ftz.f32 %f220, %f81, %f119, %f179;\n" -" fma.rn.ftz.f32 %f221, %f76, %f120, %f180;\n" -" fma.rn.ftz.f32 %f222, %f79, %f120, %f181;\n" -" fma.rn.ftz.f32 %f223, %f91, %f120, %f182;\n" -" fma.rn.ftz.f32 %f224, %f92, %f121, %f183;\n" -" add.ftz.f32 %f225, %f188, %f190;\n" -" add.ftz.f32 %f226, %f186, %f191;\n" -" add.ftz.f32 %f227, %f169, %f196;\n" -" fma.rn.ftz.f32 %f228, %f97, %f76, %f197;\n" -" fma.rn.ftz.f32 %f229, %f97, %f76, %f198;\n" -" fma.rn.ftz.f32 %f230, %f97, %f79, %f199;\n" -" fma.rn.ftz.f32 %f231, %f97, %f79, %f200;\n" -" fma.rn.ftz.f32 %f232, %f97, %f91, %f201;\n" -" fma.rn.ftz.f32 %f233, %f91, %f97, %f201;\n" -" fma.rn.ftz.f32 %f234, %f84, %f78, %f202;\n" -" fma.rn.ftz.f32 %f235, %f78, %f84, %f202;\n" -" fma.rn.ftz.f32 %f236, %f97, %f94, %f203;\n" -" fma.rn.ftz.f32 %f237, %f97, %f94, %f204;\n" -" fma.rn.ftz.f32 %f238, %f81, %f97, %f205;\n" -" fma.rn.ftz.f32 %f239, %f97, %f81, %f205;\n" -" fma.rn.ftz.f32 %f240, %f98, %f76, %f207;\n" -" fma.rn.ftz.f32 %f241, %f98, %f79, %f208;\n" -" fma.rn.ftz.f32 %f242, %f98, %f91, %f209;\n" -" add.ftz.f32 %f243, %f210, %f211;\n" -" add.ftz.f32 %f244, %f140, %f213;\n" -" add.ftz.f32 %f245, %f142, %f213;\n" -" add.ftz.f32 %f246, %f214, %f215;\n" -" add.ftz.f32 %f247, %f192, %f216;\n" -" fma.rn.ftz.f32 %f248, %f121, %f119, %f217;\n" -" add.ftz.f32 %f249, %f218, %f219;\n" -" add.ftz.f32 %f250, %f190, %f220;\n" -" add.ftz.f32 %f251, %f138, %f224;\n" -" add.ftz.f32 %f252, %f140, %f224;\n" -" add.ftz.f32 %f253, %f228, %f229;\n" -" add.ftz.f32 %f254, %f190, %f232;\n" -" add.ftz.f32 %f255, %f190, %f233;\n" -" fma.rn.ftz.f32 %f256, %f97, %f121, %f234;\n" -" fma.rn.ftz.f32 %f257, %f97, %f121, %f235;\n" -" add.ftz.f32 %f258, %f169, %f236;\n" -" add.ftz.f32 %f259, %f169, %f237;\n" -" add.ftz.f32 %f260, %f193, %f238;\n" -" add.ftz.f32 %f261, %f193, %f239;\n" -" add.ftz.f32 %f262, %f230, %f248;\n" -" add.ftz.f32 %f263, %f231, %f248;\n" -" add.ftz.f32 %f264, %f256, %f257;\n" -" ld.param.u64 %rd29, [__cudaparm_kernel_ellipsoid_sig_eps];\n" -" mov.f32 %f265, 0f00000000; \n" -" mov.f32 %f266, 0f00000000; \n" -" mov.f32 %f267, 0f00000000; \n" -" mov.f32 %f268, 0f00000000; \n" -" mov.f32 %f269, 0f00000000; \n" -" mov.f32 %f270, 0f00000000; \n" -" mov.f32 %f271, 0f00000000; \n" -" mov.u64 %rd30, __cuda___cuda_local_var_32902_33_non_const_sp_lj120;\n" -"$Lt_0_46338:\n" -" .loc 17 121 0\n" -" ld.global.s32 %r23, [%rd25+0];\n" -" .loc 17 125 0\n" -" and.b32 %r24, %r23, 1073741823;\n" -" cvt.s64.s32 %rd31, %r24;\n" -" mul.wide.s32 %rd32, %r24, 16;\n" -" add.u64 %rd33, %rd32, %rd11;\n" -" ld.global.v4.f32 {%f272,%f273,%f274,%f275}, [%rd33+0];\n" -" .loc 17 136 0\n" -" sub.ftz.f32 %f276, %f273, %f31;\n" -" sub.ftz.f32 %f277, %f272, %f30;\n" -" sub.ftz.f32 %f278, %f274, %f32;\n" -" mul.ftz.f32 %f279, %f276, %f276;\n" -" fma.rn.ftz.f32 %f280, %f277, %f277, %f279;\n" -" fma.rn.ftz.f32 %f281, %f278, %f278, %f280;\n" -" rsqrt.approx.ftz.f32 %f282, %f281;\n" -" mul.ftz.f32 %f283, %f277, %f282;\n" -" .loc 17 137 0\n" -" mul.ftz.f32 %f284, %f276, %f282;\n" -" .loc 17 145 0\n" -" cvt.rzi.ftz.s32.f32 %r25, %f275;\n" -" cvt.s64.s32 %rd34, %r25;\n" -" mul.wide.s32 %rd35, %r25, 16;\n" -" add.u64 %rd36, %rd35, %rd15;\n" -" ld.global.v4.f32 {%f285,%f286,%f287,_}, [%rd36+0];\n" -" .loc 17 152 0\n" -" add.u64 %rd37, %rd32, %rd17;\n" -" ld.global.v4.f32 {%f288,%f289,%f290,%f291}, [%rd37+0];\n" -" .loc 16 299 0\n" -" mov.f32 %f292, %f283;\n" -" .loc 16 300 0\n" -" mul.ftz.f32 %f293, %f286, %f286;\n" -" add.ftz.f32 %f294, %f289, %f289;\n" -" add.ftz.f32 %f295, %f291, %f291;\n" -" mul.ftz.f32 %f296, %f288, %f288;\n" -" mul.ftz.f32 %f297, %f289, %f289;\n" -" mul.ftz.f32 %f298, %f290, %f290;\n" -" mul.ftz.f32 %f299, %f291, %f291;\n" -" mul.ftz.f32 %f300, %f285, %f285;\n" -" add.ftz.f32 %f301, %f290, %f290;\n" -" mul.ftz.f32 %f302, %f287, %f287;\n" -" mul.ftz.f32 %f303, %f294, %f290;\n" -" mul.ftz.f32 %f304, %f294, %f291;\n" -" mul.ftz.f32 %f305, %f295, %f288;\n" -" add.ftz.f32 %f306, %f296, %f297;\n" -" mul.ftz.f32 %f307, %f301, %f288;\n" -" sub.ftz.f32 %f308, %f303, %f305;\n" -" sub.ftz.f32 %f309, %f306, %f298;\n" -" add.ftz.f32 %f310, %f304, %f307;\n" -" mul.ftz.f32 %f311, %f293, %f308;\n" -" sub.ftz.f32 %f312, %f309, %f299;\n" -" mul.ftz.f32 %f313, %f302, %f310;\n" -" mul.ftz.f32 %f314, %f308, %f311;\n" -" mul.ftz.f32 %f315, %f300, %f312;\n" -" fma.rn.ftz.f32 %f316, %f312, %f315, %f314;\n" -" fma.rn.ftz.f32 %f317, %f313, %f310, %f316;\n" -" add.ftz.f32 %f318, %f185, %f317;\n" -" mov.f32 %f319, %f318;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f320, %f294, %f288;\n" -" sub.ftz.f32 %f321, %f296, %f297;\n" -" mul.ftz.f32 %f322, %f301, %f291;\n" -" add.ftz.f32 %f323, %f303, %f305;\n" -" add.ftz.f32 %f324, %f298, %f321;\n" -" sub.ftz.f32 %f325, %f322, %f320;\n" -" sub.ftz.f32 %f326, %f324, %f299;\n" -" mul.ftz.f32 %f327, %f311, %f326;\n" -" fma.rn.ftz.f32 %f328, %f315, %f323, %f327;\n" -" fma.rn.ftz.f32 %f329, %f313, %f325, %f328;\n" -" add.ftz.f32 %f330, %f196, %f329;\n" -" mov.f32 %f331, %f330;\n" -" .loc 16 302 0\n" -" sub.ftz.f32 %f332, %f321, %f298;\n" -" sub.ftz.f32 %f333, %f304, %f307;\n" -" add.ftz.f32 %f334, %f320, %f322;\n" -" add.ftz.f32 %f335, %f299, %f332;\n" -" mul.ftz.f32 %f336, %f334, %f311;\n" -" fma.rn.ftz.f32 %f337, %f315, %f333, %f336;\n" -" fma.rn.ftz.f32 %f338, %f313, %f335, %f337;\n" -" add.ftz.f32 %f339, %f186, %f338;\n" -" mov.f32 %f340, %f339;\n" -" .loc 16 303 0\n" -" mov.f32 %f341, %f284;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f342, %f300, %f323;\n" -" mul.ftz.f32 %f343, %f302, %f325;\n" -" mul.ftz.f32 %f344, %f293, %f326;\n" -" mul.ftz.f32 %f345, %f308, %f344;\n" -" fma.rn.ftz.f32 %f346, %f312, %f342, %f345;\n" -" fma.rn.ftz.f32 %f347, %f343, %f310, %f346;\n" -" add.ftz.f32 %f348, %f228, %f347;\n" -" mov.f32 %f349, %f348;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f350, %f326, %f344;\n" -" fma.rn.ftz.f32 %f351, %f323, %f342, %f350;\n" -" fma.rn.ftz.f32 %f352, %f343, %f325, %f351;\n" -" add.ftz.f32 %f353, %f230, %f352;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f354, %f334, %f344;\n" -" fma.rn.ftz.f32 %f355, %f333, %f342, %f354;\n" -" fma.rn.ftz.f32 %f356, %f343, %f335, %f355;\n" -" add.ftz.f32 %f357, %f232, %f356;\n" -" .loc 16 307 0\n" -" mul.ftz.f32 %f358, %f278, %f282;\n" -" mov.f32 %f359, %f358;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f360, %f300, %f333;\n" -" mul.ftz.f32 %f361, %f293, %f334;\n" -" mul.ftz.f32 %f362, %f302, %f335;\n" -" mul.ftz.f32 %f363, %f308, %f361;\n" -" fma.rn.ftz.f32 %f364, %f312, %f360, %f363;\n" -" fma.rn.ftz.f32 %f365, %f310, %f362, %f364;\n" -" add.ftz.f32 %f366, %f213, %f365;\n" -" mov.f32 %f367, %f366;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f368, %f326, %f361;\n" -" fma.rn.ftz.f32 %f369, %f323, %f360, %f368;\n" -" fma.rn.ftz.f32 %f370, %f325, %f362, %f369;\n" -" add.ftz.f32 %f371, %f214, %f370;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f372, %f334, %f361;\n" -" fma.rn.ftz.f32 %f373, %f333, %f360, %f372;\n" -" fma.rn.ftz.f32 %f374, %f335, %f362, %f373;\n" -" add.ftz.f32 %f375, %f216, %f374;\n" -" abs.ftz.f32 %f376, %f348;\n" -" abs.ftz.f32 %f377, %f318;\n" -" setp.gt.ftz.f32 %p4, %f376, %f377;\n" -" @!%p4 bra $Lt_0_46594;\n" -" .loc 16 314 0\n" -" mov.f32 %f319, %f348;\n" -" mov.f32 %f349, %f318;\n" -" .loc 16 315 0\n" -" mov.f32 %f331, %f353;\n" -" mov.f32 %f353, %f330;\n" -" .loc 16 316 0\n" -" mov.f32 %f340, %f357;\n" -" mov.f32 %f357, %f339;\n" -" .loc 16 317 0\n" -" mov.f32 %f292, %f284;\n" -" mov.f32 %f341, %f283;\n" -"$Lt_0_46594:\n" -" mov.f32 %f378, %f319;\n" -" abs.ftz.f32 %f379, %f378;\n" -" abs.ftz.f32 %f380, %f366;\n" -" setp.lt.ftz.f32 %p5, %f379, %f380;\n" -" @!%p5 bra $Lt_0_47106;\n" -" .loc 16 321 0\n" -" mov.f32 %f319, %f366;\n" -" mov.f32 %f367, %f378;\n" -" .loc 16 322 0\n" -" mov.f32 %f381, %f331;\n" -" mov.f32 %f331, %f371;\n" -" mov.f32 %f371, %f381;\n" -" .loc 16 323 0\n" -" mov.f32 %f382, %f340;\n" -" mov.f32 %f340, %f375;\n" -" mov.f32 %f375, %f382;\n" -" .loc 16 324 0\n" -" mov.f32 %f383, %f292;\n" -" mov.f32 %f292, %f358;\n" -" mov.f32 %f359, %f383;\n" -"$Lt_0_47106:\n" -" mov.f32 %f384, %f319;\n" -" mov.f32 %f385, 0f00000000; \n" -" setp.neu.ftz.f32 %p6, %f384, %f385;\n" -" @!%p6 bra $Lt_0_47874;\n" -" bra.uni $Lt_0_48642;\n" -"$Lt_0_47874:\n" -" mov.f32 %f386, 0f00000000; \n" -" setp.neu.ftz.f32 %p7, %f349, %f386;\n" -" @!%p7 bra $Lt_0_48386;\n" -" .loc 16 338 0\n" -" mov.f32 %f319, %f349;\n" -" mov.f32 %f349, %f384;\n" -" .loc 16 339 0\n" -" mov.f32 %f387, %f331;\n" -" mov.f32 %f331, %f353;\n" -" mov.f32 %f353, %f387;\n" -" .loc 16 340 0\n" -" mov.f32 %f388, %f340;\n" -" mov.f32 %f340, %f357;\n" -" mov.f32 %f357, %f388;\n" -" .loc 16 341 0\n" -" mov.f32 %f389, %f292;\n" -" mov.f32 %f292, %f341;\n" -" mov.f32 %f341, %f389;\n" -" bra.uni $Lt_0_48642;\n" -"$Lt_0_48386:\n" -" mov.f32 %f390, 0f00000000; \n" -" setp.neu.ftz.f32 %p8, %f367, %f390;\n" -" @!%p8 bra $Lt_0_48898;\n" -" .loc 16 346 0\n" -" mov.f32 %f319, %f367;\n" -" mov.f32 %f367, %f384;\n" -" .loc 16 347 0\n" -" mov.f32 %f391, %f331;\n" -" mov.f32 %f331, %f371;\n" -" mov.f32 %f371, %f391;\n" -" .loc 16 348 0\n" -" mov.f32 %f392, %f340;\n" -" mov.f32 %f340, %f375;\n" -" mov.f32 %f375, %f392;\n" -" .loc 16 349 0\n" -" mov.f32 %f393, %f292;\n" -" mov.f32 %f292, %f359;\n" -" mov.f32 %f359, %f393;\n" -" bra.uni $Lt_0_48642;\n" -"$Lt_0_48898:\n" -" .loc 16 352 0\n" -" mov.s32 %r26, 2;\n" -" ld.param.u64 %rd38, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd38+0], %r26;\n" -"$Lt_0_48642:\n" -"$Lt_0_48130:\n" -"$Lt_0_47618:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f394, %f349, %f319;\n" -" mul.ftz.f32 %f395, %f331, %f394;\n" -" sub.ftz.f32 %f396, %f353, %f395;\n" -" mov.f32 %f353, %f396;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f397, %f340, %f394;\n" -" sub.ftz.f32 %f398, %f357, %f397;\n" -" mov.f32 %f357, %f398;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f399, %f292, %f394;\n" -" sub.ftz.f32 %f400, %f341, %f399;\n" -" mov.f32 %f341, %f400;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f401, %f367, %f319;\n" -" mul.ftz.f32 %f402, %f331, %f401;\n" -" sub.ftz.f32 %f371, %f371, %f402;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f403, %f340, %f401;\n" -" sub.ftz.f32 %f375, %f375, %f403;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f404, %f292, %f401;\n" -" sub.ftz.f32 %f359, %f359, %f404;\n" -" abs.ftz.f32 %f405, %f396;\n" -" abs.ftz.f32 %f406, %f371;\n" -" setp.lt.ftz.f32 %p9, %f405, %f406;\n" -" @!%p9 bra $Lt_0_49154;\n" -" .loc 16 366 0\n" -" mov.f32 %f353, %f371;\n" -" mov.f32 %f371, %f396;\n" -" .loc 16 367 0\n" -" mov.f32 %f357, %f375;\n" -" mov.f32 %f375, %f398;\n" -" .loc 16 368 0\n" -" mov.f32 %f341, %f359;\n" -" mov.f32 %f359, %f400;\n" -"$Lt_0_49154:\n" -" mov.f32 %f407, %f353;\n" -" mov.f32 %f408, 0f00000000; \n" -" setp.neu.ftz.f32 %p10, %f407, %f408;\n" -" @!%p10 bra $Lt_0_49922;\n" -" bra.uni $Lt_0_50178;\n" -"$Lt_0_49922:\n" -" mov.f32 %f409, 0f00000000; \n" -" setp.neu.ftz.f32 %p11, %f371, %f409;\n" -" @!%p11 bra $Lt_0_50178;\n" -" .loc 16 383 0\n" -" mov.f32 %f353, %f371;\n" -" mov.f32 %f371, %f407;\n" -" .loc 16 384 0\n" -" mov.f32 %f410, %f357;\n" -" mov.f32 %f357, %f375;\n" -" mov.f32 %f375, %f410;\n" -" .loc 16 385 0\n" -" mov.f32 %f411, %f341;\n" -" mov.f32 %f341, %f359;\n" -" mov.f32 %f359, %f411;\n" -"$Lt_0_50178:\n" -"$Lt_0_49666:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f412, %f371, %f353;\n" -" mul.ftz.f32 %f413, %f357, %f412;\n" -" sub.ftz.f32 %f375, %f375, %f413;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f414, %f341, %f412;\n" -" sub.ftz.f32 %f359, %f359, %f414;\n" -" mov.f32 %f415, 0f00000000; \n" -" setp.eq.ftz.f32 %p12, %f375, %f415;\n" -" @!%p12 bra $Lt_0_50690;\n" -" .loc 16 394 0\n" -" mov.s32 %r27, 2;\n" -" ld.param.u64 %rd39, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd39+0], %r27;\n" -"$Lt_0_50690:\n" -" .loc 16 396 0\n" -" div.approx.ftz.f32 %f416, %f359, %f375;\n" -" .loc 16 399 0\n" -" mul.ftz.f32 %f417, %f416, %f357;\n" -" sub.ftz.f32 %f418, %f341, %f417;\n" -" div.approx.ftz.f32 %f419, %f418, %f353;\n" -" .loc 16 403 0\n" -" mul.ftz.f32 %f420, %f419, %f331;\n" -" fma.rn.ftz.f32 %f421, %f340, %f416, %f420;\n" -" sub.ftz.f32 %f422, %f292, %f421;\n" -" div.approx.ftz.f32 %f423, %f422, %f319;\n" -" .loc 17 161 0\n" -" mul.ftz.f32 %f424, %f419, %f284;\n" -" fma.rn.ftz.f32 %f425, %f283, %f423, %f424;\n" -" fma.rn.ftz.f32 %f426, %f358, %f416, %f425;\n" -" mov.f32 %f427, 0f3f000000; \n" -" mul.ftz.f32 %f428, %f426, %f427;\n" -" rsqrt.approx.ftz.f32 %f429, %f428;\n" -" .loc 17 170 0\n" -" mul.ftz.f32 %f430, %f89, %f284;\n" -" mul.ftz.f32 %f431, %f71, %f284;\n" -" mul.ftz.f32 %f432, %f79, %f284;\n" -" fma.rn.ftz.f32 %f433, %f283, %f70, %f430;\n" -" fma.rn.ftz.f32 %f434, %f87, %f283, %f431;\n" -" fma.rn.ftz.f32 %f435, %f283, %f76, %f432;\n" -" fma.rn.ftz.f32 %f436, %f358, %f80, %f433;\n" -" fma.rn.ftz.f32 %f437, %f77, %f358, %f434;\n" -" fma.rn.ftz.f32 %f438, %f358, %f91, %f435;\n" -" mul.ftz.f32 %f439, %f58, %f436;\n" -" mul.ftz.f32 %f440, %f65, %f437;\n" -" mul.ftz.f32 %f441, %f68, %f438;\n" -" mul.ftz.f32 %f442, %f436, %f439;\n" -" fma.rn.ftz.f32 %f443, %f437, %f440, %f442;\n" -" fma.rn.ftz.f32 %f444, %f438, %f441, %f443;\n" -" sqrt.approx.ftz.f32 %f445, %f444;\n" -" .loc 17 171 0\n" -" mul.ftz.f32 %f446, %f326, %f284;\n" -" mul.ftz.f32 %f447, %f323, %f284;\n" -" mul.ftz.f32 %f448, %f325, %f284;\n" -" fma.rn.ftz.f32 %f449, %f283, %f308, %f446;\n" -" fma.rn.ftz.f32 %f450, %f283, %f312, %f447;\n" -" fma.rn.ftz.f32 %f451, %f283, %f310, %f448;\n" -" fma.rn.ftz.f32 %f452, %f358, %f334, %f449;\n" -" fma.rn.ftz.f32 %f453, %f358, %f333, %f450;\n" -" fma.rn.ftz.f32 %f454, %f358, %f335, %f451;\n" -" div.approx.ftz.f32 %f455, %f452, %f293;\n" -" div.approx.ftz.f32 %f456, %f453, %f300;\n" -" div.approx.ftz.f32 %f457, %f454, %f302;\n" -" mul.ftz.f32 %f458, %f452, %f455;\n" -" fma.rn.ftz.f32 %f459, %f453, %f456, %f458;\n" -" fma.rn.ftz.f32 %f460, %f454, %f457, %f459;\n" -" sqrt.approx.ftz.f32 %f461, %f460;\n" -" .loc 17 184 0\n" -" mul.ftz.f32 %f462, %f317, %f461;\n" -" mul.ftz.f32 %f463, %f338, %f461;\n" -" mul.ftz.f32 %f464, %f329, %f461;\n" -" mul.ftz.f32 %f465, %f365, %f461;\n" -" mul.ftz.f32 %f466, %f370, %f461;\n" -" mul.ftz.f32 %f467, %f374, %f461;\n" -" fma.rn.ftz.f32 %f468, %f185, %f445, %f462;\n" -" fma.rn.ftz.f32 %f469, %f186, %f445, %f463;\n" -" fma.rn.ftz.f32 %f470, %f196, %f445, %f464;\n" -" mul.ftz.f32 %f471, %f347, %f461;\n" -" mul.ftz.f32 %f472, %f352, %f461;\n" -" mul.ftz.f32 %f473, %f356, %f461;\n" -" fma.rn.ftz.f32 %f474, %f213, %f445, %f465;\n" -" fma.rn.ftz.f32 %f475, %f214, %f445, %f466;\n" -" fma.rn.ftz.f32 %f476, %f216, %f445, %f467;\n" -" fma.rn.ftz.f32 %f477, %f228, %f445, %f471;\n" -" fma.rn.ftz.f32 %f478, %f230, %f445, %f472;\n" -" fma.rn.ftz.f32 %f479, %f232, %f445, %f473;\n" -" mul.ftz.f32 %f480, %f470, %f474;\n" -" mul.ftz.f32 %f481, %f469, %f474;\n" -" mul.ftz.f32 %f482, %f470, %f477;\n" -" mul.ftz.f32 %f483, %f469, %f477;\n" -" mul.ftz.f32 %f484, %f468, %f478;\n" -" mul.ftz.f32 %f485, %f468, %f479;\n" -" mul.ftz.f32 %f486, %f475, %f485;\n" -" mul.ftz.f32 %f487, %f476, %f484;\n" -" sub.ftz.f32 %f488, %f487, %f486;\n" -" mul.ftz.f32 %f489, %f476, %f482;\n" -" sub.ftz.f32 %f490, %f488, %f489;\n" -" fma.rn.ftz.f32 %f491, %f475, %f483, %f490;\n" -" fma.rn.ftz.f32 %f492, %f479, %f480, %f491;\n" -" mul.ftz.f32 %f493, %f478, %f481;\n" -" sub.ftz.f32 %f494, %f492, %f493;\n" -" .loc 17 201 0\n" -" add.s32 %r28, %r25, %r22;\n" -" cvt.s64.s32 %rd40, %r28;\n" -" mul.wide.s32 %rd41, %r28, 8;\n" -" add.u64 %rd42, %rd29, %rd41;\n" -" ld.global.v2.f32 {%f495,%f496}, [%rd42+0];\n" -" .loc 17 202 0\n" -" shr.s32 %r29, %r23, 30;\n" -" and.b32 %r30, %r29, 3;\n" -" cvt.s64.s32 %rd43, %r30;\n" -" mul.wide.s32 %rd44, %r30, 4;\n" -" add.u64 %rd45, %rd30, %rd44;\n" -" ld.shared.f32 %f497, [%rd45+0];\n" -" mul.ftz.f32 %f498, %f497, %f496;\n" -" .loc 17 207 0\n" -" add.u64 %rd46, %rd35, %rd19;\n" -" ld.global.v4.f32 {%f499,%f500,%f501,_}, [%rd46+0];\n" -" .loc 16 299 0\n" -" mov.f32 %f292, %f283;\n" -" .loc 16 300 0\n" -" mul.ftz.f32 %f502, %f308, %f500;\n" -" mul.ftz.f32 %f503, %f310, %f501;\n" -" mul.ftz.f32 %f504, %f308, %f502;\n" -" mul.ftz.f32 %f505, %f312, %f499;\n" -" fma.rn.ftz.f32 %f506, %f312, %f505, %f504;\n" -" fma.rn.ftz.f32 %f507, %f503, %f310, %f506;\n" -" add.ftz.f32 %f508, %f194, %f507;\n" -" mov.f32 %f319, %f508;\n" -" .loc 16 301 0\n" -" mul.ftz.f32 %f509, %f502, %f326;\n" -" fma.rn.ftz.f32 %f510, %f505, %f323, %f509;\n" -" fma.rn.ftz.f32 %f511, %f503, %f325, %f510;\n" -" add.ftz.f32 %f512, %f206, %f511;\n" -" mov.f32 %f331, %f512;\n" -" .loc 16 302 0\n" -" mul.ftz.f32 %f513, %f334, %f502;\n" -" fma.rn.ftz.f32 %f514, %f505, %f333, %f513;\n" -" fma.rn.ftz.f32 %f515, %f503, %f335, %f514;\n" -" add.ftz.f32 %f516, %f195, %f515;\n" -" mov.f32 %f340, %f516;\n" -" .loc 16 303 0\n" -" mov.f32 %f341, %f284;\n" -" .loc 16 304 0\n" -" mul.ftz.f32 %f517, %f323, %f499;\n" -" mul.ftz.f32 %f518, %f325, %f501;\n" -" mul.ftz.f32 %f519, %f326, %f500;\n" -" mul.ftz.f32 %f520, %f308, %f519;\n" -" fma.rn.ftz.f32 %f521, %f312, %f517, %f520;\n" -" fma.rn.ftz.f32 %f522, %f518, %f310, %f521;\n" -" add.ftz.f32 %f523, %f240, %f522;\n" -" mov.f32 %f349, %f523;\n" -" .loc 16 305 0\n" -" mul.ftz.f32 %f524, %f326, %f519;\n" -" fma.rn.ftz.f32 %f525, %f323, %f517, %f524;\n" -" fma.rn.ftz.f32 %f526, %f518, %f325, %f525;\n" -" add.ftz.f32 %f353, %f241, %f526;\n" -" .loc 16 306 0\n" -" mul.ftz.f32 %f527, %f334, %f519;\n" -" fma.rn.ftz.f32 %f528, %f333, %f517, %f527;\n" -" fma.rn.ftz.f32 %f529, %f518, %f335, %f528;\n" -" add.ftz.f32 %f357, %f242, %f529;\n" -" .loc 16 307 0\n" -" mov.f32 %f359, %f358;\n" -" .loc 16 308 0\n" -" mul.ftz.f32 %f530, %f333, %f499;\n" -" mul.ftz.f32 %f531, %f334, %f500;\n" -" mul.ftz.f32 %f532, %f335, %f501;\n" -" mul.ftz.f32 %f533, %f308, %f531;\n" -" fma.rn.ftz.f32 %f534, %f312, %f530, %f533;\n" -" fma.rn.ftz.f32 %f535, %f310, %f532, %f534;\n" -" add.ftz.f32 %f536, %f221, %f535;\n" -" mov.f32 %f367, %f536;\n" -" .loc 16 309 0\n" -" mul.ftz.f32 %f537, %f326, %f531;\n" -" fma.rn.ftz.f32 %f538, %f323, %f530, %f537;\n" -" fma.rn.ftz.f32 %f539, %f325, %f532, %f538;\n" -" add.ftz.f32 %f371, %f222, %f539;\n" -" .loc 16 310 0\n" -" mul.ftz.f32 %f540, %f334, %f531;\n" -" fma.rn.ftz.f32 %f541, %f333, %f530, %f540;\n" -" fma.rn.ftz.f32 %f542, %f335, %f532, %f541;\n" -" add.ftz.f32 %f375, %f223, %f542;\n" -" abs.ftz.f32 %f543, %f523;\n" -" abs.ftz.f32 %f544, %f508;\n" -" setp.gt.ftz.f32 %p13, %f543, %f544;\n" -" @!%p13 bra $Lt_0_51202;\n" -" .loc 16 314 0\n" -" mov.f32 %f319, %f523;\n" -" mov.f32 %f349, %f508;\n" -" .loc 16 315 0\n" -" mov.f32 %f331, %f353;\n" -" mov.f32 %f353, %f512;\n" -" .loc 16 316 0\n" -" mov.f32 %f340, %f357;\n" -" mov.f32 %f357, %f516;\n" -" .loc 16 317 0\n" -" mov.f32 %f292, %f284;\n" -" mov.f32 %f341, %f283;\n" -"$Lt_0_51202:\n" -" mov.f32 %f545, %f319;\n" -" abs.ftz.f32 %f546, %f545;\n" -" abs.ftz.f32 %f547, %f536;\n" -" setp.lt.ftz.f32 %p14, %f546, %f547;\n" -" @!%p14 bra $Lt_0_51714;\n" -" .loc 16 321 0\n" -" mov.f32 %f319, %f536;\n" -" mov.f32 %f367, %f545;\n" -" .loc 16 322 0\n" -" mov.f32 %f548, %f331;\n" -" mov.f32 %f331, %f371;\n" -" mov.f32 %f371, %f548;\n" -" .loc 16 323 0\n" -" mov.f32 %f549, %f340;\n" -" mov.f32 %f340, %f375;\n" -" mov.f32 %f375, %f549;\n" -" .loc 16 324 0\n" -" mov.f32 %f550, %f292;\n" -" mov.f32 %f292, %f358;\n" -" mov.f32 %f359, %f550;\n" -"$Lt_0_51714:\n" -" mov.f32 %f551, %f319;\n" -" mov.f32 %f552, 0f00000000; \n" -" setp.neu.ftz.f32 %p15, %f551, %f552;\n" -" @!%p15 bra $Lt_0_52482;\n" -" bra.uni $Lt_0_53250;\n" -"$Lt_0_52482:\n" -" mov.f32 %f553, 0f00000000; \n" -" setp.neu.ftz.f32 %p16, %f349, %f553;\n" -" @!%p16 bra $Lt_0_52994;\n" -" .loc 16 338 0\n" -" mov.f32 %f319, %f349;\n" -" mov.f32 %f349, %f551;\n" -" .loc 16 339 0\n" -" mov.f32 %f554, %f331;\n" -" mov.f32 %f331, %f353;\n" -" mov.f32 %f353, %f554;\n" -" .loc 16 340 0\n" -" mov.f32 %f555, %f340;\n" -" mov.f32 %f340, %f357;\n" -" mov.f32 %f357, %f555;\n" -" .loc 16 341 0\n" -" mov.f32 %f556, %f292;\n" -" mov.f32 %f292, %f341;\n" -" mov.f32 %f341, %f556;\n" -" bra.uni $Lt_0_53250;\n" -"$Lt_0_52994:\n" -" mov.f32 %f557, 0f00000000; \n" -" setp.neu.ftz.f32 %p17, %f367, %f557;\n" -" @!%p17 bra $Lt_0_53506;\n" -" .loc 16 346 0\n" -" mov.f32 %f319, %f367;\n" -" mov.f32 %f367, %f551;\n" -" .loc 16 347 0\n" -" mov.f32 %f558, %f331;\n" -" mov.f32 %f331, %f371;\n" -" mov.f32 %f371, %f558;\n" -" .loc 16 348 0\n" -" mov.f32 %f559, %f340;\n" -" mov.f32 %f340, %f375;\n" -" mov.f32 %f375, %f559;\n" -" .loc 16 349 0\n" -" mov.f32 %f560, %f292;\n" -" mov.f32 %f292, %f359;\n" -" mov.f32 %f359, %f560;\n" -" bra.uni $Lt_0_53250;\n" -"$Lt_0_53506:\n" -" .loc 16 352 0\n" -" mov.s32 %r31, 2;\n" -" ld.param.u64 %rd47, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd47+0], %r31;\n" -"$Lt_0_53250:\n" -"$Lt_0_52738:\n" -"$Lt_0_52226:\n" -" .loc 16 355 0\n" -" div.approx.ftz.f32 %f561, %f349, %f319;\n" -" mul.ftz.f32 %f562, %f331, %f561;\n" -" sub.ftz.f32 %f563, %f353, %f562;\n" -" mov.f32 %f353, %f563;\n" -" .loc 16 356 0\n" -" mul.ftz.f32 %f564, %f340, %f561;\n" -" sub.ftz.f32 %f565, %f357, %f564;\n" -" mov.f32 %f357, %f565;\n" -" .loc 16 357 0\n" -" mul.ftz.f32 %f566, %f292, %f561;\n" -" sub.ftz.f32 %f567, %f341, %f566;\n" -" mov.f32 %f341, %f567;\n" -" .loc 16 359 0\n" -" div.approx.ftz.f32 %f568, %f367, %f319;\n" -" mul.ftz.f32 %f569, %f331, %f568;\n" -" sub.ftz.f32 %f371, %f371, %f569;\n" -" .loc 16 360 0\n" -" mul.ftz.f32 %f570, %f340, %f568;\n" -" sub.ftz.f32 %f375, %f375, %f570;\n" -" .loc 16 361 0\n" -" mul.ftz.f32 %f571, %f292, %f568;\n" -" sub.ftz.f32 %f359, %f359, %f571;\n" -" abs.ftz.f32 %f572, %f563;\n" -" abs.ftz.f32 %f573, %f371;\n" -" setp.lt.ftz.f32 %p18, %f572, %f573;\n" -" @!%p18 bra $Lt_0_53762;\n" -" .loc 16 366 0\n" -" mov.f32 %f353, %f371;\n" -" mov.f32 %f371, %f563;\n" -" .loc 16 367 0\n" -" mov.f32 %f357, %f375;\n" -" mov.f32 %f375, %f565;\n" -" .loc 16 368 0\n" -" mov.f32 %f341, %f359;\n" -" mov.f32 %f359, %f567;\n" -"$Lt_0_53762:\n" -" mov.f32 %f574, %f353;\n" -" mov.f32 %f575, 0f00000000; \n" -" setp.neu.ftz.f32 %p19, %f574, %f575;\n" -" @!%p19 bra $Lt_0_54530;\n" -" bra.uni $Lt_0_54786;\n" -"$Lt_0_54530:\n" -" mov.f32 %f576, 0f00000000; \n" -" setp.neu.ftz.f32 %p20, %f371, %f576;\n" -" @!%p20 bra $Lt_0_54786;\n" -" .loc 16 383 0\n" -" mov.f32 %f353, %f371;\n" -" mov.f32 %f371, %f574;\n" -" .loc 16 384 0\n" -" mov.f32 %f577, %f357;\n" -" mov.f32 %f357, %f375;\n" -" mov.f32 %f375, %f577;\n" -" .loc 16 385 0\n" -" mov.f32 %f578, %f341;\n" -" mov.f32 %f341, %f359;\n" -" mov.f32 %f359, %f578;\n" -"$Lt_0_54786:\n" -"$Lt_0_54274:\n" -" .loc 16 390 0\n" -" div.approx.ftz.f32 %f579, %f371, %f353;\n" -" mul.ftz.f32 %f580, %f357, %f579;\n" -" sub.ftz.f32 %f375, %f375, %f580;\n" -" .loc 16 391 0\n" -" mul.ftz.f32 %f581, %f341, %f579;\n" -" sub.ftz.f32 %f359, %f359, %f581;\n" -" mov.f32 %f582, 0f00000000; \n" -" setp.eq.ftz.f32 %p21, %f375, %f582;\n" -" @!%p21 bra $Lt_0_55298;\n" -" .loc 16 394 0\n" -" mov.s32 %r32, 2;\n" -" ld.param.u64 %rd48, [__cudaparm_kernel_ellipsoid_err_flag];\n" -" st.global.s32 [%rd48+0], %r32;\n" -"$Lt_0_55298:\n" -" .loc 17 213 0\n" -" div.approx.ftz.f32 %f583, %f359, %f375;\n" -" mul.ftz.f32 %f584, %f583, %f357;\n" -" sub.ftz.f32 %f585, %f341, %f584;\n" -" div.approx.ftz.f32 %f586, %f585, %f353;\n" -" mul.ftz.f32 %f587, %f586, %f331;\n" -" fma.rn.ftz.f32 %f588, %f340, %f583, %f587;\n" -" mul.ftz.f32 %f589, %f586, %f284;\n" -" sub.ftz.f32 %f590, %f292, %f588;\n" -" div.approx.ftz.f32 %f591, %f590, %f319;\n" -" fma.rn.ftz.f32 %f592, %f283, %f591, %f589;\n" -" fma.rn.ftz.f32 %f593, %f358, %f583, %f592;\n" -" add.ftz.f32 %f594, %f593, %f593;\n" -" .loc 17 220 0\n" -" rcp.approx.ftz.f32 %f595, %f282;\n" -" sub.ftz.f32 %f596, %f595, %f429;\n" -" mov.f32 %f597, 0f3f000000; \n" -" mul.ftz.f32 %f598, %f596, %f597;\n" -" add.ftz.f32 %f599, %f598, %f287;\n" -" add.ftz.f32 %f600, %f598, %f286;\n" -" add.ftz.f32 %f601, %f598, %f285;\n" -" add.ftz.f32 %f602, %f598, %f36;\n" -" add.ftz.f32 %f603, %f598, %f34;\n" -" add.ftz.f32 %f604, %f598, %f35;\n" -" mul.ftz.f32 %f605, %f603, %f604;\n" -" mul.ftz.f32 %f606, %f602, %f605;\n" -" mul.ftz.f32 %f607, %f601, %f606;\n" -" mul.ftz.f32 %f608, %f600, %f607;\n" -" mul.ftz.f32 %f609, %f599, %f608;\n" -" .loc 17 223 0\n" -" mul.ftz.f32 %f610, %f461, %f461;\n" -" mul.ftz.f32 %f611, %f285, %f286;\n" -" mul.ftz.f32 %f612, %f445, %f445;\n" -" rcp.approx.ftz.f32 %f613, %f445;\n" -" rcp.approx.ftz.f32 %f614, %f461;\n" -" mul.ftz.f32 %f615, %f611, %f287;\n" -" add.ftz.f32 %f616, %f613, %f614;\n" -" mul.ftz.f32 %f617, %f610, %f615;\n" -" mul.ftz.f32 %f618, %f615, %f69;\n" -" div.approx.ftz.f32 %f619, %f616, %f494;\n" -" fma.rn.ftz.f32 %f620, %f69, %f612, %f617;\n" -" rsqrt.approx.ftz.f32 %f621, %f619;\n" -" div.approx.ftz.f32 %f622, %f620, %f621;\n" -" mul.ftz.f32 %f623, %f622, %f594;\n" -" div.approx.ftz.f32 %f624, %f495, %f596;\n" -" mul.ftz.f32 %f625, %f623, %f624;\n" -" mov.f32 %f626, 0f3f800000; \n" -" mov.f32 %f627, 0f40400000; \n" -" fma.rn.ftz.f32 %f628, %f627, %f625, %f626;\n" -" mul.ftz.f32 %f629, %f618, %f628;\n" -" .loc 17 228 0\n" -" div.approx.ftz.f32 %f630, %f596, %f17;\n" -" add.ftz.f32 %f631, %f630, %f287;\n" -" add.ftz.f32 %f632, %f630, %f286;\n" -" add.ftz.f32 %f633, %f630, %f285;\n" -" add.ftz.f32 %f634, %f630, %f36;\n" -" add.ftz.f32 %f635, %f630, %f34;\n" -" add.ftz.f32 %f636, %f630, %f35;\n" -" mul.ftz.f32 %f637, %f635, %f636;\n" -" mul.ftz.f32 %f638, %f634, %f637;\n" -" mul.ftz.f32 %f639, %f633, %f638;\n" -" mul.ftz.f32 %f640, %f632, %f639;\n" -" mul.ftz.f32 %f641, %f631, %f640;\n" -" .loc 17 231 0\n" -" mov.f32 %f642, 0f3f800000; \n" -" mov.f32 %f643, 0f3f4db6db; \n" -" fma.rn.ftz.f32 %f644, %f643, %f625, %f642;\n" -" mul.ftz.f32 %f645, %f618, %f644;\n" -" .loc 17 233 0\n" -" mul.ftz.f32 %f646, %f624, %f624;\n" -" mul.ftz.f32 %f647, %f624, %f646;\n" -" mul.ftz.f32 %f648, %f647, %f647;\n" -" .loc 17 236 0\n" -" div.approx.ftz.f32 %f649, %f629, %f609;\n" -" div.approx.ftz.f32 %f650, %f645, %f641;\n" -" mul.ftz.f32 %f651, %f649, %f498;\n" -" mul.ftz.f32 %f652, %f650, %f498;\n" -" mov.f32 %f653, 0fc2100000; \n" -" div.approx.ftz.f32 %f654, %f651, %f653;\n" -" mul.ftz.f32 %f655, %f652, %f648;\n" -" mov.f32 %f656, 0f44fd2000; \n" -" div.approx.ftz.f32 %f657, %f655, %f656;\n" -" add.ftz.f32 %f658, %f654, %f657;\n" -" add.ftz.f32 %f271, %f271, %f658;\n" -" .loc 17 246 0\n" -" div.approx.ftz.f32 %f659, %f613, %f612;\n" -" mul.ftz.f32 %f660, %f659, %f440;\n" -" neg.ftz.f32 %f661, %f660;\n" -" .loc 17 247 0\n" -" mul.ftz.f32 %f662, %f659, %f439;\n" -" neg.ftz.f32 %f663, %f662;\n" -" .loc 17 248 0\n" -" mul.ftz.f32 %f664, %f659, %f441;\n" -" neg.ftz.f32 %f665, %f664;\n" -" .loc 17 249 0\n" -" div.approx.ftz.f32 %f666, %f614, %f610;\n" -" mul.ftz.f32 %f667, %f666, %f456;\n" -" neg.ftz.f32 %f668, %f667;\n" -" .loc 17 250 0\n" -" mul.ftz.f32 %f669, %f666, %f455;\n" -" neg.ftz.f32 %f670, %f669;\n" -" .loc 17 251 0\n" -" mul.ftz.f32 %f671, %f666, %f457;\n" -" neg.ftz.f32 %f672, %f671;\n" -" .loc 21 544 0\n" -" add.ftz.f32 %f673, %f622, %f622;\n" -" div.approx.ftz.f32 %f674, %f673, %f620;\n" -" mul.ftz.f32 %f675, %f615, %f674;\n" -" div.approx.ftz.f32 %f676, %f675, %f666;\n" -" mul.ftz.f32 %f677, %f69, %f674;\n" -" div.approx.ftz.f32 %f678, %f677, %f659;\n" -" .loc 17 278 0\n" -" mov.f32 %f679, 0f40800000; \n" -" mul.ftz.f32 %f680, %f591, %f679;\n" -" .loc 17 286 0\n" -" add.ftz.f32 %f681, %f55, %f596;\n" -" rcp.approx.ftz.f32 %f682, %f681;\n" -" add.ftz.f32 %f683, %f56, %f596;\n" -" rcp.approx.ftz.f32 %f684, %f683;\n" -" add.ftz.f32 %f685, %f682, %f684;\n" -" add.ftz.f32 %f686, %f57, %f596;\n" -" rcp.approx.ftz.f32 %f687, %f686;\n" -" add.ftz.f32 %f688, %f685, %f687;\n" -" add.ftz.f32 %f689, %f285, %f285;\n" -" add.ftz.f32 %f690, %f596, %f689;\n" -" rcp.approx.ftz.f32 %f691, %f690;\n" -" add.ftz.f32 %f692, %f688, %f691;\n" -" add.ftz.f32 %f693, %f286, %f286;\n" -" add.ftz.f32 %f694, %f596, %f693;\n" -" rcp.approx.ftz.f32 %f695, %f694;\n" -" add.ftz.f32 %f696, %f692, %f695;\n" -" add.ftz.f32 %f697, %f287, %f287;\n" -" add.ftz.f32 %f698, %f596, %f697;\n" -" rcp.approx.ftz.f32 %f699, %f698;\n" -" add.ftz.f32 %f700, %f696, %f699;\n" -" .loc 17 293 0\n" -" mul.ftz.f32 %f701, %f622, %f495;\n" -" mul.ftz.f32 %f702, %f701, %f594;\n" -" mov.f32 %f703, 0f40400000; \n" -" fma.rn.ftz.f32 %f704, %f703, %f702, %f596;\n" -" rcp.approx.ftz.f32 %f705, %f704;\n" -" rcp.approx.ftz.f32 %f706, %f596;\n" -" sub.ftz.f32 %f707, %f706, %f705;\n" -" add.ftz.f32 %f708, %f700, %f707;\n" -" .loc 17 297 0\n" -" fma.rn.ftz.f32 %f709, %f17, %f34, %f596;\n" -" rcp.approx.ftz.f32 %f710, %f709;\n" -" fma.rn.ftz.f32 %f711, %f17, %f35, %f596;\n" -" rcp.approx.ftz.f32 %f712, %f711;\n" -" add.ftz.f32 %f713, %f710, %f712;\n" -" fma.rn.ftz.f32 %f714, %f17, %f36, %f596;\n" -" rcp.approx.ftz.f32 %f715, %f714;\n" -" add.ftz.f32 %f716, %f713, %f715;\n" -" fma.rn.ftz.f32 %f717, %f17, %f285, %f596;\n" -" rcp.approx.ftz.f32 %f718, %f717;\n" -" add.ftz.f32 %f719, %f716, %f718;\n" -" fma.rn.ftz.f32 %f720, %f17, %f286, %f596;\n" -" rcp.approx.ftz.f32 %f721, %f720;\n" -" add.ftz.f32 %f722, %f719, %f721;\n" -" fma.rn.ftz.f32 %f723, %f17, %f287, %f596;\n" -" rcp.approx.ftz.f32 %f724, %f723;\n" -" add.ftz.f32 %f725, %f722, %f724;\n" -" .loc 17 304 0\n" -" mov.f32 %f726, 0f40e00000; \n" -" div.approx.ftz.f32 %f727, %f726, %f596;\n" -" mov.f32 %f728, 0f3f4db6db; \n" -" fma.rn.ftz.f32 %f729, %f728, %f702, %f596;\n" -" rcp.approx.ftz.f32 %f730, %f729;\n" -" sub.ftz.f32 %f731, %f727, %f730;\n" -" add.ftz.f32 %f732, %f731, %f725;\n" -" .loc 17 314 0\n" -" mul.ftz.f32 %f733, %f283, %f283;\n" -" neg.ftz.f32 %f734, %f733;\n" -" mov.f32 %f735, %f734;\n" -" .loc 17 315 0\n" -" mul.ftz.f32 %f736, %f284, %f283;\n" -" neg.ftz.f32 %f737, %f736;\n" -" mov.f32 %f738, %f737;\n" -" .loc 17 316 0\n" -" mul.ftz.f32 %f739, %f358, %f283;\n" -" neg.ftz.f32 %f740, %f739;\n" -" mov.f32 %f741, %f740;\n" -" .loc 17 317 0\n" -" mov.f32 %f742, 0f3f800000; \n" -" sub.ftz.f32 %f743, %f742, %f733;\n" -" mov.f32 %f744, %f743;\n" -" .loc 17 318 0\n" -" mul.ftz.f32 %f745, %f282, %f743;\n" -" mov.f32 %f746, %f745;\n" -" .loc 17 319 0\n" -" mov.f32 %f747, %f738;\n" -" mul.ftz.f32 %f748, %f747, %f282;\n" -" mov.f32 %f749, %f748;\n" -" .loc 17 320 0\n" -" mov.f32 %f750, %f741;\n" -" mul.ftz.f32 %f751, %f750, %f282;\n" -" mov.f32 %f752, %f751;\n" -" .loc 17 325 0\n" -" mul.ftz.f32 %f753, %f71, %f748;\n" -" mul.ftz.f32 %f754, %f79, %f748;\n" -" mul.ftz.f32 %f755, %f323, %f748;\n" -" mul.ftz.f32 %f756, %f325, %f748;\n" -" mul.ftz.f32 %f757, %f89, %f748;\n" -" mul.ftz.f32 %f758, %f326, %f748;\n" -" mul.ftz.f32 %f759, %f612, %f185;\n" -" mul.ftz.f32 %f760, %f610, %f317;\n" -" neg.ftz.f32 %f761, %f759;\n" -" fma.rn.ftz.f32 %f762, %f745, %f308, %f758;\n" -" fma.rn.ftz.f32 %f763, %f312, %f745, %f755;\n" -" fma.rn.ftz.f32 %f764, %f745, %f310, %f756;\n" -" fma.rn.ftz.f32 %f765, %f745, %f70, %f757;\n" -" fma.rn.ftz.f32 %f766, %f87, %f745, %f753;\n" -" fma.rn.ftz.f32 %f767, %f745, %f76, %f754;\n" -" fma.rn.ftz.f32 %f768, %f751, %f334, %f762;\n" -" fma.rn.ftz.f32 %f769, %f333, %f751, %f763;\n" -" fma.rn.ftz.f32 %f770, %f751, %f335, %f764;\n" -" fma.rn.ftz.f32 %f771, %f751, %f80, %f765;\n" -" fma.rn.ftz.f32 %f772, %f77, %f751, %f766;\n" -" fma.rn.ftz.f32 %f773, %f751, %f91, %f767;\n" -" mul.ftz.f32 %f774, %f768, %f670;\n" -" mul.ftz.f32 %f775, %f771, %f663;\n" -" fma.rn.ftz.f32 %f776, %f668, %f769, %f774;\n" -" fma.rn.ftz.f32 %f777, %f661, %f772, %f775;\n" -" fma.rn.ftz.f32 %f778, %f672, %f770, %f776;\n" -" fma.rn.ftz.f32 %f779, %f665, %f773, %f777;\n" -" mul.ftz.f32 %f780, %f760, %f778;\n" -" mul.ftz.f32 %f781, %f761, %f779;\n" -" sub.ftz.f32 %f782, %f781, %f780;\n" -" .loc 17 326 0\n" -" mul.ftz.f32 %f783, %f612, %f196;\n" -" mul.ftz.f32 %f784, %f610, %f329;\n" -" neg.ftz.f32 %f785, %f783;\n" -" mul.ftz.f32 %f786, %f784, %f778;\n" -" mul.ftz.f32 %f787, %f785, %f779;\n" -" sub.ftz.f32 %f788, %f787, %f786;\n" -" .loc 17 327 0\n" -" mul.ftz.f32 %f789, %f612, %f186;\n" -" mul.ftz.f32 %f790, %f610, %f338;\n" -" neg.ftz.f32 %f791, %f789;\n" -" mul.ftz.f32 %f792, %f790, %f778;\n" -" mul.ftz.f32 %f793, %f791, %f779;\n" -" sub.ftz.f32 %f794, %f793, %f792;\n" -" .loc 17 328 0\n" -" mul.ftz.f32 %f795, %f612, %f228;\n" -" mul.ftz.f32 %f796, %f610, %f347;\n" -" neg.ftz.f32 %f797, %f795;\n" -" mul.ftz.f32 %f798, %f796, %f778;\n" -" mul.ftz.f32 %f799, %f797, %f779;\n" -" sub.ftz.f32 %f800, %f799, %f798;\n" -" .loc 17 329 0\n" -" mul.ftz.f32 %f801, %f612, %f230;\n" -" mul.ftz.f32 %f802, %f610, %f352;\n" -" neg.ftz.f32 %f803, %f801;\n" -" mul.ftz.f32 %f804, %f802, %f778;\n" -" mul.ftz.f32 %f805, %f803, %f779;\n" -" sub.ftz.f32 %f806, %f805, %f804;\n" -" .loc 17 330 0\n" -" mul.ftz.f32 %f807, %f612, %f232;\n" -" mul.ftz.f32 %f808, %f610, %f356;\n" -" neg.ftz.f32 %f809, %f807;\n" -" mul.ftz.f32 %f810, %f808, %f778;\n" -" mul.ftz.f32 %f811, %f809, %f779;\n" -" sub.ftz.f32 %f812, %f811, %f810;\n" -" .loc 17 331 0\n" -" mul.ftz.f32 %f813, %f612, %f213;\n" -" mul.ftz.f32 %f814, %f610, %f365;\n" -" neg.ftz.f32 %f815, %f813;\n" -" mul.ftz.f32 %f816, %f814, %f778;\n" -" mul.ftz.f32 %f817, %f815, %f779;\n" -" sub.ftz.f32 %f818, %f817, %f816;\n" -" .loc 17 332 0\n" -" mul.ftz.f32 %f819, %f612, %f214;\n" -" mul.ftz.f32 %f820, %f610, %f370;\n" -" neg.ftz.f32 %f821, %f819;\n" -" mul.ftz.f32 %f822, %f820, %f778;\n" -" mul.ftz.f32 %f823, %f821, %f779;\n" -" sub.ftz.f32 %f824, %f823, %f822;\n" -" .loc 17 333 0\n" -" mul.ftz.f32 %f825, %f612, %f216;\n" -" mul.ftz.f32 %f826, %f610, %f374;\n" -" neg.ftz.f32 %f827, %f825;\n" -" mul.ftz.f32 %f828, %f826, %f778;\n" -" mul.ftz.f32 %f829, %f827, %f779;\n" -" sub.ftz.f32 %f830, %f829, %f828;\n" -" .loc 17 334 0\n" -" mul.ftz.f32 %f831, %f479, %f782;\n" -" mul.ftz.f32 %f832, %f475, %f831;\n" -" mul.ftz.f32 %f833, %f478, %f782;\n" -" mul.ftz.f32 %f834, %f476, %f833;\n" -" sub.ftz.f32 %f835, %f834, %f832;\n" -" mul.ftz.f32 %f836, %f477, %f788;\n" -" mul.ftz.f32 %f837, %f476, %f836;\n" -" sub.ftz.f32 %f838, %f835, %f837;\n" -" mul.ftz.f32 %f839, %f477, %f794;\n" -" fma.rn.ftz.f32 %f840, %f475, %f839, %f838;\n" -" mul.ftz.f32 %f841, %f474, %f788;\n" -" fma.rn.ftz.f32 %f842, %f479, %f841, %f840;\n" -" mul.ftz.f32 %f843, %f474, %f794;\n" -" mul.ftz.f32 %f844, %f478, %f843;\n" -" sub.ftz.f32 %f845, %f842, %f844;\n" -" mul.ftz.f32 %f846, %f468, %f806;\n" -" fma.rn.ftz.f32 %f847, %f476, %f846, %f845;\n" -" mul.ftz.f32 %f848, %f468, %f812;\n" -" mul.ftz.f32 %f849, %f475, %f848;\n" -" sub.ftz.f32 %f850, %f847, %f849;\n" -" mul.ftz.f32 %f851, %f470, %f800;\n" -" mul.ftz.f32 %f852, %f476, %f851;\n" -" sub.ftz.f32 %f853, %f850, %f852;\n" -" mul.ftz.f32 %f854, %f469, %f800;\n" -" fma.rn.ftz.f32 %f855, %f475, %f854, %f853;\n" -" fma.rn.ftz.f32 %f856, %f812, %f480, %f855;\n" -" mul.ftz.f32 %f857, %f806, %f481;\n" -" sub.ftz.f32 %f858, %f856, %f857;\n" -" fma.rn.ftz.f32 %f859, %f830, %f484, %f858;\n" -" mul.ftz.f32 %f860, %f824, %f485;\n" -" sub.ftz.f32 %f861, %f859, %f860;\n" -" mul.ftz.f32 %f862, %f830, %f482;\n" -" sub.ftz.f32 %f863, %f861, %f862;\n" -" fma.rn.ftz.f32 %f864, %f824, %f483, %f863;\n" -" mul.ftz.f32 %f865, %f470, %f818;\n" -" fma.rn.ftz.f32 %f866, %f479, %f865, %f864;\n" -" mul.ftz.f32 %f867, %f469, %f818;\n" -" mul.ftz.f32 %f868, %f478, %f867;\n" -" sub.ftz.f32 %f869, %f866, %f868;\n" -" .loc 17 335 0\n" -" add.ftz.f32 %f870, %f616, %f616;\n" -" div.approx.ftz.f32 %f871, %f622, %f870;\n" -" add.ftz.f32 %f872, %f778, %f779;\n" -" mul.ftz.f32 %f873, %f871, %f872;\n" -" .loc 17 336 0\n" -" add.ftz.f32 %f874, %f494, %f494;\n" -" div.approx.ftz.f32 %f875, %f622, %f874;\n" -" mul.ftz.f32 %f876, %f869, %f875;\n" -" sub.ftz.f32 %f877, %f873, %f876;\n" -" .loc 17 337 0\n" -" mul.ftz.f32 %f878, %f676, %f778;\n" -" fma.rn.ftz.f32 %f879, %f779, %f678, %f878;\n" -" sub.ftz.f32 %f880, %f877, %f879;\n" -" .loc 17 340 0\n" -" mul.ftz.f32 %f881, %f429, %f429;\n" -" mov.f32 %f882, 0f40400000; \n" -" mul.ftz.f32 %f883, %f495, %f882;\n" -" mov.f32 %f884, 0f40800000; \n" -" mul.ftz.f32 %f885, %f583, %f884;\n" -" mul.ftz.f32 %f886, %f881, %f429;\n" -" mov.f32 %f887, 0f3f000000; \n" -" mul.ftz.f32 %f888, %f886, %f887;\n" -" mul.ftz.f32 %f889, %f888, %f419;\n" -" mul.ftz.f32 %f890, %f888, %f423;\n" -" mul.ftz.f32 %f891, %f888, %f416;\n" -" mov.f32 %f892, 0f40800000; \n" -" mul.ftz.f32 %f893, %f586, %f892;\n" -" mul.ftz.f32 %f894, %f889, %f748;\n" -" mul.ftz.f32 %f895, %f893, %f748;\n" -" fma.rn.ftz.f32 %f896, %f890, %f745, %f894;\n" -" fma.rn.ftz.f32 %f897, %f680, %f745, %f895;\n" -" mul.ftz.f32 %f898, %f883, %f705;\n" -" fma.rn.ftz.f32 %f899, %f891, %f751, %f896;\n" -" fma.rn.ftz.f32 %f900, %f885, %f751, %f897;\n" -" add.ftz.f32 %f901, %f899, %f283;\n" -" mul.ftz.f32 %f902, %f622, %f900;\n" -" fma.rn.ftz.f32 %f903, %f594, %f880, %f902;\n" -" mul.ftz.f32 %f904, %f901, %f708;\n" -" mul.ftz.f32 %f905, %f898, %f903;\n" -" sub.ftz.f32 %f906, %f905, %f904;\n" -" .loc 17 341 0\n" -" mov.f32 %f907, 0f3f4db6db; \n" -" mul.ftz.f32 %f908, %f495, %f907;\n" -" mul.ftz.f32 %f909, %f908, %f730;\n" -" mul.ftz.f32 %f910, %f901, %f732;\n" -" mul.ftz.f32 %f911, %f909, %f903;\n" -" sub.ftz.f32 %f912, %f911, %f910;\n" -" .loc 17 344 0\n" -" mul.ftz.f32 %f913, %f657, %f912;\n" -" fma.rn.ftz.f32 %f914, %f906, %f654, %f913;\n" -" add.ftz.f32 %f270, %f914, %f270;\n" -" @!%p3 bra $Lt_0_56322;\n" -" .loc 17 346 0\n" -" mov.f32 %f915, %f19;\n" -" mul.ftz.f32 %f916, %f277, %f914;\n" -" sub.ftz.f32 %f917, %f915, %f916;\n" -" mov.f32 %f19, %f917;\n" -"$Lt_0_56322:\n" -" .loc 17 314 0\n" -" mov.f32 %f918, %f737;\n" -" .loc 17 315 0\n" -" mul.ftz.f32 %f919, %f284, %f284;\n" -" neg.ftz.f32 %f920, %f919;\n" -" mov.f32 %f921, %f920;\n" -" .loc 17 316 0\n" -" mul.ftz.f32 %f922, %f358, %f284;\n" -" neg.ftz.f32 %f923, %f922;\n" -" mov.f32 %f924, %f923;\n" -" .loc 17 317 0\n" -" mov.f32 %f925, 0f3f800000; \n" -" sub.ftz.f32 %f926, %f925, %f919;\n" -" mov.f32 %f927, %f926;\n" -" .loc 17 318 0\n" -" mov.f32 %f928, %f918;\n" -" mul.ftz.f32 %f929, %f928, %f282;\n" -" mov.f32 %f930, %f929;\n" -" .loc 17 319 0\n" -" mul.ftz.f32 %f931, %f282, %f926;\n" -" mov.f32 %f932, %f931;\n" -" .loc 17 320 0\n" -" mov.f32 %f933, %f924;\n" -" mul.ftz.f32 %f934, %f933, %f282;\n" -" mov.f32 %f935, %f934;\n" -" .loc 17 325 0\n" -" mul.ftz.f32 %f936, %f326, %f931;\n" -" mul.ftz.f32 %f937, %f323, %f931;\n" -" mul.ftz.f32 %f938, %f325, %f931;\n" -" mul.ftz.f32 %f939, %f89, %f931;\n" -" mul.ftz.f32 %f940, %f71, %f931;\n" -" mul.ftz.f32 %f941, %f79, %f931;\n" -" fma.rn.ftz.f32 %f942, %f929, %f308, %f936;\n" -" fma.rn.ftz.f32 %f943, %f312, %f929, %f937;\n" -" fma.rn.ftz.f32 %f944, %f929, %f310, %f938;\n" -" fma.rn.ftz.f32 %f945, %f929, %f70, %f939;\n" -" fma.rn.ftz.f32 %f946, %f87, %f929, %f940;\n" -" fma.rn.ftz.f32 %f947, %f929, %f76, %f941;\n" -" fma.rn.ftz.f32 %f948, %f934, %f334, %f942;\n" -" fma.rn.ftz.f32 %f949, %f333, %f934, %f943;\n" -" fma.rn.ftz.f32 %f950, %f934, %f335, %f944;\n" -" fma.rn.ftz.f32 %f951, %f934, %f80, %f945;\n" -" fma.rn.ftz.f32 %f952, %f77, %f934, %f946;\n" -" fma.rn.ftz.f32 %f953, %f934, %f91, %f947;\n" -" mul.ftz.f32 %f954, %f948, %f670;\n" -" mul.ftz.f32 %f955, %f951, %f663;\n" -" fma.rn.ftz.f32 %f956, %f668, %f949, %f954;\n" -" fma.rn.ftz.f32 %f957, %f661, %f952, %f955;\n" -" fma.rn.ftz.f32 %f958, %f672, %f950, %f956;\n" -" fma.rn.ftz.f32 %f959, %f665, %f953, %f957;\n" -" mul.ftz.f32 %f960, %f760, %f958;\n" -" mul.ftz.f32 %f961, %f761, %f959;\n" -" sub.ftz.f32 %f962, %f961, %f960;\n" -" .loc 17 326 0\n" -" mul.ftz.f32 %f963, %f784, %f958;\n" -" mul.ftz.f32 %f964, %f785, %f959;\n" -" sub.ftz.f32 %f965, %f964, %f963;\n" -" .loc 17 327 0\n" -" mul.ftz.f32 %f966, %f790, %f958;\n" -" mul.ftz.f32 %f967, %f791, %f959;\n" -" sub.ftz.f32 %f968, %f967, %f966;\n" -" .loc 17 328 0\n" -" mul.ftz.f32 %f969, %f796, %f958;\n" -" mul.ftz.f32 %f970, %f797, %f959;\n" -" sub.ftz.f32 %f971, %f970, %f969;\n" -" .loc 17 329 0\n" -" mul.ftz.f32 %f972, %f802, %f958;\n" -" mul.ftz.f32 %f973, %f803, %f959;\n" -" sub.ftz.f32 %f974, %f973, %f972;\n" -" .loc 17 330 0\n" -" mul.ftz.f32 %f975, %f808, %f958;\n" -" mul.ftz.f32 %f976, %f809, %f959;\n" -" sub.ftz.f32 %f977, %f976, %f975;\n" -" .loc 17 331 0\n" -" mul.ftz.f32 %f978, %f814, %f958;\n" -" mul.ftz.f32 %f979, %f815, %f959;\n" -" sub.ftz.f32 %f980, %f979, %f978;\n" -" .loc 17 332 0\n" -" mul.ftz.f32 %f981, %f820, %f958;\n" -" mul.ftz.f32 %f982, %f821, %f959;\n" -" sub.ftz.f32 %f983, %f982, %f981;\n" -" .loc 17 333 0\n" -" mul.ftz.f32 %f984, %f826, %f958;\n" -" mul.ftz.f32 %f985, %f827, %f959;\n" -" sub.ftz.f32 %f986, %f985, %f984;\n" -" .loc 17 334 0\n" -" mul.ftz.f32 %f987, %f479, %f962;\n" -" mul.ftz.f32 %f988, %f475, %f987;\n" -" mul.ftz.f32 %f989, %f478, %f962;\n" -" mul.ftz.f32 %f990, %f476, %f989;\n" -" sub.ftz.f32 %f991, %f990, %f988;\n" -" mul.ftz.f32 %f992, %f477, %f965;\n" -" mul.ftz.f32 %f993, %f476, %f992;\n" -" sub.ftz.f32 %f994, %f991, %f993;\n" -" mul.ftz.f32 %f995, %f477, %f968;\n" -" fma.rn.ftz.f32 %f996, %f475, %f995, %f994;\n" -" mul.ftz.f32 %f997, %f474, %f965;\n" -" fma.rn.ftz.f32 %f998, %f479, %f997, %f996;\n" -" mul.ftz.f32 %f999, %f474, %f968;\n" -" mul.ftz.f32 %f1000, %f478, %f999;\n" -" sub.ftz.f32 %f1001, %f998, %f1000;\n" -" mul.ftz.f32 %f1002, %f468, %f974;\n" -" fma.rn.ftz.f32 %f1003, %f476, %f1002, %f1001;\n" -" mul.ftz.f32 %f1004, %f468, %f977;\n" -" mul.ftz.f32 %f1005, %f475, %f1004;\n" -" sub.ftz.f32 %f1006, %f1003, %f1005;\n" -" mul.ftz.f32 %f1007, %f470, %f971;\n" -" mul.ftz.f32 %f1008, %f476, %f1007;\n" -" sub.ftz.f32 %f1009, %f1006, %f1008;\n" -" mul.ftz.f32 %f1010, %f469, %f971;\n" -" fma.rn.ftz.f32 %f1011, %f475, %f1010, %f1009;\n" -" fma.rn.ftz.f32 %f1012, %f977, %f480, %f1011;\n" -" mul.ftz.f32 %f1013, %f974, %f481;\n" -" sub.ftz.f32 %f1014, %f1012, %f1013;\n" -" fma.rn.ftz.f32 %f1015, %f986, %f484, %f1014;\n" -" mul.ftz.f32 %f1016, %f983, %f485;\n" -" sub.ftz.f32 %f1017, %f1015, %f1016;\n" -" mul.ftz.f32 %f1018, %f986, %f482;\n" -" sub.ftz.f32 %f1019, %f1017, %f1018;\n" -" fma.rn.ftz.f32 %f1020, %f983, %f483, %f1019;\n" -" mul.ftz.f32 %f1021, %f470, %f980;\n" -" fma.rn.ftz.f32 %f1022, %f479, %f1021, %f1020;\n" -" mul.ftz.f32 %f1023, %f469, %f980;\n" -" mul.ftz.f32 %f1024, %f478, %f1023;\n" -" sub.ftz.f32 %f1025, %f1022, %f1024;\n" -" .loc 17 335 0\n" -" add.ftz.f32 %f1026, %f958, %f959;\n" -" mul.ftz.f32 %f1027, %f871, %f1026;\n" -" .loc 17 336 0\n" -" mul.ftz.f32 %f1028, %f1025, %f875;\n" -" sub.ftz.f32 %f1029, %f1027, %f1028;\n" -" .loc 17 337 0\n" -" mul.ftz.f32 %f1030, %f676, %f958;\n" -" fma.rn.ftz.f32 %f1031, %f959, %f678, %f1030;\n" -" sub.ftz.f32 %f1032, %f1029, %f1031;\n" -" .loc 17 340 0\n" -" mul.ftz.f32 %f1033, %f889, %f931;\n" -" mul.ftz.f32 %f1034, %f893, %f931;\n" -" fma.rn.ftz.f32 %f1035, %f890, %f929, %f1033;\n" -" fma.rn.ftz.f32 %f1036, %f680, %f929, %f1034;\n" -" fma.rn.ftz.f32 %f1037, %f891, %f934, %f1035;\n" -" fma.rn.ftz.f32 %f1038, %f885, %f934, %f1036;\n" -" add.ftz.f32 %f1039, %f1037, %f284;\n" -" mul.ftz.f32 %f1040, %f622, %f1038;\n" -" fma.rn.ftz.f32 %f1041, %f594, %f1032, %f1040;\n" -" mul.ftz.f32 %f1042, %f1039, %f708;\n" -" mul.ftz.f32 %f1043, %f898, %f1041;\n" -" sub.ftz.f32 %f1044, %f1043, %f1042;\n" -" .loc 17 341 0\n" -" mul.ftz.f32 %f1045, %f1039, %f732;\n" -" mul.ftz.f32 %f1046, %f909, %f1041;\n" -" sub.ftz.f32 %f1047, %f1046, %f1045;\n" -" .loc 17 348 0\n" -" mul.ftz.f32 %f1048, %f657, %f1047;\n" -" fma.rn.ftz.f32 %f914, %f1044, %f654, %f1048;\n" -" add.ftz.f32 %f269, %f914, %f269;\n" -" @!%p3 bra $Lt_0_59906;\n" -" .loc 17 350 0\n" -" mov.f32 %f1049, %f21;\n" -" mul.ftz.f32 %f1050, %f276, %f914;\n" -" sub.ftz.f32 %f1051, %f1049, %f1050;\n" -" mov.f32 %f21, %f1051;\n" -" .loc 17 351 0\n" -" mov.f32 %f1052, %f25;\n" -" mul.ftz.f32 %f1053, %f277, %f914;\n" -" sub.ftz.f32 %f1054, %f1052, %f1053;\n" -" mov.f32 %f25, %f1054;\n" -"$Lt_0_59906:\n" -" .loc 17 314 0\n" -" mov.f32 %f1055, %f740;\n" -" .loc 17 315 0\n" -" mov.f32 %f1056, %f923;\n" -" .loc 17 316 0\n" -" mul.ftz.f32 %f1057, %f358, %f358;\n" -" neg.ftz.f32 %f1058, %f1057;\n" -" mov.f32 %f1059, %f1058;\n" -" .loc 17 317 0\n" -" mov.f32 %f1060, 0f3f800000; \n" -" sub.ftz.f32 %f1061, %f1060, %f1057;\n" -" mov.f32 %f1062, %f1061;\n" -" .loc 17 318 0\n" -" mov.f32 %f1063, %f1055;\n" -" mul.ftz.f32 %f1064, %f1063, %f282;\n" -" mov.f32 %f1065, %f1064;\n" -" .loc 17 319 0\n" -" mov.f32 %f1066, %f1056;\n" -" mul.ftz.f32 %f1067, %f1066, %f282;\n" -" mov.f32 %f1068, %f1067;\n" -" .loc 17 320 0\n" -" mul.ftz.f32 %f1069, %f282, %f1061;\n" -" mov.f32 %f1070, %f1069;\n" -" .loc 17 325 0\n" -" mul.ftz.f32 %f1071, %f71, %f1067;\n" -" mul.ftz.f32 %f1072, %f79, %f1067;\n" -" mul.ftz.f32 %f1073, %f323, %f1067;\n" -" mul.ftz.f32 %f1074, %f325, %f1067;\n" -" fma.rn.ftz.f32 %f1075, %f87, %f1064, %f1071;\n" -" mul.ftz.f32 %f1076, %f89, %f1067;\n" -" fma.rn.ftz.f32 %f1077, %f1064, %f76, %f1072;\n" -" fma.rn.ftz.f32 %f1078, %f312, %f1064, %f1073;\n" -" mul.ftz.f32 %f1079, %f326, %f1067;\n" -" fma.rn.ftz.f32 %f1080, %f1064, %f310, %f1074;\n" -" fma.rn.ftz.f32 %f1081, %f1064, %f70, %f1076;\n" -" fma.rn.ftz.f32 %f1082, %f1064, %f308, %f1079;\n" -" fma.rn.ftz.f32 %f1083, %f1069, %f334, %f1082;\n" -" fma.rn.ftz.f32 %f1084, %f333, %f1069, %f1078;\n" -" fma.rn.ftz.f32 %f1085, %f1069, %f335, %f1080;\n" -" fma.rn.ftz.f32 %f1086, %f1069, %f80, %f1081;\n" -" fma.rn.ftz.f32 %f1087, %f77, %f1069, %f1075;\n" -" fma.rn.ftz.f32 %f1088, %f1069, %f91, %f1077;\n" -" mul.ftz.f32 %f1089, %f1083, %f670;\n" -" mul.ftz.f32 %f1090, %f1086, %f663;\n" -" fma.rn.ftz.f32 %f1091, %f668, %f1084, %f1089;\n" -" fma.rn.ftz.f32 %f1092, %f661, %f1087, %f1090;\n" -" fma.rn.ftz.f32 %f1093, %f672, %f1085, %f1091;\n" -" fma.rn.ftz.f32 %f1094, %f665, %f1088, %f1092;\n" -" mul.ftz.f32 %f1095, %f760, %f1093;\n" -" mul.ftz.f32 %f1096, %f761, %f1094;\n" -" sub.ftz.f32 %f1097, %f1096, %f1095;\n" -" .loc 17 326 0\n" -" mul.ftz.f32 %f1098, %f784, %f1093;\n" -" mul.ftz.f32 %f1099, %f785, %f1094;\n" -" sub.ftz.f32 %f1100, %f1099, %f1098;\n" -" .loc 17 327 0\n" -" mul.ftz.f32 %f1101, %f790, %f1093;\n" -" mul.ftz.f32 %f1102, %f791, %f1094;\n" -" sub.ftz.f32 %f1103, %f1102, %f1101;\n" -" .loc 17 328 0\n" -" mul.ftz.f32 %f1104, %f796, %f1093;\n" -" mul.ftz.f32 %f1105, %f797, %f1094;\n" -" sub.ftz.f32 %f1106, %f1105, %f1104;\n" -" .loc 17 329 0\n" -" mul.ftz.f32 %f1107, %f802, %f1093;\n" -" mul.ftz.f32 %f1108, %f803, %f1094;\n" -" sub.ftz.f32 %f1109, %f1108, %f1107;\n" -" .loc 17 330 0\n" -" mul.ftz.f32 %f1110, %f808, %f1093;\n" -" mul.ftz.f32 %f1111, %f809, %f1094;\n" -" sub.ftz.f32 %f1112, %f1111, %f1110;\n" -" .loc 17 331 0\n" -" mul.ftz.f32 %f1113, %f814, %f1093;\n" -" mul.ftz.f32 %f1114, %f815, %f1094;\n" -" sub.ftz.f32 %f1115, %f1114, %f1113;\n" -" .loc 17 332 0\n" -" mul.ftz.f32 %f1116, %f820, %f1093;\n" -" mul.ftz.f32 %f1117, %f821, %f1094;\n" -" sub.ftz.f32 %f1118, %f1117, %f1116;\n" -" .loc 17 333 0\n" -" mul.ftz.f32 %f1119, %f826, %f1093;\n" -" mul.ftz.f32 %f1120, %f827, %f1094;\n" -" sub.ftz.f32 %f1121, %f1120, %f1119;\n" -" .loc 17 334 0\n" -" mul.ftz.f32 %f1122, %f479, %f1097;\n" -" mul.ftz.f32 %f1123, %f475, %f1122;\n" -" mul.ftz.f32 %f1124, %f478, %f1097;\n" -" mul.ftz.f32 %f1125, %f476, %f1124;\n" -" sub.ftz.f32 %f1126, %f1125, %f1123;\n" -" mul.ftz.f32 %f1127, %f477, %f1100;\n" -" mul.ftz.f32 %f1128, %f476, %f1127;\n" -" sub.ftz.f32 %f1129, %f1126, %f1128;\n" -" mul.ftz.f32 %f1130, %f477, %f1103;\n" -" fma.rn.ftz.f32 %f1131, %f475, %f1130, %f1129;\n" -" mul.ftz.f32 %f1132, %f474, %f1100;\n" -" fma.rn.ftz.f32 %f1133, %f479, %f1132, %f1131;\n" -" mul.ftz.f32 %f1134, %f474, %f1103;\n" -" mul.ftz.f32 %f1135, %f478, %f1134;\n" -" sub.ftz.f32 %f1136, %f1133, %f1135;\n" -" mul.ftz.f32 %f1137, %f468, %f1109;\n" -" fma.rn.ftz.f32 %f1138, %f476, %f1137, %f1136;\n" -" mul.ftz.f32 %f1139, %f468, %f1112;\n" -" mul.ftz.f32 %f1140, %f475, %f1139;\n" -" sub.ftz.f32 %f1141, %f1138, %f1140;\n" -" mul.ftz.f32 %f1142, %f470, %f1106;\n" -" mul.ftz.f32 %f1143, %f476, %f1142;\n" -" sub.ftz.f32 %f1144, %f1141, %f1143;\n" -" mul.ftz.f32 %f1145, %f469, %f1106;\n" -" fma.rn.ftz.f32 %f1146, %f475, %f1145, %f1144;\n" -" fma.rn.ftz.f32 %f1147, %f1112, %f480, %f1146;\n" -" mul.ftz.f32 %f1148, %f1109, %f481;\n" -" sub.ftz.f32 %f1149, %f1147, %f1148;\n" -" fma.rn.ftz.f32 %f1150, %f1121, %f484, %f1149;\n" -" mul.ftz.f32 %f1151, %f1118, %f485;\n" -" sub.ftz.f32 %f1152, %f1150, %f1151;\n" -" mul.ftz.f32 %f1153, %f1121, %f482;\n" -" sub.ftz.f32 %f1154, %f1152, %f1153;\n" -" fma.rn.ftz.f32 %f1155, %f1118, %f483, %f1154;\n" -" mul.ftz.f32 %f1156, %f470, %f1115;\n" -" fma.rn.ftz.f32 %f1157, %f479, %f1156, %f1155;\n" -" mul.ftz.f32 %f1158, %f469, %f1115;\n" -" mul.ftz.f32 %f1159, %f478, %f1158;\n" -" sub.ftz.f32 %f1160, %f1157, %f1159;\n" -" .loc 17 335 0\n" -" add.ftz.f32 %f1161, %f1093, %f1094;\n" -" mul.ftz.f32 %f1162, %f871, %f1161;\n" -" .loc 17 336 0\n" -" mul.ftz.f32 %f1163, %f1160, %f875;\n" -" sub.ftz.f32 %f1164, %f1162, %f1163;\n" -" .loc 17 337 0\n" -" mul.ftz.f32 %f1165, %f676, %f1093;\n" -" fma.rn.ftz.f32 %f1166, %f1094, %f678, %f1165;\n" -" sub.ftz.f32 %f1167, %f1164, %f1166;\n" -" .loc 17 340 0\n" -" mul.ftz.f32 %f1168, %f889, %f1067;\n" -" mul.ftz.f32 %f1169, %f893, %f1067;\n" -" fma.rn.ftz.f32 %f1170, %f890, %f1064, %f1168;\n" -" fma.rn.ftz.f32 %f1171, %f680, %f1064, %f1169;\n" -" fma.rn.ftz.f32 %f1172, %f891, %f1069, %f1170;\n" -" fma.rn.ftz.f32 %f1173, %f885, %f1069, %f1171;\n" -" add.ftz.f32 %f1174, %f1172, %f358;\n" -" mul.ftz.f32 %f1175, %f622, %f1173;\n" -" fma.rn.ftz.f32 %f1176, %f594, %f1167, %f1175;\n" -" mul.ftz.f32 %f1177, %f1174, %f708;\n" -" mul.ftz.f32 %f1178, %f898, %f1176;\n" -" sub.ftz.f32 %f1179, %f1178, %f1177;\n" -" .loc 17 341 0\n" -" mul.ftz.f32 %f1180, %f1174, %f732;\n" -" mul.ftz.f32 %f1181, %f909, %f1176;\n" -" sub.ftz.f32 %f1182, %f1181, %f1180;\n" -" .loc 17 354 0\n" -" mul.ftz.f32 %f1183, %f657, %f1182;\n" -" fma.rn.ftz.f32 %f914, %f1179, %f654, %f1183;\n" -" add.ftz.f32 %f268, %f914, %f268;\n" -" @!%p3 bra $Lt_0_62978;\n" -" .loc 17 356 0\n" -" mov.f32 %f1184, %f23;\n" -" mul.ftz.f32 %f1185, %f278, %f914;\n" -" sub.ftz.f32 %f1186, %f1184, %f1185;\n" -" mov.f32 %f23, %f1186;\n" -" .loc 17 357 0\n" -" mov.f32 %f1187, %f27;\n" -" mul.ftz.f32 %f1188, %f277, %f914;\n" -" sub.ftz.f32 %f1189, %f1187, %f1188;\n" -" mov.f32 %f27, %f1189;\n" -" .loc 17 358 0\n" -" mul.ftz.f32 %f1190, %f276, %f914;\n" -" sub.ftz.f32 %f28, %f28, %f1190;\n" -" mov.f32 %f29, %f28;\n" -"$Lt_0_62978:\n" -" .loc 17 381 0\n" -" mul.ftz.f32 %f1191, %f80, %f284;\n" -" mul.ftz.f32 %f1192, %f78, %f284;\n" -" mul.ftz.f32 %f1193, %f91, %f284;\n" -" neg.ftz.f32 %f1194, %f1191;\n" -" mov.f32 %f1195, 0f00000000; \n" -" fma.rn.ftz.f32 %f1196, %f1195, %f283, %f1192;\n" -" neg.ftz.f32 %f1197, %f1193;\n" -" mov.f32 %f1198, 0f00000000; \n" -" fma.rn.ftz.f32 %f1199, %f283, %f1198, %f1194;\n" -" fma.rn.ftz.f32 %f1200, %f71, %f358, %f1196;\n" -" mov.f32 %f1201, 0f00000000; \n" -" fma.rn.ftz.f32 %f1202, %f283, %f1201, %f1197;\n" -" fma.rn.ftz.f32 %f1203, %f358, %f89, %f1199;\n" -" fma.rn.ftz.f32 %f1204, %f358, %f79, %f1202;\n" -" mul.ftz.f32 %f1205, %f1203, %f662;\n" -" neg.ftz.f32 %f1206, %f1205;\n" -" fma.rn.ftz.f32 %f1207, %f661, %f1200, %f1206;\n" -" fma.rn.ftz.f32 %f1208, %f665, %f1204, %f1207;\n" -" mul.ftz.f32 %f1209, %f759, %f1208;\n" -" mul.ftz.f32 %f1210, %f783, %f1208;\n" -" mul.ftz.f32 %f1211, %f789, %f1208;\n" -" mul.ftz.f32 %f1212, %f801, %f1208;\n" -" mul.ftz.f32 %f1213, %f807, %f1208;\n" -" mul.ftz.f32 %f1214, %f795, %f1208;\n" -" mul.ftz.f32 %f1215, %f825, %f1208;\n" -" mul.ftz.f32 %f1216, %f819, %f1208;\n" -" mul.ftz.f32 %f1217, %f813, %f1208;\n" -" neg.ftz.f32 %f1218, %f1209;\n" -" neg.ftz.f32 %f1219, %f1210;\n" -" neg.ftz.f32 %f1220, %f1211;\n" -" neg.ftz.f32 %f1221, %f1212;\n" -" neg.ftz.f32 %f1222, %f1213;\n" -" neg.ftz.f32 %f1223, %f1214;\n" -" neg.ftz.f32 %f1224, %f1215;\n" -" neg.ftz.f32 %f1225, %f1216;\n" -" neg.ftz.f32 %f1226, %f1217;\n" -" fma.rn.ftz.f32 %f1227, %f225, %f445, %f1218;\n" -" fma.rn.ftz.f32 %f1228, %f251, %f445, %f1219;\n" -" fma.rn.ftz.f32 %f1229, %f227, %f445, %f1220;\n" -" fma.rn.ftz.f32 %f1230, %f264, %f445, %f1221;\n" -" fma.rn.ftz.f32 %f1231, %f262, %f445, %f1222;\n" -" fma.rn.ftz.f32 %f1232, %f252, %f445, %f1223;\n" -" fma.rn.ftz.f32 %f1233, %f246, %f445, %f1224;\n" -" fma.rn.ftz.f32 %f1234, %f263, %f445, %f1225;\n" -" fma.rn.ftz.f32 %f1235, %f227, %f445, %f1226;\n" -" mul.ftz.f32 %f1236, %f479, %f1227;\n" -" mul.ftz.f32 %f1237, %f475, %f1236;\n" -" mul.ftz.f32 %f1238, %f478, %f1227;\n" -" mul.ftz.f32 %f1239, %f476, %f1238;\n" -" sub.ftz.f32 %f1240, %f1239, %f1237;\n" -" mul.ftz.f32 %f1241, %f477, %f1228;\n" -" mul.ftz.f32 %f1242, %f476, %f1241;\n" -" sub.ftz.f32 %f1243, %f1240, %f1242;\n" -" mul.ftz.f32 %f1244, %f477, %f1229;\n" -" fma.rn.ftz.f32 %f1245, %f475, %f1244, %f1243;\n" -" mul.ftz.f32 %f1246, %f474, %f1228;\n" -" fma.rn.ftz.f32 %f1247, %f479, %f1246, %f1245;\n" -" mul.ftz.f32 %f1248, %f474, %f1229;\n" -" mul.ftz.f32 %f1249, %f478, %f1248;\n" -" sub.ftz.f32 %f1250, %f1247, %f1249;\n" -" mul.ftz.f32 %f1251, %f468, %f1230;\n" -" fma.rn.ftz.f32 %f1252, %f476, %f1251, %f1250;\n" -" mul.ftz.f32 %f1253, %f468, %f1231;\n" -" mul.ftz.f32 %f1254, %f475, %f1253;\n" -" sub.ftz.f32 %f1255, %f1252, %f1254;\n" -" mul.ftz.f32 %f1256, %f470, %f1232;\n" -" mul.ftz.f32 %f1257, %f476, %f1256;\n" -" sub.ftz.f32 %f1258, %f1255, %f1257;\n" -" mul.ftz.f32 %f1259, %f469, %f1232;\n" -" fma.rn.ftz.f32 %f1260, %f475, %f1259, %f1258;\n" -" fma.rn.ftz.f32 %f1261, %f1231, %f480, %f1260;\n" -" mul.ftz.f32 %f1262, %f1230, %f481;\n" -" sub.ftz.f32 %f1263, %f1261, %f1262;\n" -" fma.rn.ftz.f32 %f1264, %f1233, %f484, %f1263;\n" -" mul.ftz.f32 %f1265, %f1234, %f485;\n" -" sub.ftz.f32 %f1266, %f1264, %f1265;\n" -" mul.ftz.f32 %f1267, %f1233, %f482;\n" -" sub.ftz.f32 %f1268, %f1266, %f1267;\n" -" fma.rn.ftz.f32 %f1269, %f1234, %f483, %f1268;\n" -" mul.ftz.f32 %f1270, %f470, %f1235;\n" -" fma.rn.ftz.f32 %f1271, %f479, %f1270, %f1269;\n" -" mul.ftz.f32 %f1272, %f469, %f1235;\n" -" mul.ftz.f32 %f1273, %f478, %f1272;\n" -" sub.ftz.f32 %f1274, %f1271, %f1273;\n" -" .loc 17 392 0\n" -" mul.ftz.f32 %f1275, %f80, %f586;\n" -" mul.ftz.f32 %f1276, %f78, %f586;\n" -" mul.ftz.f32 %f1277, %f91, %f586;\n" -" mul.ftz.f32 %f1278, %f117, %f893;\n" -" mul.ftz.f32 %f1279, %f85, %f893;\n" -" mul.ftz.f32 %f1280, %f98, %f893;\n" -" neg.ftz.f32 %f1281, %f1275;\n" -" neg.ftz.f32 %f1282, %f1277;\n" -" mul.ftz.f32 %f1283, %f875, %f1274;\n" -" mul.ftz.f32 %f1284, %f889, %f224;\n" -" mul.ftz.f32 %f1285, %f889, %f248;\n" -" mov.f32 %f1286, 0f00000000; \n" -" fma.rn.ftz.f32 %f1287, %f591, %f1286, %f1281;\n" -" mov.f32 %f1288, 0f00000000; \n" -" fma.rn.ftz.f32 %f1289, %f1288, %f591, %f1276;\n" -" mov.f32 %f1290, 0f00000000; \n" -" fma.rn.ftz.f32 %f1291, %f591, %f1290, %f1282;\n" -" fma.rn.ftz.f32 %f1292, %f188, %f890, %f1284;\n" -" mul.ftz.f32 %f1293, %f889, %f257;\n" -" fma.rn.ftz.f32 %f1294, %f890, %f169, %f1285;\n" -" fma.rn.ftz.f32 %f1295, %f680, %f83, %f1278;\n" -" fma.rn.ftz.f32 %f1296, %f113, %f680, %f1279;\n" -" fma.rn.ftz.f32 %f1297, %f680, %f93, %f1280;\n" -" fma.rn.ftz.f32 %f1298, %f583, %f89, %f1287;\n" -" fma.rn.ftz.f32 %f1299, %f71, %f583, %f1289;\n" -" fma.rn.ftz.f32 %f1300, %f583, %f79, %f1291;\n" -" fma.rn.ftz.f32 %f1301, %f196, %f891, %f1292;\n" -" fma.rn.ftz.f32 %f1302, %f890, %f140, %f1293;\n" -" fma.rn.ftz.f32 %f1303, %f891, %f214, %f1294;\n" -" fma.rn.ftz.f32 %f1304, %f885, %f100, %f1295;\n" -" fma.rn.ftz.f32 %f1305, %f885, %f96, %f1296;\n" -" fma.rn.ftz.f32 %f1306, %f885, %f120, %f1297;\n" -" fma.rn.ftz.f32 %f1307, %f891, %f230, %f1302;\n" -" mul.ftz.f32 %f1308, %f1298, %f1304;\n" -" mul.ftz.f32 %f1309, %f1307, %f419;\n" -" fma.rn.ftz.f32 %f1310, %f1305, %f1299, %f1308;\n" -" fma.rn.ftz.f32 %f1311, %f423, %f1301, %f1309;\n" -" fma.rn.ftz.f32 %f1312, %f1306, %f1300, %f1310;\n" -" fma.rn.ftz.f32 %f1313, %f416, %f1303, %f1311;\n" -" mul.ftz.f32 %f1314, %f622, %f1312;\n" -" mul.ftz.f32 %f1315, %f1208, %f871;\n" -" sub.ftz.f32 %f1316, %f1315, %f1283;\n" -" neg.ftz.f32 %f1317, %f1314;\n" -" mul.ftz.f32 %f1318, %f1208, %f678;\n" -" sub.ftz.f32 %f1319, %f1316, %f1318;\n" -" fma.rn.ftz.f32 %f1320, %f594, %f1319, %f1317;\n" -" mul.ftz.f32 %f1321, %f1313, %f732;\n" -" fma.rn.ftz.f32 %f1322, %f909, %f1320, %f1321;\n" -" mul.ftz.f32 %f1323, %f657, %f1322;\n" -" mul.ftz.f32 %f1324, %f1313, %f708;\n" -" fma.rn.ftz.f32 %f1325, %f898, %f1320, %f1324;\n" -" fma.rn.ftz.f32 %f1326, %f1325, %f654, %f1323;\n" -" sub.ftz.f32 %f267, %f267, %f1326;\n" -" .loc 17 407 0\n" -" mov.f32 %f1327, 0f00000000; \n" -" fma.rn.ftz.f32 %f1328, %f283, %f80, %f1327;\n" -" mov.f32 %f1329, 0f00000000; \n" -" fma.rn.ftz.f32 %f1330, %f77, %f283, %f1329;\n" -" mov.f32 %f1331, 0f00000000; \n" -" fma.rn.ftz.f32 %f1332, %f283, %f91, %f1331;\n" -" fma.rn.ftz.f32 %f1333, %f358, %f72, %f1328;\n" -" fma.rn.ftz.f32 %f1334, %f88, %f358, %f1330;\n" -" fma.rn.ftz.f32 %f1335, %f358, %f94, %f1332;\n" -" mul.ftz.f32 %f1336, %f1333, %f662;\n" -" neg.ftz.f32 %f1337, %f1336;\n" -" fma.rn.ftz.f32 %f1338, %f661, %f1334, %f1337;\n" -" fma.rn.ftz.f32 %f1339, %f665, %f1335, %f1338;\n" -" mul.ftz.f32 %f1340, %f759, %f1339;\n" -" mul.ftz.f32 %f1341, %f783, %f1339;\n" -" mul.ftz.f32 %f1342, %f789, %f1339;\n" -" mul.ftz.f32 %f1343, %f801, %f1339;\n" -" mul.ftz.f32 %f1344, %f807, %f1339;\n" -" mul.ftz.f32 %f1345, %f795, %f1339;\n" -" mul.ftz.f32 %f1346, %f825, %f1339;\n" -" mul.ftz.f32 %f1347, %f819, %f1339;\n" -" mul.ftz.f32 %f1348, %f813, %f1339;\n" -" neg.ftz.f32 %f1349, %f1340;\n" -" neg.ftz.f32 %f1350, %f1341;\n" -" neg.ftz.f32 %f1351, %f1342;\n" -" neg.ftz.f32 %f1352, %f1343;\n" -" neg.ftz.f32 %f1353, %f1344;\n" -" neg.ftz.f32 %f1354, %f1345;\n" -" neg.ftz.f32 %f1355, %f1346;\n" -" neg.ftz.f32 %f1356, %f1347;\n" -" neg.ftz.f32 %f1357, %f1348;\n" -" fma.rn.ftz.f32 %f1358, %f226, %f445, %f1349;\n" -" fma.rn.ftz.f32 %f1359, %f255, %f445, %f1350;\n" -" fma.rn.ftz.f32 %f1360, %f247, %f445, %f1351;\n" -" fma.rn.ftz.f32 %f1361, %f184, %f445, %f1352;\n" -" fma.rn.ftz.f32 %f1362, %f258, %f445, %f1353;\n" -" fma.rn.ftz.f32 %f1363, %f254, %f445, %f1354;\n" -" fma.rn.ftz.f32 %f1364, %f249, %f445, %f1355;\n" -" fma.rn.ftz.f32 %f1365, %f259, %f445, %f1356;\n" -" fma.rn.ftz.f32 %f1366, %f247, %f445, %f1357;\n" -" mul.ftz.f32 %f1367, %f479, %f1358;\n" -" mul.ftz.f32 %f1368, %f475, %f1367;\n" -" mul.ftz.f32 %f1369, %f478, %f1358;\n" -" mul.ftz.f32 %f1370, %f476, %f1369;\n" -" sub.ftz.f32 %f1371, %f1370, %f1368;\n" -" mul.ftz.f32 %f1372, %f477, %f1359;\n" -" mul.ftz.f32 %f1373, %f476, %f1372;\n" -" sub.ftz.f32 %f1374, %f1371, %f1373;\n" -" mul.ftz.f32 %f1375, %f477, %f1360;\n" -" fma.rn.ftz.f32 %f1376, %f475, %f1375, %f1374;\n" -" mul.ftz.f32 %f1377, %f474, %f1359;\n" -" fma.rn.ftz.f32 %f1378, %f479, %f1377, %f1376;\n" -" mul.ftz.f32 %f1379, %f474, %f1360;\n" -" mul.ftz.f32 %f1380, %f478, %f1379;\n" -" sub.ftz.f32 %f1381, %f1378, %f1380;\n" -" mul.ftz.f32 %f1382, %f468, %f1361;\n" -" fma.rn.ftz.f32 %f1383, %f476, %f1382, %f1381;\n" -" mul.ftz.f32 %f1384, %f468, %f1362;\n" -" mul.ftz.f32 %f1385, %f475, %f1384;\n" -" sub.ftz.f32 %f1386, %f1383, %f1385;\n" -" mul.ftz.f32 %f1387, %f470, %f1363;\n" -" mul.ftz.f32 %f1388, %f476, %f1387;\n" -" sub.ftz.f32 %f1389, %f1386, %f1388;\n" -" mul.ftz.f32 %f1390, %f469, %f1363;\n" -" fma.rn.ftz.f32 %f1391, %f475, %f1390, %f1389;\n" -" fma.rn.ftz.f32 %f1392, %f1362, %f480, %f1391;\n" -" mul.ftz.f32 %f1393, %f1361, %f481;\n" -" sub.ftz.f32 %f1394, %f1392, %f1393;\n" -" fma.rn.ftz.f32 %f1395, %f1364, %f484, %f1394;\n" -" mul.ftz.f32 %f1396, %f1365, %f485;\n" -" sub.ftz.f32 %f1397, %f1395, %f1396;\n" -" mul.ftz.f32 %f1398, %f1364, %f482;\n" -" sub.ftz.f32 %f1399, %f1397, %f1398;\n" -" fma.rn.ftz.f32 %f1400, %f1365, %f483, %f1399;\n" -" mul.ftz.f32 %f1401, %f470, %f1366;\n" -" fma.rn.ftz.f32 %f1402, %f479, %f1401, %f1400;\n" -" mul.ftz.f32 %f1403, %f469, %f1366;\n" -" mul.ftz.f32 %f1404, %f478, %f1403;\n" -" sub.ftz.f32 %f1405, %f1402, %f1404;\n" -" .loc 17 418 0\n" -" mul.ftz.f32 %f1406, %f889, %f140;\n" -" mul.ftz.f32 %f1407, %f889, %f169;\n" -" mul.ftz.f32 %f1408, %f875, %f1405;\n" -" mul.ftz.f32 %f1409, %f889, %f190;\n" -" fma.rn.ftz.f32 %f1410, %f890, %f216, %f1407;\n" -" fma.rn.ftz.f32 %f1411, %f191, %f890, %f1409;\n" -" fma.rn.ftz.f32 %f1412, %f890, %f232, %f1406;\n" -" fma.rn.ftz.f32 %f1413, %f891, %f219, %f1410;\n" -" mov.f32 %f1414, 0f00000000; \n" -" fma.rn.ftz.f32 %f1415, %f591, %f80, %f1414;\n" -" mov.f32 %f1416, 0f00000000; \n" -" fma.rn.ftz.f32 %f1417, %f77, %f591, %f1416;\n" -" mov.f32 %f1418, 0f00000000; \n" -" fma.rn.ftz.f32 %f1419, %f591, %f91, %f1418;\n" -" fma.rn.ftz.f32 %f1420, %f192, %f891, %f1411;\n" -" fma.rn.ftz.f32 %f1421, %f891, %f236, %f1412;\n" -" fma.rn.ftz.f32 %f1422, %f583, %f72, %f1415;\n" -" fma.rn.ftz.f32 %f1423, %f88, %f583, %f1417;\n" -" fma.rn.ftz.f32 %f1424, %f583, %f94, %f1419;\n" -" mul.ftz.f32 %f1425, %f1421, %f419;\n" -" fma.rn.ftz.f32 %f1426, %f423, %f1420, %f1425;\n" -" mul.ftz.f32 %f1427, %f1422, %f1304;\n" -" fma.rn.ftz.f32 %f1428, %f416, %f1413, %f1426;\n" -" fma.rn.ftz.f32 %f1429, %f1305, %f1423, %f1427;\n" -" fma.rn.ftz.f32 %f1430, %f1306, %f1424, %f1429;\n" -" mul.ftz.f32 %f1431, %f622, %f1430;\n" -" mul.ftz.f32 %f1432, %f1339, %f871;\n" -" sub.ftz.f32 %f1433, %f1432, %f1408;\n" -" neg.ftz.f32 %f1434, %f1431;\n" -" mul.ftz.f32 %f1435, %f1339, %f678;\n" -" sub.ftz.f32 %f1436, %f1433, %f1435;\n" -" fma.rn.ftz.f32 %f1437, %f594, %f1436, %f1434;\n" -" mul.ftz.f32 %f1438, %f1428, %f732;\n" -" fma.rn.ftz.f32 %f1439, %f909, %f1437, %f1438;\n" -" mul.ftz.f32 %f1440, %f657, %f1439;\n" -" mul.ftz.f32 %f1441, %f1428, %f708;\n" -" fma.rn.ftz.f32 %f1442, %f898, %f1437, %f1441;\n" -" fma.rn.ftz.f32 %f1443, %f1442, %f654, %f1440;\n" -" sub.ftz.f32 %f266, %f266, %f1443;\n" -" .loc 17 433 0\n" -" mul.ftz.f32 %f1444, %f70, %f284;\n" -" mul.ftz.f32 %f1445, %f87, %f284;\n" -" mul.ftz.f32 %f1446, %f76, %f284;\n" -" fma.rn.ftz.f32 %f1447, %f283, %f90, %f1444;\n" -" fma.rn.ftz.f32 %f1448, %f86, %f283, %f1445;\n" -" fma.rn.ftz.f32 %f1449, %f283, %f81, %f1446;\n" -" mov.f32 %f1450, 0f00000000; \n" -" fma.rn.ftz.f32 %f1451, %f358, %f1450, %f1447;\n" -" mov.f32 %f1452, 0f00000000; \n" -" fma.rn.ftz.f32 %f1453, %f1452, %f358, %f1448;\n" -" mov.f32 %f1454, 0f00000000; \n" -" fma.rn.ftz.f32 %f1455, %f358, %f1454, %f1449;\n" -" mul.ftz.f32 %f1456, %f1451, %f662;\n" -" neg.ftz.f32 %f1457, %f1456;\n" -" fma.rn.ftz.f32 %f1458, %f661, %f1453, %f1457;\n" -" fma.rn.ftz.f32 %f1459, %f665, %f1455, %f1458;\n" -" mul.ftz.f32 %f1460, %f759, %f1459;\n" -" mul.ftz.f32 %f1461, %f783, %f1459;\n" -" mul.ftz.f32 %f1462, %f789, %f1459;\n" -" mul.ftz.f32 %f1463, %f801, %f1459;\n" -" mul.ftz.f32 %f1464, %f807, %f1459;\n" -" mul.ftz.f32 %f1465, %f795, %f1459;\n" -" mul.ftz.f32 %f1466, %f825, %f1459;\n" -" mul.ftz.f32 %f1467, %f819, %f1459;\n" -" mul.ftz.f32 %f1468, %f813, %f1459;\n" -" neg.ftz.f32 %f1469, %f1460;\n" -" neg.ftz.f32 %f1470, %f1461;\n" -" neg.ftz.f32 %f1471, %f1462;\n" -" neg.ftz.f32 %f1472, %f1463;\n" -" neg.ftz.f32 %f1473, %f1464;\n" -" neg.ftz.f32 %f1474, %f1465;\n" -" neg.ftz.f32 %f1475, %f1466;\n" -" neg.ftz.f32 %f1476, %f1467;\n" -" neg.ftz.f32 %f1477, %f1468;\n" -" fma.rn.ftz.f32 %f1478, %f243, %f445, %f1469;\n" -" fma.rn.ftz.f32 %f1479, %f260, %f445, %f1470;\n" -" fma.rn.ftz.f32 %f1480, %f250, %f445, %f1471;\n" -" fma.rn.ftz.f32 %f1481, %f253, %f445, %f1472;\n" -" fma.rn.ftz.f32 %f1482, %f244, %f445, %f1473;\n" -" fma.rn.ftz.f32 %f1483, %f261, %f445, %f1474;\n" -" fma.rn.ftz.f32 %f1484, %f212, %f445, %f1475;\n" -" fma.rn.ftz.f32 %f1485, %f245, %f445, %f1476;\n" -" fma.rn.ftz.f32 %f1486, %f250, %f445, %f1477;\n" -" mul.ftz.f32 %f1487, %f479, %f1478;\n" -" mul.ftz.f32 %f1488, %f475, %f1487;\n" -" mul.ftz.f32 %f1489, %f478, %f1478;\n" -" mul.ftz.f32 %f1490, %f476, %f1489;\n" -" sub.ftz.f32 %f1491, %f1490, %f1488;\n" -" mul.ftz.f32 %f1492, %f477, %f1479;\n" -" mul.ftz.f32 %f1493, %f476, %f1492;\n" -" sub.ftz.f32 %f1494, %f1491, %f1493;\n" -" mul.ftz.f32 %f1495, %f477, %f1480;\n" -" fma.rn.ftz.f32 %f1496, %f475, %f1495, %f1494;\n" -" mul.ftz.f32 %f1497, %f474, %f1479;\n" -" fma.rn.ftz.f32 %f1498, %f479, %f1497, %f1496;\n" -" mul.ftz.f32 %f1499, %f474, %f1480;\n" -" mul.ftz.f32 %f1500, %f478, %f1499;\n" -" sub.ftz.f32 %f1501, %f1498, %f1500;\n" -" mul.ftz.f32 %f1502, %f468, %f1481;\n" -" fma.rn.ftz.f32 %f1503, %f476, %f1502, %f1501;\n" -" mul.ftz.f32 %f1504, %f468, %f1482;\n" -" mul.ftz.f32 %f1505, %f475, %f1504;\n" -" sub.ftz.f32 %f1506, %f1503, %f1505;\n" -" mul.ftz.f32 %f1507, %f470, %f1483;\n" -" mul.ftz.f32 %f1508, %f476, %f1507;\n" -" sub.ftz.f32 %f1509, %f1506, %f1508;\n" -" mul.ftz.f32 %f1510, %f469, %f1483;\n" -" fma.rn.ftz.f32 %f1511, %f475, %f1510, %f1509;\n" -" fma.rn.ftz.f32 %f1512, %f1482, %f480, %f1511;\n" -" mul.ftz.f32 %f1513, %f1481, %f481;\n" -" sub.ftz.f32 %f1514, %f1512, %f1513;\n" -" fma.rn.ftz.f32 %f1515, %f1484, %f484, %f1514;\n" -" mul.ftz.f32 %f1516, %f1485, %f485;\n" -" sub.ftz.f32 %f1517, %f1515, %f1516;\n" -" mul.ftz.f32 %f1518, %f1484, %f482;\n" -" sub.ftz.f32 %f1519, %f1517, %f1518;\n" -" fma.rn.ftz.f32 %f1520, %f1485, %f483, %f1519;\n" -" mul.ftz.f32 %f1521, %f470, %f1486;\n" -" fma.rn.ftz.f32 %f1522, %f479, %f1521, %f1520;\n" -" mul.ftz.f32 %f1523, %f469, %f1486;\n" -" mul.ftz.f32 %f1524, %f478, %f1523;\n" -" sub.ftz.f32 %f1525, %f1522, %f1524;\n" -" .loc 17 444 0\n" -" mul.ftz.f32 %f1526, %f70, %f586;\n" -" mul.ftz.f32 %f1527, %f87, %f586;\n" -" mul.ftz.f32 %f1528, %f76, %f586;\n" -" mul.ftz.f32 %f1529, %f875, %f1525;\n" -" mul.ftz.f32 %f1530, %f889, %f193;\n" -" mul.ftz.f32 %f1531, %f889, %f213;\n" -" fma.rn.ftz.f32 %f1532, %f211, %f890, %f1530;\n" -" mul.ftz.f32 %f1533, %f889, %f228;\n" -" fma.rn.ftz.f32 %f1534, %f890, %f220, %f1531;\n" -" fma.rn.ftz.f32 %f1535, %f591, %f90, %f1526;\n" -" fma.rn.ftz.f32 %f1536, %f86, %f591, %f1527;\n" -" fma.rn.ftz.f32 %f1537, %f591, %f81, %f1528;\n" -" fma.rn.ftz.f32 %f1538, %f190, %f891, %f1532;\n" -" fma.rn.ftz.f32 %f1539, %f890, %f239, %f1533;\n" -" fma.rn.ftz.f32 %f1540, %f891, %f169, %f1534;\n" -" mov.f32 %f1541, 0f00000000; \n" -" fma.rn.ftz.f32 %f1542, %f583, %f1541, %f1535;\n" -" mov.f32 %f1543, 0f00000000; \n" -" fma.rn.ftz.f32 %f1544, %f1543, %f583, %f1536;\n" -" mov.f32 %f1545, 0f00000000; \n" -" fma.rn.ftz.f32 %f1546, %f583, %f1545, %f1537;\n" -" fma.rn.ftz.f32 %f1547, %f891, %f140, %f1539;\n" -" mul.ftz.f32 %f1548, %f1547, %f419;\n" -" mul.ftz.f32 %f1549, %f1542, %f1304;\n" -" fma.rn.ftz.f32 %f1550, %f423, %f1538, %f1548;\n" -" fma.rn.ftz.f32 %f1551, %f1305, %f1544, %f1549;\n" -" fma.rn.ftz.f32 %f1552, %f416, %f1540, %f1550;\n" -" fma.rn.ftz.f32 %f1553, %f1306, %f1546, %f1551;\n" -" mul.ftz.f32 %f1554, %f622, %f1553;\n" -" mul.ftz.f32 %f1555, %f1459, %f871;\n" -" sub.ftz.f32 %f1556, %f1555, %f1529;\n" -" neg.ftz.f32 %f1557, %f1554;\n" -" mul.ftz.f32 %f1558, %f1459, %f678;\n" -" sub.ftz.f32 %f1559, %f1556, %f1558;\n" -" fma.rn.ftz.f32 %f1560, %f594, %f1559, %f1557;\n" -" mul.ftz.f32 %f1561, %f1552, %f732;\n" -" fma.rn.ftz.f32 %f1562, %f909, %f1560, %f1561;\n" -" mul.ftz.f32 %f1563, %f657, %f1562;\n" -" mul.ftz.f32 %f1564, %f1552, %f708;\n" -" fma.rn.ftz.f32 %f1565, %f898, %f1560, %f1564;\n" -" fma.rn.ftz.f32 %f1566, %f1565, %f654, %f1563;\n" -" sub.ftz.f32 %f265, %f265, %f1566;\n" -" mul.lo.s32 %r33, %r14, %r1;\n" -" cvt.s64.s32 %rd49, %r33;\n" -" mul.wide.s32 %rd50, %r33, 4;\n" -" add.u64 %rd25, %rd25, %rd50;\n" -" setp.gt.u64 %p22, %rd28, %rd25;\n" -" @%p22 bra $Lt_0_46338;\n" -" bra.uni $Lt_0_45826;\n" -"$Lt_0_69634:\n" -" mov.f32 %f265, 0f00000000; \n" -" mov.f32 %f266, 0f00000000; \n" -" mov.f32 %f267, 0f00000000; \n" -" mov.f32 %f268, 0f00000000; \n" -" mov.f32 %f269, 0f00000000; \n" -" mov.f32 %f270, 0f00000000; \n" -" mov.f32 %f271, 0f00000000; \n" -"$Lt_0_45826:\n" -" mov.u32 %r34, 1;\n" -" setp.le.s32 %p23, %r1, %r34;\n" -" @%p23 bra $Lt_0_65794;\n" -" .loc 17 448 0\n" -" mov.u64 %rd51, __cuda___cuda_local_var_33303_55_non_const_red_acc136;\n" -" cvt.s64.s32 %rd52, %r2;\n" -" mul.wide.s32 %rd53, %r2, 4;\n" -" add.u64 %rd54, %rd51, %rd53;\n" -" mov.f32 %f1567, %f270;\n" -" st.shared.f32 [%rd54+0], %f1567;\n" -" mov.f32 %f1568, %f269;\n" -" st.shared.f32 [%rd54+512], %f1568;\n" -" mov.f32 %f1569, %f268;\n" -" st.shared.f32 [%rd54+1024], %f1569;\n" -" mov.f32 %f1570, %f267;\n" -" st.shared.f32 [%rd54+1536], %f1570;\n" -" mov.f32 %f1571, %f266;\n" -" st.shared.f32 [%rd54+2048], %f1571;\n" -" mov.f32 %f1572, %f265;\n" -" st.shared.f32 [%rd54+2560], %f1572;\n" -" shr.s32 %r35, %r1, 31;\n" -" mov.s32 %r36, 1;\n" -" and.b32 %r37, %r35, %r36;\n" -" add.s32 %r38, %r37, %r1;\n" -" shr.s32 %r39, %r38, 1;\n" -" mov.s32 %r40, %r39;\n" -" mov.u32 %r41, 0;\n" -" setp.ne.u32 %p24, %r39, %r41;\n" -" @!%p24 bra $Lt_0_64258;\n" -"$Lt_0_64770:\n" -" setp.ge.u32 %p25, %r16, %r40;\n" -" @%p25 bra $Lt_0_65026;\n" -" add.u32 %r42, %r2, %r40;\n" -" cvt.u64.u32 %rd55, %r42;\n" -" mul.wide.u32 %rd56, %r42, 4;\n" -" add.u64 %rd57, %rd51, %rd56;\n" -" ld.shared.f32 %f1573, [%rd57+0];\n" -" add.ftz.f32 %f1567, %f1573, %f1567;\n" -" st.shared.f32 [%rd54+0], %f1567;\n" -" ld.shared.f32 %f1574, [%rd57+512];\n" -" add.ftz.f32 %f1568, %f1574, %f1568;\n" -" st.shared.f32 [%rd54+512], %f1568;\n" -" ld.shared.f32 %f1575, [%rd57+1024];\n" -" add.ftz.f32 %f1569, %f1575, %f1569;\n" -" st.shared.f32 [%rd54+1024], %f1569;\n" -" ld.shared.f32 %f1576, [%rd57+1536];\n" -" add.ftz.f32 %f1570, %f1576, %f1570;\n" -" st.shared.f32 [%rd54+1536], %f1570;\n" -" ld.shared.f32 %f1577, [%rd57+2048];\n" -" add.ftz.f32 %f1571, %f1577, %f1571;\n" -" st.shared.f32 [%rd54+2048], %f1571;\n" -" ld.shared.f32 %f1578, [%rd57+2560];\n" -" add.ftz.f32 %f1572, %f1578, %f1572;\n" -" st.shared.f32 [%rd54+2560], %f1572;\n" -"$Lt_0_65026:\n" -" shr.u32 %r40, %r40, 1;\n" -" mov.u32 %r43, 0;\n" -" setp.ne.u32 %p26, %r40, %r43;\n" -" @%p26 bra $Lt_0_64770;\n" -"$Lt_0_64258:\n" -" mov.f32 %f270, %f1567;\n" -" mov.f32 %f269, %f1568;\n" -" mov.f32 %f268, %f1569;\n" -" mov.f32 %f267, %f1570;\n" -" mov.f32 %f266, %f1571;\n" -" mov.f32 %f265, %f1572;\n" -" ld.param.s32 %r44, [__cudaparm_kernel_ellipsoid_eflag];\n" -" mov.s32 %r45, 0;\n" -" set.gt.u32.s32 %r46, %r44, %r45;\n" -" neg.s32 %r47, %r46;\n" -" ld.param.s32 %r48, [__cudaparm_kernel_ellipsoid_vflag];\n" -" mov.s32 %r49, 0;\n" -" set.gt.u32.s32 %r50, %r48, %r49;\n" -" neg.s32 %r51, %r50;\n" -" or.b32 %r52, %r47, %r51;\n" -" mov.u32 %r53, 0;\n" -" setp.eq.s32 %p27, %r52, %r53;\n" -" @%p27 bra $Lt_0_65794;\n" -" mov.f32 %f1567, %f19;\n" -" st.shared.f32 [%rd54+0], %f1567;\n" -" mov.f32 %f1568, %f21;\n" -" st.shared.f32 [%rd54+512], %f1568;\n" -" mov.f32 %f1569, %f23;\n" -" st.shared.f32 [%rd54+1024], %f1569;\n" -" mov.f32 %f1570, %f25;\n" -" st.shared.f32 [%rd54+1536], %f1570;\n" -" mov.f32 %f1571, %f27;\n" -" st.shared.f32 [%rd54+2048], %f1571;\n" -" mov.f32 %f1572, %f28;\n" -" st.shared.f32 [%rd54+2560], %f1572;\n" -" mov.f32 %f1579, %f271;\n" -" st.shared.f32 [%rd54+3072], %f1579;\n" -" mov.s32 %r54, %r39;\n" -" @!%p24 bra $Lt_0_66306;\n" -"$Lt_0_66818:\n" -" setp.ge.u32 %p28, %r16, %r54;\n" -" @%p28 bra $Lt_0_67074;\n" -" add.u32 %r55, %r2, %r54;\n" -" cvt.u64.u32 %rd58, %r55;\n" -" mul.wide.u32 %rd59, %r55, 4;\n" -" add.u64 %rd60, %rd51, %rd59;\n" -" ld.shared.f32 %f1580, [%rd60+0];\n" -" add.ftz.f32 %f1567, %f1580, %f1567;\n" -" st.shared.f32 [%rd54+0], %f1567;\n" -" ld.shared.f32 %f1581, [%rd60+512];\n" -" add.ftz.f32 %f1568, %f1581, %f1568;\n" -" st.shared.f32 [%rd54+512], %f1568;\n" -" ld.shared.f32 %f1582, [%rd60+1024];\n" -" add.ftz.f32 %f1569, %f1582, %f1569;\n" -" st.shared.f32 [%rd54+1024], %f1569;\n" -" ld.shared.f32 %f1583, [%rd60+1536];\n" -" add.ftz.f32 %f1570, %f1583, %f1570;\n" -" st.shared.f32 [%rd54+1536], %f1570;\n" -" ld.shared.f32 %f1584, [%rd60+2048];\n" -" add.ftz.f32 %f1571, %f1584, %f1571;\n" -" st.shared.f32 [%rd54+2048], %f1571;\n" -" ld.shared.f32 %f1585, [%rd60+2560];\n" -" add.ftz.f32 %f1572, %f1585, %f1572;\n" -" st.shared.f32 [%rd54+2560], %f1572;\n" -" ld.shared.f32 %f1586, [%rd60+3072];\n" -" add.ftz.f32 %f1579, %f1586, %f1579;\n" -" st.shared.f32 [%rd54+3072], %f1579;\n" -"$Lt_0_67074:\n" -" shr.u32 %r54, %r54, 1;\n" -" mov.u32 %r56, 0;\n" -" setp.ne.u32 %p29, %r54, %r56;\n" -" @%p29 bra $Lt_0_66818;\n" -"$Lt_0_66306:\n" -" mov.f32 %f19, %f1567;\n" -" mov.f32 %f21, %f1568;\n" -" mov.f32 %f23, %f1569;\n" -" mov.f32 %f25, %f1570;\n" -" mov.f32 %f27, %f1571;\n" -" mov.f32 %f29, %f1572;\n" -" mov.f32 %f271, %f1579;\n" -"$Lt_0_65794:\n" -"$Lt_0_63746:\n" -" mov.u32 %r57, 0;\n" -" setp.ne.s32 %p30, %r16, %r57;\n" -" @%p30 bra $Lt_0_67842;\n" -" ld.param.u64 %rd61, [__cudaparm_kernel_ellipsoid_engv];\n" -" add.u64 %rd62, %rd61, %rd3;\n" -" ld.param.s32 %r58, [__cudaparm_kernel_ellipsoid_astride];\n" -" ld.param.s32 %r59, [__cudaparm_kernel_ellipsoid_eflag];\n" -" mov.u32 %r60, 0;\n" -" setp.le.s32 %p31, %r59, %r60;\n" -" @%p31 bra $Lt_0_68354;\n" -" st.global.f32 [%rd62+0], %f271;\n" -" cvt.s64.s32 %rd63, %r58;\n" -" mul.wide.s32 %rd64, %r58, 4;\n" -" add.u64 %rd62, %rd62, %rd64;\n" -"$Lt_0_68354:\n" -" ld.param.s32 %r61, [__cudaparm_kernel_ellipsoid_vflag];\n" -" mov.u32 %r62, 0;\n" -" setp.le.s32 %p32, %r61, %r62;\n" -" @%p32 bra $Lt_0_68866;\n" -" mov.f32 %f1587, %f19;\n" -" st.global.f32 [%rd62+0], %f1587;\n" -" cvt.s64.s32 %rd65, %r58;\n" -" mul.wide.s32 %rd66, %r58, 4;\n" -" add.u64 %rd67, %rd66, %rd62;\n" -" mov.f32 %f1588, %f21;\n" -" st.global.f32 [%rd67+0], %f1588;\n" -" add.u64 %rd68, %rd66, %rd67;\n" -" mov.f32 %f1589, %f23;\n" -" st.global.f32 [%rd68+0], %f1589;\n" -" add.u64 %rd69, %rd66, %rd68;\n" -" mov.f32 %f1590, %f25;\n" -" st.global.f32 [%rd69+0], %f1590;\n" -" add.u64 %rd62, %rd66, %rd69;\n" -" mov.f32 %f1591, %f27;\n" -" st.global.f32 [%rd62+0], %f1591;\n" -" mov.f32 %f1592, %f29;\n" -" add.u64 %rd70, %rd66, %rd62;\n" -" st.global.f32 [%rd70+0], %f1592;\n" -"$Lt_0_68866:\n" -" ld.param.u64 %rd71, [__cudaparm_kernel_ellipsoid_ans];\n" -" mul.lo.u64 %rd72, %rd2, 16;\n" -" add.u64 %rd73, %rd71, %rd72;\n" -" mov.f32 %f1593, %f1594;\n" -" st.global.v4.f32 [%rd73+0], {%f270,%f269,%f268,%f1593};\n" -" add.s32 %r63, %r8, %r58;\n" -" cvt.s64.s32 %rd74, %r63;\n" -" mul.wide.s32 %rd75, %r63, 16;\n" -" add.u64 %rd76, %rd71, %rd75;\n" -" mov.f32 %f1595, %f1596;\n" -" st.global.v4.f32 [%rd76+0], {%f267,%f266,%f265,%f1595};\n" -"$Lt_0_67842:\n" -"$Lt_0_45314:\n" -" .loc 17 451 0\n" -" exit;\n" -"$LDWend_kernel_ellipsoid:\n" -" }\n" -; diff --git a/lib/gpu/scan_app.cu_o b/lib/gpu/scan_app.cu_o deleted file mode 100644 index 1ce05f2dc29fc4473e9d364b7e89f1da30841c48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18297344 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

tv)!`s)Eo4^5n?9%2;XzeRU{hK_@Hejn$ zPP?3tl{D1qs3L({9aSVytD}kpYjsjW zVcWda>JVTat3x5dmZ-5h5eUxePzYNKxz!m@pWEt8f~uN8txgO?`kc<{OoEu&WUxAp zi?llYlzDUk&#F!aQX`es;aMG*$yXH`t1~_vZ_3PN@>rS6(>VB$2B7s_+b~zy{X{gmvMFO=tsz{(#M->Uy>ZF9iwt1=5A;3IVheCpl zNMm&(5S-Pa5VjU_t23THx7C>hRW%{fz}5tLL=}kiIi1y+JR+tx8LW=u5-noyfG##I z{FHfg0nZB7NM&_+R>x)XRRyF>-jtckZC>zZ^m8bBp3Zo%9vpVe~;aYV+)gh6Zl`uSsisGFsq}E1ZQ

tv)!`s)Eo2VFn?9%2;XzeRU{hK_@Hejn$ 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%0Dbyg;Ba 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

hGnG_9wej5OFahFhobewGjbU9*4J08HNqTl&#a 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%0A%iQ9>FJSF1DEUg-)xegDTVzyA2?`?oK@ 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

;-4E_?zpzkT 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%0AUC=qY88_4-G1 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

4p*|8(0wibFr?;)$~w@{3bFqj-;(${)p{ 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 s9d* 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

hV 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