72 lines
1.4 KiB
Plaintext
72 lines
1.4 KiB
Plaintext
|
//
|
||
|
// Generated by NVIDIA NVVM Compiler
|
||
|
//
|
||
|
// Compiler Build ID: CL-23083092
|
||
|
// Cuda compilation tools, release 9.1, V9.1.85
|
||
|
// Based on LLVM 3.4svn
|
||
|
//
|
||
|
|
||
|
.version 6.1
|
||
|
.target sm_30
|
||
|
.address_size 64
|
||
|
|
||
|
// .globl __raygen__oxMain
|
||
|
.const .align 8 .b8 cs[32];
|
||
|
|
||
|
.visible .entry __raygen__oxMain(
|
||
|
|
||
|
)
|
||
|
{
|
||
|
.reg .pred %p<3>;
|
||
|
.reg .b16 %rs<8>;
|
||
|
.reg .f32 %f<13>;
|
||
|
.reg .b32 %r<9>;
|
||
|
.reg .b64 %rd<9>;
|
||
|
|
||
|
|
||
|
// inline asm
|
||
|
call (%r1), _optix_get_launch_index_x, ();
|
||
|
// inline asm
|
||
|
// inline asm
|
||
|
call (%r2), _optix_get_launch_index_y, ();
|
||
|
// inline asm
|
||
|
ld.const.u64 %rd1, [cs];
|
||
|
cvta.to.global.u64 %rd2, %rd1;
|
||
|
ld.const.v2.u32 {%r4, %r5}, [cs+24];
|
||
|
mad.lo.s32 %r7, %r4, %r2, %r1;
|
||
|
mul.wide.u32 %rd3, %r7, 8;
|
||
|
add.s64 %rd4, %rd2, %rd3;
|
||
|
ld.global.v4.u16 {%rs4, %rs5, %rs6, %rs7}, [%rd4];
|
||
|
// inline asm
|
||
|
{ cvt.f32.f16 %f1, %rs4;}
|
||
|
|
||
|
// inline asm
|
||
|
// inline asm
|
||
|
{ cvt.f32.f16 %f2, %rs5;}
|
||
|
|
||
|
// inline asm
|
||
|
// inline asm
|
||
|
{ cvt.f32.f16 %f3, %rs6;}
|
||
|
|
||
|
// inline asm
|
||
|
setp.eq.s32 %p1, %r5, 1;
|
||
|
selp.f32 %f4, %f1, %f3, %p1;
|
||
|
selp.f32 %f5, %f3, %f1, %p1;
|
||
|
setp.eq.s32 %p2, %r5, 0;
|
||
|
mov.f32 %f6, 0f3F800000;
|
||
|
sub.f32 %f7, %f6, %f5;
|
||
|
sub.f32 %f8, %f6, %f2;
|
||
|
sub.f32 %f9, %f6, %f4;
|
||
|
ld.const.u64 %rd5, [cs+8];
|
||
|
cvta.to.global.u64 %rd6, %rd5;
|
||
|
mul.wide.u32 %rd7, %r7, 16;
|
||
|
add.s64 %rd8, %rd6, %rd7;
|
||
|
selp.f32 %f10, %f4, %f9, %p2;
|
||
|
selp.f32 %f11, %f5, %f7, %p2;
|
||
|
selp.f32 %f12, %f2, %f8, %p2;
|
||
|
st.global.v4.f32 [%rd8], {%f11, %f12, %f10, %f6};
|
||
|
ret;
|
||
|
}
|
||
|
|
||
|
|