|
- //
- // Generated by NVIDIA NVVM Compiler
- //
- // Compiler Build ID: CL-26907403
- // Cuda compilation tools, release 10.1, V10.1.243
- // Based on LLVM 3.4svn
- //
-
- .version 6.4
- .target sm_60
- .address_size 64
-
- // .globl Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0
- // _ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E75T_multiply_T_subtract_input_0_input_1_T_subtract_input_0_input_1_red_shared has been demoted
- // _ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E8red_buf0 has been demoted
-
- .visible .entry Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0(
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_0,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_1,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_2,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_3,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_4,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_5,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_6,
- .param .u64 Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_7
- )
- {
- .reg .pred %p<19>;
- .reg .f32 %f<65>;
- .reg .b32 %r<27>;
- .reg .b64 %rd<23>;
- // demoted variable
- .shared .align 4 .b8 _ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E75T_multiply_T_subtract_input_0_input_1_T_subtract_input_0_input_1_red_shared[4];
- // demoted variable
- .shared .align 4 .b8 _ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E8red_buf0[2048];
-
- ld.param.u64 %rd9, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_0];
- ld.param.u64 %rd10, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_1];
- ld.param.u64 %rd11, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_2];
- ld.param.u64 %rd12, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_3];
- ld.param.u64 %rd13, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_4];
- ld.param.u64 %rd14, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_5];
- ld.param.u64 %rd15, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_6];
- ld.param.u64 %rd16, [Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0_param_7];
- mov.u32 %r1, %tid.x;
- setp.ne.s32 %p3, %r1, 0;
- @%p3 bra BB0_2;
-
- mov.u32 %r5, 0;
- st.shared.u32 [_ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E75T_multiply_T_subtract_input_0_input_1_T_subtract_input_0_input_1_red_shared], %r5;
-
- BB0_2:
- cvta.to.global.u64 %rd1, %rd14;
- cvta.to.global.u64 %rd2, %rd13;
- bar.sync 0;
- mul.wide.s32 %rd17, %r1, 4;
- add.s64 %rd3, %rd2, %rd17;
- add.s64 %rd4, %rd1, %rd17;
- mov.f32 %f62, 0f00000000;
- setp.gt.s32 %p4, %r1, 899;
- mov.f32 %f63, %f62;
- @%p4 bra BB0_4;
-
- ld.global.nc.f32 %f10, [%rd3];
- ld.global.nc.f32 %f11, [%rd4];
- sub.f32 %f12, %f10, %f11;
- mul.f32 %f13, %f12, %f12;
- add.f32 %f62, %f13, 0f00000000;
- sub.f32 %f63, %f62, %f13;
-
- BB0_4:
- add.s32 %r2, %r1, 512;
- setp.gt.s32 %p5, %r2, 899;
- @%p5 bra BB0_6;
-
- ld.global.nc.f32 %f14, [%rd4+2048];
- ld.global.nc.f32 %f15, [%rd3+2048];
- sub.f32 %f16, %f15, %f14;
- mul.f32 %f17, %f16, %f16;
- sub.f32 %f18, %f17, %f63;
- add.f32 %f62, %f62, %f18;
-
- BB0_6:
- mov.u32 %r6, %tid.y;
- mov.u32 %r7, %ntid.x;
- mad.lo.s32 %r3, %r6, %r7, %r1;
- shl.b32 %r8, %r3, 2;
- mov.u32 %r9, _ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E8red_buf0;
- add.s32 %r4, %r9, %r8;
- st.shared.f32 [%r4], %f62;
- bar.sync 0;
- setp.gt.s32 %p6, %r3, 255;
- @%p6 bra BB0_8;
-
- ld.shared.f32 %f19, [%r4];
- ld.shared.f32 %f20, [%r4+1024];
- add.f32 %f21, %f19, %f20;
- st.shared.f32 [%r4], %f21;
-
- BB0_8:
- bar.sync 0;
- setp.gt.s32 %p7, %r3, 127;
- @%p7 bra BB0_10;
-
- ld.shared.f32 %f22, [%r4];
- ld.shared.f32 %f23, [%r4+512];
- add.f32 %f24, %f22, %f23;
- st.shared.f32 [%r4], %f24;
-
- BB0_10:
- bar.sync 0;
- setp.gt.s32 %p8, %r3, 63;
- @%p8 bra BB0_12;
-
- ld.shared.f32 %f25, [%r4];
- ld.shared.f32 %f26, [%r4+256];
- add.f32 %f27, %f25, %f26;
- st.shared.f32 [%r4], %f27;
-
- BB0_12:
- bar.sync 0;
- setp.gt.s32 %p9, %r3, 31;
- @%p9 bra BB0_14;
-
- ld.shared.f32 %f28, [%r4];
- ld.shared.f32 %f29, [%r4+128];
- add.f32 %f30, %f28, %f29;
- st.shared.f32 [%r4], %f30;
-
- BB0_14:
- setp.lt.s32 %p1, %r3, 32;
- bar.sync 0;
- @!%p1 bra BB0_17;
- bra.uni BB0_15;
-
- BB0_15:
- ld.shared.f32 %f31, [%r4];
- mov.b32 %r10, %f31;
- mov.u32 %r11, 2;
- mov.u32 %r12, 31;
- mov.u32 %r13, 16;
- mov.u32 %r14, -1;
- shfl.sync.down.b32 %r15|%p10, %r10, %r13, %r12, %r14;
- mov.b32 %f32, %r15;
- add.f32 %f33, %f31, %f32;
- mov.b32 %r16, %f33;
- mov.u32 %r17, 8;
- shfl.sync.down.b32 %r18|%p11, %r16, %r17, %r12, %r14;
- mov.b32 %f34, %r18;
- add.f32 %f35, %f33, %f34;
- mov.b32 %r19, %f35;
- mov.u32 %r20, 4;
- shfl.sync.down.b32 %r21|%p12, %r19, %r20, %r12, %r14;
- mov.b32 %f36, %r21;
- add.f32 %f37, %f35, %f36;
- mov.b32 %r22, %f37;
- shfl.sync.down.b32 %r23|%p13, %r22, %r11, %r12, %r14;
- mov.b32 %f38, %r23;
- add.f32 %f39, %f37, %f38;
- mov.b32 %r24, %f39;
- mov.u32 %r25, 1;
- shfl.sync.down.b32 %r26|%p14, %r24, %r25, %r12, %r14;
- mov.b32 %f40, %r26;
- add.f32 %f7, %f39, %f40;
- setp.ne.s32 %p15, %r3, 0;
- @%p15 bra BB0_17;
-
- st.shared.f32 [_ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E8red_buf0], %f7;
-
- BB0_17:
- bar.sync 0;
- setp.ne.s32 %p16, %r3, 0;
- @%p16 bra BB0_19;
-
- ld.shared.f32 %f41, [_ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E75T_multiply_T_subtract_input_0_input_1_T_subtract_input_0_input_1_red_shared];
- ld.shared.f32 %f42, [_ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E8red_buf0];
- add.f32 %f43, %f41, %f42;
- st.shared.f32 [_ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E75T_multiply_T_subtract_input_0_input_1_T_subtract_input_0_input_1_red_shared], %f43;
-
- BB0_19:
- bar.sync 0;
- setp.ne.s32 %p17, %r1, 387;
- @%p17 bra BB0_21;
-
- ld.shared.f32 %f44, [_ZZ93Fused_Sub_Mul_ReduceSum_Mul_Mul_Add_Mul_Mul_Add_Add_Mul_Mul_split_4821135154174456593_kernel0E75T_multiply_T_subtract_input_0_input_1_T_subtract_input_0_input_1_red_shared];
- cvta.to.global.u64 %rd18, %rd9;
- ld.global.nc.f32 %f45, [%rd18];
- add.f32 %f46, %f44, %f45;
- cvta.to.global.u64 %rd19, %rd11;
- ld.global.nc.f32 %f47, [%rd19];
- cvta.to.global.u64 %rd20, %rd10;
- ld.global.nc.f32 %f48, [%rd20];
- add.f32 %f49, %f48, %f47;
- add.f32 %f50, %f46, %f49;
- mul.f32 %f51, %f50, 0f3A11A2B5;
- cvta.to.global.u64 %rd21, %rd15;
- st.global.f32 [%rd21], %f51;
-
- BB0_21:
- cvta.to.global.u64 %rd5, %rd16;
- cvta.to.global.u64 %rd6, %rd12;
- setp.lt.s32 %p2, %r1, 900;
- bar.sync 0;
- add.s64 %rd7, %rd6, %rd17;
- add.s64 %rd8, %rd5, %rd17;
- @!%p2 bra BB0_23;
- bra.uni BB0_22;
-
- BB0_22:
- ld.global.nc.f32 %f52, [%rd3];
- ld.global.nc.f32 %f53, [%rd4];
- sub.f32 %f54, %f52, %f53;
- ld.global.nc.f32 %f55, [%rd7];
- mul.f32 %f56, %f54, %f55;
- st.global.f32 [%rd8], %f56;
-
- BB0_23:
- @%p5 bra BB0_25;
-
- ld.global.nc.f32 %f57, [%rd4+2048];
- ld.global.nc.f32 %f58, [%rd3+2048];
- sub.f32 %f59, %f58, %f57;
- ld.global.nc.f32 %f60, [%rd7+2048];
- mul.f32 %f61, %f59, %f60;
- st.global.f32 [%rd8+2048], %f61;
-
- BB0_25:
- ret;
- }
-
|