Files
ispc/examples_cuda/mandelbrot_tasks3d/test.ptx
2013-11-04 11:44:49 +01:00

178 lines
4.1 KiB
Plaintext

//
// Generated by NVIDIA NVVM Compiler
// Compiler built on Thu Jul 18 02:37:37 2013 (1374107857)
// Cuda compilation tools, release 5.5, V5.5.0
//
.version 3.2
.target sm_35
.address_size 64
.file 1 "/home/evghenii/soft/ispc-code/ispc/examples/mandelbrot_tasks3d/test.cu", 1383046614, 1449
.file 2 "/usr/local/cuda-5.5/bin/..//include/cuda_device_runtime_api.h", 1375338991, 7655
.file 3 "/usr/local/cuda-5.5/bin/..//include/device_functions.h", 1375338991, 185228
.weak .func (.param .b32 func_retval0) cudaMalloc(
.param .b64 cudaMalloc_param_0,
.param .b64 cudaMalloc_param_1
)
{
.reg .s32 %r<2>;
mov.u32 %r1, 30;
st.param.b32 [func_retval0+0], %r1;
.loc 2 66 3
ret;
}
.weak .func (.param .b32 func_retval0) cudaFuncGetAttributes(
.param .b64 cudaFuncGetAttributes_param_0,
.param .b64 cudaFuncGetAttributes_param_1
)
{
.reg .s32 %r<2>;
mov.u32 %r1, 30;
st.param.b32 [func_retval0+0], %r1;
.loc 2 71 3
ret;
}
.visible .entry _Z19mandelbrot_scanlineffffiiiiiPi(
.param .f32 _Z19mandelbrot_scanlineffffiiiiiPi_param_0,
.param .f32 _Z19mandelbrot_scanlineffffiiiiiPi_param_1,
.param .f32 _Z19mandelbrot_scanlineffffiiiiiPi_param_2,
.param .f32 _Z19mandelbrot_scanlineffffiiiiiPi_param_3,
.param .u32 _Z19mandelbrot_scanlineffffiiiiiPi_param_4,
.param .u32 _Z19mandelbrot_scanlineffffiiiiiPi_param_5,
.param .u32 _Z19mandelbrot_scanlineffffiiiiiPi_param_6,
.param .u32 _Z19mandelbrot_scanlineffffiiiiiPi_param_7,
.param .u32 _Z19mandelbrot_scanlineffffiiiiiPi_param_8,
.param .u64 _Z19mandelbrot_scanlineffffiiiiiPi_param_9
)
{
.reg .pred %p<9>;
.reg .s32 %r<36>;
.reg .f32 %f<20>;
.reg .s64 %rd<5>;
ld.param.f32 %f9, [_Z19mandelbrot_scanlineffffiiiiiPi_param_0];
ld.param.f32 %f10, [_Z19mandelbrot_scanlineffffiiiiiPi_param_1];
ld.param.f32 %f11, [_Z19mandelbrot_scanlineffffiiiiiPi_param_2];
ld.param.f32 %f12, [_Z19mandelbrot_scanlineffffiiiiiPi_param_3];
ld.param.u32 %r14, [_Z19mandelbrot_scanlineffffiiiiiPi_param_4];
ld.param.u32 %r17, [_Z19mandelbrot_scanlineffffiiiiiPi_param_5];
ld.param.u32 %r15, [_Z19mandelbrot_scanlineffffiiiiiPi_param_6];
ld.param.u32 %r18, [_Z19mandelbrot_scanlineffffiiiiiPi_param_7];
ld.param.u32 %r16, [_Z19mandelbrot_scanlineffffiiiiiPi_param_8];
ld.param.u64 %rd1, [_Z19mandelbrot_scanlineffffiiiiiPi_param_9];
.loc 1 43 1
mov.u32 %r19, %ctaid.x;
.loc 1 44 1
mad.lo.s32 %r20, %r19, %r15, %r15;
.loc 3 2621 10
min.s32 %r1, %r20, %r14;
.loc 1 46 1
mov.u32 %r21, %ctaid.y;
mul.lo.s32 %r33, %r21, %r18;
.loc 1 47 1
add.s32 %r22, %r33, %r18;
.loc 3 2621 10
min.s32 %r3, %r22, %r17;
.loc 1 49 1
setp.ge.s32 %p1, %r33, %r3;
@%p1 bra BB2_12;
cvta.to.global.u64 %rd2, %rd1;
BB2_2:
.loc 1 43 1
mul.lo.s32 %r34, %r19, %r15;
.loc 1 50 1
setp.ge.s32 %p2, %r34, %r1;
@%p2 bra BB2_11;
.loc 1 53 1
cvt.rn.f32.s32 %f13, %r33;
fma.rn.f32 %f1, %f13, %f12, %f11;
BB2_4:
.loc 1 52 1
mov.u32 %r26, %tid.x;
and.b32 %r27, %r26, 31;
add.s32 %r7, %r27, %r34;
cvt.rn.f32.u32 %f14, %r7;
fma.rn.f32 %f2, %f14, %f10, %f9;
mov.u32 %r35, 0;
setp.gt.s32 %p3, %r16, 0;
.loc 1 13 1
@%p3 bra BB2_5;
bra.uni BB2_8;
BB2_5:
mov.f32 %f18, %f1;
mov.f32 %f19, %f2;
BB2_6:
.loc 1 14 1
mov.f32 %f4, %f19;
mov.f32 %f3, %f18;
mul.f32 %f5, %f3, %f3;
mul.f32 %f6, %f4, %f4;
add.f32 %f15, %f6, %f5;
setp.gt.f32 %p4, %f15, 0f40800000;
@%p4 bra BB2_8;
.loc 1 17 1
sub.f32 %f16, %f6, %f5;
.loc 1 18 1
add.f32 %f17, %f4, %f4;
.loc 1 19 1
add.f32 %f7, %f2, %f16;
.loc 1 20 1
fma.rn.f32 %f8, %f17, %f3, %f1;
.loc 1 13 96
add.s32 %r35, %r35, 1;
.loc 1 13 1
setp.lt.s32 %p5, %r35, %r16;
mov.f32 %f18, %f8;
mov.f32 %f19, %f7;
@%p5 bra BB2_6;
BB2_8:
.loc 1 56 1
mad.lo.s32 %r30, %r33, %r14, %r34;
add.s32 %r11, %r30, %r27;
.loc 1 57 1
setp.ge.u32 %p6, %r7, %r1;
@%p6 bra BB2_10;
mul.wide.s32 %rd3, %r11, 4;
add.s64 %rd4, %rd2, %rd3;
.loc 1 58 1
st.global.u32 [%rd4], %r35;
BB2_10:
.loc 1 50 57
add.s32 %r34, %r34, 32;
.loc 1 50 1
setp.lt.s32 %p7, %r34, %r1;
@%p7 bra BB2_4;
BB2_11:
.loc 1 49 57
add.s32 %r33, %r33, 1;
.loc 1 49 1
setp.lt.s32 %p8, %r33, %r3;
@%p8 bra BB2_2;
BB2_12:
.loc 1 60 2
ret;
}