[Mesa-dev] [PATCH 8/8] clover/llvm: Make __OPENCL_VERSION__ dynamic

Aaron Watry awatry at gmail.com
Sun Aug 6 00:48:52 UTC 2017


On Fri, Aug 4, 2017 at 1:43 PM, Jan Vesely <jan.vesely at rutgers.edu> wrote:
> On Sun, 2017-07-30 at 20:26 -0500, Aaron Watry wrote:
>> Signed-off-by: Aaron Watry <awatry at gmail.com>
>> CC: Jan Vesely <jan.vesely at rutgers.edu>
>>
>> v2: base it on the device version
>> ---
>>  src/gallium/state_trackers/clover/llvm/invocation.cpp | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp b/src/gallium/state_trackers/clover/llvm/invocation.cpp
>> index 63b2961752..443cd31e66 100644
>> --- a/src/gallium/state_trackers/clover/llvm/invocation.cpp
>> +++ b/src/gallium/state_trackers/clover/llvm/invocation.cpp
>> @@ -224,7 +224,8 @@ namespace {
>>        c.getPreprocessorOpts().Includes.push_back("clc/clc.h");
>>
>>        // Add definition for the OpenCL version
>> -      c.getPreprocessorOpts().addMacroDef("__OPENCL_VERSION__=110");
>> +      c.getPreprocessorOpts().addMacroDef("__OPENCL_VERSION__=" +
>> +              std::to_string(get_language_from_version_str(dev.device_version())));
>
> I don't think you can use the same parsing function here.
> __OPENCL_VERSION__ can go up to 2.2, while __OPENCL_C_VERSION__ is max
> 2.0

This is what I get for still only reading the 1.2 spec when I'm
working on these things.  I've been working on getting us up to
better/reasonable CL 1.2 CTS pass rates, and haven't been looking
ahead much at all.

>
> Jan
>
>>
>>        // clc.h requires that this macro be defined:
>>        c.getPreprocessorOpts().addMacroDef("cl_clang_storage_class_specifiers");


More information about the mesa-dev mailing list