Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion flang/module/cudadevice.f90
Original file line number Diff line number Diff line change
Expand Up @@ -703,7 +703,7 @@ attributes(device) real(8) function sinpi(x) bind(c,name='__nv_sinpi')
end interface

interface __int2double_rn
attributes(device) double precision function __int2double_rn(i) bind(c)
attributes(device) double precision function __int2double_rn(i) bind(c, name='__nv_int2double_rn')
!dir$ ignore_tkr (d) i
integer, value :: i
end function
Expand Down
9 changes: 9 additions & 0 deletions flang/test/Lower/CUDA/cuda-libdevice.cuf
Original file line number Diff line number Diff line change
Expand Up @@ -244,3 +244,12 @@ end subroutine
! CHECK: %{{.*}} = fir.call @__nv_float2uint_rn(%{{.*}}) proc_attrs<bind_c> fastmath<contract> : (f32) -> i32
! CHECK: %{{.*}} = fir.call @__nv_float2uint_ru(%{{.*}}) proc_attrs<bind_c> fastmath<contract> : (f32) -> i32
! CHECK: %{{.*}} = fir.call @__nv_float2uint_rz(%{{.*}}) proc_attrs<bind_c> fastmath<contract> : (f32) -> i32

attributes(global) subroutine test_int2double_rn()
double precision :: res
integer :: r
res = __int2double_rn(r)
end subroutine

! CHECK-LABEL: _QPtest_int2double_rn
! CHECK: %{{.*}} = fir.call @__nv_int2double_rn(%{{.*}}) proc_attrs<bind_c> fastmath<contract> : (i32) -> f64