Anastasia added a comment.

In D107769#3265867 <https://reviews.llvm.org/D107769#3265867>, @svenvh wrote:

> In D107769#3265665 <https://reviews.llvm.org/D107769#3265665>, @Anastasia 
> wrote:
>
>> The way I understand the spec for OpenCL C 2.0 is that whenever the address 
>> space of the pointer is not listed it means generic has to be used, here is 
>> one example:
>> https://www.khronos.org/registry/OpenCL/specs/2.2/html/OpenCL_C.html#vector-data-load-and-store-functions
>>
>>   gentypen vloadn(size_t offset, const gentype *p)
>>   gentypen vloadn(size_t offset, const __constant gentype *p)
>>
>> that has no address space (i.e. `generic`) and `constant` explicitly. So I 
>> think if address spaces are not listed explicitly they are not supposed to 
>> be available.
>
> The unified specification (which "specifies all versions of OpenCL C") seems 
> to be making all overloads available as I understand; it is perhaps subtly 
> different from the previous specification?
>
> https://www.khronos.org/registry/OpenCL/specs/3.0-unified/html/OpenCL_C.html#vector-data-load-and-store-functions
>
>   gentypen vloadn(size_t offset, const __global gentype *p)
>   gentypen vloadn(size_t offset, const __local gentype *p)
>   gentypen vloadn(size_t offset, const __constant gentype *p)
>   gentypen vloadn(size_t offset, const __private gentype *p)
>   
>   For OpenCL C 2.0, or OpenCL C 3.0 or newer with the 
> __opencl_c_generic_address_space feature:
>   
>   gentypen vloadn(size_t offset, const gentype *p)
>
> Since the `__constant` overload should always be available, I think a reader 
> can assume that the overloads directly above and below `__constant` are also 
> always available?  So that the generic overload is an optional addition to 
> the list of overloads.  If not, I'd expect the spec to specify a condition 
> before listing the specific overloads.

I agree that OpenCL 3.0 spec might have broken the backward compatibility for 
OpenCL 2.0, however, I am not convinced it has been done intentionally. 
Perhaps, it's worth to clarify that?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D107769/new/

https://reviews.llvm.org/D107769

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to