@@ -7,9 +7,6 @@ using CUDAnative: AS, DevicePtr
7
7
# CONSTANTS
8
8
# ###############################################################################
9
9
10
- # Determines whether or not to Core.AddrSpacePtr is available
11
- const addrspaceptr_available = (VERSION >= v " 1.5.0-DEV.324" )
12
-
13
10
# Maps PTX types to Julia array types
14
11
const map_ptx_to_jl_array = Dict (
15
12
" f16" => Float16,
@@ -52,7 +49,6 @@ get_frag_info(matrix, ptx_el_type) = (
52
49
53
50
get_addrspace_info (addr_space) = convert (Int, map_ptx_as_to_as_ty[addr_space])
54
51
55
- if addrspaceptr_available
56
52
@generated function Base. cconvert (:: Type{Core.AddrSpacePtr{T, as}} , x:: DevicePtr{T, AS} ) where {T, as, AS}
57
53
ir = " %ptr = inttoptr i64 %0 to i8 addrspace($as )*
58
54
ret i8 addrspace($as )* %ptr"
@@ -61,7 +57,6 @@ if addrspaceptr_available
61
57
return Base. llvmcall ($ ir, Core. AddrSpacePtr{T, as}, Tuple{Int64}, Base. bitcast (Int64, x))
62
58
end
63
59
end
64
- end
65
60
66
61
# Fix for https://github.com/JuliaGPU/CUDAnative.jl/issues/587.
67
62
# Instead of ccall'ing the intrinsics with NTuple{N, T} (which gets lowered to
@@ -133,7 +128,7 @@ for mat in ["a", "b", "c"],
133
128
134
129
ccall_name = " extern $llvm_intr "
135
130
136
- ptr_ty = addrspaceptr_available ? Core. AddrSpacePtr{arr_ty, addr_space_int} : Ref{arr_ty }
131
+ ptr_ty = Core. AddrSpacePtr{arr_ty, addr_space_int}
137
132
struct_ty = Symbol (" LLVMStruct$sz " )
138
133
139
134
@eval $ func_name (src_addr, stride) = convert (NTuple{$ sz, $ frag_ty}, ccall ($ ccall_name, llvmcall, $ struct_ty{$ frag_ty}, ($ ptr_ty, Int32), src_addr, stride))
@@ -188,7 +183,7 @@ for mat in ["d"],
188
183
frag_types = ntuple (i -> frag_ty, sz)
189
184
frag_vars = ntuple (i -> :(data[$ i]), sz)
190
185
191
- ptr_ty = addrspaceptr_available ? Core. AddrSpacePtr{arr_ty, addr_space_int} : Ref{arr_ty }
186
+ ptr_ty = Core. AddrSpacePtr{arr_ty, addr_space_int}
192
187
193
188
@eval $ func_name (dst_addr, data, stride) = ccall ($ ccall_name, llvmcall, Nothing, ($ ptr_ty, $ (frag_types... ), Int32), dst_addr, $ (frag_vars... ), stride)
194
189
@eval export $ func_name
0 commit comments