On Jun 21, 2012, at 5:07 PM, Tanya Lattner wrote:

> 
> On Jun 14, 2012, at 4:15 AM, Anton Lokhmotov <[email protected]> wrote:
> 
>> Hi Tanya,
>> 
>>> In OpenCL inline calls without a specified storage class should have
>>> internal linkage. The attached patch makes this modification and adds a
>>> test case.
>> 
>> If this is OpenCL 1.2 specific, it should be guarded on a new language
>> option OpenCL_1_2 [1].
>> 
> 
> A "recent" change in Clang caused functions that are not marked with extern 
> inline to only include the definition for inlining. This was to adhere more 
> closely to the C99 standard (as far as I know). This also changed the 
> behavior for OpenCL which is a problem for us. When you have a kernel that 
> uses some function that is marked "inline" and doesn't get inlined because 
> its too large, the function body no longer exists. I would imagine that other 
> OpenCL framework implementors would also be upset at this change as well.
> 
> After discussing offline, it would be better if OpenCL followed C++ semantics 
> here instead of C99 and my patch should be modified. But this is technically 
> not in the spec. 


Will someone be taking this to the OpenCL committee? A general agreement among 
implementors is good, but the OpenCL specification needs to codify the 
semantics of 'inline'.

        - Doug
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to