// // Generated by NVIDIA NVVM Compiler // // Compiler Build ID: CL-31968024 // Cuda compilation tools, release 12.0, V12.0.76 // Based on NVVM 7.0.1 // .version 8.0 .target sm_52 .address_size 64 // .globl __closesthit__oxMain .const .align 16 .b8 params[1184]; .visible .entry __closesthit__oxMain() { .reg .pred %p<2>; .reg .b16 %rs<9>; .reg .f32 %f<29>; .reg .b32 %r<9>; .reg .b64 %rd<2>; // begin inline asm call (%r1), _optix_read_primitive_idx, (); // end inline asm // begin inline asm call (%f10, %f11), _optix_get_triangle_barycentrics, (); // end inline asm mov.u32 %r2, 0; // begin inline asm call (%rd1), _optix_call_direct_callable,(%r2); // end inline asm { // callseq 0, 0 .reg .b32 temp_param_reg; .param .b32 param0; st.param.b32 [param0+0], %r1; .param .align 8 .b8 param1[8]; st.param.v2.f32 [param1+0], {%f10, %f11}; .param .align 8 .b8 retval0[32]; prototype_0 : .callprototype (.param .align 8 .b8 _[32]) _ (.param .b32 _, .param .align 8 .b8 _[8]); call (retval0), %rd1, ( param0, param1 ) , prototype_0; ld.param.v2.f32 {%f1, %f2}, [retval0+0]; ld.param.f32 %f3, [retval0+8]; ld.param.v4.b8 {%rs1, %rs2, %rs3, %rs4}, [retval0+12]; ld.param.v2.f32 {%f18, %f19}, [retval0+16]; ld.param.f32 %f20, [retval0+24]; ld.param.v4.b8 {%rs5, %rs6, %rs7, %rs8}, [retval0+28]; } // callseq 0 // begin inline asm call (%f12), _optix_get_world_ray_direction_x, (); // end inline asm // begin inline asm call (%f13), _optix_get_world_ray_direction_y, (); // end inline asm // begin inline asm call (%f14), _optix_get_world_ray_direction_z, (); // end inline asm mul.f32 %f21, %f2, %f13; fma.rn.f32 %f22, %f1, %f12, %f21; fma.rn.f32 %f23, %f3, %f14, %f22; setp.leu.f32 %p1, %f23, 0f00000000; mov.f32 %f26, 0f00000000; mov.f32 %f27, %f26; mov.f32 %f28, %f26; @%p1 bra $L__BB0_2; // begin inline asm call (%f24), _optix_get_ray_tmax, (); // end inline asm add.f32 %f25, %f24, 0f38D1B717; mul.f32 %f28, %f3, %f25; mul.f32 %f27, %f2, %f25; mul.f32 %f26, %f1, %f25; $L__BB0_2: mov.b32 %r4, %f26; // begin inline asm call _optix_set_payload, (%r2, %r4); // end inline asm mov.b32 %r6, %f27; mov.u32 %r5, 1; // begin inline asm call _optix_set_payload, (%r5, %r6); // end inline asm mov.b32 %r8, %f28; mov.u32 %r7, 2; // begin inline asm call _optix_set_payload, (%r7, %r8); // end inline asm ret; }