|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.version 7.8 |
|
.target sm_60 |
|
.address_size 64 |
|
|
|
|
|
|
|
.visible .entry Process_uchar( |
|
.param .u64 Process_uchar_param_0, |
|
.param .u64 Process_uchar_param_1, |
|
.param .u64 Process_uchar_param_2, |
|
.param .u64 Process_uchar_param_3, |
|
.param .u64 Process_uchar_param_4, |
|
.param .u64 Process_uchar_param_5, |
|
.param .u32 Process_uchar_param_6, |
|
.param .u32 Process_uchar_param_7, |
|
.param .u32 Process_uchar_param_8, |
|
.param .u32 Process_uchar_param_9, |
|
.param .u32 Process_uchar_param_10, |
|
.param .u32 Process_uchar_param_11, |
|
.param .u32 Process_uchar_param_12, |
|
.param .f32 Process_uchar_param_13, |
|
.param .f32 Process_uchar_param_14 |
|
) |
|
{ |
|
.reg .pred %p<45> |
|
.reg .f32 %f<366> |
|
.reg .b32 %r<95> |
|
.reg .b64 %rd<18> |
|
|
|
|
|
ld.param.u64 %rd1, [Process_uchar_param_0] |
|
ld.param.u64 %rd2, [Process_uchar_param_1] |
|
ld.param.u64 %rd3, [Process_uchar_param_2] |
|
ld.param.u32 %r32, [Process_uchar_param_6] |
|
ld.param.u32 %r33, [Process_uchar_param_7] |
|
ld.param.u32 %r35, [Process_uchar_param_9] |
|
ld.param.u32 %r37, [Process_uchar_param_12] |
|
ld.param.f32 %f94, [Process_uchar_param_13] |
|
ld.param.f32 %f95, [Process_uchar_param_14] |
|
mov.u32 %r38, %ntid.x |
|
mov.u32 %r39, %ctaid.x |
|
mov.u32 %r40, %tid.x |
|
mad.lo.s32 %r1, %r39, %r38, %r40 |
|
mov.u32 %r41, %ntid.y |
|
mov.u32 %r42, %ctaid.y |
|
mov.u32 %r43, %tid.y |
|
mad.lo.s32 %r2, %r42, %r41, %r43 |
|
setp.ge.s32 %p1, %r2, %r33 |
|
setp.ge.s32 %p2, %r1, %r32 |
|
or.pred %p3, %p2, %p1 |
|
@%p3 bra $L__BB0_30 |
|
|
|
shr.u32 %r44, %r37, 31 |
|
add.s32 %r45, %r37, %r44 |
|
shr.s32 %r3, %r45, 1 |
|
sub.s32 %r4, %r2, %r3 |
|
div.s32 %r5, %r32, %r35 |
|
div.s32 %r6, %r1, %r5 |
|
div.s32 %r7, %r2, %r5 |
|
setp.eq.s64 %p4, %rd3, 0 |
|
@%p4 bra $L__BB0_3 |
|
|
|
cvt.rn.f32.s32 %f96, %r1 |
|
cvt.rn.f32.s32 %f97, %r2 |
|
tex.2d.v4.f32.f32 {%f312, %f98, %f99, %f100}, [%rd1, {%f96, %f97}] |
|
cvt.rn.f32.s32 %f101, %r7 |
|
cvt.rn.f32.s32 %f102, %r6 |
|
tex.2d.v4.f32.f32 {%f311, %f103, %f104, %f105}, [%rd2, {%f102, %f101}] |
|
tex.2d.v4.f32.f32 {%f313, %f106, %f107, %f108}, [%rd3, {%f102, %f101}] |
|
bra.uni $L__BB0_4 |
|
|
|
$L__BB0_3: |
|
cvt.rn.f32.s32 %f109, %r6 |
|
cvt.rn.f32.s32 %f110, %r7 |
|
tex.2d.v4.f32.f32 {%f311, %f313, %f111, %f112}, [%rd2, {%f109, %f110}] |
|
cvt.rn.f32.s32 %f113, %r2 |
|
cvt.rn.f32.s32 %f114, %r1 |
|
tex.2d.v4.f32.f32 {%f312, %f115, %f116, %f117}, [%rd1, {%f114, %f113}] |
|
|
|
$L__BB0_4: |
|
mul.f32 %f10, %f311, 0f437F0000 |
|
mul.f32 %f11, %f313, 0f437F0000 |
|
mul.f32 %f12, %f312, 0f437F0000 |
|
setp.lt.s32 %p5, %r37, 1 |
|
mov.f32 %f358, 0f00000000 |
|
mov.f32 %f359, %f358 |
|
mov.f32 %f360, %f358 |
|
mov.f32 %f361, %f358 |
|
@%p5 bra $L__BB0_28 |
|
|
|
add.f32 %f126, %f94, %f94 |
|
mul.f32 %f13, %f126, %f94 |
|
add.f32 %f127, %f95, %f95 |
|
mul.f32 %f14, %f127, %f95 |
|
and.b32 %r8, %r37, 1 |
|
sub.s32 %r9, %r37, %r8 |
|
sub.s32 %r10, %r1, %r3 |
|
mov.u32 %r88, 0 |
|
|
|
$L__BB0_6: |
|
add.s32 %r12, %r88, %r10 |
|
sub.s32 %r47, %r1, %r12 |
|
mul.lo.s32 %r13, %r47, %r47 |
|
@%p4 bra $L__BB0_17 |
|
|
|
setp.eq.s32 %p7, %r37, 1 |
|
mov.u32 %r91, 0 |
|
@%p7 bra $L__BB0_14 |
|
|
|
mov.u32 %r90, %r9 |
|
|
|
$L__BB0_9: |
|
add.s32 %r16, %r91, %r4 |
|
or.b32 %r50, %r16, %r12 |
|
setp.lt.s32 %p8, %r50, 0 |
|
setp.ge.s32 %p9, %r12, %r32 |
|
or.pred %p10, %p9, %p8 |
|
setp.ge.s32 %p11, %r16, %r33 |
|
or.pred %p12, %p11, %p10 |
|
@%p12 bra $L__BB0_11 |
|
|
|
cvt.rn.f32.s32 %f306, %r12 |
|
cvt.rn.f32.s32 %f129, %r16 |
|
tex.2d.v4.f32.f32 {%f130, %f131, %f132, %f133}, [%rd1, {%f306, %f129}] |
|
div.s32 %r51, %r12, %r5 |
|
cvt.rn.f32.s32 %f134, %r51 |
|
div.s32 %r52, %r16, %r5 |
|
cvt.rn.f32.s32 %f135, %r52 |
|
tex.2d.v4.f32.f32 {%f136, %f137, %f138, %f139}, [%rd2, {%f134, %f135}] |
|
tex.2d.v4.f32.f32 {%f140, %f141, %f142, %f143}, [%rd3, {%f134, %f135}] |
|
mul.f32 %f144, %f140, 0f437F0000 |
|
mul.f32 %f145, %f136, 0f437F0000 |
|
mul.f32 %f146, %f130, 0f437F0000 |
|
sub.s32 %r53, %r2, %r16 |
|
mad.lo.s32 %r54, %r53, %r53, %r13 |
|
cvt.rn.f32.s32 %f147, %r54 |
|
div.rn.f32 %f148, %f147, %f13 |
|
sub.f32 %f149, %f12, %f146 |
|
sub.f32 %f150, %f10, %f145 |
|
sub.f32 %f151, %f11, %f144 |
|
mul.f32 %f152, %f150, %f150 |
|
fma.rn.f32 %f153, %f149, %f149, %f152 |
|
fma.rn.f32 %f154, %f151, %f151, %f153 |
|
div.rn.f32 %f155, %f154, %f14 |
|
neg.f32 %f156, %f148 |
|
sub.f32 %f157, %f156, %f155 |
|
mul.f32 %f158, %f157, 0f3FB8AA3B |
|
ex2.approx.f32 %f159, %f158 |
|
add.f32 %f361, %f361, %f159 |
|
fma.rn.f32 %f358, %f146, %f159, %f358 |
|
fma.rn.f32 %f359, %f145, %f159, %f359 |
|
fma.rn.f32 %f360, %f144, %f159, %f360 |
|
|
|
$L__BB0_11: |
|
add.s32 %r17, %r16, 1 |
|
or.b32 %r55, %r17, %r12 |
|
setp.lt.s32 %p13, %r55, 0 |
|
or.pred %p15, %p9, %p13 |
|
setp.ge.s32 %p16, %r17, %r33 |
|
or.pred %p17, %p16, %p15 |
|
@%p17 bra $L__BB0_13 |
|
|
|
cvt.rn.f32.s32 %f305, %r12 |
|
cvt.rn.f32.s32 %f160, %r17 |
|
tex.2d.v4.f32.f32 {%f161, %f162, %f163, %f164}, [%rd1, {%f305, %f160}] |
|
div.s32 %r56, %r12, %r5 |
|
cvt.rn.f32.s32 %f165, %r56 |
|
div.s32 %r57, %r17, %r5 |
|
cvt.rn.f32.s32 %f166, %r57 |
|
tex.2d.v4.f32.f32 {%f167, %f168, %f169, %f170}, [%rd2, {%f165, %f166}] |
|
tex.2d.v4.f32.f32 {%f171, %f172, %f173, %f174}, [%rd3, {%f165, %f166}] |
|
mul.f32 %f175, %f171, 0f437F0000 |
|
mul.f32 %f176, %f167, 0f437F0000 |
|
mul.f32 %f177, %f161, 0f437F0000 |
|
sub.s32 %r58, %r2, %r17 |
|
mad.lo.s32 %r59, %r58, %r58, %r13 |
|
cvt.rn.f32.s32 %f178, %r59 |
|
div.rn.f32 %f179, %f178, %f13 |
|
sub.f32 %f180, %f12, %f177 |
|
sub.f32 %f181, %f10, %f176 |
|
sub.f32 %f182, %f11, %f175 |
|
mul.f32 %f183, %f181, %f181 |
|
fma.rn.f32 %f184, %f180, %f180, %f183 |
|
fma.rn.f32 %f185, %f182, %f182, %f184 |
|
div.rn.f32 %f186, %f185, %f14 |
|
neg.f32 %f187, %f179 |
|
sub.f32 %f188, %f187, %f186 |
|
mul.f32 %f189, %f188, 0f3FB8AA3B |
|
ex2.approx.f32 %f190, %f189 |
|
add.f32 %f361, %f361, %f190 |
|
fma.rn.f32 %f358, %f177, %f190, %f358 |
|
fma.rn.f32 %f359, %f176, %f190, %f359 |
|
fma.rn.f32 %f360, %f175, %f190, %f360 |
|
|
|
$L__BB0_13: |
|
add.s32 %r91, %r91, 2 |
|
add.s32 %r90, %r90, -2 |
|
setp.ne.s32 %p18, %r90, 0 |
|
@%p18 bra $L__BB0_9 |
|
|
|
$L__BB0_14: |
|
setp.eq.s32 %p19, %r8, 0 |
|
@%p19 bra $L__BB0_27 |
|
|
|
setp.ge.s32 %p20, %r12, %r32 |
|
add.s32 %r21, %r91, %r4 |
|
or.b32 %r60, %r21, %r12 |
|
setp.lt.s32 %p21, %r60, 0 |
|
or.pred %p22, %p20, %p21 |
|
setp.ge.s32 %p23, %r21, %r33 |
|
or.pred %p24, %p23, %p22 |
|
@%p24 bra $L__BB0_27 |
|
|
|
cvt.rn.f32.s32 %f307, %r12 |
|
cvt.rn.f32.s32 %f191, %r21 |
|
tex.2d.v4.f32.f32 {%f192, %f193, %f194, %f195}, [%rd1, {%f307, %f191}] |
|
div.s32 %r61, %r12, %r5 |
|
cvt.rn.f32.s32 %f196, %r61 |
|
div.s32 %r62, %r21, %r5 |
|
cvt.rn.f32.s32 %f197, %r62 |
|
tex.2d.v4.f32.f32 {%f198, %f199, %f200, %f201}, [%rd2, {%f196, %f197}] |
|
tex.2d.v4.f32.f32 {%f202, %f203, %f204, %f205}, [%rd3, {%f196, %f197}] |
|
mul.f32 %f206, %f202, 0f437F0000 |
|
mul.f32 %f207, %f198, 0f437F0000 |
|
mul.f32 %f208, %f192, 0f437F0000 |
|
sub.s32 %r63, %r2, %r21 |
|
mad.lo.s32 %r64, %r63, %r63, %r13 |
|
cvt.rn.f32.s32 %f209, %r64 |
|
div.rn.f32 %f210, %f209, %f13 |
|
sub.f32 %f211, %f12, %f208 |
|
sub.f32 %f212, %f10, %f207 |
|
sub.f32 %f213, %f11, %f206 |
|
mul.f32 %f214, %f212, %f212 |
|
fma.rn.f32 %f215, %f211, %f211, %f214 |
|
fma.rn.f32 %f216, %f213, %f213, %f215 |
|
div.rn.f32 %f217, %f216, %f14 |
|
neg.f32 %f218, %f210 |
|
sub.f32 %f219, %f218, %f217 |
|
mul.f32 %f220, %f219, 0f3FB8AA3B |
|
ex2.approx.f32 %f221, %f220 |
|
add.f32 %f361, %f361, %f221 |
|
fma.rn.f32 %f358, %f208, %f221, %f358 |
|
fma.rn.f32 %f359, %f207, %f221, %f359 |
|
fma.rn.f32 %f360, %f206, %f221, %f360 |
|
bra.uni $L__BB0_27 |
|
|
|
$L__BB0_17: |
|
setp.eq.s32 %p25, %r37, 1 |
|
mov.u32 %r94, 0 |
|
@%p25 bra $L__BB0_24 |
|
|
|
mov.u32 %r93, %r9 |
|
|
|
$L__BB0_19: |
|
add.s32 %r24, %r94, %r4 |
|
or.b32 %r67, %r24, %r12 |
|
setp.lt.s32 %p26, %r67, 0 |
|
setp.ge.s32 %p27, %r12, %r32 |
|
or.pred %p28, %p27, %p26 |
|
setp.ge.s32 %p29, %r24, %r33 |
|
or.pred %p30, %p29, %p28 |
|
@%p30 bra $L__BB0_21 |
|
|
|
cvt.rn.f32.s32 %f309, %r12 |
|
div.s32 %r68, %r12, %r5 |
|
cvt.rn.f32.s32 %f223, %r68 |
|
div.s32 %r69, %r24, %r5 |
|
cvt.rn.f32.s32 %f224, %r69 |
|
tex.2d.v4.f32.f32 {%f225, %f226, %f227, %f228}, [%rd2, {%f223, %f224}] |
|
cvt.rn.f32.s32 %f229, %r24 |
|
tex.2d.v4.f32.f32 {%f230, %f231, %f232, %f233}, [%rd1, {%f309, %f229}] |
|
mul.f32 %f234, %f226, 0f437F0000 |
|
mul.f32 %f235, %f225, 0f437F0000 |
|
mul.f32 %f236, %f230, 0f437F0000 |
|
sub.s32 %r70, %r2, %r24 |
|
mad.lo.s32 %r71, %r70, %r70, %r13 |
|
cvt.rn.f32.s32 %f237, %r71 |
|
div.rn.f32 %f238, %f237, %f13 |
|
sub.f32 %f239, %f12, %f236 |
|
sub.f32 %f240, %f10, %f235 |
|
sub.f32 %f241, %f11, %f234 |
|
mul.f32 %f242, %f240, %f240 |
|
fma.rn.f32 %f243, %f239, %f239, %f242 |
|
fma.rn.f32 %f244, %f241, %f241, %f243 |
|
div.rn.f32 %f245, %f244, %f14 |
|
neg.f32 %f246, %f238 |
|
sub.f32 %f247, %f246, %f245 |
|
mul.f32 %f248, %f247, 0f3FB8AA3B |
|
ex2.approx.f32 %f249, %f248 |
|
add.f32 %f361, %f361, %f249 |
|
fma.rn.f32 %f358, %f236, %f249, %f358 |
|
fma.rn.f32 %f359, %f235, %f249, %f359 |
|
fma.rn.f32 %f360, %f234, %f249, %f360 |
|
|
|
$L__BB0_21: |
|
add.s32 %r25, %r24, 1 |
|
or.b32 %r72, %r25, %r12 |
|
setp.lt.s32 %p31, %r72, 0 |
|
or.pred %p33, %p27, %p31 |
|
setp.ge.s32 %p34, %r25, %r33 |
|
or.pred %p35, %p34, %p33 |
|
@%p35 bra $L__BB0_23 |
|
|
|
cvt.rn.f32.s32 %f308, %r12 |
|
div.s32 %r73, %r12, %r5 |
|
cvt.rn.f32.s32 %f250, %r73 |
|
div.s32 %r74, %r25, %r5 |
|
cvt.rn.f32.s32 %f251, %r74 |
|
tex.2d.v4.f32.f32 {%f252, %f253, %f254, %f255}, [%rd2, {%f250, %f251}] |
|
cvt.rn.f32.s32 %f256, %r25 |
|
tex.2d.v4.f32.f32 {%f257, %f258, %f259, %f260}, [%rd1, {%f308, %f256}] |
|
mul.f32 %f261, %f253, 0f437F0000 |
|
mul.f32 %f262, %f252, 0f437F0000 |
|
mul.f32 %f263, %f257, 0f437F0000 |
|
sub.s32 %r75, %r2, %r25 |
|
mad.lo.s32 %r76, %r75, %r75, %r13 |
|
cvt.rn.f32.s32 %f264, %r76 |
|
div.rn.f32 %f265, %f264, %f13 |
|
sub.f32 %f266, %f12, %f263 |
|
sub.f32 %f267, %f10, %f262 |
|
sub.f32 %f268, %f11, %f261 |
|
mul.f32 %f269, %f267, %f267 |
|
fma.rn.f32 %f270, %f266, %f266, %f269 |
|
fma.rn.f32 %f271, %f268, %f268, %f270 |
|
div.rn.f32 %f272, %f271, %f14 |
|
neg.f32 %f273, %f265 |
|
sub.f32 %f274, %f273, %f272 |
|
mul.f32 %f275, %f274, 0f3FB8AA3B |
|
ex2.approx.f32 %f276, %f275 |
|
add.f32 %f361, %f361, %f276 |
|
fma.rn.f32 %f358, %f263, %f276, %f358 |
|
fma.rn.f32 %f359, %f262, %f276, %f359 |
|
fma.rn.f32 %f360, %f261, %f276, %f360 |
|
|
|
$L__BB0_23: |
|
add.s32 %r94, %r94, 2 |
|
add.s32 %r93, %r93, -2 |
|
setp.ne.s32 %p36, %r93, 0 |
|
@%p36 bra $L__BB0_19 |
|
|
|
$L__BB0_24: |
|
setp.eq.s32 %p37, %r8, 0 |
|
@%p37 bra $L__BB0_27 |
|
|
|
setp.ge.s32 %p38, %r12, %r32 |
|
add.s32 %r29, %r94, %r4 |
|
or.b32 %r77, %r29, %r12 |
|
setp.lt.s32 %p39, %r77, 0 |
|
or.pred %p40, %p38, %p39 |
|
setp.ge.s32 %p41, %r29, %r33 |
|
or.pred %p42, %p41, %p40 |
|
@%p42 bra $L__BB0_27 |
|
|
|
cvt.rn.f32.s32 %f310, %r12 |
|
div.s32 %r78, %r12, %r5 |
|
cvt.rn.f32.s32 %f277, %r78 |
|
div.s32 %r79, %r29, %r5 |
|
cvt.rn.f32.s32 %f278, %r79 |
|
tex.2d.v4.f32.f32 {%f279, %f280, %f281, %f282}, [%rd2, {%f277, %f278}] |
|
cvt.rn.f32.s32 %f283, %r29 |
|
tex.2d.v4.f32.f32 {%f284, %f285, %f286, %f287}, [%rd1, {%f310, %f283}] |
|
mul.f32 %f288, %f280, 0f437F0000 |
|
mul.f32 %f289, %f279, 0f437F0000 |
|
mul.f32 %f290, %f284, 0f437F0000 |
|
sub.s32 %r80, %r2, %r29 |
|
mad.lo.s32 %r81, %r80, %r80, %r13 |
|
cvt.rn.f32.s32 %f291, %r81 |
|
div.rn.f32 %f292, %f291, %f13 |
|
sub.f32 %f293, %f12, %f290 |
|
sub.f32 %f294, %f10, %f289 |
|
sub.f32 %f295, %f11, %f288 |
|
mul.f32 %f296, %f294, %f294 |
|
fma.rn.f32 %f297, %f293, %f293, %f296 |
|
fma.rn.f32 %f298, %f295, %f295, %f297 |
|
div.rn.f32 %f299, %f298, %f14 |
|
neg.f32 %f300, %f292 |
|
sub.f32 %f301, %f300, %f299 |
|
mul.f32 %f302, %f301, 0f3FB8AA3B |
|
ex2.approx.f32 %f303, %f302 |
|
add.f32 %f361, %f361, %f303 |
|
fma.rn.f32 %f358, %f290, %f303, %f358 |
|
fma.rn.f32 %f359, %f289, %f303, %f359 |
|
fma.rn.f32 %f360, %f288, %f303, %f360 |
|
|
|
$L__BB0_27: |
|
add.s32 %r88, %r88, 1 |
|
setp.lt.s32 %p43, %r88, %r37 |
|
@%p43 bra $L__BB0_6 |
|
|
|
$L__BB0_28: |
|
ld.param.u32 %r87, [Process_uchar_param_11] |
|
ld.param.u64 %rd15, [Process_uchar_param_3] |
|
ld.param.u32 %r86, [Process_uchar_param_8] |
|
div.rn.f32 %f92, %f359, %f361 |
|
div.rn.f32 %f93, %f360, %f361 |
|
div.rn.f32 %f304, %f358, %f361 |
|
cvt.rzi.u32.f32 %r82, %f304 |
|
mad.lo.s32 %r83, %r2, %r86, %r1 |
|
cvt.s64.s32 %rd7, %r83 |
|
cvta.to.global.u64 %rd8, %rd15 |
|
add.s64 %rd9, %rd8, %rd7 |
|
st.global.u8 [%rd9], %r82 |
|
mad.lo.s32 %r31, %r7, %r87, %r6 |
|
@%p4 bra $L__BB0_30 |
|
|
|
ld.param.u64 %rd17, [Process_uchar_param_5] |
|
ld.param.u64 %rd16, [Process_uchar_param_4] |
|
cvt.s64.s32 %rd10, %r31 |
|
cvt.rzi.u32.f32 %r84, %f92 |
|
cvta.to.global.u64 %rd11, %rd16 |
|
add.s64 %rd12, %rd11, %rd10 |
|
st.global.u8 [%rd12], %r84 |
|
cvt.rzi.u32.f32 %r85, %f93 |
|
cvta.to.global.u64 %rd13, %rd17 |
|
add.s64 %rd14, %rd13, %rd10 |
|
st.global.u8 [%rd14], %r85 |
|
|
|
$L__BB0_30: |
|
ret |
|
|
|
} |
|
|
|
.visible .entry Process_uchar2( |
|
.param .u64 Process_uchar2_param_0, |
|
.param .u64 Process_uchar2_param_1, |
|
.param .u64 Process_uchar2_param_2, |
|
.param .u64 Process_uchar2_param_3, |
|
.param .u64 Process_uchar2_param_4, |
|
.param .u64 Process_uchar2_param_5, |
|
.param .u32 Process_uchar2_param_6, |
|
.param .u32 Process_uchar2_param_7, |
|
.param .u32 Process_uchar2_param_8, |
|
.param .u32 Process_uchar2_param_9, |
|
.param .u32 Process_uchar2_param_10, |
|
.param .u32 Process_uchar2_param_11, |
|
.param .u32 Process_uchar2_param_12, |
|
.param .f32 Process_uchar2_param_13, |
|
.param .f32 Process_uchar2_param_14 |
|
) |
|
{ |
|
.reg .pred %p<24> |
|
.reg .b16 %rs<3> |
|
.reg .f32 %f<192> |
|
.reg .b32 %r<69> |
|
.reg .b64 %rd<13> |
|
|
|
|
|
ld.param.u64 %rd1, [Process_uchar2_param_0] |
|
ld.param.u64 %rd2, [Process_uchar2_param_1] |
|
ld.param.u32 %r23, [Process_uchar2_param_6] |
|
ld.param.u32 %r24, [Process_uchar2_param_7] |
|
ld.param.u32 %r26, [Process_uchar2_param_9] |
|
ld.param.u32 %r28, [Process_uchar2_param_12] |
|
ld.param.f32 %f51, [Process_uchar2_param_13] |
|
ld.param.f32 %f52, [Process_uchar2_param_14] |
|
mov.u32 %r29, %ntid.x |
|
mov.u32 %r30, %ctaid.x |
|
mov.u32 %r31, %tid.x |
|
mad.lo.s32 %r1, %r30, %r29, %r31 |
|
mov.u32 %r32, %ntid.y |
|
mov.u32 %r33, %ctaid.y |
|
mov.u32 %r34, %tid.y |
|
mad.lo.s32 %r2, %r33, %r32, %r34 |
|
setp.ge.s32 %p1, %r2, %r24 |
|
setp.ge.s32 %p2, %r1, %r23 |
|
or.pred %p3, %p2, %p1 |
|
@%p3 bra $L__BB1_15 |
|
|
|
shr.u32 %r35, %r28, 31 |
|
add.s32 %r36, %r28, %r35 |
|
shr.s32 %r3, %r36, 1 |
|
div.s32 %r4, %r23, %r26 |
|
div.s32 %r5, %r1, %r4 |
|
cvt.rn.f32.s32 %f57, %r5 |
|
div.s32 %r6, %r2, %r4 |
|
cvt.rn.f32.s32 %f58, %r6 |
|
tex.2d.v4.f32.f32 {%f59, %f60, %f61, %f62}, [%rd2, {%f57, %f58}] |
|
mul.f32 %f1, %f59, 0f437F0000 |
|
mul.f32 %f2, %f60, 0f437F0000 |
|
cvt.rn.f32.s32 %f63, %r2 |
|
cvt.rn.f32.s32 %f64, %r1 |
|
tex.2d.v4.f32.f32 {%f65, %f66, %f67, %f68}, [%rd1, {%f64, %f63}] |
|
sub.s32 %r7, %r2, %r3 |
|
mul.f32 %f3, %f65, 0f437F0000 |
|
setp.lt.s32 %p4, %r28, 1 |
|
mov.f32 %f168, 0f00000000 |
|
mov.f32 %f169, %f168 |
|
mov.f32 %f170, %f168 |
|
mov.f32 %f171, %f168 |
|
@%p4 bra $L__BB1_14 |
|
|
|
add.f32 %f73, %f51, %f51 |
|
mul.f32 %f4, %f73, %f51 |
|
add.f32 %f74, %f52, %f52 |
|
mul.f32 %f5, %f74, %f52 |
|
and.b32 %r8, %r28, 1 |
|
sub.s32 %r9, %r28, %r8 |
|
sub.s32 %r10, %r1, %r3 |
|
mov.u32 %r65, 0 |
|
|
|
$L__BB1_3: |
|
mov.u32 %r68, 0 |
|
add.s32 %r12, %r65, %r10 |
|
cvt.rn.f32.s32 %f10, %r12 |
|
sub.s32 %r39, %r1, %r12 |
|
mul.lo.s32 %r13, %r39, %r39 |
|
setp.eq.s32 %p5, %r28, 1 |
|
@%p5 bra $L__BB1_10 |
|
|
|
mov.u32 %r68, 0 |
|
mov.u32 %r67, %r9 |
|
|
|
$L__BB1_5: |
|
add.s32 %r16, %r68, %r7 |
|
or.b32 %r41, %r16, %r12 |
|
setp.lt.s32 %p6, %r41, 0 |
|
setp.ge.s32 %p7, %r12, %r23 |
|
or.pred %p8, %p7, %p6 |
|
setp.ge.s32 %p9, %r16, %r24 |
|
or.pred %p10, %p9, %p8 |
|
@%p10 bra $L__BB1_7 |
|
|
|
div.s32 %r42, %r12, %r4 |
|
cvt.rn.f32.s32 %f76, %r42 |
|
div.s32 %r43, %r16, %r4 |
|
cvt.rn.f32.s32 %f77, %r43 |
|
tex.2d.v4.f32.f32 {%f78, %f79, %f80, %f81}, [%rd2, {%f76, %f77}] |
|
cvt.rn.f32.s32 %f82, %r16 |
|
tex.2d.v4.f32.f32 {%f83, %f84, %f85, %f86}, [%rd1, {%f10, %f82}] |
|
mul.f32 %f87, %f83, 0f437F0000 |
|
mul.f32 %f88, %f78, 0f437F0000 |
|
mul.f32 %f89, %f79, 0f437F0000 |
|
sub.s32 %r44, %r2, %r16 |
|
mad.lo.s32 %r45, %r44, %r44, %r13 |
|
cvt.rn.f32.s32 %f90, %r45 |
|
div.rn.f32 %f91, %f90, %f4 |
|
sub.f32 %f92, %f3, %f87 |
|
sub.f32 %f93, %f1, %f88 |
|
sub.f32 %f94, %f2, %f89 |
|
mul.f32 %f95, %f92, %f92 |
|
fma.rn.f32 %f96, %f93, %f93, %f95 |
|
fma.rn.f32 %f97, %f94, %f94, %f96 |
|
div.rn.f32 %f98, %f97, %f5 |
|
neg.f32 %f99, %f91 |
|
sub.f32 %f100, %f99, %f98 |
|
mul.f32 %f101, %f100, 0f3FB8AA3B |
|
ex2.approx.f32 %f102, %f101 |
|
add.f32 %f171, %f171, %f102 |
|
fma.rn.f32 %f168, %f102, %f87, %f168 |
|
fma.rn.f32 %f169, %f88, %f102, %f169 |
|
fma.rn.f32 %f170, %f89, %f102, %f170 |
|
|
|
$L__BB1_7: |
|
add.s32 %r17, %r16, 1 |
|
or.b32 %r46, %r17, %r12 |
|
setp.lt.s32 %p11, %r46, 0 |
|
or.pred %p13, %p7, %p11 |
|
setp.ge.s32 %p14, %r17, %r24 |
|
or.pred %p15, %p14, %p13 |
|
@%p15 bra $L__BB1_9 |
|
|
|
div.s32 %r47, %r12, %r4 |
|
cvt.rn.f32.s32 %f103, %r47 |
|
div.s32 %r48, %r17, %r4 |
|
cvt.rn.f32.s32 %f104, %r48 |
|
tex.2d.v4.f32.f32 {%f105, %f106, %f107, %f108}, [%rd2, {%f103, %f104}] |
|
cvt.rn.f32.s32 %f109, %r17 |
|
tex.2d.v4.f32.f32 {%f110, %f111, %f112, %f113}, [%rd1, {%f10, %f109}] |
|
mul.f32 %f114, %f110, 0f437F0000 |
|
mul.f32 %f115, %f105, 0f437F0000 |
|
mul.f32 %f116, %f106, 0f437F0000 |
|
sub.s32 %r49, %r2, %r17 |
|
mad.lo.s32 %r50, %r49, %r49, %r13 |
|
cvt.rn.f32.s32 %f117, %r50 |
|
div.rn.f32 %f118, %f117, %f4 |
|
sub.f32 %f119, %f3, %f114 |
|
sub.f32 %f120, %f1, %f115 |
|
sub.f32 %f121, %f2, %f116 |
|
mul.f32 %f122, %f119, %f119 |
|
fma.rn.f32 %f123, %f120, %f120, %f122 |
|
fma.rn.f32 %f124, %f121, %f121, %f123 |
|
div.rn.f32 %f125, %f124, %f5 |
|
neg.f32 %f126, %f118 |
|
sub.f32 %f127, %f126, %f125 |
|
mul.f32 %f128, %f127, 0f3FB8AA3B |
|
ex2.approx.f32 %f129, %f128 |
|
add.f32 %f171, %f171, %f129 |
|
fma.rn.f32 %f168, %f129, %f114, %f168 |
|
fma.rn.f32 %f169, %f115, %f129, %f169 |
|
fma.rn.f32 %f170, %f116, %f129, %f170 |
|
|
|
$L__BB1_9: |
|
add.s32 %r68, %r68, 2 |
|
add.s32 %r67, %r67, -2 |
|
setp.ne.s32 %p16, %r67, 0 |
|
@%p16 bra $L__BB1_5 |
|
|
|
$L__BB1_10: |
|
and.b32 %r61, %r28, 1 |
|
setp.eq.s32 %p17, %r61, 0 |
|
@%p17 bra $L__BB1_13 |
|
|
|
setp.ge.s32 %p18, %r12, %r23 |
|
add.s32 %r21, %r68, %r7 |
|
or.b32 %r51, %r21, %r12 |
|
setp.lt.s32 %p19, %r51, 0 |
|
or.pred %p20, %p18, %p19 |
|
setp.ge.s32 %p21, %r21, %r24 |
|
or.pred %p22, %p21, %p20 |
|
@%p22 bra $L__BB1_13 |
|
|
|
div.s32 %r52, %r12, %r4 |
|
cvt.rn.f32.s32 %f130, %r52 |
|
div.s32 %r53, %r21, %r4 |
|
cvt.rn.f32.s32 %f131, %r53 |
|
tex.2d.v4.f32.f32 {%f132, %f133, %f134, %f135}, [%rd2, {%f130, %f131}] |
|
cvt.rn.f32.s32 %f136, %r21 |
|
tex.2d.v4.f32.f32 {%f137, %f138, %f139, %f140}, [%rd1, {%f10, %f136}] |
|
mul.f32 %f141, %f137, 0f437F0000 |
|
mul.f32 %f142, %f132, 0f437F0000 |
|
mul.f32 %f143, %f133, 0f437F0000 |
|
sub.s32 %r54, %r2, %r21 |
|
mad.lo.s32 %r55, %r54, %r54, %r13 |
|
cvt.rn.f32.s32 %f144, %r55 |
|
div.rn.f32 %f145, %f144, %f4 |
|
sub.f32 %f146, %f3, %f141 |
|
sub.f32 %f147, %f1, %f142 |
|
sub.f32 %f148, %f2, %f143 |
|
mul.f32 %f149, %f146, %f146 |
|
fma.rn.f32 %f150, %f147, %f147, %f149 |
|
fma.rn.f32 %f151, %f148, %f148, %f150 |
|
div.rn.f32 %f152, %f151, %f5 |
|
neg.f32 %f153, %f145 |
|
sub.f32 %f154, %f153, %f152 |
|
mul.f32 %f155, %f154, 0f3FB8AA3B |
|
ex2.approx.f32 %f156, %f155 |
|
add.f32 %f171, %f171, %f156 |
|
fma.rn.f32 %f168, %f156, %f141, %f168 |
|
fma.rn.f32 %f169, %f142, %f156, %f169 |
|
fma.rn.f32 %f170, %f143, %f156, %f170 |
|
|
|
$L__BB1_13: |
|
add.s32 %r65, %r65, 1 |
|
setp.lt.s32 %p23, %r65, %r28 |
|
@%p23 bra $L__BB1_3 |
|
|
|
$L__BB1_14: |
|
ld.param.u64 %rd12, [Process_uchar2_param_4] |
|
ld.param.u32 %r63, [Process_uchar2_param_11] |
|
ld.param.u64 %rd11, [Process_uchar2_param_3] |
|
ld.param.u32 %r62, [Process_uchar2_param_8] |
|
div.rn.f32 %f157, %f168, %f171 |
|
cvt.rzi.u32.f32 %r56, %f157 |
|
mad.lo.s32 %r57, %r2, %r62, %r1 |
|
cvt.s64.s32 %rd5, %r57 |
|
cvta.to.global.u64 %rd6, %rd11 |
|
add.s64 %rd7, %rd6, %rd5 |
|
st.global.u8 [%rd7], %r56 |
|
mad.lo.s32 %r58, %r6, %r63, %r5 |
|
div.rn.f32 %f158, %f169, %f171 |
|
cvt.rzi.u32.f32 %r59, %f158 |
|
div.rn.f32 %f159, %f170, %f171 |
|
cvt.rzi.u32.f32 %r60, %f159 |
|
cvta.to.global.u64 %rd8, %rd12 |
|
mul.wide.s32 %rd9, %r58, 2 |
|
add.s64 %rd10, %rd8, %rd9 |
|
cvt.u16.u32 %rs1, %r60 |
|
cvt.u16.u32 %rs2, %r59 |
|
st.global.v2.u8 [%rd10], {%rs2, %rs1} |
|
|
|
$L__BB1_15: |
|
ret |
|
|
|
} |
|
|
|
|